]> The Tcpdump Group git mirrors - tcpdump/blobdiff - print-802_11.c
The third argument to linkaddr_string is one of the LINKADDR_ enums.
[tcpdump] / print-802_11.c
index 73b79764cd26219eaaa56f7183dc6f533cc01d11..8ddba1e3c18beb94a069587ce03b2db7e6a3e095 100644 (file)
@@ -985,7 +985,7 @@ wep_print(netdissect_options *ndo,
        uint32_t iv;
 
        ND_TCHECK_LEN(p, IEEE802_11_IV_LEN + IEEE802_11_KID_LEN);
-       iv = EXTRACT_LE_U_4(p);
+       iv = GET_LE_U_4(p);
 
        ND_PRINT(" IV:%3x Pad %x KeyID %x", IV_IV(iv), IV_PAD(iv),
            IV_KEYID(iv));
@@ -1023,14 +1023,14 @@ parse_elements(netdissect_options *ndo,
                ND_TCHECK_2(p + offset);
                if (length < 2)
                        goto trunc;
-               elementlen = EXTRACT_U_1(p + offset + 1);
+               elementlen = GET_U_1(p + offset + 1);
 
                /* Make sure we have the entire element. */
                ND_TCHECK_LEN(p + offset + 2, elementlen);
                if (length < elementlen + 2)
                        goto trunc;
 
-               switch (EXTRACT_U_1(p + offset)) {
+               switch (GET_U_1(p + offset)) {
                case E_SSID:
                        memcpy(&ssid, p + offset, 2);
                        offset += 2;
@@ -1122,7 +1122,7 @@ parse_elements(netdissect_options *ndo,
                                length -= ds.length;
                                break;
                        }
-                       ds.channel = EXTRACT_U_1(p + offset);
+                       ds.channel = GET_U_1(p + offset);
                        offset += 1;
                        length -= 1;
                        /*
@@ -1194,7 +1194,7 @@ parse_elements(netdissect_options *ndo,
                default:
 #if 0
                        ND_PRINT("(1) unhandled element_id (%u)  ",
-                           EXTRACT_U_1(p + offset));
+                           GET_U_1(p + offset));
 #endif
                        offset += 2 + elementlen;
                        length -= 2 + elementlen;
@@ -1230,10 +1230,10 @@ handle_beacon(netdissect_options *ndo,
        memcpy(&pbody.timestamp, p, IEEE802_11_TSTAMP_LEN);
        offset += IEEE802_11_TSTAMP_LEN;
        length -= IEEE802_11_TSTAMP_LEN;
-       pbody.beacon_interval = EXTRACT_LE_U_2(p + offset);
+       pbody.beacon_interval = GET_LE_U_2(p + offset);
        offset += IEEE802_11_BCNINT_LEN;
        length -= IEEE802_11_BCNINT_LEN;
-       pbody.capability_info = EXTRACT_LE_U_2(p + offset);
+       pbody.capability_info = GET_LE_U_2(p + offset);
        offset += IEEE802_11_CAPINFO_LEN;
        length -= IEEE802_11_CAPINFO_LEN;
 
@@ -1263,10 +1263,10 @@ handle_assoc_request(netdissect_options *ndo,
        ND_TCHECK_LEN(p, IEEE802_11_CAPINFO_LEN + IEEE802_11_LISTENINT_LEN);
        if (length < IEEE802_11_CAPINFO_LEN + IEEE802_11_LISTENINT_LEN)
                goto trunc;
-       pbody.capability_info = EXTRACT_LE_U_2(p);
+       pbody.capability_info = GET_LE_U_2(p);
        offset += IEEE802_11_CAPINFO_LEN;
        length -= IEEE802_11_CAPINFO_LEN;
-       pbody.listen_interval = EXTRACT_LE_U_2(p + offset);
+       pbody.listen_interval = GET_LE_U_2(p + offset);
        offset += IEEE802_11_LISTENINT_LEN;
        length -= IEEE802_11_LISTENINT_LEN;
 
@@ -1294,13 +1294,13 @@ handle_assoc_response(netdissect_options *ndo,
        if (length < IEEE802_11_CAPINFO_LEN + IEEE802_11_STATUS_LEN +
            IEEE802_11_AID_LEN)
                goto trunc;
-       pbody.capability_info = EXTRACT_LE_U_2(p);
+       pbody.capability_info = GET_LE_U_2(p);
        offset += IEEE802_11_CAPINFO_LEN;
        length -= IEEE802_11_CAPINFO_LEN;
-       pbody.status_code = EXTRACT_LE_U_2(p + offset);
+       pbody.status_code = GET_LE_U_2(p + offset);
        offset += IEEE802_11_STATUS_LEN;
        length -= IEEE802_11_STATUS_LEN;
-       pbody.aid = EXTRACT_LE_U_2(p + offset);
+       pbody.aid = GET_LE_U_2(p + offset);
        offset += IEEE802_11_AID_LEN;
        length -= IEEE802_11_AID_LEN;
 
@@ -1332,10 +1332,10 @@ handle_reassoc_request(netdissect_options *ndo,
        if (length < IEEE802_11_CAPINFO_LEN + IEEE802_11_LISTENINT_LEN +
            IEEE802_11_AP_LEN)
                goto trunc;
-       pbody.capability_info = EXTRACT_LE_U_2(p);
+       pbody.capability_info = GET_LE_U_2(p);
        offset += IEEE802_11_CAPINFO_LEN;
        length -= IEEE802_11_CAPINFO_LEN;
-       pbody.listen_interval = EXTRACT_LE_U_2(p + offset);
+       pbody.listen_interval = GET_LE_U_2(p + offset);
        offset += IEEE802_11_LISTENINT_LEN;
        length -= IEEE802_11_LISTENINT_LEN;
        memcpy(&pbody.ap, p+offset, IEEE802_11_AP_LEN);
@@ -1396,10 +1396,10 @@ handle_probe_response(netdissect_options *ndo,
        memcpy(&pbody.timestamp, p, IEEE802_11_TSTAMP_LEN);
        offset += IEEE802_11_TSTAMP_LEN;
        length -= IEEE802_11_TSTAMP_LEN;
-       pbody.beacon_interval = EXTRACT_LE_U_2(p + offset);
+       pbody.beacon_interval = GET_LE_U_2(p + offset);
        offset += IEEE802_11_BCNINT_LEN;
        length -= IEEE802_11_BCNINT_LEN;
-       pbody.capability_info = EXTRACT_LE_U_2(p + offset);
+       pbody.capability_info = GET_LE_U_2(p + offset);
        offset += IEEE802_11_CAPINFO_LEN;
        length -= IEEE802_11_CAPINFO_LEN;
 
@@ -1432,7 +1432,7 @@ handle_disassoc(netdissect_options *ndo,
        ND_TCHECK_LEN(p, IEEE802_11_REASON_LEN);
        if (length < IEEE802_11_REASON_LEN)
                goto trunc;
-       pbody.reason_code = EXTRACT_LE_U_2(p);
+       pbody.reason_code = GET_LE_U_2(p);
 
        ND_PRINT(": %s",
            (pbody.reason_code < NUM_REASONS)
@@ -1457,13 +1457,13 @@ handle_auth(netdissect_options *ndo,
        ND_TCHECK_6(p);
        if (length < 6)
                goto trunc;
-       pbody.auth_alg = EXTRACT_LE_U_2(p);
+       pbody.auth_alg = GET_LE_U_2(p);
        offset += 2;
        length -= 2;
-       pbody.auth_trans_seq_num = EXTRACT_LE_U_2(p + offset);
+       pbody.auth_trans_seq_num = GET_LE_U_2(p + offset);
        offset += 2;
        length -= 2;
-       pbody.status_code = EXTRACT_LE_U_2(p + offset);
+       pbody.status_code = GET_LE_U_2(p + offset);
        offset += 2;
        length -= 2;
 
@@ -1511,7 +1511,7 @@ handle_deauth(netdissect_options *ndo,
        ND_TCHECK_LEN(p, IEEE802_11_REASON_LEN);
        if (length < IEEE802_11_REASON_LEN)
                goto trunc;
-       pbody.reason_code = EXTRACT_LE_U_2(p);
+       pbody.reason_code = GET_LE_U_2(p);
 
        reason = (pbody.reason_code < NUM_REASONS)
                        ? reason_text[pbody.reason_code]
@@ -1589,22 +1589,22 @@ handle_action(netdissect_options *ndo,
        } else {
                ND_PRINT(" (%s): ", etheraddr_string(ndo, src));
        }
-       switch (EXTRACT_U_1(p)) {
-       case 0: ND_PRINT("Spectrum Management Act#%u", EXTRACT_U_1(p + 1)); break;
-       case 1: ND_PRINT("QoS Act#%u", EXTRACT_U_1(p + 1)); break;
-       case 2: ND_PRINT("DLS Act#%u", EXTRACT_U_1(p + 1)); break;
-       case 3: ND_PRINT("BA "); PRINT_BA_ACTION(EXTRACT_U_1(p + 1)); break;
-       case 7: ND_PRINT("HT "); PRINT_HT_ACTION(EXTRACT_U_1(p + 1)); break;
-       case 13: ND_PRINT("MeshAction "); PRINT_MESH_ACTION(EXTRACT_U_1(p + 1)); break;
+       switch (GET_U_1(p)) {
+       case 0: ND_PRINT("Spectrum Management Act#%u", GET_U_1(p + 1)); break;
+       case 1: ND_PRINT("QoS Act#%u", GET_U_1(p + 1)); break;
+       case 2: ND_PRINT("DLS Act#%u", GET_U_1(p + 1)); break;
+       case 3: ND_PRINT("BA "); PRINT_BA_ACTION(GET_U_1(p + 1)); break;
+       case 7: ND_PRINT("HT "); PRINT_HT_ACTION(GET_U_1(p + 1)); break;
+       case 13: ND_PRINT("MeshAction "); PRINT_MESH_ACTION(GET_U_1(p + 1)); break;
        case 14:
                ND_PRINT("MultiohopAction ");
-               PRINT_MULTIHOP_ACTION(EXTRACT_U_1(p + 1)); break;
+               PRINT_MULTIHOP_ACTION(GET_U_1(p + 1)); break;
        case 15:
                ND_PRINT("SelfprotectAction ");
-               PRINT_SELFPROT_ACTION(EXTRACT_U_1(p + 1)); break;
-       case 127: ND_PRINT("Vendor Act#%u", EXTRACT_U_1(p + 1)); break;
+               PRINT_SELFPROT_ACTION(GET_U_1(p + 1)); break;
+       case 127: ND_PRINT("Vendor Act#%u", GET_U_1(p + 1)); break;
        default:
-               ND_PRINT("Reserved(%u) Act#%u", EXTRACT_U_1(p), EXTRACT_U_1(p + 1));
+               ND_PRINT("Reserved(%u) Act#%u", GET_U_1(p), GET_U_1(p + 1));
                break;
        }
        return 1;
@@ -1677,8 +1677,8 @@ ctrl_body_print(netdissect_options *ndo,
                        ND_PRINT(" RA:%s TA:%s CTL(%x) SEQ(%u) ",
                            etheraddr_string(ndo, ((const struct ctrl_bar_hdr_t *)p)->ra),
                            etheraddr_string(ndo, ((const struct ctrl_bar_hdr_t *)p)->ta),
-                           EXTRACT_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->ctl),
-                           EXTRACT_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->seq));
+                           GET_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->ctl),
+                           GET_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->seq));
                break;
        case CTRL_BA:
                ND_TCHECK_LEN(p, CTRL_BA_HDRLEN);
@@ -1689,7 +1689,7 @@ ctrl_body_print(netdissect_options *ndo,
        case CTRL_PS_POLL:
                ND_TCHECK_LEN(p, CTRL_PS_POLL_HDRLEN);
                ND_PRINT(" AID(%x)",
-                   EXTRACT_LE_U_2(((const struct ctrl_ps_poll_hdr_t *)p)->aid));
+                   GET_LE_U_2(((const struct ctrl_ps_poll_hdr_t *)p)->aid));
                break;
        case CTRL_RTS:
                ND_TCHECK_LEN(p, CTRL_RTS_HDRLEN);
@@ -1861,8 +1861,8 @@ ctrl_header_print(netdissect_options *ndo, uint16_t fc, const u_char *p)
                ND_PRINT(" RA:%s TA:%s CTL(%x) SEQ(%u) ",
                    etheraddr_string(ndo, ((const struct ctrl_bar_hdr_t *)p)->ra),
                    etheraddr_string(ndo, ((const struct ctrl_bar_hdr_t *)p)->ta),
-                   EXTRACT_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->ctl),
-                   EXTRACT_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->seq));
+                   GET_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->ctl),
+                   GET_LE_U_2(((const struct ctrl_bar_hdr_t *)p)->seq));
                break;
        case CTRL_BA:
                ND_PRINT("RA:%s ",
@@ -1947,9 +1947,9 @@ extract_header_length(netdissect_options *ndo,
 }
 
 static int
-extract_mesh_header_length(const u_char *p)
+extract_mesh_header_length(netdissect_options *ndo, const u_char *p)
 {
-       return (EXTRACT_U_1(p) &~ 3) ? 0 : 6*(1 + (EXTRACT_U_1(p) & 3));
+       return (GET_U_1(p) &~ 3) ? 0 : 6*(1 + (GET_U_1(p) & 3));
 }
 
 /*
@@ -1975,15 +1975,15 @@ ieee_802_11_hdr_print(netdissect_options *ndo,
                        ND_PRINT("Protected ");
                if (FC_TYPE(fc) != T_CTRL || FC_SUBTYPE(fc) != CTRL_PS_POLL)
                        ND_PRINT("%uus ",
-                           EXTRACT_LE_U_2(((const struct mgmt_header_t *)p)->duration));
+                           GET_LE_U_2(((const struct mgmt_header_t *)p)->duration));
        }
        if (meshdrlen != 0) {
                const struct meshcntl_t *mc =
                    (const struct meshcntl_t *)(p + hdrlen - meshdrlen);
-               u_int ae = EXTRACT_U_1(mc->flags) & 3;
+               u_int ae = GET_U_1(mc->flags) & 3;
 
                ND_PRINT("MeshData (AE %u TTL %u seq %u", ae,
-                   EXTRACT_U_1(mc->ttl), EXTRACT_LE_U_4(mc->seq));
+                   GET_U_1(mc->ttl), GET_LE_U_4(mc->seq));
                if (ae > 0)
                        ND_PRINT(" A4:%s", etheraddr_string(ndo, mc->addr4));
                if (ae > 1)
@@ -2038,7 +2038,7 @@ ieee802_11_print(netdissect_options *ndo,
                return orig_caplen;
        }
 
-       fc = EXTRACT_LE_U_2(p);
+       fc = GET_LE_U_2(p);
        hdrlen = extract_header_length(ndo, fc);
        if (hdrlen == 0) {
                /* Unknown frame type or control frame subtype; quit. */
@@ -2052,7 +2052,7 @@ ieee802_11_print(netdissect_options *ndo,
                        nd_print_trunc(ndo);
                        return hdrlen;
                }
-               meshdrlen = extract_mesh_header_length(p+hdrlen);
+               meshdrlen = extract_mesh_header_length(ndo, p + hdrlen);
                hdrlen += meshdrlen;
        } else
                meshdrlen = 0;
@@ -2561,7 +2561,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_TSFT: {
                uint64_t tsft;
 
-               rc = cpack_uint64(s, &tsft);
+               rc = cpack_uint64(ndo, s, &tsft);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%" PRIu64 "us tsft ", tsft);
@@ -2571,7 +2571,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_FLAGS: {
                uint8_t flagsval;
 
-               rc = cpack_uint8(s, &flagsval);
+               rc = cpack_uint8(ndo, s, &flagsval);
                if (rc != 0)
                        goto trunc;
                *flagsp = flagsval;
@@ -2591,7 +2591,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_RATE: {
                uint8_t rate;
 
-               rc = cpack_uint8(s, &rate);
+               rc = cpack_uint8(ndo, s, &rate);
                if (rc != 0)
                        goto trunc;
                /*
@@ -2642,10 +2642,10 @@ print_radiotap_field(netdissect_options *ndo,
                uint16_t frequency;
                uint16_t flags;
 
-               rc = cpack_uint16(s, &frequency);
+               rc = cpack_uint16(ndo, s, &frequency);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint16(s, &flags);
+               rc = cpack_uint16(ndo, s, &flags);
                if (rc != 0)
                        goto trunc;
                /*
@@ -2662,10 +2662,10 @@ print_radiotap_field(netdissect_options *ndo,
                uint8_t hopset;
                uint8_t hoppat;
 
-               rc = cpack_uint8(s, &hopset);
+               rc = cpack_uint8(ndo, s, &hopset);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &hoppat);
+               rc = cpack_uint8(ndo, s, &hoppat);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("fhset %u fhpat %u ", hopset, hoppat);
@@ -2675,7 +2675,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DBM_ANTSIGNAL: {
                int8_t dbm_antsignal;
 
-               rc = cpack_int8(s, &dbm_antsignal);
+               rc = cpack_int8(ndo, s, &dbm_antsignal);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%ddBm signal ", dbm_antsignal);
@@ -2685,7 +2685,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DBM_ANTNOISE: {
                int8_t dbm_antnoise;
 
-               rc = cpack_int8(s, &dbm_antnoise);
+               rc = cpack_int8(ndo, s, &dbm_antnoise);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%ddBm noise ", dbm_antnoise);
@@ -2695,7 +2695,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_LOCK_QUALITY: {
                uint16_t lock_quality;
 
-               rc = cpack_uint16(s, &lock_quality);
+               rc = cpack_uint16(ndo, s, &lock_quality);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%u sq ", lock_quality);
@@ -2705,7 +2705,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_TX_ATTENUATION: {
                int16_t tx_attenuation;
 
-               rc = cpack_int16(s, &tx_attenuation);
+               rc = cpack_int16(ndo, s, &tx_attenuation);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%d tx power ", -tx_attenuation);
@@ -2715,7 +2715,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DB_TX_ATTENUATION: {
                int8_t db_tx_attenuation;
 
-               rc = cpack_int8(s, &db_tx_attenuation);
+               rc = cpack_int8(ndo, s, &db_tx_attenuation);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%ddB tx attenuation ", -db_tx_attenuation);
@@ -2725,7 +2725,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DBM_TX_POWER: {
                int8_t dbm_tx_power;
 
-               rc = cpack_int8(s, &dbm_tx_power);
+               rc = cpack_int8(ndo, s, &dbm_tx_power);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%ddBm tx power ", dbm_tx_power);
@@ -2735,7 +2735,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_ANTENNA: {
                uint8_t antenna;
 
-               rc = cpack_uint8(s, &antenna);
+               rc = cpack_uint8(ndo, s, &antenna);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("antenna %u ", antenna);
@@ -2745,7 +2745,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DB_ANTSIGNAL: {
                uint8_t db_antsignal;
 
-               rc = cpack_uint8(s, &db_antsignal);
+               rc = cpack_uint8(ndo, s, &db_antsignal);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%udB signal ", db_antsignal);
@@ -2755,7 +2755,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_DB_ANTNOISE: {
                uint8_t db_antnoise;
 
-               rc = cpack_uint8(s, &db_antnoise);
+               rc = cpack_uint8(ndo, s, &db_antnoise);
                if (rc != 0)
                        goto trunc;
                ND_PRINT("%udB noise ", db_antnoise);
@@ -2765,7 +2765,7 @@ print_radiotap_field(netdissect_options *ndo,
        case IEEE80211_RADIOTAP_RX_FLAGS: {
                uint16_t rx_flags;
 
-               rc = cpack_uint16(s, &rx_flags);
+               rc = cpack_uint16(ndo, s, &rx_flags);
                if (rc != 0)
                        goto trunc;
                /* Do nothing for now */
@@ -2778,16 +2778,16 @@ print_radiotap_field(netdissect_options *ndo,
                uint8_t channel;
                uint8_t maxpower;
 
-               rc = cpack_uint32(s, &flags);
+               rc = cpack_uint32(ndo, s, &flags);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint16(s, &frequency);
+               rc = cpack_uint16(ndo, s, &frequency);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &channel);
+               rc = cpack_uint8(ndo, s, &channel);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &maxpower);
+               rc = cpack_uint8(ndo, s, &maxpower);
                if (rc != 0)
                        goto trunc;
                print_chaninfo(ndo, frequency, flags, presentflags);
@@ -2806,13 +2806,13 @@ print_radiotap_field(netdissect_options *ndo,
                };
                float htrate;
 
-               rc = cpack_uint8(s, &known);
+               rc = cpack_uint8(ndo, s, &known);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &flags);
+               rc = cpack_uint8(ndo, s, &flags);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &mcs_index);
+               rc = cpack_uint8(ndo, s, &mcs_index);
                if (rc != 0)
                        goto trunc;
                if (known & IEEE80211_RADIOTAP_MCS_MCS_INDEX_KNOWN) {
@@ -2894,16 +2894,16 @@ print_radiotap_field(netdissect_options *ndo,
                uint8_t delim_crc;
                uint8_t reserved;
 
-               rc = cpack_uint32(s, &reference_num);
+               rc = cpack_uint32(ndo, s, &reference_num);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint16(s, &flags);
+               rc = cpack_uint16(ndo, s, &flags);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &delim_crc);
+               rc = cpack_uint8(ndo, s, &delim_crc);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &reserved);
+               rc = cpack_uint8(ndo, s, &reserved);
                if (rc != 0)
                        goto trunc;
                /* Do nothing for now */
@@ -2953,27 +2953,27 @@ print_radiotap_field(netdissect_options *ndo,
                        "unknown (31)"
                };
 
-               rc = cpack_uint16(s, &known);
+               rc = cpack_uint16(ndo, s, &known);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &flags);
+               rc = cpack_uint8(ndo, s, &flags);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &bandwidth);
+               rc = cpack_uint8(ndo, s, &bandwidth);
                if (rc != 0)
                        goto trunc;
                for (i = 0; i < 4; i++) {
-                       rc = cpack_uint8(s, &mcs_nss[i]);
+                       rc = cpack_uint8(ndo, s, &mcs_nss[i]);
                        if (rc != 0)
                                goto trunc;
                }
-               rc = cpack_uint8(s, &coding);
+               rc = cpack_uint8(ndo, s, &coding);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint8(s, &group_id);
+               rc = cpack_uint8(ndo, s, &group_id);
                if (rc != 0)
                        goto trunc;
-               rc = cpack_uint16(s, &partial_aid);
+               rc = cpack_uint16(ndo, s, &partial_aid);
                if (rc != 0)
                        goto trunc;
                for (i = 0; i < 4; i++) {
@@ -3072,7 +3072,7 @@ ieee802_11_radio_print(netdissect_options *ndo,
 {
 #define        BIT(n)  (1U << n)
 #define        IS_EXTENDED(__p)        \
-           (EXTRACT_LE_U_4(__p) & BIT(IEEE80211_RADIOTAP_EXT)) != 0
+           (GET_LE_U_4(__p) & BIT(IEEE80211_RADIOTAP_EXT)) != 0
 
        struct cpack_state cpacker;
        const struct ieee80211_radiotap_header *hdr;
@@ -3096,7 +3096,7 @@ ieee802_11_radio_print(netdissect_options *ndo,
 
        hdr = (const struct ieee80211_radiotap_header *)p;
 
-       len = EXTRACT_LE_U_2(hdr->it_len);
+       len = GET_LE_U_2(hdr->it_len);
        if (len < sizeof(*hdr)) {
                /*
                 * The length is the length of the entire header, so
@@ -3144,7 +3144,7 @@ ieee802_11_radio_print(netdissect_options *ndo,
        fcslen = 0;
        for (presentp = &hdr->it_present; presentp <= last_presentp;
            presentp++) {
-               presentflags = EXTRACT_LE_U_4(presentp);
+               presentflags = GET_LE_U_4(presentp);
 
                /*
                 * If this is a vendor namespace, we don't handle it.
@@ -3223,23 +3223,23 @@ ieee802_11_radio_print(netdissect_options *ndo,
                                nd_print_trunc(ndo);
                                break;
                        }
-                       if (cpack_uint8(&cpacker, &vendor_oui[0]) != 0) {
+                       if (cpack_uint8(ndo, &cpacker, &vendor_oui[0]) != 0) {
                                nd_print_trunc(ndo);
                                break;
                        }
-                       if (cpack_uint8(&cpacker, &vendor_oui[1]) != 0) {
+                       if (cpack_uint8(ndo, &cpacker, &vendor_oui[1]) != 0) {
                                nd_print_trunc(ndo);
                                break;
                        }
-                       if (cpack_uint8(&cpacker, &vendor_oui[2]) != 0) {
+                       if (cpack_uint8(ndo, &cpacker, &vendor_oui[2]) != 0) {
                                nd_print_trunc(ndo);
                                break;
                        }
-                       if (cpack_uint8(&cpacker, &vendor_subnamespace) != 0) {
+                       if (cpack_uint8(ndo, &cpacker, &vendor_subnamespace) != 0) {
                                nd_print_trunc(ndo);
                                break;
                        }
-                       if (cpack_uint16(&cpacker, &skip_length) != 0) {
+                       if (cpack_uint16(ndo, &cpacker, &skip_length) != 0) {
                                nd_print_trunc(ndo);
                                break;
                        }
@@ -3281,7 +3281,7 @@ ieee802_11_radio_avs_print(netdissect_options *ndo,
                return caplen;
        }
 
-       caphdr_len = EXTRACT_BE_U_4(p + 4);
+       caphdr_len = GET_BE_U_4(p + 4);
        if (caphdr_len < 8) {
                /*
                 * Yow!  The capture header length is claimed not
@@ -3334,7 +3334,7 @@ prism_if_print(netdissect_options *ndo,
                return caplen;
        }
 
-       msgcode = EXTRACT_BE_U_4(p);
+       msgcode = GET_BE_U_4(p);
        if (msgcode == WLANCAP_MAGIC_COOKIE_V1 ||
            msgcode == WLANCAP_MAGIC_COOKIE_V2)
                return ieee802_11_radio_avs_print(ndo, p, length, caplen);