diff options
author | Anders Broman <anders.broman@ericsson.com> | 2005-05-02 18:32:00 +0000 |
---|---|---|
committer | Anders Broman <anders.broman@ericsson.com> | 2005-05-02 18:32:00 +0000 |
commit | 5a2d87c58664ef7472cce9d46ec6227b470019b0 (patch) | |
tree | 4dc16eb6fdd570024ef019e5975e167f5eb06edf /epan/dissectors | |
parent | be5db98edd26e12b28253c6ff983e3e5f4907f44 (diff) | |
download | wireshark-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.c | 22 | ||||
-rw-r--r-- | epan/dissectors/packet-camel.h | 2 |
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 |