diff options
author | Alexis La Goutte <alexis.lagoutte@gmail.com> | 2018-07-20 13:13:12 +0000 |
---|---|---|
committer | Peter Wu <peter@lekensteyn.nl> | 2018-07-25 10:33:31 +0000 |
commit | 532e8c8011ac47fdcfa578caa5cb3b404b645f6a (patch) | |
tree | d8235191134622d5e078b9f406059844dc9a5a2e | |
parent | 4ff2c7b685bef7ae8e075f80abb0871886fd75a0 (diff) |
nfapi: fix dissection of CONFIG.request
There is no Error Code field
Bug: 14988
Change-Id: If6e8cf37d508c014b585bdb0cb4830ce7eb45588
Reviewed-on: https://code.wireshark.org/review/28797
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
-rw-r--r-- | epan/dissectors/packet-nfapi.c | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/epan/dissectors/packet-nfapi.c b/epan/dissectors/packet-nfapi.c index cdcd368498..cb70bfe3db 100644 --- a/epan/dissectors/packet-nfapi.c +++ b/epan/dissectors/packet-nfapi.c @@ -8258,6 +8258,21 @@ static int dissect_p45_param_response_msg_id(tvbuff_t *tvb, packet_info *pinfo, return tvb_captured_length(tvb); } +static int dissect_p45_config_request_msg_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data) +{ + int offset = dissect_p45_header(tvb, pinfo, tree, data); + ptvcursor_t *ptvc; + + proto_tree_add_item(tree, hf_nfapi_num_tlv, tvb, offset, 1, ENC_BIG_ENDIAN); + offset += 1; + + ptvc = ptvcursor_new(tree, tvb, offset); + dissect_tlv_list(ptvc, pinfo, tvb_reported_length(tvb)); + ptvcursor_free(ptvc); + + return tvb_captured_length(tvb); +} + static int dissect_p7_header(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, guint8* m, guint8* seg, guint8* seq) { proto_tree *header_tree; @@ -11680,7 +11695,6 @@ void proto_reg_handoff_nfapi(void) handle = create_dissector_handle( dissect_p45_header_with_error_and_list, -1 ); dissector_add_uint("nfapi.msg_id", NFAPI_PNF_PARAM_RESPONSE_MSG_ID, handle); - dissector_add_uint("nfapi.msg_id", NFAPI_CONFIG_REQUEST_MSG_ID, handle); dissector_add_uint("nfapi.msg_id", NFAPI_MEASUREMENT_RESPONSE_MSG_ID, handle); handle = create_dissector_handle( dissect_p45_header_with_p4_error_and_list, -1 ); @@ -11697,6 +11711,7 @@ void proto_reg_handoff_nfapi(void) dissector_add_uint("nfapi.msg_id", NFAPI_SYSTEM_INFORMATION_SCHEDULE_REQUEST_MSG_ID, handle); dissector_add_uint("nfapi.msg_id", NFAPI_SYSTEM_INFORMATION_REQUEST_MSG_ID, handle); + dissector_add_uint("nfapi.msg_id", NFAPI_CONFIG_REQUEST_MSG_ID, create_dissector_handle( dissect_p45_config_request_msg_id, -1 )); dissector_add_uint("nfapi.msg_id", NFAPI_PARAM_RESPONSE_MSG_ID, create_dissector_handle( dissect_p45_param_response_msg_id, -1 )); dissector_add_uint("nfapi.msg_id", NFAPI_DL_NODE_SYNC_MSG_ID, create_dissector_handle( dissect_p7_dl_node_sync_msg_id, -1 )); dissector_add_uint("nfapi.msg_id", NFAPI_UL_NODE_SYNC_MSG_ID, create_dissector_handle( dissect_p7_ul_node_sync_msg_id, -1 )); |