aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-atn-ulcs.c
diff options
context:
space:
mode:
authorPascal Quantin <pascal.quantin@gmail.com>2013-09-08 21:22:11 +0000
committerPascal Quantin <pascal.quantin@gmail.com>2013-09-08 21:22:11 +0000
commitf54441c1253066cfdd2558e357ddc5ed2dda3ac6 (patch)
treecbd0086a3f658412fadc93ee71cf13763b7acb11 /epan/dissectors/packet-atn-ulcs.c
parenta6ae13dee97af192794a604f348a31b505926d47 (diff)
Add a chunk forgotten in r51846
svn path=/trunk/; revision=51847
Diffstat (limited to 'epan/dissectors/packet-atn-ulcs.c')
-rw-r--r--epan/dissectors/packet-atn-ulcs.c116
1 files changed, 59 insertions, 57 deletions
diff --git a/epan/dissectors/packet-atn-ulcs.c b/epan/dissectors/packet-atn-ulcs.c
index 74a2f58e56..cd41c20dc6 100644
--- a/epan/dissectors/packet-atn-ulcs.c
+++ b/epan/dissectors/packet-atn-ulcs.c
@@ -600,72 +600,74 @@ dissect_atn_ulcs_T_externalt_encoding_arbitrary(tvbuff_t *tvb _U_, int offset _U
FALSE,
&tvb_usr);
- /* DT: dstref present, srcref is always zero */
- if((pinfo->clnp_dstref) && (!pinfo->clnp_srcref)){
+ if (tvb_usr) {
+ /* DT: dstref present, srcref is always zero */
+ if((pinfo->clnp_dstref) && (!pinfo->clnp_srcref)){
- atn_cv = find_atn_conversation(
- &pinfo->dst,
- pinfo->clnp_dstref,
- &pinfo->src);
- }
- /* CR: srcref present, dstref always zero */
- if((pinfo->clnp_srcref) && (!pinfo->clnp_dstref)){
+ atn_cv = find_atn_conversation(
+ &pinfo->dst,
+ pinfo->clnp_dstref,
+ &pinfo->src);
+ }
+ /* CR: srcref present, dstref always zero */
+ if((pinfo->clnp_srcref) && (!pinfo->clnp_dstref)){
- atn_cv = find_atn_conversation(
- &pinfo->src,
- pinfo->clnp_srcref,
- &pinfo->dst);
- }
- /* CC: srcref and dstref present */
- if((pinfo->clnp_srcref) && (pinfo->clnp_dstref)){
+ atn_cv = find_atn_conversation(
+ &pinfo->src,
+ pinfo->clnp_srcref,
+ &pinfo->dst);
+ }
+ /* CC: srcref and dstref present */
+ if((pinfo->clnp_srcref) && (pinfo->clnp_dstref)){
- atn_cv = find_atn_conversation(
- &pinfo->src,
- pinfo->clnp_srcref,
- &pinfo->dst);
- }
+ atn_cv = find_atn_conversation(
+ &pinfo->src,
+ pinfo->clnp_srcref,
+ &pinfo->dst);
+ }
- if(atn_cv) {
- switch(atn_cv->ae_qualifier){
- case cma: /* contact management */
+ if(atn_cv) {
+ switch(atn_cv->ae_qualifier){
+ case cma: /* contact management */
- call_dissector_with_data(
- atn_cm_handle,
- tvb_new_subset_remaining(tvb_usr, 0),
- pinfo,
- root_tree,
- NULL);
- break;
- case cpdlc: /* plain old cpdlc */
- case pmcpdlc: /* protected mode cpdlc */
+ call_dissector_with_data(
+ atn_cm_handle,
+ tvb_new_subset_remaining(tvb_usr, 0),
+ pinfo,
+ root_tree,
+ NULL);
+ break;
+ case cpdlc: /* plain old cpdlc */
+ case pmcpdlc: /* protected mode cpdlc */
+
+ call_dissector_with_data(
+ atn_cpdlc_handle,
+ tvb_new_subset_remaining(tvb_usr, 0),
+ pinfo,
+ root_tree,
+ NULL);
+ break;
+ default: /* unknown or unhandled datalink application */
- call_dissector_with_data(
- atn_cpdlc_handle,
- tvb_new_subset_remaining(tvb_usr, 0),
- pinfo,
+ dissector_try_heuristic(
+ atn_ulcs_heur_subdissector_list,
+ tvb_new_subset_remaining(tvb_usr,0),
+ actx->pinfo,
root_tree,
NULL);
- break;
- default: /* unknown or unhandled datalink application */
-
- dissector_try_heuristic(
- atn_ulcs_heur_subdissector_list,
- tvb_new_subset_remaining(tvb_usr,0),
- actx->pinfo,
- root_tree,
- NULL);
- break;
- }
- }else {
-
- dissector_try_heuristic(
- atn_ulcs_heur_subdissector_list,
- tvb_new_subset_remaining(tvb_usr,0),
- actx->pinfo,
- root_tree,
- NULL);
+ break;
+ }
+ }else {
+
+ dissector_try_heuristic(
+ atn_ulcs_heur_subdissector_list,
+ tvb_new_subset_remaining(tvb_usr,0),
+ actx->pinfo,
+ root_tree,
+ NULL);
+ }
}
-
+
offset += tvb_length_remaining(tvb, offset);