diff options
author | Tomas Kukosa <tomas.kukosa@siemens.com> | 2007-05-24 13:30:45 +0000 |
---|---|---|
committer | Tomas Kukosa <tomas.kukosa@siemens.com> | 2007-05-24 13:30:45 +0000 |
commit | 3ecba488981ce35f44be79c9a03622afee2ff70e (patch) | |
tree | fe31d81dcc5c5a63b4d1c412b7c3613127a87bb7 /asn1/ulp | |
parent | b20af30b48b64ae9a5744802ef33158e4ab387ff (diff) |
fix rrlp subdissector calling
svn path=/trunk/; revision=21921
Diffstat (limited to 'asn1/ulp')
-rw-r--r-- | asn1/ulp/packet-ulp-template.c | 36 | ||||
-rw-r--r-- | asn1/ulp/ulp.cnf | 4 |
2 files changed, 21 insertions, 19 deletions
diff --git a/asn1/ulp/packet-ulp-template.c b/asn1/ulp/packet-ulp-template.c index a9c43a9da1..73e0577e36 100644 --- a/asn1/ulp/packet-ulp-template.c +++ b/asn1/ulp/packet-ulp-template.c @@ -47,8 +47,8 @@ #define PSNAME "ULP" #define PFNAME "ulp" -static dissector_handle_t ulp_handle=NULL; -static dissector_handle_t rrlp_handle; +static dissector_handle_t ulp_handle = NULL; +static dissector_handle_t rrlp_handle = NULL; /* IANA Registered Ports * oma-ulp 7275/tcp OMA UserPlane Location @@ -90,22 +90,8 @@ dissect_ulp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) tcp_dissect_pdus(tvb, pinfo, tree, ulp_desegment, ULP_HEADER_SIZE, get_ulp_pdu_len, dissect_ULP_PDU_PDU); } -/*--- proto_reg_handoff_ulp ---------------------------------------*/ -void -proto_reg_handoff_ulp(void) -{ - - ulp_handle = create_dissector_handle(dissect_ulp_tcp, proto_ulp); - - dissector_add("tcp.port", gbl_ulp_port, ulp_handle); - - /* application/oma-supl-ulp */ - dissector_add_string("media_type","application/oma-supl-ulp", ulp_handle); - - rrlp_handle = find_dissector("rrlp"); - -} +void proto_reg_handoff_ulp(void); /*--- proto_register_ulp -------------------------------------------*/ void proto_register_ulp(void) { @@ -149,3 +135,19 @@ void proto_register_ulp(void) { } +/*--- proto_reg_handoff_ulp ---------------------------------------*/ +void +proto_reg_handoff_ulp(void) +{ + + ulp_handle = create_dissector_handle(dissect_ulp_tcp, proto_ulp); + + dissector_add("tcp.port", gbl_ulp_port, ulp_handle); + + /* application/oma-supl-ulp */ + dissector_add_string("media_type","application/oma-supl-ulp", ulp_handle); + + rrlp_handle = find_dissector("rrlp"); + +} + diff --git a/asn1/ulp/ulp.cnf b/asn1/ulp/ulp.cnf index 778bb9bf25..677297e541 100644 --- a/asn1/ulp/ulp.cnf +++ b/asn1/ulp/ulp.cnf @@ -32,12 +32,12 @@ guint32 UlpMessage; } #.END -#.FN_BODY RRLPPayload VAL_PTR = &rrlp_tvb +#.FN_BODY PosPayLoad/rrlpPayload VAL_PTR = &rrlp_tvb tvbuff_t *rrlp_tvb; %(DEFAULT_BODY)s - if (rrlp_tvb){ + if (rrlp_tvb && rrlp_handle) { call_dissector(rrlp_handle, rrlp_tvb, %(ACTX)s->pinfo, tree); } #.END |