aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--asn1/camel/camel.cnf6
-rw-r--r--asn1/charging_ase/packet-charging_ase-template.c2
-rw-r--r--asn1/cmp/packet-cmp-template.c12
-rw-r--r--asn1/credssp/packet-credssp-template.c2
-rw-r--r--asn1/h225/packet-h225-template.c9
-rw-r--r--asn1/h282/packet-h282-template.c4
-rw-r--r--asn1/h283/packet-h283-template.c4
-rw-r--r--asn1/h450/packet-h450-template.c12
-rw-r--r--asn1/h460/packet-h460-template.c8
-rw-r--r--asn1/h501/packet-h501-template.c8
-rw-r--r--asn1/hnbap/packet-hnbap-template.c26
-rw-r--r--asn1/inap/inap.cnf6
-rw-r--r--asn1/lcsap/packet-lcsap-template.c22
-rw-r--r--asn1/lppa/packet-lppa-template.c16
-rw-r--r--asn1/lte-rrc/lte-rrc.cnf10
-rw-r--r--asn1/lte-rrc/packet-lte-rrc-template.c18
-rw-r--r--asn1/m3ap/packet-m3ap-template.c22
-rw-r--r--asn1/mms/packet-mms-template.c2
-rw-r--r--asn1/mpeg-audio/packet-mpeg-audio-template.c2
-rw-r--r--asn1/mpeg-pes/packet-mpeg-pes-template.c10
-rw-r--r--asn1/nbap/nbap.cnf12
-rw-r--r--asn1/nbap/packet-nbap-template.c20
-rw-r--r--asn1/ocsp/packet-ocsp-template.c4
-rw-r--r--asn1/pcap/packet-pcap-template.c26
-rw-r--r--asn1/pkixtsp/packet-pkixtsp-template.c4
-rw-r--r--asn1/q932-ros/packet-q932-ros-template.c4
-rw-r--r--asn1/qsig/packet-qsig-template.c12
-rw-r--r--asn1/ranap/packet-ranap-template.c36
-rw-r--r--asn1/rnsap/packet-rnsap-template.c24
-rw-r--r--asn1/ros/packet-ros-template.c2
-rw-r--r--asn1/rrc/packet-rrc-template.c12
-rw-r--r--asn1/rrc/rrc.cnf2
-rw-r--r--asn1/rua/packet-rua-template.c20
-rw-r--r--asn1/s1ap/packet-s1ap-template.c26
-rw-r--r--asn1/s1ap/s1ap.cnf14
-rw-r--r--asn1/sabp/packet-sabp-template.c22
-rw-r--r--asn1/sbc-ap/packet-sbc-ap-template.c26
-rw-r--r--asn1/smrse/packet-smrse-template.c2
-rw-r--r--asn1/snmp/packet-snmp-template.c2
-rw-r--r--asn1/spnego/packet-spnego-template.c4
-rw-r--r--asn1/t124/packet-t124-template.c6
-rw-r--r--asn1/t125/packet-t125-template.c8
-rw-r--r--asn1/t38/packet-t38-template.c4
-rw-r--r--asn1/x2ap/packet-x2ap-template.c20
-rw-r--r--asn1/x2ap/x2ap.cnf4
-rw-r--r--asn1/x509af/packet-x509af-template.c2
-rw-r--r--epan/dissectors/packet-3com-njack.c10
-rw-r--r--epan/dissectors/packet-3g-a11.c2
-rw-r--r--epan/dissectors/packet-6lowpan.c3
-rw-r--r--epan/dissectors/packet-9p.c2
-rw-r--r--epan/dissectors/packet-aastra-aasp.c2
-rw-r--r--epan/dissectors/packet-acn.c2
-rw-r--r--epan/dissectors/packet-actrace.c2
-rw-r--r--epan/dissectors/packet-adwin-config.c2
-rw-r--r--epan/dissectors/packet-adwin.c2
-rw-r--r--epan/dissectors/packet-aim.c2
-rw-r--r--epan/dissectors/packet-aodv.c2
-rw-r--r--epan/dissectors/packet-applemidi.c2
-rw-r--r--epan/dissectors/packet-armagetronad.c2
-rw-r--r--epan/dissectors/packet-artnet.c2
-rw-r--r--epan/dissectors/packet-aruba-papi.c2
-rw-r--r--epan/dissectors/packet-asf.c2
-rw-r--r--epan/dissectors/packet-at.c2
-rw-r--r--epan/dissectors/packet-atalk.c4
-rw-r--r--epan/dissectors/packet-atmtcp.c2
-rw-r--r--epan/dissectors/packet-babel.c2
-rw-r--r--epan/dissectors/packet-banana.c2
-rw-r--r--epan/dissectors/packet-bfcp.c2
-rw-r--r--epan/dissectors/packet-bittorrent.c2
-rw-r--r--epan/dissectors/packet-bjnp.c2
-rw-r--r--epan/dissectors/packet-bmc.c2
-rw-r--r--epan/dissectors/packet-brp.c2
-rw-r--r--epan/dissectors/packet-bssap.c2
-rw-r--r--epan/dissectors/packet-bssgp.c20
-rw-r--r--epan/dissectors/packet-bt-dht.c6
-rw-r--r--epan/dissectors/packet-bt-utp.c2
-rw-r--r--epan/dissectors/packet-btamp.c2
-rw-r--r--epan/dissectors/packet-bthci_evt.c2
-rw-r--r--epan/dissectors/packet-btsdp.c2
-rw-r--r--epan/dissectors/packet-bvlc.c2
-rw-r--r--epan/dissectors/packet-calcappprotocol.c2
-rw-r--r--epan/dissectors/packet-capwap.c2
-rw-r--r--epan/dissectors/packet-cigi.c6
-rw-r--r--epan/dissectors/packet-cimd.c2
-rw-r--r--epan/dissectors/packet-cip.c12
-rw-r--r--epan/dissectors/packet-cipsafety.c6
-rw-r--r--epan/dissectors/packet-classicstun.c6
-rw-r--r--epan/dissectors/packet-clique-rm.c2
-rw-r--r--epan/dissectors/packet-cmp.c12
-rw-r--r--epan/dissectors/packet-cmpp.c2
-rw-r--r--epan/dissectors/packet-componentstatus.c2
-rw-r--r--epan/dissectors/packet-cpfi.c2
-rw-r--r--epan/dissectors/packet-cpha.c2
-rw-r--r--epan/dissectors/packet-credssp.c2
-rw-r--r--epan/dissectors/packet-ctdb.c2
-rw-r--r--epan/dissectors/packet-dbus.c6
-rw-r--r--epan/dissectors/packet-dcc.c2
-rw-r--r--epan/dissectors/packet-dcerpc.c10
-rw-r--r--epan/dissectors/packet-dcm.c9
-rw-r--r--epan/dissectors/packet-dcp-etsi.c3
-rw-r--r--epan/dissectors/packet-ddtp.c2
-rw-r--r--epan/dissectors/packet-diameter.c8
-rw-r--r--epan/dissectors/packet-diameter_3gpp.c42
-rw-r--r--epan/dissectors/packet-dis.c2
-rw-r--r--epan/dissectors/packet-dlm3.c2
-rw-r--r--epan/dissectors/packet-dlsw.c4
-rw-r--r--epan/dissectors/packet-dnp.c4
-rw-r--r--epan/dissectors/packet-dplay.c3
-rw-r--r--epan/dissectors/packet-drda.c2
-rw-r--r--epan/dissectors/packet-dtls.c2
-rw-r--r--epan/dissectors/packet-dtpt.c8
-rw-r--r--epan/dissectors/packet-dvb-ait.c2
-rw-r--r--epan/dissectors/packet-dvb-nit.c2
-rw-r--r--epan/dissectors/packet-dvb-s2-bb.c2
-rw-r--r--epan/dissectors/packet-dvbci.c2
-rw-r--r--epan/dissectors/packet-e100.c2
-rw-r--r--epan/dissectors/packet-eap.c2
-rw-r--r--epan/dissectors/packet-eigrp.c4
-rw-r--r--epan/dissectors/packet-enip.c6
-rw-r--r--epan/dissectors/packet-enttec.c2
-rw-r--r--epan/dissectors/packet-epl.c5
-rw-r--r--epan/dissectors/packet-epl_v1.c2
-rw-r--r--epan/dissectors/packet-epmd.c2
-rw-r--r--epan/dissectors/packet-esio.c2
-rw-r--r--epan/dissectors/packet-etch.c2
-rw-r--r--epan/dissectors/packet-fcip.c2
-rw-r--r--epan/dissectors/packet-fcoib.c2
-rw-r--r--epan/dissectors/packet-ff.c4
-rw-r--r--epan/dissectors/packet-fix.c2
-rw-r--r--epan/dissectors/packet-flip.c2
-rw-r--r--epan/dissectors/packet-fmtp.c2
-rw-r--r--epan/dissectors/packet-fractalgeneratorprotocol.c2
-rw-r--r--epan/dissectors/packet-gadu-gadu.c2
-rw-r--r--epan/dissectors/packet-gdsdb.c2
-rw-r--r--epan/dissectors/packet-ged125.c2
-rw-r--r--epan/dissectors/packet-giop.c8
-rw-r--r--epan/dissectors/packet-glbp.c2
-rw-r--r--epan/dissectors/packet-gmhdr.c4
-rw-r--r--epan/dissectors/packet-gopher.c2
-rw-r--r--epan/dissectors/packet-gpef.c2
-rw-r--r--epan/dissectors/packet-gsm_a_bssmap.c8
-rw-r--r--epan/dissectors/packet-gsm_abis_oml.c2
-rw-r--r--epan/dissectors/packet-gssapi.c4
-rw-r--r--epan/dissectors/packet-gtp.c14
-rw-r--r--epan/dissectors/packet-gtpv2.c6
-rw-r--r--epan/dissectors/packet-gvcp.c2
-rw-r--r--epan/dissectors/packet-h1.c2
-rw-r--r--epan/dissectors/packet-h264.c10
-rw-r--r--epan/dissectors/packet-hdcp.c2
-rw-r--r--epan/dissectors/packet-hdcp2.c2
-rw-r--r--epan/dissectors/packet-hsrp.c2
-rw-r--r--epan/dissectors/packet-icep.c4
-rw-r--r--epan/dissectors/packet-icmpv6.c2
-rw-r--r--epan/dissectors/packet-icq.c2
-rw-r--r--epan/dissectors/packet-ieee80211-netmon.c2
-rw-r--r--epan/dissectors/packet-ifcp.c2
-rw-r--r--epan/dissectors/packet-image-gif.c6
-rw-r--r--epan/dissectors/packet-image-jfif.c6
-rw-r--r--epan/dissectors/packet-image-png.c6
-rw-r--r--epan/dissectors/packet-infiniband_sdp.c2
-rw-r--r--epan/dissectors/packet-ipmi-session.c2
-rw-r--r--epan/dissectors/packet-ipsec-tcp.c2
-rw-r--r--epan/dissectors/packet-iscsi.c4
-rw-r--r--epan/dissectors/packet-isns.c4
-rw-r--r--epan/dissectors/packet-iso7816.c2
-rw-r--r--epan/dissectors/packet-isup.c2
-rw-r--r--epan/dissectors/packet-iwarp-mpa.c2
-rw-r--r--epan/dissectors/packet-jmirror.c2
-rw-r--r--epan/dissectors/packet-jxta.c28
-rw-r--r--epan/dissectors/packet-kerberos.c4
-rw-r--r--epan/dissectors/packet-kerberos4.c2
-rw-r--r--epan/dissectors/packet-kingfisher.c4
-rw-r--r--epan/dissectors/packet-kismet.c2
-rw-r--r--epan/dissectors/packet-l2tp.c2
-rw-r--r--epan/dissectors/packet-lanforge.c2
-rw-r--r--epan/dissectors/packet-laplink.c2
-rw-r--r--epan/dissectors/packet-ldp.c4
-rw-r--r--epan/dissectors/packet-ldss.c2
-rw-r--r--epan/dissectors/packet-lisp-data.c2
-rw-r--r--epan/dissectors/packet-lisp.c2
-rw-r--r--epan/dissectors/packet-lmp.c2
-rw-r--r--epan/dissectors/packet-lon.c2
-rw-r--r--epan/dissectors/packet-ltp.c2
-rw-r--r--epan/dissectors/packet-mac-lte.c2
-rw-r--r--epan/dissectors/packet-mactelnet.c2
-rw-r--r--epan/dissectors/packet-mbtcp.c6
-rw-r--r--epan/dissectors/packet-mesh.c2
-rw-r--r--epan/dissectors/packet-mgcp.c6
-rw-r--r--epan/dissectors/packet-mikey.c2
-rw-r--r--epan/dissectors/packet-mim.c8
-rw-r--r--epan/dissectors/packet-miop.c2
-rw-r--r--epan/dissectors/packet-mmse.c2
-rw-r--r--epan/dissectors/packet-mndp.c2
-rw-r--r--epan/dissectors/packet-mojito.c6
-rw-r--r--epan/dissectors/packet-moldudp.c2
-rw-r--r--epan/dissectors/packet-moldudp64.c2
-rw-r--r--epan/dissectors/packet-mp2t.c2
-rw-r--r--epan/dissectors/packet-mp4ves.c6
-rw-r--r--epan/dissectors/packet-mpeg-audio.c2
-rw-r--r--epan/dissectors/packet-mpeg-dsmcc.c4
-rw-r--r--epan/dissectors/packet-mpeg-pes.c10
-rw-r--r--epan/dissectors/packet-mpeg-pmt.c2
-rw-r--r--epan/dissectors/packet-mpls-y1711.c2
-rw-r--r--epan/dissectors/packet-mq-pcf.c2
-rw-r--r--epan/dissectors/packet-mq.c14
-rw-r--r--epan/dissectors/packet-ms-mms.c4
-rw-r--r--epan/dissectors/packet-msrp.c8
-rw-r--r--epan/dissectors/packet-nas_eps.c4
-rw-r--r--epan/dissectors/packet-nb_rtpmux.c2
-rw-r--r--epan/dissectors/packet-nbd.c2
-rw-r--r--epan/dissectors/packet-ndmp.c4
-rw-r--r--epan/dissectors/packet-netflow.c2
-rw-r--r--epan/dissectors/packet-netperfmeter.c2
-rw-r--r--epan/dissectors/packet-ntlmssp.c14
-rw-r--r--epan/dissectors/packet-oicq.c2
-rw-r--r--epan/dissectors/packet-oipf.c2
-rw-r--r--epan/dissectors/packet-olsr.c2
-rw-r--r--epan/dissectors/packet-omron-fins.c2
-rw-r--r--epan/dissectors/packet-opensafety.c10
-rw-r--r--epan/dissectors/packet-openwire.c2
-rw-r--r--epan/dissectors/packet-ositp.c4
-rw-r--r--epan/dissectors/packet-paltalk.c2
-rw-r--r--epan/dissectors/packet-pana.c2
-rw-r--r--epan/dissectors/packet-pdcp-lte.c2
-rw-r--r--epan/dissectors/packet-per.c6
-rw-r--r--epan/dissectors/packet-pflog.c2
-rw-r--r--epan/dissectors/packet-pingpongprotocol.c2
-rw-r--r--epan/dissectors/packet-pkixtsp.c4
-rw-r--r--epan/dissectors/packet-pktgen.c2
-rw-r--r--epan/dissectors/packet-pnrp.c2
-rw-r--r--epan/dissectors/packet-ppp.c2
-rw-r--r--epan/dissectors/packet-pvfs2.c2
-rw-r--r--epan/dissectors/packet-pw-atm.c4
-rw-r--r--epan/dissectors/packet-q931.c4
-rw-r--r--epan/dissectors/packet-radius.c2
-rw-r--r--epan/dissectors/packet-redbackli.c2
-rw-r--r--epan/dissectors/packet-reload-framing.c4
-rw-r--r--epan/dissectors/packet-reload.c2
-rw-r--r--epan/dissectors/packet-rlc-lte.c2
-rw-r--r--epan/dissectors/packet-rlc.c2
-rw-r--r--epan/dissectors/packet-rlm.c6
-rw-r--r--epan/dissectors/packet-rmcp.c6
-rw-r--r--epan/dissectors/packet-rmt-norm.c2
-rw-r--r--epan/dissectors/packet-ros.c2
-rw-r--r--epan/dissectors/packet-rpc.c4
-rw-r--r--epan/dissectors/packet-rpcap.c4
-rw-r--r--epan/dissectors/packet-rsl.c2
-rw-r--r--epan/dissectors/packet-rtcp.c4
-rw-r--r--epan/dissectors/packet-rtp.c4
-rw-r--r--epan/dissectors/packet-rtps.c7
-rw-r--r--epan/dissectors/packet-rtps2.c7
-rw-r--r--epan/dissectors/packet-rx.c2
-rw-r--r--epan/dissectors/packet-sbus.c2
-rw-r--r--epan/dissectors/packet-scriptingservice.c2
-rw-r--r--epan/dissectors/packet-sebek.c2
-rw-r--r--epan/dissectors/packet-ses.c2
-rw-r--r--epan/dissectors/packet-sflow.c4
-rw-r--r--epan/dissectors/packet-sigcomp.c6
-rw-r--r--epan/dissectors/packet-sip.c6
-rw-r--r--epan/dissectors/packet-skinny.c2
-rw-r--r--epan/dissectors/packet-skype.c2
-rw-r--r--epan/dissectors/packet-slimp3.c2
-rw-r--r--epan/dissectors/packet-smb.c2
-rw-r--r--epan/dissectors/packet-smb2.c2
-rw-r--r--epan/dissectors/packet-smpp.c2
-rw-r--r--epan/dissectors/packet-smrse.c2
-rw-r--r--epan/dissectors/packet-snmp.c2
-rw-r--r--epan/dissectors/packet-spice.c6
-rw-r--r--epan/dissectors/packet-spnego.c4
-rw-r--r--epan/dissectors/packet-sprt.c6
-rw-r--r--epan/dissectors/packet-srvloc.c4
-rw-r--r--epan/dissectors/packet-starteam.c2
-rw-r--r--epan/dissectors/packet-stun.c4
-rw-r--r--epan/dissectors/packet-sync.c2
-rw-r--r--epan/dissectors/packet-t124.c6
-rw-r--r--epan/dissectors/packet-t30.c2
-rw-r--r--epan/dissectors/packet-tali.c2
-rw-r--r--epan/dissectors/packet-tapa.c2
-rw-r--r--epan/dissectors/packet-tdmoe.c2
-rw-r--r--epan/dissectors/packet-tds.c2
-rw-r--r--epan/dissectors/packet-teredo.c2
-rw-r--r--epan/dissectors/packet-tftp.c2
-rw-r--r--epan/dissectors/packet-tipc.c2
-rw-r--r--epan/dissectors/packet-tivoconnect.c2
-rw-r--r--epan/dissectors/packet-tns.c2
-rw-r--r--epan/dissectors/packet-trill.c2
-rw-r--r--epan/dissectors/packet-tte.c2
-rw-r--r--epan/dissectors/packet-turnchannel.c8
-rw-r--r--epan/dissectors/packet-tuxedo.c2
-rw-r--r--epan/dissectors/packet-ucp.c2
-rw-r--r--epan/dissectors/packet-uma.c4
-rw-r--r--epan/dissectors/packet-umts_fp.c2
-rw-r--r--epan/dissectors/packet-usb-hid.c2
-rw-r--r--epan/dissectors/packet-usb-hub.c2
-rw-r--r--epan/dissectors/packet-usb-masstorage.c2
-rw-r--r--epan/dissectors/packet-v150fw.c4
-rw-r--r--epan/dissectors/packet-vnc.c2
-rw-r--r--epan/dissectors/packet-vssmonitoring.c2
-rw-r--r--epan/dissectors/packet-vuze-dht.c2
-rw-r--r--epan/dissectors/packet-wassp.c2
-rw-r--r--epan/dissectors/packet-waveagent.c2
-rw-r--r--epan/dissectors/packet-wccp.c2
-rw-r--r--epan/dissectors/packet-websocket.c2
-rw-r--r--epan/dissectors/packet-wol.c2
-rw-r--r--epan/dissectors/packet-wow.c2
-rw-r--r--epan/dissectors/packet-x224.c2
-rw-r--r--epan/dissectors/packet-x509af.c2
-rw-r--r--epan/dissectors/packet-xcsl.c2
-rw-r--r--epan/dissectors/packet-xmcp.c2
-rw-r--r--epan/dissectors/packet-xml.c2
-rw-r--r--epan/dissectors/packet-xot.c2
-rw-r--r--epan/dissectors/packet-xtp.c2
-rw-r--r--epan/dissectors/packet-xyplex.c2
-rw-r--r--epan/dissectors/packet-yami.c2
-rw-r--r--epan/dissectors/packet-yhoo.c2
-rw-r--r--epan/dissectors/packet-ymsg.c2
-rw-r--r--epan/dissectors/packet-zbee-nwk.c2
-rw-r--r--epan/dissectors/packet-ziop.c2
-rw-r--r--epan/dissectors/packet-ziop.h2
-rw-r--r--epan/packet.c4
-rw-r--r--epan/packet.h4
-rw-r--r--epan/wslua/init_wslua.c2
-rw-r--r--epan/wslua/wslua.h2
-rw-r--r--plugins/ethercat/packet-ams.c2
-rw-r--r--plugins/ethercat/packet-esl.c2
-rw-r--r--plugins/profinet/packet-dcerpc-pn-io.c6
-rw-r--r--plugins/profinet/packet-dcom-cba-acco.c4
-rw-r--r--plugins/profinet/packet-pn-dcp.c4
-rw-r--r--plugins/profinet/packet-pn-mrrt.c4
-rw-r--r--plugins/profinet/packet-pn-ptcp.c4
-rw-r--r--plugins/profinet/packet-pn-rt.c8
-rw-r--r--plugins/profinet/packet-pn.h2
-rw-r--r--plugins/unistim/packet-unistim.c3
-rw-r--r--plugins/wimaxasncp/packet-wimaxasncp.c3
-rw-r--r--plugins/wimaxmacphy/packet-wimaxmacphy.c2
-rwxr-xr-xtools/asn2wrs.py6
336 files changed, 749 insertions, 775 deletions
diff --git a/asn1/camel/camel.cnf b/asn1/camel/camel.cnf
index a7441b498a..43ab9f59df 100644
--- a/asn1/camel/camel.cnf
+++ b/asn1/camel/camel.cnf
@@ -115,7 +115,7 @@ static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
switch(opcode){
#.TABLE2_BODY OPERATION.&ArgumentType
case %(&operationCode)s: /* %(_ident)s */
- offset= %(_argument_pdu)s(tvb, actx->pinfo , tree);
+ offset= %(_argument_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
@@ -135,7 +135,7 @@ static int dissect_returnResultData(proto_tree *tree, tvbuff_t *tvb, int offset,
switch(opcode){
#.TABLE2_BODY OPERATION.&ResultType
case %(&operationCode)s: /* %(_ident)s */
- offset= %(_result_pdu)s(tvb, actx->pinfo , tree);
+ offset= %(_result_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
@@ -153,7 +153,7 @@ static int dissect_returnErrorData(proto_tree *tree, tvbuff_t *tvb, int offset,a
switch(errorCode) {
#.TABLE2_BODY ERROR.&ParameterType
case %(&errorCode)s: /* %(_ident)s */
- %(_parameter_pdu)s(tvb, actx->pinfo , tree);
+ %(_parameter_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
diff --git a/asn1/charging_ase/packet-charging_ase-template.c b/asn1/charging_ase/packet-charging_ase-template.c
index 2ef5410896..1d80b6f9d4 100644
--- a/asn1/charging_ase/packet-charging_ase-template.c
+++ b/asn1/charging_ase/packet-charging_ase-template.c
@@ -61,7 +61,7 @@ dissect_charging_ase(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if(tvb_length(tvb)>0)
{
- dissect_charging_ase_ChargingMessageType_PDU(tvb , pinfo, tr);
+ dissect_charging_ase_ChargingMessageType_PDU(tvb , pinfo, tr, NULL);
}
}
diff --git a/asn1/cmp/packet-cmp-template.c b/asn1/cmp/packet-cmp-template.c
index 14082db623..f0712d4621 100644
--- a/asn1/cmp/packet-cmp-template.c
+++ b/asn1/cmp/packet-cmp-template.c
@@ -104,7 +104,7 @@ static const value_string cmp_pdu_types[] = {
};
-static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
tvbuff_t *next_tvb;
guint32 pdu_len;
@@ -201,7 +201,7 @@ static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *pa
static void dissect_cmp_tcp_pdu_no_return(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
{
- dissect_cmp_tcp_pdu(tvb, pinfo, parent_tree);
+ dissect_cmp_tcp_pdu(tvb, pinfo, parent_tree, NULL);
}
static guint get_cmp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
@@ -218,8 +218,8 @@ static guint get_cmp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
/* CMP over TCP: RFC2510 section 5.2 and "Transport Protocols for CMP" draft */
- static int
-dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int
+dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
guint32 pdu_len;
guint8 pdu_type;
@@ -275,8 +275,8 @@ dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
- static int
-dissect_cmp_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int
+dissect_cmp_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/asn1/credssp/packet-credssp-template.c b/asn1/credssp/packet-credssp-template.c
index 3ab0ae8681..dc9dbee99e 100644
--- a/asn1/credssp/packet-credssp-template.c
+++ b/asn1/credssp/packet-credssp-template.c
@@ -81,7 +81,7 @@ dissect_credssp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
static gboolean
-dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
asn1_ctx_t asn1_ctx;
int offset = 0;
diff --git a/asn1/h225/packet-h225-template.c b/asn1/h225/packet-h225-template.c
index f1913c7c46..f0b47ef500 100644
--- a/asn1/h225/packet-h225-template.c
+++ b/asn1/h225/packet-h225-template.c
@@ -70,7 +70,6 @@
static void reset_h225_packet_info(h225_packet_info *pi);
static void ras_call_matching(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, h225_packet_info *pi);
-static int dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static h225_packet_info pi_arr[5]; /* We assuming a maximum of 5 H225 messaages per packet */
static int pi_current=0;
@@ -140,7 +139,7 @@ static const char *tpOID;
void proto_reg_handoff_h225(void);
static int
-dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *it;
proto_tree *tr;
@@ -165,7 +164,7 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
it=proto_tree_add_protocol_format(tree, proto_h225, tvb, 0, tvb_length(tvb), PSNAME" CS");
tr=proto_item_add_subtree(it, ett_h225);
- offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr);
+ offset = dissect_H323_UserInformation_PDU(tvb, pinfo, tr, NULL);
if (h245_list.count){
col_append_str(pinfo->cinfo, COL_PROTOCOL, "/");
@@ -180,7 +179,7 @@ dissect_h225_H323UserInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
return offset;
}
static int
-dissect_h225_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree){
+dissect_h225_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_){
proto_item *it;
proto_tree *tr;
guint32 offset=0;
@@ -200,7 +199,7 @@ dissect_h225_h225_RasMessage(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
it=proto_tree_add_protocol_format(tree, proto_h225, tvb, offset, tvb_length(tvb), PSNAME" RAS");
tr=proto_item_add_subtree(it, ett_h225);
- offset = dissect_RasMessage_PDU(tvb, pinfo, tr);
+ offset = dissect_RasMessage_PDU(tvb, pinfo, tr, NULL);
ras_call_matching(tvb, pinfo, tr, h225_pi);
diff --git a/asn1/h282/packet-h282-template.c b/asn1/h282/packet-h282-template.c
index 0e509b3b5f..c97ab9699a 100644
--- a/asn1/h282/packet-h282-template.c
+++ b/asn1/h282/packet-h282-template.c
@@ -53,7 +53,7 @@ static int ett_h282 = -1;
#include "packet-h282-fn.c"
static int
-dissect_h282(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h282(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *h282_tree = NULL;
@@ -63,7 +63,7 @@ dissect_h282(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_h282, tvb, 0, -1, ENC_NA);
h282_tree = proto_item_add_subtree(ti, ett_h282);
- return dissect_RDCPDU_PDU(tvb, pinfo, h282_tree);
+ return dissect_RDCPDU_PDU(tvb, pinfo, h282_tree, NULL);
}
/*--- proto_register_h282 ----------------------------------------------*/
diff --git a/asn1/h283/packet-h283-template.c b/asn1/h283/packet-h283-template.c
index d1a1902302..635a0d89d0 100644
--- a/asn1/h283/packet-h283-template.c
+++ b/asn1/h283/packet-h283-template.c
@@ -56,7 +56,7 @@ static gboolean info_is_set;
#include "packet-h283-fn.c"
static int
-dissect_h283_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h283_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *h283_tree = NULL;
@@ -68,7 +68,7 @@ dissect_h283_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_h283, tvb, 0, -1, ENC_NA);
h283_tree = proto_item_add_subtree(ti, ett_h283);
- return dissect_LCTPDU_PDU(tvb, pinfo, h283_tree);
+ return dissect_LCTPDU_PDU(tvb, pinfo, h283_tree, NULL);
}
/*--- proto_register_h283 ----------------------------------------------*/
diff --git a/asn1/h450/packet-h450-template.c b/asn1/h450/packet-h450-template.c
index 6f7e65254e..5550669f02 100644
--- a/asn1/h450/packet-h450-template.c
+++ b/asn1/h450/packet-h450-template.c
@@ -113,7 +113,7 @@ static const h450_err_t *get_err(gint32 errcode) {
/*--- dissect_h450_arg ------------------------------------------------------*/
static int
-dissect_h450_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_h450_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_item *hidden_item;
int offset;
rose_ctx_t *rctx;
@@ -143,7 +143,7 @@ dissect_h450_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
}
if (op_ptr->arg_pdu && (tvb_length_remaining(tvb, offset) > 0))
- offset = op_ptr->arg_pdu(tvb, pinfo, tree);
+ offset = op_ptr->arg_pdu(tvb, pinfo, tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED ARGUMENT TYPE (H.450)");
@@ -155,7 +155,7 @@ dissect_h450_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
/*--- dissect_h450_res ------------------------------------------------------*/
static int
-dissect_h450_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_h450_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_item *hidden_item;
int offset;
rose_ctx_t *rctx;
@@ -185,7 +185,7 @@ dissect_h450_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
}
if (op_ptr->res_pdu && (tvb_length_remaining(tvb, offset) > 0))
- offset = op_ptr->res_pdu(tvb, pinfo, tree);
+ offset = op_ptr->res_pdu(tvb, pinfo, tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED RESULT TYPE (H.450)");
@@ -197,7 +197,7 @@ dissect_h450_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
/*--- dissect_h450_err ------------------------------------------------------*/
static int
-dissect_h450_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_h450_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_item *hidden_item;
int offset;
rose_ctx_t *rctx;
@@ -227,7 +227,7 @@ dissect_h450_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
}
if (err_ptr->err_pdu && (tvb_length_remaining(tvb, offset) > 0))
- offset = err_ptr->err_pdu(tvb, pinfo, tree);
+ offset = err_ptr->err_pdu(tvb, pinfo, tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(tree, tvb, offset, -1, "UNSUPPORTED ERROR TYPE (H.450)");
diff --git a/asn1/h460/packet-h460-template.c b/asn1/h460/packet-h460-template.c
index 75ef3b3d80..ed47573e9f 100644
--- a/asn1/h460/packet-h460-template.c
+++ b/asn1/h460/packet-h460-template.c
@@ -56,8 +56,8 @@ static dissector_handle_t h225_ras_handle = NULL;
#include "packet-h460-fn.c"
-static int
-dissect_ies(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+static int
+dissect_ies(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset = 0;
if (q931_ie_handle) {
@@ -68,7 +68,7 @@ dissect_ies(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
}
static int
-dissect_ras(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_ras(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset = 0;
if (h225_ras_handle) {
@@ -218,7 +218,7 @@ static h460_feature_t *find_ftr(const gchar *key) {
/*--- dissect_h460_name -------------------------------------------*/
static int
-dissect_h460_name(tvbuff_t *tvb _U_, packet_info *pinfo, proto_tree *tree) {
+dissect_h460_name(tvbuff_t *tvb _U_, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset = 0;
asn1_ctx_t *actx;
h460_feature_t *ftr;
diff --git a/asn1/h501/packet-h501-template.c b/asn1/h501/packet-h501-template.c
index c39dee0757..e606ae3fc3 100644
--- a/asn1/h501/packet-h501-template.c
+++ b/asn1/h501/packet-h501-template.c
@@ -63,7 +63,7 @@ void proto_reg_handoff_h501(void);
#include "packet-h501-fn.c"
static int
-dissect_h501_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h501_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *h501_tree = NULL;
@@ -73,18 +73,18 @@ dissect_h501_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_h501, tvb, 0, -1, ENC_NA);
h501_tree = proto_item_add_subtree(ti, ett_h501);
- return dissect_Message_PDU(tvb, pinfo, h501_tree);
+ return dissect_Message_PDU(tvb, pinfo, h501_tree, NULL);
}
static int
-dissect_h501_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h501_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
dissect_tpkt_encap(tvb, pinfo, tree, FALSE, h501_pdu_handle);
return tvb_length(tvb);
}
static int
-dissect_h501_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_h501_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
dissect_tpkt_encap(tvb, pinfo, tree, h501_desegment_tcp, h501_pdu_handle);
return tvb_length(tvb);
diff --git a/asn1/hnbap/packet-hnbap-template.c b/asn1/hnbap/packet-hnbap-template.c
index b22640001b..8b474776f4 100644
--- a/asn1/hnbap/packet-hnbap-template.c
+++ b/asn1/hnbap/packet-hnbap-template.c
@@ -74,55 +74,55 @@ static dissector_table_t hnbap_proc_imsg_dissector_table;
static dissector_table_t hnbap_proc_sout_dissector_table;
static dissector_table_t hnbap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
void proto_reg_handoff_hnbap(void);
#include "packet-hnbap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(hnbap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(hnbap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
#if 0
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureCode) return 0;
return (dissector_try_string(hnbap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureCode) return 0;
return (dissector_try_string(hnbap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureCode) return 0;
return (dissector_try_string(hnbap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
#endif
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(hnbap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(hnbap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(hnbap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
diff --git a/asn1/inap/inap.cnf b/asn1/inap/inap.cnf
index 8a3e0fd256..eacfba450f 100644
--- a/asn1/inap/inap.cnf
+++ b/asn1/inap/inap.cnf
@@ -81,7 +81,7 @@ static int dissect_invokeData(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_
switch(opcode){
#.TABLE2_BODY OPERATION.&ArgumentType
case %(&operationCode)s: /* %(_ident)s */
- offset= %(_argument_pdu)s(tvb, actx->pinfo , tree);
+ offset= %(_argument_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
@@ -101,7 +101,7 @@ static int dissect_returnResultData(proto_tree *tree, tvbuff_t *tvb, int offset,
switch(opcode){
#.TABLE2_BODY OPERATION.&ResultType
case %(&operationCode)s: /* %(_ident)s */
- offset= %(_result_pdu)s(tvb, actx->pinfo , tree);
+ offset= %(_result_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
@@ -119,7 +119,7 @@ static int dissect_returnErrorData(proto_tree *tree, tvbuff_t *tvb, int offset,a
switch(errorCode) {
#.TABLE2_BODY ERROR.&ParameterType
case %(&errorCode)s: /* %(_ident)s */
- %(_parameter_pdu)s(tvb, actx->pinfo , tree);
+ %(_parameter_pdu)s(tvb, actx->pinfo , tree , NULL);
break;
#.TABLE2_FTR
default:
diff --git a/asn1/lcsap/packet-lcsap-template.c b/asn1/lcsap/packet-lcsap-template.c
index c165347db6..f877739452 100644
--- a/asn1/lcsap/packet-lcsap-template.c
+++ b/asn1/lcsap/packet-lcsap-template.c
@@ -89,37 +89,37 @@ static dissector_table_t lcsap_proc_imsg_dissector_table;
static dissector_table_t lcsap_proc_sout_dissector_table;
static dissector_table_t lcsap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-lcsap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lcsap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lcsap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lcsap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lcsap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lcsap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -139,7 +139,7 @@ dissect_lcsap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
lcsap_item = proto_tree_add_item(tree, proto_lcsap, tvb, 0, -1, ENC_NA);
lcsap_tree = proto_item_add_subtree(lcsap_item, ett_lcsap);
- dissect_LCS_AP_PDU_PDU(tvb, pinfo, lcsap_tree);
+ dissect_LCS_AP_PDU_PDU(tvb, pinfo, lcsap_tree, NULL);
}
/*--- proto_reg_handoff_lcsap ---------------------------------------*/
diff --git a/asn1/lppa/packet-lppa-template.c b/asn1/lppa/packet-lppa-template.c
index 5f98bc95ef..a6e8d6eee0 100644
--- a/asn1/lppa/packet-lppa-template.c
+++ b/asn1/lppa/packet-lppa-template.c
@@ -62,29 +62,29 @@ static dissector_table_t lppa_proc_uout_dissector_table;
/* Include constants */
#include "packet-lppa-val.h"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-lppa-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lppa_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lppa_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lppa_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(lppa_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
diff --git a/asn1/lte-rrc/lte-rrc.cnf b/asn1/lte-rrc/lte-rrc.cnf
index 85e5cc9803..7297afcac1 100644
--- a/asn1/lte-rrc/lte-rrc.cnf
+++ b/asn1/lte-rrc/lte-rrc.cnf
@@ -122,11 +122,11 @@ if(ue_eutra_cap_tvb){
switch(lte_rrc_rat_type_value){
case RAT_Type_eutra:
/* eutra */
- dissect_lte_rrc_UE_EUTRA_Capability_PDU(ue_eutra_cap_tvb, actx->pinfo, tree);
+ dissect_lte_rrc_UE_EUTRA_Capability_PDU(ue_eutra_cap_tvb, actx->pinfo, tree, NULL);
break;
case RAT_Type_utra:
/* utra */
- dissect_rrc_InterRATHandoverInfo_PDU(ue_eutra_cap_tvb, actx->pinfo, tree);
+ dissect_rrc_InterRATHandoverInfo_PDU(ue_eutra_cap_tvb, actx->pinfo, tree, NULL);
break;
case RAT_Type_geran_cs:
/* geran-cs */
@@ -754,21 +754,21 @@ if(ue_eutra_cap_tvb){
tvbuff_t *ellipsoid_point_tvb = NULL;
%(DEFAULT_BODY)s
if (ellipsoid_point_tvb) {
- dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree);
+ dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL);
}
#.FN_BODY LocationInfo-r10/locationCoordinates-r10/ellipsoidPointWithAltitude-r10 VAL_PTR = &ellipsoid_point_with_alt_tvb
tvbuff_t *ellipsoid_point_with_alt_tvb = NULL;
%(DEFAULT_BODY)s
if (ellipsoid_point_with_alt_tvb) {
- dissect_lpp_EllipsoidPointWithAltitude_PDU(ellipsoid_point_with_alt_tvb, actx->pinfo, tree);
+ dissect_lpp_EllipsoidPointWithAltitude_PDU(ellipsoid_point_with_alt_tvb, actx->pinfo, tree, NULL);
}
#.FN_BODY LocationInfo-r10/horizontalVelocity-r10 VAL_PTR = &horizontal_velocity_tvb
tvbuff_t *horizontal_velocity_tvb = NULL;
%(DEFAULT_BODY)s
if (horizontal_velocity_tvb) {
- dissect_lpp_HorizontalVelocity_PDU(horizontal_velocity_tvb, actx->pinfo, tree);
+ dissect_lpp_HorizontalVelocity_PDU(horizontal_velocity_tvb, actx->pinfo, tree, NULL);
}
#.FN_BODY LocationInfo-r10/gnss-TOD-msec-r10 VAL_PTR = &gnss_tod_msec_tvb
diff --git a/asn1/lte-rrc/packet-lte-rrc-template.c b/asn1/lte-rrc/packet-lte-rrc-template.c
index 564e975998..7a5e2aadda 100644
--- a/asn1/lte-rrc/packet-lte-rrc-template.c
+++ b/asn1/lte-rrc/packet-lte-rrc-template.c
@@ -172,9 +172,9 @@ static gint ett_lte_rrc_absTimeInfo = -1;
static gint ett_lte_rrc_nas_SecurityParam = -1;
/* Forward declarations */
-static int dissect_DL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
-static int dissect_UECapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
-int dissect_lte_rrc_UE_EUTRA_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);
+static int dissect_DL_DCCH_Message_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+static int dissect_UECapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
+int dissect_lte_rrc_UE_EUTRA_Capability_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
static const true_false_string lte_rrc_eutra_cap_feat_group_ind_1_val = {
"Intra-subframe freq hopping for PUSCH scheduled by UL grant; DCI format 3a; PDSCH transmission mode 5; Aperiodic CQI/PMI/RI report on PUSCH: Mode 2-0 & 2-2 - Supported",
@@ -1685,7 +1685,7 @@ dissect_lte_rrc_DL_CCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_DL_CCCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_DL_CCCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
@@ -1701,7 +1701,7 @@ dissect_lte_rrc_DL_DCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_DL_DCCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_DL_DCCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
@@ -1718,7 +1718,7 @@ dissect_lte_rrc_UL_CCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_UL_CCCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_UL_CCCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
@@ -1734,7 +1734,7 @@ dissect_lte_rrc_UL_DCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_UL_DCCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_UL_DCCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
@@ -1750,7 +1750,7 @@ dissect_lte_rrc_BCCH_BCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_BCCH_BCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_BCCH_BCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
@@ -1766,7 +1766,7 @@ dissect_lte_rrc_BCCH_DL_SCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_lte_rrc, tvb, 0, -1, ENC_NA);
lte_rrc_tree = proto_item_add_subtree(ti, ett_lte_rrc);
- dissect_BCCH_DL_SCH_Message_PDU(tvb, pinfo, lte_rrc_tree);
+ dissect_BCCH_DL_SCH_Message_PDU(tvb, pinfo, lte_rrc_tree, NULL);
}
}
diff --git a/asn1/m3ap/packet-m3ap-template.c b/asn1/m3ap/packet-m3ap-template.c
index f776828438..7dbf044a88 100644
--- a/asn1/m3ap/packet-m3ap-template.c
+++ b/asn1/m3ap/packet-m3ap-template.c
@@ -85,35 +85,35 @@ static dissector_table_t m3ap_proc_imsg_dissector_table;
static dissector_table_t m3ap_proc_sout_dissector_table;
static dissector_table_t m3ap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-m3ap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(m3ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(m3ap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(m3ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(m3ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(m3ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -134,7 +134,7 @@ dissect_m3ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
m3ap_item = proto_tree_add_item(tree, proto_m3ap, tvb, 0, -1, ENC_NA);
m3ap_tree = proto_item_add_subtree(m3ap_item, ett_m3ap);
- dissect_M3AP_PDU_PDU(tvb, pinfo, m3ap_tree);
+ dissect_M3AP_PDU_PDU(tvb, pinfo, m3ap_tree, NULL);
}
}
/*--- proto_register_m3ap -------------------------------------------*/
diff --git a/asn1/mms/packet-mms-template.c b/asn1/mms/packet-mms-template.c
index e57fde8b32..32457f18fd 100644
--- a/asn1/mms/packet-mms-template.c
+++ b/asn1/mms/packet-mms-template.c
@@ -111,7 +111,7 @@ void proto_register_mms(void) {
static gboolean
-dissect_mms_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_mms_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
/* must check that this really is an mms packet */
int offset = 0;
diff --git a/asn1/mpeg-audio/packet-mpeg-audio-template.c b/asn1/mpeg-audio/packet-mpeg-audio-template.c
index 2df2c1b619..7298a0401a 100644
--- a/asn1/mpeg-audio/packet-mpeg-audio-template.c
+++ b/asn1/mpeg-audio/packet-mpeg-audio-template.c
@@ -131,7 +131,7 @@ dissect_id3v2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int magic;
diff --git a/asn1/mpeg-pes/packet-mpeg-pes-template.c b/asn1/mpeg-pes/packet-mpeg-pes-template.c
index f572f33798..2f98772cdd 100644
--- a/asn1/mpeg-pes/packet-mpeg-pes-template.c
+++ b/asn1/mpeg-pes/packet-mpeg-pes-template.c
@@ -389,7 +389,7 @@ static void
dissect_mpeg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gboolean
-dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int prefix;
int stream;
@@ -446,7 +446,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
offset += 64 * 8;
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_SEQUENCE_EXTENSION) {
tvbuff_t *es;
@@ -454,7 +454,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
tree, hf_mpeg_video_sequence_extension);
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_GOP) {
tvbuff_t *es;
@@ -462,7 +462,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
tree, hf_mpeg_video_group_of_pictures);
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_PACK) {
if (tvb_get_guint8(tvb, offset / 8) >> 6 == 1) {
dissect_mpeg_pes_pack_header(tvb, offset, pinfo, tree);
@@ -527,7 +527,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
es = tvb_new_subset(tvb, offset / 8, -1, length / 8);
if (tvb_get_ntoh24(es, 0) == PES_PREFIX)
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
else if (tvb_get_guint8(es, 0) == 0xff)
dissect_mpeg(es, pinfo, tree);
else
diff --git a/asn1/nbap/nbap.cnf b/asn1/nbap/nbap.cnf
index f982d4e332..1dcbbf12fc 100644
--- a/asn1/nbap/nbap.cnf
+++ b/asn1/nbap/nbap.cnf
@@ -562,27 +562,27 @@ actx->pinfo->link_dir=P2P_DIR_UL;
switch(ib_type){
case 0:
/* mIB */
- dissect_rrc_MasterInformationBlock_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_MasterInformationBlock_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 3:
/* iB-Type: sIB1 (3) */
- dissect_rrc_SysInfoType1_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_SysInfoType1_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 4:
/* iB-Type: sIB2 (4) */
- dissect_rrc_SysInfoType2_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_SysInfoType2_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 5:
/* iB-Type: sIB3 (5) */
- dissect_rrc_SysInfoType3_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_SysInfoType3_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 9:
/* iB-Type: sIB7 (9) */
- dissect_rrc_SysInfoType7_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_SysInfoType7_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 14:
/* iB-Type: sIB12 (14) */
- dissect_rrc_SysInfoType12_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_rrc_SysInfoType12_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
default:
break;
diff --git a/asn1/nbap/packet-nbap-template.c b/asn1/nbap/packet-nbap-template.c
index 960076d54c..fd106ab65c 100644
--- a/asn1/nbap/packet-nbap-template.c
+++ b/asn1/nbap/packet-nbap-template.c
@@ -304,40 +304,40 @@ static dissector_table_t nbap_proc_imsg_dissector_table;
static dissector_table_t nbap_proc_sout_dissector_table;
static dissector_table_t nbap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
/*Easy way to add hsdhsch binds for corner cases*/
static void add_hsdsch_bind(packet_info * pinfo, proto_tree * tree);
#include "packet-nbap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(nbap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(nbap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(nbap_proc_imsg_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(nbap_proc_sout_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(nbap_proc_uout_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
diff --git a/asn1/ocsp/packet-ocsp-template.c b/asn1/ocsp/packet-ocsp-template.c
index 4d8330f712..c41a82c89e 100644
--- a/asn1/ocsp/packet-ocsp-template.c
+++ b/asn1/ocsp/packet-ocsp-template.c
@@ -59,7 +59,7 @@ static const char *responseType_id;
static int
-dissect_ocsp_request(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_ocsp_request(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
@@ -81,7 +81,7 @@ dissect_ocsp_request(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
static int
-dissect_ocsp_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_ocsp_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/asn1/pcap/packet-pcap-template.c b/asn1/pcap/packet-pcap-template.c
index 98988dad90..0daa7765d1 100644
--- a/asn1/pcap/packet-pcap-template.c
+++ b/asn1/pcap/packet-pcap-template.c
@@ -86,41 +86,41 @@ static dissector_table_t pcap_proc_sout_dissector_table;
static dissector_table_t pcap_proc_uout_dissector_table;
static dissector_table_t pcap_proc_out_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-pcap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(pcap_proc_out_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -138,7 +138,7 @@ dissect_pcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
pcap_item = proto_tree_add_item(tree, proto_pcap, tvb, 0, -1, ENC_NA);
pcap_tree = proto_item_add_subtree(pcap_item, ett_pcap);
- dissect_PCAP_PDU_PDU(tvb, pinfo, pcap_tree);
+ dissect_PCAP_PDU_PDU(tvb, pinfo, pcap_tree, NULL);
}
diff --git a/asn1/pkixtsp/packet-pkixtsp-template.c b/asn1/pkixtsp/packet-pkixtsp-template.c
index a20202afeb..6687a795b2 100644
--- a/asn1/pkixtsp/packet-pkixtsp-template.c
+++ b/asn1/pkixtsp/packet-pkixtsp-template.c
@@ -54,7 +54,7 @@ static gint ett_pkixtsp = -1;
static int
-dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
@@ -75,7 +75,7 @@ dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tr
}
static int
-dissect_timestamp_query(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_timestamp_query(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/asn1/q932-ros/packet-q932-ros-template.c b/asn1/q932-ros/packet-q932-ros-template.c
index 7fc8325fe9..e1c289885d 100644
--- a/asn1/q932-ros/packet-q932-ros-template.c
+++ b/asn1/q932-ros/packet-q932-ros-template.c
@@ -61,10 +61,10 @@ static tvbuff_t *arg_next_tvb, *res_next_tvb, *err_next_tvb;
#include "packet-q932-ros-fn.c"
/*--- dissect_q932_ros -----------------------------------------------------*/
-static int dissect_q932_ros(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+static int dissect_q932_ros(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
rose_ctx_tmp = get_rose_ctx(pinfo->private_data);
DISSECTOR_ASSERT(rose_ctx_tmp);
- return dissect_ROS_PDU(tvb, pinfo, tree);
+ return dissect_ROS_PDU(tvb, pinfo, tree, NULL);
}
/*--- proto_register_q932_ros -----------------------------------------------*/
diff --git a/asn1/qsig/packet-qsig-template.c b/asn1/qsig/packet-qsig-template.c
index b5c98cbbab..b40882fe29 100644
--- a/asn1/qsig/packet-qsig-template.c
+++ b/asn1/qsig/packet-qsig-template.c
@@ -371,7 +371,7 @@ static const qsig_err_t *get_err(gint32 errcode) {
/*--- dissect_qsig_arg ------------------------------------------------------*/
static int
-dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset;
rose_ctx_t *rctx;
gint32 opcode = 0, service;
@@ -415,7 +415,7 @@ dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
if (p) proto_item_append_text(ti_tmp, " - %s", p);
if (op_ptr->arg_pdu)
- offset = op_ptr->arg_pdu(tvb, pinfo, qsig_tree);
+ offset = op_ptr->arg_pdu(tvb, pinfo, qsig_tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED ARGUMENT TYPE (QSIG)");
@@ -427,7 +427,7 @@ dissect_qsig_arg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
/*--- dissect_qsig_res -------------------------------------------------------*/
static int
-dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
gint offset;
rose_ctx_t *rctx;
gint32 opcode, service;
@@ -466,7 +466,7 @@ dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
if (p) proto_item_append_text(ti_tmp, " - %s", p);
if (op_ptr->res_pdu)
- offset = op_ptr->res_pdu(tvb, pinfo, qsig_tree);
+ offset = op_ptr->res_pdu(tvb, pinfo, qsig_tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED RESULT TYPE (QSIG)");
@@ -478,7 +478,7 @@ dissect_qsig_res(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
/*--- dissect_qsig_err ------------------------------------------------------*/
static int
-dissect_qsig_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_qsig_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset;
rose_ctx_t *rctx;
gint32 errcode;
@@ -512,7 +512,7 @@ dissect_qsig_err(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
}
if (err_ptr->err_pdu)
- offset = err_ptr->err_pdu(tvb, pinfo, qsig_tree);
+ offset = err_ptr->err_pdu(tvb, pinfo, qsig_tree, NULL);
else
if (tvb_length_remaining(tvb, offset) > 0) {
proto_tree_add_text(qsig_tree, tvb, offset, -1, "UNSUPPORTED ERROR TYPE (QSIG)");
diff --git a/asn1/ranap/packet-ranap-template.c b/asn1/ranap/packet-ranap-template.c
index 43d90540dc..98814e5b1c 100644
--- a/asn1/ranap/packet-ranap-template.c
+++ b/asn1/ranap/packet-ranap-template.c
@@ -128,14 +128,14 @@ static dissector_table_t ranap_proc_uout_dissector_table;
static dissector_table_t ranap_proc_out_dissector_table;
static dissector_table_t nas_pdu_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
static int dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
static int dissect_ranap_TargetRNC_ToSourceRNC_TransparentContainer(tvbuff_t *tvb, int offset, asn1_ctx_t *actx, proto_tree *tree, int hf_index);
@@ -145,7 +145,7 @@ void proto_reg_handoff_ranap(void);
#include "packet-ranap-fn.c"
static int
-dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int ret = 0;
@@ -173,25 +173,25 @@ dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
}
static int
-dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(ranap_ies_p1_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
static int
-dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(ranap_ies_p2_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
static int
-dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(ranap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
static int
-dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean ret;
@@ -202,7 +202,7 @@ dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
}
static int
-dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean ret;
@@ -213,13 +213,13 @@ dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
}
static int
-dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(ranap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
static int
-dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(ranap_proc_out_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
@@ -240,7 +240,7 @@ dissect_ranap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ranap_item = proto_tree_add_item(tree, proto_ranap, tvb, 0, -1, ENC_NA);
ranap_tree = proto_item_add_subtree(ranap_item, ett_ranap);
- dissect_RANAP_PDU_PDU(tvb, pinfo, ranap_tree);
+ dissect_RANAP_PDU_PDU(tvb, pinfo, ranap_tree, NULL);
if (pinfo->sccp_info) {
sccp_msg_info_t* sccp_msg_lcl = pinfo->sccp_info;
@@ -255,7 +255,7 @@ dissect_ranap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_sccp_ranap_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sccp_ranap_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 temp;
asn1_ctx_t asn1_ctx;
diff --git a/asn1/rnsap/packet-rnsap-template.c b/asn1/rnsap/packet-rnsap-template.c
index 4b4dc93148..a22c922b8d 100644
--- a/asn1/rnsap/packet-rnsap-template.c
+++ b/asn1/rnsap/packet-rnsap-template.c
@@ -80,43 +80,43 @@ static dissector_table_t rnsap_proc_imsg_dissector_table;
static dissector_table_t rnsap_proc_sout_dissector_table;
static dissector_table_t rnsap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_PrivateIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_PrivateIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-rnsap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(rnsap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(rnsap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_PrivateIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_PrivateIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (call_ber_oid_callback(obj_id, tvb, 0, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(rnsap_proc_imsg_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(rnsap_proc_sout_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!ProcedureID) return 0;
return (dissector_try_string(rnsap_proc_uout_dissector_table, ProcedureID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
diff --git a/asn1/ros/packet-ros-template.c b/asn1/ros/packet-ros-template.c
index 53c07b388c..3e6f3dc4fb 100644
--- a/asn1/ros/packet-ros-template.c
+++ b/asn1/ros/packet-ros-template.c
@@ -195,7 +195,7 @@ static gboolean ros_try_string(const char *oid, tvbuff_t *tvb, packet_info *pinf
col_append_str(pinfo->cinfo, COL_INFO, suffix);
}
- (*opdissector)(tvb, pinfo, ros_tree);
+ (*opdissector)(tvb, pinfo, ros_tree, NULL);
return TRUE;
}
diff --git a/asn1/rrc/packet-rrc-template.c b/asn1/rrc/packet-rrc-template.c
index a2f06ea396..006d0aa77d 100644
--- a/asn1/rrc/packet-rrc-template.c
+++ b/asn1/rrc/packet-rrc-template.c
@@ -86,12 +86,12 @@ enum nas_sys_info_gsm_map {
static guint32 rrc_nas_sys_info_gsm_map_type = RRC_NAS_SYS_INFO_CN_COMMON;
/* Forward declarations */
-static int dissect_UE_RadioAccessCapabilityInfo_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SysInfoTypeSB1_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SysInfoTypeSB2_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SysInfoType5_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SysInfoType11_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SysInfoType11bis_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_UE_RadioAccessCapabilityInfo_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SysInfoTypeSB1_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SysInfoTypeSB2_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SysInfoType5_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SysInfoType11_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SysInfoType11bis_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
/* Include constants */
#include "packet-rrc-val.h"
diff --git a/asn1/rrc/rrc.cnf b/asn1/rrc/rrc.cnf
index bc89582ce0..b762c40583 100644
--- a/asn1/rrc/rrc.cnf
+++ b/asn1/rrc/rrc.cnf
@@ -566,7 +566,7 @@ fp_info *fpinf ;
%(DEFAULT_BODY)s
if (parameter_tvb){
- dissect_rrc_InterRATHandoverInfo_PDU(parameter_tvb, actx->pinfo, tree);
+ dissect_rrc_InterRATHandoverInfo_PDU(parameter_tvb, actx->pinfo, tree, NULL);
}
#.FN_BODY EUTRA-RadioAccessCapability/ue-EUTRA-Capability VAL_PTR = &ue_eutra_cap_tvb
diff --git a/asn1/rua/packet-rua-template.c b/asn1/rua/packet-rua-template.c
index d309f731d0..ec9ff3a90c 100644
--- a/asn1/rua/packet-rua-template.c
+++ b/asn1/rua/packet-rua-template.c
@@ -77,37 +77,37 @@ static dissector_table_t rua_proc_imsg_dissector_table;
static dissector_table_t rua_proc_sout_dissector_table;
static dissector_table_t rua_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
void proto_reg_handoff_rua(void);
#include "packet-rua-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(rua_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(rua_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(rua_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(rua_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint_new(rua_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree, FALSE)) ? tvb_length(tvb) : 0;
}
diff --git a/asn1/s1ap/packet-s1ap-template.c b/asn1/s1ap/packet-s1ap-template.c
index 1574294419..661fea0a07 100644
--- a/asn1/s1ap/packet-s1ap-template.c
+++ b/asn1/s1ap/packet-s1ap-template.c
@@ -109,18 +109,18 @@ static dissector_table_t s1ap_proc_imsg_dissector_table;
static dissector_table_t s1ap_proc_sout_dissector_table;
static dissector_table_t s1ap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
/* Currently not used
static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
*/
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
-static int dissect_SourceeNB_ToTargeteNB_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_TargeteNB_ToSourceeNB_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_SourceeNB_ToTargeteNB_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_TargeteNB_ToSourceeNB_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#if 0
static int dissect_SourceRNC_ToTargetRNC_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static int dissect_TargetRNC_ToSourceRNC_TransparentContainer_PDU(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
@@ -130,7 +130,7 @@ static int dissect_TargetBSS_ToSourceBSS_TransparentContainer_PDU(tvbuff_t *tvb,
#include "packet-s1ap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(s1ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -146,22 +146,22 @@ static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pi
}
*/
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(s1ap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(s1ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(s1ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(s1ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -180,7 +180,7 @@ dissect_s1ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
s1ap_item = proto_tree_add_item(tree, proto_s1ap, tvb, 0, -1, ENC_NA);
s1ap_tree = proto_item_add_subtree(s1ap_item, ett_s1ap);
- dissect_S1AP_PDU_PDU(tvb, pinfo, s1ap_tree);
+ dissect_S1AP_PDU_PDU(tvb, pinfo, s1ap_tree, NULL);
}
/*--- proto_reg_handoff_s1ap ---------------------------------------*/
diff --git a/asn1/s1ap/s1ap.cnf b/asn1/s1ap/s1ap.cnf
index 4b133760fe..f3e7087eca 100644
--- a/asn1/s1ap/s1ap.cnf
+++ b/asn1/s1ap/s1ap.cnf
@@ -324,14 +324,14 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
Intra E-UTRAN handover Source eNB to Target eNB
Transparent Container 36.413
*/
- dissect_SourceeNB_ToTargeteNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_SourceeNB_ToTargeteNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 1:
/* ltetoutran
Source RNC to Target RNC
Transparent Container 25.413
*/
- dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 2:
/* ltetogeran
@@ -378,14 +378,14 @@ MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
Intra E-UTRAN handover Target eNB to Source eNB
Transparent Container 36.413
*/
- dissect_TargeteNB_ToSourceeNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_TargeteNB_ToSourceeNB_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 1:
/* ltetoutran
Target RNC to Source RNC
Transparent Container 25.413
*/
- dissect_ranap_TargetRNC_ToSourceRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_ranap_TargetRNC_ToSourceRNC_TransparentContainer_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case 2:
/* ltetogeran
@@ -457,11 +457,11 @@ if (g_s1ap_dissect_container) {
switch(message_type){
case INITIATING_MESSAGE:
/* 9.2.1.7 Source eNB to Target eNB Transparent Container */
- dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
case SUCCESSFUL_OUTCOME:
/* 9.2.1.7 Source eNB to Target eNB Transparent Container */
- dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
break;
default:
break;
@@ -481,7 +481,7 @@ if (g_s1ap_dissect_container) {
if (g_s1ap_dissect_container) {
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_UERadioCapability);
- dissect_lte_rrc_UERadioAccessCapabilityInformation_PDU(parameter_tvb, actx->pinfo, subtree);
+ dissect_lte_rrc_UERadioAccessCapabilityInformation_PDU(parameter_tvb, actx->pinfo, subtree, NULL);
}
# 9.2.3.24 RIM Information
diff --git a/asn1/sabp/packet-sabp-template.c b/asn1/sabp/packet-sabp-template.c
index 0606d2403a..c2c35af8d1 100644
--- a/asn1/sabp/packet-sabp-template.c
+++ b/asn1/sabp/packet-sabp-template.c
@@ -80,35 +80,35 @@ static dissector_table_t sabp_proc_imsg_dissector_table;
static dissector_table_t sabp_proc_sout_dissector_table;
static dissector_table_t sabp_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-sabp-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sabp_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sabp_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sabp_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sabp_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sabp_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -154,7 +154,7 @@ dissect_sabp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
sabp_item = proto_tree_add_item(tree, proto_sabp, tvb, 0, -1, ENC_NA);
sabp_tree = proto_item_add_subtree(sabp_item, ett_sabp);
- dissect_SABP_PDU_PDU(tvb, pinfo, sabp_tree);
+ dissect_SABP_PDU_PDU(tvb, pinfo, sabp_tree, NULL);
}
/* Note a little bit of a hack assumes length max takes two bytes and that the length starts at byte 4 */
diff --git a/asn1/sbc-ap/packet-sbc-ap-template.c b/asn1/sbc-ap/packet-sbc-ap-template.c
index 5538810bb8..0c5378b5b3 100644
--- a/asn1/sbc-ap/packet-sbc-ap-template.c
+++ b/asn1/sbc-ap/packet-sbc-ap-template.c
@@ -84,46 +84,46 @@ static dissector_table_t sbc_ap_proc_imsg_dissector_table;
static dissector_table_t sbc_ap_proc_sout_dissector_table;
static dissector_table_t sbc_ap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
#include "packet-sbc-ap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
/* Currently not used
-static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_ies_p1_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_ies_p2_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
*/
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(sbc_ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
@@ -144,7 +144,7 @@ dissect_sbc_ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
sbc_ap_item = proto_tree_add_item(tree, proto_sbc_ap, tvb, 0, -1, ENC_NA);
sbc_ap_tree = proto_item_add_subtree(sbc_ap_item, ett_sbc_ap);
- dissect_SBC_AP_PDU_PDU(tvb, pinfo, sbc_ap_tree);
+ dissect_SBC_AP_PDU_PDU(tvb, pinfo, sbc_ap_tree, NULL);
}
}
/*--- proto_register_sbc_ap -------------------------------------------*/
diff --git a/asn1/smrse/packet-smrse-template.c b/asn1/smrse/packet-smrse-template.c
index 7fec78f27f..faadd96265 100644
--- a/asn1/smrse/packet-smrse-template.c
+++ b/asn1/smrse/packet-smrse-template.c
@@ -71,7 +71,7 @@ static const value_string tag_vals[] = {
};
static int
-dissect_smrse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_smrse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
diff --git a/asn1/snmp/packet-snmp-template.c b/asn1/snmp/packet-snmp-template.c
index dc6705c974..5a207a5099 100644
--- a/asn1/snmp/packet-snmp-template.c
+++ b/asn1/snmp/packet-snmp-template.c
@@ -1728,7 +1728,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
}
static gint
-dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
int offset;
diff --git a/asn1/spnego/packet-spnego-template.c b/asn1/spnego/packet-spnego-template.c
index 123ac44f73..f1d5419b32 100644
--- a/asn1/spnego/packet-spnego-template.c
+++ b/asn1/spnego/packet-spnego-template.c
@@ -1165,7 +1165,7 @@ dissect_spnego_krb5_cfx_getmic_base(tvbuff_t *tvb, int offset, packet_info *pinf
* getting it accepted.
*/
static int
-dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
proto_item *item;
proto_tree *subtree;
@@ -1225,7 +1225,7 @@ dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree
/* Spnego stuff from here */
static int
-dissect_spnego_wrap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_spnego_wrap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *item;
proto_tree *subtree;
diff --git a/asn1/t124/packet-t124-template.c b/asn1/t124/packet-t124-template.c
index 62d78c5e9c..7b174b3cff 100644
--- a/asn1/t124/packet-t124-template.c
+++ b/asn1/t124/packet-t124-template.c
@@ -120,7 +120,7 @@ int dissect_DomainMCSPDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tr
}
static int
-dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
@@ -143,11 +143,11 @@ dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
static void
dissect_t124(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
{
- dissect_t124_new(tvb, pinfo, parent_tree);
+ dissect_t124_new(tvb, pinfo, parent_tree, NULL);
}
static gboolean
-dissect_t124_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t124_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
asn1_ctx_t asn1_ctx;
diff --git a/asn1/t125/packet-t125-template.c b/asn1/t125/packet-t125-template.c
index b3d2a6a0e9..7593875f27 100644
--- a/asn1/t125/packet-t125-template.c
+++ b/asn1/t125/packet-t125-template.c
@@ -60,7 +60,7 @@ static heur_dissector_list_t t125_heur_subdissector_list;
#include "packet-t125-fn.c"
static int
-dissect_t125(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t125(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
@@ -79,7 +79,7 @@ dissect_t125(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
get_ber_identifier(tvb, 0, &ber_class, &pc, &tag);
if ( (ber_class==BER_CLASS_APP) && (tag>=101) && (tag<=104) ){
- dissect_ConnectMCSPDU_PDU(tvb, pinfo, tree);
+ dissect_ConnectMCSPDU_PDU(tvb, pinfo, tree, NULL);
} else {
t124_set_top_tree(top_tree);
dissect_DomainMCSPDU_PDU(tvb, pinfo, tree);
@@ -89,7 +89,7 @@ dissect_t125(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
}
static gboolean
-dissect_t125_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t125_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
gint8 ber_class;
gboolean pc;
@@ -110,7 +110,7 @@ dissect_t125_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree
if ( ((ber_class==BER_CLASS_APP) && ((tag>=101) && (tag<=104))) ||
(choice_index <=42)) {
- dissect_t125(tvb, pinfo, parent_tree);
+ dissect_t125(tvb, pinfo, parent_tree, NULL);
return TRUE;
}
diff --git a/asn1/t38/packet-t38-template.c b/asn1/t38/packet-t38-template.c
index 4d609f29cb..5b332b377e 100644
--- a/asn1/t38/packet-t38-template.c
+++ b/asn1/t38/packet-t38-template.c
@@ -540,7 +540,7 @@ dissect_t38_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
col_append_str(pinfo->cinfo, COL_INFO, "UDP: UDPTLPacket ");
- offset = dissect_UDPTLPacket_PDU(tvb, pinfo, tr);
+ offset = dissect_UDPTLPacket_PDU(tvb, pinfo, tr, NULL);
if (tvb_length_remaining(tvb,offset)>0){
if (tr){
@@ -584,7 +584,7 @@ dissect_t38_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
while(tvb_length_remaining(tvb,offset)>0)
{
next_tvb = tvb_new_subset_remaining(tvb, offset);
- offset += dissect_IFPPacket_PDU(next_tvb, pinfo, tr);
+ offset += dissect_IFPPacket_PDU(next_tvb, pinfo, tr, NULL);
ifp_packet_number++;
if(tvb_length_remaining(tvb,offset)>0){
diff --git a/asn1/x2ap/packet-x2ap-template.c b/asn1/x2ap/packet-x2ap-template.c
index 982d215844..f8377933f0 100644
--- a/asn1/x2ap/packet-x2ap-template.c
+++ b/asn1/x2ap/packet-x2ap-template.c
@@ -81,36 +81,36 @@ static dissector_table_t x2ap_proc_imsg_dissector_table;
static dissector_table_t x2ap_proc_sout_dissector_table;
static dissector_table_t x2ap_proc_uout_dissector_table;
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *);
void proto_reg_handoff_x2ap(void);
#include "packet-x2ap-fn.c"
-static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(x2ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(x2ap_extension_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(x2ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(x2ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
-static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissector_try_uint(x2ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
}
diff --git a/asn1/x2ap/x2ap.cnf b/asn1/x2ap/x2ap.cnf
index 7f0d7eafda..6dcd065e2d 100644
--- a/asn1/x2ap/x2ap.cnf
+++ b/asn1/x2ap/x2ap.cnf
@@ -94,7 +94,7 @@ ProtocolIE-ContainerPairList
if (!parameter_tvb)
return offset;
- dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, tree);
+ dissect_lte_rrc_HandoverCommand_PDU(parameter_tvb, actx->pinfo, tree, NULL);
#.TYPE_ATTR
ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(x2ap_ProtocolIE_ID_vals)
@@ -137,7 +137,7 @@ ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(x2ap_Prot
%(DEFAULT_BODY)s
if (!parameter_tvb)
return offset;
- dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, tree);
+ dissect_lte_rrc_HandoverPreparationInformation_PDU(parameter_tvb, actx->pinfo, tree, NULL);
#.ASSIGN_VALUE_TO_TYPE # X2AP does not have constants assigned to types, they are pure INTEGER
# ProcedureCode
diff --git a/asn1/x509af/packet-x509af-template.c b/asn1/x509af/packet-x509af-template.c
index 6b368c357d..977bd05752 100644
--- a/asn1/x509af/packet-x509af-template.c
+++ b/asn1/x509af/packet-x509af-template.c
@@ -64,7 +64,7 @@ const char *x509af_get_last_algorithm_id(void) {
static int
-dissect_pkix_crl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_pkix_crl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/epan/dissectors/packet-3com-njack.c b/epan/dissectors/packet-3com-njack.c
index d2796ae2f1..d3a769de20 100644
--- a/epan/dissectors/packet-3com-njack.c
+++ b/epan/dissectors/packet-3com-njack.c
@@ -568,7 +568,7 @@ verify_password(tvbuff_t *tvb, const char *password)
#endif
static int
-dissect_njack(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_njack(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *njack_tree;
@@ -654,22 +654,22 @@ test_njack(tvbuff_t *tvb)
}
static gboolean
-dissect_njack_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_njack_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if ( !test_njack(tvb) ) {
return FALSE;
}
- dissect_njack(tvb, pinfo, tree);
+ dissect_njack(tvb, pinfo, tree, NULL);
return TRUE;
}
static int
-dissect_njack_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_njack_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if ( !test_njack(tvb) ) {
return 0;
}
- return dissect_njack(tvb, pinfo, tree);
+ return dissect_njack(tvb, pinfo, tree, NULL);
}
void
diff --git a/epan/dissectors/packet-3g-a11.c b/epan/dissectors/packet-3g-a11.c
index 491dfdefa1..663972ca32 100644
--- a/epan/dissectors/packet-3g-a11.c
+++ b/epan/dissectors/packet-3g-a11.c
@@ -1459,7 +1459,7 @@ dissect_a11_extensions( tvbuff_t *tvb, packet_info *pinfo, int offset, proto_tre
/* Code to actually dissect the packets */
static int
-dissect_a11( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_a11( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures we will need to add the protocol subtree and manage it */
proto_item *ti;
diff --git a/epan/dissectors/packet-6lowpan.c b/epan/dissectors/packet-6lowpan.c
index 821bae0b4b..53371c7639 100644
--- a/epan/dissectors/packet-6lowpan.c
+++ b/epan/dissectors/packet-6lowpan.c
@@ -469,7 +469,6 @@ struct lowpan_nhdr {
/* Dissector prototypes */
static void proto_init_6lowpan (void);
static void prefs_6lowpan_apply (void);
-static gboolean dissect_6lowpan_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static void dissect_6lowpan (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static tvbuff_t * dissect_6lowpan_ipv6 (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static tvbuff_t * dissect_6lowpan_hc1 (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint dgram_size, guint8 *siid, guint8 *diid);
@@ -864,7 +863,7 @@ lowpan_parse_nhc_proto(tvbuff_t *tvb, gint offset)
*---------------------------------------------------------------
*/
static gboolean
-dissect_6lowpan_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_6lowpan_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Check for valid patterns. */
do {
diff --git a/epan/dissectors/packet-9p.c b/epan/dissectors/packet-9p.c
index 3375cb20e4..50d6f30a4a 100644
--- a/epan/dissectors/packet-9p.c
+++ b/epan/dissectors/packet-9p.c
@@ -206,7 +206,7 @@ static void dissect_9P_dm(tvbuff_t * tvb, proto_item * tree,int offset,int iscr
static void dissect_9P_qid(tvbuff_t * tvb, proto_tree * tree,int offset);
/* Dissect 9P messages*/
-static int dissect_9P(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static int dissect_9P(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
guint32 /*ninesz,*/tmp,i;
guint16 tmp16;
diff --git a/epan/dissectors/packet-aastra-aasp.c b/epan/dissectors/packet-aastra-aasp.c
index e927e74be2..4b72a21282 100644
--- a/epan/dissectors/packet-aastra-aasp.c
+++ b/epan/dissectors/packet-aastra-aasp.c
@@ -383,7 +383,7 @@ static guint searchNext(tvbuff_t *tvb, guint begin, guint end)
* AASP-over-SIP
*/
static int
-dissect_aasp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_aasp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti; proto_tree *aasp_tree; guint n;
diff --git a/epan/dissectors/packet-acn.c b/epan/dissectors/packet-acn.c
index 11b1f28830..c2004b604c 100644
--- a/epan/dissectors/packet-acn.c
+++ b/epan/dissectors/packet-acn.c
@@ -469,7 +469,7 @@ is_acn(tvbuff_t *tvb)
/******************************************************************************/
/* Heuristic dissector */
static gboolean
-dissect_acn_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_acn_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
/* This is a heuristic dissector, which means we get all the UDP
* traffic not sent to a known dissector and not claimed by
diff --git a/epan/dissectors/packet-actrace.c b/epan/dissectors/packet-actrace.c
index ffb6264434..06afd7c879 100644
--- a/epan/dissectors/packet-actrace.c
+++ b/epan/dissectors/packet-actrace.c
@@ -448,7 +448,7 @@ static void dissect_actrace_isdn(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
/************************************************************************
* dissect_actrace - The dissector for the AudioCodes Trace prtocol
************************************************************************/
-static int dissect_actrace(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_actrace(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *actrace_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-adwin-config.c b/epan/dissectors/packet-adwin-config.c
index 7812a22bff..290f58f1d2 100644
--- a/epan/dissectors/packet-adwin-config.c
+++ b/epan/dissectors/packet-adwin-config.c
@@ -428,7 +428,7 @@ static const value_string length_mapping[] = {
/* Depending on the packet type, the appropriate dissector is called. */
static int
-dissect_adwin_config(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_adwin_config(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *adwin_config_tree;
diff --git a/epan/dissectors/packet-adwin.c b/epan/dissectors/packet-adwin.c
index 19ace3511c..a239f53901 100644
--- a/epan/dissectors/packet-adwin.c
+++ b/epan/dissectors/packet-adwin.c
@@ -1087,7 +1087,7 @@ dissect_GDSHR(tvbuff_t *tvb, packet_info *pinfo,
called. */
static int
-dissect_adwin(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_adwin(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti, *ti2;
proto_tree *adwin_tree, *adwin_debug_tree;
diff --git a/epan/dissectors/packet-aim.c b/epan/dissectors/packet-aim.c
index 5768228c73..087d11bf7d 100644
--- a/epan/dissectors/packet-aim.c
+++ b/epan/dissectors/packet-aim.c
@@ -1482,7 +1482,7 @@ dissect_aim_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* Code to actually dissect the packets */
static int
-dissect_aim(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_aim(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* check, if this is really an AIM packet, they start with 0x2a */
/* XXX - I've seen some stuff starting with 0x5a followed by 0x2a */
diff --git a/epan/dissectors/packet-aodv.c b/epan/dissectors/packet-aodv.c
index 81ed8f5b15..61ea357591 100644
--- a/epan/dissectors/packet-aodv.c
+++ b/epan/dissectors/packet-aodv.c
@@ -752,7 +752,7 @@ dissect_aodv_draft_01_v6_rerr(tvbuff_t *tvb, packet_info *pinfo,
}
static int
-dissect_aodv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_aodv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *aodv_tree = NULL;
diff --git a/epan/dissectors/packet-applemidi.c b/epan/dissectors/packet-applemidi.c
index 3ccad81b4b..560016f956 100644
--- a/epan/dissectors/packet-applemidi.c
+++ b/epan/dissectors/packet-applemidi.c
@@ -283,7 +283,7 @@ dissect_applemidi( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree ) {
}
static gboolean
-dissect_applemidi_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree ) {
+dissect_applemidi_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ ) {
guint16 command;
conversation_t *p_conv;
diff --git a/epan/dissectors/packet-armagetronad.c b/epan/dissectors/packet-armagetronad.c
index 77f6e563f0..46a1c9184a 100644
--- a/epan/dissectors/packet-armagetronad.c
+++ b/epan/dissectors/packet-armagetronad.c
@@ -229,7 +229,7 @@ add_message(tvbuff_t * tvb, gint offset, proto_tree * tree, emem_strbuf_t * info
/* Code to actually dissect the packets */
static gint
-dissect_armagetronad(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+dissect_armagetronad(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
proto_item *ti;
proto_tree *armagetronad_tree;
diff --git a/epan/dissectors/packet-artnet.c b/epan/dissectors/packet-artnet.c
index 5587ee9a10..be8804105d 100644
--- a/epan/dissectors/packet-artnet.c
+++ b/epan/dissectors/packet-artnet.c
@@ -4382,7 +4382,7 @@ proto_register_artnet(void) {
/* Heuristic dissector */
static gboolean
-dissect_artnet_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_artnet_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
static const char artnet_packet_id[] = "Art-Net\0";
diff --git a/epan/dissectors/packet-aruba-papi.c b/epan/dissectors/packet-aruba-papi.c
index 595e4a3451..695e041909 100644
--- a/epan/dissectors/packet-aruba-papi.c
+++ b/epan/dissectors/packet-aruba-papi.c
@@ -139,7 +139,7 @@ dissect_papi_debug(tvbuff_t *tvb, guint offset, proto_tree *tree)
}
static gboolean
-dissect_papi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_papi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *papi_tree;
diff --git a/epan/dissectors/packet-asf.c b/epan/dissectors/packet-asf.c
index ee9dff1b6b..9243bffcf7 100644
--- a/epan/dissectors/packet-asf.c
+++ b/epan/dissectors/packet-asf.c
@@ -149,7 +149,7 @@ static void dissect_asf_payload_integrity(tvbuff_t *tvb, proto_tree *tree,
gint offset, gint len);
static int
-dissect_asf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_asf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *asf_tree = NULL;
proto_item *ti;
diff --git a/epan/dissectors/packet-at.c b/epan/dissectors/packet-at.c
index d3e48060dd..1b9409a6b3 100644
--- a/epan/dissectors/packet-at.c
+++ b/epan/dissectors/packet-at.c
@@ -57,7 +57,7 @@ static gboolean allowed_chars(tvbuff_t *tvb)
}
/* Experimental approach based upon the one used for PPP */
-static gboolean heur_dissect_at(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean heur_dissect_at(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
const gchar at_magic1[2] = {0x0d, 0x0a};
const gchar at_magic2[3] = {0x0d, 0x0d, 0x0a};
diff --git a/epan/dissectors/packet-atalk.c b/epan/dissectors/packet-atalk.c
index 48791a9ca9..3c41543054 100644
--- a/epan/dissectors/packet-atalk.c
+++ b/epan/dissectors/packet-atalk.c
@@ -1180,7 +1180,7 @@ dissect_asp_reply_get_status(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *
#define PAD(x) { proto_tree_add_item(pap_tree, hf_pap_pad, tvb, offset, x, ENC_NA); offset += x; }
static int
-dissect_pap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_pap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
guint8 fn;
@@ -1312,7 +1312,7 @@ get_transaction(tvbuff_t *tvb, packet_info *pinfo)
static int
-dissect_asp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_asp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
struct aspinfo *aspinfo;
int offset = 0;
diff --git a/epan/dissectors/packet-atmtcp.c b/epan/dissectors/packet-atmtcp.c
index f3bf0b2639..7671579ccb 100644
--- a/epan/dissectors/packet-atmtcp.c
+++ b/epan/dissectors/packet-atmtcp.c
@@ -55,7 +55,7 @@ static dissector_handle_t data_handle;
#define ATMTCP_CTRL_CLOSE 2 /* request/reply */
static int
-dissect_atmtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_atmtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
diff --git a/epan/dissectors/packet-babel.c b/epan/dissectors/packet-babel.c
index c955a334c9..147aefb747 100644
--- a/epan/dissectors/packet-babel.c
+++ b/epan/dissectors/packet-babel.c
@@ -184,7 +184,7 @@ network_address(int ae, const unsigned char *a, unsigned int len,
}
static int
-dissect_babel(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_babel(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
unsigned char v4_prefix[16] = {0}, v6_prefix[16] = {0};
diff --git a/epan/dissectors/packet-banana.c b/epan/dissectors/packet-banana.c
index 52691be418..3070a013b4 100644
--- a/epan/dissectors/packet-banana.c
+++ b/epan/dissectors/packet-banana.c
@@ -216,7 +216,7 @@ dissect_banana_element(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int
}
static int
-dissect_banana(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_banana(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
guint8 byte = 0;
gint offset = 0, old_offset;
proto_item *ti;
diff --git a/epan/dissectors/packet-bfcp.c b/epan/dissectors/packet-bfcp.c
index 67be2f3d31..d2b1dd8748 100644
--- a/epan/dissectors/packet-bfcp.c
+++ b/epan/dissectors/packet-bfcp.c
@@ -122,7 +122,7 @@ static const value_string map_bfcp_request_status[] = {
#define BFCP_OFFSET_PAYLOAD 12
/* Code to actually dissect BFCP packets */
-static gboolean dissect_bfcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_bfcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 first_byte;
guint8 primitive;
diff --git a/epan/dissectors/packet-bittorrent.c b/epan/dissectors/packet-bittorrent.c
index 197f783a51..a91fe3f305 100644
--- a/epan/dissectors/packet-bittorrent.c
+++ b/epan/dissectors/packet-bittorrent.c
@@ -828,7 +828,7 @@ void dissect_bittorrent (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static
gboolean test_bittorrent_packet (tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
diff --git a/epan/dissectors/packet-bjnp.c b/epan/dissectors/packet-bjnp.c
index 77a24df83c..0d701c1669 100644
--- a/epan/dissectors/packet-bjnp.c
+++ b/epan/dissectors/packet-bjnp.c
@@ -85,7 +85,7 @@ static const value_string cmd_code_vals[] = {
{ 0, NULL }
};
-static int dissect_bjnp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_bjnp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *bjnp_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-bmc.c b/epan/dissectors/packet-bmc.c
index 2f9faea369..874c9ceb51 100644
--- a/epan/dissectors/packet-bmc.c
+++ b/epan/dissectors/packet-bmc.c
@@ -85,7 +85,7 @@ static gint ett_bmc = -1;
static gint ett_bmc_message_description = -1;
static int
-dissect_bmc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bmc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 message_type;
guint8 *p_rev, *reversing_buffer;
diff --git a/epan/dissectors/packet-brp.c b/epan/dissectors/packet-brp.c
index 402e857e16..953568ab9a 100644
--- a/epan/dissectors/packet-brp.c
+++ b/epan/dissectors/packet-brp.c
@@ -131,7 +131,7 @@ static gint ett_brp_fltype = -1;
static guint global_brp_port = 0;
static int
-dissect_brp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_brp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *brp_item = NULL;
diff --git a/epan/dissectors/packet-bssap.c b/epan/dissectors/packet-bssap.c
index 54d9c5c73e..ccb782f06c 100644
--- a/epan/dissectors/packet-bssap.c
+++ b/epan/dissectors/packet-bssap.c
@@ -2133,7 +2133,7 @@ static void dissect_bssap_plus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
}
static gboolean
-dissect_bssap_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bssap_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Is it a BSSAP/BSAP packet?
* If octet_1 == 0x00 and octet_2 == length(tvb) - 2
diff --git a/epan/dissectors/packet-bssgp.c b/epan/dissectors/packet-bssgp.c
index b57d284484..6b0595aaa5 100644
--- a/epan/dissectors/packet-bssgp.c
+++ b/epan/dissectors/packet-bssgp.c
@@ -1756,7 +1756,7 @@ de_bssgp_ran_information_request_app_cont(tvbuff_t *tvb, proto_tree *tree, packe
* 3GPP TS 25.413
*/
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree);
+ curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree, NULL);
break;
default :
proto_tree_add_text(tree, tvb, curr_offset, len, "Unknown RIM Application Identity");
@@ -1886,14 +1886,14 @@ de_bssgp_ran_information_app_cont_unit(tvbuff_t *tvb, proto_tree *tree, packet_i
* Source Cell ID) as defined in 3GPP TS 25.413
*/
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree);
+ curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree, NULL);
break;
case 2:
/* If the RAT discriminator field indicates E-UTRAN, this field is encoded as the E-UTRAN CGI IE as
* defined in 3GPP TS 36.413
*/
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- curr_offset = curr_offset + dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree);
+ curr_offset = curr_offset + dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree, NULL);
break;
default:
break;
@@ -1907,7 +1907,7 @@ de_bssgp_ran_information_app_cont_unit(tvbuff_t *tvb, proto_tree *tree, packet_i
* (UTRAN Source Cell ID) as defined in 3GPP TS 25.413
*/
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree);
+ curr_offset = curr_offset + dissect_ranap_SourceCellID_PDU(new_tvb, gpinfo, tree, NULL);
/* Octet (m+1)-n UTRA SI Container
* UTRA SI Container: This field contains System Information Container valid for the reporting cell
* encoded as defined in TS 25.331
@@ -2009,7 +2009,7 @@ de_bssgp_ran_app_error_cont(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo
* The "SON Transfer Cause" field is encoded as the SON Transfer Cause IE as defined in 3GPP TS 36.413
*/
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- curr_offset = curr_offset + dissect_s1ap_SONtransferCause_PDU(new_tvb, gpinfo, tree);
+ curr_offset = curr_offset + dissect_s1ap_SONtransferCause_PDU(new_tvb, gpinfo, tree, NULL);
/* Erroneous Application Container including IEI and LI */
proto_tree_add_text(tree, tvb, curr_offset, len-(curr_offset-offset), "Erroneous Application Container including IEI and LI");
break;
@@ -2252,7 +2252,7 @@ de_bssgp_rim_routing_inf(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_
curr_offset = curr_offset+ de_emm_trac_area_id(tvb, tree, pinfo, curr_offset, 5, add_string, string_len);
/* Octets 9-n contain the Global eNB ID (see 3GPP TS 36.413 [36]) of the eNodeB. */
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree);
+ dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree, NULL);
break;
default:
proto_tree_add_text(tree, tvb, curr_offset, 3, "Unknown RIM Routing Address discriminator");
@@ -2843,7 +2843,7 @@ de_bssgp_inter_rat_ho_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _
* Inter RAT Handover Information coded as specified in 3GPP
* Technical Specification 25.331
*/
- dissect_rrc_InterRATHandoverInfo_PDU(new_tvb, gpinfo, tree);
+ dissect_rrc_InterRATHandoverInfo_PDU(new_tvb, gpinfo, tree, NULL);
return(len);
}
@@ -3087,7 +3087,7 @@ de_bssgp_enb_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 off
/* Octets 8-n contain the Global eNB ID (see 3GPP TS 36.413) of the eNodeB. */
new_tvb = tvb_new_subset_remaining(tvb, curr_offset);
- dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree);
+ dissect_s1ap_Global_ENB_ID_PDU(new_tvb, gpinfo, tree, NULL);
return(len);
}
@@ -3109,7 +3109,7 @@ de_bssgp_e_utran_inter_rat_ho_info(tvbuff_t *tvb, proto_tree *tree, packet_info
* significant bit of the first octet of the octet string contains bit 8 of
* the first octet of the IE.
*/
- dissect_lte_rrc_UE_EUTRA_Capability_PDU(new_tvb, gpinfo, tree);
+ dissect_lte_rrc_UE_EUTRA_Capability_PDU(new_tvb, gpinfo, tree, NULL);
return(len);
}
@@ -3177,7 +3177,7 @@ de_bssgp_son_transfer_app_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo
/* SON Transfer Application Identity: This field is encoded as the SON Transfer Application Identity IE
* as defined in 3GPP TS 36.413
*/
- dissect_s1ap_SONtransferApplicationIdentity_PDU(tvb, gpinfo, tree);
+ dissect_s1ap_SONtransferApplicationIdentity_PDU(tvb, gpinfo, tree, NULL);
return(len);
}
diff --git a/epan/dissectors/packet-bt-dht.c b/epan/dissectors/packet-bt-dht.c
index 78b4cc0aa6..2b620b77b0 100644
--- a/epan/dissectors/packet-bt-dht.c
+++ b/epan/dissectors/packet-bt-dht.c
@@ -429,7 +429,7 @@ dissect_bencoded_dict(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint
}
static int
-dissect_bt_dht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bt_dht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
col_set_str(pinfo->cinfo, COL_PROTOCOL, "BT-DHT");
col_clear(pinfo->cinfo, COL_INFO);
@@ -439,7 +439,7 @@ dissect_bt_dht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static
gboolean dissect_bt_dht_heur (tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
/* try dissecting */
/* XXX: This is a very weak heuristic; so: heuristic dissection is disabled by default */
@@ -450,7 +450,7 @@ gboolean dissect_bt_dht_heur (tvbuff_t *tvb, packet_info *pinfo,
conversation = find_or_create_conversation(pinfo);
conversation_set_dissector(conversation, bt_dht_handle);
- dissect_bt_dht(tvb, pinfo, tree);
+ dissect_bt_dht(tvb, pinfo, tree, NULL);
return TRUE;
}
return FALSE;
diff --git a/epan/dissectors/packet-bt-utp.c b/epan/dissectors/packet-bt-utp.c
index 5d639ab647..fc89fc7399 100644
--- a/epan/dissectors/packet-bt-utp.c
+++ b/epan/dissectors/packet-bt-utp.c
@@ -333,7 +333,7 @@ dissect_utp_extension(tvbuff_t *tvb, packet_info _U_*pinfo, proto_tree *tree, in
}
static int
-dissect_bt_utp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bt_utp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
diff --git a/epan/dissectors/packet-btamp.c b/epan/dissectors/packet-btamp.c
index 28df199a24..a4c677fac7 100644
--- a/epan/dissectors/packet-btamp.c
+++ b/epan/dissectors/packet-btamp.c
@@ -378,7 +378,7 @@ dissect_discphysicalchanresponse(tvbuff_t *tvb, int offset, packet_info *pinfo _
}
static int
-dissect_btamp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_btamp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_tree *btamp_tree = NULL;
diff --git a/epan/dissectors/packet-bthci_evt.c b/epan/dissectors/packet-bthci_evt.c
index 11795301af..1d86785ae7 100644
--- a/epan/dissectors/packet-bthci_evt.c
+++ b/epan/dissectors/packet-bthci_evt.c
@@ -2364,7 +2364,7 @@ dissect_bthci_evt_inq_result(tvbuff_t *tvb, int offset, packet_info *pinfo _U_,
/* Code to actually dissect the packets */
static int
-dissect_bthci_evt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bthci_evt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *bthci_evt_tree = NULL;
diff --git a/epan/dissectors/packet-btsdp.c b/epan/dissectors/packet-btsdp.c
index fe2b8f55de..eda4542ebc 100644
--- a/epan/dissectors/packet-btsdp.c
+++ b/epan/dissectors/packet-btsdp.c
@@ -954,7 +954,7 @@ dissect_sdp_service_search_response(proto_tree *t, tvbuff_t *tvb, int offset)
static int
-dissect_btsdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_btsdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *st;
diff --git a/epan/dissectors/packet-bvlc.c b/epan/dissectors/packet-bvlc.c
index ea9e0692c6..91bda1aa31 100644
--- a/epan/dissectors/packet-bvlc.c
+++ b/epan/dissectors/packet-bvlc.c
@@ -106,7 +106,7 @@ static const value_string bvlc_types[] = {
};
static int
-dissect_bvlc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_bvlc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
diff --git a/epan/dissectors/packet-calcappprotocol.c b/epan/dissectors/packet-calcappprotocol.c
index c3559e98b7..e5bb066102 100644
--- a/epan/dissectors/packet-calcappprotocol.c
+++ b/epan/dissectors/packet-calcappprotocol.c
@@ -106,7 +106,7 @@ dissect_calcappprotocol_message(tvbuff_t *message_tvb, packet_info *pinfo, proto
static int
-dissect_calcappprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_calcappprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *calcappprotocol_item;
proto_tree *calcappprotocol_tree;
diff --git a/epan/dissectors/packet-capwap.c b/epan/dissectors/packet-capwap.c
index 96fbdf68f5..406b8e2583 100644
--- a/epan/dissectors/packet-capwap.c
+++ b/epan/dissectors/packet-capwap.c
@@ -1335,7 +1335,7 @@ dissect_capwap_preamble(tvbuff_t *tvb, proto_tree *capwap_control_tree, guint of
/* Code to actually dissect the packets */
static int
-dissect_capwap_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_capwap_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
diff --git a/epan/dissectors/packet-cigi.c b/epan/dissectors/packet-cigi.c
index 3dc1a6acb5..5701dadf16 100644
--- a/epan/dissectors/packet-cigi.c
+++ b/epan/dissectors/packet-cigi.c
@@ -41,8 +41,6 @@
/* Forward declaration */
void proto_reg_handoff_cigi(void);
static gboolean packet_is_cigi(tvbuff_t*);
-static gboolean dissect_cigi_heur(tvbuff_t*, packet_info*, proto_tree*);
-static int dissect_cigi(tvbuff_t*, packet_info*, proto_tree*);
static void dissect_cigi_pdu(tvbuff_t*, packet_info*, proto_tree*);
static void cigi_add_tree(tvbuff_t*, proto_tree*);
static gint cigi_add_data(tvbuff_t*, proto_tree*, gint);
@@ -2586,7 +2584,7 @@ packet_is_cigi(tvbuff_t *tvb)
* The heuristic dissector
*/
static gboolean
-dissect_cigi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cigi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Does this look like CIGI? */
if ( !packet_is_cigi(tvb) ) {
@@ -2600,7 +2598,7 @@ dissect_cigi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* The non-heuristic dissector.
*/
static int
-dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cigi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Make sure this looks like CIGI */
if ( !packet_is_cigi(tvb) ) {
diff --git a/epan/dissectors/packet-cimd.c b/epan/dissectors/packet-cimd.c
index f3beb198fe..de854d342f 100644
--- a/epan/dissectors/packet-cimd.c
+++ b/epan/dissectors/packet-cimd.c
@@ -794,7 +794,7 @@ dissect_cimd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* a CIMD MSU here.
*/
static gboolean
-dissect_cimd_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cimd_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int etxp;
guint8 opcode = 0; /* Operation code */
diff --git a/epan/dissectors/packet-cip.c b/epan/dissectors/packet-cip.c
index f26870287d..7121d11392 100644
--- a/epan/dissectors/packet-cip.c
+++ b/epan/dissectors/packet-cip.c
@@ -3394,7 +3394,7 @@ dissect_cip_generic_data( proto_tree *item_tree, tvbuff_t *tvb, int offset, int
} /* End of dissect_cip_generic_data() */
static int
-dissect_cip_class_generic(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_generic(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -4708,7 +4708,7 @@ dissect_cip_cm_data( proto_tree *item_tree, tvbuff_t *tvb, int offset, int item_
} /* End of dissect_cip_cm_data() */
static int
-dissect_cip_class_cm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_cm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -4915,7 +4915,7 @@ dissect_cip_mb_data( proto_tree *item_tree, tvbuff_t *tvb, int offset, int item_
} /* End of dissect_cip_mb_data() */
static int
-dissect_cip_class_mb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_mb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -5268,7 +5268,7 @@ dissect_cip_cco_data( proto_tree *item_tree, tvbuff_t *tvb, int offset, int item
} /* End of dissect_cip_cco_data() */
static int
-dissect_cip_class_cco(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_cco(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -5283,7 +5283,7 @@ dissect_cip_class_cco(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_class_cco_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_class_cco_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
unsigned char service, service_code, ioilen, segment;
cip_req_info_t* preq_info;
@@ -5559,7 +5559,7 @@ dissect_cip_data( proto_tree *item_tree, tvbuff_t *tvb, int offset, packet_info
static int
-dissect_cip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
enip_request_info_t *enip_info;
cip_req_info_t *preq_info;
diff --git a/epan/dissectors/packet-cipsafety.c b/epan/dissectors/packet-cipsafety.c
index a23f484383..b5742c565a 100644
--- a/epan/dissectors/packet-cipsafety.c
+++ b/epan/dissectors/packet-cipsafety.c
@@ -703,7 +703,7 @@ dissect_cip_s_supervisor_data( proto_tree *item_tree,
}
static int
-dissect_cip_class_s_supervisor(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_s_supervisor(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -1280,7 +1280,7 @@ dissect_cip_s_validator_data( proto_tree *item_tree,
}
static int
-dissect_cip_class_s_validator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cip_class_s_validator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *class_tree;
@@ -1295,7 +1295,7 @@ dissect_cip_class_s_validator(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tre
}
static gboolean
-dissect_class_svalidator_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_class_svalidator_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
unsigned char service, service_code, ioilen, segment;
cip_req_info_t* preq_info;
diff --git a/epan/dissectors/packet-classicstun.c b/epan/dissectors/packet-classicstun.c
index 58f43af194..3f895f281d 100644
--- a/epan/dissectors/packet-classicstun.c
+++ b/epan/dissectors/packet-classicstun.c
@@ -209,7 +209,7 @@ static const value_string attributes_family[] = {
};
static int
-dissect_classicstun(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_classicstun(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
@@ -548,9 +548,9 @@ dissect_classicstun(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_classicstun_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_classicstun_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- if (dissect_classicstun(tvb, pinfo, tree) == 0)
+ if (dissect_classicstun(tvb, pinfo, tree, NULL) == 0)
return FALSE;
return TRUE;
diff --git a/epan/dissectors/packet-clique-rm.c b/epan/dissectors/packet-clique-rm.c
index 9726396a62..e664f54541 100644
--- a/epan/dissectors/packet-clique-rm.c
+++ b/epan/dissectors/packet-clique-rm.c
@@ -264,7 +264,7 @@ dissect_unreliable_packet (proto_tree *clique_rm_tree, guint8 type,
static gboolean
-dissect_clique_rm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_clique_rm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 version = 0;
guint8 type = 0;
diff --git a/epan/dissectors/packet-cmp.c b/epan/dissectors/packet-cmp.c
index 6ba99e0692..e382bbab67 100644
--- a/epan/dissectors/packet-cmp.c
+++ b/epan/dissectors/packet-cmp.c
@@ -1486,7 +1486,7 @@ static const value_string cmp_pdu_types[] = {
};
-static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
tvbuff_t *next_tvb;
guint32 pdu_len;
@@ -1583,7 +1583,7 @@ static int dissect_cmp_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *pa
static void dissect_cmp_tcp_pdu_no_return(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
{
- dissect_cmp_tcp_pdu(tvb, pinfo, parent_tree);
+ dissect_cmp_tcp_pdu(tvb, pinfo, parent_tree, NULL);
}
static guint get_cmp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
@@ -1600,8 +1600,8 @@ static guint get_cmp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
/* CMP over TCP: RFC2510 section 5.2 and "Transport Protocols for CMP" draft */
- static int
-dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int
+dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
guint32 pdu_len;
guint8 pdu_type;
@@ -1657,8 +1657,8 @@ dissect_cmp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
- static int
-dissect_cmp_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+static int
+dissect_cmp_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/epan/dissectors/packet-cmpp.c b/epan/dissectors/packet-cmpp.c
index c5b381a7f2..65f5785e3a 100644
--- a/epan/dissectors/packet-cmpp.c
+++ b/epan/dissectors/packet-cmpp.c
@@ -628,7 +628,7 @@ get_cmpp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, gint offset)
static int
-dissect_cmpp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cmpp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint total_length, command_id, tvb_len;
/* Check that there's enough data */
diff --git a/epan/dissectors/packet-componentstatus.c b/epan/dissectors/packet-componentstatus.c
index 709d91d1fe..729a7d5c3b 100644
--- a/epan/dissectors/packet-componentstatus.c
+++ b/epan/dissectors/packet-componentstatus.c
@@ -212,7 +212,7 @@ dissect_componentstatusprotocol_message(tvbuff_t *message_tvb, packet_info *pinf
static int
-dissect_componentstatusprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_componentstatusprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *componentstatusprotocol_item;
proto_tree *componentstatusprotocol_tree;
diff --git a/epan/dissectors/packet-cpfi.c b/epan/dissectors/packet-cpfi.c
index 72eb41fd48..2231762499 100644
--- a/epan/dissectors/packet-cpfi.c
+++ b/epan/dissectors/packet-cpfi.c
@@ -308,7 +308,7 @@ dissect_cpfi_footer(tvbuff_t *tvb, proto_tree *tree)
/* CPFI */
static int
-dissect_cpfi(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cpfi(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tvbuff_t *header_tvb, *body_tvb, *footer_tvb;
proto_item *cpfi_item = NULL;
diff --git a/epan/dissectors/packet-cpha.c b/epan/dissectors/packet-cpha.c
index b644dd2c09..e62d041241 100644
--- a/epan/dissectors/packet-cpha.c
+++ b/epan/dissectors/packet-cpha.c
@@ -149,7 +149,7 @@ static int dissect_probe(tvbuff_t *, int, proto_tree *);
static int dissect_conf_reply(tvbuff_t *, int, proto_tree *);
static int
-dissect_cpha(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_cpha(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_item * ti;
diff --git a/epan/dissectors/packet-credssp.c b/epan/dissectors/packet-credssp.c
index be30629057..076e4b293e 100644
--- a/epan/dissectors/packet-credssp.c
+++ b/epan/dissectors/packet-credssp.c
@@ -353,7 +353,7 @@ dissect_credssp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
static gboolean
-dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_credssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
asn1_ctx_t asn1_ctx;
int offset = 0;
diff --git a/epan/dissectors/packet-ctdb.c b/epan/dissectors/packet-ctdb.c
index 4a0c605bd7..4685626555 100644
--- a/epan/dissectors/packet-ctdb.c
+++ b/epan/dissectors/packet-ctdb.c
@@ -971,7 +971,7 @@ dissect_ctdb_req_call(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree
}
static gboolean
-dissect_ctdb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_ctdb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_tree *tree=NULL;
proto_item *item=NULL;
diff --git a/epan/dissectors/packet-dbus.c b/epan/dissectors/packet-dbus.c
index 9f9aaea3b7..edc01ca6fc 100644
--- a/epan/dissectors/packet-dbus.c
+++ b/epan/dissectors/packet-dbus.c
@@ -485,7 +485,7 @@ dissect_dbus_body(tvbuff_t *tvb, dbus_info_t *dinfo, proto_tree *tree, int offse
}
static int
-dissect_dbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *dbus_tree = NULL;
dbus_info_t dinfo;
@@ -566,11 +566,11 @@ get_dbus_message_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
static void
dissect_dbus_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
- dissect_dbus(tvb, pinfo, tree);
+ dissect_dbus(tvb, pinfo, tree, NULL);
}
static int
-dissect_dbus_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dbus_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tcp_dissect_pdus(tvb, pinfo, tree, dbus_desegment, DBUS_HEADER_LEN, get_dbus_message_len, dissect_dbus_pdu);
return tvb_length(tvb);
diff --git a/epan/dissectors/packet-dcc.c b/epan/dissectors/packet-dcc.c
index 30819845a8..891212d5bf 100644
--- a/epan/dissectors/packet-dcc.c
+++ b/epan/dissectors/packet-dcc.c
@@ -204,7 +204,7 @@ static const value_string dcc_floodop_vals[] = {
};
static gboolean
-dissect_dcc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *dcc_tree, *dcc_optree, *dcc_opnumtree, *ti;
proto_tree *dcc_tracetree;
diff --git a/epan/dissectors/packet-dcerpc.c b/epan/dissectors/packet-dcerpc.c
index 7b9993ed90..a60cc9c7bc 100644
--- a/epan/dissectors/packet-dcerpc.c
+++ b/epan/dissectors/packet-dcerpc.c
@@ -4555,7 +4555,7 @@ dissect_dcerpc_cn(tvbuff_t *tvb, int offset, packet_info *pinfo,
* transports
*/
static gboolean
-dissect_dcerpc_cn_pk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcerpc_cn_pk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
* Only one PDU per transport packet, and only one transport
@@ -4659,21 +4659,21 @@ dissect_dcerpc_cn_bs_body(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_dcerpc_cn_bs(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcerpc_cn_bs(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
pinfo->dcetransporttype = DCE_TRANSPORT_UNKNOWN;
return dissect_dcerpc_cn_bs_body(tvb, pinfo, tree);
}
static gboolean
-dissect_dcerpc_cn_smbpipe(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcerpc_cn_smbpipe(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
pinfo->dcetransporttype = DCE_CN_TRANSPORT_SMBPIPE;
return dissect_dcerpc_cn_bs_body(tvb, pinfo, tree);
}
static gboolean
-dissect_dcerpc_cn_smb2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcerpc_cn_smb2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
pinfo->dcetransporttype = DCE_TRANSPORT_UNKNOWN;
return dissect_dcerpc_cn_bs_body(tvb, pinfo, tree);
@@ -5147,7 +5147,7 @@ dissect_dcerpc_dg_ping_ack(tvbuff_t *tvb, int offset, packet_info *pinfo,
* DCERPC dissector for connectionless calls
*/
static gboolean
-dissect_dcerpc_dg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcerpc_dg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_item *tf = NULL;
diff --git a/epan/dissectors/packet-dcm.c b/epan/dissectors/packet-dcm.c
index f6d1f064d1..1054604b87 100644
--- a/epan/dissectors/packet-dcm.c
+++ b/epan/dissectors/packet-dcm.c
@@ -3697,11 +3697,8 @@ static dcm_state_pctx_t* dcm_state_pctx_get (dcm_state_assoc_t *assoc, guint8
static dcm_state_pdv_t* dcm_state_pdv_new (dcm_state_pctx_t *pctx, guint32 packet_no, guint32 offset);
static dcm_state_pdv_t* dcm_state_pdv_get (dcm_state_pctx_t *pctx, guint32 packet_no, guint32 offset, gboolean create);
-/* Following three functions by purpose only return int, since we request data consolidation */
-static int dissect_dcm_static (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-
/* ToDo: The heuristic one should actually return true/false only */
-static int dissect_dcm_heuristic (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_dcm_heuristic (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data);
static int dissect_dcm_main (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean is_port_static);
/* And from here on, only use unsigned 32 bit values. Offset is always positive number in respect to the tvb buffer start */
@@ -6558,14 +6555,14 @@ dissect_dcm_main(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean i
/* Call back functions used to register */
static int
-dissect_dcm_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcm_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Less checking on ports that match */
return dissect_dcm_main(tvb, pinfo, tree, TRUE);
}
static int
-dissect_dcm_heuristic(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dcm_heuristic(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Only decode conversations, which include an Association Request */
/* This will be potentially called for every packet */
diff --git a/epan/dissectors/packet-dcp-etsi.c b/epan/dissectors/packet-dcp-etsi.c
index 672316c74b..908e75f939 100644
--- a/epan/dissectors/packet-dcp-etsi.c
+++ b/epan/dissectors/packet-dcp-etsi.c
@@ -39,7 +39,6 @@
/* forward reference */
-static gboolean dissect_dcp_etsi (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
static void dissect_af (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
static void dissect_pft (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
static void dissect_tpl(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
@@ -147,7 +146,7 @@ dcp_init_protocol(void)
static void
*/
static gboolean
-dissect_dcp_etsi (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+dissect_dcp_etsi (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
guint8 *sync;
proto_tree *dcp_tree = NULL;
diff --git a/epan/dissectors/packet-ddtp.c b/epan/dissectors/packet-ddtp.c
index 3f1302a0f8..c2ea891f89 100644
--- a/epan/dissectors/packet-ddtp.c
+++ b/epan/dissectors/packet-ddtp.c
@@ -89,7 +89,7 @@ static const value_string vals_ddtp_status[] = {
};
static int
-dissect_ddtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ddtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *ddtp_tree = NULL;
proto_item *ti;
diff --git a/epan/dissectors/packet-diameter.c b/epan/dissectors/packet-diameter.c
index 1915049272..2b15f18aa4 100644
--- a/epan/dissectors/packet-diameter.c
+++ b/epan/dissectors/packet-diameter.c
@@ -319,7 +319,7 @@ compare_avps (gconstpointer a, gconstpointer b)
/* Special decoding of some AVP:s */
static int
-dissect_diameter_vendor_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_diameter_vendor_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -330,7 +330,7 @@ dissect_diameter_vendor_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
}
static int
-dissect_diameter_eap_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_diameter_eap_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean save_writable;
@@ -346,7 +346,7 @@ dissect_diameter_eap_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
/* From RFC 3162 section 2.3 */
static int
-dissect_diameter_base_framed_ipv6_prefix(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_diameter_base_framed_ipv6_prefix(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
guint8 prefix_len, prefix_len_bytes;
@@ -1084,7 +1084,7 @@ check_diameter(tvbuff_t *tvb)
/************************************************/
/* Main dissection function */
static int
-dissect_diameter(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_diameter(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (!check_diameter(tvb))
return 0;
diff --git a/epan/dissectors/packet-diameter_3gpp.c b/epan/dissectors/packet-diameter_3gpp.c
index 05aed25447..7549dafc45 100644
--- a/epan/dissectors/packet-diameter_3gpp.c
+++ b/epan/dissectors/packet-diameter_3gpp.c
@@ -132,7 +132,7 @@ static dissector_handle_t xml_handle;
/* AVP Code: 15 3GPP-SGSN-IPv6-Address */
/* AVP Code: 917 MBMS-GGSN-IPv6-Address */
static int
-dissect_diameter_3gpp_ipv6addr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_diameter_3gpp_ipv6addr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -152,7 +152,7 @@ dissect_diameter_3gpp_ipv6addr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree
*/
static int
-dissect_diameter_3gpp_visited_nw_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_visited_nw_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
int offset = 0, i;
@@ -174,7 +174,7 @@ dissect_diameter_3gpp_visited_nw_id(tvbuff_t *tvb, packet_info *pinfo _U_, proto
*/
static int
-dissect_diameter_3gpp_feature_list(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_feature_list(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -207,7 +207,7 @@ dissect_diameter_3gpp_feature_list(tvbuff_t *tvb, packet_info *pinfo _U_, proto_
* in IETF RFC 3327 [17].
*/
static int
-dissect_diameter_3gpp_path(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_path(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -239,7 +239,7 @@ dissect_diameter_3gpp_path(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
* defined in IETF RFC 3261.
*/
static int
-dissect_diameter_3gpp_contact(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_contact(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
int offset = 0;
@@ -252,7 +252,7 @@ dissect_diameter_3gpp_contact(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree
/* AVP Code: 701 MSISDN */
static int
-dissect_diameter_3gpp_msisdn(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_msisdn(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -281,7 +281,7 @@ dissect_diameter_3gpp_msisdn(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *
* IMS Cx Dx AVPS 3GPP TS 29.229
*/
static int
-dissect_diameter_3gpp_user_data(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_user_data(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
guint8 word[6];
int length = tvb_length(tvb);
@@ -305,7 +305,7 @@ dissect_diameter_3gpp_user_data(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
* AVP Code: 704 Service-Indication
*/
static int
-dissect_diameter_3gpp_service_ind(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_service_ind(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
int offset = 0, i;
@@ -323,7 +323,7 @@ dissect_diameter_3gpp_service_ind(tvbuff_t *tvb, packet_info *pinfo _U_, proto_t
/* AVP Code: 900 TMGI */
static int
-dissect_diameter_3gpp_tmgi(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_tmgi(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -349,7 +349,7 @@ dissect_diameter_3gpp_tmgi(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
/* AVP Code: 918 MBMS-BMSC-SSM-IP-Address */
static int
-dissect_diameter_3gpp_ipaddr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_ipaddr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
int offset = 0;
@@ -362,7 +362,7 @@ dissect_diameter_3gpp_ipaddr(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *
/* AVP Code: 913 MBMS-Required-QoS */
static int
-dissect_diameter_3gpp_mbms_required_qos(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_diameter_3gpp_mbms_required_qos(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
int offset = 0;
guint length;
@@ -388,7 +388,7 @@ dissect_diameter_3gpp_mbms_required_qos(tvbuff_t *tvb, packet_info *pinfo, proto
/* AVP Code: 926 MBMS-BMSC-SSM-UDP-Port */
/* AVP Code: 927 MBMS-GW-UDP-Port */
static int
-dissect_diameter_3gpp_udp_port(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_diameter_3gpp_udp_port(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -402,7 +402,7 @@ dissect_diameter_3gpp_udp_port(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree
/* AVP Code: 929 MBMS-Data-Transfer-Start */
/* AVP Code: 930 MBMS-Data-Transfer-Stop */
static int
-dissect_diameter_3gpp_mbms_abs_time_ofmbms_data_tfer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_diameter_3gpp_mbms_abs_time_ofmbms_data_tfer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
const gchar *time_str;
@@ -416,7 +416,7 @@ dissect_diameter_3gpp_mbms_abs_time_ofmbms_data_tfer(tvbuff_t *tvb, packet_info
/* AVP Code: 1405 ULR-Flags */
static int
-dissect_diameter_3gpp_ulr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_ulr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -450,7 +450,7 @@ dissect_diameter_3gpp_ulr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1406 ULA-Flags */
static int
-dissect_diameter_3gpp_ula_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_ula_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -472,7 +472,7 @@ dissect_diameter_3gpp_ula_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1421 DSR-Flags */
static int
-dissect_diameter_3gpp_dsr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_dsr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -524,7 +524,7 @@ dissect_diameter_3gpp_dsr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1422 DSA-Flags */
static int
-dissect_diameter_3gpp_dsa_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_dsa_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -546,7 +546,7 @@ dissect_diameter_3gpp_dsa_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1441 IDA-Flags */
static int
-dissect_diameter_3gpp_ida_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_ida_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -568,7 +568,7 @@ dissect_diameter_3gpp_ida_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1442 PUA-Flags */
static int
-dissect_diameter_3gpp_pua_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_pua_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -593,7 +593,7 @@ dissect_diameter_3gpp_pua_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1443 NOR-Flags */
static int
-dissect_diameter_3gpp_nor_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_nor_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
@@ -627,7 +627,7 @@ dissect_diameter_3gpp_nor_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tre
/* AVP Code: 1490 IDR-Flags */
static int
-dissect_diameter_3gpp_idr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree) {
+dissect_diameter_3gpp_idr_flags(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
proto_item* item;
proto_tree *sub_tree;
diff --git a/epan/dissectors/packet-dis.c b/epan/dissectors/packet-dis.c
index 1a7eae6f3d..884a51d5fd 100644
--- a/epan/dissectors/packet-dis.c
+++ b/epan/dissectors/packet-dis.c
@@ -161,7 +161,7 @@ static const char* dis_proto_name_short = "DIS";
/* Main dissector routine to be invoked for a DIS PDU.
*/
-static gint dissect_dis(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gint dissect_dis(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *dis_tree = 0;
proto_item *dis_node = 0;
diff --git a/epan/dissectors/packet-dlm3.c b/epan/dissectors/packet-dlm3.c
index 971cefa1d8..d92c4b510c 100644
--- a/epan/dissectors/packet-dlm3.c
+++ b/epan/dissectors/packet-dlm3.c
@@ -751,7 +751,7 @@ dissect_dlm3_rcom(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
static int
-dissect_dlm3(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_dlm3(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item, *sub_item;
proto_tree *tree, *sub_tree;
diff --git a/epan/dissectors/packet-dlsw.c b/epan/dissectors/packet-dlsw.c
index e9b70b61eb..213f36cdd7 100644
--- a/epan/dissectors/packet-dlsw.c
+++ b/epan/dissectors/packet-dlsw.c
@@ -474,7 +474,7 @@ dissect_dlsw_capex(tvbuff_t *tvb, proto_tree *tree, proto_tree *ti2)
}
static int
-dissect_dlsw_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dlsw_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (match_strval(tvb_get_guint8(tvb, 0), dlsw_version_vals) == NULL)
{
@@ -508,7 +508,7 @@ get_dlsw_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_dlsw_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dlsw_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (match_strval(tvb_get_guint8(tvb, 0), dlsw_version_vals) == NULL)
{
diff --git a/epan/dissectors/packet-dnp.c b/epan/dissectors/packet-dnp.c
index e6318b5078..09709bc84f 100644
--- a/epan/dissectors/packet-dnp.c
+++ b/epan/dissectors/packet-dnp.c
@@ -3046,7 +3046,7 @@ get_dnp3_message_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static gboolean
-dissect_dnp3_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dnp3_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint length = tvb_length(tvb);
@@ -3063,7 +3063,7 @@ dissect_dnp3_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_dnp3_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dnp3_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint length = tvb_length(tvb);
/* Check for a dnp packet. It should begin with 0x0564 */
diff --git a/epan/dissectors/packet-dplay.c b/epan/dissectors/packet-dplay.c
index bb4b825662..07e7c55d59 100644
--- a/epan/dissectors/packet-dplay.c
+++ b/epan/dissectors/packet-dplay.c
@@ -35,7 +35,6 @@
#include <string.h>
/* function declarations */
-static gboolean heur_dissect_dplay(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static void dissect_dplay(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gint dissect_type1a_message(proto_tree *tree, tvbuff_t *tvb, gint offset);
@@ -1154,7 +1153,7 @@ static void dissect_dplay_player_msg(tvbuff_t *tvb, packet_info *pinfo, proto_tr
}
}
-static gboolean heur_dissect_dplay(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean heur_dissect_dplay(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 signature[] = {'p','l','a','y'};
guint32 dplay_id, token;
diff --git a/epan/dissectors/packet-drda.c b/epan/dissectors/packet-drda.c
index d13210c697..3955648143 100644
--- a/epan/dissectors/packet-drda.c
+++ b/epan/dissectors/packet-drda.c
@@ -805,7 +805,7 @@ dissect_drda_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_drda_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_drda_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t * conversation;
if (tvb_length(tvb) >= 10)
diff --git a/epan/dissectors/packet-dtls.c b/epan/dissectors/packet-dtls.c
index 8893bf99ec..22868c4155 100644
--- a/epan/dissectors/packet-dtls.c
+++ b/epan/dissectors/packet-dtls.c
@@ -531,7 +531,7 @@ dissect_dtls(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_dtls_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dtls_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Stronger confirmation of DTLS packet is provided by verifying the
* payload length against the remainder of the UDP packet size. */
diff --git a/epan/dissectors/packet-dtpt.c b/epan/dissectors/packet-dtpt.c
index ed3897ed3a..f075acac27 100644
--- a/epan/dissectors/packet-dtpt.c
+++ b/epan/dissectors/packet-dtpt.c
@@ -222,7 +222,7 @@ static const value_string names_protocol[] = {
static int
dissect_dtpt_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static int
-dissect_dtpt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+dissect_dtpt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_);
static int
@@ -407,12 +407,12 @@ dissect_dtpt_sockaddr(tvbuff_t *tvb, guint offset, proto_tree *tree, int hfindex
}
static int
-dissect_dtpt_conversation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dtpt_conversation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint offset = 0;
/* First try to decode it as "normal" DTPT packets. */
- offset = dissect_dtpt(tvb, pinfo, tree);
+ offset = dissect_dtpt(tvb, pinfo, tree, NULL);
if (offset == 0) {
/* No, maybe it was a DTPT data packet. */
@@ -693,7 +693,7 @@ dissect_dtpt_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_dtpt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dtpt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *dtpt_tree = NULL;
proto_item *dtpt_item = NULL;
diff --git a/epan/dissectors/packet-dvb-ait.c b/epan/dissectors/packet-dvb-ait.c
index f5a0916a80..25f9070b0c 100644
--- a/epan/dissectors/packet-dvb-ait.c
+++ b/epan/dissectors/packet-dvb-ait.c
@@ -133,7 +133,7 @@ dissect_dvb_ait_descriptor(tvbuff_t *tvb, guint offset,
static int
-dissect_dvb_ait(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dvb_ait(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset=0;
proto_item *ait_tree_ti = NULL, *app_tree_ti = NULL;
diff --git a/epan/dissectors/packet-dvb-nit.c b/epan/dissectors/packet-dvb-nit.c
index 25d7f92be4..b949385bc0 100644
--- a/epan/dissectors/packet-dvb-nit.c
+++ b/epan/dissectors/packet-dvb-nit.c
@@ -78,7 +78,7 @@ static const value_string dvb_nit_cur_next_vals[] = {
static int
-dissect_dvb_nit(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dvb_nit(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint offset = 0;
diff --git a/epan/dissectors/packet-dvb-s2-bb.c b/epan/dissectors/packet-dvb-s2-bb.c
index 1713b0f48c..29ec7f1c08 100644
--- a/epan/dissectors/packet-dvb-s2-bb.c
+++ b/epan/dissectors/packet-dvb-s2-bb.c
@@ -810,7 +810,7 @@ static int dissect_dvb_s2_bb(tvbuff_t *tvb, int cur_off, proto_tree *tree, packe
return new_off;
}
-static int dissect_dvb_s2_modeadapt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_dvb_s2_modeadapt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int cur_off = 0, dvb_s2_modeadapt_len = -1;
diff --git a/epan/dissectors/packet-dvbci.c b/epan/dissectors/packet-dvbci.c
index beed125720..cf529f3f19 100644
--- a/epan/dissectors/packet-dvbci.c
+++ b/epan/dissectors/packet-dvbci.c
@@ -4368,7 +4368,7 @@ dissect_dvbci_cis(tvbuff_t *tvb, gint offset,
static int
-dissect_dvbci(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dvbci(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint packet_len, offset = 0, offset_ver, offset_evt, offset_len_field;
guint8 version, event;
diff --git a/epan/dissectors/packet-e100.c b/epan/dissectors/packet-e100.c
index 6994f47f78..7d87dcf20d 100644
--- a/epan/dissectors/packet-e100.c
+++ b/epan/dissectors/packet-e100.c
@@ -65,7 +65,7 @@ static guint e100_encap_len = 28;
static int
-dissect_e100(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_e100(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int ret_val = 0;
tvbuff_t *next_tvb = NULL;
diff --git a/epan/dissectors/packet-eap.c b/epan/dissectors/packet-eap.c
index 0e5671bb19..11c864e33f 100644
--- a/epan/dissectors/packet-eap.c
+++ b/epan/dissectors/packet-eap.c
@@ -609,7 +609,7 @@ dissect_eap_aka(proto_tree *eap_tree, tvbuff_t *tvb, int offset, gint size)
}
static int
-dissect_eap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_eap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 eap_code;
guint16 eap_len;
diff --git a/epan/dissectors/packet-eigrp.c b/epan/dissectors/packet-eigrp.c
index 7288be4564..0ebeb3c4d2 100644
--- a/epan/dissectors/packet-eigrp.c
+++ b/epan/dissectors/packet-eigrp.c
@@ -2418,7 +2418,7 @@ dissect_eigrp_multi_protocol_tlv (proto_item *ti, proto_tree *tree, tvbuff_t *tv
}
/**
- *@fn int dissect_eigrp (proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo)
+ *@fn int dissect_eigrp (proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo, void *data)
*
* @param[in] tvb packet data
* @param[in] pinfo general data about the protocol
@@ -2445,7 +2445,7 @@ static guint16 ip_checksum(const guint8 *ptr, int len)
return in_cksum(&cksum_vec[0], 1);
}
static int
-dissect_eigrp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_eigrp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *eigrp_tree = NULL, *tlv_tree;
diff --git a/epan/dissectors/packet-enip.c b/epan/dissectors/packet-enip.c
index 4eb150b5ac..84c03e777e 100644
--- a/epan/dissectors/packet-enip.c
+++ b/epan/dissectors/packet-enip.c
@@ -2079,7 +2079,7 @@ dissect_enip_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
} /* end of dissect_enip_pdu() */
static int
-dissect_enip_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_enip_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 encap_cmd;
@@ -2097,7 +2097,7 @@ dissect_enip_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_enip_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_enip_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 encap_cmd;
@@ -2139,7 +2139,7 @@ dissect_enipio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_dlr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_dlr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *dlr_tree = NULL;
diff --git a/epan/dissectors/packet-enttec.c b/epan/dissectors/packet-enttec.c
index 4c064fd4a4..74084c5b53 100644
--- a/epan/dissectors/packet-enttec.c
+++ b/epan/dissectors/packet-enttec.c
@@ -342,7 +342,7 @@ dissect_enttec_reset(tvbuff_t *tvb _U_, guint offset, proto_tree *tree _U_)
}
static int
-dissect_enttec(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_enttec(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
guint32 head = 0;
diff --git a/epan/dissectors/packet-epl.c b/epan/dissectors/packet-epl.c
index 95695852db..1a758077d7 100644
--- a/epan/dissectors/packet-epl.c
+++ b/epan/dissectors/packet-epl.c
@@ -476,9 +476,6 @@ static gint dissect_epl_sdo_command_read_by_index(proto_tree *epl_tree, tvbuff_t
static const gchar* decode_epl_address(guchar adr);
-static gint dissect_epl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-
-
/* Initialize the protocol and registered fields */
static gint proto_epl = -1;
static gint hf_epl_mtyp = -1;
@@ -662,7 +659,7 @@ gboolean show_soc_flags = FALSE;
/* Code to actually dissect the packets */
static int
-dissect_epl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_epl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 epl_mtyp, epl_src, epl_dest;
const gchar *src_str, *dest_str;
diff --git a/epan/dissectors/packet-epl_v1.c b/epan/dissectors/packet-epl_v1.c
index 502c93e361..9918a4ccdc 100644
--- a/epan/dissectors/packet-epl_v1.c
+++ b/epan/dissectors/packet-epl_v1.c
@@ -340,7 +340,7 @@ dissect_epl_v1_asnd(proto_tree *epl_v1_tree, tvbuff_t *tvb, gint offset)
/* Code to actually dissect the packets */
static int
-dissect_epl_v1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_epl_v1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 epl_v1_service, epl_v1_dest, epl_v1_src, epl_v1_ainv_ch, epl_v1_asnd_ch;
gint offset;
diff --git a/epan/dissectors/packet-epmd.c b/epan/dissectors/packet-epmd.c
index 6cae4fee0f..1d9f1257ad 100644
--- a/epan/dissectors/packet-epmd.c
+++ b/epan/dissectors/packet-epmd.c
@@ -309,7 +309,7 @@ check_epmd(tvbuff_t *tvb) {
}
static int
-dissect_epmd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_epmd(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_tree *epmd_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-esio.c b/epan/dissectors/packet-esio.c
index 1629420ed4..497e0b793f 100644
--- a/epan/dissectors/packet-esio.c
+++ b/epan/dissectors/packet-esio.c
@@ -115,7 +115,7 @@ is_esio_pdu(tvbuff_t *tvb)
/*Dissect the telegram*/
static int
-dissect_esio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_esio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
diff --git a/epan/dissectors/packet-etch.c b/epan/dissectors/packet-etch.c
index b6f8f2043f..9cb204a9c0 100644
--- a/epan/dissectors/packet-etch.c
+++ b/epan/dissectors/packet-etch.c
@@ -764,7 +764,7 @@ get_etch_message_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
* main dissector function for the etch protocol
*/
static int
-dissect_etch(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_etch(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_length(tvb) < 4) {
/* Too small for an etch packet. */
diff --git a/epan/dissectors/packet-fcip.c b/epan/dissectors/packet-fcip.c
index 07ba509315..7b5ad5a18f 100644
--- a/epan/dissectors/packet-fcip.c
+++ b/epan/dissectors/packet-fcip.c
@@ -525,7 +525,7 @@ dissect_fcip_handle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_fcip_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fcip_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissect_fcip (tvb, pinfo, tree, TRUE));
}
diff --git a/epan/dissectors/packet-fcoib.c b/epan/dissectors/packet-fcoib.c
index 951ec31690..d01fe940f8 100644
--- a/epan/dissectors/packet-fcoib.c
+++ b/epan/dissectors/packet-fcoib.c
@@ -158,7 +158,7 @@ manual_addr_match(packet_info *pinfo) {
}
static gboolean
-dissect_fcoib(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fcoib(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint crc_offset;
gint eof_offset;
diff --git a/epan/dissectors/packet-ff.c b/epan/dissectors/packet-ff.c
index 97cf21eb61..126ffb9a24 100644
--- a/epan/dissectors/packet-ff.c
+++ b/epan/dissectors/packet-ff.c
@@ -13024,7 +13024,7 @@ get_ff_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
static int
-dissect_ff_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ff_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
*
@@ -13059,7 +13059,7 @@ dissect_ff_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static int
-dissect_ff_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ff_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint32 length;
diff --git a/epan/dissectors/packet-fix.c b/epan/dissectors/packet-fix.c
index 05e84945a8..30d3046789 100644
--- a/epan/dissectors/packet-fix.c
+++ b/epan/dissectors/packet-fix.c
@@ -426,7 +426,7 @@ dissect_fix(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* Code to actually dissect the packets */
static gboolean
-dissect_fix_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fix_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conv;
diff --git a/epan/dissectors/packet-flip.c b/epan/dissectors/packet-flip.c
index cb39b6c1af..e7a39dbb1f 100644
--- a/epan/dissectors/packet-flip.c
+++ b/epan/dissectors/packet-flip.c
@@ -340,7 +340,7 @@ is_payload_rtcp(tvbuff_t *tvb)
/* Protocol dissection */
static int
-dissect_flip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_flip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *item;
proto_item *ti;
diff --git a/epan/dissectors/packet-fmtp.c b/epan/dissectors/packet-fmtp.c
index dd933f75ec..2235accbc7 100644
--- a/epan/dissectors/packet-fmtp.c
+++ b/epan/dissectors/packet-fmtp.c
@@ -134,7 +134,7 @@ get_fmtp_message_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static gboolean
-dissect_fmtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fmtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
* Check that packet looks like FMTP before going further
diff --git a/epan/dissectors/packet-fractalgeneratorprotocol.c b/epan/dissectors/packet-fractalgeneratorprotocol.c
index b0e3e5d1df..7f0b1553aa 100644
--- a/epan/dissectors/packet-fractalgeneratorprotocol.c
+++ b/epan/dissectors/packet-fractalgeneratorprotocol.c
@@ -168,7 +168,7 @@ dissect_fractalgeneratorprotocol_message(tvbuff_t *message_tvb, packet_info *pin
}
static int
-dissect_fractalgeneratorprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fractalgeneratorprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *fractalgeneratorprotocol_item;
proto_tree *fractalgeneratorprotocol_tree;
diff --git a/epan/dissectors/packet-gadu-gadu.c b/epan/dissectors/packet-gadu-gadu.c
index d876c384b5..28cf7af35e 100644
--- a/epan/dissectors/packet-gadu-gadu.c
+++ b/epan/dissectors/packet-gadu-gadu.c
@@ -1893,7 +1893,7 @@ get_gadu_gadu_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_gadu_gadu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_gadu_gadu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (pinfo->srcport == pinfo->match_uint && pinfo->destport != pinfo->match_uint)
pinfo->p2p_dir = P2P_DIR_RECV;
diff --git a/epan/dissectors/packet-gdsdb.c b/epan/dissectors/packet-gdsdb.c
index 86ab1f25d4..2c5759138f 100644
--- a/epan/dissectors/packet-gdsdb.c
+++ b/epan/dissectors/packet-gdsdb.c
@@ -1235,7 +1235,7 @@ static int (*gdsdb_handle_opcode[])(tvbuff_t *tvb, packet_info *pinfo, proto_tre
};
static int
-dissect_gdsdb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_gdsdb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *gdsdb_tree;
diff --git a/epan/dissectors/packet-ged125.c b/epan/dissectors/packet-ged125.c
index 33bbaef978..c5c4e3686a 100644
--- a/epan/dissectors/packet-ged125.c
+++ b/epan/dissectors/packet-ged125.c
@@ -1273,7 +1273,7 @@ dissect_ged125_base_messages(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree
}
static int
-dissect_ged125(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ged125(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint size;
guint32 message_type;
diff --git a/epan/dissectors/packet-giop.c b/epan/dissectors/packet-giop.c
index d99c462387..4be5c04c3d 100644
--- a/epan/dissectors/packet-giop.c
+++ b/epan/dissectors/packet-giop.c
@@ -4069,11 +4069,11 @@ get_giop_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static gboolean
-dissect_giop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
+dissect_giop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void *);
gboolean dissect_giop(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
- return dissect_giop_heur(tvb, pinfo, tree);
+ return dissect_giop_heur(tvb, pinfo, tree, NULL);
}
@@ -4083,7 +4083,7 @@ dissect_giop_tcp (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
if ( tvb_memeql(tvb, 0, GIOP_MAGIC ,4) != 0) {
if ( tvb_memeql(tvb, 0, ZIOP_MAGIC ,4) == 0)
- dissect_ziop_heur(tvb, pinfo, tree);
+ dissect_ziop_heur(tvb, pinfo, tree, NULL);
return;
}
@@ -4093,7 +4093,7 @@ dissect_giop_tcp (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
}
static gboolean
-dissect_giop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
+dissect_giop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_) {
guint tot_len;
diff --git a/epan/dissectors/packet-glbp.c b/epan/dissectors/packet-glbp.c
index e90f8843ac..ed70a505a5 100644
--- a/epan/dissectors/packet-glbp.c
+++ b/epan/dissectors/packet-glbp.c
@@ -392,7 +392,7 @@ test_glbp(tvbuff_t *tvb, packet_info *pinfo)
}
static int
-dissect_glbp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_glbp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if ( !test_glbp(tvb, pinfo) ) {
return 0;
diff --git a/epan/dissectors/packet-gmhdr.c b/epan/dissectors/packet-gmhdr.c
index 136d933147..cd613fc6dc 100644
--- a/epan/dissectors/packet-gmhdr.c
+++ b/epan/dissectors/packet-gmhdr.c
@@ -216,7 +216,7 @@ dissect_gmhdr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_gmtimestamp_trailer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_gmtimestamp_trailer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
proto_tree *ti;
guint tvblen, trailer_len = 18;
@@ -272,7 +272,7 @@ dissect_gmtimestamp_trailer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *t
}
static int
-dissect_gmtrailer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_gmtrailer(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
proto_tree *ti;
guint tvblen, length;
diff --git a/epan/dissectors/packet-gopher.c b/epan/dissectors/packet-gopher.c
index 6d3c0058ef..f3ae8d575d 100644
--- a/epan/dissectors/packet-gopher.c
+++ b/epan/dissectors/packet-gopher.c
@@ -130,7 +130,7 @@ find_dir_tokens(tvbuff_t *tvb, gint name_start, gint *sel_start, gint *host_star
/* Dissect the packets */
static int
-dissect_gopher(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_gopher(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_item *ti;
proto_tree *gopher_tree, *dir_tree = NULL;
gboolean client = is_client(pinfo);
diff --git a/epan/dissectors/packet-gpef.c b/epan/dissectors/packet-gpef.c
index c3fe7557e8..0f28bf6579 100644
--- a/epan/dissectors/packet-gpef.c
+++ b/epan/dissectors/packet-gpef.c
@@ -112,7 +112,7 @@ dissect_gpef_efskey(tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *p
/* MS-GPEF section 2.2.1.2.1 */
static int
-dissect_gpef_efsblob(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_gpef_efsblob(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
int offset = 0;
proto_tree *tree = NULL;
diff --git a/epan/dissectors/packet-gsm_a_bssmap.c b/epan/dissectors/packet-gsm_a_bssmap.c
index 89d6d8dcae..ce1f4a1bad 100644
--- a/epan/dissectors/packet-gsm_a_bssmap.c
+++ b/epan/dissectors/packet-gsm_a_bssmap.c
@@ -1964,7 +1964,7 @@ be_l3_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offs
else if ((cell_discriminator & 0x0f) < 13) {
/* UMTS or CDMA 2000 */
- dissect_rrc_HandoverToUTRANCommand_PDU(l3_tvb, g_pinfo, g_tree);
+ dissect_rrc_HandoverToUTRANCommand_PDU(l3_tvb, g_pinfo, g_tree, NULL);
}
else{
proto_tree_add_text(tree, l3_tvb, curr_offset, len, "Unrecognised Cell Discriminator %x",cell_discriminator);
@@ -3217,7 +3217,7 @@ be_src_rnc_to_tar_rnc_umts(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _
* RANAP specification 3GPP TS 25.413, excluding RANAP tag
*/
container_tvb = tvb_new_subset(tvb, curr_offset, len, len);
- dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer_PDU(container_tvb, g_pinfo , tree);
+ dissect_ranap_SourceRNC_ToTargetRNC_TransparentContainer_PDU(container_tvb, g_pinfo, tree, NULL);
return(len);
}
@@ -3334,7 +3334,7 @@ be_inter_sys_inf(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint3
new_tvb = tvb_new_subset(tvb, offset, len, len);
if (new_tvb) {
- dissect_ranap_InterSystemInformation_TransparentContainer_PDU(new_tvb, pinfo, tree);
+ dissect_ranap_InterSystemInformation_TransparentContainer_PDU(new_tvb, pinfo, tree, NULL);
}
return(len);
@@ -4513,7 +4513,7 @@ be_fe_inter_rat_handover_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinf
/* Octets 3-n are encoded as Inter RAT Handover Info as defined in 3GPP TS 25.331 */
container_tvb = tvb_new_subset(tvb, offset, len, len);
- dissect_rrc_InterRATHandoverInfo_PDU(container_tvb, g_pinfo , tree);
+ dissect_rrc_InterRATHandoverInfo_PDU(container_tvb, g_pinfo, tree, NULL);
return len;
}
diff --git a/epan/dissectors/packet-gsm_abis_oml.c b/epan/dissectors/packet-gsm_abis_oml.c
index 85433c5f04..ffba8a523a 100644
--- a/epan/dissectors/packet-gsm_abis_oml.c
+++ b/epan/dissectors/packet-gsm_abis_oml.c
@@ -1809,7 +1809,7 @@ dissect_oml_manuf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
static int
-dissect_abis_oml(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_abis_oml(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *oml_tree;
diff --git a/epan/dissectors/packet-gssapi.c b/epan/dissectors/packet-gssapi.c
index 1160eec93b..f7fb88300a 100644
--- a/epan/dissectors/packet-gssapi.c
+++ b/epan/dissectors/packet-gssapi.c
@@ -520,7 +520,7 @@ dissect_gssapi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_gssapi_verf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_gssapi_verf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_gssapi_work(tvb, pinfo, tree, TRUE);
}
@@ -611,7 +611,7 @@ wrap_dissect_gssapi_verf(tvbuff_t *tvb, int offset, packet_info *pinfo,
auth_tvb = tvb_new_subset_remaining(tvb, offset);
- return dissect_gssapi_verf(auth_tvb, pinfo, tree);
+ return dissect_gssapi_verf(auth_tvb, pinfo, tree, NULL);
}
tvbuff_t *
diff --git a/epan/dissectors/packet-gtp.c b/epan/dissectors/packet-gtp.c
index 01523433e1..7c0d57164c 100644
--- a/epan/dissectors/packet-gtp.c
+++ b/epan/dissectors/packet-gtp.c
@@ -4544,7 +4544,7 @@ decode_qos_umts(tvbuff_t * tvb, int offset, proto_tree * tree, const gchar * qos
/* Diameter 3GPP AVP Code: 5 3GPP-GPRS Negotiated QoS profile */
static int
-dissect_diameter_3gpp_qosprofile(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+dissect_diameter_3gpp_qosprofile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
decode_qos_umts(tvb, 0, tree, "UMTS GTP QoS Profile", 3);
return tvb_length(tvb);
@@ -5939,7 +5939,7 @@ decode_gtp_mbms_prot_conf_opt(tvbuff_t * tvb, int offset, packet_info * pinfo _U
*/
/* Used for Diameter */
static int
-dissect_gtp_mbms_ses_dur(tvbuff_t * tvb _U_, packet_info * pinfo _U_, proto_tree * tree _U_)
+dissect_gtp_mbms_ses_dur(tvbuff_t * tvb, packet_info * pinfo _U_, proto_tree * tree, void *data _U_)
{
int offset = 0;
@@ -5992,7 +5992,7 @@ decode_gtp_mbms_ses_dur(tvbuff_t * tvb, int offset, packet_info * pinfo _U_, pro
* MBMS Service Area
*/
static int
-dissect_gtp_3gpp_mbms_service_area(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
+dissect_gtp_3gpp_mbms_service_area(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_) {
int offset = 0;
guint8 no_of_mbms_sa_codes;
@@ -6042,7 +6042,7 @@ decode_gtp_mbms_sa(tvbuff_t * tvb, int offset, packet_info * pinfo _U_, proto_tr
proto_tree_add_item(ext_tree, hf_gtp_ext_length, tvb, offset, 2, ENC_BIG_ENDIAN);
offset = offset + 2;
next_tvb = tvb_new_subset(tvb, offset, length-3, length-3);
- dissect_gtp_3gpp_mbms_service_area(next_tvb, pinfo,ext_tree);
+ dissect_gtp_3gpp_mbms_service_area(next_tvb, pinfo, ext_tree, NULL);
return 3 + length;
@@ -6295,7 +6295,7 @@ decode_gtp_mbms_ses_id_rep_no(tvbuff_t * tvb, int offset, packet_info * pinfo _U
*/
/* Used for Diameter */
static int
-dissect_gtp_mbms_time_to_data_tr(tvbuff_t * tvb _U_, packet_info * pinfo _U_, proto_tree * tree _U_)
+dissect_gtp_mbms_time_to_data_tr(tvbuff_t * tvb, packet_info * pinfo _U_, proto_tree * tree, void *data _U_)
{
int offset = 0;
@@ -7612,9 +7612,9 @@ decode_gtp_data_req(tvbuff_t * tvb, int offset, packet_info * pinfo _U_, proto_t
/* XXX this is for release 6, may not work for higher releases */
if(format==1) {
if(rel_id == 6){
- dissect_gprscdr_GPRSCallEventRecord_PDU(next_tvb, pinfo, cdr_dr_tree);
+ dissect_gprscdr_GPRSCallEventRecord_PDU(next_tvb, pinfo, cdr_dr_tree, NULL);
}else if(rel_id == 8){
- dissect_gprscdr_GPRSRecord_PDU(next_tvb, pinfo, cdr_dr_tree);
+ dissect_gprscdr_GPRSRecord_PDU(next_tvb, pinfo, cdr_dr_tree, NULL);
}
} else {
/* Do we have a dissector regestering for this data format? */
diff --git a/epan/dissectors/packet-gtpv2.c b/epan/dissectors/packet-gtpv2.c
index 3b0cfc6f40..296c1ab9f0 100644
--- a/epan/dissectors/packet-gtpv2.c
+++ b/epan/dissectors/packet-gtpv2.c
@@ -1948,7 +1948,7 @@ static const value_string geographic_location_type_vals[] = {
};
static int
-dissect_diameter_3gpp_uli(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_diameter_3gpp_uli(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
guint length;
@@ -3767,7 +3767,7 @@ dissect_gtpv2_F_container(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, p
case 3:
/* E-UTRAN transparent container */
tvb_new = tvb_new_subset_remaining(tvb, offset);
- dissect_s1ap_ENB_StatusTransfer_TransparentContainer_PDU(tvb_new, pinfo, tree);
+ dissect_s1ap_ENB_StatusTransfer_TransparentContainer_PDU(tvb_new, pinfo, tree, NULL);
return;
default:
break;
@@ -3922,7 +3922,7 @@ dissect_gtpv2_target_id(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, pro
* "Target RNC-ID" (numerical value of 0x20) shall not be included (value in octet 5 specifies the target type).
*/
tvb_new = tvb_new_subset_remaining(tvb, offset);
- dissect_ranap_TargetRNC_ID_PDU(tvb_new, pinfo, tree);
+ dissect_ranap_TargetRNC_ID_PDU(tvb_new, pinfo, tree, NULL);
return;
break;
case 1:
diff --git a/epan/dissectors/packet-gvcp.c b/epan/dissectors/packet-gvcp.c
index 38311a21af..181f902ddf 100644
--- a/epan/dissectors/packet-gvcp.c
+++ b/epan/dissectors/packet-gvcp.c
@@ -107,7 +107,7 @@ static const value_string opcode_short_names[] = {
};
static int
-dissect_gvcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_gvcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 packet_type, packet_opcode, packet_plsize;
emem_strbuf_t *info;
diff --git a/epan/dissectors/packet-h1.c b/epan/dissectors/packet-h1.c
index e17e3da38c..0c6254b219 100644
--- a/epan/dissectors/packet-h1.c
+++ b/epan/dissectors/packet-h1.c
@@ -93,7 +93,7 @@ static gint ett_org = -1;
static gint ett_response = -1;
static gint ett_empty = -1;
-static gboolean dissect_h1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_h1(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tvbuff_t *next_tvb;
diff --git a/epan/dissectors/packet-h264.c b/epan/dissectors/packet-h264.c
index 1c7a18ba60..3846274b43 100644
--- a/epan/dissectors/packet-h264.c
+++ b/epan/dissectors/packet-h264.c
@@ -1948,7 +1948,7 @@ static const int *profile_fields[] = {
};
static int
-dissect_h264_par_profile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_h264_par_profile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -1965,7 +1965,7 @@ static const int *AdditionalModesSupported_fields[] = {
};
static int
-dissect_h264_par_AdditionalModesSupported(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_h264_par_AdditionalModesSupported(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -1986,7 +1986,7 @@ static const int *ProfileIOP_fields[] = {
static int
-dissect_h264_ProfileIOP(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_h264_ProfileIOP(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
int offset = 0;
@@ -2018,7 +2018,7 @@ static const value_string h264_par_level_values[] = {
};
static int
-dissect_h264_par_level(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree _U_)
+dissect_h264_par_level(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree _U_, void *data _U_)
{
int offset = 0;
guint16 lvl;
@@ -2038,7 +2038,7 @@ dissect_h264_par_level(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree _U_)
}
static int
-dissect_h264_par_DecoderConfigurationInformation(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_)
+dissect_h264_par_DecoderConfigurationInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
asn1_ctx_t *actx;
diff --git a/epan/dissectors/packet-hdcp.c b/epan/dissectors/packet-hdcp.c
index 936319815f..95da1d43ee 100644
--- a/epan/dissectors/packet-hdcp.c
+++ b/epan/dissectors/packet-hdcp.c
@@ -129,7 +129,7 @@ hdcp_init(void)
static int
-dissect_hdcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_hdcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 addr, reg;
proto_item *pi;
diff --git a/epan/dissectors/packet-hdcp2.c b/epan/dissectors/packet-hdcp2.c
index 1c5b5261d7..8978ebfc09 100644
--- a/epan/dissectors/packet-hdcp2.c
+++ b/epan/dissectors/packet-hdcp2.c
@@ -123,7 +123,7 @@ static const msg_info_t msg_info[] = {
static int
-dissect_hdcp2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_hdcp2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
msg_info_t *mi;
proto_item *pi;
diff --git a/epan/dissectors/packet-hsrp.c b/epan/dissectors/packet-hsrp.c
index e9b380b018..8d0e39285c 100644
--- a/epan/dissectors/packet-hsrp.c
+++ b/epan/dissectors/packet-hsrp.c
@@ -325,7 +325,7 @@ static const value_string hsrp2_md5_algorithm_vals[] = {
};
static int
-dissect_hsrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_hsrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tvbuff_t *next_tvb;
gchar dst[16];
diff --git a/epan/dissectors/packet-icep.c b/epan/dissectors/packet-icep.c
index a11103f4c3..da768302c7 100644
--- a/epan/dissectors/packet-icep.c
+++ b/epan/dissectors/packet-icep.c
@@ -1119,7 +1119,7 @@ static void dissect_icep_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
}
/* entry point */
-static gboolean dissect_icep_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_icep_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
DBG0("triggered\n");
@@ -1136,7 +1136,7 @@ static gboolean dissect_icep_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
return TRUE;
}
-static gboolean dissect_icep_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_icep_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
DBG0("triggered\n");
diff --git a/epan/dissectors/packet-icmpv6.c b/epan/dissectors/packet-icmpv6.c
index 2150fd26c6..d7d2d6bd06 100644
--- a/epan/dissectors/packet-icmpv6.c
+++ b/epan/dissectors/packet-icmpv6.c
@@ -3121,7 +3121,7 @@ dissect_mldrv2( tvbuff_t *tvb, guint32 offset, packet_info *pinfo _U_, proto_tre
static int
-dissect_icmpv6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_icmpv6(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *icmp6_tree = NULL, *flag_tree = NULL;
proto_item *ti = NULL, *hidden_item, *checksum_item = NULL, *code_item = NULL, *ti_flag = NULL;
diff --git a/epan/dissectors/packet-icq.c b/epan/dissectors/packet-icq.c
index 91ff88ec07..782e3566fd 100644
--- a/epan/dissectors/packet-icq.c
+++ b/epan/dissectors/packet-icq.c
@@ -1696,7 +1696,7 @@ static void dissect_icqv5(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_icq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_icq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int version;
diff --git a/epan/dissectors/packet-ieee80211-netmon.c b/epan/dissectors/packet-ieee80211-netmon.c
index 140a9c7977..ace88ec856 100644
--- a/epan/dissectors/packet-ieee80211-netmon.c
+++ b/epan/dissectors/packet-ieee80211-netmon.c
@@ -69,7 +69,7 @@ static gint ett_netmon_802_11_op_mode = -1;
static dissector_handle_t ieee80211_handle;
static int
-dissect_netmon_802_11(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_netmon_802_11(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *wlan_tree, *opmode_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-ifcp.c b/epan/dissectors/packet-ifcp.c
index 0844bf8901..ad2f0f0a53 100644
--- a/epan/dissectors/packet-ifcp.c
+++ b/epan/dissectors/packet-ifcp.c
@@ -529,7 +529,7 @@ dissect_ifcp_handle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_ifcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ifcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if(!ifcp_header_test(tvb, 0)){
return FALSE;
diff --git a/epan/dissectors/packet-image-gif.c b/epan/dissectors/packet-image-gif.c
index 0a9ae02919..dbffbf3e48 100644
--- a/epan/dissectors/packet-image-gif.c
+++ b/epan/dissectors/packet-image-gif.c
@@ -135,7 +135,7 @@ static gint ett_image = -1;
*/
static gint
-dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_gif(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *gif_tree; /* Main GIF tree */
@@ -423,9 +423,9 @@ dissect_gif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
}
static gboolean
-dissect_gif_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_gif_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_gif(tvb, pinfo, tree) > 0;
+ return dissect_gif(tvb, pinfo, tree, NULL) > 0;
}
diff --git a/epan/dissectors/packet-image-jfif.c b/epan/dissectors/packet-image-jfif.c
index 81b2f61f09..fc80afface 100644
--- a/epan/dissectors/packet-image-jfif.c
+++ b/epan/dissectors/packet-image-jfif.c
@@ -757,7 +757,7 @@ process_app2_segment(proto_tree *tree, tvbuff_t *tvb, guint32 len,
}
static gint
-dissect_jfif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_jfif(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *subtree = NULL;
proto_item *ti = NULL;
@@ -855,9 +855,9 @@ dissect_jfif(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
}
static gboolean
-dissect_jfif_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_jfif_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_jfif(tvb, pinfo, tree) > 0;
+ return dissect_jfif(tvb, pinfo, tree, NULL) > 0;
}
/****************** Register the protocol with Wireshark ******************/
diff --git a/epan/dissectors/packet-image-png.c b/epan/dissectors/packet-image-png.c
index ccf7dd4363..9626ab01fd 100644
--- a/epan/dissectors/packet-image-png.c
+++ b/epan/dissectors/packet-image-png.c
@@ -219,7 +219,7 @@ static const true_false_string png_chunk_stc = {
static gint
-dissect_png(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_png(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_tree *tree = NULL;
proto_item *ti;
@@ -426,9 +426,9 @@ proto_register_png(void)
new_register_dissector("png", dissect_png, proto_png);
}
-static gboolean dissect_png_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_png_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_png(tvb, pinfo, tree) > 0;
+ return dissect_png(tvb, pinfo, tree, NULL) > 0;
}
void
diff --git a/epan/dissectors/packet-infiniband_sdp.c b/epan/dissectors/packet-infiniband_sdp.c
index b1c9419b03..75d9a8ae26 100644
--- a/epan/dissectors/packet-infiniband_sdp.c
+++ b/epan/dissectors/packet-infiniband_sdp.c
@@ -173,7 +173,7 @@ static const range_string mid_meanings[] = {
/* Code to actually dissect the packets */
static int
-dissect_ib_sdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ib_sdp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int local_offset = 0;
proto_item *SDP_header_item = NULL;
diff --git a/epan/dissectors/packet-ipmi-session.c b/epan/dissectors/packet-ipmi-session.c
index 66110aa56f..d8adcdba39 100644
--- a/epan/dissectors/packet-ipmi-session.c
+++ b/epan/dissectors/packet-ipmi-session.c
@@ -111,7 +111,7 @@ static const true_false_string ipmi_payload_enc_val = {
};
static int
-dissect_ipmi_session(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ipmi_session(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *sess_tree = NULL, *s_tree;
proto_item *ti = NULL;
diff --git a/epan/dissectors/packet-ipsec-tcp.c b/epan/dissectors/packet-ipsec-tcp.c
index b0235667bf..fb9ab2436a 100644
--- a/epan/dissectors/packet-ipsec-tcp.c
+++ b/epan/dissectors/packet-ipsec-tcp.c
@@ -107,7 +107,7 @@ packet_is_tcpencap(tvbuff_t *tvb, packet_info *pinfo, guint32 offset)
* as supported by the cisco vpn3000 concentrator series
*/
static int
-dissect_tcpencap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tcpencap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *tcpencap_tree = NULL;
proto_tree *tcpencap_unknown_tree = NULL;
diff --git a/epan/dissectors/packet-iscsi.c b/epan/dissectors/packet-iscsi.c
index 7262574be5..f00234a42c 100644
--- a/epan/dissectors/packet-iscsi.c
+++ b/epan/dissectors/packet-iscsi.c
@@ -2450,7 +2450,7 @@ dissect_iscsi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean chec
We still check that the PDU header looks sane though.
*/
static int
-dissect_iscsi_handle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_iscsi_handle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
return dissect_iscsi(tvb, pinfo, tree, FALSE);
}
@@ -2460,7 +2460,7 @@ dissect_iscsi_handle(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
false positives.
*/
static gboolean
-dissect_iscsi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_iscsi_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
guint32 available_bytes = tvb_length(tvb);
/* quick check to see if the packet is long enough to contain the
diff --git a/epan/dissectors/packet-isns.c b/epan/dissectors/packet-isns.c
index 886fb59422..4b4f675a68 100644
--- a/epan/dissectors/packet-isns.c
+++ b/epan/dissectors/packet-isns.c
@@ -702,7 +702,7 @@ get_isns_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_isns_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_isns_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint length = tvb_length(tvb);
guint16 isns_protocol_version;
@@ -733,7 +733,7 @@ dissect_isns_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_isns_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_isns_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint length = tvb_length(tvb);
guint16 isns_protocol_version;
diff --git a/epan/dissectors/packet-iso7816.c b/epan/dissectors/packet-iso7816.c
index a150236b9f..d05ff7bee6 100644
--- a/epan/dissectors/packet-iso7816.c
+++ b/epan/dissectors/packet-iso7816.c
@@ -401,7 +401,7 @@ dissect_iso7816_resp_apdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_iso7816(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_iso7816(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
proto_item *tree_ti = NULL;
diff --git a/epan/dissectors/packet-isup.c b/epan/dissectors/packet-isup.c
index 3158d739fc..9b524b6755 100644
--- a/epan/dissectors/packet-isup.c
+++ b/epan/dissectors/packet-isup.c
@@ -4907,7 +4907,7 @@ dissect_isup_application_transport_parameter(tvbuff_t *parameter_tvb, packet_inf
switch(aci16 & 0x7fff) {
case 3:
/* Charging ASE */
- dissect_charging_ase_ChargingMessageType_PDU(next_tvb, pinfo, parameter_tree);
+ dissect_charging_ase_ChargingMessageType_PDU(next_tvb, pinfo, parameter_tree, NULL);
break;
case 5:
/* dissect BAT ASE element, without transparent data (Q.765.5-200006) */
diff --git a/epan/dissectors/packet-iwarp-mpa.c b/epan/dissectors/packet-iwarp-mpa.c
index aae4c59319..5bcb71caf3 100644
--- a/epan/dissectors/packet-iwarp-mpa.c
+++ b/epan/dissectors/packet-iwarp-mpa.c
@@ -791,7 +791,7 @@ dissect_mpa_fpdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
* Main dissection routine.
*/
static gboolean
-dissect_iwarp_mpa(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_iwarp_mpa(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tvbuff_t *next_tvb = NULL;
conversation_t *conversation = NULL;
diff --git a/epan/dissectors/packet-jmirror.c b/epan/dissectors/packet-jmirror.c
index 81633ad19f..ea476b102a 100644
--- a/epan/dissectors/packet-jmirror.c
+++ b/epan/dissectors/packet-jmirror.c
@@ -107,7 +107,7 @@ get_heuristic_handle(tvbuff_t *tvb)
/* Heuristic UDP dissector called by Wireshark looking for embedded IPv4, IPv6 or L2TP/HDLC Jmirror packets */
static int
-dissect_jmirror(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_jmirror(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
dissector_handle_t dissector_handle;
diff --git a/epan/dissectors/packet-jxta.c b/epan/dissectors/packet-jxta.c
index fd49ac4957..f20a5eaa81 100644
--- a/epan/dissectors/packet-jxta.c
+++ b/epan/dissectors/packet-jxta.c
@@ -197,19 +197,15 @@ typedef struct jxta_stream_conversation_data jxta_stream_conversation_data;
/**
* Prototypes
**/
-static gboolean dissect_jxta_UDP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
-static gboolean dissect_jxta_TCP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
-static gboolean dissect_jxta_SCTP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
-
-static int dissect_jxta_udp(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
-static int dissect_jxta_stream(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
+static int dissect_jxta_udp(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data);
+static int dissect_jxta_stream(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data);
static jxta_stream_conversation_data *get_tpt_conversation(packet_info * pinfo);
static conversation_t *get_peer_conversation(packet_info * pinfo, jxta_stream_conversation_data* tpt_conv_data, gboolean create);
static int dissect_jxta_welcome(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, address * found_addr, gboolean initiator);
static int dissect_jxta_message_framing(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, guint64 * content_length,
gchar ** content_type);
-static int dissect_jxta_message(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
+static int dissect_jxta_message(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data);
static int dissect_jxta_message_element_1(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, guint ns_count,
const gchar ** namespaces);
static int dissect_jxta_message_element_2(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, guint ns_count,
@@ -226,7 +222,7 @@ void proto_reg_handoff_jxta(void);
* @param tree The protocol tree.
* @return TRUE if the tvb contained JXTA data which was dissected otherwise FALSE
**/
-static gboolean dissect_jxta_UDP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static gboolean dissect_jxta_UDP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
/* This is a heuristic dissector, which means we get all the UDP
* traffic not sent to a known dissector and not claimed by
@@ -242,7 +238,7 @@ static gboolean dissect_jxta_UDP_heur(tvbuff_t * tvb, packet_info * pinfo, proto
save_desegment_offset = pinfo->desegment_offset;
save_desegment_len = pinfo->desegment_len;
- ret = dissect_jxta_udp(tvb, pinfo, tree);
+ ret = dissect_jxta_udp(tvb, pinfo, tree, NULL);
/* g_message( "%d Heuristic UDP Dissection : %d", pinfo->fd->num, ret ); */
@@ -280,7 +276,7 @@ static gboolean dissect_jxta_UDP_heur(tvbuff_t * tvb, packet_info * pinfo, proto
* @param tree The protocol tree.
* @return TRUE if the tvb contained JXTA data which was dissected otherwise FALSE
**/
-static gboolean dissect_jxta_TCP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static gboolean dissect_jxta_TCP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
/* This is a heuristic dissector, which means we get all the TCP
* traffic not sent to a known dissector and not claimed by
@@ -292,7 +288,7 @@ static gboolean dissect_jxta_TCP_heur(tvbuff_t * tvb, packet_info * pinfo, proto
save_desegment_offset = pinfo->desegment_offset;
save_desegment_len = pinfo->desegment_len;
- ret = dissect_jxta_stream(tvb, pinfo, tree);
+ ret = dissect_jxta_stream(tvb, pinfo, tree, NULL);
/* g_message( "%d Heuristic TCP Dissection : %d", pinfo->fd->num, ret ); */
@@ -340,7 +336,7 @@ static gboolean dissect_jxta_TCP_heur(tvbuff_t * tvb, packet_info * pinfo, proto
* @param tree The protocol tree.
* @return TRUE if the tvb contained JXTA data which was dissected otherwise FALSE
**/
-static gboolean dissect_jxta_SCTP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static gboolean dissect_jxta_SCTP_heur(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
/* This is a heuristic dissector, which means we get all the SCTP
* traffic not sent to a known dissector and not claimed by
@@ -352,7 +348,7 @@ static gboolean dissect_jxta_SCTP_heur(tvbuff_t * tvb, packet_info * pinfo, prot
save_desegment_offset = pinfo->desegment_offset;
save_desegment_len = pinfo->desegment_len;
- ret = dissect_jxta_stream(tvb, pinfo, tree);
+ ret = dissect_jxta_stream(tvb, pinfo, tree, NULL);
/* g_message( "%d Heuristic SCTP Dissection : %d", pinfo->fd->num, ret ); */
@@ -398,7 +394,7 @@ static gboolean dissect_jxta_SCTP_heur(tvbuff_t * tvb, packet_info * pinfo, prot
* the packet was not recognized as a JXTA packet and negative if the
* dissector needs more bytes in order to process a PDU.
**/
-static int dissect_jxta_udp(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static int dissect_jxta_udp(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
guint offset = 0;
guint available;
@@ -511,7 +507,7 @@ static int dissect_jxta_udp(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tr
* the packet was not recognized as a JXTA packet and negative if the
* dissector needs more bytes in order to process a PDU.
**/
-static int dissect_jxta_stream(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static int dissect_jxta_stream(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
guint offset = 0;
guint available = tvb_reported_length_remaining(tvb, offset);
@@ -1124,7 +1120,7 @@ static int dissect_jxta_message_framing(tvbuff_t * tvb, packet_info * pinfo, pro
* the packet was not recognized as a JXTA packet and negative if the
* dissector needs more bytes in order to process a PDU.
**/
-static int dissect_jxta_message(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+static int dissect_jxta_message(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
gint complete_messages = 0;
guint offset = 0;
diff --git a/epan/dissectors/packet-kerberos.c b/epan/dissectors/packet-kerberos.c
index 0e1ad6caf8..efc57c4b5e 100644
--- a/epan/dissectors/packet-kerberos.c
+++ b/epan/dissectors/packet-kerberos.c
@@ -4579,8 +4579,6 @@ dissect_krb5_ERROR(proto_tree *tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx
-static gint dissect_kerberos_udp(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree);
static void dissect_kerberos_tcp(tvbuff_t *tvb, packet_info *pinfo,
proto_tree *tree);
static gint dissect_kerberos_common(tvbuff_t *tvb, packet_info *pinfo,
@@ -4605,7 +4603,7 @@ kerberos_output_keytype(void)
}
static gint
-dissect_kerberos_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_kerberos_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Some weird kerberos implementation apparently do krb4 on the krb5 port.
Since all (except weirdo transarc krb4 stuff) use
diff --git a/epan/dissectors/packet-kerberos4.c b/epan/dissectors/packet-kerberos4.c
index 2d4b787ba0..11ac444f63 100644
--- a/epan/dissectors/packet-kerberos4.c
+++ b/epan/dissectors/packet-kerberos4.c
@@ -282,7 +282,7 @@ dissect_krb4_auth_msg_type(packet_info *pinfo, proto_tree *parent_tree, tvbuff_t
}
static gboolean
-dissect_krb4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_krb4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_tree *tree;
proto_item *item;
diff --git a/epan/dissectors/packet-kingfisher.c b/epan/dissectors/packet-kingfisher.c
index 249b843e01..9be718a7d6 100644
--- a/epan/dissectors/packet-kingfisher.c
+++ b/epan/dissectors/packet-kingfisher.c
@@ -320,7 +320,7 @@ dissect_kingfisher(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gboolean
static gboolean
-dissect_kingfisher_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_kingfisher_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean was_kingfisher;
@@ -343,7 +343,7 @@ dissect_kingfisher_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_kingfisher_conv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_kingfisher_conv(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_kingfisher(tvb, pinfo, tree, TRUE);
}
diff --git a/epan/dissectors/packet-kismet.c b/epan/dissectors/packet-kismet.c
index 96d299ea73..9c520453f4 100644
--- a/epan/dissectors/packet-kismet.c
+++ b/epan/dissectors/packet-kismet.c
@@ -54,7 +54,7 @@ void proto_reg_handoff_kismet(void);
void proto_register_kismet(void);
static gboolean
-dissect_kismet(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+dissect_kismet(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
gboolean is_request;
gboolean is_continuation;
diff --git a/epan/dissectors/packet-l2tp.c b/epan/dissectors/packet-l2tp.c
index e3791bd0ca..c4f41ad23b 100644
--- a/epan/dissectors/packet-l2tp.c
+++ b/epan/dissectors/packet-l2tp.c
@@ -2113,7 +2113,7 @@ process_l2tpv3_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int
* based on the control bit.
*/
static int
-dissect_l2tp_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_l2tp_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *l2tp_tree = NULL, *ctrl_tree;
proto_item *l2tp_item = NULL, *ti;
diff --git a/epan/dissectors/packet-lanforge.c b/epan/dissectors/packet-lanforge.c
index fe1ca41be3..4136357117 100644
--- a/epan/dissectors/packet-lanforge.c
+++ b/epan/dissectors/packet-lanforge.c
@@ -66,7 +66,7 @@ static gint ett_lanforge = -1;
static dissector_handle_t data_handle;
/* entry point */
-static gboolean dissect_lanforge(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_lanforge(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_item *tmp;
diff --git a/epan/dissectors/packet-laplink.c b/epan/dissectors/packet-laplink.c
index 406e5792c0..92f5712f15 100644
--- a/epan/dissectors/packet-laplink.c
+++ b/epan/dissectors/packet-laplink.c
@@ -74,7 +74,7 @@ static gboolean laplink_desegment = TRUE;
/* Code to actually dissect the packets - UDP */
static gint
-dissect_laplink_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_laplink_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_item *ti;
diff --git a/epan/dissectors/packet-ldp.c b/epan/dissectors/packet-ldp.c
index 4607625928..16ce253c38 100644
--- a/epan/dissectors/packet-ldp.c
+++ b/epan/dissectors/packet-ldp.c
@@ -2675,7 +2675,7 @@ dissect_ldp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_ldp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ldp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
* Make sure the first PDU has a version number of 1;
@@ -2909,7 +2909,7 @@ dissect_genpwid_fec_aai_type2_parameter(tvbuff_t *tvb, guint offset, proto_tree
}
static int
-dissect_ldp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ldp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
volatile gboolean first = TRUE;
volatile int offset = 0;
diff --git a/epan/dissectors/packet-ldss.c b/epan/dissectors/packet-ldss.c
index 02c74bfa27..d03dbdbdfb 100644
--- a/epan/dissectors/packet-ldss.c
+++ b/epan/dissectors/packet-ldss.c
@@ -805,7 +805,7 @@ is_broadcast(address* addr)
}
static int
-dissect_ldss (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ldss (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (is_broadcast(&pinfo->dl_dst) &&
pinfo->ipproto == IP_PROTO_UDP) {
diff --git a/epan/dissectors/packet-lisp-data.c b/epan/dissectors/packet-lisp-data.c
index 5d546dea86..5a03712077 100644
--- a/epan/dissectors/packet-lisp-data.c
+++ b/epan/dissectors/packet-lisp-data.c
@@ -80,7 +80,7 @@ static dissector_handle_t data_handle;
/* Code to actually dissect the packets */
static int
-dissect_lisp_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_lisp_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
guint8 flags;
diff --git a/epan/dissectors/packet-lisp.c b/epan/dissectors/packet-lisp.c
index 2a1ec05b25..183d89bef2 100644
--- a/epan/dissectors/packet-lisp.c
+++ b/epan/dissectors/packet-lisp.c
@@ -1508,7 +1508,7 @@ dissect_lisp_ecm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_tree
*/
static int
-dissect_lisp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_lisp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 type;
diff --git a/epan/dissectors/packet-lmp.c b/epan/dissectors/packet-lmp.c
index f20cec477d..d488edcf1e 100644
--- a/epan/dissectors/packet-lmp.c
+++ b/epan/dissectors/packet-lmp.c
@@ -652,7 +652,7 @@ static int lmp_class_to_subtree(int class)
*/
static int
-dissect_lmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_lmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_tree *lmp_tree = NULL, *ti, *ti2;
diff --git a/epan/dissectors/packet-lon.c b/epan/dissectors/packet-lon.c
index f3610a621d..41a1d6cb1d 100644
--- a/epan/dissectors/packet-lon.c
+++ b/epan/dissectors/packet-lon.c
@@ -193,7 +193,7 @@ static gint dissect_apdu(proto_tree *tree, packet_info *pinfo, tvbuff_t *tvb,
gint offset);
static gint
-dissect_lon(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_lon(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
diff --git a/epan/dissectors/packet-ltp.c b/epan/dissectors/packet-ltp.c
index 80d582ade9..95a7e86f2d 100644
--- a/epan/dissectors/packet-ltp.c
+++ b/epan/dissectors/packet-ltp.c
@@ -625,7 +625,7 @@ dissect_trailer_extn(proto_tree *ltp_tree, tvbuff_t *tvb,int frame_offset,int tr
static int
-dissect_ltp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ltp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *ltp_tree = NULL;
diff --git a/epan/dissectors/packet-mac-lte.c b/epan/dissectors/packet-mac-lte.c
index 8873c07823..495c9bd453 100644
--- a/epan/dissectors/packet-mac-lte.c
+++ b/epan/dissectors/packet-mac-lte.c
@@ -1218,7 +1218,7 @@ gboolean dissect_mac_lte_context_fields(struct mac_lte_info *p_mac_lte_info, tv
/* Heuristic dissector looks for supported framing protocol (see wiki page) */
static gboolean dissect_mac_lte_heur(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
gint offset = 0;
struct mac_lte_info *p_mac_lte_info;
diff --git a/epan/dissectors/packet-mactelnet.c b/epan/dissectors/packet-mactelnet.c
index 5c13ead97c..40b298ca3b 100644
--- a/epan/dissectors/packet-mactelnet.c
+++ b/epan/dissectors/packet-mactelnet.c
@@ -106,7 +106,7 @@ static const value_string controlpackettypenames[] = {
static int
-dissect_mactelnet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mactelnet(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *mactelnet_item;
proto_tree *mactelnet_tree;
diff --git a/epan/dissectors/packet-mbtcp.c b/epan/dissectors/packet-mbtcp.c
index ba29a668f6..b87241ffd8 100644
--- a/epan/dissectors/packet-mbtcp.c
+++ b/epan/dissectors/packet-mbtcp.c
@@ -371,7 +371,7 @@ get_mbtcp_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_mbtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mbtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Make sure there's at least enough data to determine its a Modbus packet */
if (!tvb_bytes_exist(tvb, 0, 8))
@@ -395,7 +395,7 @@ dissect_mbtcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_mbudp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mbudp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Make sure there's at least enough data to determine its a Modbus packet */
if (!tvb_bytes_exist(tvb, 0, 8))
@@ -446,7 +446,7 @@ dissect_mbtcp_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, guint8 f
/* Code to actually dissect the packets */
static int
-dissect_modbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_modbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *modbus_tree, *group_tree, *event_tree,
*event_item_tree, *device_objects_tree,
diff --git a/epan/dissectors/packet-mesh.c b/epan/dissectors/packet-mesh.c
index 5b7d520888..6babb27fe1 100644
--- a/epan/dissectors/packet-mesh.c
+++ b/epan/dissectors/packet-mesh.c
@@ -42,7 +42,7 @@ static gint ett_mesh = -1;
/* Code to actually dissect the packets */
static int
-dissect_mesh(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mesh(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
diff --git a/epan/dissectors/packet-mgcp.c b/epan/dissectors/packet-mgcp.c
index 33756c2d20..9e5dd81f18 100644
--- a/epan/dissectors/packet-mgcp.c
+++ b/epan/dissectors/packet-mgcp.c
@@ -328,7 +328,7 @@ static guint mgcp_call_hash(gconstpointer k)
/************************************************************************
* dissect_mgcp - The dissector for the Media Gateway Control Protocol
************************************************************************/
-static int dissect_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint sectionlen;
guint32 num_messages;
@@ -425,7 +425,7 @@ static int dissect_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/************************************************************************
* dissect_tpkt_mgcp - The dissector for the ASCII TPKT Media Gateway Control Protocol
************************************************************************/
-static int dissect_tpkt_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_tpkt_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 ascii_tpkt;
int offset = 0;
@@ -441,7 +441,7 @@ static int dissect_tpkt_mgcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
* It's not a ASCII TPKT packet
* in MGCP
*/
- offset = dissect_mgcp(tvb, pinfo, tree);
+ offset = dissect_mgcp(tvb, pinfo, tree, NULL);
}
else
{
diff --git a/epan/dissectors/packet-mikey.c b/epan/dissectors/packet-mikey.c
index a71de2f440..e261270681 100644
--- a/epan/dissectors/packet-mikey.c
+++ b/epan/dissectors/packet-mikey.c
@@ -1230,7 +1230,7 @@ dissect_payload(enum payload_t payload, mikey_t *mikey, tvbuff_t *tvb, packet_in
/* MIKEY dissector */
static int
-dissect_mikey(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mikey(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *mikey_tree = NULL;
diff --git a/epan/dissectors/packet-mim.c b/epan/dissectors/packet-mim.c
index 4f1a3743f8..66c9fb897c 100644
--- a/epan/dissectors/packet-mim.c
+++ b/epan/dissectors/packet-mim.c
@@ -118,12 +118,12 @@ static dissector_handle_t eth_dissector ;
#define FP_HEADER_SIZE (16)
-static int dissect_fp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree );
+static int dissect_fp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ );
void proto_reg_handoff_fabricpath(void);
static gboolean
-dissect_fp_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_fp_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 type = 0;
@@ -135,7 +135,7 @@ dissect_fp_heur (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
type = tvb_get_ntohs (tvb, 12);
if (type == ETHERTYPE_DCE) {
- dissect_fp (tvb, pinfo, tree);
+ dissect_fp (tvb, pinfo, tree, NULL);
return TRUE;
} else {
return FALSE;
@@ -194,7 +194,7 @@ fp_add_hmac (tvbuff_t *tvb, proto_tree *tree, int offset) {
}
/* FabricPath MiM Dissector */
static int
-dissect_fp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_fp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
proto_item *ti ;
proto_tree *fp_tree ;
diff --git a/epan/dissectors/packet-miop.c b/epan/dissectors/packet-miop.c
index 99c95a064f..3311d4d278 100644
--- a/epan/dissectors/packet-miop.c
+++ b/epan/dissectors/packet-miop.c
@@ -86,7 +86,7 @@ static gint ett_miop = -1;
static void dissect_miop (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
static gboolean
-dissect_miop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
+dissect_miop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_) {
guint tot_len;
diff --git a/epan/dissectors/packet-mmse.c b/epan/dissectors/packet-mmse.c
index 36834b36ad..a7f562511b 100644
--- a/epan/dissectors/packet-mmse.c
+++ b/epan/dissectors/packet-mmse.c
@@ -631,7 +631,7 @@ get_integer_value(tvbuff_t *tvb, guint offset, guint *byte_count)
/* Code to actually dissect the packets */
static gboolean
-dissect_mmse_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mmse_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 pdut;
diff --git a/epan/dissectors/packet-mndp.c b/epan/dissectors/packet-mndp.c
index 2541463ff8..65418e8d3a 100644
--- a/epan/dissectors/packet-mndp.c
+++ b/epan/dissectors/packet-mndp.c
@@ -273,7 +273,7 @@ dissect_mndp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
#endif
static int
-dissect_mndp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mndp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if ( !test_mndp(tvb) ) {
return 0;
diff --git a/epan/dissectors/packet-mojito.c b/epan/dissectors/packet-mojito.c
index f45148ec60..6fc104479d 100644
--- a/epan/dissectors/packet-mojito.c
+++ b/epan/dissectors/packet-mojito.c
@@ -634,7 +634,7 @@ dissect_mojito_find_value_response(tvbuff_t *tvb, packet_info *pinfo, proto_tree
}
static int
-dissect_mojito(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mojito(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *mojito_tree, *opcode_tree;
proto_item *ti, *opcode_item;
@@ -703,7 +703,7 @@ dissect_mojito(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
return tvb_length(tvb);
}
-static gboolean dissect_mojito_heuristic (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_mojito_heuristic (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
Test the overall length to make sure its at least 61 bytes (the header)
@@ -715,7 +715,7 @@ static gboolean dissect_mojito_heuristic (tvbuff_t *tvb, packet_info *pinfo, pro
(tvb_get_guint8(tvb, 16) == 68) &&
((tvb_get_letohl(tvb, 19) + 23) == tvb_reported_length(tvb)))
{
- dissect_mojito(tvb, pinfo, tree);
+ dissect_mojito(tvb, pinfo, tree, NULL);
return TRUE;
}
diff --git a/epan/dissectors/packet-moldudp.c b/epan/dissectors/packet-moldudp.c
index 206d2351c5..eec2947275 100644
--- a/epan/dissectors/packet-moldudp.c
+++ b/epan/dissectors/packet-moldudp.c
@@ -119,7 +119,7 @@ dissect_moldudp_msgblk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
/* Code to actually dissect the packets */
static int
-dissect_moldudp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_moldudp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *moldudp_tree;
diff --git a/epan/dissectors/packet-moldudp64.c b/epan/dissectors/packet-moldudp64.c
index c9c24c3286..1a7f9d588b 100644
--- a/epan/dissectors/packet-moldudp64.c
+++ b/epan/dissectors/packet-moldudp64.c
@@ -117,7 +117,7 @@ dissect_moldudp64_msgblk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
/* Code to actually dissect the packets */
static int
-dissect_moldudp64(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_moldudp64(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *moldudp64_tree;
diff --git a/epan/dissectors/packet-mp2t.c b/epan/dissectors/packet-mp2t.c
index b8b9615cc4..c8fe8f7e8e 100644
--- a/epan/dissectors/packet-mp2t.c
+++ b/epan/dissectors/packet-mp2t.c
@@ -1262,7 +1262,7 @@ dissect_mp2t( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
}
static gboolean
-heur_dissect_mp2t( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+heur_dissect_mp2t( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
guint offset = 0;
diff --git a/epan/dissectors/packet-mp4ves.c b/epan/dissectors/packet-mp4ves.c
index 280c0b5a55..761400be39 100644
--- a/epan/dissectors/packet-mp4ves.c
+++ b/epan/dissectors/packet-mp4ves.c
@@ -784,7 +784,7 @@ dissect_mp4ves(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* unsignedMax INTEGER(0..65535), -- Look for max
*/
static int
-dissect_mp4ves_par_profile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_)
+dissect_mp4ves_par_profile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_)
{
int offset = 0;
guint16 lvl;
@@ -803,7 +803,7 @@ dissect_mp4ves_par_profile(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tr
return offset;
}
static int
-dissect_mp4ves_par_video_object_type(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_)
+dissect_mp4ves_par_video_object_type(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_)
{
int offset = 0;
guint16 lvl;
@@ -823,7 +823,7 @@ dissect_mp4ves_par_video_object_type(tvbuff_t *tvb, packet_info *pinfo _U_, prot
}
static int
-dissect_mp4ves_par_decoderConfigurationInformation(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_)
+dissect_mp4ves_par_decoderConfigurationInformation(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
asn1_ctx_t *actx;
diff --git a/epan/dissectors/packet-mpeg-audio.c b/epan/dissectors/packet-mpeg-audio.c
index 59a1d7ff5e..96b3ac3302 100644
--- a/epan/dissectors/packet-mpeg-audio.c
+++ b/epan/dissectors/packet-mpeg-audio.c
@@ -543,7 +543,7 @@ dissect_id3v2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpeg_audio(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int magic;
diff --git a/epan/dissectors/packet-mpeg-dsmcc.c b/epan/dissectors/packet-mpeg-dsmcc.c
index d9695edb3b..ef8ccdb8bc 100644
--- a/epan/dissectors/packet-mpeg-dsmcc.c
+++ b/epan/dissectors/packet-mpeg-dsmcc.c
@@ -593,7 +593,7 @@ dissect_dsmcc_un(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
static gboolean
-dissect_dsmcc_ts(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree_in)
+dissect_dsmcc_ts(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree_in, void *data _U_)
{
proto_item *pi;
proto_tree *tree;
@@ -701,7 +701,7 @@ static void
dissect_dsmcc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
col_set_str(pinfo->cinfo, COL_PROTOCOL, "DSM-CC");
- dissect_dsmcc_ts(tvb, pinfo, tree);
+ dissect_dsmcc_ts(tvb, pinfo, tree, NULL);
}
void
diff --git a/epan/dissectors/packet-mpeg-pes.c b/epan/dissectors/packet-mpeg-pes.c
index 474fae120c..d5a3fd9c30 100644
--- a/epan/dissectors/packet-mpeg-pes.c
+++ b/epan/dissectors/packet-mpeg-pes.c
@@ -830,7 +830,7 @@ static void
dissect_mpeg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gboolean
-dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int prefix;
int stream;
@@ -887,7 +887,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
offset += 64 * 8;
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_SEQUENCE_EXTENSION) {
tvbuff_t *es;
@@ -895,7 +895,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
tree, hf_mpeg_video_sequence_extension);
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_GOP) {
tvbuff_t *es;
@@ -903,7 +903,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
tree, hf_mpeg_video_group_of_pictures);
es = tvb_new_subset_remaining(tvb, offset / 8);
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
} else if (stream == STREAM_PACK) {
if (tvb_get_guint8(tvb, offset / 8) >> 6 == 1) {
dissect_mpeg_pes_pack_header(tvb, offset, pinfo, tree);
@@ -968,7 +968,7 @@ dissect_mpeg_pes(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
es = tvb_new_subset(tvb, offset / 8, -1, length / 8);
if (tvb_get_ntoh24(es, 0) == PES_PREFIX)
- dissect_mpeg_pes(es, pinfo, tree);
+ dissect_mpeg_pes(es, pinfo, tree, NULL);
else if (tvb_get_guint8(es, 0) == 0xff)
dissect_mpeg(es, pinfo, tree);
else
diff --git a/epan/dissectors/packet-mpeg-pmt.c b/epan/dissectors/packet-mpeg-pmt.c
index 73442e6fc3..76686ae799 100644
--- a/epan/dissectors/packet-mpeg-pmt.c
+++ b/epan/dissectors/packet-mpeg-pmt.c
@@ -120,7 +120,7 @@ static const value_string mpeg_pmt_stream_type_vals[] = {
static value_string_ext mpeg_pmt_stream_type_vals_ext = VALUE_STRING_EXT_INIT(mpeg_pmt_stream_type_vals);
static int
-dissect_mpeg_pmt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpeg_pmt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint offset = 0, length = 0;
diff --git a/epan/dissectors/packet-mpls-y1711.c b/epan/dissectors/packet-mpls-y1711.c
index 652a52b4a5..d0c18c9a21 100644
--- a/epan/dissectors/packet-mpls-y1711.c
+++ b/epan/dissectors/packet-mpls-y1711.c
@@ -100,7 +100,7 @@ static const value_string y1711_defect_type_vals[] = {
};
static int
-dissect_mpls_y1711(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mpls_y1711(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
struct mplsinfo *mplsinfo = pinfo->private_data;
int offset = 0;
diff --git a/epan/dissectors/packet-mq-pcf.c b/epan/dissectors/packet-mq-pcf.c
index 9221ee8f48..ec92dec2c7 100644
--- a/epan/dissectors/packet-mq-pcf.c
+++ b/epan/dissectors/packet-mq-pcf.c
@@ -252,7 +252,7 @@ dissect_mqpcf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_mqpcf_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mqpcf_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_length(tvb) >= 36)
{
diff --git a/epan/dissectors/packet-mq.c b/epan/dissectors/packet-mq.c
index d7369c5d26..10fc69c991 100644
--- a/epan/dissectors/packet-mq.c
+++ b/epan/dissectors/packet-mq.c
@@ -2422,7 +2422,7 @@ dissect_mq_spx(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_mq_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint iProto)
+dissect_mq_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint iProto, void *data _U_)
{
if (tvb_length(tvb) >= 28)
{
@@ -2449,21 +2449,21 @@ dissect_mq_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gint iProto
}
static gboolean
-dissect_mq_heur_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mq_heur_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_TCP);
+ return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_TCP, NULL);
}
static gboolean
-dissect_mq_heur_netbios(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mq_heur_netbios(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_NETBIOS);
+ return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_NETBIOS, NULL);
}
static gboolean
-dissect_mq_heur_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_mq_heur_http(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
- return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_HTTP);
+ return dissect_mq_heur(tvb, pinfo, tree, MQ_XPT_HTTP, NULL);
}
static void
diff --git a/epan/dissectors/packet-ms-mms.c b/epan/dissectors/packet-ms-mms.c
index f843b7ec37..79f3b79253 100644
--- a/epan/dissectors/packet-ms-mms.c
+++ b/epan/dissectors/packet-ms-mms.c
@@ -283,8 +283,6 @@ static const value_string server_to_client_error_vals[] =
void proto_register_msmms(void);
void proto_reg_handoff_msmms_command(void);
-static gint dissect_msmms_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-
static gint dissect_msmms_command(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gint dissect_msmms_data(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gint dissect_msmms_data_udp_command(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
@@ -317,7 +315,7 @@ static void msmms_data_add_address(packet_info *pinfo, address *addr, port_type
/****************************/
/* Main dissection function */
/****************************/
-static gint dissect_msmms_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gint dissect_msmms_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Work out what type of packet this is and dissect it as such */
diff --git a/epan/dissectors/packet-msrp.c b/epan/dissectors/packet-msrp.c
index 405c7e4cc8..9439648e0d 100644
--- a/epan/dissectors/packet-msrp.c
+++ b/epan/dissectors/packet-msrp.c
@@ -143,7 +143,7 @@ static gboolean global_msrp_raw_text = TRUE;
* http://www.iana.org/assignments/media-types/index.html */
static dissector_table_t media_type_dissector_table;
-static int dissect_msrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+static int dissect_msrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data);
/* Displaying conversation setup info */
@@ -418,7 +418,7 @@ find_end_line(tvbuff_t *tvb, gint start)
}
static gboolean
-dissect_msrp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_msrp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t* conversation;
@@ -438,7 +438,7 @@ dissect_msrp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
conversation_set_dissector(conversation, msrp_handle);
}
}
- dissect_msrp(tvb, pinfo, tree);
+ dissect_msrp(tvb, pinfo, tree, NULL);
return TRUE;
}
return FALSE;
@@ -446,7 +446,7 @@ dissect_msrp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* Code to actually dissect the packets */
static int
-dissect_msrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_msrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
gint next_offset = 0;
diff --git a/epan/dissectors/packet-nas_eps.c b/epan/dissectors/packet-nas_eps.c
index e5a1930a4d..bb4bbb078e 100644
--- a/epan/dissectors/packet-nas_eps.c
+++ b/epan/dissectors/packet-nas_eps.c
@@ -408,7 +408,7 @@ de_eps_cmn_add_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32
switch (eps_nas_gen_msg_cont_type) {
case 1:
/* LPP */
- dissect_lcsap_Correlation_ID_PDU(new_tvb, pinfo, sub_tree);
+ dissect_lcsap_Correlation_ID_PDU(new_tvb, pinfo, sub_tree, NULL);
break;
default:
break;
@@ -1966,7 +1966,7 @@ de_emm_lcs_client_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, gu
* in subclause 17.7.13 of 3GPP TS 29.002 [15B](GSM MAP).
*/
new_tvb = tvb_new_subset(tvb, curr_offset, len, len );
- dissect_gsm_map_lcs_LCS_ClientID_PDU( new_tvb, gpinfo, tree );
+ dissect_gsm_map_lcs_LCS_ClientID_PDU( new_tvb, gpinfo, tree, NULL );
return(len);
}
diff --git a/epan/dissectors/packet-nb_rtpmux.c b/epan/dissectors/packet-nb_rtpmux.c
index 8805180f61..dc1e4be05e 100644
--- a/epan/dissectors/packet-nb_rtpmux.c
+++ b/epan/dissectors/packet-nb_rtpmux.c
@@ -51,7 +51,7 @@ static dissector_handle_t rtpdissector;
/* Code to actually dissect the packets */
static int
-dissect_nb_rtpmux(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_nb_rtpmux(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti, *cmp_rtp_item;
diff --git a/epan/dissectors/packet-nbd.c b/epan/dissectors/packet-nbd.c
index 6ea5287a38..e93eb652aa 100644
--- a/epan/dissectors/packet-nbd.c
+++ b/epan/dissectors/packet-nbd.c
@@ -377,7 +377,7 @@ dissect_nbd_tcp_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
static gboolean
-dissect_nbd_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_nbd_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint32 magic, type;
diff --git a/epan/dissectors/packet-ndmp.c b/epan/dissectors/packet-ndmp.c
index 3bf3105077..5a6f4d06b4 100644
--- a/epan/dissectors/packet-ndmp.c
+++ b/epan/dissectors/packet-ndmp.c
@@ -3500,7 +3500,7 @@ check_if_ndmp(tvbuff_t *tvb, packet_info *pinfo)
* At this point we may have either an NDMP PDU or an NDMP PDU fragment.
*/
static int
-dissect_ndmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ndmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* If we are doing defragmentation, don't check more than the record mark here,
* because if this is a continuation of a fragmented NDMP PDU there won't be a
@@ -3527,7 +3527,7 @@ dissect_ndmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* as the protocol dissector for this conversation.
*/
static int
-dissect_ndmp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ndmp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_length(tvb) < 28)
return 0;
diff --git a/epan/dissectors/packet-netflow.c b/epan/dissectors/packet-netflow.c
index 3371ba7f0b..80fe54e056 100644
--- a/epan/dissectors/packet-netflow.c
+++ b/epan/dissectors/packet-netflow.c
@@ -1585,7 +1585,7 @@ pen_to_type_hf_list (guint32 pen) {
}
static int
-dissect_netflow(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_netflow(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *netflow_tree = NULL;
proto_tree *ti;
diff --git a/epan/dissectors/packet-netperfmeter.c b/epan/dissectors/packet-netperfmeter.c
index 37110972bd..a3eaef90bc 100644
--- a/epan/dissectors/packet-netperfmeter.c
+++ b/epan/dissectors/packet-netperfmeter.c
@@ -413,7 +413,7 @@ dissect_npmp_message(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *npmp
static int
-dissect_npmp(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_npmp(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *npmp_item;
proto_tree *npmp_tree;
diff --git a/epan/dissectors/packet-ntlmssp.c b/epan/dissectors/packet-ntlmssp.c
index 5b66bb6b86..84db1157b9 100644
--- a/epan/dissectors/packet-ntlmssp.c
+++ b/epan/dissectors/packet-ntlmssp.c
@@ -1928,7 +1928,7 @@ dissect_ntlmssp_encrypted_payload(tvbuff_t *data_tvb,
#endif
static int
-dissect_ntlmssp_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ntlmssp_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
volatile int offset = 0;
proto_tree *volatile ntlmssp_tree = NULL;
@@ -2206,11 +2206,9 @@ dissect_ntlmssp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_ntlmssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_ntlmssp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
-
if (tvb_memeql(tvb, 0, "NTLMSSP", 8) == 0) {
-
dissect_ntlmssp(tvb, pinfo, parent_tree);
return TRUE;
}
@@ -2393,7 +2391,7 @@ decrypt_verifier(tvbuff_t *tvb, int offset, guint32 encrypted_block_length,
/* Used when NTLMSSP is done over DCE/RPC because in this case verifier and real payload are not contigious*/
static int
-dissect_ntlmssp_payload_only(tvbuff_t *tvb, packet_info *pinfo, _U_ proto_tree *tree)
+dissect_ntlmssp_payload_only(tvbuff_t *tvb, packet_info *pinfo, _U_ proto_tree *tree, void *data _U_)
{
volatile int offset = 0;
proto_tree *volatile ntlmssp_tree = NULL;
@@ -2454,7 +2452,7 @@ dissect_ntlmssp_payload_only(tvbuff_t *tvb, packet_info *pinfo, _U_ proto_tree *
* But in fact this function could be merged with wrap_dissect_ntlmssp_verf because it's only used there
*/
static int
-dissect_ntlmssp_verf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ntlmssp_verf(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
volatile int offset = 0;
proto_tree *volatile ntlmssp_tree = NULL;
@@ -2534,7 +2532,7 @@ wrap_dissect_ntlmssp_payload_only(tvbuff_t *tvb, tvbuff_t *auth_tvb _U_,
data_tvb = tvb_new_subset(
tvb, offset, tvb_length_remaining(tvb, offset),
tvb_length_remaining(tvb, offset));
- dissect_ntlmssp_payload_only(data_tvb, pinfo, NULL);
+ dissect_ntlmssp_payload_only(data_tvb, pinfo, NULL, NULL);
return pinfo->gssapi_decrypted_tvb;
}
@@ -2700,7 +2698,7 @@ wrap_dissect_ntlmssp_verf(tvbuff_t *tvb, int offset, packet_info *pinfo,
auth_tvb = tvb_new_subset(
tvb, offset, tvb_length_remaining(tvb, offset),
tvb_length_remaining(tvb, offset));
- return dissect_ntlmssp_verf(auth_tvb, pinfo, tree);
+ return dissect_ntlmssp_verf(auth_tvb, pinfo, tree, NULL);
}
static dcerpc_auth_subdissector_fns ntlmssp_sign_fns = {
diff --git a/epan/dissectors/packet-oicq.c b/epan/dissectors/packet-oicq.c
index eee6d35f13..69ffba11c0 100644
--- a/epan/dissectors/packet-oicq.c
+++ b/epan/dissectors/packet-oicq.c
@@ -114,7 +114,7 @@ static const value_string oicq_command_vals[] = {
* proto_tree - resolved protocol tree
*/
static int
-dissect_oicq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_oicq(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *oicq_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-oipf.c b/epan/dissectors/packet-oipf.c
index 0b9f4c45c0..bed9fec193 100644
--- a/epan/dissectors/packet-oipf.c
+++ b/epan/dissectors/packet-oipf.c
@@ -76,7 +76,7 @@ static const value_string oipf_ciplus_dat_id[] = {
static int
-dissect_oipf_ciplus(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_oipf_ciplus(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
gint msg_len;
proto_item *ti;
diff --git a/epan/dissectors/packet-olsr.c b/epan/dissectors/packet-olsr.c
index 40708d4a8f..12f864df04 100644
--- a/epan/dissectors/packet-olsr.c
+++ b/epan/dissectors/packet-olsr.c
@@ -521,7 +521,7 @@ static int dissect_olsrorg_nameservice(tvbuff_t *tvb, packet_info *pinfo, proto_
}
/*------------------------- Packet Dissecting Code-------------------------*/
-static int dissect_olsr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+static int dissect_olsr(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
proto_item *ti;
proto_tree *olsr_tree;
diff --git a/epan/dissectors/packet-omron-fins.c b/epan/dissectors/packet-omron-fins.c
index f3c14f608b..cf94f1df73 100644
--- a/epan/dissectors/packet-omron-fins.c
+++ b/epan/dissectors/packet-omron-fins.c
@@ -1082,7 +1082,7 @@ static const true_false_string boolean_member_polling = {
/* CODE */
static int
-dissect_omron_fins(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_omron_fins(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_tree *omron_tree = NULL;
diff --git a/epan/dissectors/packet-opensafety.c b/epan/dissectors/packet-opensafety.c
index a26c79c2db..eb0f0c1ff6 100644
--- a/epan/dissectors/packet-opensafety.c
+++ b/epan/dissectors/packet-opensafety.c
@@ -1530,7 +1530,7 @@ opensafety_package_dissector(const gchar *protocolName, const gchar *sub_diss_ha
}
static gboolean
-dissect_opensafety_epl(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree )
+dissect_opensafety_epl(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree , void *data _U_ )
{
gboolean result = FALSE;
guint8 firstByte;
@@ -1559,7 +1559,7 @@ dissect_opensafety_epl(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *
static gboolean
-dissect_opensafety_siii(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree )
+dissect_opensafety_siii(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree , void *data _U_ )
{
gboolean result = FALSE;
guint8 firstByte;
@@ -1592,7 +1592,7 @@ dissect_opensafety_siii(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree
}
static gboolean
-dissect_opensafety_pn_io(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree )
+dissect_opensafety_pn_io(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree , void *data _U_ )
{
gboolean result = FALSE;
@@ -1611,7 +1611,7 @@ dissect_opensafety_pn_io(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree
}
static gboolean
-dissect_opensafety_mbtcp(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree )
+dissect_opensafety_mbtcp(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree, void *data _U_ )
{
/* When Modbus/TCP get's dissected, openSAFETY would be sorted as a child protocol. Although,
* this behaviour is technically correct, it differs from other implemented IEM protocol handlers.
@@ -1621,7 +1621,7 @@ dissect_opensafety_mbtcp(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree
}
static gboolean
-dissect_opensafety_udpdata(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree )
+dissect_opensafety_udpdata(tvbuff_t *message_tvb , packet_info *pinfo , proto_tree *tree , void *data _U_ )
{
gboolean result = FALSE;
static guint32 frameNum = 0;
diff --git a/epan/dissectors/packet-openwire.c b/epan/dissectors/packet-openwire.c
index db819a6ee6..501d6b8736 100644
--- a/epan/dissectors/packet-openwire.c
+++ b/epan/dissectors/packet-openwire.c
@@ -1382,7 +1382,7 @@ dissect_openwire_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_openwire_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_openwire_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
gboolean detected = FALSE;
diff --git a/epan/dissectors/packet-ositp.c b/epan/dissectors/packet-ositp.c
index c25a23cfe6..ed34e21838 100644
--- a/epan/dissectors/packet-ositp.c
+++ b/epan/dissectors/packet-ositp.c
@@ -1721,12 +1721,12 @@ static gint dissect_ositp_internal(tvbuff_t *tvb, packet_info *pinfo,
return found_ositp ? offset : 0;
} /* dissect_ositp_internal */
-static gint dissect_ositp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gint dissect_ositp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_ositp_internal(tvb, pinfo, tree, FALSE);
}
-static gint dissect_ositp_inactive(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gint dissect_ositp_inactive(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_ositp_internal(tvb, pinfo, tree, TRUE);
}
diff --git a/epan/dissectors/packet-paltalk.c b/epan/dissectors/packet-paltalk.c
index ea5ee9c46c..65b0f113fa 100644
--- a/epan/dissectors/packet-paltalk.c
+++ b/epan/dissectors/packet-paltalk.c
@@ -56,7 +56,7 @@ static int hf_paltalk_content = -1;
static gint ett_paltalk = -1;
static gboolean
-dissect_paltalk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_paltalk(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint32 src32, dst32;
diff --git a/epan/dissectors/packet-pana.c b/epan/dissectors/packet-pana.c
index 784f654c9a..5d46865eba 100644
--- a/epan/dissectors/packet-pana.c
+++ b/epan/dissectors/packet-pana.c
@@ -654,7 +654,7 @@ dissect_pana_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
*/
/* Called either as a "new-style" or a heuristic dissector */
static int
-dissect_pana(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_pana(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 pana_res;
diff --git a/epan/dissectors/packet-pdcp-lte.c b/epan/dissectors/packet-pdcp-lte.c
index 90219d7064..8a1236bde7 100644
--- a/epan/dissectors/packet-pdcp-lte.c
+++ b/epan/dissectors/packet-pdcp-lte.c
@@ -812,7 +812,7 @@ static gboolean global_pdcp_lte_heur = FALSE;
/* Heuristic dissector looks for supported framing protocol (see wiki page) */
static gboolean dissect_pdcp_lte_heur(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
gint offset = 0;
struct pdcp_lte_info *p_pdcp_lte_info;
diff --git a/epan/dissectors/packet-per.c b/epan/dissectors/packet-per.c
index e745ab7a79..dc631769a5 100644
--- a/epan/dissectors/packet-per.c
+++ b/epan/dissectors/packet-per.c
@@ -221,7 +221,7 @@ dissect_per_open_type_internal(tvbuff_t *tvb, guint32 offset, asn1_ctx_t *actx,
((dissector_t)type_cb)(val_tvb, actx->pinfo, subtree);
break;
case CB_NEW_DISSECTOR:
- ((new_dissector_t)type_cb)(val_tvb, actx->pinfo, subtree);
+ ((new_dissector_t)type_cb)(val_tvb, actx->pinfo, subtree, NULL);
break;
case CB_DISSECTOR_HANDLE:
break;
@@ -2158,7 +2158,7 @@ guint32 dissect_per_bit_string_containing_pdu_new(tvbuff_t *tvb, guint32 offset,
if (type_cb && val_tvb) {
subtree = proto_item_add_subtree(actx->created_item, ett_per_containing);
- type_cb(val_tvb, actx->pinfo, subtree);
+ type_cb(val_tvb, actx->pinfo, subtree, NULL);
}
return offset;
@@ -2298,7 +2298,7 @@ guint32 dissect_per_octet_string_containing_pdu_new(tvbuff_t *tvb, guint32 offse
if (type_cb && val_tvb) {
subtree = proto_item_add_subtree(actx->created_item, ett_per_containing);
- type_cb(val_tvb, actx->pinfo, subtree);
+ type_cb(val_tvb, actx->pinfo, subtree, NULL);
}
return offset;
diff --git a/epan/dissectors/packet-pflog.c b/epan/dissectors/packet-pflog.c
index 7eab6c5ee9..bc16fcf765 100644
--- a/epan/dissectors/packet-pflog.c
+++ b/epan/dissectors/packet-pflog.c
@@ -403,7 +403,7 @@ proto_reg_handoff_pflog(void)
}
static int
-dissect_old_pflog(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_old_pflog(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tvbuff_t *next_tvb;
proto_tree *pflog_tree = NULL;
diff --git a/epan/dissectors/packet-pingpongprotocol.c b/epan/dissectors/packet-pingpongprotocol.c
index ae1ad784f8..b8d5fd59be 100644
--- a/epan/dissectors/packet-pingpongprotocol.c
+++ b/epan/dissectors/packet-pingpongprotocol.c
@@ -140,7 +140,7 @@ dissect_pingpongprotocol_message(tvbuff_t *message_tvb, packet_info *pinfo, prot
}
static int
-dissect_pingpongprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_pingpongprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *pingpongprotocol_item;
proto_tree *pingpongprotocol_tree;
diff --git a/epan/dissectors/packet-pkixtsp.c b/epan/dissectors/packet-pkixtsp.c
index 346ded8b23..c038d32d69 100644
--- a/epan/dissectors/packet-pkixtsp.c
+++ b/epan/dissectors/packet-pkixtsp.c
@@ -365,7 +365,7 @@ static void dissect_TSTInfo_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto
static int
-dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
@@ -386,7 +386,7 @@ dissect_timestamp_reply(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tr
}
static int
-dissect_timestamp_query(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_timestamp_query(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/epan/dissectors/packet-pktgen.c b/epan/dissectors/packet-pktgen.c
index 0fa2c045ad..199dc6b734 100644
--- a/epan/dissectors/packet-pktgen.c
+++ b/epan/dissectors/packet-pktgen.c
@@ -57,7 +57,7 @@ static gint ett_pktgen = -1;
static dissector_handle_t data_handle;
/* entry point */
-static gboolean dissect_pktgen(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_pktgen(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti = NULL;
proto_item *tmp = NULL;
diff --git a/epan/dissectors/packet-pnrp.c b/epan/dissectors/packet-pnrp.c
index 3ebb6cb678..259310c628 100644
--- a/epan/dissectors/packet-pnrp.c
+++ b/epan/dissectors/packet-pnrp.c
@@ -335,7 +335,7 @@ static gint ett_pnrp_message_signatureStructure = -1;
/* Do actual dissection work */
-static int dissect_pnrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_pnrp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Variable declaration */
gint offset;
diff --git a/epan/dissectors/packet-ppp.c b/epan/dissectors/packet-ppp.c
index 9c57e4db8c..024089858f 100644
--- a/epan/dissectors/packet-ppp.c
+++ b/epan/dissectors/packet-ppp.c
@@ -5072,7 +5072,7 @@ dissect_ppp_raw_hdlc( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
* NOTE: I don't know if these heuristics are sufficient. Time will tell ...
*/
static gboolean
-dissect_ppp_usb( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_ppp_usb( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
/*
* In some cases, the 0x03 normally in byte 3 is escaped so we must look
diff --git a/epan/dissectors/packet-pvfs2.c b/epan/dissectors/packet-pvfs2.c
index ff0425a419..81793f7040 100644
--- a/epan/dissectors/packet-pvfs2.c
+++ b/epan/dissectors/packet-pvfs2.c
@@ -259,7 +259,7 @@ static guint get_pvfs_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_pvfs_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_pvfs_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint32 magic_nr, mode;
guint64 size;
diff --git a/epan/dissectors/packet-pw-atm.c b/epan/dissectors/packet-pw-atm.c
index 58d254a0f2..921252f6ed 100644
--- a/epan/dissectors/packet-pw-atm.c
+++ b/epan/dissectors/packet-pw-atm.c
@@ -1372,7 +1372,7 @@ dissect_control_word(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
* This function is also used to dissect 3rd byte of CW in AAL5 PDU mode.
*/
static int
-dissect_cell_header(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+dissect_cell_header(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
pwatm_private_data_t * pd;
gboolean is_enough_data;
@@ -1624,7 +1624,7 @@ dissect_cell_header(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
static int
-dissect_cell(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree)
+dissect_cell(tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_)
{
gboolean is_enough_data;
int dissect_size;
diff --git a/epan/dissectors/packet-q931.c b/epan/dissectors/packet-q931.c
index 9eb69b5413..5a19b7be90 100644
--- a/epan/dissectors/packet-q931.c
+++ b/epan/dissectors/packet-q931.c
@@ -3233,7 +3233,7 @@ dissect_q931_IEs(tvbuff_t *tvb, packet_info *pinfo, proto_tree *root_tree,
* Q.931-over-TPKT-over-TCP.
*/
static gboolean
-dissect_q931_tpkt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_q931_tpkt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int lv_tpkt_len;
@@ -3305,7 +3305,7 @@ dissect_q931_tpkt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static void
dissect_q931_tpkt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
- dissect_q931_tpkt_heur(tvb, pinfo, tree);
+ dissect_q931_tpkt_heur(tvb, pinfo, tree, NULL);
}
static void
diff --git a/epan/dissectors/packet-radius.c b/epan/dissectors/packet-radius.c
index be30f0e007..1fdeea6af8 100644
--- a/epan/dissectors/packet-radius.c
+++ b/epan/dissectors/packet-radius.c
@@ -1346,7 +1346,7 @@ is_radius(tvbuff_t *tvb)
static void register_radius_fields(const char*);
static int
-dissect_radius(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_radius(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *radius_tree = NULL;
proto_tree *avptree = NULL;
diff --git a/epan/dissectors/packet-redbackli.c b/epan/dissectors/packet-redbackli.c
index ba56123281..bc66039227 100644
--- a/epan/dissectors/packet-redbackli.c
+++ b/epan/dissectors/packet-redbackli.c
@@ -177,7 +177,7 @@ redbackli_dissect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
#define MIN_REDBACKLI_SIZE (3*REDBACKLI_INTSIZE+REDBACKLI_EOHSIZE)
static gboolean
-redbackli_dissect_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+redbackli_dissect_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint len, offset=0;
gboolean eoh=FALSE;
diff --git a/epan/dissectors/packet-reload-framing.c b/epan/dissectors/packet-reload-framing.c
index d988db5e22..1d72baec50 100644
--- a/epan/dissectors/packet-reload-framing.c
+++ b/epan/dissectors/packet-reload-framing.c
@@ -429,7 +429,7 @@ dissect_reload_framing_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tr
}
static int
-dissect_reload_framing_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_reload_framing_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_reload_framing_message(tvb, pinfo, tree);
}
@@ -449,7 +449,7 @@ dissect_reload_framing_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_reload_framing_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_reload_framing_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (dissect_reload_framing_message(tvb, pinfo, tree) == 0) {
/*
diff --git a/epan/dissectors/packet-reload.c b/epan/dissectors/packet-reload.c
index 8101fd7b72..860a117127 100644
--- a/epan/dissectors/packet-reload.c
+++ b/epan/dissectors/packet-reload.c
@@ -4351,7 +4351,7 @@ dissect_reload_message_no_return(tvbuff_t *tvb, packet_info *pinfo, proto_tree *
}
static gboolean
-dissect_reload_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_reload_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (dissect_reload_message(tvb, pinfo, tree) == 0) {
/*
diff --git a/epan/dissectors/packet-rlc-lte.c b/epan/dissectors/packet-rlc-lte.c
index 4b7e9a2c08..ceafda2329 100644
--- a/epan/dissectors/packet-rlc-lte.c
+++ b/epan/dissectors/packet-rlc-lte.c
@@ -2479,7 +2479,7 @@ static void dissect_rlc_lte_am(tvbuff_t *tvb, packet_info *pinfo,
/* Heuristic dissector looks for supported framing protocol (see wiki page) */
static gboolean dissect_rlc_lte_heur(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
gint offset = 0;
struct rlc_lte_info *p_rlc_lte_info;
diff --git a/epan/dissectors/packet-rlc.c b/epan/dissectors/packet-rlc.c
index 36684c0d28..b3c2fc14d5 100644
--- a/epan/dissectors/packet-rlc.c
+++ b/epan/dissectors/packet-rlc.c
@@ -2572,7 +2572,7 @@ dissect_rlc_dch_unknown(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* Heuristic dissector looks for supported framing protocol (see wiki page) */
static gboolean
-dissect_rlc_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rlc_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint offset = 0;
fp_info *fpi;
diff --git a/epan/dissectors/packet-rlm.c b/epan/dissectors/packet-rlm.c
index e22bb73d5f..c942b24547 100644
--- a/epan/dissectors/packet-rlm.c
+++ b/epan/dissectors/packet-rlm.c
@@ -87,8 +87,8 @@ static gint ett_rlm = -1;
static dissector_handle_t lapd_handle;
static gboolean
-dissect_udp_lapd(tvbuff_t *tvb, packet_info *pinfo _U_ , proto_tree *tree) {
-
+dissect_udp_lapd(tvbuff_t *tvb, packet_info *pinfo _U_ , proto_tree *tree, void *data _U_)
+{
if (pinfo->srcport < 3001 || pinfo->srcport > 3015
|| pinfo->destport < 3001 || pinfo->destport > 3015
|| pinfo->destport != pinfo->srcport)
@@ -114,7 +114,7 @@ dissect_udp_lapd(tvbuff_t *tvb, packet_info *pinfo _U_ , proto_tree *tree) {
/* Code to actually dissect the packets */
static gboolean
-dissect_rlm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rlm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *rlm_tree;
diff --git a/epan/dissectors/packet-rmcp.c b/epan/dissectors/packet-rmcp.c
index e9e6d6f408..357968b5e4 100644
--- a/epan/dissectors/packet-rmcp.c
+++ b/epan/dissectors/packet-rmcp.c
@@ -85,7 +85,7 @@ static const value_string rmcp_class_vals[] = {
};
static int
-dissect_rmcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rmcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *rmcp_tree = NULL, *field_tree;
proto_item *ti, *tf;
@@ -154,7 +154,7 @@ dissect_rmcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_rsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *rsp_tree = NULL/*, *field_tree*/;
proto_item *ti/*, *tf*/;
@@ -177,7 +177,7 @@ dissect_rsp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* This is only valid for session ID equals 0
*/
next_tvb = tvb_new_subset_remaining(tvb, 8);
- dissect_rmcp(next_tvb, pinfo, tree);
+ dissect_rmcp(next_tvb, pinfo, tree, NULL);
return tvb_length(tvb);
}
diff --git a/epan/dissectors/packet-rmt-norm.c b/epan/dissectors/packet-rmt-norm.c
index d3cd1ad067..6fb37632ac 100644
--- a/epan/dissectors/packet-rmt-norm.c
+++ b/epan/dissectors/packet-rmt-norm.c
@@ -642,7 +642,7 @@ static void dissect_norm(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_norm_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_norm_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 byte1;
if (!global_norm_heur)
diff --git a/epan/dissectors/packet-ros.c b/epan/dissectors/packet-ros.c
index 1f1a58876f..f36dd2decc 100644
--- a/epan/dissectors/packet-ros.c
+++ b/epan/dissectors/packet-ros.c
@@ -249,7 +249,7 @@ static gboolean ros_try_string(const char *oid, tvbuff_t *tvb, packet_info *pinf
col_append_str(pinfo->cinfo, COL_INFO, suffix);
}
- (*opdissector)(tvb, pinfo, ros_tree);
+ (*opdissector)(tvb, pinfo, ros_tree, NULL);
return TRUE;
}
diff --git a/epan/dissectors/packet-rpc.c b/epan/dissectors/packet-rpc.c
index fa114556b6..25341c103b 100644
--- a/epan/dissectors/packet-rpc.c
+++ b/epan/dissectors/packet-rpc.c
@@ -2922,7 +2922,7 @@ dissect_rpc_message(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
static gboolean
-dissect_rpc_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rpc_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_rpc_message(tvb, pinfo, tree, NULL, NULL, FALSE, 0,
TRUE);
@@ -3751,7 +3751,7 @@ dissect_rpc_tcp_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
}
static gboolean
-dissect_rpc_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rpc_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
switch (dissect_rpc_tcp_common(tvb, pinfo, tree, TRUE)) {
diff --git a/epan/dissectors/packet-rpcap.c b/epan/dissectors/packet-rpcap.c
index 6712bda944..68b0e4c3c2 100644
--- a/epan/dissectors/packet-rpcap.c
+++ b/epan/dissectors/packet-rpcap.c
@@ -1111,7 +1111,7 @@ get_rpcap_pdu_len (packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
static gboolean
-dissect_rpcap_heur_tcp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rpcap_heur_tcp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (check_rpcap_heur (tvb, TRUE)) {
/* This is probably a rpcap tcp package */
@@ -1126,7 +1126,7 @@ dissect_rpcap_heur_tcp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_rpcap_heur_udp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rpcap_heur_udp (tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (check_rpcap_heur (tvb, FALSE)) {
/* This is probably a rpcap udp package */
diff --git a/epan/dissectors/packet-rsl.c b/epan/dissectors/packet-rsl.c
index 3f94529539..bea8fff531 100644
--- a/epan/dissectors/packet-rsl.c
+++ b/epan/dissectors/packet-rsl.c
@@ -3870,7 +3870,7 @@ static const value_string rsl_ipacc_rtp_csd_fmt_ir_vals[] = {
};
static int
-dissect_rsl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_rsl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *rsl_tree;
diff --git a/epan/dissectors/packet-rtcp.c b/epan/dissectors/packet-rtcp.c
index b08985df8e..efd2412901 100644
--- a/epan/dissectors/packet-rtcp.c
+++ b/epan/dissectors/packet-rtcp.c
@@ -573,8 +573,6 @@ static void dissect_rtcp( tvbuff_t *tvb, packet_info *pinfo,
/* Heuristic dissection */
static gboolean global_rtcp_heur = FALSE;
-static gboolean dissect_rtcp_heur( tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree );
/* Displaying set info */
static gboolean global_rtcp_show_setup_info = TRUE;
@@ -672,7 +670,7 @@ void rtcp_add_address( packet_info *pinfo,
}
static gboolean
-dissect_rtcp_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_rtcp_heur( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
unsigned int offset = 0;
unsigned int first_byte;
diff --git a/epan/dissectors/packet-rtp.c b/epan/dissectors/packet-rtp.c
index ebf0d57004..d7cd45e372 100644
--- a/epan/dissectors/packet-rtp.c
+++ b/epan/dissectors/packet-rtp.c
@@ -749,13 +749,13 @@ dissect_rtp_heur_common(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, gbo
}
static gboolean
-dissect_rtp_heur_udp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_rtp_heur_udp( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
return dissect_rtp_heur_common(tvb, pinfo, tree, TRUE);
}
static gboolean
-dissect_rtp_heur_stun( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_rtp_heur_stun( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
return dissect_rtp_heur_common(tvb, pinfo, tree, FALSE);
}
diff --git a/epan/dissectors/packet-rtps.c b/epan/dissectors/packet-rtps.c
index 175258fe51..b61aef7fb7 100644
--- a/epan/dissectors/packet-rtps.c
+++ b/epan/dissectors/packet-rtps.c
@@ -649,9 +649,6 @@ static void dissect_INFO_REPLY(tvbuff_t *tvb,gint offset,guint8 flags,
gboolean little_endian,int next_submsg_offset,
proto_tree *rtps_submessage_tree);
-/* The main packet dissector */
-static gboolean dissect_rtps(tvbuff_t *, packet_info *, proto_tree *);
-
/***************************************************************************/
/* Inline macros */
@@ -5544,7 +5541,9 @@ static void dissect_INFO_REPLY(tvbuff_t *tvb,
*/
static gboolean dissect_rtps(tvbuff_t *tvb,
packet_info *pinfo,
- proto_tree *tree) {
+ proto_tree *tree,
+ void *data _U_)
+{
proto_item *ti = NULL;
proto_tree *rtps_tree=NULL;
gint offset = 0;
diff --git a/epan/dissectors/packet-rtps2.c b/epan/dissectors/packet-rtps2.c
index f2f61417e1..38debe782f 100644
--- a/epan/dissectors/packet-rtps2.c
+++ b/epan/dissectors/packet-rtps2.c
@@ -825,9 +825,6 @@ static void dissect_RTPS_DATA(tvbuff_t *, gint, guint8, gboolean, int,
proto_tree *, char *, guint16, int);
#undef DECLARE_DISSECTOR_SUBMESSAGE
-/* The main packet dissector */
-static gboolean dissect_rtps(tvbuff_t *, packet_info *, proto_tree *);
-
/***************************************************************************/
/* Inline macros */
@@ -8462,7 +8459,9 @@ static void dissect_RTPS_DATA_BATCH(tvbuff_t *tvb,
*/
static gboolean dissect_rtps(tvbuff_t *tvb,
packet_info *pinfo,
- proto_tree *tree) {
+ proto_tree *tree,
+ void *data _U_)
+{
proto_item *ti = NULL;
proto_tree *rtps_tree = NULL;
gint offset = 0;
diff --git a/epan/dissectors/packet-rx.c b/epan/dissectors/packet-rx.c
index ae2af5cef6..a5e5963008 100644
--- a/epan/dissectors/packet-rx.c
+++ b/epan/dissectors/packet-rx.c
@@ -450,7 +450,7 @@ dissect_rx_flags(tvbuff_t *tvb, struct rxinfo *rxinfo, proto_tree *parent_tree,
}
static int
-dissect_rx(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_rx(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_tree *tree;
proto_item *item;
diff --git a/epan/dissectors/packet-sbus.c b/epan/dissectors/packet-sbus.c
index 593fbbfffb..90f65768b6 100644
--- a/epan/dissectors/packet-sbus.c
+++ b/epan/dissectors/packet-sbus.c
@@ -635,7 +635,7 @@ is_sbus_pdu(tvbuff_t *tvb)
/*Dissect the telegram*/
static int
-dissect_sbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sbus(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
diff --git a/epan/dissectors/packet-scriptingservice.c b/epan/dissectors/packet-scriptingservice.c
index 727338d0fd..e89f8135ae 100644
--- a/epan/dissectors/packet-scriptingservice.c
+++ b/epan/dissectors/packet-scriptingservice.c
@@ -173,7 +173,7 @@ dissect_ssprotocol_message(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree
static int
-dissect_ssprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ssprotocol(tvbuff_t *message_tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ssprotocol_item;
proto_tree *ssprotocol_tree;
diff --git a/epan/dissectors/packet-sebek.c b/epan/dissectors/packet-sebek.c
index ae23c86d64..9c46798b46 100644
--- a/epan/dissectors/packet-sebek.c
+++ b/epan/dissectors/packet-sebek.c
@@ -119,7 +119,7 @@ static gint ett_sebek = -1;
* proto_tree - resolved protocol tree
*/
static int
-dissect_sebek(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sebek(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *sebek_tree;
proto_item *ti;
diff --git a/epan/dissectors/packet-ses.c b/epan/dissectors/packet-ses.c
index c66a936978..d1207aae04 100644
--- a/epan/dissectors/packet-ses.c
+++ b/epan/dissectors/packet-ses.c
@@ -1944,7 +1944,7 @@ proto_register_ses(void)
}
static gboolean
-dissect_ses_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_ses_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
/* must check that this really is a ses packet */
int offset = 0;
diff --git a/epan/dissectors/packet-sflow.c b/epan/dissectors/packet-sflow.c
index f7bb9090a7..61ab14a910 100644
--- a/epan/dissectors/packet-sflow.c
+++ b/epan/dissectors/packet-sflow.c
@@ -2654,8 +2654,8 @@ dissect_sflow_245_samples(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, g
/* Code to actually dissect the packets */
static int
-dissect_sflow_245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
-
+dissect_sflow_245(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
+{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
proto_tree *sflow_245_tree;
diff --git a/epan/dissectors/packet-sigcomp.c b/epan/dissectors/packet-sigcomp.c
index 4975ea2b72..c3a60943b4 100644
--- a/epan/dissectors/packet-sigcomp.c
+++ b/epan/dissectors/packet-sigcomp.c
@@ -358,7 +358,7 @@ sigcomp_init_protocol(void)
*/
static int
-dissect_sigcomp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sigcomp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *_data _U_)
{
proto_item *ti;
proto_tree *sigcomp_tree;
@@ -507,7 +507,7 @@ try_again:
}
/* Code to actually dissect the packets */
static int
-dissect_sigcomp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sigcomp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *sigcomp_tree;
@@ -516,7 +516,7 @@ dissect_sigcomp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* If we got called from SIP this might be over TCP */
if ( pinfo->ptype == PT_TCP )
- return dissect_sigcomp_tcp(tvb, pinfo, tree);
+ return dissect_sigcomp_tcp(tvb, pinfo, tree, NULL);
/* Is this a SigComp message or not ? */
octet = tvb_get_guint8(tvb, offset);
diff --git a/epan/dissectors/packet-sip.c b/epan/dissectors/packet-sip.c
index dba0d1e3ea..c9a28713d9 100644
--- a/epan/dissectors/packet-sip.c
+++ b/epan/dissectors/packet-sip.c
@@ -1988,7 +1988,7 @@ static void dissect_sip_via_header(tvbuff_t *tvb, proto_tree *tree, gint start_o
/* Code to actually dissect the packets */
static int
-dissect_sip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sip(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 octet;
int len;
@@ -2028,7 +2028,7 @@ dissect_sip_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_sip_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sip_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
int len;
@@ -2055,7 +2055,7 @@ dissect_sip_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_sip_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sip_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_sip_common(tvb, 0, pinfo, tree, FALSE, FALSE) > 0;
}
diff --git a/epan/dissectors/packet-skinny.c b/epan/dissectors/packet-skinny.c
index 10a713db17..9f041b6301 100644
--- a/epan/dissectors/packet-skinny.c
+++ b/epan/dissectors/packet-skinny.c
@@ -2940,7 +2940,7 @@ dissect_skinny_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* Code to actually dissect the packets */
static gboolean
-dissect_skinny(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_skinny(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* The general structure of a packet: {IP-Header|TCP-Header|n*SKINNY}
* SKINNY-Packet: {Header(Size, Reserved)|Data(MessageID, Message-Data)}
diff --git a/epan/dissectors/packet-skype.c b/epan/dissectors/packet-skype.c
index 0565c551f4..9bd54ecc91 100644
--- a/epan/dissectors/packet-skype.c
+++ b/epan/dissectors/packet-skype.c
@@ -329,7 +329,7 @@ dissect_skype_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
#endif
static int
-dissect_skype_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_skype_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/*
* Don't test for valid packet - we only end here when
diff --git a/epan/dissectors/packet-slimp3.c b/epan/dissectors/packet-slimp3.c
index 8ae0a117cf..0452df9cd1 100644
--- a/epan/dissectors/packet-slimp3.c
+++ b/epan/dissectors/packet-slimp3.c
@@ -222,7 +222,7 @@ static const value_string slimp3_mpg_control[] = {
#define MAX_LCD_STR_LEN 128
static int
-dissect_slimp3(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_slimp3(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
const char *opcode_str;
proto_tree *slimp3_tree = NULL;
diff --git a/epan/dissectors/packet-smb.c b/epan/dissectors/packet-smb.c
index 114f0e629c..72830cf7a6 100644
--- a/epan/dissectors/packet-smb.c
+++ b/epan/dissectors/packet-smb.c
@@ -18144,7 +18144,7 @@ dissect_smb(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
}
static gboolean
-dissect_smb_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_smb_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
/* must check that this really is a smb packet */
if (tvb_length(tvb) < 4)
diff --git a/epan/dissectors/packet-smb2.c b/epan/dissectors/packet-smb2.c
index e585aca6e6..41b9224623 100644
--- a/epan/dissectors/packet-smb2.c
+++ b/epan/dissectors/packet-smb2.c
@@ -6832,7 +6832,7 @@ dissect_smb2(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, gboolea
}
static gboolean
-dissect_smb2_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_smb2_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
/* must check that this really is a smb2 packet */
diff --git a/epan/dissectors/packet-smpp.c b/epan/dissectors/packet-smpp.c
index 34929a3641..b26e4650ef 100644
--- a/epan/dissectors/packet-smpp.c
+++ b/epan/dissectors/packet-smpp.c
@@ -2360,7 +2360,7 @@ huawei_sm_result_notify_resp(proto_tree *tree, tvbuff_t *tvb)
* has a 'well-known' or 'reserved' status
*/
static gboolean
-dissect_smpp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_smpp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint command_id; /* SMPP command */
guint command_status; /* Status code */
diff --git a/epan/dissectors/packet-smrse.c b/epan/dissectors/packet-smrse.c
index c64d5bcd43..f580bb1be9 100644
--- a/epan/dissectors/packet-smrse.c
+++ b/epan/dissectors/packet-smrse.c
@@ -499,7 +499,7 @@ static const value_string tag_vals[] = {
};
static int
-dissect_smrse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_smrse(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
diff --git a/epan/dissectors/packet-snmp.c b/epan/dissectors/packet-snmp.c
index decba49eae..f4333f8510 100644
--- a/epan/dissectors/packet-snmp.c
+++ b/epan/dissectors/packet-snmp.c
@@ -2952,7 +2952,7 @@ dissect_snmp_pdu(tvbuff_t *tvb, int offset, packet_info *pinfo,
}
static gint
-dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_snmp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
int offset;
diff --git a/epan/dissectors/packet-spice.c b/epan/dissectors/packet-spice.c
index 20a3f944c2..613b463eac 100644
--- a/epan/dissectors/packet-spice.c
+++ b/epan/dissectors/packet-spice.c
@@ -3051,7 +3051,7 @@ dissect_spice_link_server_pdu(tvbuff_t *tvb, proto_tree *tree, spice_conversatio
}
static int
-dissect_spice(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_spice(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
@@ -3453,11 +3453,11 @@ dissect_spice(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-test_spice_protocol(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+test_spice_protocol(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_reported_length(tvb) >= 4 && tvb_get_ntohl(tvb, 0) == SPICE_MAGIC) {
- dissect_spice(tvb, pinfo, tree);
+ dissect_spice(tvb, pinfo, tree, NULL);
return TRUE;
}
return FALSE;
diff --git a/epan/dissectors/packet-spnego.c b/epan/dissectors/packet-spnego.c
index bb37920f92..f24afd3eb7 100644
--- a/epan/dissectors/packet-spnego.c
+++ b/epan/dissectors/packet-spnego.c
@@ -1646,7 +1646,7 @@ dissect_spnego_krb5_cfx_getmic_base(tvbuff_t *tvb, int offset, packet_info *pinf
* getting it accepted.
*/
static int
-dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
proto_item *item;
proto_tree *subtree;
@@ -1706,7 +1706,7 @@ dissect_spnego_krb5_wrap(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree
/* Spnego stuff from here */
static int
-dissect_spnego_wrap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_spnego_wrap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *item;
proto_tree *subtree;
diff --git a/epan/dissectors/packet-sprt.c b/epan/dissectors/packet-sprt.c
index c6ac24d97e..1e9a30620a 100644
--- a/epan/dissectors/packet-sprt.c
+++ b/epan/dissectors/packet-sprt.c
@@ -1343,7 +1343,7 @@ dissect_sprt_data(tvbuff_t *tvb,
}
static int
-dissect_sprt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sprt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
@@ -1478,7 +1478,7 @@ dissect_sprt(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
/* heuristic dissector */
static gboolean
-dissect_sprt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sprt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 octet, extension_bit, reserved_bit, payload_type;
guint16 word, tc, seqnum;
@@ -1511,7 +1511,7 @@ dissect_sprt_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
if ((tc == 0 || tc == 3) && (seqnum != 0)) /* seqnum only applies if tc is 1 or 2 */
return FALSE;
- dissect_sprt(tvb, pinfo, tree);
+ dissect_sprt(tvb, pinfo, tree, NULL);
return TRUE;
}
diff --git a/epan/dissectors/packet-srvloc.c b/epan/dissectors/packet-srvloc.c
index 75f1d54de5..bc7521661f 100644
--- a/epan/dissectors/packet-srvloc.c
+++ b/epan/dissectors/packet-srvloc.c
@@ -808,7 +808,7 @@ dissect_url_entry_v2(tvbuff_t *tvb, int offset, proto_tree *tree)
/* Packet dissection routine called by tcp & udp when port 427 detected */
static int
-dissect_srvloc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_srvloc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_item *ti, *tf;
@@ -1429,7 +1429,7 @@ dissect_srvloc_pdu(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
ti = proto_tree_add_item(tree, proto_srvloc, tvb, 0, -1, ENC_NA);
srvloc_tree = proto_item_add_subtree(ti, ett_srvloc);
}
- dissect_srvloc(tvb, pinfo, srvloc_tree);
+ dissect_srvloc(tvb, pinfo, srvloc_tree, NULL);
}
static void
diff --git a/epan/dissectors/packet-starteam.c b/epan/dissectors/packet-starteam.c
index 652fc1edbe..ef16408c6a 100644
--- a/epan/dissectors/packet-starteam.c
+++ b/epan/dissectors/packet-starteam.c
@@ -603,7 +603,7 @@ dissect_starteam_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_starteam_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_starteam_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if(tvb_length(tvb) >= 32){
gint iOffsetLengths = -1;
diff --git a/epan/dissectors/packet-stun.c b/epan/dissectors/packet-stun.c
index e52ff31496..f8e7b8becc 100644
--- a/epan/dissectors/packet-stun.c
+++ b/epan/dissectors/packet-stun.c
@@ -1011,7 +1011,7 @@ case EVEN_PORT:
}
static int
-dissect_stun_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_stun_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return dissect_stun_message(tvb, pinfo, tree, FALSE);
}
@@ -1030,7 +1030,7 @@ dissect_stun_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_stun_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_stun_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (dissect_stun_message(tvb, pinfo, tree, TRUE) == 0) {
/*
diff --git a/epan/dissectors/packet-sync.c b/epan/dissectors/packet-sync.c
index 959af49dc5..62a12adb3d 100644
--- a/epan/dissectors/packet-sync.c
+++ b/epan/dissectors/packet-sync.c
@@ -65,7 +65,7 @@ static const value_string sync_type_vals[] = {
};
static int
-dissect_sync(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_sync(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *sync_tree;
diff --git a/epan/dissectors/packet-t124.c b/epan/dissectors/packet-t124.c
index 8df19ee120..c12c7e9b59 100644
--- a/epan/dissectors/packet-t124.c
+++ b/epan/dissectors/packet-t124.c
@@ -2930,7 +2930,7 @@ int dissect_DomainMCSPDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tr
}
static int
-dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
proto_item *item = NULL;
proto_tree *tree = NULL;
@@ -2953,11 +2953,11 @@ dissect_t124_new(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
static void
dissect_t124(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
{
- dissect_t124_new(tvb, pinfo, parent_tree);
+ dissect_t124_new(tvb, pinfo, parent_tree, NULL);
}
static gboolean
-dissect_t124_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree)
+dissect_t124_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *parent_tree, void *data _U_)
{
asn1_ctx_t asn1_ctx;
diff --git a/epan/dissectors/packet-t30.c b/epan/dissectors/packet-t30.c
index eb72967bec..b2ba741d16 100644
--- a/epan/dissectors/packet-t30.c
+++ b/epan/dissectors/packet-t30.c
@@ -940,7 +940,7 @@ dissect_t30_dis_dtc(tvbuff_t *tvb, int offset, packet_info *pinfo, int len, prot
}
static int
-dissect_t30_hdlc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_t30_hdlc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_item *it;
diff --git a/epan/dissectors/packet-tali.c b/epan/dissectors/packet-tali.c
index 8d279716d1..e62b93b55e 100644
--- a/epan/dissectors/packet-tali.c
+++ b/epan/dissectors/packet-tali.c
@@ -144,7 +144,7 @@ dissect_tali(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
* it is a 'well-known' operation
*/
static gboolean
-dissect_tali_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tali_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
char opcode[TALI_OPCODE_LENGTH]; /* TALI opcode */
diff --git a/epan/dissectors/packet-tapa.c b/epan/dissectors/packet-tapa.c
index 985d88e860..114ac482d3 100644
--- a/epan/dissectors/packet-tapa.c
+++ b/epan/dissectors/packet-tapa.c
@@ -464,7 +464,7 @@ test_tapa_tunnel(tvbuff_t *tvb)
}
static int
-dissect_tapa_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tapa_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (test_tapa_discover(tvb)) {
return dissect_tapa_discover(tvb, pinfo, tree);
diff --git a/epan/dissectors/packet-tdmoe.c b/epan/dissectors/packet-tdmoe.c
index 16beba5063..37f06f3cb0 100644
--- a/epan/dissectors/packet-tdmoe.c
+++ b/epan/dissectors/packet-tdmoe.c
@@ -54,7 +54,7 @@ static gint ett_tdmoe_flags = -1;
static dissector_handle_t data_handle;
static int
-dissect_tdmoe(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tdmoe(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *tdmoe_tree;
diff --git a/epan/dissectors/packet-tds.c b/epan/dissectors/packet-tds.c
index ad237a3238..b77626ecc5 100644
--- a/epan/dissectors/packet-tds.c
+++ b/epan/dissectors/packet-tds.c
@@ -2613,7 +2613,7 @@ dissect_tds_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_tds_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tds_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
guint8 type;
diff --git a/epan/dissectors/packet-teredo.c b/epan/dissectors/packet-teredo.c
index ca0a7841d0..3978d088d2 100644
--- a/epan/dissectors/packet-teredo.c
+++ b/epan/dissectors/packet-teredo.c
@@ -260,7 +260,7 @@ dissect_teredo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_teredo_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_teredo_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint16 val;
int offset = 0;
diff --git a/epan/dissectors/packet-tftp.c b/epan/dissectors/packet-tftp.c
index f448eb7879..41016296ed 100644
--- a/epan/dissectors/packet-tftp.c
+++ b/epan/dissectors/packet-tftp.c
@@ -325,7 +325,7 @@ static void dissect_tftp_message(tftp_conv_info_t *tftp_info,
}
static gboolean
-dissect_embeddedtftp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_embeddedtftp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Used to dissect TFTP packets where one can not assume
that the TFTP is the only protocol used by that port, and
diff --git a/epan/dissectors/packet-tipc.c b/epan/dissectors/packet-tipc.c
index f73665e9b6..d8f6a95fe2 100644
--- a/epan/dissectors/packet-tipc.c
+++ b/epan/dissectors/packet-tipc.c
@@ -2002,7 +2002,7 @@ get_tipc_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
/* triggers the dissection of TIPC-over-TCP */
static int
-dissect_tipc_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_tipc_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
tcp_dissect_pdus(tvb, pinfo, parent_tree, tipc_tcp_desegment, 4, get_tipc_pdu_len,
dissect_tipc);
diff --git a/epan/dissectors/packet-tivoconnect.c b/epan/dissectors/packet-tivoconnect.c
index 44831543b0..268d138af7 100644
--- a/epan/dissectors/packet-tivoconnect.c
+++ b/epan/dissectors/packet-tivoconnect.c
@@ -66,7 +66,7 @@ static gint ett_tivoconnect = -1;
/* Code to actually dissect the packets */
static int
-dissect_tivoconnect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tivoconnect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* parsing variables */
gchar * string = NULL;
diff --git a/epan/dissectors/packet-tns.c b/epan/dissectors/packet-tns.c
index 5586b51ce7..5a11861e9a 100644
--- a/epan/dissectors/packet-tns.c
+++ b/epan/dissectors/packet-tns.c
@@ -852,7 +852,7 @@ get_tns_pdu_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_tns(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tns(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint8 type;
diff --git a/epan/dissectors/packet-trill.c b/epan/dissectors/packet-trill.c
index 9b1ec97359..5b71af9ebf 100644
--- a/epan/dissectors/packet-trill.c
+++ b/epan/dissectors/packet-trill.c
@@ -93,7 +93,7 @@ static const range_string nickname_strings[] = {
/* Trill Dissector */
static int
-dissect_trill( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree )
+dissect_trill( tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_ )
{
proto_item *ti ;
proto_tree *trill_tree ;
diff --git a/epan/dissectors/packet-tte.c b/epan/dissectors/packet-tte.c
index aef5139334..7eaebd8dc7 100644
--- a/epan/dissectors/packet-tte.c
+++ b/epan/dissectors/packet-tte.c
@@ -61,7 +61,7 @@ static gint ett_tte_macdest = -1;
/* Code to actually dissect the packets */
static int
-dissect_tte(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tte(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int is_frame_pcf;
diff --git a/epan/dissectors/packet-turnchannel.c b/epan/dissectors/packet-turnchannel.c
index 30ee3946de..24f462d8af 100644
--- a/epan/dissectors/packet-turnchannel.c
+++ b/epan/dissectors/packet-turnchannel.c
@@ -60,7 +60,7 @@ static gint ett_turnchannel = -1;
static int
dissect_turnchannel_message(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
guint len;
guint16 channel_id;
@@ -126,7 +126,7 @@ dissect_turnchannel_message(tvbuff_t *tvb, packet_info *pinfo,
static void
dissect_turnchannel_message_no_return(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
{
- dissect_turnchannel_message(tvb, pinfo, tree);
+ dissect_turnchannel_message(tvb, pinfo, tree, NULL);
}
@@ -145,7 +145,7 @@ dissect_turnchannel_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
static gboolean
-dissect_turnchannel_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_turnchannel_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint len;
guint16 channel_id;
@@ -168,7 +168,7 @@ dissect_turnchannel_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
return FALSE;
}
- return dissect_turnchannel_message(tvb, pinfo, tree);
+ return dissect_turnchannel_message(tvb, pinfo, tree, NULL);
}
void
diff --git a/epan/dissectors/packet-tuxedo.c b/epan/dissectors/packet-tuxedo.c
index 6987363e55..9defce4fe0 100644
--- a/epan/dissectors/packet-tuxedo.c
+++ b/epan/dissectors/packet-tuxedo.c
@@ -144,7 +144,7 @@ dissect_tuxedo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_tuxedo_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_tuxedo_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_length(tvb) >= 8)
{
diff --git a/epan/dissectors/packet-ucp.c b/epan/dissectors/packet-ucp.c
index 54639fe820..7d24da771e 100644
--- a/epan/dissectors/packet-ucp.c
+++ b/epan/dissectors/packet-ucp.c
@@ -1722,7 +1722,7 @@ add_6xO(proto_tree *tree, tvbuff_t *tvb, guint8 OT)
*/
static gboolean
-dissect_ucp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ucp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
diff --git a/epan/dissectors/packet-uma.c b/epan/dissectors/packet-uma.c
index 7dfc76feef..660dd60ded 100644
--- a/epan/dissectors/packet-uma.c
+++ b/epan/dissectors/packet-uma.c
@@ -1310,7 +1310,7 @@ dissect_uma_IE(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset)
* [TS 25.331], not including IEI and length, if present
*/
new_tvb = tvb_new_subset(tvb, ie_offset,ie_len, ie_len );
- dissect_rrc_InterRATHandoverInfo_PDU(new_tvb, pinfo, urr_ie_tree);
+ dissect_rrc_InterRATHandoverInfo_PDU(new_tvb, pinfo, urr_ie_tree, NULL);
break;
case 65:
/* 11.2.65 Classmark Enquiry Mask
@@ -1702,7 +1702,7 @@ dissect_uma_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static int
-dissect_uma_urlc_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_uma_urlc_udp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
diff --git a/epan/dissectors/packet-umts_fp.c b/epan/dissectors/packet-umts_fp.c
index 673495efbb..51f8aff8a5 100644
--- a/epan/dissectors/packet-umts_fp.c
+++ b/epan/dissectors/packet-umts_fp.c
@@ -3736,7 +3736,7 @@ void dissect_hsdsch_common_channel_info(tvbuff_t *tvb, packet_info *pinfo, proto
}
}
static gboolean
-heur_dissect_fp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+heur_dissect_fp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
struct fp_info *p_fp_info;
diff --git a/epan/dissectors/packet-usb-hid.c b/epan/dissectors/packet-usb-hid.c
index ae96da86a2..73b1e36548 100644
--- a/epan/dissectors/packet-usb-hid.c
+++ b/epan/dissectors/packet-usb-hid.c
@@ -750,7 +750,7 @@ static const value_string usb_hid_report_type_vals[] = {
* and FALSE otherwise.
*/
static gint
-dissect_usb_hid_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_usb_hid_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean is_request;
usb_conv_info_t *usb_conv_info;
diff --git a/epan/dissectors/packet-usb-hub.c b/epan/dissectors/packet-usb-hub.c
index b19d839295..d23f02c694 100644
--- a/epan/dissectors/packet-usb-hub.c
+++ b/epan/dissectors/packet-usb-hub.c
@@ -531,7 +531,7 @@ static const usb_setup_dissector_table_t setup_dissectors[] = {
* and FALSE otherwise.
*/
static gint
-dissect_usb_hub_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_usb_hub_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean is_request;
usb_conv_info_t *usb_conv_info;
diff --git a/epan/dissectors/packet-usb-masstorage.c b/epan/dissectors/packet-usb-masstorage.c
index 66d82a11ed..e99697b6f1 100644
--- a/epan/dissectors/packet-usb-masstorage.c
+++ b/epan/dissectors/packet-usb-masstorage.c
@@ -129,7 +129,7 @@ static const value_string setup_request_names_vals[] = {
* and FALSE othervise.
*/
static gint
-dissect_usb_ms_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_usb_ms_control(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gboolean is_request;
usb_conv_info_t *usb_conv_info;
diff --git a/epan/dissectors/packet-v150fw.c b/epan/dissectors/packet-v150fw.c
index c488862388..24fd73aa6a 100644
--- a/epan/dissectors/packet-v150fw.c
+++ b/epan/dissectors/packet-v150fw.c
@@ -36,8 +36,6 @@
#include <epan/packet.h>
-static int dissect_v150fw(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
-
/* Initialize the protocol & registered fields
* Look familiar? This is in the same format as an NTE (named telephone event) from RFC 2833:
*/
@@ -308,7 +306,7 @@ dissect_v150fw_heur(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree _U_)
#endif
static int
-dissect_v150fw(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
+dissect_v150fw(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_item *ti;
diff --git a/epan/dissectors/packet-vnc.c b/epan/dissectors/packet-vnc.c
index 1c9a38f932..ec903d1344 100644
--- a/epan/dissectors/packet-vnc.c
+++ b/epan/dissectors/packet-vnc.c
@@ -774,7 +774,7 @@ vnc_is_client_or_server_version_message(tvbuff_t *tvb, packet_info *pinfo, proto
}
static gboolean test_vnc_protocol(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree, void *data _U_)
{
conversation_t *conversation;
diff --git a/epan/dissectors/packet-vssmonitoring.c b/epan/dissectors/packet-vssmonitoring.c
index 322b73b28a..a044105783 100644
--- a/epan/dissectors/packet-vssmonitoring.c
+++ b/epan/dissectors/packet-vssmonitoring.c
@@ -62,7 +62,7 @@ static gint ett_vssmonitoring = -1;
static gboolean vssmonitoring_use_heuristics = TRUE;
static int
-dissect_vssmonitoring(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_vssmonitoring(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *ti = NULL;
proto_tree *vssmonitoring_tree = NULL;
diff --git a/epan/dissectors/packet-vuze-dht.c b/epan/dissectors/packet-vuze-dht.c
index 04db99fb63..86f245bba5 100644
--- a/epan/dissectors/packet-vuze-dht.c
+++ b/epan/dissectors/packet-vuze-dht.c
@@ -1017,7 +1017,7 @@ dissect_vuze_dht_request_key_block(tvbuff_t *tvb, packet_info _U_*pinfo, proto_t
}
static int
-dissect_vuze_dht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_vuze_dht(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti;
proto_tree *sub_tree;
diff --git a/epan/dissectors/packet-wassp.c b/epan/dissectors/packet-wassp.c
index debdbdaf95..8a29cc3d79 100644
--- a/epan/dissectors/packet-wassp.c
+++ b/epan/dissectors/packet-wassp.c
@@ -1018,7 +1018,7 @@ dissect_wassp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
#endif
static int
-dissect_wassp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_wassp_static(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if ( !test_wassp(tvb) ) {
return 0;
diff --git a/epan/dissectors/packet-waveagent.c b/epan/dissectors/packet-waveagent.c
index 56e075b02a..622a2db597 100644
--- a/epan/dissectors/packet-waveagent.c
+++ b/epan/dissectors/packet-waveagent.c
@@ -1076,7 +1076,7 @@ static int dissect_waveagent(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
return tvb_length(tvb);
}
-static gboolean dissect_waveagent_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gboolean dissect_waveagent_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
return (dissect_waveagent(tvb, pinfo, tree) > 0) ? TRUE : FALSE;
}
diff --git a/epan/dissectors/packet-wccp.c b/epan/dissectors/packet-wccp.c
index 7e98f46113..9d423ad117 100644
--- a/epan/dissectors/packet-wccp.c
+++ b/epan/dissectors/packet-wccp.c
@@ -280,7 +280,7 @@ static gboolean dissect_wccp2_alt_assignment_info(tvbuff_t *tvb, int offset,
int length, packet_info *pinfo, proto_tree *info_tree, proto_item *info_item);
static int
-dissect_wccp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_wccp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int offset = 0;
proto_tree *wccp_tree = NULL;
diff --git a/epan/dissectors/packet-websocket.c b/epan/dissectors/packet-websocket.c
index 9e00abc6ab..d29a73673a 100644
--- a/epan/dissectors/packet-websocket.c
+++ b/epan/dissectors/packet-websocket.c
@@ -264,7 +264,7 @@ dissect_websocket_payload(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ws_tree
return offset;
}
static int
-dissect_websocket(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_websocket(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti, *ti_len;
diff --git a/epan/dissectors/packet-wol.c b/epan/dissectors/packet-wol.c
index 6fd6fafe98..e7ea802eb3 100644
--- a/epan/dissectors/packet-wol.c
+++ b/epan/dissectors/packet-wol.c
@@ -83,7 +83,7 @@ static gint ett_wol_macblock = -1;
/* Code to actually dissect the packets */
static int
-dissect_wol(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_wol(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
guint len;
gint offset;
diff --git a/epan/dissectors/packet-wow.c b/epan/dissectors/packet-wow.c
index 0e0ad5b60b..91bb9ac0c9 100644
--- a/epan/dissectors/packet-wow.c
+++ b/epan/dissectors/packet-wow.c
@@ -143,7 +143,7 @@ static guint get_wow_pdu_len(packet_info *pinfo, tvbuff_t *tvb, int offset);
static gboolean
-dissect_wow(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_wow(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
gint8 size_field_offset = -1;
guint8 cmd;
diff --git a/epan/dissectors/packet-x224.c b/epan/dissectors/packet-x224.c
index 2e255607ff..302eab34d6 100644
--- a/epan/dissectors/packet-x224.c
+++ b/epan/dissectors/packet-x224.c
@@ -179,7 +179,7 @@ dissect_x224_dt(packet_info *pinfo _U_, proto_tree *tree, tvbuff_t *tvb, int off
}
static int
-dissect_x224(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_x224(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_tree *tree = NULL;
proto_item *item = NULL;
diff --git a/epan/dissectors/packet-x509af.c b/epan/dissectors/packet-x509af.c
index e303d949f9..6b70549ebf 100644
--- a/epan/dissectors/packet-x509af.c
+++ b/epan/dissectors/packet-x509af.c
@@ -897,7 +897,7 @@ const char *x509af_get_last_algorithm_id(void) {
static int
-dissect_pkix_crl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
+dissect_pkix_crl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, void *data _U_)
{
proto_item *item=NULL;
proto_tree *tree=NULL;
diff --git a/epan/dissectors/packet-xcsl.c b/epan/dissectors/packet-xcsl.c
index 75b08236d5..d4554283ea 100644
--- a/epan/dissectors/packet-xcsl.c
+++ b/epan/dissectors/packet-xcsl.c
@@ -273,7 +273,7 @@ static void dissect_xcsl_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
/* This function determines whether the first 4 octets equals to xcsl and the fifth is an ; or - */
-static gboolean dissect_xcsl_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+static gboolean dissect_xcsl_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
gint offset = 0;
guint8 *protocol;
diff --git a/epan/dissectors/packet-xmcp.c b/epan/dissectors/packet-xmcp.c
index adaa9cc6bd..5a01606f6f 100644
--- a/epan/dissectors/packet-xmcp.c
+++ b/epan/dissectors/packet-xmcp.c
@@ -1094,7 +1094,7 @@ dissect_xmcp_tcp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
}
static gboolean
-dissect_xmcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_xmcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* See if this looks like a real XMCP packet */
if (tvb_length(tvb) < XMCP_HDR_LEN) {
diff --git a/epan/dissectors/packet-xml.c b/epan/dissectors/packet-xml.c
index 9fa31818ed..b7bef41548 100644
--- a/epan/dissectors/packet-xml.c
+++ b/epan/dissectors/packet-xml.c
@@ -226,7 +226,7 @@ dissect_xml(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
pinfo->private_data = current_frame; /* pass XML structure to the dissector calling XML */
}
-static gboolean dissect_xml_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+static gboolean dissect_xml_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
if (tvbparse_peek(tvbparse_init(tvb,0,-1,NULL,want_ignore), want_heur)) {
dissect_xml(tvb, pinfo, tree);
return TRUE;
diff --git a/epan/dissectors/packet-xot.c b/epan/dissectors/packet-xot.c
index 6d4eaecf08..b82fd0e124 100644
--- a/epan/dissectors/packet-xot.c
+++ b/epan/dissectors/packet-xot.c
@@ -300,7 +300,7 @@ static void dissect_xot_mult(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree
offset += plen;
}
}
-static int dissect_xot_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static int dissect_xot_tcp_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
int tvb_len = tvb_length(tvb);
int len = 0;
diff --git a/epan/dissectors/packet-xtp.c b/epan/dissectors/packet-xtp.c
index 4533efd7b2..92c7a8e5d1 100644
--- a/epan/dissectors/packet-xtp.c
+++ b/epan/dissectors/packet-xtp.c
@@ -902,7 +902,7 @@ dissect_xtp_diag(tvbuff_t *tvb, proto_tree *tree, guint32 offset) {
/* main dissector */
static int
-dissect_xtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) {
+dissect_xtp(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_) {
guint32 offset, len;
proto_item *ti;
proto_tree *xtp_tree, *xtp_cmd_tree, *xtp_subtree;
diff --git a/epan/dissectors/packet-xyplex.c b/epan/dissectors/packet-xyplex.c
index efecda7f38..73225532f5 100644
--- a/epan/dissectors/packet-xyplex.c
+++ b/epan/dissectors/packet-xyplex.c
@@ -58,7 +58,7 @@ static const value_string xyplex_reg_vals[] = {
};
static int
-dissect_xyplex(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_xyplex(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *xyplex_tree = NULL;
proto_item *ti;
diff --git a/epan/dissectors/packet-yami.c b/epan/dissectors/packet-yami.c
index d21a366356..b5168f17e0 100644
--- a/epan/dissectors/packet-yami.c
+++ b/epan/dissectors/packet-yami.c
@@ -501,7 +501,7 @@ get_yami_message_len(packet_info *pinfo _U_, tvbuff_t *tvb, int offset)
}
static int
-dissect_yami(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_yami(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
tcp_dissect_pdus(tvb, pinfo, tree, yami_desegment, FRAME_HEADER_LEN, get_yami_message_len, dissect_yami_pdu);
return tvb_length(tvb);
diff --git a/epan/dissectors/packet-yhoo.c b/epan/dissectors/packet-yhoo.c
index f5e7a0ad75..4ebaec6cfa 100644
--- a/epan/dissectors/packet-yhoo.c
+++ b/epan/dissectors/packet-yhoo.c
@@ -176,7 +176,7 @@ static const value_string yhoo_msgtype_vals[] = {
};
static gboolean
-dissect_yhoo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_yhoo(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_tree *yhoo_tree, *ti;
int offset = 0;
diff --git a/epan/dissectors/packet-ymsg.c b/epan/dissectors/packet-ymsg.c
index 77b0e68ca5..c43bcd3ea2 100644
--- a/epan/dissectors/packet-ymsg.c
+++ b/epan/dissectors/packet-ymsg.c
@@ -346,7 +346,7 @@ static int get_content_item_length(tvbuff_t *tvb, int offset)
static gboolean
-dissect_ymsg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_ymsg(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
if (tvb_length(tvb) < 4) {
return FALSE;
diff --git a/epan/dissectors/packet-zbee-nwk.c b/epan/dissectors/packet-zbee-nwk.c
index 647c05b2dd..02ac7c1179 100644
--- a/epan/dissectors/packet-zbee-nwk.c
+++ b/epan/dissectors/packet-zbee-nwk.c
@@ -299,7 +299,7 @@ zbee_get_bit_field(guint input, guint mask)
*---------------------------------------------------------------
*/
static gboolean
-dissect_zbee_nwk_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_zbee_nwk_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
ieee802154_packet *packet = (ieee802154_packet *)pinfo->private_data;
diff --git a/epan/dissectors/packet-ziop.c b/epan/dissectors/packet-ziop.c
index e39fff4f72..a7673c478e 100644
--- a/epan/dissectors/packet-ziop.c
+++ b/epan/dissectors/packet-ziop.c
@@ -148,7 +148,7 @@ dissect_ziop_tcp (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
gboolean
-dissect_ziop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree) {
+dissect_ziop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data _U_) {
guint tot_len;
diff --git a/epan/dissectors/packet-ziop.h b/epan/dissectors/packet-ziop.h
index 058e8ff76a..e584f52617 100644
--- a/epan/dissectors/packet-ziop.h
+++ b/epan/dissectors/packet-ziop.h
@@ -56,6 +56,6 @@ typedef struct ZIOP_CompressionData {
} CompressionData;
gboolean
-dissect_ziop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree);
+dissect_ziop_heur (tvbuff_t * tvb, packet_info * pinfo, proto_tree * tree, void * data);
#endif /* PACKET_ZIOP_H */
diff --git a/epan/packet.c b/epan/packet.c
index 81d64f4bba..13fd473f5b 100644
--- a/epan/packet.c
+++ b/epan/packet.c
@@ -412,7 +412,7 @@ call_dissector_through_handle(dissector_handle_t handle, tvbuff_t *tvb,
if (handle->is_new) {
EP_CHECK_CANARY(("before calling handle->dissector.new for %s",handle->name));
- ret = (*handle->dissector.new)(tvb, pinfo, tree);
+ ret = (*handle->dissector.new)(tvb, pinfo, tree, NULL);
EP_CHECK_CANARY(("after calling handle->dissector.new for %s",handle->name));
} else {
EP_CHECK_CANARY(("before calling handle->dissector.old for %s",handle->name));
@@ -1764,7 +1764,7 @@ dissector_try_heuristic(heur_dissector_list_t sub_dissectors,
}
EP_CHECK_CANARY(("before calling heuristic dissector for protocol: %s",
proto_get_protocol_filter_name(proto_get_id(hdtbl_entry->protocol))));
- if ((*hdtbl_entry->dissector)(tvb, pinfo, tree)) {
+ if ((*hdtbl_entry->dissector)(tvb, pinfo, tree, NULL)) {
EP_CHECK_CANARY(("after heuristic dissector for protocol: %s has accepted and dissected packet",
proto_get_protocol_filter_name(proto_get_id(hdtbl_entry->protocol))));
status = TRUE;
diff --git a/epan/packet.h b/epan/packet.h
index 924408b437..eb4ff1feec 100644
--- a/epan/packet.h
+++ b/epan/packet.h
@@ -113,7 +113,7 @@ typedef void (*dissector_t)(tvbuff_t *, packet_info *, proto_tree *);
* we need more data (e.g., from subsequent TCP segments) to
* dissect the entire PDU.
*/
-typedef int (*new_dissector_t)(tvbuff_t *, packet_info *, proto_tree *);
+typedef int (*new_dissector_t)(tvbuff_t *, packet_info *, proto_tree *, void *);
/** Type of a heuristic dissector, used in heur_dissector_add().
*
@@ -123,7 +123,7 @@ typedef int (*new_dissector_t)(tvbuff_t *, packet_info *, proto_tree *);
* @return TRUE if the packet was recognized by the sub-dissector (stop dissection here)
*/
typedef gboolean (*heur_dissector_t)(tvbuff_t *tvb, packet_info *pinfo,
- proto_tree *tree);
+ proto_tree *tree, void *);
typedef void (*DATFunc) (const gchar *table_name, ftenum_t selector_type,
gpointer key, gpointer value, gpointer user_data);
diff --git a/epan/wslua/init_wslua.c b/epan/wslua/init_wslua.c
index 53d2370076..6337af9a91 100644
--- a/epan/wslua/init_wslua.c
+++ b/epan/wslua/init_wslua.c
@@ -66,7 +66,7 @@ static int wslua_not_register_menu(lua_State* LS) {
return 0;
}
-int dissect_lua(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree) {
+int dissect_lua(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, void* data _U_) {
int consumed_bytes = tvb_length(tvb);
lua_pinfo = pinfo;
lua_tvb = tvb;
diff --git a/epan/wslua/wslua.h b/epan/wslua/wslua.h
index 378f0cfa7d..fc41392426 100644
--- a/epan/wslua/wslua.h
+++ b/epan/wslua/wslua.h
@@ -416,7 +416,7 @@ extern lua_State* wslua_state(void);
extern gboolean wslua_optbool(lua_State* L, int n, gboolean def);
extern const gchar* lua_shiftstring(lua_State* L,int idx);
-extern int dissect_lua(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree);
+extern int dissect_lua(tvbuff_t* tvb, packet_info* pinfo, proto_tree* tree, void* data);
extern void proto_register_lua(void);
extern GString* lua_register_all_taps(void);
diff --git a/plugins/ethercat/packet-ams.c b/plugins/ethercat/packet-ams.c
index 5c5d82e8d9..91ccae452e 100644
--- a/plugins/ethercat/packet-ams.c
+++ b/plugins/ethercat/packet-ams.c
@@ -395,7 +395,7 @@ static void NetIdFormater(tvbuff_t *tvb, guint offset, char *szText, gint nMax)
/*ams*/
-static gint dissect_ams(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+static gint dissect_ams(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
proto_item *ti, *anItem;
proto_tree *ams_tree = NULL, *ams_adstree, *ams_statetree;
diff --git a/plugins/ethercat/packet-esl.c b/plugins/ethercat/packet-esl.c
index ef171f0783..3e55ad93c3 100644
--- a/plugins/ethercat/packet-esl.c
+++ b/plugins/ethercat/packet-esl.c
@@ -260,7 +260,7 @@ void modify_times(tvbuff_t *tvb, gint offset, packet_info *pinfo)
}
static gboolean
-dissect_esl_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_esl_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
static gboolean in_heur = FALSE;
gboolean result;
diff --git a/plugins/profinet/packet-dcerpc-pn-io.c b/plugins/profinet/packet-dcerpc-pn-io.c
index 528f31a1fd..c2e4d4540e 100644
--- a/plugins/profinet/packet-dcerpc-pn-io.c
+++ b/plugins/profinet/packet-dcerpc-pn-io.c
@@ -8738,7 +8738,7 @@ dissect_PNIO_C_SDU(tvbuff_t *tvb, int offset,
data_tree = proto_item_add_subtree(data_item, ett_pn_io_rtc);
/*dissect_dcerpc_uint16(tvb, offset, pinfo, data_tree, drep,hf_pn_io_packedframe_SFCRC, &u16SFCRC);*/
- if(!(dissect_CSF_SDU_heur(tvb, pinfo, data_tree) == FALSE))
+ if(!(dissect_CSF_SDU_heur(tvb, pinfo, data_tree, NULL) == FALSE))
return(tvb_length(tvb));
/* XXX - dissect the remaining data */
/* this will be one or more DataItems followed by an optional GAP and RTCPadding */
@@ -8854,8 +8854,8 @@ dissect_PNIO_RTA(tvbuff_t *tvb, int offset,
/* possibly dissect a PN-IO related PN-RT packet */
static gboolean
-dissect_PNIO_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_PNIO_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint8 drep_data = 0;
guint8 *drep = &drep_data;
diff --git a/plugins/profinet/packet-dcom-cba-acco.c b/plugins/profinet/packet-dcom-cba-acco.c
index f202e33ba9..476b80690b 100644
--- a/plugins/profinet/packet-dcom-cba-acco.c
+++ b/plugins/profinet/packet-dcom-cba-acco.c
@@ -3137,8 +3137,8 @@ dissect_CBA_Connection_Data(tvbuff_t *tvb,
static gboolean
-dissect_CBA_Connection_Data_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_CBA_Connection_Data_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint8 u8Version;
guint8 u8Flags;
diff --git a/plugins/profinet/packet-pn-dcp.c b/plugins/profinet/packet-pn-dcp.c
index 86e4c0c510..be32ec7a04 100644
--- a/plugins/profinet/packet-pn-dcp.c
+++ b/plugins/profinet/packet-pn-dcp.c
@@ -905,8 +905,8 @@ dissect_PNDCP_PDU(tvbuff_t *tvb,
/* possibly dissect a PN-RT packet (frame ID must be in the appropriate range) */
static gboolean
-dissect_PNDCP_Data_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_PNDCP_Data_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint16 u16FrameID;
proto_item *item = NULL;
diff --git a/plugins/profinet/packet-pn-mrrt.c b/plugins/profinet/packet-pn-mrrt.c
index 8201ac3fa7..b60ac4dd13 100644
--- a/plugins/profinet/packet-pn-mrrt.c
+++ b/plugins/profinet/packet-pn-mrrt.c
@@ -158,8 +158,8 @@ dissect_PNMRRT_PDU(tvbuff_t *tvb, int offset,
/* possibly dissect a PN-RT packet (frame ID must be in the appropriate range) */
static gboolean
-dissect_PNMRRT_Data_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_PNMRRT_Data_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint16 u16FrameID;
proto_item *item = NULL;
diff --git a/plugins/profinet/packet-pn-ptcp.c b/plugins/profinet/packet-pn-ptcp.c
index 47065a6f6d..ec8129088e 100644
--- a/plugins/profinet/packet-pn-ptcp.c
+++ b/plugins/profinet/packet-pn-ptcp.c
@@ -726,8 +726,8 @@ dissect_PNPTCP_DelayPDU(tvbuff_t *tvb, int offset,
/* possibly dissect a PN-RT packet (frame ID must be in the appropriate range) */
static gboolean
-dissect_PNPTCP_Data_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_PNPTCP_Data_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint16 u16FrameID;
proto_item *item = NULL;
diff --git a/plugins/profinet/packet-pn-rt.c b/plugins/profinet/packet-pn-rt.c
index 3c6b1b2f28..5aba1183ef 100644
--- a/plugins/profinet/packet-pn-rt.c
+++ b/plugins/profinet/packet-pn-rt.c
@@ -205,8 +205,8 @@ static gboolean IsDFP_Frame(tvbuff_t *tvb)
/* possibly dissect a CSF_SDU related PN-RT packet */
gboolean
-dissect_CSF_SDU_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_CSF_SDU_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint16 u16FrameID;
guint16 u16SFCRC16;
@@ -299,8 +299,8 @@ dissect_CSF_SDU_heur(tvbuff_t *tvb,
/* possibly dissect a FRAG_PDU related PN-RT packet */
static gboolean
-dissect_FRAG_PDU_heur(tvbuff_t *tvb,
- packet_info *pinfo, proto_tree *tree)
+dissect_FRAG_PDU_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree,
+ void *data _U_)
{
guint16 u16FrameID;
int offset = 0;
diff --git a/plugins/profinet/packet-pn.h b/plugins/profinet/packet-pn.h
index 0d52379850..86b02d1872 100644
--- a/plugins/profinet/packet-pn.h
+++ b/plugins/profinet/packet-pn.h
@@ -75,4 +75,4 @@ extern int dissect_pn_align4(tvbuff_t *tvb, int offset, packet_info *pinfo, prot
extern void pn_append_info(packet_info *pinfo, proto_item *dcp_item, const char *text);
-extern gboolean dissect_CSF_SDU_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
+extern gboolean dissect_CSF_SDU_heur(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data);
diff --git a/plugins/unistim/packet-unistim.c b/plugins/unistim/packet-unistim.c
index dbf086ce9a..7443c97b26 100644
--- a/plugins/unistim/packet-unistim.c
+++ b/plugins/unistim/packet-unistim.c
@@ -59,7 +59,6 @@ static int unistim_tap = -1;
void proto_reg_handoff_unistim(void);
static void dissect_payload(proto_tree *unistim_tree,tvbuff_t *tvb,gint offset, packet_info *pinfo);
-static int dissect_unistim(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
static gint dissect_broadcast_switch(proto_tree *msg_tree,
tvbuff_t *tvb,gint offset,guint msg_len);
@@ -184,7 +183,7 @@ static const value_string command_address[]={
};
static int
-dissect_unistim(tvbuff_t *tvb,packet_info *pinfo,proto_tree *tree){
+dissect_unistim(tvbuff_t *tvb,packet_info *pinfo,proto_tree *tree,void *data _U_){
gint offset=0;
proto_item *ti= NULL;
proto_item *ti1= NULL;
diff --git a/plugins/wimaxasncp/packet-wimaxasncp.c b/plugins/wimaxasncp/packet-wimaxasncp.c
index ab82c6f70a..e4d66f7009 100644
--- a/plugins/wimaxasncp/packet-wimaxasncp.c
+++ b/plugins/wimaxasncp/packet-wimaxasncp.c
@@ -2143,7 +2143,8 @@ static int
dissect_wimaxasncp(
tvbuff_t *tvb,
packet_info *pinfo,
- proto_tree *tree)
+ proto_tree *tree,
+ void *data _U_)
{
const gchar *unknown = "Unknown";
diff --git a/plugins/wimaxmacphy/packet-wimaxmacphy.c b/plugins/wimaxmacphy/packet-wimaxmacphy.c
index 164206ee86..4270c3769a 100644
--- a/plugins/wimaxmacphy/packet-wimaxmacphy.c
+++ b/plugins/wimaxmacphy/packet-wimaxmacphy.c
@@ -2388,7 +2388,7 @@ static guint dissect_wimaxmacphy_phy_rxcdma_indication(tvbuff_t *tvb, guint offs
}
static int
-dissect_wimaxmacphy(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
+dissect_wimaxmacphy(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void *data _U_)
{
/* Set up structures needed to add the protocol subtree and manage it */
proto_tree *wimaxmacphy_tree, *primitive_tree;
diff --git a/tools/asn2wrs.py b/tools/asn2wrs.py
index 797dc1cb0e..3a743ddcd2 100755
--- a/tools/asn2wrs.py
+++ b/tools/asn2wrs.py
@@ -1540,9 +1540,10 @@ class EthCtx:
out += 'static '
if (is_new):
out += 'int '
+ out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);\n'
else:
out += 'void '
- out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);\n'
+ out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_);\n'
return out
#--- eth_output_hf ----------------------------------------------------------
@@ -1721,9 +1722,10 @@ class EthCtx:
out += 'static '
if (is_new):
out += 'int '
+ out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {\n'
else:
out += 'void '
- out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {\n'
+ out += 'dissect_'+f+'(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {\n'
if (is_new):
out += ' int offset = 0;\n'
off_par = 'offset'