aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/h248/h248.cnf
diff options
context:
space:
mode:
authorLuis Ontanon <luis.ontanon@gmail.com>2005-12-06 18:52:17 +0000
committerLuis Ontanon <luis.ontanon@gmail.com>2005-12-06 18:52:17 +0000
commitd6c5410b182fb8c70a488b0457d933f70d3de3e7 (patch)
tree0710000471604953aba4c9cb2d65876aefbd61cd /asn1/h248/h248.cnf
parent581faf7625b81b2ac4e23569761cbbde4fc079e7 (diff)
- Fix few issues with context analysis
- Add used terminations tree to the context analysis tree Regenerate Dissector svn path=/trunk/; revision=16703
Diffstat (limited to 'asn1/h248/h248.cnf')
-rw-r--r--asn1/h248/h248.cnf33
1 files changed, 22 insertions, 11 deletions
diff --git a/asn1/h248/h248.cnf b/asn1/h248/h248.cnf
index 8b28acf7b0..642f2580b1 100644
--- a/asn1/h248/h248.cnf
+++ b/asn1/h248/h248.cnf
@@ -228,16 +228,6 @@ ServiceChangeReply/terminationID terminationIDList
cmd = h248_cmd(msg,trx,ctx,H248_CMD_AUDITVAL_REPLY,offset);
#.END
-
-#.FN_BODY WildcardField
- tvbuff_t* new_tvb;
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,&new_tvb);
- tree = proto_item_add_subtree(get_ber_last_created_item(),ett_wildcard);
- proto_tree_add_item(tree,hf_h248_term_wild_type,new_tvb,0,1,FALSE);
- proto_tree_add_item(tree,hf_h248_term_wild_level,new_tvb,0,1,FALSE);
- proto_tree_add_item(tree,hf_h248_term_wild_position,new_tvb,0,1,FALSE);
-#.END
-
#.FN_BODY ErrorDescriptor/errorCode
offset = dissect_ber_integer(implicit_tag, pinfo, tree, tvb, offset, hf_h248_error_code, &error_code);
expert_add_info_format(pinfo, get_ber_last_created_item(), PI_RESPONSE_CODE, PI_WARN, "Errored Command");
@@ -251,11 +241,32 @@ ServiceChangeReply/terminationID terminationIDList
return offset;
#.END
+#.FN_HDR TerminationID
+ term = ep_new0(h248_term_t);
+
+#.END
+
+#.FN_BODY WildcardField
+ tvbuff_t* new_tvb;
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, &new_tvb);
+ tree = proto_item_add_subtree(get_ber_last_created_item(),ett_wildcard);
+ proto_tree_add_item(tree,hf_h248_term_wild_type,new_tvb,0,1,FALSE);
+ proto_tree_add_item(tree,hf_h248_term_wild_level,new_tvb,0,1,FALSE);
+ proto_tree_add_item(tree,hf_h248_term_wild_position,new_tvb,0,1,FALSE);
+#.END
+
#.FN_BODY TerminationID/id
tvbuff_t* new_tvb;
offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, &new_tvb);
- h248_cmd_add_str(cmd,bytes_to_str(tvb_get_ptr(tvb,0,tvb->length),tvb->length));
+ term->len = tvb_length(new_tvb);
+
+ if (term->len) {
+ term->buffer = ep_tvb_memdup(new_tvb,0,term->len);
+ term->str = bytes_to_str(term->buffer,term->len);
+ }
+
+ h248_cmd_add_term(cmd, term);
if (new_tvb && h248_term_handle) {
call_dissector(h248_term_handle, new_tvb, pinfo, tree);