From ee68aa36460d7efeca48747f33b7f2adc0900bfb Mon Sep 17 00:00:00 2001 From: Francois-Xavier Le Bail Date: Sat, 16 Jun 2018 17:23:21 +0200 Subject: Use the new GET_ macros instead of the EXTRACT_ ones The exceptions are currently: Some EXTRACT_ in print-juniper.c, not used on packet buffer pointer. An EXTRACT_BE_U_3 in addrtoname.c, not always used on packet buffer pointer. --- print-babel.c | 137 ++++++++++++++++++++++++++++++---------------------------- 1 file changed, 70 insertions(+), 67 deletions(-) (limited to 'print-babel.c') diff --git a/print-babel.c b/print-babel.c index e2ed5663..29865dd2 100644 --- a/print-babel.c +++ b/print-babel.c @@ -53,14 +53,14 @@ babel_print(netdissect_options *ndo, ND_TCHECK_4(cp); - if(EXTRACT_U_1(cp) != 42) { + if(GET_U_1(cp) != 42) { ND_PRINT(" invalid header"); return; } else { - ND_PRINT(" %u", EXTRACT_U_1(cp + 1)); + ND_PRINT(" %u", GET_U_1(cp + 1)); } - switch(EXTRACT_U_1(cp + 1)) { + switch(GET_U_1(cp + 1)) { case 2: babel_print_v2(ndo, cp, length); break; @@ -112,9 +112,9 @@ format_id(netdissect_options *ndo, const u_char *id) { static char buf[25]; nd_snprintf(buf, 25, "%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x", - EXTRACT_U_1(id), EXTRACT_U_1(id + 1), EXTRACT_U_1(id + 2), - EXTRACT_U_1(id + 3), EXTRACT_U_1(id + 4), EXTRACT_U_1(id + 5), - EXTRACT_U_1(id + 6), EXTRACT_U_1(id + 7)); + GET_U_1(id), GET_U_1(id + 1), GET_U_1(id + 2), + GET_U_1(id + 3), GET_U_1(id + 4), GET_U_1(id + 5), + GET_U_1(id + 6), GET_U_1(id + 7)); buf[24] = '\0'; return buf; } @@ -276,7 +276,7 @@ subtlvs_print(netdissect_options *ndo, uint32_t t1, t2; while (cp < ep) { - subtype = EXTRACT_U_1(cp); + subtype = GET_U_1(cp); cp++; if(subtype == MESSAGE_SUB_PAD1) { ND_PRINT(" sub-pad1"); @@ -284,7 +284,7 @@ subtlvs_print(netdissect_options *ndo, } if(cp == ep) goto invalid; - sublen = EXTRACT_U_1(cp); + sublen = GET_U_1(cp); cp++; if(cp + sublen > ep) goto invalid; @@ -302,7 +302,8 @@ subtlvs_print(netdissect_options *ndo, } sep = " "; while (sublen) { - ND_PRINT("%s%s", sep, tok2str(diversity_str, "%u", EXTRACT_U_1(cp))); + ND_PRINT("%s%s", sep, + tok2str(diversity_str, "%u", GET_U_1(cp))); cp++; sep = "-"; sublen--; @@ -316,14 +317,14 @@ subtlvs_print(netdissect_options *ndo, if(tlv_type == MESSAGE_HELLO) { if(sublen < 4) goto invalid; - t1 = EXTRACT_BE_U_4(cp); + t1 = GET_BE_U_4(cp); ND_PRINT(" %s", format_timestamp(t1)); } else if(tlv_type == MESSAGE_IHU) { if(sublen < 8) goto invalid; - t1 = EXTRACT_BE_U_4(cp); + t1 = GET_BE_U_4(cp); ND_PRINT(" %s", format_timestamp(t1)); - t2 = EXTRACT_BE_U_4(cp + 4); + t2 = GET_BE_U_4(cp + 4); ND_PRINT("|%s", format_timestamp(t2)); } else ND_PRINT(" (bogus)"); @@ -356,7 +357,7 @@ babel_print_v2(netdissect_options *ndo, ND_TCHECK_4(cp); if (length < 4) goto invalid; - bodylen = EXTRACT_BE_U_2(cp + 2); + bodylen = GET_BE_U_2(cp + 2); ND_PRINT(" (%u)", bodylen); /* Process the TLVs in the body */ @@ -368,7 +369,7 @@ babel_print_v2(netdissect_options *ndo, message = cp + 4 + i; ND_TCHECK_1(message); - if((type = EXTRACT_U_1(message)) == MESSAGE_PAD1) { + if((type = GET_U_1(message)) == MESSAGE_PAD1) { ND_PRINT(ndo->ndo_vflag ? "\n\tPad 1" : " pad1"); i += 1; continue; @@ -376,7 +377,7 @@ babel_print_v2(netdissect_options *ndo, ND_TCHECK_2(message); ICHECK(i, 2); - len = EXTRACT_U_1(message + 1); + len = GET_U_1(message + 1); ND_TCHECK_LEN(message, 2 + len); ICHECK(i, 2 + len); @@ -397,8 +398,8 @@ babel_print_v2(netdissect_options *ndo, else { ND_PRINT("\n\tAcknowledgment Request "); if(len < 6) goto invalid; - nonce = EXTRACT_BE_U_2(message + 4); - interval = EXTRACT_BE_U_2(message + 6); + nonce = GET_BE_U_2(message + 4); + interval = GET_BE_U_2(message + 6); ND_PRINT("%04x %s", nonce, format_interval(interval)); } } @@ -411,7 +412,7 @@ babel_print_v2(netdissect_options *ndo, else { ND_PRINT("\n\tAcknowledgment "); if(len < 2) goto invalid; - nonce = EXTRACT_BE_U_2(message + 2); + nonce = GET_BE_U_2(message + 2); ND_PRINT("%04x", nonce); } } @@ -424,8 +425,8 @@ babel_print_v2(netdissect_options *ndo, else { ND_PRINT("\n\tHello "); if(len < 6) goto invalid; - seqno = EXTRACT_BE_U_2(message + 4); - interval = EXTRACT_BE_U_2(message + 6); + seqno = GET_BE_U_2(message + 4); + interval = GET_BE_U_2(message + 6); ND_PRINT("seqno %u interval %s", seqno, format_interval(interval)); /* Extra data. */ if(len > 6) @@ -444,9 +445,9 @@ babel_print_v2(netdissect_options *ndo, int rc; ND_PRINT("\n\tIHU "); if(len < 6) goto invalid; - rxcost = EXTRACT_BE_U_2(message + 4); - interval = EXTRACT_BE_U_2(message + 6); - ae = EXTRACT_U_1(message + 2); + rxcost = GET_BE_U_2(message + 4); + interval = GET_BE_U_2(message + 6); + ae = GET_U_1(message + 2); rc = network_address(ae, message + 8, len - 6, address); if(rc < 0) { nd_print_trunc(ndo); break; } @@ -481,7 +482,7 @@ babel_print_v2(netdissect_options *ndo, u_char nh[16]; ND_PRINT("\n\tNext Hop"); if(len < 2) goto invalid; - ae = EXTRACT_U_1(message + 2); + ae = GET_U_1(message + 2); rc = network_address(ae, message + 4, len - 2, nh); if(rc < 0) goto invalid; @@ -497,9 +498,9 @@ babel_print_v2(netdissect_options *ndo, ND_PRINT("/truncated"); else ND_PRINT("%s%s%s", - (EXTRACT_U_1(message + 3) & 0x80) ? "/prefix": "", - (EXTRACT_U_1(message + 3) & 0x40) ? "/id" : "", - (EXTRACT_U_1(message + 3) & 0x3f) ? "/unknown" : ""); + (GET_U_1(message + 3) & 0x80) ? "/prefix": "", + (GET_U_1(message + 3) & 0x40) ? "/id" : "", + (GET_U_1(message + 3) & 0x3f) ? "/unknown" : ""); } else { u_short interval, seqno, metric; u_char ae, plen; @@ -507,26 +508,26 @@ babel_print_v2(netdissect_options *ndo, u_char prefix[16]; ND_PRINT("\n\tUpdate"); if(len < 10) goto invalid; - ae = EXTRACT_U_1(message + 2); - plen = EXTRACT_U_1(message + 4) + (EXTRACT_U_1(message + 2) == 1 ? 96 : 0); + ae = GET_U_1(message + 2); + plen = GET_U_1(message + 4) + (GET_U_1(message + 2) == 1 ? 96 : 0); rc = network_prefix(ae, - EXTRACT_U_1(message + 4), - EXTRACT_U_1(message + 5), + GET_U_1(message + 4), + GET_U_1(message + 5), message + 12, - EXTRACT_U_1(message + 2) == 1 ? v4_prefix : v6_prefix, + GET_U_1(message + 2) == 1 ? v4_prefix : v6_prefix, len - 10, prefix); if(rc < 0) goto invalid; - interval = EXTRACT_BE_U_2(message + 6); - seqno = EXTRACT_BE_U_2(message + 8); - metric = EXTRACT_BE_U_2(message + 10); + interval = GET_BE_U_2(message + 6); + seqno = GET_BE_U_2(message + 8); + metric = GET_BE_U_2(message + 10); ND_PRINT("%s%s%s %s metric %u seqno %u interval %s", - (EXTRACT_U_1(message + 3) & 0x80) ? "/prefix": "", - (EXTRACT_U_1(message + 3) & 0x40) ? "/id" : "", - (EXTRACT_U_1(message + 3) & 0x3f) ? "/unknown" : "", + (GET_U_1(message + 3) & 0x80) ? "/prefix": "", + (GET_U_1(message + 3) & 0x40) ? "/id" : "", + (GET_U_1(message + 3) & 0x3f) ? "/unknown" : "", ae == 0 ? "any" : format_prefix(ndo, prefix, plen), metric, seqno, format_interval_update(interval)); - if(EXTRACT_U_1(message + 3) & 0x80) { - if(EXTRACT_U_1(message + 2) == 1) + if(GET_U_1(message + 3) & 0x80) { + if(GET_U_1(message + 2) == 1) memcpy(v4_prefix, prefix, 16); else memcpy(v6_prefix, prefix, 16); @@ -546,10 +547,10 @@ babel_print_v2(netdissect_options *ndo, u_char prefix[16], ae, plen; ND_PRINT("\n\tRoute Request "); if(len < 2) goto invalid; - ae = EXTRACT_U_1(message + 2); - plen = EXTRACT_U_1(message + 3) + (EXTRACT_U_1(message + 2) == 1 ? 96 : 0); + ae = GET_U_1(message + 2); + plen = GET_U_1(message + 3) + (GET_U_1(message + 2) == 1 ? 96 : 0); rc = network_prefix(ae, - EXTRACT_U_1(message + 3), 0, + GET_U_1(message + 3), 0, message + 4, NULL, len - 2, prefix); if(rc < 0) goto invalid; ND_PRINT("for %s", @@ -567,15 +568,15 @@ babel_print_v2(netdissect_options *ndo, u_char prefix[16], ae, plen; ND_PRINT("\n\tSeqno Request "); if(len < 14) goto invalid; - ae = EXTRACT_U_1(message + 2); - seqno = EXTRACT_BE_U_2(message + 4); + ae = GET_U_1(message + 2); + seqno = GET_BE_U_2(message + 4); rc = network_prefix(ae, - EXTRACT_U_1(message + 3), 0, + GET_U_1(message + 3), 0, message + 16, NULL, len - 14, prefix); if(rc < 0) goto invalid; - plen = EXTRACT_U_1(message + 3) + (EXTRACT_U_1(message + 2) == 1 ? 96 : 0); + plen = GET_U_1(message + 3) + (GET_U_1(message + 2) == 1 ? 96 : 0); ND_PRINT("(%u hops) for %s seqno %u id %s", - EXTRACT_U_1(message + 6), + GET_U_1(message + 6), ae == 0 ? "invalid AE 0" : format_prefix(ndo, prefix, plen), seqno, format_id(ndo, message + 8)); } @@ -587,8 +588,9 @@ babel_print_v2(netdissect_options *ndo, else { ND_PRINT("\n\tTS/PC "); if(len < 6) goto invalid; - ND_PRINT("timestamp %u packetcounter %u", EXTRACT_BE_U_4(message + 4), - EXTRACT_BE_U_2(message + 2)); + ND_PRINT("timestamp %u packetcounter %u", + GET_BE_U_4(message + 4), + GET_BE_U_2(message + 2)); } break; case MESSAGE_HMAC : { @@ -598,9 +600,10 @@ babel_print_v2(netdissect_options *ndo, unsigned j; ND_PRINT("\n\tHMAC "); if(len < 18) goto invalid; - ND_PRINT("key-id %u digest-%u ", EXTRACT_BE_U_2(message + 2), len - 2); + ND_PRINT("key-id %u digest-%u ", GET_BE_U_2(message + 2), + len - 2); for (j = 0; j < len - 2; j++) - ND_PRINT("%02X", EXTRACT_U_1(message + j + 4)); + ND_PRINT("%02X", GET_U_1(message + j + 4)); } } break; @@ -616,13 +619,13 @@ babel_print_v2(netdissect_options *ndo, int parsed_len = 10; ND_PRINT("\n\tSS-Update"); if(len < 10) goto invalid; - ae = EXTRACT_U_1(message + 2); - src_plen = EXTRACT_U_1(message + 3); - plen = EXTRACT_U_1(message + 4); - omitted = EXTRACT_U_1(message + 5); - interval = EXTRACT_BE_U_2(message + 6); - seqno = EXTRACT_BE_U_2(message + 8); - metric = EXTRACT_BE_U_2(message + 10); + ae = GET_U_1(message + 2); + src_plen = GET_U_1(message + 3); + plen = GET_U_1(message + 4); + omitted = GET_U_1(message + 5); + interval = GET_BE_U_2(message + 6); + seqno = GET_BE_U_2(message + 8); + metric = GET_BE_U_2(message + 10); rc = network_prefix(ae, plen, omitted, message + 2 + parsed_len, ae == 1 ? v4_prefix : v6_prefix, len - parsed_len, prefix); @@ -657,9 +660,9 @@ babel_print_v2(netdissect_options *ndo, u_char ae, plen, src_plen, prefix[16], src_prefix[16]; ND_PRINT("\n\tSS-Request "); if(len < 3) goto invalid; - ae = EXTRACT_U_1(message + 2); - plen = EXTRACT_U_1(message + 3); - src_plen = EXTRACT_U_1(message + 4); + ae = GET_U_1(message + 2); + plen = GET_U_1(message + 3); + src_plen = GET_U_1(message + 4); rc = network_prefix(ae, plen, 0, message + 2 + parsed_len, NULL, len - parsed_len, prefix); if(rc < 0) goto invalid; @@ -692,11 +695,11 @@ babel_print_v2(netdissect_options *ndo, const u_char *router_id = NULL; ND_PRINT("\n\tSS-MH-Request "); if(len < 14) goto invalid; - ae = EXTRACT_U_1(message + 2); - plen = EXTRACT_U_1(message + 3); - seqno = EXTRACT_BE_U_2(message + 4); - hopc = EXTRACT_U_1(message + 6); - src_plen = EXTRACT_U_1(message + 7); + ae = GET_U_1(message + 2); + plen = GET_U_1(message + 3); + seqno = GET_BE_U_2(message + 4); + hopc = GET_U_1(message + 6); + src_plen = GET_U_1(message + 7); router_id = message + 8; rc = network_prefix(ae, plen, 0, message + 2 + parsed_len, NULL, len - parsed_len, prefix); -- cgit v1.2.1