]> The Tcpdump Group git mirrors - tcpdump/commitdiff
Use more the EXTRACT_8BITS() macro to fetch a one-byte value (20/n)
authorFrancois-Xavier Le Bail <[email protected]>
Wed, 22 Nov 2017 08:28:18 +0000 (09:28 +0100)
committerFrancois-Xavier Le Bail <[email protected]>
Wed, 22 Nov 2017 09:36:51 +0000 (10:36 +0100)
e op *p

Partial list.

print-cdp.c
print-icmp6.c
print-radius.c
print-rsvp.c
print-snmp.c

index 188a3321b7d2aab0d823a86d92ed2193eb1d37c0..37db394d9e87840c2243c2c0468abd072ec246b4 100644 (file)
@@ -396,7 +396,7 @@ static unsigned long cdp_get_number(const u_char * p, int l)
     unsigned long res=0;
     while( l>0 )
     {
-       res = (res<<8) + *p;
+       res = (res<<8) + EXTRACT_8BITS(p);
        p++; l--;
     }
     return res;
index 7c168b7804226801e87a6d972698fc1df3fade49..4a8c9d51b9297c17bf24d1f068164791dda6e561 100644 (file)
@@ -1546,7 +1546,7 @@ dnsname_print(netdissect_options *ndo, const u_char *cp, const u_char *ep)
                                safeputchar(ndo, *cp);
                                cp++;
                        }
-                       if (cp + 1 < ep && *cp)
+                       if (cp + 1 < ep && EXTRACT_8BITS(cp))
                                ND_PRINT((ndo,"."));
                } else {
                        if (cp == ep) {
index ccb51302a758ee60dec6ccdce83a9fbd6c76635b..0fe1f6f159dde66e5dcfcf63adf2e711e304fedf 100644 (file)
@@ -632,7 +632,7 @@ print_attr_string(netdissect_options *ndo,
         break;
    }
 
-   for (i=0; i < length && *data; i++, data++)
+   for (i=0; i < length && EXTRACT_8BITS(data); i++, data++)
        ND_PRINT((ndo, "%c", (*data < 32 || *data > 126) ? '.' : *data));
 
    return;
index b511c29e1129e3e099434cf335f401187d33d562..5a652d4df6316d565ce35c83d0d7f2955870e548 100644 (file)
@@ -1185,8 +1185,8 @@ rsvp_obj_print(netdissect_options *ndo,
                                   "none",
                                   EXTRACT_8BITS((obj_tptr + 2))),
                        *(obj_tptr + 2)));
-                obj_tlen-=4+*(obj_tptr+3);
-                obj_tptr+=4+*(obj_tptr+3);
+                obj_tlen-=4+EXTRACT_8BITS((obj_tptr + 3));
+                obj_tptr+=4+EXTRACT_8BITS((obj_tptr + 3));
                 break;
             default:
                 hexdump=TRUE;
@@ -1649,7 +1649,7 @@ rsvp_obj_print(netdissect_options *ndo,
                            tok2str(rsvp_obj_prop_tlv_values,"unknown",EXTRACT_8BITS(obj_tptr)),
                            EXTRACT_8BITS(obj_tptr),
                            *(obj_tptr + 1)));
-                    if (obj_tlen < *(obj_tptr+1))
+                    if (obj_tlen < EXTRACT_8BITS((obj_tptr + 1)))
                         return-1;
                     if (*(obj_tptr+1) < 2)
                         return -1;
index a729ea0a92f62964a26ed93b752040b09ab96541..8328e0a6a7cb55e8701a60b6779f6591832d117e 100644 (file)
@@ -481,7 +481,7 @@ asn1_parse(netdissect_options *ndo,
                        return -1;
                }
                ND_TCHECK(*p);
-               elem->id = id = (id << 7) | *p;
+               elem->id = id = (id << 7) | EXTRACT_8BITS(p);
                --len;
                ++hdr;
                ++p;
@@ -501,8 +501,10 @@ asn1_parse(netdissect_options *ndo,
                        return -1;
                }
                ND_TCHECK2(*p, noct);
-               for (; noct-- > 0; len--, hdr++)
-                       elem->asnlen = (elem->asnlen << ASN_SHIFT8) | *p++;
+               for (; noct-- > 0; len--, hdr++) {
+                       elem->asnlen = (elem->asnlen << ASN_SHIFT8) | EXTRACT_8BITS(p);
+                       p++;
+               }
        }
        if (len < elem->asnlen) {
                ND_PRINT((ndo, "[len%d<asnlen%u]", len, elem->asnlen));
@@ -544,7 +546,7 @@ asn1_parse(netdissect_options *ndo,
                                if (*p & ASN_BIT8)      /* negative */
                                        data = -1;
                                for (i = elem->asnlen; i-- > 0; p++)
-                                       data = (data << ASN_SHIFT8) | *p;
+                                       data = (data << ASN_SHIFT8) | EXTRACT_8BITS(p);
                                elem->data.integer = data;
                                break;
                        }
@@ -581,7 +583,7 @@ asn1_parse(netdissect_options *ndo,
                                elem->type = BE_UNS;
                                data = 0;
                                for (i = elem->asnlen; i-- > 0; p++)
-                                       data = (data << 8) + *p;
+                                       data = (data << 8) + EXTRACT_8BITS(p);
                                elem->data.uns = data;
                                break;
                        }
@@ -591,7 +593,7 @@ asn1_parse(netdissect_options *ndo,
                                elem->type = BE_UNS64;
                                data64 = 0;
                                for (i = elem->asnlen; i-- > 0; p++)
-                                       data64 = (data64 << 8) + *p;
+                                       data64 = (data64 << 8) + EXTRACT_8BITS(p);
                                elem->data.uns64 = data64;
                                break;
                        }