Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

The “Packet List” Pane

Add a new (not custom) column with type "IEEE 802.11 TX rate". The format is 24.0 without the Mbps.

Looking at the code (packet-ppi.c) it seems the units should be there but its not.

    rate_kbps = rate_raw * 500;
    ti = proto_tree_add_uint_format(ftree, hf_80211_common_rate, tvb,
                                    ptvcursor_current_offset(csr), 2, rate_kbps, "Rate: %.1f Mbps",
                                    rate_kbps / 1000.0);
    if (rate_kbps == 0)
        proto_item_append_text(ti, " [invalid]");
    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f Mbps", rate_kbps / 1000.0);

There is a sample capture on the Wireshark wiki:

File: http_PPI.cap Description: 802.11n capture with PPI encapsulation containing HTTP data.

It looks like packet-ieee80211-radio.c or packet-ieee80211-radiotap.c comes along later and overwrites the column string without the units:

    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f", data_rate);

Your other options would be to make your own fields with MATE or Lua.

The “Packet List” Pane

Add a new (not custom) column with type "IEEE 802.11 TX rate". The format is 24.0 without the Mbps.

Looking at the code (packet-ppi.c) it seems the units should be there but its not.

    rate_kbps = rate_raw * 500;
    ti = proto_tree_add_uint_format(ftree, hf_80211_common_rate, tvb,
                                    ptvcursor_current_offset(csr), 2, rate_kbps, "Rate: %.1f Mbps",
                                    rate_kbps / 1000.0);
    if (rate_kbps == 0)
        proto_item_append_text(ti, " [invalid]");
    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f Mbps", rate_kbps / 1000.0);

There is a sample capture on the Wireshark wiki:

File: http_PPI.cap http_PPI.cap

Description: 802.11n capture with PPI encapsulation containing HTTP data.

It looks like packet-ieee80211-radio.c or packet-ieee80211-radiotap.c comes along later and overwrites the column string without the units:

    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f", data_rate);

Your other options would be to make your own fields with MATE or Lua.

The “Packet List” Pane

Add a new (not custom) column with type "IEEE 802.11 TX rate". The format is 24.0 without the Mbps.

Looking at the code (packet-ppi.c) it seems the units should be there but its not.

    rate_kbps = rate_raw * 500;
    ti = proto_tree_add_uint_format(ftree, hf_80211_common_rate, tvb,
                                    ptvcursor_current_offset(csr), 2, rate_kbps, "Rate: %.1f Mbps",
                                    rate_kbps / 1000.0);
    if (rate_kbps == 0)
        proto_item_append_text(ti, " [invalid]");
    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f Mbps", rate_kbps / 1000.0);

There is a sample capture on the Wireshark wiki:

File: http_PPI.cap

Description: 802.11n capture with PPI encapsulation containing HTTP data.

It looks like packet-ieee80211-radio.c or packet-ieee80211-radiotap.c comes along later and overwrites the column string without the units:

    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f", data_rate);

Your other options would be to make your own fields with MATE or Lua.

Edit/Note: disabling protocol 802.11 Radio in the sample capture results in the TX Rate column having the format that was set in packet-ppi.c: 24.0 Mbps.

The “Packet List” Pane

Add a new (not custom) column with type "IEEE 802.11 TX rate". The format is 24.0 without the Mbps.

Looking at the code (packet-ppi.c) it seems the units should be there but its not.

    rate_kbps = rate_raw * 500;
    ti = proto_tree_add_uint_format(ftree, hf_80211_common_rate, tvb,
                                    ptvcursor_current_offset(csr), 2, rate_kbps, "Rate: %.1f Mbps",
                                    rate_kbps / 1000.0);
    if (rate_kbps == 0)
        proto_item_append_text(ti, " [invalid]");
    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f Mbps", rate_kbps / 1000.0);

There is a sample capture on the Wireshark wiki:

File: http_PPI.cap

Description: 802.11n capture with PPI encapsulation containing HTTP data.

It looks like packet-ieee80211-radio.c or packet-ieee80211-radiotap.c comes along later and overwrites the column string without the units:

    col_add_fstr(pinfo->cinfo, COL_TX_RATE, "%.1f", data_rate);

Your other options would be to make your own fields with MATE or Lua.

Edit/Note: disabling protocol 802.11 Radio in the sample capture results in the TX Rate column having the format that was set in packet-ppi.c: 24.0 Mbps.



image description