summaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-ieee80211-prism.c
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-09-19 04:14:33 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-09-19 04:14:33 +0000
commit9f153fbfec0fb9c9ce38e749a7c6f4a5e115d4e9 (patch)
tree2784370cda9bbf2da9114d70f05399c0b229d28c /epan/dissectors/packet-ieee80211-prism.c
parentAdding debian version 4.2.6-1. (diff)
downloadwireshark-9f153fbfec0fb9c9ce38e749a7c6f4a5e115d4e9.tar.xz
wireshark-9f153fbfec0fb9c9ce38e749a7c6f4a5e115d4e9.zip
Merging upstream version 4.4.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'epan/dissectors/packet-ieee80211-prism.c')
-rw-r--r--epan/dissectors/packet-ieee80211-prism.c150
1 files changed, 75 insertions, 75 deletions
diff --git a/epan/dissectors/packet-ieee80211-prism.c b/epan/dissectors/packet-ieee80211-prism.c
index 99a77df0..dbe97965 100644
--- a/epan/dissectors/packet-ieee80211-prism.c
+++ b/epan/dissectors/packet-ieee80211-prism.c
@@ -33,39 +33,39 @@ static dissector_handle_t ieee80211_radio_handle;
static capture_dissector_handle_t ieee80211_cap_handle;
static capture_dissector_handle_t wlancap_cap_handle;
-static int proto_prism = -1;
+static int proto_prism;
/* Prism radio header */
-static int hf_ieee80211_prism_msgcode = -1;
-static int hf_ieee80211_prism_msglen = -1;
-static int hf_ieee80211_prism_devname = -1;
-static int hf_ieee80211_prism_did = -1;
-static int hf_ieee80211_prism_did_type = -1;
-static int hf_ieee80211_prism_did_status = -1;
-static int hf_ieee80211_prism_did_length = -1;
-static int hf_ieee80211_prism_did_hosttime = -1;
-static int hf_ieee80211_prism_did_mactime = -1;
-static int hf_ieee80211_prism_did_channel = -1;
-static int hf_ieee80211_prism_did_rssi = -1;
-static int hf_ieee80211_prism_did_sq = -1;
-static int hf_ieee80211_prism_did_signal = -1;
-static int hf_ieee80211_prism_did_noise = -1;
-static int hf_ieee80211_prism_did_rate = -1;
-static int hf_ieee80211_prism_did_istx = -1;
-static int hf_ieee80211_prism_did_frmlen = -1;
-static int hf_ieee80211_prism_did_unknown = -1;
+static int hf_ieee80211_prism_msgcode;
+static int hf_ieee80211_prism_msglen;
+static int hf_ieee80211_prism_devname;
+static int hf_ieee80211_prism_did;
+static int hf_ieee80211_prism_did_type;
+static int hf_ieee80211_prism_did_status;
+static int hf_ieee80211_prism_did_length;
+static int hf_ieee80211_prism_did_hosttime;
+static int hf_ieee80211_prism_did_mactime;
+static int hf_ieee80211_prism_did_channel;
+static int hf_ieee80211_prism_did_rssi;
+static int hf_ieee80211_prism_did_sq;
+static int hf_ieee80211_prism_did_signal;
+static int hf_ieee80211_prism_did_noise;
+static int hf_ieee80211_prism_did_rate;
+static int hf_ieee80211_prism_did_istx;
+static int hf_ieee80211_prism_did_frmlen;
+static int hf_ieee80211_prism_did_unknown;
/* Qualcomm Extensions */
-static int hf_ieee80211_prism_did_sig_a1 = -1;
-static int hf_ieee80211_prism_did_sig_a2 = -1;
-static int hf_ieee80211_prism_did_sig_b = -1;
-static int hf_ieee80211_prism_did_sig_rate_field = -1;
+static int hf_ieee80211_prism_did_sig_a1;
+static int hf_ieee80211_prism_did_sig_a2;
+static int hf_ieee80211_prism_did_sig_b;
+static int hf_ieee80211_prism_did_sig_rate_field;
-static gint ett_prism = -1;
-static gint ett_prism_did = -1;
-static gint ett_sig_ab = -1;
+static int ett_prism;
+static int ett_prism_did;
+static int ett_sig_ab;
static dissector_handle_t prism_handle;
@@ -240,16 +240,16 @@ static const value_string prism_istx_vals[] =
};
static void
-prism_rate_base_custom(gchar *result, guint32 rate)
+prism_rate_base_custom(char *result, uint32_t rate)
{
snprintf(result, ITEM_LABEL_LENGTH, "%u.%u", rate /2, rate & 1 ? 5 : 0);
}
-static gchar *
-prism_rate_return(guint32 rate)
+static char *
+prism_rate_return(wmem_allocator_t *scope, uint32_t rate)
{
- gchar *result=NULL;
- result = (gchar *)wmem_alloc(wmem_packet_scope(), SHORT_STR);
+ char *result=NULL;
+ result = (char *)wmem_alloc(scope, SHORT_STR);
result[0] = '\0';
prism_rate_base_custom(result, rate);
@@ -391,12 +391,12 @@ static unsigned int vht_160_tbl[10][8] =
};
-static gchar *
-prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_phdr *phdr)
+static char *
+prism_rate_return_sig(wmem_allocator_t *scope, uint32_t rate_phy1, uint32_t rate_phy2, struct ieee_802_11_phdr *phdr)
{
- gchar *result = NULL;
+ char *result = NULL;
unsigned int mcs, base, pream_type, disp_rate, bw, sgi, ldpc, stbc, groupid, txbf;
- gboolean su_ppdu = FALSE;
+ bool su_ppdu = false;
unsigned int partial_aid, nsts_u1, nsts_u2, nsts_u3, nsts_u4;
unsigned int sig_a_1, sig_a_2, nss = 1, nsts_su, signal_type;
unsigned int dsss_tbl[] = {22, 11, 4, 2};
@@ -419,7 +419,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
phdr->data_rate = mcs * 2;
signal_type = rate_phy1 & (1 << 12);
bw = 20 << ((rate_phy1 >> 13) & 0x3);
- result = wmem_strdup_printf(wmem_packet_scope(),
+ result = wmem_strdup_printf(scope,
"Rate: %u.%u Mb/s OFDM Signaling:%s BW %d",
mcs, 0, signal_type ? "Dynamic" : "Static", bw
);
@@ -436,7 +436,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
disp_rate = dsss_tbl[mcs];
phdr->has_data_rate = 1;
phdr->data_rate = disp_rate;
- result = wmem_strdup_printf(wmem_packet_scope(), "Rate: %u.%u Mb/s DSSS %s",
+ result = wmem_strdup_printf(scope, "Rate: %u.%u Mb/s DSSS %s",
disp_rate / 2,
(disp_rate & 1) ? 5 : 0,
base ? "[SP]" : "[LP]");
@@ -486,7 +486,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
break;
}
}
- result = wmem_strdup_printf(wmem_packet_scope(),
+ result = wmem_strdup_printf(scope,
"Rate: %u.%u Mb/s HT MCS %d NSS %d BW %d MHz %s %s %s",
disp_rate/10, disp_rate%10, mcs, nss, bw,
sgi ? "[SGI]" : "",
@@ -515,7 +515,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
phdr->phy_info.info_11ac.group_id = groupid;
if (groupid == 0 || groupid == 63)
- su_ppdu = TRUE;
+ su_ppdu = true;
disp_rate = 0;
@@ -574,7 +574,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
}
}
- result = wmem_strdup_printf(wmem_packet_scope(),
+ result = wmem_strdup_printf(scope,
"Rate: %u.%u Mb/s VHT MCS %d NSS %d Partial AID %d BW %d MHz %s %s %s GroupID %d %s %s",
disp_rate/10, disp_rate%10,
mcs, nss, partial_aid, bw,
@@ -590,7 +590,7 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
nsts_u3 = (sig_a_1 >> 16) & 0x7;
nsts_u4 = (sig_a_1 >> 19) & 0x7;
- result = wmem_strdup_printf(wmem_packet_scope(),
+ result = wmem_strdup_printf(scope,
"VHT NSTS %d %d %d %d BW %d MHz %s %s %s GroupID %d %s",
nsts_u1, nsts_u2, nsts_u3, nsts_u4, bw,
sgi ? "[SGI]" : "",
@@ -605,13 +605,13 @@ prism_rate_return_sig(guint32 rate_phy1, guint32 rate_phy2, struct ieee_802_11_p
return result;
}
-static gboolean
-capture_prism(const guchar *pd, int offset, int len, capture_packet_info_t *cpinfo, const union wtap_pseudo_header *pseudo_header _U_)
+static bool
+capture_prism(const unsigned char *pd, int offset, int len, capture_packet_info_t *cpinfo, const union wtap_pseudo_header *pseudo_header _U_)
{
- guint32 cookie;
+ uint32_t cookie;
if (!BYTES_ARE_IN_FRAME(offset, len, 4))
- return FALSE;
+ return false;
/* Some captures with DLT_PRISM have the AVS WLAN header */
cookie = pntoh32(pd);
@@ -622,7 +622,7 @@ capture_prism(const guchar *pd, int offset, int len, capture_packet_info_t *cpin
/* Prism header */
if (!BYTES_ARE_IN_FRAME(offset, len, PRISM_HEADER_LENGTH))
- return FALSE;
+ return false;
offset += PRISM_HEADER_LENGTH;
@@ -637,14 +637,14 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
proto_item *ti = NULL, *ti_did = NULL;
tvbuff_t *next_tvb;
int offset;
- guint32 msgcode, msglen, did, rate_phy1 = 0, rate_phy2 = 0;
- guint byte_order;
- guint16 status;
- const guint8 *devname_p;
- guint32 mactime;
- guint32 channel;
- guint32 signal_dbm;
- guint32 rate;
+ uint32_t msgcode, msglen, did, rate_phy1 = 0, rate_phy2 = 0;
+ unsigned byte_order;
+ uint16_t status;
+ const uint8_t *devname_p;
+ uint32_t mactime;
+ uint32_t channel;
+ uint32_t signal_dbm;
+ uint32_t rate;
struct ieee_802_11_phdr phdr;
offset = 0;
@@ -683,8 +683,8 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
/* We don't have any 802.11 metadata yet. */
memset(&phdr, 0, sizeof(phdr));
phdr.fcs_len = -1;
- phdr.decrypted = FALSE;
- phdr.datapad = FALSE;
+ phdr.decrypted = false;
+ phdr.datapad = false;
phdr.phy = PHDR_802_11_PHY_UNKNOWN;
col_set_str(pinfo->cinfo, COL_PROTOCOL, "Prism");
@@ -702,7 +702,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
offset += 4;
/* Device Name */
- proto_tree_add_item_ret_string(prism_tree, hf_ieee80211_prism_devname, tvb, offset, 16, ENC_ASCII|ENC_NA, wmem_packet_scope(), &devname_p);
+ proto_tree_add_item_ret_string(prism_tree, hf_ieee80211_prism_devname, tvb, offset, 16, ENC_ASCII|ENC_NA, pinfo->pool, &devname_p);
offset += 16;
col_add_fstr(pinfo->cinfo, COL_INFO, "Device: %s, Message 0x%x, Length %d", devname_p, msgcode, msglen);
@@ -715,14 +715,14 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
prism_did_tree = proto_item_add_subtree(ti_did, ett_prism_did);
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_type, tvb, offset, 4, byte_order);
- did = tvb_get_guint32(tvb, offset, byte_order);
+ did = tvb_get_uint32(tvb, offset, byte_order);
proto_item_append_text(ti_did, " %s", val_to_str(did, prism_did_vals, "Unknown %x") );
}
offset += 4;
/* Status */
- status = tvb_get_guint16(tvb, offset, byte_order);
+ status = tvb_get_uint16(tvb, offset, byte_order);
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_status, tvb, offset, 2, byte_order);
offset += 2;
@@ -738,13 +738,13 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_HOSTTIME:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_hosttime, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " %d", tvb_get_guint32(tvb, offset, byte_order) );
+ proto_item_append_text(ti_did, " %d", tvb_get_uint32(tvb, offset, byte_order) );
}
break;
case PRISM_TYPE1_MACTIME:
case PRISM_TYPE2_MACTIME:
- mactime = tvb_get_guint32(tvb, offset, byte_order);
+ mactime = tvb_get_uint32(tvb, offset, byte_order);
phdr.has_tsf_timestamp = 1;
phdr.tsf_timestamp = mactime;
if (tree) {
@@ -755,8 +755,8 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE1_CHANNEL:
case PRISM_TYPE2_CHANNEL:
- channel = tvb_get_guint32(tvb, offset, byte_order);
- phdr.has_channel = TRUE;
+ channel = tvb_get_uint32(tvb, offset, byte_order);
+ phdr.has_channel = true;
phdr.channel = channel;
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_channel, tvb, offset, 4, byte_order);
@@ -767,7 +767,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE1_RSSI:
case PRISM_TYPE2_RSSI:
- signal_dbm = tvb_get_guint32(tvb, offset, byte_order);
+ signal_dbm = tvb_get_uint32(tvb, offset, byte_order);
phdr.has_signal_dbm = 1;
phdr.signal_dbm = signal_dbm;
if (tree) {
@@ -781,7 +781,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_SQ:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_sq, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " 0x%x", tvb_get_guint32(tvb, offset, byte_order) );
+ proto_item_append_text(ti_did, " 0x%x", tvb_get_uint32(tvb, offset, byte_order) );
}
break;
@@ -789,7 +789,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_SIGNAL:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_signal, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " 0x%x", tvb_get_guint32(tvb, offset, byte_order) );
+ proto_item_append_text(ti_did, " 0x%x", tvb_get_uint32(tvb, offset, byte_order) );
}
break;
@@ -797,20 +797,20 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_NOISE:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_noise, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " 0x%x", tvb_get_guint32(tvb, offset, byte_order) );
+ proto_item_append_text(ti_did, " 0x%x", tvb_get_uint32(tvb, offset, byte_order) );
}
break;
case PRISM_TYPE1_RATE:
case PRISM_TYPE2_RATE:
- rate = tvb_get_guint32(tvb, offset, byte_order);
- phdr.has_data_rate = TRUE;
+ rate = tvb_get_uint32(tvb, offset, byte_order);
+ phdr.has_data_rate = true;
phdr.data_rate = rate;
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_rate, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " %s Mb/s", prism_rate_return(rate));
+ proto_item_append_text(ti_did, " %s Mb/s", prism_rate_return(pinfo->pool, rate));
}
- col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%s", prism_rate_return(rate));
+ col_add_str(pinfo->cinfo, COL_TX_RATE, prism_rate_return(pinfo->pool, rate));
break;
case PRISM_TYPE1_RATE_SIG_A1:
@@ -848,7 +848,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
proto_item_append_text(ti_did, " 0x%x", tvb_get_letohl(tvb, offset));
sig_sub_item = proto_tree_add_item(prism_tree, hf_ieee80211_prism_did_sig_rate_field, tvb, offset, 4, byte_order);
- proto_item_append_text(sig_sub_item, " %s", prism_rate_return_sig(rate_phy1, rate_phy2, &phdr));
+ proto_item_append_text(sig_sub_item, " %s", prism_rate_return_sig(pinfo->pool, rate_phy1, rate_phy2, &phdr));
}
break;
@@ -856,7 +856,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_ISTX:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_istx, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " 0x%x", tvb_get_guint32(tvb, offset, byte_order) );
+ proto_item_append_text(ti_did, " 0x%x", tvb_get_uint32(tvb, offset, byte_order) );
}
break;
@@ -864,7 +864,7 @@ dissect_prism(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U
case PRISM_TYPE2_FRMLEN:
if (tree) {
proto_tree_add_item(prism_did_tree, hf_ieee80211_prism_did_frmlen, tvb, offset, 4, byte_order);
- proto_item_append_text(ti_did, " %d", tvb_get_guint32(tvb, offset, byte_order));
+ proto_item_append_text(ti_did, " %d", tvb_get_uint32(tvb, offset, byte_order));
}
break;
@@ -1048,7 +1048,7 @@ static hf_register_info hf_prism[] = {
NULL, HFILL }}
};
-static gint *tree_array[] = {
+static int *tree_array[] = {
&ett_prism,
&ett_prism_did,
&ett_sig_ab