summaryrefslogtreecommitdiff
path: root/epan/dissectors
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2005-05-02 18:32:00 +0000
committerAnders Broman <anders.broman@ericsson.com>2005-05-02 18:32:00 +0000
commit5a2d87c58664ef7472cce9d46ec6227b470019b0 (patch)
tree4dc16eb6fdd570024ef019e5975e167f5eb06edf /epan/dissectors
parentbe5db98edd26e12b28253c6ff983e3e5f4907f44 (diff)
downloadwireshark-5a2d87c58664ef7472cce9d46ec6227b470019b0.tar.gz
Add dissection of q850 cause.
svn path=/trunk/; revision=14273
Diffstat (limited to 'epan/dissectors')
-rw-r--r--epan/dissectors/packet-camel.c22
-rw-r--r--epan/dissectors/packet-camel.h2
2 files changed, 20 insertions, 4 deletions
diff --git a/epan/dissectors/packet-camel.c b/epan/dissectors/packet-camel.c
index f4620dfec0..90c5071b1c 100644
--- a/epan/dissectors/packet-camel.c
+++ b/epan/dissectors/packet-camel.c
@@ -5119,9 +5119,25 @@ dissect_camel_FurnishChargingInformationArg(gboolean implicit_tag _U_, tvbuff_t
static int
+dissect_camel_Q850Cause(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
+
+ tvbuff_t *camel_tvb;
+ guint8 Cause_value;
+ offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index, &camel_tvb);
+
+ dissect_q931_cause_ie(camel_tvb, 0, tvb_length_remaining(camel_tvb,0),
+ tree, hf_camel_cause_indicator, &Cause_value);
+
+
+ return offset;
+
+ return offset;
+}
+
+
+static int
dissect_camel_ReleaseCallArg(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_) {
- offset = dissect_ber_octet_string(implicit_tag, pinfo, tree, tvb, offset, hf_index,
- NULL);
+ offset = dissect_camel_Q850Cause(implicit_tag, tvb, offset, pinfo, tree, hf_index);
return offset;
}
@@ -6116,7 +6132,7 @@ static int dissect_invokeData(packet_info *pinfo, proto_tree *tree, tvbuff_t *tv
offset=dissect_camel_ConnectArg(FALSE, tvb, offset, pinfo, tree, -1);
break;
case 22: /*releaseCall*/
- offset=dissect_camel_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, -1);
+ offset=dissect_camel_ReleaseCallArg(FALSE, tvb, offset, pinfo, tree, hf_camel_cause);
break;
case 23: /*RequestReportBCSMEvent*/
offset=dissect_camel_RequestReportBCSMEventArg(FALSE, tvb, offset, pinfo, tree, -1);
diff --git a/epan/dissectors/packet-camel.h b/epan/dissectors/packet-camel.h
index c502033783..82f2b367fd 100644
--- a/epan/dissectors/packet-camel.h
+++ b/epan/dissectors/packet-camel.h
@@ -47,4 +47,4 @@ ETH_VAR_IMPORT const value_string camel_opr_code_strings[];
static int dissect_camel_DestinationAddress(gboolean implicit_tag _U_, tvbuff_t *tvb, int offset, packet_info *pinfo _U_, proto_tree *tree, int hf_index _U_);
/* #include "packet-camel-exp.h"*/
-#endif /* PACKET_camel_H */
+#endif /* PACKET_camel_H */ \ No newline at end of file