diff options
author | Martin Kaiser <wireshark@kaiser.cx> | 2016-05-29 18:25:16 +0200 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2016-05-31 10:38:04 +0000 |
commit | 5948eee77d6b0b574f1a8dbe9eb99c4c14f6146f (patch) | |
tree | c910d67faa9d1db7a86ce2f3da0ce63a70283d89 /epan/dissectors/packet-mgcp.c | |
parent | 6e609d1a2b16624effece519559984c6564a4a58 (diff) |
mgcp: remove some unnecessary if (tree) checks
Change-Id: I839564a72163828015b6bb59bfbae6a482472013
Reviewed-on: https://code.wireshark.org/review/15631
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-mgcp.c')
-rw-r--r-- | epan/dissectors/packet-mgcp.c | 159 |
1 files changed, 71 insertions, 88 deletions
diff --git a/epan/dissectors/packet-mgcp.c b/epan/dissectors/packet-mgcp.c index 26f099ea1e..dc9996776f 100644 --- a/epan/dissectors/packet-mgcp.c +++ b/epan/dissectors/packet-mgcp.c @@ -627,8 +627,7 @@ static void dissect_mgcp_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree * /* Do we want to display the raw text of our MGCP packet? */ if (global_mgcp_raw_text) { - if (tree) - mgcp_raw_text_add(tvb, mgcp_tree); + mgcp_raw_text_add(tvb, mgcp_tree); } /* Dissect sdp payload */ @@ -1337,23 +1336,22 @@ static void dissect_mgcp_firstline(tvbuff_t *tvb, packet_info *pinfo, proto_tree (mi->rspcode >= 200) && (mi->rspcode == mgcp_call->rspcode)) { + proto_item* item; + /* No, so it's a duplicate response. Mark it as such. */ mi->is_duplicate = TRUE; col_append_fstr(pinfo->cinfo, COL_INFO, - ", Duplicate Response %u", - mi->transid); - if (tree) - { - proto_item* item; - item = proto_tree_add_uint(tree, hf_mgcp_dup, tvb, 0, 0, mi->transid); - PROTO_ITEM_SET_HIDDEN(item); - item = proto_tree_add_uint(tree, hf_mgcp_rsp_dup, - tvb, 0, 0, mi->transid); - PROTO_ITEM_SET_GENERATED(item); - item = proto_tree_add_uint(tree, hf_mgcp_rsp_dup_frame, - tvb, 0, 0, mgcp_call->rsp_num); - PROTO_ITEM_SET_GENERATED(item); - } + ", Duplicate Response %u", + mi->transid); + + item = proto_tree_add_uint(tree, hf_mgcp_dup, tvb, 0, 0, mi->transid); + PROTO_ITEM_SET_HIDDEN(item); + item = proto_tree_add_uint(tree, hf_mgcp_rsp_dup, + tvb, 0, 0, mi->transid); + PROTO_ITEM_SET_GENERATED(item); + item = proto_tree_add_uint(tree, hf_mgcp_rsp_dup_frame, + tvb, 0, 0, mgcp_call->rsp_num); + PROTO_ITEM_SET_GENERATED(item); } } /* Now store the response code (after comparison above) */ @@ -1515,51 +1513,48 @@ static void dissect_mgcp_params(tvbuff_t *tvb, proto_tree *tree) tvb_linebegin = 0; tvb_lineend = tvb_linebegin; - if (tree) + mgcp_param_ti = proto_tree_add_item(tree, hf_mgcp_params, tvb, + tvb_linebegin, tvb_len, ENC_NA); + proto_item_set_text(mgcp_param_ti, "Parameters"); + mgcp_param_tree = proto_item_add_subtree(mgcp_param_ti, ett_mgcp_param); + + /* Parse the parameters */ + while (tvb_offset_exists(tvb, tvb_lineend)) { - mgcp_param_ti = proto_tree_add_item(tree, hf_mgcp_params, tvb, - tvb_linebegin, tvb_len, ENC_NA); - proto_item_set_text(mgcp_param_ti, "Parameters"); - mgcp_param_tree = proto_item_add_subtree(mgcp_param_ti, ett_mgcp_param); + old_lineend = tvb_lineend; + linelen = tvb_find_line_end(tvb, tvb_linebegin, -1, &tvb_lineend, FALSE); + tvb_tokenbegin = tvb_parse_param(tvb, tvb_linebegin, linelen, &my_param); - /* Parse the parameters */ - while (tvb_offset_exists(tvb, tvb_lineend)) + if (my_param) { - old_lineend = tvb_lineend; - linelen = tvb_find_line_end(tvb, tvb_linebegin, -1, &tvb_lineend, FALSE); - tvb_tokenbegin = tvb_parse_param(tvb, tvb_linebegin, linelen, &my_param); - - if (my_param) + if (*my_param == hf_mgcp_param_connectionparam) { - if (*my_param == hf_mgcp_param_connectionparam) - { - tokenlen = tvb_find_line_end(tvb, tvb_tokenbegin, -1, &tvb_lineend, FALSE); - dissect_mgcp_connectionparams(mgcp_param_tree, tvb, tvb_linebegin, - tvb_tokenbegin - tvb_linebegin, tokenlen); - } - else + tokenlen = tvb_find_line_end(tvb, tvb_tokenbegin, -1, &tvb_lineend, FALSE); + dissect_mgcp_connectionparams(mgcp_param_tree, tvb, tvb_linebegin, + tvb_tokenbegin - tvb_linebegin, tokenlen); + } + else if (*my_param == hf_mgcp_param_localconnoptions) { tokenlen = tvb_find_line_end(tvb, tvb_tokenbegin, -1, &tvb_lineend, FALSE); dissect_mgcp_localconnectionoptions(mgcp_param_tree, tvb, tvb_linebegin, - tvb_tokenbegin - tvb_linebegin, tokenlen); + tvb_tokenbegin - tvb_linebegin, tokenlen); } else { tokenlen = tvb_find_line_end(tvb, tvb_tokenbegin, -1, &tvb_lineend, FALSE); proto_tree_add_string(mgcp_param_tree, *my_param, tvb, - tvb_linebegin, linelen, - tvb_format_text(tvb, tvb_tokenbegin, tokenlen)); + tvb_linebegin, linelen, + tvb_format_text(tvb, tvb_tokenbegin, tokenlen)); } - } + } - tvb_linebegin = tvb_lineend; - /* Its a infinite loop if we didn't advance (or went backwards) */ - if (old_lineend >= tvb_lineend) - { - /* XXX - exception */ - break; - } + tvb_linebegin = tvb_lineend; + /* Its a infinite loop if we didn't advance (or went backwards) */ + if (old_lineend >= tvb_lineend) + { + /* XXX - exception */ + break; } } } @@ -1568,18 +1563,15 @@ static void dissect_mgcp_params(tvbuff_t *tvb, proto_tree *tree) static void dissect_mgcp_connectionparams(proto_tree *parent_tree, tvbuff_t *tvb, gint offset, gint param_type_len, gint param_val_len) { - proto_tree *tree = parent_tree; + proto_tree *tree; + proto_item *item; gchar *tokenline; gchar **tokens; guint i; - if (parent_tree) - { - proto_item *item; - item = proto_tree_add_item(parent_tree, hf_mgcp_param_connectionparam, tvb, offset, param_type_len+param_val_len, ENC_ASCII|ENC_NA); - tree = proto_item_add_subtree(item, ett_mgcp_param_connectionparam); - } + item = proto_tree_add_item(parent_tree, hf_mgcp_param_connectionparam, tvb, offset, param_type_len+param_val_len, ENC_ASCII|ENC_NA); + tree = proto_item_add_subtree(item, ett_mgcp_param_connectionparam); /* The P: line */ offset += param_type_len; /* skip the P: */ @@ -1652,23 +1644,20 @@ dissect_mgcp_connectionparams(proto_tree *parent_tree, tvbuff_t *tvb, gint offse hf_string = -1; } - if (tree) + if (hf_uint != -1) { - if (hf_uint != -1) - { - proto_tree_add_uint(tree, hf_uint, tvb, offset, tokenlen, (guint32)strtoul(typval[1], NULL, 10)); - } - else if (hf_string != -1) - { - proto_tree_add_string(tree, hf_string, tvb, offset, tokenlen, g_strstrip(typval[1])); - } - else - { - proto_tree_add_string(tree, hf_mgcp_unknown_parameter, tvb, offset, tokenlen, tokens[i]); - } + proto_tree_add_uint(tree, hf_uint, tvb, offset, tokenlen, (guint32)strtoul(typval[1], NULL, 10)); + } + else if (hf_string != -1) + { + proto_tree_add_string(tree, hf_string, tvb, offset, tokenlen, g_strstrip(typval[1])); + } + else + { + proto_tree_add_string(tree, hf_mgcp_unknown_parameter, tvb, offset, tokenlen, tokens[i]); } } - else if (tree) + else { proto_tree_add_string(tree, hf_mgcp_malformed_parameter, tvb, offset, tokenlen, tokens[i]); } @@ -1681,18 +1670,15 @@ dissect_mgcp_connectionparams(proto_tree *parent_tree, tvbuff_t *tvb, gint offse static void dissect_mgcp_localconnectionoptions(proto_tree *parent_tree, tvbuff_t *tvb, gint offset, gint param_type_len, gint param_val_len) { - proto_tree *tree = parent_tree; + proto_tree *tree; + proto_item *item; gchar *tokenline; gchar **tokens; guint i; - if (parent_tree) - { - proto_item *item; - item = proto_tree_add_item(parent_tree, hf_mgcp_param_localconnoptions, tvb, offset, param_type_len+param_val_len, ENC_ASCII|ENC_NA); - tree = proto_item_add_subtree(item, ett_mgcp_param_localconnectionoptions); - } + item = proto_tree_add_item(parent_tree, hf_mgcp_param_localconnoptions, tvb, offset, param_type_len+param_val_len, ENC_ASCII|ENC_NA); + tree = proto_item_add_subtree(item, ett_mgcp_param_localconnectionoptions); /* The L: line */ offset += param_type_len; /* skip the L: */ @@ -1821,23 +1807,20 @@ dissect_mgcp_localconnectionoptions(proto_tree *parent_tree, tvbuff_t *tvb, gint } /* Add item */ - if (tree) + if (hf_uint != -1) { - if (hf_uint != -1) - { - proto_tree_add_uint(tree, hf_uint, tvb, offset, tokenlen, (guint32)strtoul(typval[1], NULL, 10)); - } - else if (hf_string != -1) - { - proto_tree_add_string(tree, hf_string, tvb, offset, tokenlen, g_strstrip(typval[1])); - } - else - { - proto_tree_add_string(tree, hf_mgcp_unknown_parameter, tvb, offset, tokenlen, tokens[i]); - } + proto_tree_add_uint(tree, hf_uint, tvb, offset, tokenlen, (guint32)strtoul(typval[1], NULL, 10)); + } + else if (hf_string != -1) + { + proto_tree_add_string(tree, hf_string, tvb, offset, tokenlen, g_strstrip(typval[1])); + } + else + { + proto_tree_add_string(tree, hf_mgcp_unknown_parameter, tvb, offset, tokenlen, tokens[i]); } } - else if (tree) + else { proto_tree_add_string(tree, hf_mgcp_malformed_parameter, tvb, offset, tokenlen, tokens[i]); } |