aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-h248_annex_c.c
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2012-06-20 10:48:00 +0000
committerAnders Broman <anders.broman@ericsson.com>2012-06-20 10:48:00 +0000
commit21e86b9d4dc8213e82ba8ddcbce72c1870bce2be (patch)
tree5a6d1250449e97b3254e9eabe88806dedb588349 /epan/dissectors/packet-h248_annex_c.c
parent3cdd0278aa189f3995defd6d82e8f26047fdddf4 (diff)
SDP data embeded in OCTET STRING.
svn path=/trunk/; revision=43404
Diffstat (limited to 'epan/dissectors/packet-h248_annex_c.c')
-rw-r--r--epan/dissectors/packet-h248_annex_c.c39
1 files changed, 20 insertions, 19 deletions
diff --git a/epan/dissectors/packet-h248_annex_c.c b/epan/dissectors/packet-h248_annex_c.c
index d03c21647c..b3880ec447 100644
--- a/epan/dissectors/packet-h248_annex_c.c
+++ b/epan/dissectors/packet-h248_annex_c.c
@@ -806,16 +806,17 @@ static void dissect_h248_annexc_USI(proto_tree* tree, tvbuff_t* tvb, packet_info
}
static void dissect_h248_annexc_SDP(proto_tree* tree, tvbuff_t* tvb, packet_info* pinfo, int hfid, h248_curr_info_t* h248_info _U_, void* implicit_p _U_) {
+ tvbuff_t* new_tvb = NULL;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_BER, TRUE, pinfo);
- dissect_ber_restricted_string( FALSE, BER_UNI_TAG_IA5String,
- &asn1_ctx, tree, tvb, 0, hfid,
+ dissect_ber_octet_string(implicit_p ? *((gboolean*)implicit_p) : FALSE, &asn1_ctx, tree, tvb, 0, hfid, &new_tvb);
+ if (new_tvb)
+ dissect_ber_restricted_string( FALSE, BER_UNI_TAG_IA5String,
+ &asn1_ctx, tree, new_tvb, 0, hfid,
NULL);
}
-gboolean h248_c_implicit = TRUE;
-
static h248_pkg_param_t h248_annexc_package_properties[] = {
{ 0x1001, &hf_h248_pkg_annexc_media, h248_param_ber_integer, NULL },
{ 0x1002, &hf_h248_pkg_annexc_transmission_mode, h248_param_ber_integer, NULL },
@@ -934,21 +935,21 @@ static h248_pkg_param_t h248_annexc_package_properties[] = {
{ 0xA002, &hf_h248_pkg_annexc_bmsdu, h248_param_ber_octetstring, NULL },
{ 0xA003, &hf_h248_pkg_annexc_sscs, NULL, NULL },
- { 0xB001, &hf_h248_pkg_annexc_sdp_v, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB002, &hf_h248_pkg_annexc_sdp_o, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB003, &hf_h248_pkg_annexc_sdp_s, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB004, &hf_h248_pkg_annexc_sdp_i, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB005, &hf_h248_pkg_annexc_sdp_u, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB006, &hf_h248_pkg_annexc_sdp_e, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB007, &hf_h248_pkg_annexc_sdp_p, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB008, &hf_h248_pkg_annexc_sdp_c, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB009, &hf_h248_pkg_annexc_sdp_b, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00a, &hf_h248_pkg_annexc_sdp_z, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00b, &hf_h248_pkg_annexc_sdp_k, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00c, &hf_h248_pkg_annexc_sdp_a, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00d, &hf_h248_pkg_annexc_sdp_t, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00e, &hf_h248_pkg_annexc_sdp_r, dissect_h248_annexc_SDP, &h248_c_implicit },
- { 0xB00f, &hf_h248_pkg_annexc_sdp_m, dissect_h248_annexc_SDP, &h248_c_implicit },
+ { 0xB001, &hf_h248_pkg_annexc_sdp_v, dissect_h248_annexc_SDP, NULL },
+ { 0xB002, &hf_h248_pkg_annexc_sdp_o, dissect_h248_annexc_SDP, NULL },
+ { 0xB003, &hf_h248_pkg_annexc_sdp_s, dissect_h248_annexc_SDP, NULL },
+ { 0xB004, &hf_h248_pkg_annexc_sdp_i, dissect_h248_annexc_SDP, NULL },
+ { 0xB005, &hf_h248_pkg_annexc_sdp_u, dissect_h248_annexc_SDP, NULL },
+ { 0xB006, &hf_h248_pkg_annexc_sdp_e, dissect_h248_annexc_SDP, NULL },
+ { 0xB007, &hf_h248_pkg_annexc_sdp_p, dissect_h248_annexc_SDP, NULL },
+ { 0xB008, &hf_h248_pkg_annexc_sdp_c, dissect_h248_annexc_SDP, NULL },
+ { 0xB009, &hf_h248_pkg_annexc_sdp_b, dissect_h248_annexc_SDP, NULL },
+ { 0xB00a, &hf_h248_pkg_annexc_sdp_z, dissect_h248_annexc_SDP, NULL },
+ { 0xB00b, &hf_h248_pkg_annexc_sdp_k, dissect_h248_annexc_SDP, NULL },
+ { 0xB00c, &hf_h248_pkg_annexc_sdp_a, dissect_h248_annexc_SDP, NULL },
+ { 0xB00d, &hf_h248_pkg_annexc_sdp_t, dissect_h248_annexc_SDP, NULL },
+ { 0xB00e, &hf_h248_pkg_annexc_sdp_r, dissect_h248_annexc_SDP, NULL },
+ { 0xB00f, &hf_h248_pkg_annexc_sdp_m, dissect_h248_annexc_SDP, NULL },
{ 0xC001, &hf_h248_pkg_annexc_olc, h248_param_ber_octetstring, NULL },
{ 0xC002, &hf_h248_pkg_annexc_olcack, h248_param_ber_octetstring, NULL },