ISOCLNS: Fix some warnings

The warnings were:
./print-isoclns.c: In function 'osi_print_cksum':
./print-isoclns.c:3107:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             || length > ndo->ndo_snaplen
                       ^
./print-isoclns.c:3108:32: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             || checksum_offset > ndo->ndo_snaplen
                                ^

Upstream patch https://github.com/the-tcpdump-group/tcpdump/commit/bf88d85d00297bb537b7856afb5d06e13f4cbd0d

Change-Id: I30d77415f5c336007031c50061c441aa5d53c040
diff --git a/print-isoclns.c b/print-isoclns.c
index f8de7bc..10f0be9 100644
--- a/print-isoclns.c
+++ b/print-isoclns.c
@@ -559,8 +559,8 @@
     uint8_t neighbor_extd_local_circuit_id[4];
 };
 
-static void osi_print_cksum(netdissect_options *, const uint8_t *pptr, uint16_t checksum,
-                            u_int checksum_offset, u_int length);
+static void osi_print_cksum(netdissect_options *, const uint8_t *pptr,
+			    uint16_t checksum, int checksum_offset, int length);
 static int clnp_print(netdissect_options *, const uint8_t *, u_int);
 static void esis_print(netdissect_options *, const uint8_t *, u_int);
 static int isis_print(netdissect_options *, const uint8_t *, u_int);
@@ -3075,9 +3075,8 @@
 }
 
 static void
-osi_print_cksum(netdissect_options *ndo,
-                const uint8_t *pptr, uint16_t checksum,
-                    u_int checksum_offset, u_int length)
+osi_print_cksum(netdissect_options *ndo, const uint8_t *pptr,
+	        uint16_t checksum, int checksum_offset, int length)
 {
         uint16_t calculated_checksum;
 
@@ -3087,6 +3086,8 @@
          * or the base pointer is not sane
          */
         if (!checksum
+            || length < 0
+            || checksum_offset < 0
             || length > ndo->ndo_snaplen
             || checksum_offset > ndo->ndo_snaplen
             || checksum_offset > length) {