aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-uasip.c
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/packet-uasip.c')
-rw-r--r--epan/dissectors/packet-uasip.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/epan/dissectors/packet-uasip.c b/epan/dissectors/packet-uasip.c
index 514f282be9..44439757c0 100644
--- a/epan/dissectors/packet-uasip.c
+++ b/epan/dissectors/packet-uasip.c
@@ -257,22 +257,23 @@ static void _dissect_uasip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
#endif
}
-static void dissect_uasip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_uasip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_)
{
if (use_proxy_ipaddr)
{
if (memcmp((pinfo->src).data, proxy_ipaddr, sizeof(proxy_ipaddr)) == 0)
{
_dissect_uasip(tvb, pinfo, tree, SYS_TO_TERM);
- return;
+ return tvb_captured_length(tvb);
}
else if (memcmp((pinfo->dst).data, proxy_ipaddr, sizeof(proxy_ipaddr)) == 0)
{
_dissect_uasip(tvb, pinfo, tree, TERM_TO_SYS);
- return;
+ return tvb_captured_length(tvb);
}
}
_dissect_uasip(tvb, pinfo, tree, DIR_UNKNOWN);
+ return tvb_captured_length(tvb);
}
void proto_register_uasip(void)
@@ -444,7 +445,7 @@ void proto_register_uasip(void)
};
proto_uasip = proto_register_protocol("UA/SIP Protocol", "UASIP", "uasip");
- uasip_handle = register_dissector("uasip", dissect_uasip, proto_uasip);
+ uasip_handle = new_register_dissector("uasip", dissect_uasip, proto_uasip);
proto_register_field_array(proto_uasip, hf_uasip, array_length(hf_uasip));
proto_register_subtree_array(ett, array_length(ett));