summaryrefslogtreecommitdiff
path: root/epan/epan.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2016-01-04 13:14:08 -0800
committerGuy Harris <guy@alum.mit.edu>2016-01-04 21:14:42 +0000
commitcdf9943717c9bb1cba7af381507b295b384e800b (patch)
tree183f70fcbc06d492130997c9fe559b532d83b44a /epan/epan.c
parent849d87af1cb9f3e19222e452fd76483244375a03 (diff)
downloadwireshark-cdf9943717c9bb1cba7af381507b295b384e800b.tar.gz
Don't walk the entire protocol tree to extract the value of one field.
Instead, prime the epan_dissect_t's tree to look for rtp.ssrc, and extract that value with proto_get_finfo_ptr_array(). Also, have the filter used to check whether the packet is a candidate for RTP analysis to check for RTPv2 (and add a check for IPv4 or IPv6 back to the Qt version), and get rid of an unnecessary extra level of indirection for that string. In the Qt version, if findStreams() set the error string, don't overwrite it with a "No streams found." indication, and fix error handling for the "filter didn't compile" case. Change-Id: I09d0ea37ccd4806d99e3b6394f2a8a376e974705 Reviewed-on: https://code.wireshark.org/review/13045 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'epan/epan.c')
-rw-r--r--epan/epan.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/epan/epan.c b/epan/epan.c
index 98815b5d6f..d33544e681 100644
--- a/epan/epan.c
+++ b/epan/epan.c
@@ -446,7 +446,13 @@ epan_dissect_free(epan_dissect_t* edt)
void
epan_dissect_prime_dfilter(epan_dissect_t *edt, const dfilter_t* dfcode)
{
- dfilter_prime_proto_tree(dfcode, edt->tree);
+ dfilter_prime_proto_tree(dfcode, edt->tree);
+}
+
+void
+epan_dissect_prime_hfid(epan_dissect_t *edt, int hfid)
+{
+ proto_tree_prime_hfid(edt->tree, hfid);
}
/* ----------------------- */