diff options
author | Matthieu Coudron <mattator@gmail.com> | 2019-06-24 19:31:32 +0900 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2019-06-24 13:01:11 +0000 |
commit | 58cb604f2c33a24a3f99a8b0d6d9295a6976dc44 (patch) | |
tree | 04e5d9bd75a135932d28d670260142978294980c /epan/dissectors/packet-netlink-sock_diag.c | |
parent | 8fc02d08e136d2b59399220976aaacefe6b1cd11 (diff) |
netlink-sock_diag: delimit more fields
Change-Id: I3627391c6bfe994deb7845cb6215c29b7405c122
Reviewed-on: https://code.wireshark.org/review/33726
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-netlink-sock_diag.c')
-rw-r--r-- | epan/dissectors/packet-netlink-sock_diag.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/epan/dissectors/packet-netlink-sock_diag.c b/epan/dissectors/packet-netlink-sock_diag.c index 1c7d94e1dc..21e262adae 100644 --- a/epan/dissectors/packet-netlink-sock_diag.c +++ b/epan/dissectors/packet-netlink-sock_diag.c @@ -682,7 +682,18 @@ dissect_sock_diag_inet_sockid(tvbuff_t *tvb, netlink_sock_diag_info_t *info, pro static header_field_info hfi_netlink_sock_diag_inet_proto NETLINK_SOCK_DIAG_HFI_INIT = { "Protocol", "netlink-sock_diag.inet_protocol", FT_UINT8, BASE_DEC | BASE_EXT_STRING, &ipproto_val_ext, 0x00, NULL, HFILL }; - /* XXX Linux has also IPPROTO_RAW - 255 */ + +static header_field_info hfi_netlink_sock_diag_inet_extended NETLINK_SOCK_DIAG_HFI_INIT = + { "Requested info", "netlink-sock_diag.inet_extended", FT_UINT8, BASE_DEC, + NULL, 0x00, NULL, HFILL }; + +static header_field_info hfi_netlink_sock_diag_inet_padding NETLINK_SOCK_DIAG_HFI_INIT = + { "v2 Padding or v1 info", "netlink-sock_diag.inet_padding", FT_UINT8, BASE_DEC, + NULL, 0x00, NULL, HFILL }; + +static header_field_info hfi_netlink_sock_diag_inet_states NETLINK_SOCK_DIAG_HFI_INIT = + { "State filter", "netlink-sock_diag.inet_states", FT_UINT32, BASE_DEC, + NULL, 0x00, NULL, HFILL }; static int dissect_sock_diag_inet_reply(tvbuff_t *tvb, netlink_sock_diag_info_t *info, proto_tree *tree, int offset) @@ -734,12 +745,17 @@ dissect_sock_diag_inet_request(tvbuff_t *tvb, netlink_sock_diag_info_t *info, pr offset += 1; /* XXX ext: INET_DIAG_MEMINFO, INET_DIAG_INFO, ... */ + + proto_tree_add_item(tree, &hfi_netlink_sock_diag_inet_extended, tvb, offset, 1, ENC_NA); offset += 1; + /* padding for backwards compatibility */ _dissect_padding(tree, tvb, offset, 1); + proto_tree_add_item(tree, &hfi_netlink_sock_diag_inet_padding, tvb, offset, 1, ENC_NA); offset += 1; /* XXX states (bit of sk_state) */ + proto_tree_add_item(tree, &hfi_netlink_sock_diag_inet_states, tvb, offset, 4, ENC_NA); offset += 4; offset = dissect_sock_diag_inet_sockid(tvb, info, tree, offset, af_family); @@ -1166,7 +1182,11 @@ proto_register_netlink_sock_diag(void) /* AF_INET */ &hfi_netlink_sock_diag_inet_proto, + &hfi_netlink_sock_diag_inet_extended, + &hfi_netlink_sock_diag_inet_padding, + &hfi_netlink_sock_diag_inet_states, &hfi_netlink_sock_diag_inet_attr, + /* AF_INET sockid */ &hfi_netlink_sock_diag_inet_sport, &hfi_netlink_sock_diag_inet_dport, |