aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Mann <mmann78@netscape.net>2016-03-16 09:02:52 -0400
committerMichael Mann <mmann78@netscape.net>2016-03-20 12:48:48 +0000
commit9bcac48403de9aff6435d0f48028ae1f72f64528 (patch)
tree16989d2207299572c970a79b6d4c4037fa975c55
parent6da50e2fde7b678cfbee922e3b12d588d75b6eef (diff)
Manually add protocol dependencies derived from find_dissector.
Started by grepping call_dissector_with_data, call_dissector_only and call_dissector and traced the handles passed into them to a find_dissector within the dissector. Then replaced find_dissector with find_dissector_add_dependency and added the protocol id from the dissector. "data" dissector was not considered to be a dependency. Change-Id: I15d0d77301306587ef8e7af5876e74231816890d Reviewed-on: https://code.wireshark.org/review/14509 Petri-Dish: Michael Mann <mmann78@netscape.net> Reviewed-by: Michael Mann <mmann78@netscape.net>
-rw-r--r--epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c5
-rw-r--r--epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c6
-rw-r--r--epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c8
-rw-r--r--epan/dissectors/asn1/h248/packet-h248-template.c2
-rw-r--r--epan/dissectors/asn1/h283/packet-h283-template.c4
-rw-r--r--epan/dissectors/asn1/h460/packet-h460-template.c4
-rw-r--r--epan/dissectors/asn1/ilp/packet-ilp-template.c6
-rw-r--r--epan/dissectors/asn1/kerberos/packet-kerberos-template.c2
-rw-r--r--epan/dissectors/asn1/lcsap/packet-lcsap-template.c4
-rw-r--r--epan/dissectors/asn1/ldap/packet-ldap-template.c10
-rw-r--r--epan/dissectors/asn1/lpp/packet-lpp-template.c2
-rw-r--r--epan/dissectors/asn1/q932/packet-q932-template.c2
-rw-r--r--epan/dissectors/asn1/qsig/packet-qsig-template.c4
-rw-r--r--epan/dissectors/asn1/ranap/packet-ranap-template.c4
-rw-r--r--epan/dissectors/asn1/rnsap/packet-rnsap-template.c2
-rw-r--r--epan/dissectors/asn1/rrc/packet-rrc-template.c8
-rw-r--r--epan/dissectors/asn1/rua/packet-rua-template.c2
-rw-r--r--epan/dissectors/asn1/s1ap/packet-s1ap-template.c8
-rw-r--r--epan/dissectors/asn1/t38/packet-t38-template.c4
-rw-r--r--epan/dissectors/asn1/tcap/packet-tcap-template.c2
-rw-r--r--epan/dissectors/asn1/ulp/packet-ulp-template.c4
-rw-r--r--epan/dissectors/file-btsnoop.c6
-rw-r--r--epan/dissectors/file-pcap.c2
-rw-r--r--epan/dissectors/file-pcapng.c2
-rw-r--r--epan/dissectors/packet-3com-xns.c2
-rw-r--r--epan/dissectors/packet-6lowpan.c2
-rw-r--r--epan/dissectors/packet-a21.c2
-rw-r--r--epan/dissectors/packet-acr122.c2
-rw-r--r--epan/dissectors/packet-actrace.c2
-rw-r--r--epan/dissectors/packet-adb.c2
-rw-r--r--epan/dissectors/packet-adb_cs.c2
-rw-r--r--epan/dissectors/packet-adb_service.c2
-rw-r--r--epan/dissectors/packet-afp.c2
-rw-r--r--epan/dissectors/packet-ansi_tcap.c9
-rw-r--r--epan/dissectors/packet-applemidi.c2
-rw-r--r--epan/dissectors/packet-artnet.c4
-rw-r--r--epan/dissectors/packet-aruba-erm.c8
-rw-r--r--epan/dissectors/packet-ascend.c4
-rw-r--r--epan/dissectors/packet-atalk.c4
-rw-r--r--epan/dissectors/packet-atm.c16
-rw-r--r--epan/dissectors/packet-atn-ulcs.c6
-rw-r--r--epan/dissectors/packet-ax25-kiss.c2
-rw-r--r--epan/dissectors/packet-ax25-nol3.c2
-rw-r--r--epan/dissectors/packet-bacnet.c2
-rw-r--r--epan/dissectors/packet-bat.c2
-rw-r--r--epan/dissectors/packet-batadv.c2
-rw-r--r--epan/dissectors/packet-bctp.c2
-rw-r--r--epan/dissectors/packet-bittorrent.c2
-rw-r--r--epan/dissectors/packet-bluetooth.c4
-rw-r--r--epan/dissectors/packet-bmp.c2
-rw-r--r--epan/dissectors/packet-bpdu.c4
-rw-r--r--epan/dissectors/packet-bpq.c2
-rw-r--r--epan/dissectors/packet-brdwlk.c2
-rw-r--r--epan/dissectors/packet-bssap.c7
-rw-r--r--epan/dissectors/packet-btatt.c8
-rw-r--r--epan/dissectors/packet-btavdtp.c16
-rw-r--r--epan/dissectors/packet-btbnep.c6
-rw-r--r--epan/dissectors/packet-bthci_acl.c2
-rw-r--r--epan/dissectors/packet-bthci_evt.c10
-rw-r--r--epan/dissectors/packet-bthci_vendor.c2
-rw-r--r--epan/dissectors/packet-bthid.c6
-rw-r--r--epan/dissectors/packet-btle.c6
-rw-r--r--epan/dissectors/packet-btle_rf.c2
-rw-r--r--epan/dissectors/packet-btrfcomm.c2
-rw-r--r--epan/dissectors/packet-btsap.c6
-rw-r--r--epan/dissectors/packet-bzr.c2
-rw-r--r--epan/dissectors/packet-c15ch.c6
-rw-r--r--epan/dissectors/packet-capwap.c9
-rw-r--r--epan/dissectors/packet-cip.c2
-rw-r--r--epan/dissectors/packet-cisco-erspan.c2
-rw-r--r--epan/dissectors/packet-cisco-fp-mim.c2
-rw-r--r--epan/dissectors/packet-cisco-metadata.c2
-rw-r--r--epan/dissectors/packet-cisco-sm.c6
-rw-r--r--epan/dissectors/packet-cisco-wids.c2
-rw-r--r--epan/dissectors/packet-clip.c2
-rw-r--r--epan/dissectors/packet-clnp.c6
-rw-r--r--epan/dissectors/packet-corosync-totemnet.c2
-rw-r--r--epan/dissectors/packet-cosine.c10
-rw-r--r--epan/dissectors/packet-couchbase.c2
-rw-r--r--epan/dissectors/packet-cpfi.c2
-rw-r--r--epan/dissectors/packet-daap.c2
-rw-r--r--epan/dissectors/packet-diameter.c2
-rw-r--r--epan/dissectors/packet-diameter_3gpp.c2
-rw-r--r--epan/dissectors/packet-dis.c4
-rw-r--r--epan/dissectors/packet-dns.c4
-rw-r--r--epan/dissectors/packet-dpnss-link.c2
-rw-r--r--epan/dissectors/packet-dsi.c4
-rw-r--r--epan/dissectors/packet-dua.c2
-rw-r--r--epan/dissectors/packet-dvb-data-mpe.c4
-rw-r--r--epan/dissectors/packet-dvb-ipdc.c2
-rw-r--r--epan/dissectors/packet-dvb-s2-bb.c4
-rw-r--r--epan/dissectors/packet-dvbci.c6
-rw-r--r--epan/dissectors/packet-e100.c2
-rw-r--r--epan/dissectors/packet-eap.c2
-rw-r--r--epan/dissectors/packet-eapol.c4
-rw-r--r--epan/dissectors/packet-ecmp.c2
-rw-r--r--epan/dissectors/packet-ehdlc.c4
-rw-r--r--epan/dissectors/packet-ehs.c2
-rw-r--r--epan/dissectors/packet-eigrp.c2
-rw-r--r--epan/dissectors/packet-elasticsearch.c2
-rw-r--r--epan/dissectors/packet-enip.c4
-rw-r--r--epan/dissectors/packet-epon.c2
-rw-r--r--epan/dissectors/packet-erf.c12
-rw-r--r--epan/dissectors/packet-eth.c4
-rw-r--r--epan/dissectors/packet-etherip.c2
-rw-r--r--epan/dissectors/packet-etsi_card_app_toolkit.c2
-rw-r--r--epan/dissectors/packet-etv.c3
-rw-r--r--epan/dissectors/packet-fcels.c2
-rw-r--r--epan/dissectors/packet-fcip.c2
-rw-r--r--epan/dissectors/packet-fcoe.c2
-rw-r--r--epan/dissectors/packet-fcoib.c2
-rw-r--r--epan/dissectors/packet-fcswils.c2
-rw-r--r--epan/dissectors/packet-fddi.c2
-rw-r--r--epan/dissectors/packet-fip.c2
-rw-r--r--epan/dissectors/packet-forces.c2
-rw-r--r--epan/dissectors/packet-fp_hint.c4
-rw-r--r--epan/dissectors/packet-fr.c6
-rw-r--r--epan/dissectors/packet-frame.c2
-rw-r--r--epan/dissectors/packet-fw1.c2
-rw-r--r--epan/dissectors/packet-gadu-gadu.c2
-rw-r--r--epan/dissectors/packet-gmhdr.c2
-rw-r--r--epan/dissectors/packet-gmr1_dtap.c2
-rw-r--r--epan/dissectors/packet-gprs-llc.c2
-rw-r--r--epan/dissectors/packet-gsm_a_bssmap.c8
-rw-r--r--epan/dissectors/packet-gsm_a_dtap.c4
-rw-r--r--epan/dissectors/packet-gsm_a_gm.c4
-rw-r--r--epan/dissectors/packet-gsm_a_rp.c2
-rw-r--r--epan/dissectors/packet-gsm_a_rr.c4
-rw-r--r--epan/dissectors/packet-gsm_abis_oml.c2
-rw-r--r--epan/dissectors/packet-gsm_bsslap.c2
-rw-r--r--epan/dissectors/packet-gsm_bssmap_le.c2
-rw-r--r--epan/dissectors/packet-gsm_cbch.c2
-rw-r--r--epan/dissectors/packet-gsm_ipa.c8
-rw-r--r--epan/dissectors/packet-gsm_map.c8
-rw-r--r--epan/dissectors/packet-gsm_sim.c2
-rw-r--r--epan/dissectors/packet-gsm_sms_ud.c2
-rw-r--r--epan/dissectors/packet-gsm_um.c4
-rw-r--r--epan/dissectors/packet-gsmtap.c164
-rw-r--r--epan/dissectors/packet-gssapi.c10
-rw-r--r--epan/dissectors/packet-gtp.c16
-rw-r--r--epan/dissectors/packet-gtpv2.c2
-rw-r--r--epan/dissectors/packet-h248.c2
-rw-r--r--epan/dissectors/packet-h248_q1950.c2
-rw-r--r--epan/dissectors/packet-h283.c4
-rw-r--r--epan/dissectors/packet-h460.c4
-rw-r--r--epan/dissectors/packet-hci_mon.c8
-rw-r--r--epan/dissectors/packet-hci_usb.c8
-rw-r--r--epan/dissectors/packet-hdmi.c2
-rw-r--r--epan/dissectors/packet-hp-erm.c2
-rw-r--r--epan/dissectors/packet-http.c10
-rw-r--r--epan/dissectors/packet-icap.c2
-rw-r--r--epan/dissectors/packet-icmp.c2
-rw-r--r--epan/dissectors/packet-icmpv6.c2
-rw-r--r--epan/dissectors/packet-ieee80211-netmon.c2
-rw-r--r--epan/dissectors/packet-ieee80211-prism.c6
-rw-r--r--epan/dissectors/packet-ieee80211-radio.c2
-rw-r--r--epan/dissectors/packet-ieee80211-radiotap.c4
-rw-r--r--epan/dissectors/packet-ieee80211-wlancap.c2
-rw-r--r--epan/dissectors/packet-ieee80211.c6
-rw-r--r--epan/dissectors/packet-ieee8021ah.c3
-rw-r--r--epan/dissectors/packet-ifcp.c2
-rw-r--r--epan/dissectors/packet-ilp.c6
-rw-r--r--epan/dissectors/packet-inap.c49
-rw-r--r--epan/dissectors/packet-infiniband.c2
-rw-r--r--epan/dissectors/packet-ipdc.c2
-rw-r--r--epan/dissectors/packet-ipfc.c2
-rw-r--r--epan/dissectors/packet-ipmi-session.c2
-rw-r--r--epan/dissectors/packet-ipnet.c4
-rw-r--r--epan/dissectors/packet-ipoib.c6
-rw-r--r--epan/dissectors/packet-ipos.c2
-rw-r--r--epan/dissectors/packet-ipsec-tcp.c4
-rw-r--r--epan/dissectors/packet-ipsec-udp.c4
-rw-r--r--epan/dissectors/packet-isakmp.c2
-rw-r--r--epan/dissectors/packet-iser.c4
-rw-r--r--epan/dissectors/packet-isl.c4
-rw-r--r--epan/dissectors/packet-isup.c4
-rw-r--r--epan/dissectors/packet-iua.c4
-rw-r--r--epan/dissectors/packet-iwarp-mpa.c2
-rw-r--r--epan/dissectors/packet-ixveriwave.c4
-rw-r--r--epan/dissectors/packet-json.c2
-rw-r--r--epan/dissectors/packet-juniper.c2
-rw-r--r--epan/dissectors/packet-jxta.c5
-rw-r--r--epan/dissectors/packet-kerberos.c2
-rw-r--r--epan/dissectors/packet-l2tp.c8
-rw-r--r--epan/dissectors/packet-lapb.c4
-rw-r--r--epan/dissectors/packet-lapbether.c2
-rw-r--r--epan/dissectors/packet-lcsap.c4
-rw-r--r--epan/dissectors/packet-ldap.c10
-rw-r--r--epan/dissectors/packet-lge_monitor.c8
-rw-r--r--epan/dissectors/packet-lisp-data.c6
-rw-r--r--epan/dissectors/packet-lisp.c4
-rw-r--r--epan/dissectors/packet-llc.c14
-rw-r--r--epan/dissectors/packet-logcat.c2
-rw-r--r--epan/dissectors/packet-lpp.c2
-rw-r--r--epan/dissectors/packet-ltp.c2
-rw-r--r--epan/dissectors/packet-lwapp.c6
-rw-r--r--epan/dissectors/packet-m2pa.c2
-rw-r--r--epan/dissectors/packet-m2tp.c2
-rw-r--r--epan/dissectors/packet-m2ua.c2
-rw-r--r--epan/dissectors/packet-m3ua.c2
-rw-r--r--epan/dissectors/packet-mac-lte.c16
-rw-r--r--epan/dissectors/packet-mbim.c14
-rw-r--r--epan/dissectors/packet-mdshdr.c2
-rw-r--r--epan/dissectors/packet-megaco.c8
-rw-r--r--epan/dissectors/packet-meta.c16
-rw-r--r--epan/dissectors/packet-mgcp.c2
-rw-r--r--epan/dissectors/packet-mint.c2
-rw-r--r--epan/dissectors/packet-mip.c2
-rw-r--r--epan/dissectors/packet-mpls.c6
-rw-r--r--epan/dissectors/packet-msdp.c2
-rw-r--r--epan/dissectors/packet-mtp2.c2
-rw-r--r--epan/dissectors/packet-multipart.c4
-rw-r--r--epan/dissectors/packet-mux27010.c2
-rw-r--r--epan/dissectors/packet-nas_eps.c4
-rw-r--r--epan/dissectors/packet-nasdaq-soup.c2
-rw-r--r--epan/dissectors/packet-nb_rtpmux.c2
-rw-r--r--epan/dissectors/packet-netanalyzer.c2
-rw-r--r--epan/dissectors/packet-netlink-netfilter.c2
-rw-r--r--epan/dissectors/packet-netrom.c2
-rw-r--r--epan/dissectors/packet-nettl.c14
-rw-r--r--epan/dissectors/packet-nflog.c4
-rw-r--r--epan/dissectors/packet-nsh.c6
-rw-r--r--epan/dissectors/packet-nsip.c4
-rw-r--r--epan/dissectors/packet-nstrace.c7
-rw-r--r--epan/dissectors/packet-null.c2
-rw-r--r--epan/dissectors/packet-nwmtp.c2
-rw-r--r--epan/dissectors/packet-obex.c4
-rw-r--r--epan/dissectors/packet-openflow.c6
-rw-r--r--epan/dissectors/packet-openflow_v1.c9
-rw-r--r--epan/dissectors/packet-openflow_v4.c9
-rw-r--r--epan/dissectors/packet-openflow_v5.c9
-rw-r--r--epan/dissectors/packet-openvpn.c2
-rw-r--r--epan/dissectors/packet-pana.c2
-rw-r--r--epan/dissectors/packet-pdc.c2
-rw-r--r--epan/dissectors/packet-pdcp-lte.c6
-rw-r--r--epan/dissectors/packet-peekremote.c2
-rw-r--r--epan/dissectors/packet-pflog.c4
-rw-r--r--epan/dissectors/packet-pim.c4
-rw-r--r--epan/dissectors/packet-pktap.c2
-rw-r--r--epan/dissectors/packet-pmproxy.c2
-rw-r--r--epan/dissectors/packet-pop.c4
-rw-r--r--epan/dissectors/packet-ppcap.c20
-rw-r--r--epan/dissectors/packet-ppi.c14
-rw-r--r--epan/dissectors/packet-ppp.c6
-rw-r--r--epan/dissectors/packet-pppoe.c2
-rw-r--r--epan/dissectors/packet-pw-cesopsn.c2
-rw-r--r--epan/dissectors/packet-pw-eth.c2
-rw-r--r--epan/dissectors/packet-pw-fr.c2
-rw-r--r--epan/dissectors/packet-pw-hdlc.c4
-rw-r--r--epan/dissectors/packet-pw-satop.c2
-rw-r--r--epan/dissectors/packet-q931.c2
-rw-r--r--epan/dissectors/packet-q932.c2
-rw-r--r--epan/dissectors/packet-qllc.c2
-rw-r--r--epan/dissectors/packet-qsig.c4
-rw-r--r--epan/dissectors/packet-radius.c2
-rw-r--r--epan/dissectors/packet-ranap.c4
-rw-r--r--epan/dissectors/packet-raw.c6
-rw-r--r--epan/dissectors/packet-redback.c14
-rw-r--r--epan/dissectors/packet-redbackli.c2
-rw-r--r--epan/dissectors/packet-reload-framing.c2
-rw-r--r--epan/dissectors/packet-reload.c2
-rw-r--r--epan/dissectors/packet-rfc2190.c2
-rw-r--r--epan/dissectors/packet-rfid-pn532-hci.c2
-rw-r--r--epan/dissectors/packet-rfid-pn532.c6
-rw-r--r--epan/dissectors/packet-rlc-lte.c4
-rw-r--r--epan/dissectors/packet-rlc.c6
-rw-r--r--epan/dissectors/packet-rmt-alc.c6
-rw-r--r--epan/dissectors/packet-rmt-norm.c2
-rw-r--r--epan/dissectors/packet-rnsap.c2
-rw-r--r--epan/dissectors/packet-rohc.c4
-rw-r--r--epan/dissectors/packet-roofnet.c2
-rw-r--r--epan/dissectors/packet-rpc.c4
-rw-r--r--epan/dissectors/packet-rpcap.c2
-rw-r--r--epan/dissectors/packet-rpcrdma.c4
-rw-r--r--epan/dissectors/packet-rrc.c8
-rw-r--r--epan/dissectors/packet-rsl.c10
-rw-r--r--epan/dissectors/packet-rtp.c28
-rw-r--r--epan/dissectors/packet-rtpproxy.c8
-rw-r--r--epan/dissectors/packet-rua.c2
-rw-r--r--epan/dissectors/packet-rudp.c2
-rw-r--r--epan/dissectors/packet-rx.c2
-rw-r--r--epan/dissectors/packet-s1ap.c8
-rw-r--r--epan/dissectors/packet-sap.c2
-rw-r--r--epan/dissectors/packet-sccp.c12
-rw-r--r--epan/dissectors/packet-scop.c2
-rw-r--r--epan/dissectors/packet-sdlc.c2
-rw-r--r--epan/dissectors/packet-sdp.c10
-rw-r--r--epan/dissectors/packet-ses.c2
-rw-r--r--epan/dissectors/packet-sgsap.c2
-rw-r--r--epan/dissectors/packet-sigcomp.c2
-rw-r--r--epan/dissectors/packet-simple.c2
-rw-r--r--epan/dissectors/packet-sip.c2
-rw-r--r--epan/dissectors/packet-sll.c4
-rw-r--r--epan/dissectors/packet-smb-mailslot.c6
-rw-r--r--epan/dissectors/packet-smb.c4
-rw-r--r--epan/dissectors/packet-smb2.c6
-rw-r--r--epan/dissectors/packet-smpp.c2
-rw-r--r--epan/dissectors/packet-smtp.c6
-rw-r--r--epan/dissectors/packet-snaeth.c2
-rw-r--r--epan/dissectors/packet-sndcp.c2
-rw-r--r--epan/dissectors/packet-spdy.c2
-rw-r--r--epan/dissectors/packet-spice.c2
-rw-r--r--epan/dissectors/packet-srp.c4
-rw-r--r--epan/dissectors/packet-sscf-nni.c2
-rw-r--r--epan/dissectors/packet-sstp.c2
-rw-r--r--epan/dissectors/packet-stt.c2
-rw-r--r--epan/dissectors/packet-swipe.c2
-rw-r--r--epan/dissectors/packet-sync.c2
-rw-r--r--epan/dissectors/packet-syslog.c2
-rw-r--r--epan/dissectors/packet-t38.c4
-rw-r--r--epan/dissectors/packet-tcap.c2
-rw-r--r--epan/dissectors/packet-tdmoe.c2
-rw-r--r--epan/dissectors/packet-tdmop.c2
-rw-r--r--epan/dissectors/packet-tds.c4
-rw-r--r--epan/dissectors/packet-telkonet.c2
-rw-r--r--epan/dissectors/packet-telnet.c4
-rw-r--r--epan/dissectors/packet-text-media.c2
-rw-r--r--epan/dissectors/packet-tr.c4
-rw-r--r--epan/dissectors/packet-trill.c2
-rw-r--r--epan/dissectors/packet-tte.c2
-rw-r--r--epan/dissectors/packet-turbocell.c2
-rw-r--r--epan/dissectors/packet-tzsp.c16
-rw-r--r--epan/dissectors/packet-ua.c4
-rw-r--r--epan/dissectors/packet-uasip.c4
-rw-r--r--epan/dissectors/packet-uaudp.c4
-rw-r--r--epan/dissectors/packet-ubertooth.c2
-rw-r--r--epan/dissectors/packet-ulp.c4
-rw-r--r--epan/dissectors/packet-uma.c4
-rw-r--r--epan/dissectors/packet-umts_fp.c16
-rw-r--r--epan/dissectors/packet-umts_mac.c12
-rw-r--r--epan/dissectors/packet-usb-audio.c2
-rw-r--r--epan/dissectors/packet-usb-ccid.c10
-rw-r--r--epan/dissectors/packet-usb-com.c8
-rw-r--r--epan/dissectors/packet-v5dl.c2
-rw-r--r--epan/dissectors/packet-v5ef.c8
-rw-r--r--epan/dissectors/packet-v5ua.c4
-rw-r--r--epan/dissectors/packet-vcdu.c2
-rw-r--r--epan/dissectors/packet-vlan.c2
-rw-r--r--epan/dissectors/packet-vmlab.c2
-rw-r--r--epan/dissectors/packet-vntag.c2
-rw-r--r--epan/dissectors/packet-vxlan.c2
-rw-r--r--epan/dissectors/packet-wassp.c4
-rw-r--r--epan/dissectors/packet-wcp.c2
-rw-r--r--epan/dissectors/packet-websocket.c6
-rw-r--r--epan/dissectors/packet-wfleet-hdlc.c2
-rw-r--r--epan/dissectors/packet-wsp.c6
-rw-r--r--epan/dissectors/packet-wtp.c2
-rw-r--r--epan/dissectors/packet-x25.c8
-rw-r--r--epan/dissectors/packet-xip-serval.c4
-rw-r--r--epan/dissectors/packet-xip.c2
-rw-r--r--epan/dissectors/packet-xmpp.c2
-rw-r--r--epan/dissectors/packet-xot.c2
-rw-r--r--epan/dissectors/packet-zbee-nwk.c4
-rw-r--r--plugins/docsis/packet-docsis.c2
-rw-r--r--plugins/ethercat/packet-ecatmb.c4
-rw-r--r--plugins/ethercat/packet-esl.c2
-rw-r--r--plugins/ethercat/packet-ethercat-datagram.c2
-rw-r--r--plugins/wimaxasncp/packet-wimaxasncp.c2
358 files changed, 849 insertions, 823 deletions
diff --git a/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c b/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
index 938021845d..245013b3a4 100644
--- a/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
+++ b/epan/dissectors/asn1/ansi_tcap/packet-ansi_tcap-template.c
@@ -422,9 +422,8 @@ dissect_ansi_tcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, vo
void
proto_reg_handoff_ansi_tcap(void)
{
-
- ansi_map_handle = find_dissector("ansi_map");
- ber_oid_dissector_table = find_dissector_table("ber.oid");
+ ansi_map_handle = find_dissector_add_dependency("ansi_map", proto_ansi_tcap);
+ ber_oid_dissector_table = find_dissector_table("ber.oid");
}
diff --git a/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c b/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
index b25d061bdb..89fc550e45 100644
--- a/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
+++ b/epan/dissectors/asn1/atn-ulcs/packet-atn-ulcs-template.c
@@ -866,9 +866,6 @@ void proto_register_atn_ulcs (void)
dissect_atn_ulcs,
proto_atn_ulcs);
- atn_cm_handle = find_dissector("atn-cm");
- atn_cpdlc_handle = find_dissector("atn-cpdlc");
-
/* initiate sub dissector list */
atn_ulcs_heur_subdissector_list = register_heur_dissector_list("atn-ulcs", proto_atn_ulcs);
@@ -880,6 +877,9 @@ void proto_register_atn_ulcs (void)
void proto_reg_handoff_atn_ulcs(void)
{
+ atn_cm_handle = find_dissector_add_dependency("atn-cm", proto_atn_ulcs);
+ atn_cpdlc_handle = find_dissector_add_dependency("atn-cpdlc", proto_atn_ulcs);
+
/* add session dissector to cotp dissector list dissector list*/
heur_dissector_add(
"cotp",
diff --git a/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c b/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
index 15178d1ef2..01dc00b359 100644
--- a/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
+++ b/epan/dissectors/asn1/gsm_map/packet-gsm_map-template.c
@@ -2632,10 +2632,10 @@ void proto_reg_handoff_gsm_map(void) {
if (!map_prefs_initialized) {
map_prefs_initialized = TRUE;
data_handle = find_dissector("data");
- ranap_handle = find_dissector("ranap");
- dtap_handle = find_dissector("gsm_a_dtap");
- gsm_sms_handle = find_dissector("gsm_sms");
- bssap_handle = find_dissector("gsm_a_bssmap");
+ ranap_handle = find_dissector_add_dependency("ranap", proto_gsm_map);
+ dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_gsm_map);
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms", proto_gsm_map);
+ bssap_handle = find_dissector_add_dependency("gsm_a_bssmap", proto_gsm_map);
map_handle = find_dissector("gsm_map");
oid_add_from_string("itu(0) administration(2) japan(440)","0.2.440" );
diff --git a/epan/dissectors/asn1/h248/packet-h248-template.c b/epan/dissectors/asn1/h248/packet-h248-template.c
index 0d173d2983..c5c6866f37 100644
--- a/epan/dissectors/asn1/h248/packet-h248-template.c
+++ b/epan/dissectors/asn1/h248/packet-h248-template.c
@@ -1666,7 +1666,7 @@ void proto_reg_handoff_h248(void) {
h248_handle = find_dissector("h248");
h248_tpkt_handle = find_dissector("h248.tpkt");
dissector_add_uint("mtp3.service_indicator", MTP_SI_GCP, h248_handle);
- h248_term_handle = find_dissector("h248term");
+ h248_term_handle = find_dissector_add_dependency("h248term", proto_h248);
initialized = TRUE;
} else {
if (udp_port != 0)
diff --git a/epan/dissectors/asn1/h283/packet-h283-template.c b/epan/dissectors/asn1/h283/packet-h283-template.c
index 02437ff443..34d9d0e6fe 100644
--- a/epan/dissectors/asn1/h283/packet-h283-template.c
+++ b/epan/dissectors/asn1/h283/packet-h283-template.c
@@ -102,8 +102,8 @@ void proto_reg_handoff_h283(void)
h283_udp_handle = find_dissector(PFNAME);
dissector_add_for_decode_as("udp.port", h283_udp_handle);
- rdc_pdu_handle = find_dissector("rdc");
- rdc_device_list_handle = find_dissector("rdc.device_list");
+ rdc_pdu_handle = find_dissector_add_dependency("rdc", proto_h283);
+ rdc_device_list_handle = find_dissector_add_dependency("rdc.device_list", proto_h283);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/asn1/h460/packet-h460-template.c b/epan/dissectors/asn1/h460/packet-h460-template.c
index 586cec4ab1..944bc326b1 100644
--- a/epan/dissectors/asn1/h460/packet-h460-template.c
+++ b/epan/dissectors/asn1/h460/packet-h460-template.c
@@ -274,8 +274,8 @@ void proto_reg_handoff_h460(void)
h460_feature_t *ftr;
dissector_handle_t h460_name_handle;
- q931_ie_handle = find_dissector("q931.ie");
- h225_ras_handle = find_dissector("h225.ras");
+ q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_h460);
+ h225_ras_handle = find_dissector_add_dependency("h225.ras", proto_h460);
h460_name_handle = create_dissector_handle(dissect_h460_name, proto_h460);
for (ftr=h460_feature_tab; ftr->id; ftr++) {
diff --git a/epan/dissectors/asn1/ilp/packet-ilp-template.c b/epan/dissectors/asn1/ilp/packet-ilp-template.c
index 5c560d5503..ea57451b2b 100644
--- a/epan/dissectors/asn1/ilp/packet-ilp-template.c
+++ b/epan/dissectors/asn1/ilp/packet-ilp-template.c
@@ -148,10 +148,10 @@ proto_reg_handoff_ilp(void)
static guint local_ilp_port;
if (!initialized) {
- ilp_handle = find_dissector("ilp");
+ ilp_handle = find_dissector_add_dependency("ilp", proto_ilp);
dissector_add_string("media_type","application/oma-supl-ilp", ilp_handle);
- rrlp_handle = find_dissector("rrlp");
- lpp_handle = find_dissector("lpp");
+ rrlp_handle = find_dissector_add_dependency("rrlp", proto_ilp);
+ lpp_handle = find_dissector_add_dependency("lpp", proto_ilp);
initialized = TRUE;
} else {
dissector_delete_uint("tcp.port", local_ilp_port, ilp_handle);
diff --git a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
index 631e403098..54b506485c 100644
--- a/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
+++ b/epan/dissectors/asn1/kerberos/packet-kerberos-template.c
@@ -2468,7 +2468,7 @@ proto_reg_handoff_kerberos(void)
{
dissector_handle_t kerberos_handle_tcp;
- krb4_handle = find_dissector("krb4");
+ krb4_handle = find_dissector_add_dependency("krb4", proto_kerberos);
kerberos_handle_udp = create_dissector_handle(dissect_kerberos_udp,
proto_kerberos);
diff --git a/epan/dissectors/asn1/lcsap/packet-lcsap-template.c b/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
index 22e44f34b1..5a860e2a5f 100644
--- a/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
+++ b/epan/dissectors/asn1/lcsap/packet-lcsap-template.c
@@ -242,8 +242,8 @@ proto_reg_handoff_lcsap(void)
if (!Initialized) {
lcsap_handle = find_dissector("lcsap");
- lpp_handle = find_dissector("lpp");
- lppa_handle = find_dissector("lppa");
+ lpp_handle = find_dissector_add_dependency("lpp", proto_lcsap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_lcsap);
dissector_add_for_decode_as("sctp.port", lcsap_handle); /* for "decode-as" */
dissector_add_uint("sctp.ppi", LCS_AP_PAYLOAD_PROTOCOL_ID, lcsap_handle);
Initialized=TRUE;
diff --git a/epan/dissectors/asn1/ldap/packet-ldap-template.c b/epan/dissectors/asn1/ldap/packet-ldap-template.c
index a653edc2e4..cc9f2e6ebf 100644
--- a/epan/dissectors/asn1/ldap/packet-ldap-template.c
+++ b/epan/dissectors/asn1/ldap/packet-ldap-template.c
@@ -2291,13 +2291,13 @@ proto_reg_handoff_ldap(void)
cldap_handle = create_dissector_handle(dissect_mscldap, proto_cldap);
dissector_add_uint("udp.port", UDP_PORT_CLDAP, cldap_handle);
- gssapi_handle = find_dissector("gssapi");
- gssapi_wrap_handle = find_dissector("gssapi_verf");
- spnego_handle = find_dissector("spnego");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_ldap);
+ gssapi_wrap_handle = find_dissector_add_dependency("gssapi_verf", proto_ldap);
+ spnego_handle = find_dissector_add_dependency("spnego", proto_ldap);
- ntlmssp_handle = find_dissector("ntlmssp");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_ldap);
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_ldap);
prefs_register_ldap();
diff --git a/epan/dissectors/asn1/lpp/packet-lpp-template.c b/epan/dissectors/asn1/lpp/packet-lpp-template.c
index ba31d56c14..49b3f9b252 100644
--- a/epan/dissectors/asn1/lpp/packet-lpp-template.c
+++ b/epan/dissectors/asn1/lpp/packet-lpp-template.c
@@ -1720,7 +1720,7 @@ void proto_register_lpp(void) {
void
proto_reg_handoff_lpp(void)
{
- lppe_handle = find_dissector("lppe");
+ lppe_handle = find_dissector_add_dependency("lppe", proto_lpp);
}
diff --git a/epan/dissectors/asn1/q932/packet-q932-template.c b/epan/dissectors/asn1/q932/packet-q932-template.c
index 29d4454bee..a5b517296f 100644
--- a/epan/dissectors/asn1/q932/packet-q932-template.c
+++ b/epan/dissectors/asn1/q932/packet-q932-template.c
@@ -380,7 +380,7 @@ void proto_reg_handoff_q932(void) {
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_FACILITY, q932_ie_handle);
/* Notification indicator */
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_NOTIFICATION_INDICATOR, q932_ie_handle);
- q932_ros_handle = find_dissector("q932.ros");
+ q932_ros_handle = find_dissector_add_dependency("q932.ros", proto_q932);
}
if(g_facility_encoding == FACILITY_QSIG){
diff --git a/epan/dissectors/asn1/qsig/packet-qsig-template.c b/epan/dissectors/asn1/qsig/packet-qsig-template.c
index a0c53527e1..56b7586df6 100644
--- a/epan/dissectors/asn1/qsig/packet-qsig-template.c
+++ b/epan/dissectors/asn1/qsig/packet-qsig-template.c
@@ -710,8 +710,8 @@ void proto_reg_handoff_qsig(void) {
dissector_handle_t qsig_err_handle;
dissector_handle_t qsig_ie_handle;
- q931_handle = find_dissector("q931");
- q931_ie_handle = find_dissector("q931.ie");
+ q931_handle = find_dissector_add_dependency("q931", proto_qsig);
+ q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_qsig);
qsig_arg_handle = create_dissector_handle(dissect_qsig_arg, proto_qsig);
qsig_res_handle = create_dissector_handle(dissect_qsig_res, proto_qsig);
diff --git a/epan/dissectors/asn1/ranap/packet-ranap-template.c b/epan/dissectors/asn1/ranap/packet-ranap-template.c
index 6a63aa4f7e..2b7cab3a82 100644
--- a/epan/dissectors/asn1/ranap/packet-ranap-template.c
+++ b/epan/dissectors/asn1/ranap/packet-ranap-template.c
@@ -378,8 +378,8 @@ proto_reg_handoff_ranap(void)
if (!initialized) {
ranap_handle = find_dissector("ranap");
- rrc_s_to_trnc_handle = find_dissector("rrc.s_to_trnc_cont");
- rrc_t_to_srnc_handle = find_dissector("rrc.t_to_srnc_cont");
+ rrc_s_to_trnc_handle = find_dissector_add_dependency("rrc.s_to_trnc_cont", proto_ranap);
+ rrc_t_to_srnc_handle = find_dissector_add_dependency("rrc.t_to_srnc_cont", proto_ranap);
rrc_ho_to_utran_cmd = find_dissector("rrc.irat.ho_to_utran_cmd");
initialized = TRUE;
#include "packet-ranap-dis-tab.c"
diff --git a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
index 5903a0cdfd..23418703f7 100644
--- a/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
+++ b/epan/dissectors/asn1/rnsap/packet-rnsap-template.c
@@ -177,7 +177,7 @@ proto_reg_handoff_rnsap(void)
dissector_handle_t rnsap_handle;
rnsap_handle = find_dissector("rnsap");
- rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
+ rrc_dl_dcch_handle = find_dissector_add_dependency("rrc.dl.dcch", proto_rnsap);
dissector_add_uint("sccp.ssn", SCCP_SSN_RNSAP, rnsap_handle);
/* Add heuristic dissector */
diff --git a/epan/dissectors/asn1/rrc/packet-rrc-template.c b/epan/dissectors/asn1/rrc/packet-rrc-template.c
index cd31f61b41..ab88609d75 100644
--- a/epan/dissectors/asn1/rrc/packet-rrc-template.c
+++ b/epan/dissectors/asn1/rrc/packet-rrc-template.c
@@ -351,7 +351,7 @@ void proto_register_rrc(void) {
void
proto_reg_handoff_rrc(void)
{
- gsm_a_dtap_handle = find_dissector("gsm_a_dtap");
+ gsm_a_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_rrc);
rrc_pcch_handle = find_dissector("rrc.pcch");
rrc_ul_ccch_handle = find_dissector("rrc.ul.ccch");
rrc_dl_ccch_handle = find_dissector("rrc.dl.ccch");
@@ -359,10 +359,10 @@ proto_reg_handoff_rrc(void)
rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
rrc_ue_radio_access_cap_info_handle = find_dissector("rrc.ue_radio_access_cap_info");
rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
- lte_rrc_ue_eutra_cap_handle = find_dissector("lte-rrc.ue_eutra_cap");
- lte_rrc_dl_dcch_handle = find_dissector("lte-rrc.dl.dcch");
+ lte_rrc_ue_eutra_cap_handle = find_dissector_add_dependency("lte-rrc.ue_eutra_cap", proto_rrc);
+ lte_rrc_dl_dcch_handle = find_dissector_add_dependency("lte-rrc.dl.dcch", proto_rrc);
rrc_bcch_fach_handle = find_dissector("rrc.bcch.fach");
- gsm_rlcmac_dl_handle = find_dissector("gsm_rlcmac_dl");
+ gsm_rlcmac_dl_handle = find_dissector_add_dependency("gsm_rlcmac_dl", proto_rrc);
}
diff --git a/epan/dissectors/asn1/rua/packet-rua-template.c b/epan/dissectors/asn1/rua/packet-rua-template.c
index 7b53c09059..afe94baded 100644
--- a/epan/dissectors/asn1/rua/packet-rua-template.c
+++ b/epan/dissectors/asn1/rua/packet-rua-template.c
@@ -173,7 +173,7 @@ proto_reg_handoff_rua(void)
if (!initialized) {
rua_handle = find_dissector("rua");
- ranap_handle = find_dissector("ranap");
+ ranap_handle = find_dissector_add_dependency("ranap", proto_rua);
dissector_add_uint("sctp.ppi", RUA_PAYLOAD_PROTOCOL_ID, rua_handle);
initialized = TRUE;
#include "packet-rua-dis-tab.c"
diff --git a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
index baef829615..b2cc5ad191 100644
--- a/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
+++ b/epan/dissectors/asn1/s1ap/packet-s1ap-template.c
@@ -211,12 +211,12 @@ proto_reg_handoff_s1ap(void)
static guint SctpPort;
s1ap_handle = find_dissector("s1ap");
- gcsna_handle = find_dissector("gcsna");
+ gcsna_handle = find_dissector_add_dependency("gcsna", proto_s1ap);
if (!Initialized) {
- nas_eps_handle = find_dissector("nas-eps");
- lppa_handle = find_dissector("lppa");
- bssgp_handle = find_dissector("bssgp");
+ nas_eps_handle = find_dissector_add_dependency("nas-eps", proto_s1ap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_s1ap);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_s1ap);
dissector_add_for_decode_as("sctp.port", s1ap_handle);
dissector_add_uint("sctp.ppi", S1AP_PAYLOAD_PROTOCOL_ID, s1ap_handle);
Initialized=TRUE;
diff --git a/epan/dissectors/asn1/t38/packet-t38-template.c b/epan/dissectors/asn1/t38/packet-t38-template.c
index b224b664fe..7f718414f9 100644
--- a/epan/dissectors/asn1/t38/packet-t38-template.c
+++ b/epan/dissectors/asn1/t38/packet-t38-template.c
@@ -770,8 +770,8 @@ proto_reg_handoff_t38(void)
t38_udp_handle=create_dissector_handle(dissect_t38_udp, proto_t38);
t38_tcp_handle=create_dissector_handle(dissect_t38_tcp, proto_t38);
t38_tcp_pdu_handle=create_dissector_handle(dissect_t38_tcp_pdu, proto_t38);
- rtp_handle = find_dissector("rtp");
- t30_hdlc_handle = find_dissector("t30.hdlc");
+ rtp_handle = find_dissector_add_dependency("rtp", proto_t38);
+ t30_hdlc_handle = find_dissector_add_dependency("t30.hdlc""rtp", proto_t38);
data_handle = find_dissector("data");
t38_prefs_initialized = TRUE;
}
diff --git a/epan/dissectors/asn1/tcap/packet-tcap-template.c b/epan/dissectors/asn1/tcap/packet-tcap-template.c
index b3df5bb755..09e3a72148 100644
--- a/epan/dissectors/asn1/tcap/packet-tcap-template.c
+++ b/epan/dissectors/asn1/tcap/packet-tcap-template.c
@@ -2061,7 +2061,7 @@ proto_reg_handoff_tcap(void)
{
data_handle = find_dissector("data");
- ansi_tcap_handle = find_dissector("ansi_tcap");
+ ansi_tcap_handle = find_dissector_add_dependency("ansi_tcap", proto_tcap);
ber_oid_dissector_table = find_dissector_table("ber.oid");
#include "packet-tcap-dis-tab.c"
diff --git a/epan/dissectors/asn1/ulp/packet-ulp-template.c b/epan/dissectors/asn1/ulp/packet-ulp-template.c
index 4e35e33a3b..c12cdd1aab 100644
--- a/epan/dissectors/asn1/ulp/packet-ulp-template.c
+++ b/epan/dissectors/asn1/ulp/packet-ulp-template.c
@@ -453,8 +453,8 @@ proto_reg_handoff_ulp(void)
dissector_add_string("media_type","application/oma-supl-ulp", ulp_tcp_handle);
dissector_add_string("media_type","application/vnd.omaloc-supl-init", ulp_tcp_handle);
ulp_udp_handle = create_dissector_handle(dissect_ULP_PDU_PDU, proto_ulp);
- rrlp_handle = find_dissector("rrlp");
- lpp_handle = find_dissector("lpp");
+ rrlp_handle = find_dissector_add_dependency("rrlp", proto_ulp);
+ lpp_handle = find_dissector_add_dependency("lpp", proto_ulp);
initialized = TRUE;
} else {
dissector_delete_uint("tcp.port", local_ulp_tcp_port, ulp_tcp_handle);
diff --git a/epan/dissectors/file-btsnoop.c b/epan/dissectors/file-btsnoop.c
index 7275afe7eb..35eba3887d 100644
--- a/epan/dissectors/file-btsnoop.c
+++ b/epan/dissectors/file-btsnoop.c
@@ -388,9 +388,9 @@ proto_register_btsnoop(void)
void
proto_reg_handoff_btsnoop(void)
{
- hci_h1_handle = find_dissector("hci_h1");
- hci_h4_handle = find_dissector("hci_h4");
- hci_mon_handle = find_dissector("hci_mon");
+ hci_h1_handle = find_dissector_add_dependency("hci_h1", proto_btsnoop);
+ hci_h4_handle = find_dissector_add_dependency("hci_h4", proto_btsnoop);
+ hci_mon_handle = find_dissector_add_dependency("hci_mon", proto_btsnoop);
heur_dissector_add("wtap_file", dissect_btsnoop_heur, "BTSNOOP file", "btsnoop_wtap", proto_btsnoop, HEURISTIC_ENABLE);
}
diff --git a/epan/dissectors/file-pcap.c b/epan/dissectors/file-pcap.c
index 031b7de725..a53807c699 100644
--- a/epan/dissectors/file-pcap.c
+++ b/epan/dissectors/file-pcap.c
@@ -321,7 +321,7 @@ void
proto_reg_handoff_file_pcap(void)
{
heur_dissector_add("wtap_file", dissect_pcap_heur, "PCAP File", "pcap_wtap", proto_pcap, HEURISTIC_ENABLE);
- pcap_pktdata_handle = find_dissector("pcap_pktdata");
+ pcap_pktdata_handle = find_dissector_add_dependency("pcap_pktdata", proto_pcap);
}
/*
diff --git a/epan/dissectors/file-pcapng.c b/epan/dissectors/file-pcapng.c
index 133b3c6330..51c7c67a25 100644
--- a/epan/dissectors/file-pcapng.c
+++ b/epan/dissectors/file-pcapng.c
@@ -1827,7 +1827,7 @@ void
proto_reg_handoff_pcapng(void)
{
heur_dissector_add("wtap_file", dissect_pcapng_heur, "PCAPNG File", "pcapng_wtap", proto_pcapng, HEURISTIC_ENABLE);
- pcap_pktdata_handle = find_dissector("pcap_pktdata");
+ pcap_pktdata_handle = find_dissector_add_dependency("pcap_pktdata", proto_pcapng);
}
/*
diff --git a/epan/dissectors/packet-3com-xns.c b/epan/dissectors/packet-3com-xns.c
index 1e86f66d58..62bd78a6ac 100644
--- a/epan/dissectors/packet-3com-xns.c
+++ b/epan/dissectors/packet-3com-xns.c
@@ -119,7 +119,7 @@ proto_reg_handoff_3com_xns(void)
{
dissector_handle_t our_xns_handle;
- retix_bpdu_handle = find_dissector("rbpdu");
+ retix_bpdu_handle = find_dissector_add_dependency("rbpdu", proto_3com_xns);
data_handle = find_dissector("data");
ethertype_subdissector_table = find_dissector_table("ethertype");
diff --git a/epan/dissectors/packet-6lowpan.c b/epan/dissectors/packet-6lowpan.c
index d2640c78ed..512c243686 100644
--- a/epan/dissectors/packet-6lowpan.c
+++ b/epan/dissectors/packet-6lowpan.c
@@ -2978,7 +2978,7 @@ void
proto_reg_handoff_6lowpan(void)
{
data_handle = find_dissector("data");
- ipv6_handle = find_dissector("ipv6");
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_6lowpan);
/* Register the 6LoWPAN dissector with IEEE 802.15.4 */
dissector_add_for_decode_as(IEEE802154_PROTOABBREV_WPAN_PANID, handle_6lowpan);
diff --git a/epan/dissectors/packet-a21.c b/epan/dissectors/packet-a21.c
index f2da4854e4..b62efe1063 100644
--- a/epan/dissectors/packet-a21.c
+++ b/epan/dissectors/packet-a21.c
@@ -964,7 +964,7 @@ void proto_reg_handoff_a21(void)
if (!a21_prefs_initialized) {
a21_handle = create_dissector_handle(dissect_a21, proto_a21);
- gcsna_handle = find_dissector("gcsna");
+ gcsna_handle = find_dissector_add_dependency("gcsna", proto_a21);
dissector_add_uint("udp.port", a21_udp_port, a21_handle);
a21_prefs_initialized = TRUE;
} else {
diff --git a/epan/dissectors/packet-acr122.c b/epan/dissectors/packet-acr122.c
index 9cc1ae5ffa..5fe0476c76 100644
--- a/epan/dissectors/packet-acr122.c
+++ b/epan/dissectors/packet-acr122.c
@@ -901,7 +901,7 @@ proto_register_acr122(void)
void
proto_reg_handoff_acr122(void)
{
- pn532_handle = find_dissector("pn532");
+ pn532_handle = find_dissector_add_dependency("pn532", proto_acr122);
}
/*
diff --git a/epan/dissectors/packet-actrace.c b/epan/dissectors/packet-actrace.c
index 51c87073a2..48207bebdc 100644
--- a/epan/dissectors/packet-actrace.c
+++ b/epan/dissectors/packet-actrace.c
@@ -818,7 +818,7 @@ void proto_reg_handoff_actrace(void)
{
actrace_handle = create_dissector_handle(dissect_actrace, proto_actrace);
/* Get a handle for the lapd dissector. */
- lapd_handle = find_dissector("lapd");
+ lapd_handle = find_dissector_add_dependency("lapd", proto_actrace);
actrace_prefs_initialized = TRUE;
}
else
diff --git a/epan/dissectors/packet-adb.c b/epan/dissectors/packet-adb.c
index 7c674b75ef..364103cb79 100644
--- a/epan/dissectors/packet-adb.c
+++ b/epan/dissectors/packet-adb.c
@@ -898,7 +898,7 @@ proto_register_adb(void)
void
proto_reg_handoff_adb(void)
{
- adb_service_handle = find_dissector("adb_service");
+ adb_service_handle = find_dissector_add_dependency("adb_service", proto_adb);
dissector_add_handle("tcp.port", adb_handle);
dissector_add_handle("usb.device", adb_handle);
diff --git a/epan/dissectors/packet-adb_cs.c b/epan/dissectors/packet-adb_cs.c
index abaf8b124a..124c249859 100644
--- a/epan/dissectors/packet-adb_cs.c
+++ b/epan/dissectors/packet-adb_cs.c
@@ -435,7 +435,7 @@ void
proto_reg_handoff_adb_cs(void)
{
data_handle = find_dissector("data");
- adb_service_handle = find_dissector("adb_service");
+ adb_service_handle = find_dissector_add_dependency("adb_service", proto_adb_cs);
dissector_add_for_decode_as("tcp.port", adb_cs_handle);
}
diff --git a/epan/dissectors/packet-adb_service.c b/epan/dissectors/packet-adb_service.c
index dd024e9357..7e60edd587 100644
--- a/epan/dissectors/packet-adb_service.c
+++ b/epan/dissectors/packet-adb_service.c
@@ -826,7 +826,7 @@ proto_register_adb_service(void)
void
proto_reg_handoff_adb_service(void)
{
- logcat_handle = find_dissector("logcat");
+ logcat_handle = find_dissector_add_dependency("logcat", proto_adb_service);
}
/*
diff --git a/epan/dissectors/packet-afp.c b/epan/dissectors/packet-afp.c
index b1e1831589..bf8df16ba7 100644
--- a/epan/dissectors/packet-afp.c
+++ b/epan/dissectors/packet-afp.c
@@ -7280,7 +7280,7 @@ void
proto_reg_handoff_afp(void)
{
data_handle = find_dissector("data");
- spotlight_handle = find_dissector("afp_spotlight");
+ spotlight_handle = find_dissector_add_dependency("afp_spotlight", proto_afp);
}
/* -------------------------------
diff --git a/epan/dissectors/packet-ansi_tcap.c b/epan/dissectors/packet-ansi_tcap.c
index 62942f2cc1..f702ba8d5e 100644
--- a/epan/dissectors/packet-ansi_tcap.c
+++ b/epan/dissectors/packet-ansi_tcap.c
@@ -1483,9 +1483,8 @@ dissect_ansi_tcap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree, vo
void
proto_reg_handoff_ansi_tcap(void)
{
-
- ansi_map_handle = find_dissector("ansi_map");
- ber_oid_dissector_table = find_dissector_table("ber.oid");
+ ansi_map_handle = find_dissector_add_dependency("ansi_map", proto_ansi_tcap);
+ ber_oid_dissector_table = find_dissector_table("ber.oid");
}
@@ -1755,7 +1754,7 @@ proto_register_ansi_tcap(void)
NULL, HFILL }},
/*--- End of included file: packet-ansi_tcap-hfarr.c ---*/
-#line 489 "./asn1/ansi_tcap/packet-ansi_tcap-template.c"
+#line 488 "./asn1/ansi_tcap/packet-ansi_tcap-template.c"
};
/* Setup protocol subtree array */
@@ -1793,7 +1792,7 @@ proto_register_ansi_tcap(void)
&ett_ansi_tcap_T_paramSet,
/*--- End of included file: packet-ansi_tcap-ettarr.c ---*/
-#line 500 "./asn1/ansi_tcap/packet-ansi_tcap-template.c"
+#line 499 "./asn1/ansi_tcap/packet-ansi_tcap-template.c"
};
static ei_register_info ei[] = {
diff --git a/epan/dissectors/packet-applemidi.c b/epan/dissectors/packet-applemidi.c
index 9b0d2eabc2..06fb9e80f7 100644
--- a/epan/dissectors/packet-applemidi.c
+++ b/epan/dissectors/packet-applemidi.c
@@ -525,7 +525,7 @@ proto_reg_handoff_applemidi( void ) {
* The second port is then used for the RTP-MIDI-data. So if we can't find valid AppleMidi
* packets, it will be most likely RTP-MIDI...
*/
- rtp_handle = find_dissector( "rtp" );
+ rtp_handle = find_dissector_add_dependency( "rtp", proto_applemidi );
heur_dissector_add( "udp", dissect_applemidi_heur, "Apple MIDI over UDP", "applemidi_udp", proto_applemidi, HEURISTIC_ENABLE );
}
diff --git a/epan/dissectors/packet-artnet.c b/epan/dissectors/packet-artnet.c
index c64acd3fac..e2113018ce 100644
--- a/epan/dissectors/packet-artnet.c
+++ b/epan/dissectors/packet-artnet.c
@@ -5421,8 +5421,8 @@ proto_reg_handoff_artnet(void) {
artnet_handle = create_dissector_handle(dissect_artnet, proto_artnet);
dissector_add_for_decode_as("udp.port", artnet_handle);
- rdm_handle = find_dissector("rdm");
- dmx_chan_handle = find_dissector("dmx-chan");
+ rdm_handle = find_dissector_add_dependency("rdm", proto_artnet);
+ dmx_chan_handle = find_dissector_add_dependency("dmx-chan", proto_artnet);
heur_dissector_add("udp", dissect_artnet_heur, "ARTNET over UDP", "artnet_udp", proto_artnet, HEURISTIC_ENABLE);
}
diff --git a/epan/dissectors/packet-aruba-erm.c b/epan/dissectors/packet-aruba-erm.c
index de217b7007..b34d5054be 100644
--- a/epan/dissectors/packet-aruba-erm.c
+++ b/epan/dissectors/packet-aruba-erm.c
@@ -475,10 +475,10 @@ proto_reg_handoff_aruba_erm(void)
static gboolean initialized = FALSE;
if (!initialized) {
- wlan_radio_handle = find_dissector("wlan_radio");
- wlan_withfcs_handle = find_dissector("wlan_withfcs");
- ppi_handle = find_dissector("ppi");
- peek_handle = find_dissector("peekremote");
+ wlan_radio_handle = find_dissector_add_dependency("wlan_radio", proto_aruba_erm);
+ wlan_withfcs_handle = find_dissector_add_dependency("wlan_withfcs", proto_aruba_erm);
+ ppi_handle = find_dissector_add_dependency("ppi", proto_aruba_erm);
+ peek_handle = find_dissector_add_dependency("peekremote", proto_aruba_erm);
data_handle = find_dissector("data");
aruba_erm_handle = create_dissector_handle(dissect_aruba_erm, proto_aruba_erm);
aruba_erm_handle_type0 = create_dissector_handle(dissect_aruba_erm_type0, proto_aruba_erm_type0);
diff --git a/epan/dissectors/packet-ascend.c b/epan/dissectors/packet-ascend.c
index cd0edb5b0e..bbc3d73536 100644
--- a/epan/dissectors/packet-ascend.c
+++ b/epan/dissectors/packet-ascend.c
@@ -158,8 +158,8 @@ proto_reg_handoff_ascend(void)
/*
* Get handles for the Ethernet and PPP-in-HDLC-like-framing dissectors.
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- ppp_hdlc_handle = find_dissector("ppp_hdlc");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_ascend);
+ ppp_hdlc_handle = find_dissector_add_dependency("ppp_hdlc", proto_ascend);
ascend_handle = create_dissector_handle(dissect_ascend, proto_ascend);
dissector_add_uint("wtap_encap", WTAP_ENCAP_ASCEND, ascend_handle);
diff --git a/epan/dissectors/packet-atalk.c b/epan/dissectors/packet-atalk.c
index 85965e44b6..bd8d87d99a 100644
--- a/epan/dissectors/packet-atalk.c
+++ b/epan/dissectors/packet-atalk.c
@@ -2124,8 +2124,8 @@ proto_reg_handoff_atalk(void)
register_cleanup_routine( atp_cleanup);
register_init_routine( &asp_reinit);
- afp_handle = find_dissector("afp");
- afp_server_status_handle = find_dissector("afp_server_status");
+ afp_handle = find_dissector_add_dependency("afp", proto_asp);
+ afp_server_status_handle = find_dissector_add_dependency("afp_server_status", proto_asp);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-atm.c b/epan/dissectors/packet-atm.c
index bbf65e7076..2a23ffcb2e 100644
--- a/epan/dissectors/packet-atm.c
+++ b/epan/dissectors/packet-atm.c
@@ -2009,14 +2009,14 @@ proto_reg_handoff_atm(void)
* Get handles for the Ethernet, Token Ring, Frame Relay, LLC,
* SSCOP, LANE, and ILMI dissectors.
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- tr_handle = find_dissector("tr");
- fr_handle = find_dissector("fr");
- llc_handle = find_dissector("llc");
- sscop_handle = find_dissector("sscop");
- ppp_handle = find_dissector("ppp");
- eth_maybefcs_handle = find_dissector("eth_maybefcs");
- ip_handle = find_dissector("ip");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_atm_lane);
+ tr_handle = find_dissector_add_dependency("tr", proto_atm_lane);
+ fr_handle = find_dissector_add_dependency("fr", proto_atm);
+ llc_handle = find_dissector_add_dependency("llc", proto_atm);
+ sscop_handle = find_dissector_add_dependency("sscop", proto_atm);
+ ppp_handle = find_dissector_add_dependency("ppp", proto_atm);
+ eth_maybefcs_handle = find_dissector_add_dependency("eth_maybefcs", proto_atm);
+ ip_handle = find_dissector_add_dependency("ip", proto_atm);
data_handle = find_dissector("data");
dissector_add_uint("wtap_encap", WTAP_ENCAP_ATM_PDUS, atm_handle);
diff --git a/epan/dissectors/packet-atn-ulcs.c b/epan/dissectors/packet-atn-ulcs.c
index d91d024a42..8ad7706bea 100644
--- a/epan/dissectors/packet-atn-ulcs.c
+++ b/epan/dissectors/packet-atn-ulcs.c
@@ -2592,9 +2592,6 @@ void proto_register_atn_ulcs (void)
dissect_atn_ulcs,
proto_atn_ulcs);
- atn_cm_handle = find_dissector("atn-cm");
- atn_cpdlc_handle = find_dissector("atn-cpdlc");
-
/* initiate sub dissector list */
atn_ulcs_heur_subdissector_list = register_heur_dissector_list("atn-ulcs", proto_atn_ulcs);
@@ -2606,6 +2603,9 @@ void proto_register_atn_ulcs (void)
void proto_reg_handoff_atn_ulcs(void)
{
+ atn_cm_handle = find_dissector_add_dependency("atn-cm", proto_atn_ulcs);
+ atn_cpdlc_handle = find_dissector_add_dependency("atn-cpdlc", proto_atn_ulcs);
+
/* add session dissector to cotp dissector list dissector list*/
heur_dissector_add(
"cotp",
diff --git a/epan/dissectors/packet-ax25-kiss.c b/epan/dissectors/packet-ax25-kiss.c
index a440de01a1..8812d1fae3 100644
--- a/epan/dissectors/packet-ax25-kiss.c
+++ b/epan/dissectors/packet-ax25-kiss.c
@@ -450,7 +450,7 @@ proto_reg_handoff_ax25_kiss(void)
register_capture_dissector("wtap_encap", WTAP_ENCAP_AX25_KISS, capture_ax25_kiss, proto_ax25_kiss);
/* only currently implemented for AX.25 */
- ax25_handle = find_dissector( "ax25" );
+ ax25_handle = find_dissector_add_dependency( "ax25", proto_ax25_kiss );
}
/*
diff --git a/epan/dissectors/packet-ax25-nol3.c b/epan/dissectors/packet-ax25-nol3.c
index e8b2065ee6..5efb3b0090 100644
--- a/epan/dissectors/packet-ax25-nol3.c
+++ b/epan/dissectors/packet-ax25-nol3.c
@@ -288,7 +288,7 @@ proto_reg_handoff_ax25_nol3(void)
/*
*/
- aprs_handle = find_dissector( "aprs" );
+ aprs_handle = find_dissector_add_dependency( "aprs", proto_ax25_nol3 );
default_handle = find_dissector( "data" );
}
diff --git a/epan/dissectors/packet-bacnet.c b/epan/dissectors/packet-bacnet.c
index 20f202d89a..3095a9a0cf 100644
--- a/epan/dissectors/packet-bacnet.c
+++ b/epan/dissectors/packet-bacnet.c
@@ -636,7 +636,7 @@ proto_reg_handoff_bacnet(void)
dissector_add_uint("bvlc.function", 0x0a, bacnet_handle);
dissector_add_uint("bvlc.function", 0x0b, bacnet_handle);
dissector_add_uint("llc.dsap", SAP_BACNET, bacnet_handle);
- bacapp_handle = find_dissector("bacapp");
+ bacapp_handle = find_dissector_add_dependency("bacapp", proto_bacnet);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-bat.c b/epan/dissectors/packet-bat.c
index 36ff911c0c..0dfdf8e31f 100644
--- a/epan/dissectors/packet-bat.c
+++ b/epan/dissectors/packet-bat.c
@@ -889,7 +889,7 @@ void proto_reg_handoff_bat(void)
gw_handle = create_dissector_handle(dissect_bat_gw, proto_bat_gw);
vis_handle = create_dissector_handle(dissect_bat_vis, proto_bat_vis);
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_bat_gw);
data_handle = find_dissector("data");
inited = TRUE;
diff --git a/epan/dissectors/packet-batadv.c b/epan/dissectors/packet-batadv.c
index aefac07410..758a9c7578 100644
--- a/epan/dissectors/packet-batadv.c
+++ b/epan/dissectors/packet-batadv.c
@@ -5050,7 +5050,7 @@ void proto_reg_handoff_batadv(void)
batman_handle = create_dissector_handle(dissect_batadv_plugin, proto_batadv_plugin);
data_handle = find_dissector("data");
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_batadv_plugin);
batadv_tap = register_tap("batman");
batadv_follow_tap = register_tap("batman_follow");
diff --git a/epan/dissectors/packet-bctp.c b/epan/dissectors/packet-bctp.c
index a46685873e..f3689f1ce9 100644
--- a/epan/dissectors/packet-bctp.c
+++ b/epan/dissectors/packet-bctp.c
@@ -115,7 +115,7 @@ void
proto_reg_handoff_bctp(void)
{
data_handle = find_dissector("data");
- text_handle = find_dissector("data-text-lines");
+ text_handle = find_dissector_add_dependency("data-text-lines", proto_bctp);
}
/*
diff --git a/epan/dissectors/packet-bittorrent.c b/epan/dissectors/packet-bittorrent.c
index 423608aeaf..d0155786eb 100644
--- a/epan/dissectors/packet-bittorrent.c
+++ b/epan/dissectors/packet-bittorrent.c
@@ -694,7 +694,7 @@ proto_register_bittorrent(void)
void
proto_reg_handoff_bittorrent(void)
{
- bencode_handle = find_dissector("bencode");
+ bencode_handle = find_dissector_add_dependency("bencode", proto_bittorrent);
dissector_handle = find_dissector("bittorrent.tcp");
#if 0
diff --git a/epan/dissectors/packet-bluetooth.c b/epan/dissectors/packet-bluetooth.c
index 002a8d7f39..773a2a5cd3 100644
--- a/epan/dissectors/packet-bluetooth.c
+++ b/epan/dissectors/packet-bluetooth.c
@@ -2054,9 +2054,9 @@ proto_reg_handoff_bluetooth(void)
dissector_handle_t eapol_handle;
dissector_handle_t btl2cap_handle;
- btle_handle = find_dissector("btle");
+ btle_handle = find_dissector_add_dependency("btle", proto_bluetooth);
data_handle = find_dissector("data");
- hci_usb_handle = find_dissector("hci_usb");
+ hci_usb_handle = find_dissector_add_dependency("hci_usb", proto_bluetooth);
dissector_add_uint("wtap_encap", WTAP_ENCAP_BLUETOOTH_HCI, bluetooth_bthci_handle);
dissector_add_uint("wtap_encap", WTAP_ENCAP_BLUETOOTH_H4, bluetooth_handle);
diff --git a/epan/dissectors/packet-bmp.c b/epan/dissectors/packet-bmp.c
index d505dfeea5..da484e1a83 100644
--- a/epan/dissectors/packet-bmp.c
+++ b/epan/dissectors/packet-bmp.c
@@ -811,7 +811,7 @@ proto_reg_handoff_bmp(void)
bmp_handle = create_dissector_handle(dissect_bmp, proto_bmp);
dissector_add_for_decode_as("tcp.port", bmp_handle);
- dissector_bgp = find_dissector("bgp");
+ dissector_bgp = find_dissector_add_dependency("bgp", proto_bmp);
}
/*
* Editor modelines - http://www.wireshark.org/tools/modelines.html
diff --git a/epan/dissectors/packet-bpdu.c b/epan/dissectors/packet-bpdu.c
index 7a8fad4941..456e48f1f7 100644
--- a/epan/dissectors/packet-bpdu.c
+++ b/epan/dissectors/packet-bpdu.c
@@ -1377,9 +1377,9 @@ proto_reg_handoff_bpdu(void)
/*
* Get handle for the GMRP dissector.
*/
- gmrp_handle = find_dissector("gmrp");
+ gmrp_handle = find_dissector_add_dependency("gmrp", proto_bpdu);
- bpdu_handle = find_dissector("bpdu");
+ bpdu_handle = find_dissector_add_dependency("bpdu", proto_bpdu);
dissector_add_uint("llc.dsap", SAP_BPDU, bpdu_handle);
dissector_add_uint("chdlc.protocol", CHDLCTYPE_BPDU, bpdu_handle);
dissector_add_uint("ethertype", ETHERTYPE_STP, bpdu_handle);
diff --git a/epan/dissectors/packet-bpq.c b/epan/dissectors/packet-bpq.c
index 792d5c22a6..5ef6e01b59 100644
--- a/epan/dissectors/packet-bpq.c
+++ b/epan/dissectors/packet-bpq.c
@@ -150,7 +150,7 @@ proto_reg_handoff_bpq(void)
register_capture_dissector("ethertype", ETHERTYPE_BPQ, capture_bpq, proto_bpq);
/* BPQ is only implemented for AX.25 */
- ax25_handle = find_dissector( "ax25" );
+ ax25_handle = find_dissector_add_dependency( "ax25", proto_bpq );
}
diff --git a/epan/dissectors/packet-brdwlk.c b/epan/dissectors/packet-brdwlk.c
index aaf538f173..b585522063 100644
--- a/epan/dissectors/packet-brdwlk.c
+++ b/epan/dissectors/packet-brdwlk.c
@@ -409,7 +409,7 @@ proto_reg_handoff_brdwlk(void)
brdwlk_handle = create_dissector_handle(dissect_brdwlk, proto_brdwlk);
dissector_add_uint("ethertype", ETHERTYPE_BRDWALK, brdwlk_handle);
dissector_add_uint("ethertype", 0xABCD, brdwlk_handle);
- fc_dissector_handle = find_dissector("fc");
+ fc_dissector_handle = find_dissector_add_dependency("fc", proto_brdwlk);
}
/*
diff --git a/epan/dissectors/packet-bssap.c b/epan/dissectors/packet-bssap.c
index 94e13d6b13..83ec8360d1 100644
--- a/epan/dissectors/packet-bssap.c
+++ b/epan/dissectors/packet-bssap.c
@@ -2564,9 +2564,10 @@ proto_reg_handoff_bssap(void)
bssap_plus_handle = create_dissector_handle(dissect_bssap_plus, proto_bssap);
data_handle = find_dissector("data");
- rrlp_handle = find_dissector("rrlp");
- gsm_bssmap_le_dissector_handle = find_dissector("gsm_bssmap_le");
- gsm_a_bssmap_dissector_handle = find_dissector("gsm_a_bssmap");
+ rrlp_handle = find_dissector_add_dependency("rrlp", proto_bssap_plus);
+ gsm_bssmap_le_dissector_handle = find_dissector_add_dependency("gsm_bssmap_le", proto_bssap);
+ gsm_a_bssmap_dissector_handle = find_dissector_add_dependency("gsm_a_bssmap", proto_bssap);
+
initialized = TRUE;
} else {
dissector_delete_uint("sccp.ssn", old_bssap_ssn, bssap_plus_handle);
diff --git a/epan/dissectors/packet-btatt.c b/epan/dissectors/packet-btatt.c
index c02c5ce8a1..a6c2a86db9 100644
--- a/epan/dissectors/packet-btatt.c
+++ b/epan/dissectors/packet-btatt.c
@@ -14047,10 +14047,10 @@ proto_reg_handoff_btatt(void)
{
gint i_array;
- http_handle = find_dissector("http");
- usb_hid_boot_keyboard_input_report_handle = find_dissector("usbhid.boot_report.keyboard.input");
- usb_hid_boot_keyboard_output_report_handle = find_dissector("usbhid.boot_report.keyboard.output");
- usb_hid_boot_mouse_input_report_handle = find_dissector("usbhid.boot_report.mouse.input");
+ http_handle = find_dissector_add_dependency("http", proto_btatt);
+ usb_hid_boot_keyboard_input_report_handle = find_dissector_add_dependency("usbhid.boot_report.keyboard.input", proto_btatt);
+ usb_hid_boot_keyboard_output_report_handle = find_dissector_add_dependency("usbhid.boot_report.keyboard.output", proto_btatt);
+ usb_hid_boot_mouse_input_report_handle = find_dissector_add_dependency("usbhid.boot_report.mouse.input", proto_btatt);
dissector_add_uint("btl2cap.psm", BTL2CAP_PSM_ATT, btatt_handle);
dissector_add_uint("btl2cap.cid", BTL2CAP_FIXED_CID_ATT, btatt_handle);
diff --git a/epan/dissectors/packet-btavdtp.c b/epan/dissectors/packet-btavdtp.c
index 5706f63fe9..68b5324adf 100644
--- a/epan/dissectors/packet-btavdtp.c
+++ b/epan/dissectors/packet-btavdtp.c
@@ -3172,13 +3172,13 @@ proto_register_bta2dp(void)
void
proto_reg_handoff_bta2dp(void)
{
- sbc_handle = find_dissector("sbc");
- mp2t_handle = find_dissector("mp2t");
- mpeg_audio_handle = find_dissector("mpeg-audio");
+ sbc_handle = find_dissector_add_dependency("sbc", proto_bta2dp);
+ mp2t_handle = find_dissector_add_dependency("mp2t", proto_bta2dp);
+ mpeg_audio_handle = find_dissector_add_dependency("mpeg-audio", proto_bta2dp);
/* TODO: ATRAC dissector does not exist yet */
- atrac_handle = find_dissector("atrac");
+ atrac_handle = find_dissector_add_dependency("atrac", proto_bta2dp);
- rtp_handle = find_dissector("rtp");
+ rtp_handle = find_dissector_add_dependency("rtp", proto_bta2dp);
dissector_add_string("bluetooth.uuid", "110a", bta2dp_handle);
dissector_add_string("bluetooth.uuid", "110b", bta2dp_handle);
@@ -3412,10 +3412,10 @@ proto_register_btvdp(void)
void
proto_reg_handoff_btvdp(void)
{
- h263_handle = find_dissector("h263");
- mp4v_es_handle = find_dissector("mp4v-es");
+ h263_handle = find_dissector_add_dependency("h263", proto_btvdp);
+ mp4v_es_handle = find_dissector_add_dependency("mp4v-es", proto_btvdp);
- rtp_handle = find_dissector("rtp");
+ rtp_handle = find_dissector_add_dependency("rtp", proto_btvdp);
dissector_add_string("bluetooth.uuid", "1303", btvdp_handle);
dissector_add_string("bluetooth.uuid", "1304", btvdp_handle);
diff --git a/epan/dissectors/packet-btbnep.c b/epan/dissectors/packet-btbnep.c
index 20a5583cc2..3c2f9d77aa 100644
--- a/epan/dissectors/packet-btbnep.c
+++ b/epan/dissectors/packet-btbnep.c
@@ -643,10 +643,10 @@ proto_register_btbnep(void)
void
proto_reg_handoff_btbnep(void)
{
- ipx_handle = find_dissector("ipx");
- llc_handle = find_dissector("llc");
+ ipx_handle = find_dissector_add_dependency("ipx", proto_btbnep);
+ llc_handle = find_dissector_add_dependency("llc", proto_btbnep);
data_handle = find_dissector("data");
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_btbnep);
dissector_add_string("bluetooth.uuid", "1115", btbnep_handle);
dissector_add_string("bluetooth.uuid", "1116", btbnep_handle);
diff --git a/epan/dissectors/packet-bthci_acl.c b/epan/dissectors/packet-bthci_acl.c
index 76f388380c..fc44e8f522 100644
--- a/epan/dissectors/packet-bthci_acl.c
+++ b/epan/dissectors/packet-bthci_acl.c
@@ -689,7 +689,7 @@ proto_reg_handoff_bthci_acl(void)
dissector_add_uint("hci_h4.type", HCI_H4_TYPE_ACL, bthci_acl_handle);
dissector_add_uint("hci_h1.type", BTHCI_CHANNEL_ACL, bthci_acl_handle);
- btl2cap_handle = find_dissector("btl2cap");
+ btl2cap_handle = find_dissector_add_dependency("btl2cap", proto_bthci_acl);
}
/*
diff --git a/epan/dissectors/packet-bthci_evt.c b/epan/dissectors/packet-bthci_evt.c
index 9795aa9ad4..0953f7ca90 100644
--- a/epan/dissectors/packet-bthci_evt.c
+++ b/epan/dissectors/packet-bthci_evt.c
@@ -6210,11 +6210,11 @@ proto_reg_handoff_bthci_evt(void)
dissector_add_uint("hci_h4.type", HCI_H4_TYPE_EVT, bthci_evt_handle);
dissector_add_uint("hci_h1.type", BTHCI_CHANNEL_EVENT, bthci_evt_handle);
- bthci_cmd_handle = find_dissector("bthci_cmd");
- btcommon_cod_handle = find_dissector("btcommon.cod");
- btcommon_eir_handle = find_dissector("btcommon.eir_ad.eir");
- btcommon_ad_handle = find_dissector("btcommon.eir_ad.ad");
- btcommon_le_channel_map_handle = find_dissector("btcommon.le_channel_map");
+ bthci_cmd_handle = find_dissector_add_dependency("bthci_cmd", proto_bthci_evt);
+ btcommon_cod_handle = find_dissector_add_dependency("btcommon.cod", proto_bthci_evt);
+ btcommon_eir_handle = find_dissector_add_dependency("btcommon.eir_ad.eir", proto_bthci_evt);
+ btcommon_ad_handle = find_dissector_add_dependency("btcommon.eir_ad.ad", proto_bthci_evt);
+ btcommon_le_channel_map_handle = find_dissector_add_dependency("btcommon.le_channel_map", proto_bthci_evt);
}
/*
diff --git a/epan/dissectors/packet-bthci_vendor.c b/epan/dissectors/packet-bthci_vendor.c
index a43c986b12..2f227679f2 100644
--- a/epan/dissectors/packet-bthci_vendor.c
+++ b/epan/dissectors/packet-bthci_vendor.c
@@ -1560,7 +1560,7 @@ proto_register_bthci_vendor_broadcom(void)
void
proto_reg_handoff_bthci_vendor_broadcom(void)
{
- btcommon_ad_handle = find_dissector("btcommon.eir_ad.ad");
+ btcommon_ad_handle = find_dissector_add_dependency("btcommon.eir_ad.ad", proto_bthci_vendor_broadcom);
dissector_add_for_decode_as("bthci_cmd.vendor", bthci_vendor_broadcom_handle);
dissector_add_uint("bluetooth.vendor", 0x000F, bthci_vendor_broadcom_handle);
}
diff --git a/epan/dissectors/packet-bthid.c b/epan/dissectors/packet-bthid.c
index 9fd659d81a..460cfb4b57 100644
--- a/epan/dissectors/packet-bthid.c
+++ b/epan/dissectors/packet-bthid.c
@@ -421,9 +421,9 @@ proto_register_bthid(void)
void
proto_reg_handoff_bthid(void)
{
- usb_hid_boot_keyboard_input_report_handle = find_dissector("usbhid.boot_report.keyboard.input");
- usb_hid_boot_keyboard_output_report_handle = find_dissector("usbhid.boot_report.keyboard.output");
- usb_hid_boot_mouse_input_report_handle = find_dissector("usbhid.boot_report.mouse.input");
+ usb_hid_boot_keyboard_input_report_handle = find_dissector_add_dependency("usbhid.boot_report.keyboard.input", proto_bthid);
+ usb_hid_boot_keyboard_output_report_handle = find_dissector_add_dependency("usbhid.boot_report.keyboard.output", proto_bthid);
+ usb_hid_boot_mouse_input_report_handle = find_dissector_add_dependency("usbhid.boot_report.mouse.input", proto_bthid);
dissector_add_string("bluetooth.uuid", "11", bthid_handle);
dissector_add_string("bluetooth.uuid", "1124", bthid_handle);
diff --git a/epan/dissectors/packet-btle.c b/epan/dissectors/packet-btle.c
index 9a405ec7ee..90ae6a1a91 100644
--- a/epan/dissectors/packet-btle.c
+++ b/epan/dissectors/packet-btle.c
@@ -1397,9 +1397,9 @@ proto_register_btle(void)
void
proto_reg_handoff_btle(void)
{
- btcommon_ad_handle = find_dissector("btcommon.eir_ad.ad");
- btcommon_le_channel_map_handle = find_dissector("btcommon.le_channel_map");
- btl2cap_handle = find_dissector("btl2cap");
+ btcommon_ad_handle = find_dissector_add_dependency("btcommon.eir_ad.ad", proto_btle);
+ btcommon_le_channel_map_handle = find_dissector_add_dependency("btcommon.le_channel_map", proto_btle);
+ btl2cap_handle = find_dissector_add_dependency("btl2cap", proto_btle);
proto_btle_rf = proto_get_id_by_filter_name("btle_rf");
diff --git a/epan/dissectors/packet-btle_rf.c b/epan/dissectors/packet-btle_rf.c
index b7c2d45a82..9c50906f1d 100644
--- a/epan/dissectors/packet-btle_rf.c
+++ b/epan/dissectors/packet-btle_rf.c
@@ -375,7 +375,7 @@ void
proto_reg_handoff_btle_rf(void)
{
dissector_add_uint("bluetooth.encap", WTAP_ENCAP_BLUETOOTH_LE_LL_WITH_PHDR, btle_rf_handle);
- btle_handle = find_dissector("btle");
+ btle_handle = find_dissector_add_dependency("btle", proto_btle_rf);
}
/*
diff --git a/epan/dissectors/packet-btrfcomm.c b/epan/dissectors/packet-btrfcomm.c
index 6bab3c8b13..84fe745b7d 100644
--- a/epan/dissectors/packet-btrfcomm.c
+++ b/epan/dissectors/packet-btrfcomm.c
@@ -1259,7 +1259,7 @@ proto_reg_handoff_btdun(void)
dissector_add_for_decode_as("btrfcomm.dlci", btdun_handle);
- ppp_handle = find_dissector("ppp_raw_hdlc");
+ ppp_handle = find_dissector_add_dependency("ppp_raw_hdlc", proto_btdun);
}
/* Bluetooth Serial Port profile (SPP) dissection */
diff --git a/epan/dissectors/packet-btsap.c b/epan/dissectors/packet-btsap.c
index bce4178f22..493fd9971c 100644
--- a/epan/dissectors/packet-btsap.c
+++ b/epan/dissectors/packet-btsap.c
@@ -729,9 +729,9 @@ proto_register_btsap(void)
void
proto_reg_handoff_btsap(void)
{
- gsm_sim_cmd_handle = find_dissector("gsm_sim.command");
- gsm_sim_resp_handle = find_dissector("gsm_sim.response");
- iso7816_atr_handle = find_dissector("iso7816.atr");
+ gsm_sim_cmd_handle = find_dissector_add_dependency("gsm_sim.command", proto_btsap);
+ gsm_sim_resp_handle = find_dissector_add_dependency("gsm_sim.response", proto_btsap);
+ iso7816_atr_handle = find_dissector_add_dependency("iso7816.atr", proto_btsap);
dissector_add_string("bluetooth.uuid", "112d", btsap_handle);
diff --git a/epan/dissectors/packet-bzr.c b/epan/dissectors/packet-bzr.c
index 99d0d4208f..6f8a5111f5 100644
--- a/epan/dissectors/packet-bzr.c
+++ b/epan/dissectors/packet-bzr.c
@@ -321,7 +321,7 @@ proto_reg_handoff_bzr(void)
{
dissector_handle_t bzr_handle;
- bencode_handle = find_dissector("bencode");
+ bencode_handle = find_dissector_add_dependency("bencode", proto_bzr);
bzr_handle = find_dissector("bzr");
dissector_add_uint("tcp.port", TCP_PORT_BZR, bzr_handle);
diff --git a/epan/dissectors/packet-c15ch.c b/epan/dissectors/packet-c15ch.c
index 90e5461dc4..d185cb71d4 100644
--- a/epan/dissectors/packet-c15ch.c
+++ b/epan/dissectors/packet-c15ch.c
@@ -12281,9 +12281,9 @@ void proto_reg_handoff_c15ch(void)
dissector_add_uint("c15.out_gwe", C15_OUT_GWE_SIP_REFER, c15ch_third_level_handle);
/* find external dissectors */
- general_isup_handle = find_dissector("isup");
- general_sccp_handle = find_dissector("sccp");
- general_q931_handle = find_dissector("q931");
+ general_isup_handle = find_dissector_add_dependency("isup", proto_c15ch);
+ general_sccp_handle = find_dissector_add_dependency("sccp", proto_c15ch);
+ general_q931_handle = find_dissector_add_dependency("q931", proto_c15ch);
}
diff --git a/epan/dissectors/packet-capwap.c b/epan/dissectors/packet-capwap.c
index a7923c323e..916d785d3a 100644
--- a/epan/dissectors/packet-capwap.c
+++ b/epan/dissectors/packet-capwap.c
@@ -5799,10 +5799,11 @@ proto_reg_handoff_capwap(void)
if (!inited) {
capwap_control_handle = create_dissector_handle(dissect_capwap_control, proto_capwap_control);
capwap_data_handle = create_dissector_handle(dissect_capwap_data, proto_capwap_data);
- dtls_handle = find_dissector("dtls");
- ieee8023_handle = find_dissector("eth_withoutfcs");
- ieee80211_handle = find_dissector("wlan_withoutfcs");
- ieee80211_bsfc_handle = find_dissector("wlan_bsfc");
+ dtls_handle = find_dissector_add_dependency("dtls", proto_capwap_control);
+ find_dissector_add_dependency("dtls", proto_capwap_data);
+ ieee8023_handle = find_dissector_add_dependency("eth_withoutfcs", proto_capwap_data);
+ ieee80211_handle = find_dissector_add_dependency("wlan_withoutfcs", proto_capwap_data);
+ ieee80211_bsfc_handle = find_dissector_add_dependency("wlan_bsfc", proto_capwap_data);
data_handle = find_dissector("data");
inited = TRUE;
diff --git a/epan/dissectors/packet-cip.c b/epan/dissectors/packet-cip.c
index bbb07fbe25..5244be1bd6 100644
--- a/epan/dissectors/packet-cip.c
+++ b/epan/dissectors/packet-cip.c
@@ -8043,7 +8043,7 @@ proto_reg_handoff_cip(void)
/* Create and register dissector handle for Modbus Object */
cip_class_mb_handle = create_dissector_handle( dissect_cip_class_mb, proto_cip_class_mb );
dissector_add_uint( "cip.class.iface", CI_CLS_MB, cip_class_mb_handle );
- modbus_handle = find_dissector("modbus");
+ modbus_handle = find_dissector_add_dependency("modbus", proto_cip_class_mb);
/* Create and register dissector handle for Connection Configuration Object */
cip_class_cco_handle = create_dissector_handle( dissect_cip_class_cco, proto_cip_class_cco );
diff --git a/epan/dissectors/packet-cisco-erspan.c b/epan/dissectors/packet-cisco-erspan.c
index 8aa874e47d..b925ee4f9b 100644
--- a/epan/dissectors/packet-cisco-erspan.c
+++ b/epan/dissectors/packet-cisco-erspan.c
@@ -331,7 +331,7 @@ proto_reg_handoff_erspan(void)
{
dissector_handle_t erspan_handle;
- ethnofcs_handle = find_dissector("eth_withoutfcs");
+ ethnofcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_erspan);
erspan_handle = create_dissector_handle(dissect_erspan, proto_erspan);
dissector_add_uint("gre.proto", GRE_ERSPAN_88BE, erspan_handle);
diff --git a/epan/dissectors/packet-cisco-fp-mim.c b/epan/dissectors/packet-cisco-fp-mim.c
index 3fcd9cbded..79f5c2a12e 100644
--- a/epan/dissectors/packet-cisco-fp-mim.c
+++ b/epan/dissectors/packet-cisco-fp-mim.c
@@ -413,7 +413,7 @@ proto_reg_handoff_fabricpath(void)
* by the Ethernet dissector. This needs more work, so we leave this
* as calling the "eth" dissector as a reminder.
*/
- eth_maybefcs_dissector = find_dissector( "eth_maybefcs" );
+ eth_maybefcs_dissector = find_dissector_add_dependency( "eth_maybefcs", proto_fp );
prefs_initialized = TRUE;
}
}
diff --git a/epan/dissectors/packet-cisco-metadata.c b/epan/dissectors/packet-cisco-metadata.c
index a034d952ac..861c6ae25b 100644
--- a/epan/dissectors/packet-cisco-metadata.c
+++ b/epan/dissectors/packet-cisco-metadata.c
@@ -141,7 +141,7 @@ proto_reg_handoff_cmd(void)
{
dissector_handle_t cmd_handle;
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_cmd);
cmd_handle = create_dissector_handle(dissect_cmd, proto_cmd);
dissector_add_uint("ethertype", ETHERTYPE_CMD, cmd_handle);
diff --git a/epan/dissectors/packet-cisco-sm.c b/epan/dissectors/packet-cisco-sm.c
index fdf7276a44..b0cf5a68d9 100644
--- a/epan/dissectors/packet-cisco-sm.c
+++ b/epan/dissectors/packet-cisco-sm.c
@@ -605,9 +605,9 @@ proto_register_sm(void)
void
proto_reg_handoff_sm(void)
{
- sdp_handle = find_dissector("sdp");
- mtp3_handle = find_dissector("mtp3");
- q931_handle = find_dissector("q931");
+ sdp_handle = find_dissector_add_dependency("sdp", proto_sm);
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_sm);
+ q931_handle = find_dissector_add_dependency("q931", proto_sm);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-cisco-wids.c b/epan/dissectors/packet-cisco-wids.c
index 90505c383f..462ccbaa6b 100644
--- a/epan/dissectors/packet-cisco-wids.c
+++ b/epan/dissectors/packet-cisco-wids.c
@@ -199,7 +199,7 @@ proto_reg_handoff_cwids(void)
if (!initialized) {
cwids_handle = create_dissector_handle(dissect_cwids, proto_cwids);
dissector_add_for_decode_as("udp.port", cwids_handle);
- ieee80211_radio_handle = find_dissector("wlan_radio");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_cwids);
initialized = TRUE;
} else {
if (saved_udp_port != 0) {
diff --git a/epan/dissectors/packet-clip.c b/epan/dissectors/packet-clip.c
index 50b0d53777..ba7af0e4b9 100644
--- a/epan/dissectors/packet-clip.c
+++ b/epan/dissectors/packet-clip.c
@@ -113,7 +113,7 @@ proto_reg_handoff_clip(void)
/*
* Get a handle for the IP dissector.
*/
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_clip);
clip_handle = create_dissector_handle(dissect_clip, proto_clip);
/* XXX - no protocol, can't be disabled */
diff --git a/epan/dissectors/packet-clnp.c b/epan/dissectors/packet-clnp.c
index c5d39ac5c7..c090de07d3 100644
--- a/epan/dissectors/packet-clnp.c
+++ b/epan/dissectors/packet-clnp.c
@@ -765,9 +765,9 @@ proto_register_clnp(void)
void
proto_reg_handoff_clnp(void)
{
- ositp_handle = find_dissector("ositp");
- ositp_inactive_handle = find_dissector("ositp_inactive");
- idrp_handle = find_dissector("idrp");
+ ositp_handle = find_dissector_add_dependency("ositp", proto_clnp);
+ ositp_inactive_handle = find_dissector_add_dependency("ositp_inactive", proto_clnp);
+ idrp_handle = find_dissector_add_dependency("idrp", proto_clnp);
data_handle = find_dissector("data");
dissector_add_uint("osinl.incl", NLPID_ISO8473_CLNP, clnp_handle);
diff --git a/epan/dissectors/packet-corosync-totemnet.c b/epan/dissectors/packet-corosync-totemnet.c
index 68fcdd5aff..4431aa655b 100644
--- a/epan/dissectors/packet-corosync-totemnet.c
+++ b/epan/dissectors/packet-corosync-totemnet.c
@@ -484,7 +484,7 @@ proto_reg_handoff_corosync_totemnet(void)
{
corosync_totemnet_handle = create_dissector_handle(dissect_corosynec_totemnet,
proto_corosync_totemnet);
- corosync_totemsrp_handle = find_dissector("corosync_totemsrp");
+ corosync_totemsrp_handle = find_dissector_add_dependency("corosync_totemsrp", proto_corosync_totemnet);
initialized = TRUE;
}
diff --git a/epan/dissectors/packet-cosine.c b/epan/dissectors/packet-cosine.c
index 9359cc56a1..13da1374de 100644
--- a/epan/dissectors/packet-cosine.c
+++ b/epan/dissectors/packet-cosine.c
@@ -180,11 +180,11 @@ proto_reg_handoff_cosine(void)
/*
* Get handles for dissectors.
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- ppp_hdlc_handle = find_dissector("ppp_hdlc");
- llc_handle = find_dissector("llc");
- chdlc_handle = find_dissector("chdlc");
- fr_handle = find_dissector("fr");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_cosine);
+ ppp_hdlc_handle = find_dissector_add_dependency("ppp_hdlc", proto_cosine);
+ llc_handle = find_dissector_add_dependency("llc", proto_cosine);
+ chdlc_handle = find_dissector_add_dependency("chdlc", proto_cosine);
+ fr_handle = find_dissector_add_dependency("fr", proto_cosine);
data_handle = find_dissector("data");
cosine_handle = create_dissector_handle(dissect_cosine, proto_cosine);
diff --git a/epan/dissectors/packet-couchbase.c b/epan/dissectors/packet-couchbase.c
index b0135381a6..b3a300d36a 100644
--- a/epan/dissectors/packet-couchbase.c
+++ b/epan/dissectors/packet-couchbase.c
@@ -1855,7 +1855,7 @@ proto_reg_handoff_couchbase(void)
tcp_port_range = range_copy(couchbase_tcp_port_range);
dissector_add_uint_range("tcp.port", tcp_port_range, couchbase_tcp_handle);
- json_handle = find_dissector("json");
+ json_handle = find_dissector_add_dependency("json", proto_couchbase);
}
/*
diff --git a/epan/dissectors/packet-cpfi.c b/epan/dissectors/packet-cpfi.c
index 4fa98a11ca..68665772c0 100644
--- a/epan/dissectors/packet-cpfi.c
+++ b/epan/dissectors/packet-cpfi.c
@@ -535,7 +535,7 @@ proto_reg_handoff_cpfi(void)
if ( !cpfi_init_complete )
{
- fc_handle = find_dissector("fc");
+ fc_handle = find_dissector_add_dependency("fc", proto_cpfi);
cpfi_handle = create_dissector_handle(dissect_cpfi, proto_cpfi);
cpfi_init_complete = TRUE;
}
diff --git a/epan/dissectors/packet-daap.c b/epan/dissectors/packet-daap.c
index e617feb14c..cd670faae9 100644
--- a/epan/dissectors/packet-daap.c
+++ b/epan/dissectors/packet-daap.c
@@ -778,7 +778,7 @@ proto_reg_handoff_daap(void)
http_port_add(TCP_PORT_DAAP);
dissector_add_string("media_type", "application/x-dmap-tagged", daap_handle);
- png_handle = find_dissector("png");
+ png_handle = find_dissector_add_dependency("png", proto_daap);
}
/*
diff --git a/epan/dissectors/packet-diameter.c b/epan/dissectors/packet-diameter.c
index fbc15e1bce..632e1e6eee 100644
--- a/epan/dissectors/packet-diameter.c
+++ b/epan/dissectors/packet-diameter.c
@@ -2371,7 +2371,7 @@ proto_reg_handoff_diameter(void)
proto_diameter);
diameter_udp_handle = create_dissector_handle(dissect_diameter, proto_diameter);
data_handle = find_dissector("data");
- eap_handle = find_dissector("eap");
+ eap_handle = find_dissector_add_dependency("eap", proto_diameter);
dissector_add_uint("sctp.ppi", DIAMETER_PROTOCOL_ID, diameter_sctp_handle);
diff --git a/epan/dissectors/packet-diameter_3gpp.c b/epan/dissectors/packet-diameter_3gpp.c
index 6d79f3c0a7..ab01818b43 100644
--- a/epan/dissectors/packet-diameter_3gpp.c
+++ b/epan/dissectors/packet-diameter_3gpp.c
@@ -1583,7 +1583,7 @@ proto_reg_handoff_diameter_3gpp(void)
/* AVP Code: 3514 TMGI-Deallocation-Result */
dissector_add_uint("diameter.3gpp", 3514, create_dissector_handle(dissect_diameter_3gpp_tmgi_deallocation_result, proto_diameter_3gpp));
- xml_handle = find_dissector("xml");
+ xml_handle = find_dissector_add_dependency("xml", proto_diameter_3gpp);
}
void
diff --git a/epan/dissectors/packet-dis.c b/epan/dissectors/packet-dis.c
index f682fb64ed..9c002741d3 100644
--- a/epan/dissectors/packet-dis.c
+++ b/epan/dissectors/packet-dis.c
@@ -3942,6 +3942,7 @@ static gint ett_iff_parameter_4 = -1;
static gint ett_iff_parameter_5 = -1;
static gint ett_iff_parameter_6 = -1;
+static dissector_handle_t link16_handle;
typedef int DIS_Parser_func(tvbuff_t *, packet_info *, proto_tree *, int);
@@ -4403,7 +4404,7 @@ static gint parse_Link16_Message_Data(proto_tree *tree, tvbuff_t *tvb, gint offs
newtvb = tvb_new_child_real_data(tvb, word, 10, 10);
tvb_set_free_cb(newtvb, g_free);
add_new_data_source(pinfo, newtvb, "Link 16 Word");
- call_dissector_with_data(find_dissector("link16"), newtvb, pinfo, tree, &state);
+ call_dissector_with_data(link16_handle, newtvb, pinfo, tree, &state);
}
break;
}
@@ -9576,6 +9577,7 @@ void proto_reg_handoff_dis(void)
if (!dis_prefs_initialized)
{
dis_dissector_handle = create_dissector_handle(dissect_dis, proto_dis);
+ link16_handle = find_dissector_add_dependency("link16", proto_dis);
dis_prefs_initialized = TRUE;
}
else
diff --git a/epan/dissectors/packet-dns.c b/epan/dissectors/packet-dns.c
index 67ab22605b..47268e9e5e 100644
--- a/epan/dissectors/packet-dns.c
+++ b/epan/dissectors/packet-dns.c
@@ -4106,8 +4106,8 @@ proto_reg_handoff_dns(void)
dissector_add_uint("sctp.ppi", DNS_PAYLOAD_PROTOCOL_ID, dns_handle);
#endif
stats_tree_register("dns", "dns", "DNS", 0, dns_stats_tree_packet, dns_stats_tree_init, NULL);
- gssapi_handle = find_dissector("gssapi");
- ntlmssp_handle = find_dissector("ntlmssp");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_dns);
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_dns);
ssl_dissector_add(TCP_PORT_DNS_TLS, dns_handle);
dtls_dissector_add(UDP_PORT_DNS_DTLS, dns_handle);
Initialized = TRUE;
diff --git a/epan/dissectors/packet-dpnss-link.c b/epan/dissectors/packet-dpnss-link.c
index 0f00ef0c4b..3d811bedc5 100644
--- a/epan/dissectors/packet-dpnss-link.c
+++ b/epan/dissectors/packet-dpnss-link.c
@@ -221,7 +221,7 @@ proto_reg_handoff_dpnss_link(void)
dpnss_link_handle = find_dissector("dpnss_link");
dissector_add_uint("wtap_encap", WTAP_ENCAP_DPNSS, dpnss_link_handle);
- dpnss_handle = find_dissector("dpnss");
+ dpnss_handle = find_dissector_add_dependency("dpnss", proto_dpnss_link);
}
/*
diff --git a/epan/dissectors/packet-dsi.c b/epan/dissectors/packet-dsi.c
index 21051dbb19..b358a30018 100644
--- a/epan/dissectors/packet-dsi.c
+++ b/epan/dissectors/packet-dsi.c
@@ -483,8 +483,8 @@ proto_reg_handoff_dsi(void)
dissector_add_uint("tcp.port", TCP_PORT_DSI, dsi_handle);
data_handle = find_dissector("data");
- afp_handle = find_dissector("afp");
- afp_server_status_handle = find_dissector("afp_server_status");
+ afp_handle = find_dissector_add_dependency("afp", proto_dsi);
+ afp_server_status_handle = find_dissector_add_dependency("afp_server_status", proto_dsi);
}
/*
diff --git a/epan/dissectors/packet-dua.c b/epan/dissectors/packet-dua.c
index 89e954bdc1..8232a3c069 100644
--- a/epan/dissectors/packet-dua.c
+++ b/epan/dissectors/packet-dua.c
@@ -914,7 +914,7 @@ proto_reg_handoff_dua(void)
dua_handle = find_dissector("dua");
data_handle = find_dissector("data");
- dpnss_handle = find_dissector("dpnss");
+ dpnss_handle = find_dissector_add_dependency("dpnss", proto_dua);
dissector_add_uint("sctp.ppi", DUA_PAYLOAD_PROTOCOL_ID, dua_handle);
}
diff --git a/epan/dissectors/packet-dvb-data-mpe.c b/epan/dissectors/packet-dvb-data-mpe.c
index f8f445c85b..5b875f6d13 100644
--- a/epan/dissectors/packet-dvb-data-mpe.c
+++ b/epan/dissectors/packet-dvb-data-mpe.c
@@ -204,8 +204,8 @@ proto_reg_handoff_dvb_data_mpe(void)
dvb_data_mpe_handle = create_dissector_handle(dissect_dvb_data_mpe, proto_dvb_data_mpe);
dissector_add_uint("mpeg_sect.tid", DVB_DATA_MPE_TID, dvb_data_mpe_handle);
- ip_handle = find_dissector("ip");
- llc_handle = find_dissector("llc");
+ ip_handle = find_dissector_add_dependency("ip", proto_dvb_data_mpe);
+ llc_handle = find_dissector_add_dependency("llc", proto_dvb_data_mpe);
}
diff --git a/epan/dissectors/packet-dvb-ipdc.c b/epan/dissectors/packet-dvb-ipdc.c
index 100ad16b1b..d2167e46e9 100644
--- a/epan/dissectors/packet-dvb-ipdc.c
+++ b/epan/dissectors/packet-dvb-ipdc.c
@@ -101,7 +101,7 @@ proto_reg_handoff_dvb_ipdc(void)
{
dissector_handle_t ipdc_handle;
- sub_handles[DVB_IPDC_SUB_FLUTE] = find_dissector("alc");
+ sub_handles[DVB_IPDC_SUB_FLUTE] = find_dissector_add_dependency("alc", proto_ipdc);
ipdc_handle = create_dissector_handle(dissect_ipdc, proto_ipdc);
dissector_add_uint("udp.port", UDP_PORT_IPDC_ESG_BOOTSTRAP, ipdc_handle);
diff --git a/epan/dissectors/packet-dvb-s2-bb.c b/epan/dissectors/packet-dvb-s2-bb.c
index 7cf48af1d2..1dc0f2fb09 100644
--- a/epan/dissectors/packet-dvb-s2-bb.c
+++ b/epan/dissectors/packet-dvb-s2-bb.c
@@ -1103,8 +1103,8 @@ void proto_reg_handoff_dvb_s2_modeadapt(void)
if (!prefs_initialized) {
heur_dissector_add("udp", dissect_dvb_s2_modeadapt, "DVB-S2 over UDP", "dvb_s2_udp", proto_dvb_s2_modeadapt, HEURISTIC_DISABLE);
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_dvb_s2_bb);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_dvb_s2_bb);
prefs_initialized = TRUE;
}
}
diff --git a/epan/dissectors/packet-dvbci.c b/epan/dissectors/packet-dvbci.c
index 07f6603d2a..f63186a4cc 100644
--- a/epan/dissectors/packet-dvbci.c
+++ b/epan/dissectors/packet-dvbci.c
@@ -6359,9 +6359,9 @@ proto_reg_handoff_dvbci(void)
dissector_add_uint("wtap_encap", WTAP_ENCAP_DVBCI, dvbci_handle);
data_handle = find_dissector("data");
- mpeg_pmt_handle = find_dissector("mpeg_pmt");
- dvb_nit_handle = find_dissector("dvb_nit");
- png_handle = find_dissector("png");
+ mpeg_pmt_handle = find_dissector_add_dependency("mpeg_pmt", proto_dvbci);
+ dvb_nit_handle = find_dissector_add_dependency("dvb_nit", proto_dvbci);
+ png_handle = find_dissector_add_dependency("png", proto_dvbci);
tcp_dissector_table = find_dissector_table("tcp.port");
udp_dissector_table = find_dissector_table("udp.port");
diff --git a/epan/dissectors/packet-e100.c b/epan/dissectors/packet-e100.c
index 7c7d5d5c75..bf2d042cee 100644
--- a/epan/dissectors/packet-e100.c
+++ b/epan/dissectors/packet-e100.c
@@ -217,7 +217,7 @@ proto_reg_handoff_e100(void)
/* Check all UDP traffic, as the specific UDP port is configurable */
heur_dissector_add("udp", dissect_e100, "E100 over UDP", "e100_udp", proto_e100, HEURISTIC_ENABLE);
/* e100 traffic encapsulates traffic from the ethernet frame on */
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_e100);
}
/*
diff --git a/epan/dissectors/packet-eap.c b/epan/dissectors/packet-eap.c
index 277e8ba741..666cb76c50 100644
--- a/epan/dissectors/packet-eap.c
+++ b/epan/dissectors/packet-eap.c
@@ -1557,7 +1557,7 @@ proto_reg_handoff_eap(void)
/*
* Get a handle for the SSL/TLS dissector.
*/
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_eap);
dissector_add_uint("ppp.protocol", PPP_EAP, eap_handle);
}
diff --git a/epan/dissectors/packet-eapol.c b/epan/dissectors/packet-eapol.c
index 8846ef7d2d..0cab0ea846 100644
--- a/epan/dissectors/packet-eapol.c
+++ b/epan/dissectors/packet-eapol.c
@@ -320,8 +320,8 @@ proto_reg_handoff_eapol(void)
/*
* Get handles for the EAP and raw data dissectors.
*/
- eap_handle = find_dissector("eap");
- mka_handle = find_dissector("mka");
+ eap_handle = find_dissector_add_dependency("eap", proto_eapol);
+ mka_handle = find_dissector_add_dependency("mka", proto_eapol);
data_handle = find_dissector("data");
dissector_add_uint("ethertype", ETHERTYPE_EAPOL, eapol_handle);
diff --git a/epan/dissectors/packet-ecmp.c b/epan/dissectors/packet-ecmp.c
index ce62167c45..8c3667fcca 100644
--- a/epan/dissectors/packet-ecmp.c
+++ b/epan/dissectors/packet-ecmp.c
@@ -3577,7 +3577,7 @@ void proto_reg_handoff_ecmp(void)
}
/* Modbus dissector hooks */
- modbus_handle = find_dissector("modbus");
+ modbus_handle = find_dissector_add_dependency("modbus", proto_ecmp);
proto_modbus = proto_get_id_by_filter_name( "modbus" );
}
diff --git a/epan/dissectors/packet-ehdlc.c b/epan/dissectors/packet-ehdlc.c
index 7ecd30ff16..c51feea282 100644
--- a/epan/dissectors/packet-ehdlc.c
+++ b/epan/dissectors/packet-ehdlc.c
@@ -321,8 +321,8 @@ proto_register_ehdlc(void)
void
proto_reg_handoff_ehdlc(void)
{
- sub_handles[SUB_RSL] = find_dissector("gsm_abis_rsl");
- sub_handles[SUB_OML] = find_dissector("gsm_abis_oml");
+ sub_handles[SUB_RSL] = find_dissector_add_dependency("gsm_abis_rsl", proto_ehdlc);
+ sub_handles[SUB_OML] = find_dissector_add_dependency("gsm_abis_oml", proto_ehdlc);
sub_handles[SUB_DATA] = find_dissector("data");
dissector_add_uint("l2tp.pw_type", L2TPv3_PROTOCOL_ERICSSON, ehdlc_handle);
diff --git a/epan/dissectors/packet-ehs.c b/epan/dissectors/packet-ehs.c
index dee39b0ea8..0f168807a3 100644
--- a/epan/dissectors/packet-ehs.c
+++ b/epan/dissectors/packet-ehs.c
@@ -1960,7 +1960,7 @@ void
proto_reg_handoff_ehs(void)
{
dissector_add_for_decode_as ( "udp.port", find_dissector("ehs") );
- ccsds_handle = find_dissector ( "ccsds" );
+ ccsds_handle = find_dissector_add_dependency ( "ccsds", proto_ehs );
}
/*
diff --git a/epan/dissectors/packet-eigrp.c b/epan/dissectors/packet-eigrp.c
index 0cd4af449f..b42d23d1e3 100644
--- a/epan/dissectors/packet-eigrp.c
+++ b/epan/dissectors/packet-eigrp.c
@@ -3407,7 +3407,7 @@ proto_reg_handoff_eigrp(void)
{
dissector_handle_t eigrp_handle;
- ipxsap_handle = find_dissector("ipxsap");
+ ipxsap_handle = find_dissector_add_dependency("ipxsap", proto_eigrp);
media_type_table = find_dissector_table("media_type");
eigrp_handle = create_dissector_handle(dissect_eigrp, proto_eigrp);
diff --git a/epan/dissectors/packet-elasticsearch.c b/epan/dissectors/packet-elasticsearch.c
index 0f96a769b1..81b933e742 100644
--- a/epan/dissectors/packet-elasticsearch.c
+++ b/epan/dissectors/packet-elasticsearch.c
@@ -746,7 +746,7 @@ void proto_reg_handoff_elasticsearch(void) {
dissector_handle_t elasticsearch_handle;
dissector_handle_t elasticsearch_zen_handle;
- elasticsearch_http_handle = find_dissector("http");
+ elasticsearch_http_handle = find_dissector_add_dependency("http", proto_elasticsearch);
elasticsearch_handle = create_dissector_handle(dissect_elasticsearch, proto_elasticsearch);
elasticsearch_zen_handle = create_dissector_handle(dissect_elasticsearch_zen_ping, proto_elasticsearch);
diff --git a/epan/dissectors/packet-enip.c b/epan/dissectors/packet-enip.c
index c76e311e4a..1b394c421c 100644
--- a/epan/dissectors/packet-enip.c
+++ b/epan/dissectors/packet-enip.c
@@ -4427,14 +4427,14 @@ proto_reg_handoff_enip(void)
data_handle = find_dissector("data");
/* Find ARP dissector for TCP/IP object */
- arp_handle = find_dissector("arp");
+ arp_handle = find_dissector_add_dependency("arp", proto_enip);
/* I/O data dissectors */
cipsafety_handle = find_dissector("cipsafety");
cipmotion_handle = find_dissector("cipmotion");
/* Implicit data dissector */
- cip_implicit_handle = find_dissector("cip_implicit");
+ cip_implicit_handle = find_dissector_add_dependency("cip_implicit", proto_enipio);
/* Register for EtherNet/IP Device Level Ring protocol */
dlr_handle = create_dissector_handle(dissect_dlr, proto_dlr);
diff --git a/epan/dissectors/packet-epon.c b/epan/dissectors/packet-epon.c
index 7a2d04cb38..5bc4046dca 100644
--- a/epan/dissectors/packet-epon.c
+++ b/epan/dissectors/packet-epon.c
@@ -295,7 +295,7 @@ proto_reg_handoff_epon(void)
epon_handle = create_dissector_handle(dissect_epon, proto_epon);
dissector_add_uint("wtap_encap", WTAP_ENCAP_EPON, epon_handle);
- eth_maybefcs_handle = find_dissector("eth_maybefcs");
+ eth_maybefcs_handle = find_dissector_add_dependency("eth_maybefcs", proto_epon);
}
/*
diff --git a/epan/dissectors/packet-erf.c b/epan/dissectors/packet-erf.c
index 79a6308f8d..1379cd0881 100644
--- a/epan/dissectors/packet-erf.c
+++ b/epan/dissectors/packet-erf.c
@@ -1894,15 +1894,15 @@ proto_reg_handoff_erf(void)
data_handle = find_dissector("data");
/* Get handles for serial line protocols */
- chdlc_handle = find_dissector("chdlc");
- ppp_handle = find_dissector("ppp_hdlc");
- frelay_handle = find_dissector("fr");
- mtp2_handle = find_dissector("mtp2_with_crc");
+ chdlc_handle = find_dissector_add_dependency("chdlc", proto_erf);
+ ppp_handle = find_dissector_add_dependency("ppp_hdlc", proto_erf);
+ frelay_handle = find_dissector_add_dependency("fr", proto_erf);
+ mtp2_handle = find_dissector_add_dependency("mtp2_with_crc", proto_erf);
/* Get handle for ATM dissector */
- atm_untruncated_handle = find_dissector("atm_untruncated");
+ atm_untruncated_handle = find_dissector_add_dependency("atm_untruncated", proto_erf);
- sdh_handle = find_dissector("sdh");
+ sdh_handle = find_dissector_add_dependency("sdh", proto_erf);
}
/*
diff --git a/epan/dissectors/packet-eth.c b/epan/dissectors/packet-eth.c
index 90ad6f09a6..2475107a64 100644
--- a/epan/dissectors/packet-eth.c
+++ b/epan/dissectors/packet-eth.c
@@ -1041,10 +1041,10 @@ proto_reg_handoff_eth(void)
dissector_handle_t eth_handle, eth_withoutfcs_handle;
/* Get a handle for the Firewall-1 dissector. */
- fw1_handle = find_dissector("fw1");
+ fw1_handle = find_dissector_add_dependency("fw1", proto_eth);
/* Get a handle for the ethertype dissector. */
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_eth);
/* Get a handle for the generic data dissector. */
data_handle = find_dissector("data");
diff --git a/epan/dissectors/packet-etherip.c b/epan/dissectors/packet-etherip.c
index becb3a9892..bc8435c8f2 100644
--- a/epan/dissectors/packet-etherip.c
+++ b/epan/dissectors/packet-etherip.c
@@ -133,7 +133,7 @@ proto_reg_handoff_etherip(void)
{
dissector_handle_t etherip_handle;
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_etherip);
etherip_handle = find_dissector("etherip");
dissector_add_uint("ip.proto", IP_PROTO_ETHERIP, etherip_handle);
}
diff --git a/epan/dissectors/packet-etsi_card_app_toolkit.c b/epan/dissectors/packet-etsi_card_app_toolkit.c
index fce40bc9fa..f6b24b738a 100644
--- a/epan/dissectors/packet-etsi_card_app_toolkit.c
+++ b/epan/dissectors/packet-etsi_card_app_toolkit.c
@@ -1884,7 +1884,7 @@ proto_register_card_app_toolkit(void)
void
proto_reg_handoff_card_app_toolkit(void)
{
- gsm_sms_handle = find_dissector("gsm_sms");
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms", proto_cat);
}
diff --git a/epan/dissectors/packet-etv.c b/epan/dissectors/packet-etv.c
index d160bf8e11..a02be27c8c 100644
--- a/epan/dissectors/packet-etv.c
+++ b/epan/dissectors/packet-etv.c
@@ -236,7 +236,8 @@ proto_reg_handoff_etv(void)
etv_ddb_handle = create_dissector_handle(dissect_etv_ddb, proto_etv_ddb);
dissector_add_uint("mpeg_sect.tid", ETV_TID_DII_SECTION, etv_dii_handle);
dissector_add_uint("mpeg_sect.tid", ETV_TID_DDB_SECTION, etv_ddb_handle);
- dsmcc_handle = find_dissector("mp2t-dsmcc");
+ dsmcc_handle = find_dissector_add_dependency("mp2t-dsmcc", proto_etv_dii);
+ find_dissector_add_dependency("mp2t-dsmcc", proto_etv_ddb);
}
/*
diff --git a/epan/dissectors/packet-fcels.c b/epan/dissectors/packet-fcels.c
index d6c883807b..acbde217f9 100644
--- a/epan/dissectors/packet-fcels.c
+++ b/epan/dissectors/packet-fcels.c
@@ -2628,7 +2628,7 @@ proto_reg_handoff_fcels (void)
dissector_add_uint("fc.ftype", FC_FTYPE_ELS, els_handle);
data_handle = find_dissector ("data");
- fcsp_handle = find_dissector ("fcsp");
+ fcsp_handle = find_dissector_add_dependency ("fcsp", proto_fcels);
}
diff --git a/epan/dissectors/packet-fcip.c b/epan/dissectors/packet-fcip.c
index 980356e992..6e230da629 100644
--- a/epan/dissectors/packet-fcip.c
+++ b/epan/dissectors/packet-fcip.c
@@ -655,7 +655,7 @@ proto_reg_handoff_fcip (void)
dissector_add_for_decode_as("tcp.port", fcip_handle);
data_handle = find_dissector("data");
- fc_handle = find_dissector("fc");
+ fc_handle = find_dissector_add_dependency("fc", proto_fcip);
}
/*
diff --git a/epan/dissectors/packet-fcoe.c b/epan/dissectors/packet-fcoe.c
index 8aa1ebf4c3..864d017d6f 100644
--- a/epan/dissectors/packet-fcoe.c
+++ b/epan/dissectors/packet-fcoe.c
@@ -337,7 +337,7 @@ proto_reg_handoff_fcoe(void)
fcoe_handle = create_dissector_handle(dissect_fcoe, proto_fcoe);
dissector_add_uint("ethertype", ETHERTYPE_FCOE, fcoe_handle);
data_handle = find_dissector("data");
- fc_handle = find_dissector("fc");
+ fc_handle = find_dissector_add_dependency("fc", proto_fcoe);
}
/*
diff --git a/epan/dissectors/packet-fcoib.c b/epan/dissectors/packet-fcoib.c
index c71e2f8105..b48d6f5164 100644
--- a/epan/dissectors/packet-fcoib.c
+++ b/epan/dissectors/packet-fcoib.c
@@ -418,7 +418,7 @@ proto_reg_handoff_fcoib(void)
heur_dissector_add("infiniband.payload", dissect_fcoib, "Fibre Channel over Infiniband", "fc_infiniband", proto_fcoib, HEURISTIC_ENABLE);
data_handle = find_dissector("data");
- fc_handle = find_dissector("fc");
+ fc_handle = find_dissector_add_dependency("fc", proto_fcoib);
initialized = TRUE;
}
diff --git a/epan/dissectors/packet-fcswils.c b/epan/dissectors/packet-fcswils.c
index 6c7d4a3b46..9f15317153 100644
--- a/epan/dissectors/packet-fcswils.c
+++ b/epan/dissectors/packet-fcswils.c
@@ -2545,7 +2545,7 @@ proto_reg_handoff_fcswils(void)
dissector_add_uint("fc.ftype", FC_FTYPE_SWILS, swils_handle);
data_handle = find_dissector("data");
- fcsp_handle = find_dissector("fcsp");
+ fcsp_handle = find_dissector_add_dependency("fcsp", proto_fcswils);
}
/*
diff --git a/epan/dissectors/packet-fddi.c b/epan/dissectors/packet-fddi.c
index c390c0e947..6230e8f8ae 100644
--- a/epan/dissectors/packet-fddi.c
+++ b/epan/dissectors/packet-fddi.c
@@ -538,7 +538,7 @@ proto_reg_handoff_fddi(void)
/*
* Get a handle for the LLC dissector.
*/
- llc_handle = find_dissector("llc");
+ llc_handle = find_dissector_add_dependency("llc", proto_fddi);
data_handle = find_dissector("data");
dissector_add_uint("wtap_encap", WTAP_ENCAP_FDDI_BITSWAPPED,
diff --git a/epan/dissectors/packet-fip.c b/epan/dissectors/packet-fip.c
index 194d13ba22..bfbaf867fc 100644
--- a/epan/dissectors/packet-fip.c
+++ b/epan/dissectors/packet-fip.c
@@ -827,7 +827,7 @@ proto_reg_handoff_fip(void)
fip_handle = create_dissector_handle(dissect_fip, proto_fip);
dissector_add_uint("ethertype", ETHERTYPE_FIP, fip_handle);
- fc_handle = find_dissector("fc");
+ fc_handle = find_dissector_add_dependency("fc", proto_fip);
}
/*
diff --git a/epan/dissectors/packet-forces.c b/epan/dissectors/packet-forces.c
index b1a56b630d..e9f129050a 100644
--- a/epan/dissectors/packet-forces.c
+++ b/epan/dissectors/packet-forces.c
@@ -875,7 +875,7 @@ proto_reg_handoff_forces(void)
if (!inited) {
forces_handle_tcp = create_dissector_handle(dissect_forces_tcp, proto_forces);
forces_handle = create_dissector_handle(dissect_forces_not_tcp, proto_forces);
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_forces);
inited = TRUE;
}
diff --git a/epan/dissectors/packet-fp_hint.c b/epan/dissectors/packet-fp_hint.c
index 57340e77bb..550fdac426 100644
--- a/epan/dissectors/packet-fp_hint.c
+++ b/epan/dissectors/packet-fp_hint.c
@@ -602,9 +602,9 @@ proto_register_fp_hint(void)
void
proto_reg_handoff_fp_hint(void)
{
- atm_untrunc_handle = find_dissector("atm_untruncated");
+ atm_untrunc_handle = find_dissector_add_dependency("atm_untruncated", proto_fp_hint);
data_handle = find_dissector("data");
- ethwithfcs_handle = find_dissector("eth_withfcs");
+ ethwithfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_fp_hint);
}
diff --git a/epan/dissectors/packet-fr.c b/epan/dissectors/packet-fr.c
index 7e1f976946..984c56b18a 100644
--- a/epan/dissectors/packet-fr.c
+++ b/epan/dissectors/packet-fr.c
@@ -1010,9 +1010,9 @@ proto_reg_handoff_fr(void)
register_capture_dissector("wtap_encap", WTAP_ENCAP_FRELAY, capture_fr, proto_fr);
register_capture_dissector("wtap_encap", WTAP_ENCAP_FRELAY_WITH_PHDR, capture_fr, proto_fr);
- eth_withfcs_handle = find_dissector("eth_withfcs");
- gprs_ns_handle = find_dissector("gprs_ns");
- data_handle = find_dissector("data");
+ eth_withfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_fr);
+ gprs_ns_handle = find_dissector_add_dependency("gprs_ns", proto_fr);
+ data_handle = find_dissector_add_dependency("data", proto_fr);
osinl_incl_subdissector_table = find_dissector_table("osinl.incl");
}
diff --git a/epan/dissectors/packet-frame.c b/epan/dissectors/packet-frame.c
index a3466505a4..24419c9c3e 100644
--- a/epan/dissectors/packet-frame.c
+++ b/epan/dissectors/packet-frame.c
@@ -932,7 +932,7 @@ void
proto_reg_handoff_frame(void)
{
data_handle = find_dissector("data");
- docsis_handle = find_dissector("docsis");
+ docsis_handle = find_dissector_add_dependency("docsis", proto_frame);
}
/*
diff --git a/epan/dissectors/packet-fw1.c b/epan/dissectors/packet-fw1.c
index 0d2e283975..208821a8cb 100644
--- a/epan/dissectors/packet-fw1.c
+++ b/epan/dissectors/packet-fw1.c
@@ -291,7 +291,7 @@ proto_register_fw1(void)
void
proto_reg_handoff_fw1(void)
{
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_fw1);
}
/*
diff --git a/epan/dissectors/packet-gadu-gadu.c b/epan/dissectors/packet-gadu-gadu.c
index 8c63227f27..e2f594fde9 100644
--- a/epan/dissectors/packet-gadu-gadu.c
+++ b/epan/dissectors/packet-gadu-gadu.c
@@ -2114,7 +2114,7 @@ proto_reg_handoff_gadu_gadu(void)
{
dissector_add_uint("tcp.port", TCP_PORT_GADU_GADU, gadu_gadu_handle);
- xml_handle = find_dissector("xml");
+ xml_handle = find_dissector_add_dependency("xml", hfi_gadu_gadu->id);
}
/*
diff --git a/epan/dissectors/packet-gmhdr.c b/epan/dissectors/packet-gmhdr.c
index bde563c5d5..acc0f8b2a1 100644
--- a/epan/dissectors/packet-gmhdr.c
+++ b/epan/dissectors/packet-gmhdr.c
@@ -519,7 +519,7 @@ proto_reg_handoff_gmhdr(void)
{
dissector_handle_t gmhdr_handle;
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_gmhdr);
gmhdr_handle = create_dissector_handle(dissect_gmhdr, proto_gmhdr);
dissector_add_uint("ethertype", ETHERTYPE_GIGAMON, gmhdr_handle);
diff --git a/epan/dissectors/packet-gmr1_dtap.c b/epan/dissectors/packet-gmr1_dtap.c
index 709ebbdabd..59b7180a4d 100644
--- a/epan/dissectors/packet-gmr1_dtap.c
+++ b/epan/dissectors/packet-gmr1_dtap.c
@@ -185,7 +185,7 @@ proto_reg_handoff_gmr1_dtap(void)
dissector_add_uint("lapsat.sapi", 0 , dtap_handle); /* LAPSat: CC/RR/MM */
dissector_add_uint("lapsat.sapi", 3 , dtap_handle); /* LAPSat: SMS/SS */
- gsm_dtap_handle = find_dissector("gsm_a_dtap");
+ gsm_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_gmr1_dtap);
}
/*
diff --git a/epan/dissectors/packet-gprs-llc.c b/epan/dissectors/packet-gprs-llc.c
index b424cfa123..1ed653ba90 100644
--- a/epan/dissectors/packet-gprs-llc.c
+++ b/epan/dissectors/packet-gprs-llc.c
@@ -1353,7 +1353,7 @@ proto_reg_handoff_llcgprs(void)
dissector_add_uint("wtap_encap", WTAP_ENCAP_GPRS_LLC, gprs_llc_handle);
data_handle = find_dissector("data");
- sndcp_xid_handle = find_dissector("sndcpxid");
+ sndcp_xid_handle = find_dissector_add_dependency("sndcpxid", proto_llcgprs);
}
/*
diff --git a/epan/dissectors/packet-gsm_a_bssmap.c b/epan/dissectors/packet-gsm_a_bssmap.c
index 8517c315c9..deb8f27d1d 100644
--- a/epan/dissectors/packet-gsm_a_bssmap.c
+++ b/epan/dissectors/packet-gsm_a_bssmap.c
@@ -8006,10 +8006,10 @@ proto_reg_handoff_gsm_a_bssmap(void)
bssmap_handle = find_dissector("gsm_a_bssmap");
dissector_add_uint("bssap.pdu_type", GSM_A_PDU_TYPE_BSSMAP, bssmap_handle);
- dtap_handle = find_dissector("gsm_a_dtap");
- gsm_bsslap_handle = find_dissector("gsm_bsslap");
- bssgp_handle = find_dissector ("bssgp");
- rrc_handle = find_dissector ("rrc");
+ dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_a_bssmap);
+ gsm_bsslap_handle = find_dissector_add_dependency("gsm_bsslap", proto_a_bssmap);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_a_bssmap);
+ rrc_handle = find_dissector_add_dependency("rrc", proto_a_bssmap);
}
diff --git a/epan/dissectors/packet-gsm_a_dtap.c b/epan/dissectors/packet-gsm_a_dtap.c
index 952b7e7087..f0d6cdc13d 100644
--- a/epan/dissectors/packet-gsm_a_dtap.c
+++ b/epan/dissectors/packet-gsm_a_dtap.c
@@ -8329,8 +8329,8 @@ proto_reg_handoff_gsm_a_dtap(void)
dissector_add_uint("lapdm.sapi", 3 , dtap_handle); /* LAPDm: SMS/SS */
data_handle = find_dissector("data");
- gsm_map_handle = find_dissector("gsm_map");
- rp_handle = find_dissector("gsm_a_rp");
+ gsm_map_handle = find_dissector_add_dependency("gsm_map", proto_a_dtap);
+ rp_handle = find_dissector_add_dependency("gsm_a_rp", proto_a_dtap);
}
diff --git a/epan/dissectors/packet-gsm_a_gm.c b/epan/dissectors/packet-gsm_a_gm.c
index e9b2c0f753..f83a021b87 100644
--- a/epan/dissectors/packet-gsm_a_gm.c
+++ b/epan/dissectors/packet-gsm_a_gm.c
@@ -8693,8 +8693,8 @@ void
proto_reg_handoff_gsm_a_gm(void)
{
data_handle = find_dissector("data");
- rrc_irat_ho_info_handle = find_dissector("rrc.irat.irat_ho_info");
- lte_rrc_ue_eutra_cap_handle = find_dissector("lte-rrc.ue_eutra_cap");
+ rrc_irat_ho_info_handle = find_dissector_add_dependency("rrc.irat.irat_ho_info", proto_a_gm);
+ lte_rrc_ue_eutra_cap_handle = find_dissector_add_dependency("lte-rrc.ue_eutra_cap", proto_a_gm);
}
/*
diff --git a/epan/dissectors/packet-gsm_a_rp.c b/epan/dissectors/packet-gsm_a_rp.c
index 83d52158bd..dd9071be25 100644
--- a/epan/dissectors/packet-gsm_a_rp.c
+++ b/epan/dissectors/packet-gsm_a_rp.c
@@ -571,7 +571,7 @@ proto_reg_handoff_gsm_a_rp(void)
gsm_a_rp_handle = create_dissector_handle(dissect_rp, proto_a_rp);
/* Dissect messages embedded in SIP */
dissector_add_string("media_type","application/vnd.3gpp.sms", gsm_a_rp_handle);
- gsm_sms_handle = find_dissector("gsm_sms");
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms", proto_a_rp);
}
/*
diff --git a/epan/dissectors/packet-gsm_a_rr.c b/epan/dissectors/packet-gsm_a_rr.c
index fc32fce54e..cb08dd31cf 100644
--- a/epan/dissectors/packet-gsm_a_rr.c
+++ b/epan/dissectors/packet-gsm_a_rr.c
@@ -13367,8 +13367,8 @@ void
proto_reg_handoff_gsm_a_rr(void)
{
data_handle = find_dissector("data");
- rrc_irat_ho_info_handle = find_dissector("rrc.irat.irat_ho_info");
- rrc_irat_ho_to_utran_cmd_handle = find_dissector("rrc.irat.ho_to_utran_cmd");
+ rrc_irat_ho_info_handle = find_dissector_add_dependency("rrc.irat.irat_ho_info", proto_a_rr);
+ rrc_irat_ho_to_utran_cmd_handle = find_dissector_add_dependency("rrc.irat.ho_to_utran_cmd", proto_a_rr);
rrlp_dissector = find_dissector("rrlp");
}
diff --git a/epan/dissectors/packet-gsm_abis_oml.c b/epan/dissectors/packet-gsm_abis_oml.c
index 543b0341eb..840d30de5f 100644
--- a/epan/dissectors/packet-gsm_abis_oml.c
+++ b/epan/dissectors/packet-gsm_abis_oml.c
@@ -2399,7 +2399,7 @@ proto_reg_handoff_abis_oml(void)
dissector_add_uint("lapd.gsm.sapi", LAPD_GSM_SAPI_OM_PROC,
abis_oml_handle);
- sub_om2000 = find_dissector("gsm_abis_om2000");
+ sub_om2000 = find_dissector_add_dependency("gsm_abis_om2000", proto_abis_oml);
}
/*
diff --git a/epan/dissectors/packet-gsm_bsslap.c b/epan/dissectors/packet-gsm_bsslap.c
index 317f948041..f9c894a86a 100644
--- a/epan/dissectors/packet-gsm_bsslap.c
+++ b/epan/dissectors/packet-gsm_bsslap.c
@@ -853,7 +853,7 @@ dissect_gsm_bsslap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* da
void
proto_reg_handoff_gsm_bsslap(void)
{
- bsslap_rrlp_handle = find_dissector("rrlp");
+ bsslap_rrlp_handle = find_dissector_add_dependency("rrlp", proto_gsm_bsslap);
}
void
diff --git a/epan/dissectors/packet-gsm_bssmap_le.c b/epan/dissectors/packet-gsm_bssmap_le.c
index b49559ba2e..84e533ff6f 100644
--- a/epan/dissectors/packet-gsm_bssmap_le.c
+++ b/epan/dissectors/packet-gsm_bssmap_le.c
@@ -1224,7 +1224,7 @@ proto_reg_handoff_gsm_bssmap_le(void)
dissector_add_uint("bssap.pdu_type", BSSAP_PDU_TYPE_BSSMAP, bssmap_le_handle);
- gsm_bsslap_handle = find_dissector("gsm_bsslap");
+ gsm_bsslap_handle = find_dissector_add_dependency("gsm_bsslap", proto_bssmap_le);
}
/*
diff --git a/epan/dissectors/packet-gsm_cbch.c b/epan/dissectors/packet-gsm_cbch.c
index 49258e6581..fd8bd05d63 100644
--- a/epan/dissectors/packet-gsm_cbch.c
+++ b/epan/dissectors/packet-gsm_cbch.c
@@ -657,7 +657,7 @@ void
proto_reg_handoff_gsm_cbch(void)
{
data_handle = find_dissector("data");
- cbs_handle = find_dissector("gsm_cbs");
+ cbs_handle = find_dissector_add_dependency("gsm_cbs", proto_cbch);
}
/*
diff --git a/epan/dissectors/packet-gsm_ipa.c b/epan/dissectors/packet-gsm_ipa.c
index 7385a9acfc..ce2d9d2a29 100644
--- a/epan/dissectors/packet-gsm_ipa.c
+++ b/epan/dissectors/packet-gsm_ipa.c
@@ -488,10 +488,10 @@ void proto_reg_handoff_gsm_ipa(void)
static range_t *ipa_tcp_ports, *ipa_udp_ports;
if (!ipa_initialized) {
- sub_handles[SUB_RSL] = find_dissector("gsm_abis_rsl");
- sub_handles[SUB_OML] = find_dissector("gsm_abis_oml");
- sub_handles[SUB_SCCP] = find_dissector("sccp");
- sub_handles[SUB_MGCP] = find_dissector("mgcp");
+ sub_handles[SUB_RSL] = find_dissector_add_dependency("gsm_abis_rsl", proto_ipa);
+ sub_handles[SUB_OML] = find_dissector_add_dependency("gsm_abis_oml", proto_ipa);
+ sub_handles[SUB_SCCP] = find_dissector_add_dependency("sccp", proto_ipa);
+ sub_handles[SUB_MGCP] = find_dissector_add_dependency("mgcp", proto_ipa);
sub_handles[SUB_DATA] = find_dissector("data");
ipa_tcp_handle = create_dissector_handle(dissect_ipa_tcp, proto_ipa);
diff --git a/epan/dissectors/packet-gsm_map.c b/epan/dissectors/packet-gsm_map.c
index 34256da4af..acb302b123 100644
--- a/epan/dissectors/packet-gsm_map.c
+++ b/epan/dissectors/packet-gsm_map.c
@@ -22952,10 +22952,10 @@ void proto_reg_handoff_gsm_map(void) {
if (!map_prefs_initialized) {
map_prefs_initialized = TRUE;
data_handle = find_dissector("data");
- ranap_handle = find_dissector("ranap");
- dtap_handle = find_dissector("gsm_a_dtap");
- gsm_sms_handle = find_dissector("gsm_sms");
- bssap_handle = find_dissector("gsm_a_bssmap");
+ ranap_handle = find_dissector_add_dependency("ranap", proto_gsm_map);
+ dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_gsm_map);
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms", proto_gsm_map);
+ bssap_handle = find_dissector_add_dependency("gsm_a_bssmap", proto_gsm_map);
map_handle = find_dissector("gsm_map");
oid_add_from_string("itu(0) administration(2) japan(440)","0.2.440" );
diff --git a/epan/dissectors/packet-gsm_sim.c b/epan/dissectors/packet-gsm_sim.c
index 85867cd354..4ac06b61e3 100644
--- a/epan/dissectors/packet-gsm_sim.c
+++ b/epan/dissectors/packet-gsm_sim.c
@@ -2937,7 +2937,7 @@ proto_reg_handoff_gsm_sim(void)
sim_handle = find_dissector("gsm_sim");
dissector_add_uint("gsmtap.type", 4, sim_handle);
- sub_handle_cap = find_dissector("etsi_cat");
+ sub_handle_cap = find_dissector_add_dependency("etsi_cat", proto_gsm_sim);
}
/*
diff --git a/epan/dissectors/packet-gsm_sms_ud.c b/epan/dissectors/packet-gsm_sms_ud.c
index 915419ae39..6212c836c8 100644
--- a/epan/dissectors/packet-gsm_sms_ud.c
+++ b/epan/dissectors/packet-gsm_sms_ud.c
@@ -663,7 +663,7 @@ proto_register_gsm_sms_ud(void)
void
proto_reg_handoff_gsm_sms_ud(void)
{
- wsp_handle = find_dissector("wsp-cl");
+ wsp_handle = find_dissector_add_dependency("wsp-cl", proto_gsm_sms_ud);
DISSECTOR_ASSERT(wsp_handle);
}
diff --git a/epan/dissectors/packet-gsm_um.c b/epan/dissectors/packet-gsm_um.c
index 8b29d6b616..eca32c6d27 100644
--- a/epan/dissectors/packet-gsm_um.c
+++ b/epan/dissectors/packet-gsm_um.c
@@ -297,8 +297,8 @@ proto_reg_handoff_gsm_um(void)
{
dissector_handle_t gsm_um_handle;
- lapdm_handle = find_dissector("lapdm");
- dtap_handle = find_dissector("gsm_a_dtap");
+ lapdm_handle = find_dissector_add_dependency("lapdm", proto_gsm_um);
+ dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_gsm_um);
data_handle = find_dissector("data");
gsm_um_handle = create_dissector_handle(dissect_gsm_um, proto_gsm_um);
diff --git a/epan/dissectors/packet-gsmtap.c b/epan/dissectors/packet-gsmtap.c
index 04dc757018..4e46cd5525 100644
--- a/epan/dissectors/packet-gsmtap.c
+++ b/epan/dissectors/packet-gsmtap.c
@@ -785,88 +785,88 @@ proto_reg_handoff_gsmtap(void)
/* TODO: some dissectors may be NULL if not loaded */
sub_handles[GSMTAP_SUB_DATA] = find_dissector("data");
- sub_handles[GSMTAP_SUB_UM] = find_dissector("gsm_a_ccch");
- sub_handles[GSMTAP_SUB_UM_LAPDM] = find_dissector("lapdm");
- sub_handles[GSMTAP_SUB_UM_RLC_MAC_UL] = find_dissector("gsm_rlcmac_ul");
- sub_handles[GSMTAP_SUB_UM_RLC_MAC_DL] = find_dissector("gsm_rlcmac_dl");
- sub_handles[GSMTAP_SUB_LLC] = find_dissector("llcgprs");
- sub_handles[GSMTAP_SUB_SNDCP] = find_dissector("sndcp");
- sub_handles[GSMTAP_SUB_ABIS] = find_dissector("gsm_a_dtap");
- sub_handles[GSMTAP_SUB_CDMA_CODE] = find_dissector("wimax_cdma_code_burst_handler");
- sub_handles[GSMTAP_SUB_FCH] = find_dissector("wimax_fch_burst_handler");
- sub_handles[GSMTAP_SUB_FFB] = find_dissector("wimax_ffb_burst_handler");
- sub_handles[GSMTAP_SUB_PDU] = find_dissector("wimax_pdu_burst_handler");
- sub_handles[GSMTAP_SUB_HACK] = find_dissector("wimax_hack_burst_handler");
- sub_handles[GSMTAP_SUB_PHY_ATTRIBUTES] = find_dissector("wimax_phy_attributes_burst_handler");
- sub_handles[GSMTAP_SUB_CBCH] = find_dissector("gsm_cbch");
- sub_handles[GSMTAP_SUB_GMR1_BCCH] = find_dissector("gmr1_bcch");
- sub_handles[GSMTAP_SUB_GMR1_CCCH] = find_dissector("gmr1_ccch");
- sub_handles[GSMTAP_SUB_GMR1_LAPSAT] = find_dissector("lapsat");
- sub_handles[GSMTAP_SUB_GMR1_RACH] = find_dissector("gmr1_rach");
- sub_handles[GSMTAP_SUB_UMTS_RRC] = find_dissector("rrc");
-
- rrc_sub_handles[GSMTAP_RRC_SUB_DL_DCCH_Message] = find_dissector("rrc.dl.dcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_UL_DCCH_Message] = find_dissector("rrc.ul.dcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_DL_CCCH_Message] = find_dissector("rrc.dl.ccch");
- rrc_sub_handles[GSMTAP_RRC_SUB_UL_CCCH_Message] = find_dissector("rrc.ul.ccch");
- rrc_sub_handles[GSMTAP_RRC_SUB_PCCH_Message] = find_dissector("rrc.pcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_DL_SHCCH_Message] = find_dissector("rrc.dl.shcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_UL_SHCCH_Message] = find_dissector("rrc.ul.shcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_BCCH_FACH_Message] = find_dissector("rrc.bcch.fach");
- rrc_sub_handles[GSMTAP_RRC_SUB_BCCH_BCH_Message] = find_dissector("rrc.bcch.bch");
- rrc_sub_handles[GSMTAP_RRC_SUB_MCCH_Message] = find_dissector("rrc.mcch");
- rrc_sub_handles[GSMTAP_RRC_SUB_MSCH_Message] = find_dissector("rrc.msch");
- rrc_sub_handles[GSMTAP_RRC_SUB_HandoverToUTRANCommand] = find_dissector("rrc.irat.ho_to_utran_cmd");
- rrc_sub_handles[GSMTAP_RRC_SUB_InterRATHandoverInfo] = find_dissector("rrc.irat.irat_ho_info");
- rrc_sub_handles[GSMTAP_RRC_SUB_SystemInformation_BCH] = find_dissector("rrc.sysinfo");
- rrc_sub_handles[GSMTAP_RRC_SUB_System_Information_Container] = find_dissector("rrc.sysinfo.cont");
- rrc_sub_handles[GSMTAP_RRC_SUB_UE_RadioAccessCapabilityInfo] = find_dissector("rrc.ue_radio_access_cap_info");
- rrc_sub_handles[GSMTAP_RRC_SUB_MasterInformationBlock] = find_dissector("rrc.si.mib");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType1] = find_dissector("rrc.si.sib1");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType2] = find_dissector("rrc.si.sib2");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType3] = find_dissector("rrc.si.sib3");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType4] = find_dissector("rrc.si.sib4");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType5] = find_dissector("rrc.si.sib5");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType5bis] = find_dissector("rrc.si.sib5bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType6] = find_dissector("rrc.si.sib6");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType7] = find_dissector("rrc.si.sib7");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType8] = find_dissector("rrc.si.sib8");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType9] = find_dissector("rrc.si.sib9");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType10] = find_dissector("rrc.si.sib10");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType11] = find_dissector("rrc.si.sib11");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType11bis] = find_dissector("rrc.si.sib11bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType12] = find_dissector("rrc.si.sib12");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13] = find_dissector("rrc.si.sib13");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_1] = find_dissector("rrc.si.sib13-1");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_2] = find_dissector("rrc.si.sib13-2");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_3] = find_dissector("rrc.si.sib13-3");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_4] = find_dissector("rrc.si.sib13-4");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType14] = find_dissector("rrc.si.sib14");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15] = find_dissector("rrc.si.sib15");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15bis] = find_dissector("rrc.si.sib15bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_1] = find_dissector("rrc.si.sib15-1");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_1bis] = find_dissector("rrc.si.sib15-1bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2] = find_dissector("rrc.si.sib15-2");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2bis] = find_dissector("rrc.si.sib15-2bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2ter] = find_dissector("rrc.si.sib15-2ter");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_3] = find_dissector("rrc.si.sib15-3");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_3bis] = find_dissector("rrc.si.sib15-3bis");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_4] = find_dissector("rrc.si.sib15-4");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_5] = find_dissector("rrc.si.sib15-5");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_6] = find_dissector("rrc.si.sib15-6");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_7] = find_dissector("rrc.si.sib15-7");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_8] = find_dissector("rrc.si.sib15-8");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType16] = find_dissector("rrc.si.sib16");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType17] = find_dissector("rrc.si.sib17");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType18] = find_dissector("rrc.si.sib18");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType19] = find_dissector("rrc.si.sib19");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType20] = find_dissector("rrc.si.sib20");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType21] = find_dissector("rrc.si.sib21");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType22] = find_dissector("rrc.si.sib22");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoTypeSB1] = find_dissector("rrc.si.sb1");
- rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoTypeSB2] = find_dissector("rrc.si.sb2");
- rrc_sub_handles[GSMTAP_RRC_SUB_ToTargetRNC_Container] = find_dissector("rrc.s_to_trnc_cont");
- rrc_sub_handles[GSMTAP_RRC_SUB_TargetRNC_ToSourceRNC_Container] = find_dissector("rrc.t_to_srnc_cont");
+ sub_handles[GSMTAP_SUB_UM] = find_dissector_add_dependency("gsm_a_ccch", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_UM_LAPDM] = find_dissector_add_dependency("lapdm", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_UM_RLC_MAC_UL] = find_dissector_add_dependency("gsm_rlcmac_ul", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_UM_RLC_MAC_DL] = find_dissector_add_dependency("gsm_rlcmac_dl", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_LLC] = find_dissector_add_dependency("llcgprs", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_SNDCP] = find_dissector_add_dependency("sndcp", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_ABIS] = find_dissector_add_dependency("gsm_a_dtap", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_CDMA_CODE] = find_dissector_add_dependency("wimax_cdma_code_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_FCH] = find_dissector_add_dependency("wimax_fch_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_FFB] = find_dissector_add_dependency("wimax_ffb_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_PDU] = find_dissector_add_dependency("wimax_pdu_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_HACK] = find_dissector_add_dependency("wimax_hack_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_PHY_ATTRIBUTES] = find_dissector_add_dependency("wimax_phy_attributes_burst_handler", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_CBCH] = find_dissector_add_dependency("gsm_cbch", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_GMR1_BCCH] = find_dissector_add_dependency("gmr1_bcch", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_GMR1_CCCH] = find_dissector_add_dependency("gmr1_ccch", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_GMR1_LAPSAT] = find_dissector_add_dependency("lapsat", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_GMR1_RACH] = find_dissector_add_dependency("gmr1_rach", proto_gsmtap);
+ sub_handles[GSMTAP_SUB_UMTS_RRC] = find_dissector_add_dependency("rrc", proto_gsmtap);
+
+ rrc_sub_handles[GSMTAP_RRC_SUB_DL_DCCH_Message] = find_dissector_add_dependency("rrc.dl.dcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_UL_DCCH_Message] = find_dissector_add_dependency("rrc.ul.dcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_DL_CCCH_Message] = find_dissector_add_dependency("rrc.dl.ccch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_UL_CCCH_Message] = find_dissector_add_dependency("rrc.ul.ccch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_PCCH_Message] = find_dissector_add_dependency("rrc.pcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_DL_SHCCH_Message] = find_dissector_add_dependency("rrc.dl.shcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_UL_SHCCH_Message] = find_dissector_add_dependency("rrc.ul.shcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_BCCH_FACH_Message] = find_dissector_add_dependency("rrc.bcch.fach", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_BCCH_BCH_Message] = find_dissector_add_dependency("rrc.bcch.bch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_MCCH_Message] = find_dissector_add_dependency("rrc.mcch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_MSCH_Message] = find_dissector_add_dependency("rrc.msch", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_HandoverToUTRANCommand] = find_dissector_add_dependency("rrc.irat.ho_to_utran_cmd", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_InterRATHandoverInfo] = find_dissector_add_dependency("rrc.irat.irat_ho_info", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SystemInformation_BCH] = find_dissector_add_dependency("rrc.sysinfo", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_System_Information_Container] = find_dissector_add_dependency("rrc.sysinfo.cont", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_UE_RadioAccessCapabilityInfo] = find_dissector_add_dependency("rrc.ue_radio_access_cap_info", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_MasterInformationBlock] = find_dissector_add_dependency("rrc.si.mib", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType1] = find_dissector_add_dependency("rrc.si.sib1", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType2] = find_dissector_add_dependency("rrc.si.sib2", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType3] = find_dissector_add_dependency("rrc.si.sib3", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType4] = find_dissector_add_dependency("rrc.si.sib4", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType5] = find_dissector_add_dependency("rrc.si.sib5", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType5bis] = find_dissector_add_dependency("rrc.si.sib5bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType6] = find_dissector_add_dependency("rrc.si.sib6", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType7] = find_dissector_add_dependency("rrc.si.sib7", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType8] = find_dissector_add_dependency("rrc.si.sib8", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType9] = find_dissector_add_dependency("rrc.si.sib9", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType10] = find_dissector_add_dependency("rrc.si.sib10", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType11] = find_dissector_add_dependency("rrc.si.sib11", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType11bis] = find_dissector_add_dependency("rrc.si.sib11bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType12] = find_dissector_add_dependency("rrc.si.sib12", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13] = find_dissector_add_dependency("rrc.si.sib13", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_1] = find_dissector_add_dependency("rrc.si.sib13-1", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_2] = find_dissector_add_dependency("rrc.si.sib13-2", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_3] = find_dissector_add_dependency("rrc.si.sib13-3", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType13_4] = find_dissector_add_dependency("rrc.si.sib13-4", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType14] = find_dissector_add_dependency("rrc.si.sib14", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15] = find_dissector_add_dependency("rrc.si.sib15", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15bis] = find_dissector_add_dependency("rrc.si.sib15bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_1] = find_dissector_add_dependency("rrc.si.sib15-1", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_1bis] = find_dissector_add_dependency("rrc.si.sib15-1bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2] = find_dissector_add_dependency("rrc.si.sib15-2", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2bis] = find_dissector_add_dependency("rrc.si.sib15-2bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_2ter] = find_dissector_add_dependency("rrc.si.sib15-2ter", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_3] = find_dissector_add_dependency("rrc.si.sib15-3", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_3bis] = find_dissector_add_dependency("rrc.si.sib15-3bis", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_4] = find_dissector_add_dependency("rrc.si.sib15-4", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_5] = find_dissector_add_dependency("rrc.si.sib15-5", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_6] = find_dissector_add_dependency("rrc.si.sib15-6", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_7] = find_dissector_add_dependency("rrc.si.sib15-7", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType15_8] = find_dissector_add_dependency("rrc.si.sib15-8", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType16] = find_dissector_add_dependency("rrc.si.sib16", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType17] = find_dissector_add_dependency("rrc.si.sib17", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType18] = find_dissector_add_dependency("rrc.si.sib18", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType19] = find_dissector_add_dependency("rrc.si.sib19", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType20] = find_dissector_add_dependency("rrc.si.sib20", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType21] = find_dissector_add_dependency("rrc.si.sib21", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoType22] = find_dissector_add_dependency("rrc.si.sib22", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoTypeSB1] = find_dissector_add_dependency("rrc.si.sb1", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_SysInfoTypeSB2] = find_dissector_add_dependency("rrc.si.sb2", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_ToTargetRNC_Container] = find_dissector_add_dependency("rrc.s_to_trnc_cont", proto_gsmtap);
+ rrc_sub_handles[GSMTAP_RRC_SUB_TargetRNC_ToSourceRNC_Container] = find_dissector_add_dependency("rrc.t_to_srnc_cont", proto_gsmtap);
gsmtap_handle = create_dissector_handle(dissect_gsmtap, proto_gsmtap);
dissector_add_uint("udp.port", GSMTAP_UDP_PORT, gsmtap_handle);
diff --git a/epan/dissectors/packet-gssapi.c b/epan/dissectors/packet-gssapi.c
index c9dc7fccd5..bcf8991637 100644
--- a/epan/dissectors/packet-gssapi.c
+++ b/epan/dissectors/packet-gssapi.c
@@ -709,11 +709,11 @@ proto_reg_handoff_gssapi(void)
{
dissector_handle_t gssapi_handle;
- ntlmssp_handle = find_dissector("ntlmssp");
- ntlmssp_payload_handle = find_dissector("ntlmssp_payload");
- ntlmssp_verf_handle = find_dissector("ntlmssp_verf");
- ntlmssp_data_only_handle = find_dissector("ntlmssp_data_only");
- spnego_krb5_wrap_handle = find_dissector("spnego-krb5-wrap");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_gssapi);
+ ntlmssp_payload_handle = find_dissector_add_dependency("ntlmssp_payload", proto_gssapi);
+ ntlmssp_verf_handle = find_dissector_add_dependency("ntlmssp_verf", proto_gssapi);
+ ntlmssp_data_only_handle = find_dissector_add_dependency("ntlmssp_data_only", proto_gssapi);
+ spnego_krb5_wrap_handle = find_dissector_add_dependency("spnego-krb5-wrap", proto_gssapi);
register_dcerpc_auth_subdissector(DCE_C_AUTHN_LEVEL_CONNECT,
DCE_C_RPC_AUTHN_PROTOCOL_SPNEGO,
diff --git a/epan/dissectors/packet-gtp.c b/epan/dissectors/packet-gtp.c
index 87e6516eca..418eb410a5 100644
--- a/epan/dissectors/packet-gtp.c
+++ b/epan/dissectors/packet-gtp.c
@@ -10188,15 +10188,15 @@ proto_reg_handoff_gtp(void)
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
- ppp_handle = find_dissector("ppp");
- sync_handle = find_dissector("sync");
- gtpcdr_handle = find_dissector("gtpcdr");
- sndcpxid_handle = find_dissector("sndcpxid");
+ ip_handle = find_dissector_add_dependency("ip", proto_gtp);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_gtp);
+ ppp_handle = find_dissector_add_dependency("ppp", proto_gtp);
+ sync_handle = find_dissector_add_dependency("sync", proto_gtp);
+ gtpcdr_handle = find_dissector_add_dependency("gtpcdr", proto_gtp);
+ sndcpxid_handle = find_dissector_add_dependency("sndcpxid", proto_gtp);
data_handle = find_dissector("data");
- gtpv2_handle = find_dissector("gtpv2");
- bssgp_handle = find_dissector("bssgp");
+ gtpv2_handle = find_dissector_add_dependency("gtpv2", proto_gtp);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_gtp);
bssap_pdu_type_table = find_dissector_table("bssap.pdu_type");
/* AVP Code: 5 3GPP-GPRS Negotiated QoS profile */
dissector_add_uint("diameter.3gpp", 5, create_dissector_handle(dissect_diameter_3gpp_qosprofile, proto_gtp));
diff --git a/epan/dissectors/packet-gtpv2.c b/epan/dissectors/packet-gtpv2.c
index c1afd34497..d6ed0b380e 100644
--- a/epan/dissectors/packet-gtpv2.c
+++ b/epan/dissectors/packet-gtpv2.c
@@ -8564,7 +8564,7 @@ void proto_register_gtpv2(void)
void
proto_reg_handoff_gtpv2(void)
{
- nas_eps_handle = find_dissector("nas-eps");
+ nas_eps_handle = find_dissector_add_dependency("nas-eps", proto_gtpv2);
}
/*
diff --git a/epan/dissectors/packet-h248.c b/epan/dissectors/packet-h248.c
index 29a2c55753..770d03c14f 100644
--- a/epan/dissectors/packet-h248.c
+++ b/epan/dissectors/packet-h248.c
@@ -6997,7 +6997,7 @@ void proto_reg_handoff_h248(void) {
h248_handle = find_dissector("h248");
h248_tpkt_handle = find_dissector("h248.tpkt");
dissector_add_uint("mtp3.service_indicator", MTP_SI_GCP, h248_handle);
- h248_term_handle = find_dissector("h248term");
+ h248_term_handle = find_dissector_add_dependency("h248term", proto_h248);
initialized = TRUE;
} else {
if (udp_port != 0)
diff --git a/epan/dissectors/packet-h248_q1950.c b/epan/dissectors/packet-h248_q1950.c
index 2f534c2114..d6e330fbe9 100644
--- a/epan/dissectors/packet-h248_q1950.c
+++ b/epan/dissectors/packet-h248_q1950.c
@@ -454,7 +454,7 @@ static h248_package_t h248_pkg_bcg = {
void proto_reg_handoff_q1950(void) {
- bctp_dissector = find_dissector("bctp");
+ bctp_dissector = find_dissector_add_dependency("bctp", proto_q1950);
}
diff --git a/epan/dissectors/packet-h283.c b/epan/dissectors/packet-h283.c
index 4689d78dfc..2dc15e82fc 100644
--- a/epan/dissectors/packet-h283.c
+++ b/epan/dissectors/packet-h283.c
@@ -767,8 +767,8 @@ void proto_reg_handoff_h283(void)
h283_udp_handle = find_dissector(PFNAME);
dissector_add_for_decode_as("udp.port", h283_udp_handle);
- rdc_pdu_handle = find_dissector("rdc");
- rdc_device_list_handle = find_dissector("rdc.device_list");
+ rdc_pdu_handle = find_dissector_add_dependency("rdc", proto_h283);
+ rdc_device_list_handle = find_dissector_add_dependency("rdc.device_list", proto_h283);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-h460.c b/epan/dissectors/packet-h460.c
index ef195c3bcb..976da85af1 100644
--- a/epan/dissectors/packet-h460.c
+++ b/epan/dissectors/packet-h460.c
@@ -2995,8 +2995,8 @@ void proto_reg_handoff_h460(void)
h460_feature_t *ftr;
dissector_handle_t h460_name_handle;
- q931_ie_handle = find_dissector("q931.ie");
- h225_ras_handle = find_dissector("h225.ras");
+ q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_h460);
+ h225_ras_handle = find_dissector_add_dependency("h225.ras", proto_h460);
h460_name_handle = create_dissector_handle(dissect_h460_name, proto_h460);
for (ftr=h460_feature_tab; ftr->id; ftr++) {
diff --git a/epan/dissectors/packet-hci_mon.c b/epan/dissectors/packet-hci_mon.c
index bcd84f082b..7854f31d9f 100644
--- a/epan/dissectors/packet-hci_mon.c
+++ b/epan/dissectors/packet-hci_mon.c
@@ -313,10 +313,10 @@ proto_register_hci_mon(void)
void
proto_reg_handoff_hci_mon(void)
{
- bthci_cmd_handle = find_dissector("bthci_cmd");
- bthci_evt_handle = find_dissector("bthci_evt");
- bthci_acl_handle = find_dissector("bthci_acl");
- bthci_sco_handle = find_dissector("bthci_sco");
+ bthci_cmd_handle = find_dissector_add_dependency("bthci_cmd", proto_hci_mon);
+ bthci_evt_handle = find_dissector_add_dependency("bthci_evt", proto_hci_mon);
+ bthci_acl_handle = find_dissector_add_dependency("bthci_acl", proto_hci_mon);
+ bthci_sco_handle = find_dissector_add_dependency("bthci_sco", proto_hci_mon);
dissector_add_uint("bluetooth.encap", WTAP_ENCAP_BLUETOOTH_LINUX_MONITOR, hci_mon_handle);
}
diff --git a/epan/dissectors/packet-hci_usb.c b/epan/dissectors/packet-hci_usb.c
index f464be73d1..66bdc163b5 100644
--- a/epan/dissectors/packet-hci_usb.c
+++ b/epan/dissectors/packet-hci_usb.c
@@ -380,10 +380,10 @@ proto_register_hci_usb(void)
void
proto_reg_handoff_hci_usb(void)
{
- bthci_cmd_handle = find_dissector("bthci_cmd");
- bthci_evt_handle = find_dissector("bthci_evt");
- bthci_acl_handle = find_dissector("bthci_acl");
- bthci_sco_handle = find_dissector("bthci_sco");
+ bthci_cmd_handle = find_dissector_add_dependency("bthci_cmd", proto_hci_usb);
+ bthci_evt_handle = find_dissector_add_dependency("bthci_evt", proto_hci_usb);
+ bthci_acl_handle = find_dissector_add_dependency("bthci_acl", proto_hci_usb);
+ bthci_sco_handle = find_dissector_add_dependency("bthci_sco", proto_hci_usb);
}
/*
diff --git a/epan/dissectors/packet-hdmi.c b/epan/dissectors/packet-hdmi.c
index 872a3ccfac..979a99192b 100644
--- a/epan/dissectors/packet-hdmi.c
+++ b/epan/dissectors/packet-hdmi.c
@@ -266,7 +266,7 @@ proto_reg_handoff_hdmi(void)
{
dissector_handle_t hdmi_handle;
- hdcp_handle = find_dissector("hdcp");
+ hdcp_handle = find_dissector_add_dependency("hdcp", proto_hdmi);
hdmi_handle = create_dissector_handle( dissect_hdmi, proto_hdmi );
dissector_add_for_decode_as("i2c.message", hdmi_handle );
diff --git a/epan/dissectors/packet-hp-erm.c b/epan/dissectors/packet-hp-erm.c
index a0779b67e5..73255703b0 100644
--- a/epan/dissectors/packet-hp-erm.c
+++ b/epan/dissectors/packet-hp-erm.c
@@ -172,7 +172,7 @@ proto_reg_handoff_hp_erm(void)
static gboolean initialized = FALSE;
if (!initialized) {
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_hp_erm);
hp_erm_handle = create_dissector_handle(dissect_hp_erm, proto_hp_erm);
initialized = TRUE;
} else {
diff --git a/epan/dissectors/packet-http.c b/epan/dissectors/packet-http.c
index 7665b91f57..9c56704b09 100644
--- a/epan/dissectors/packet-http.c
+++ b/epan/dissectors/packet-http.c
@@ -3570,8 +3570,8 @@ proto_reg_handoff_http(void)
dissector_handle_t ssdp_handle;
data_handle = find_dissector("data");
- media_handle = find_dissector("media");
- websocket_handle = find_dissector("websocket");
+ media_handle = find_dissector_add_dependency("media", proto_http);
+ websocket_handle = find_dissector_add_dependency("websocket", proto_http);
http2_handle = find_dissector("http2");
/*
* XXX - is there anything to dissect in the body of an SSDP
@@ -3580,9 +3580,9 @@ proto_reg_handoff_http(void)
ssdp_handle = create_dissector_handle(dissect_ssdp, proto_ssdp);
dissector_add_uint("udp.port", UDP_PORT_SSDP, ssdp_handle);
- ntlmssp_handle = find_dissector("ntlmssp");
- gssapi_handle = find_dissector("gssapi");
- sstp_handle = find_dissector("sstp");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_http);
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_http);
+ sstp_handle = find_dissector_add_dependency("sstp", proto_http);
stats_tree_register("http", "http", "HTTP/Packet Counter", 0, http_stats_tree_packet, http_stats_tree_init, NULL );
stats_tree_register("http", "http_req", "HTTP/Requests", 0, http_req_stats_tree_packet, http_req_stats_tree_init, NULL );
diff --git a/epan/dissectors/packet-icap.c b/epan/dissectors/packet-icap.c
index 809e6dc19b..35d3a0a229 100644
--- a/epan/dissectors/packet-icap.c
+++ b/epan/dissectors/packet-icap.c
@@ -322,7 +322,7 @@ proto_reg_handoff_icap(void)
dissector_handle_t icap_handle;
data_handle = find_dissector("data");
- http_handle = find_dissector("http");
+ http_handle = find_dissector_add_dependency("http", proto_icap);
icap_handle = create_dissector_handle(dissect_icap, proto_icap);
dissector_add_uint("tcp.port", TCP_PORT_ICAP, icap_handle);
diff --git a/epan/dissectors/packet-icmp.c b/epan/dissectors/packet-icmp.c
index 8c66961d16..e12875566c 100644
--- a/epan/dissectors/packet-icmp.c
+++ b/epan/dissectors/packet-icmp.c
@@ -2046,7 +2046,7 @@ void proto_reg_handoff_icmp(void)
/*
* Get handle for the IP dissector.
*/
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_icmp);
icmp_handle = find_dissector("icmp");
data_handle = find_dissector("data");
diff --git a/epan/dissectors/packet-icmpv6.c b/epan/dissectors/packet-icmpv6.c
index 4774453386..d60239dfa9 100644
--- a/epan/dissectors/packet-icmpv6.c
+++ b/epan/dissectors/packet-icmpv6.c
@@ -5370,7 +5370,7 @@ proto_reg_handoff_icmpv6(void)
/*
* Get a handle for the IPv6 dissector.
*/
- ipv6_handle = find_dissector("ipv6");
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_icmpv6);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-ieee80211-netmon.c b/epan/dissectors/packet-ieee80211-netmon.c
index 8943f51a96..b2d9bddc2a 100644
--- a/epan/dissectors/packet-ieee80211-netmon.c
+++ b/epan/dissectors/packet-ieee80211-netmon.c
@@ -393,7 +393,7 @@ proto_reg_handoff_netmon_802_11(void)
dissector_handle_t netmon_802_11_handle;
/* handle for 802.11+radio information dissector */
- ieee80211_radio_handle = find_dissector("wlan_radio");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_netmon_802_11);
netmon_802_11_handle = create_dissector_handle(dissect_netmon_802_11,
proto_netmon_802_11);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IEEE_802_11_NETMON, netmon_802_11_handle);
diff --git a/epan/dissectors/packet-ieee80211-prism.c b/epan/dissectors/packet-ieee80211-prism.c
index d40a14f19e..9b804f6f91 100644
--- a/epan/dissectors/packet-ieee80211-prism.c
+++ b/epan/dissectors/packet-ieee80211-prism.c
@@ -563,9 +563,9 @@ void proto_register_ieee80211_prism(void)
void proto_reg_handoff_ieee80211_prism(void)
{
dissector_add_uint("wtap_encap", WTAP_ENCAP_IEEE_802_11_PRISM, prism_handle);
- ieee80211_handle = find_dissector("wlan");
- ieee80211_radio_handle = find_dissector("wlan_radio");
- wlancap_handle = find_dissector("wlancap");
+ ieee80211_handle = find_dissector_add_dependency("wlan", proto_prism);
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_prism);
+ wlancap_handle = find_dissector_add_dependency("wlancap", proto_prism);
register_capture_dissector("wtap_encap", WTAP_ENCAP_IEEE_802_11_PRISM, capture_prism, proto_prism);
}
diff --git a/epan/dissectors/packet-ieee80211-radio.c b/epan/dissectors/packet-ieee80211-radio.c
index 90ddbd84c0..088eacaf6e 100644
--- a/epan/dissectors/packet-ieee80211-radio.c
+++ b/epan/dissectors/packet-ieee80211-radio.c
@@ -1079,7 +1079,7 @@ void proto_reg_handoff_ieee80211_radio(void)
/* Register handoff to radio-header dissectors */
dissector_add_uint("wtap_encap", WTAP_ENCAP_IEEE_802_11_WITH_RADIO,
wlan_radio_handle);
- ieee80211_handle = find_dissector("wlan");
+ ieee80211_handle = find_dissector_add_dependency("wlan", proto_wlan_radio);
}
/*
diff --git a/epan/dissectors/packet-ieee80211-radiotap.c b/epan/dissectors/packet-ieee80211-radiotap.c
index 8145e149ab..3d4d6d560b 100644
--- a/epan/dissectors/packet-ieee80211-radiotap.c
+++ b/epan/dissectors/packet-ieee80211-radiotap.c
@@ -2687,9 +2687,9 @@ void proto_reg_handoff_radiotap(void)
dissector_handle_t radiotap_handle;
/* handle for 802.11+radio information dissector */
- ieee80211_radio_handle = find_dissector("wlan_radio");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_radiotap);
- radiotap_handle = find_dissector("radiotap");
+ radiotap_handle = find_dissector_add_dependency("radiotap", proto_radiotap);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IEEE_802_11_RADIOTAP,
radiotap_handle);
diff --git a/epan/dissectors/packet-ieee80211-wlancap.c b/epan/dissectors/packet-ieee80211-wlancap.c
index 13a2f6fac4..56245b9366 100644
--- a/epan/dissectors/packet-ieee80211-wlancap.c
+++ b/epan/dissectors/packet-ieee80211-wlancap.c
@@ -846,7 +846,7 @@ void proto_register_ieee80211_wlancap(void)
void proto_reg_handoff_ieee80211_wlancap(void)
{
- ieee80211_radio_handle = find_dissector("wlan_radio");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_wlancap);
register_capture_dissector("wtap_encap", WTAP_ENCAP_IEEE_802_11_AVS, capture_wlancap, proto_wlancap);
}
diff --git a/epan/dissectors/packet-ieee80211.c b/epan/dissectors/packet-ieee80211.c
index 051a784f3d..a260d1e773 100644
--- a/epan/dissectors/packet-ieee80211.c
+++ b/epan/dissectors/packet-ieee80211.c
@@ -27384,9 +27384,9 @@ proto_reg_handoff_ieee80211(void)
/*
* Get handles for the LLC, IPX and Ethernet dissectors.
*/
- llc_handle = find_dissector("llc");
- ipx_handle = find_dissector("ipx");
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ llc_handle = find_dissector_add_dependency("llc", proto_wlan);
+ ipx_handle = find_dissector_add_dependency("ipx", proto_wlan);
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_wlan);
data_handle = find_dissector("data");
ieee80211_handle = find_dissector("wlan");
diff --git a/epan/dissectors/packet-ieee8021ah.c b/epan/dissectors/packet-ieee8021ah.c
index 1d3f41c51f..921003072e 100644
--- a/epan/dissectors/packet-ieee8021ah.c
+++ b/epan/dissectors/packet-ieee8021ah.c
@@ -430,7 +430,8 @@ proto_reg_handoff_ieee8021ah(void)
ieee8021ad_handle = create_dissector_handle(dissect_ieee8021ad,
proto_ieee8021ad);
dissector_add_uint("ethertype", ETHERTYPE_IEEE_802_1AD, ieee8021ad_handle);
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_ieee8021ah);
+ find_dissector_add_dependency("ethertype", proto_ieee8021ad);
register_capture_dissector("ethertype", ETHERTYPE_IEEE_802_1AD, capture_ieee8021ah, proto_ieee8021ah);
register_capture_dissector("ethertype", ETHERTYPE_IEEE_802_1AH, capture_ieee8021ah, proto_ieee8021ah);
diff --git a/epan/dissectors/packet-ifcp.c b/epan/dissectors/packet-ifcp.c
index 8401a26202..c6b42d48fb 100644
--- a/epan/dissectors/packet-ifcp.c
+++ b/epan/dissectors/packet-ifcp.c
@@ -614,7 +614,7 @@ proto_reg_handoff_ifcp (void)
dissector_add_for_decode_as("tcp.port", ifcp_handle);
data_handle = find_dissector("data");
- fc_handle = find_dissector("fc_ifcp");
+ fc_handle = find_dissector_add_dependency("fc_ifcp", proto_ifcp);
}
/*
diff --git a/epan/dissectors/packet-ilp.c b/epan/dissectors/packet-ilp.c
index af4c6f61df..f4fdc5f728 100644
--- a/epan/dissectors/packet-ilp.c
+++ b/epan/dissectors/packet-ilp.c
@@ -5888,10 +5888,10 @@ proto_reg_handoff_ilp(void)
static guint local_ilp_port;
if (!initialized) {
- ilp_handle = find_dissector("ilp");
+ ilp_handle = find_dissector_add_dependency("ilp", proto_ilp);
dissector_add_string("media_type","application/oma-supl-ilp", ilp_handle);
- rrlp_handle = find_dissector("rrlp");
- lpp_handle = find_dissector("lpp");
+ rrlp_handle = find_dissector_add_dependency("rrlp", proto_ilp);
+ lpp_handle = find_dissector_add_dependency("lpp", proto_ilp);
initialized = TRUE;
} else {
dissector_delete_uint("tcp.port", local_ilp_port, ilp_handle);
diff --git a/epan/dissectors/packet-inap.c b/epan/dissectors/packet-inap.c
index 4d30298e25..58eea988df 100644
--- a/epan/dissectors/packet-inap.c
+++ b/epan/dissectors/packet-inap.c
@@ -1517,7 +1517,7 @@ dissect_inap_Code(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_,
static int
dissect_inap_T_value(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 211 "./asn1/inap/inap.cnf"
+#line 218 "./asn1/inap/inap.cnf"
proto_tree *ext_tree;
ext_tree = proto_tree_add_subtree(tree, tvb, offset, -1, ett_inap_extension_data, NULL, "Extension Data");
if (obj_id){
@@ -1544,7 +1544,7 @@ static const ber_sequence_t ExtensionField_sequence[] = {
static int
dissect_inap_ExtensionField(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 206 "./asn1/inap/inap.cnf"
+#line 213 "./asn1/inap/inap.cnf"
obj_id = NULL;
@@ -2198,7 +2198,7 @@ dissect_inap_BCSMEvent(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
static int
dissect_inap_T_bearerCap(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 244 "./asn1/inap/inap.cnf"
+#line 251 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
@@ -2353,7 +2353,7 @@ dissect_inap_CalledPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tvb
static int
dissect_inap_CalledPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 223 "./asn1/inap/inap.cnf"
+#line 230 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
@@ -2404,7 +2404,7 @@ dissect_inap_CallingPartyBusinessGroupID(gboolean implicit_tag _U_, tvbuff_t *tv
static int
dissect_inap_CallingPartyNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 233 "./asn1/inap/inap.cnf"
+#line 240 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
offset = dissect_ber_octet_string(implicit_tag, actx, tree, tvb, offset, hf_index,
@@ -2507,7 +2507,7 @@ dissect_inap_Carrier(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U
static int
dissect_inap_Cause(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 302 "./asn1/inap/inap.cnf"
+#line 309 "./asn1/inap/inap.cnf"
/*
* -- Indicates the cause for interface related information. Refer to the Q.763 Cause parameter for encoding
* -- For the use of cause and location values refer to Q.850.
@@ -4560,7 +4560,7 @@ dissect_inap_GlobalCallReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, i
int
dissect_inap_HighLayerCompatibility(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 288 "./asn1/inap/inap.cnf"
+#line 295 "./asn1/inap/inap.cnf"
/*
* -- Indicates the teleservice. For encoding, DSS1 (Q.931) is used.
*/
@@ -4734,7 +4734,7 @@ dissect_inap_NumberingPlan(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int off
static int
dissect_inap_OriginalCalledPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 266 "./asn1/inap/inap.cnf"
+#line 273 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
@@ -4798,7 +4798,7 @@ dissect_inap_Reason(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_
static int
dissect_inap_RedirectingPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 277 "./asn1/inap/inap.cnf"
+#line 284 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
@@ -4820,7 +4820,7 @@ dissect_inap_RedirectingPartyID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in
int
dissect_inap_RedirectionInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 255 "./asn1/inap/inap.cnf"
+#line 262 "./asn1/inap/inap.cnf"
tvbuff_t *parameter_tvb;
@@ -5184,7 +5184,7 @@ dissect_inap_T_triggerId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offse
static int
dissect_inap_T_triggerPar(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 192 "./asn1/inap/inap.cnf"
+#line 199 "./asn1/inap/inap.cnf"
/* FIX ME */
@@ -7762,7 +7762,7 @@ dissect_inap_MessageReceivedArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, in
static int
dissect_inap_T_uIScriptSpecificInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 198 "./asn1/inap/inap.cnf"
+#line 205 "./asn1/inap/inap.cnf"
/* FIX ME */
@@ -7791,7 +7791,7 @@ dissect_inap_ScriptCloseArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
static int
dissect_inap_T_uIScriptResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 195 "./asn1/inap/inap.cnf"
+#line 202 "./asn1/inap/inap.cnf"
/* FIX ME */
@@ -7821,7 +7821,7 @@ dissect_inap_ScriptEventArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int of
static int
dissect_inap_T_uIScriptSpecificInfo_01(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 201 "./asn1/inap/inap.cnf"
+#line 208 "./asn1/inap/inap.cnf"
/* FIX ME */
@@ -7849,7 +7849,7 @@ dissect_inap_ScriptInformationArg(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
static int
dissect_inap_T_uIScriptSpecificInfo_02(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 203 "./asn1/inap/inap.cnf"
+#line 210 "./asn1/inap/inap.cnf"
/* FIX ME */
@@ -8080,7 +8080,8 @@ dissect_inap_T_linkedId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset
static int
dissect_inap_T_argument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 180 "./asn1/inap/inap.cnf"
+#line 184 "./asn1/inap/inap.cnf"
+
offset = dissect_invokeData(tree, tvb, offset, actx);
@@ -8100,6 +8101,7 @@ static const ber_sequence_t Invoke_sequence[] = {
static int
dissect_inap_Invoke(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 168 "./asn1/inap/inap.cnf"
+
inap_opcode_type=INAP_OPCODE_INVOKE;
@@ -8113,7 +8115,8 @@ dissect_inap_Invoke(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_
static int
dissect_inap_ResultArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 183 "./asn1/inap/inap.cnf"
+#line 188 "./asn1/inap/inap.cnf"
+
offset = dissect_returnResultData(tree, tvb, offset, actx);
@@ -8145,7 +8148,8 @@ static const ber_sequence_t ReturnResult_sequence[] = {
static int
dissect_inap_ReturnResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 171 "./asn1/inap/inap.cnf"
+#line 172 "./asn1/inap/inap.cnf"
+
inap_opcode_type=INAP_OPCODE_RETURN_RESULT;
@@ -8159,7 +8163,8 @@ dissect_inap_ReturnResult(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offs
static int
dissect_inap_T_parameter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 186 "./asn1/inap/inap.cnf"
+#line 192 "./asn1/inap/inap.cnf"
+
offset = dissect_returnErrorData(tree, tvb, offset, actx);
@@ -8179,7 +8184,8 @@ static const ber_sequence_t ReturnError_sequence[] = {
static int
dissect_inap_ReturnError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 174 "./asn1/inap/inap.cnf"
+#line 176 "./asn1/inap/inap.cnf"
+
inap_opcode_type=INAP_OPCODE_RETURN_ERROR;
@@ -8299,7 +8305,8 @@ static const ber_sequence_t Reject_sequence[] = {
static int
dissect_inap_Reject(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 177 "./asn1/inap/inap.cnf"
+#line 180 "./asn1/inap/inap.cnf"
+
inap_opcode_type=INAP_OPCODE_REJECT;
diff --git a/epan/dissectors/packet-infiniband.c b/epan/dissectors/packet-infiniband.c
index bb977b31c9..9edcdc7623 100644
--- a/epan/dissectors/packet-infiniband.c
+++ b/epan/dissectors/packet-infiniband.c
@@ -7439,7 +7439,7 @@ void proto_reg_handoff_infiniband(void)
static guint prev_rroce_udp_port;
dissector_handle_t roce_handle, rroce_handle;
- ipv6_handle = find_dissector("ipv6");
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_infiniband);
data_handle = find_dissector("data");
/*
diff --git a/epan/dissectors/packet-ipdc.c b/epan/dissectors/packet-ipdc.c
index 04612d7361..fb569ad83b 100644
--- a/epan/dissectors/packet-ipdc.c
+++ b/epan/dissectors/packet-ipdc.c
@@ -1097,7 +1097,7 @@ proto_reg_handoff_ipdc(void)
} else {
ipdc_tcp_handle =
create_dissector_handle(dissect_ipdc_tcp, proto_ipdc);
- q931_handle = find_dissector("q931");
+ q931_handle = find_dissector_add_dependency("q931", proto_ipdc);
}
last_ipdc_port_pref = ipdc_port_pref;
diff --git a/epan/dissectors/packet-ipfc.c b/epan/dissectors/packet-ipfc.c
index 190e2acd4d..efceca2bdb 100644
--- a/epan/dissectors/packet-ipfc.c
+++ b/epan/dissectors/packet-ipfc.c
@@ -126,7 +126,7 @@ proto_reg_handoff_ipfc (void)
ipfc_handle = create_dissector_handle (dissect_ipfc, proto_ipfc);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IP_OVER_FC, ipfc_handle);
- llc_handle = find_dissector ("llc");
+ llc_handle = find_dissector_add_dependency("llc", proto_ipfc);
register_capture_dissector("wtap_encap", WTAP_ENCAP_IP_OVER_FC, capture_ipfc, proto_ipfc);
}
diff --git a/epan/dissectors/packet-ipmi-session.c b/epan/dissectors/packet-ipmi-session.c
index d7805aba90..0c984a2ca9 100644
--- a/epan/dissectors/packet-ipmi-session.c
+++ b/epan/dissectors/packet-ipmi-session.c
@@ -318,7 +318,7 @@ proto_reg_handoff_ipmi_session(void)
dissector_add_uint("rmcp.class", RMCP_CLASS_IPMI, ipmi_session_handle);
data_handle = find_dissector("data");
- ipmi_handle = find_dissector("ipmi");
+ ipmi_handle = find_dissector_add_dependency("ipmi", proto_ipmi_session);
}
/*
diff --git a/epan/dissectors/packet-ipnet.c b/epan/dissectors/packet-ipnet.c
index 6d4ff97f2d..069dd8b5cb 100644
--- a/epan/dissectors/packet-ipnet.c
+++ b/epan/dissectors/packet-ipnet.c
@@ -148,8 +148,8 @@ proto_reg_handoff_ipnet(void)
/*
* Get handles for the IP and IPv6 dissectors.
*/
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_ipnet);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_ipnet);
ipnet_handle = create_dissector_handle(dissect_ipnet, proto_ipnet);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IPNET, ipnet_handle);
diff --git a/epan/dissectors/packet-ipoib.c b/epan/dissectors/packet-ipoib.c
index 7f3ddf36d6..7d8c527ac1 100644
--- a/epan/dissectors/packet-ipoib.c
+++ b/epan/dissectors/packet-ipoib.c
@@ -113,9 +113,9 @@ proto_reg_handoff_ipoib(void)
/*
* Get handles for the ARP, IP and IPv6 dissectors.
*/
- arp_handle = find_dissector("arp");
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ arp_handle = find_dissector_add_dependency("arp", proto_ipoib);
+ ip_handle = find_dissector_add_dependency("ip", proto_ipoib);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_ipoib);
ipoib_handle = create_dissector_handle(dissect_ipoib, proto_ipoib);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IP_OVER_IB, ipoib_handle);
diff --git a/epan/dissectors/packet-ipos.c b/epan/dissectors/packet-ipos.c
index 663035d141..6b74461aa0 100644
--- a/epan/dissectors/packet-ipos.c
+++ b/epan/dissectors/packet-ipos.c
@@ -161,7 +161,7 @@ void
proto_reg_handoff_ipos(void)
{
ipos_handle = find_dissector("ipos");
- redback_handle = find_dissector("redback");
+ redback_handle = find_dissector_add_dependency("redback", proto_ipos);
data_handle = find_dissector("data");
/*dissector_add_uint("wtap_encap", WTAP_ENCAP_IPOS, ipos_handle); */
diff --git a/epan/dissectors/packet-ipsec-tcp.c b/epan/dissectors/packet-ipsec-tcp.c
index 7561f7e20f..9941c269a7 100644
--- a/epan/dissectors/packet-ipsec-tcp.c
+++ b/epan/dissectors/packet-ipsec-tcp.c
@@ -245,8 +245,8 @@ proto_reg_handoff_tcpencap(void)
if (!initialized) {
tcpencap_handle = create_dissector_handle(dissect_tcpencap, proto_tcpencap);
- esp_handle = find_dissector("esp");
- udp_handle = find_dissector("udp");
+ esp_handle = find_dissector_add_dependency("esp", proto_tcpencap);
+ udp_handle = find_dissector_add_dependency("udp", proto_tcpencap);
heur_dissector_add("tcp", dissect_tcpencap_heur, "TCP Encapsulation of IPsec Packets", "ipsec_tcp", proto_tcpencap, HEURISTIC_ENABLE);
diff --git a/epan/dissectors/packet-ipsec-udp.c b/epan/dissectors/packet-ipsec-udp.c
index 08527bbff3..0463066b9b 100644
--- a/epan/dissectors/packet-ipsec-udp.c
+++ b/epan/dissectors/packet-ipsec-udp.c
@@ -104,8 +104,8 @@ proto_reg_handoff_udpencap(void)
{
dissector_handle_t udpencap_handle;
- esp_handle = find_dissector("esp");
- isakmp_handle = find_dissector("isakmp");
+ esp_handle = find_dissector_add_dependency("esp", proto_udpencap);
+ isakmp_handle = find_dissector_add_dependency("isakmp", proto_udpencap);
udpencap_handle = create_dissector_handle(dissect_udpencap, proto_udpencap);
dissector_add_uint("udp.port", 4500, udpencap_handle);
diff --git a/epan/dissectors/packet-isakmp.c b/epan/dissectors/packet-isakmp.c
index e29e680ab5..d3a0213b45 100644
--- a/epan/dissectors/packet-isakmp.c
+++ b/epan/dissectors/packet-isakmp.c
@@ -6607,7 +6607,7 @@ proto_reg_handoff_isakmp(void)
dissector_handle_t isakmp_handle;
isakmp_handle = find_dissector("isakmp");
- eap_handle = find_dissector("eap");
+ eap_handle = find_dissector_add_dependency("eap", proto_isakmp);
dissector_add_uint("udp.port", UDP_PORT_ISAKMP, isakmp_handle);
dissector_add_uint("tcp.port", TCP_PORT_ISAKMP, isakmp_handle);
}
diff --git a/epan/dissectors/packet-iser.c b/epan/dissectors/packet-iser.c
index 9e577e9082..27bc15d4a9 100644
--- a/epan/dissectors/packet-iser.c
+++ b/epan/dissectors/packet-iser.c
@@ -399,8 +399,8 @@ proto_reg_handoff_iser(void)
manual_addr_data[0] = wmem_alloc(wmem_epan_scope(), GID_SIZE);
manual_addr_data[1] = wmem_alloc(wmem_epan_scope(), GID_SIZE);
- iscsi_handler = find_dissector("iscsi");
- ib_handler = find_dissector("infiniband");
+ iscsi_handler = find_dissector_add_dependency("iscsi", proto_iser);
+ ib_handler = find_dissector_add_dependency("infiniband", proto_iser);
proto_ib = dissector_handle_get_protocol_index(ib_handler);
initialized = TRUE;
diff --git a/epan/dissectors/packet-isl.c b/epan/dissectors/packet-isl.c
index 5f6b5b1924..e1bdeb8aef 100644
--- a/epan/dissectors/packet-isl.c
+++ b/epan/dissectors/packet-isl.c
@@ -409,8 +409,8 @@ proto_reg_handoff_isl(void)
/*
* Get handles for the Ethernet and Token Ring dissectors.
*/
- eth_withfcs_handle = find_dissector("eth_withfcs");
- tr_handle = find_dissector("tr");
+ eth_withfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_isl);
+ tr_handle = find_dissector_add_dependency("tr", proto_isl);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-isup.c b/epan/dissectors/packet-isup.c
index 4e7499ae22..8291afa9b2 100644
--- a/epan/dissectors/packet-isup.c
+++ b/epan/dissectors/packet-isup.c
@@ -12466,8 +12466,8 @@ proto_register_bicc(void)
void
proto_reg_handoff_bicc(void)
{
- sdp_handle = find_dissector("sdp");
- q931_ie_handle = find_dissector("q931.ie");
+ sdp_handle = find_dissector_add_dependency("sdp", proto_isup);
+ q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_isup);
dissector_add_uint("mtp3.service_indicator", MTP_SI_BICC, bicc_handle);
dissector_add_uint("sctp.ppi", BICC_PAYLOAD_PROTOCOL_ID, bicc_handle);
diff --git a/epan/dissectors/packet-iua.c b/epan/dissectors/packet-iua.c
index 1568c5e512..bbdc4f7173 100644
--- a/epan/dissectors/packet-iua.c
+++ b/epan/dissectors/packet-iua.c
@@ -987,8 +987,8 @@ proto_reg_handoff_iua(void)
dissector_handle_t iua_handle;
iua_handle = find_dissector("iua");
- q931_handle = find_dissector("q931");
- x25_handle = find_dissector("x.25");
+ q931_handle = find_dissector_add_dependency("q931", proto_iua);
+ x25_handle = find_dissector_add_dependency("x.25", proto_iua);
dissector_add_uint("sctp.port", SCTP_PORT_IUA, iua_handle);
dissector_add_uint("sctp.ppi", IUA_PAYLOAD_PROTOCOL_ID, iua_handle);
diff --git a/epan/dissectors/packet-iwarp-mpa.c b/epan/dissectors/packet-iwarp-mpa.c
index 1a0f23e76f..2ac662757d 100644
--- a/epan/dissectors/packet-iwarp-mpa.c
+++ b/epan/dissectors/packet-iwarp-mpa.c
@@ -980,7 +980,7 @@ proto_reg_handoff_mpa(void)
* port, try this dissector whenever there is TCP traffic.
*/
heur_dissector_add("tcp", dissect_iwarp_mpa, "IWARP_MPA over TCP", "iwarp_mpa_tcp", proto_iwarp_mpa, HEURISTIC_ENABLE);
- ddp_rdmap_handle = find_dissector("iwarp_ddp_rdmap");
+ ddp_rdmap_handle = find_dissector_add_dependency("iwarp_ddp_rdmap", proto_iwarp_mpa);
}
/*
diff --git a/epan/dissectors/packet-ixveriwave.c b/epan/dissectors/packet-ixveriwave.c
index 66139151f6..d50f4dd782 100644
--- a/epan/dissectors/packet-ixveriwave.c
+++ b/epan/dissectors/packet-ixveriwave.c
@@ -1679,9 +1679,9 @@ framing signal deasserted. this is caused by software setting the drain all reg
void proto_reg_handoff_ixveriwave(void)
{
/* handle for ethertype dissector */
- ethernet_handle = find_dissector("eth_withoutfcs");
+ ethernet_handle = find_dissector_add_dependency("eth_withoutfcs", proto_ixveriwave);
/* handle for 802.11+radio information dissector */
- ieee80211_radio_handle = find_dissector("wlan_radio");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_ixveriwave);
dissector_add_uint("wtap_encap", WTAP_ENCAP_IXVERIWAVE, ixveriwave_handle);
}
diff --git a/epan/dissectors/packet-json.c b/epan/dissectors/packet-json.c
index d6d5cee690..2e37f8fd24 100644
--- a/epan/dissectors/packet-json.c
+++ b/epan/dissectors/packet-json.c
@@ -655,7 +655,7 @@ proto_reg_handoff_json(void)
dissector_add_string("media_type", "application/jsonrequest", json_handle); /* JSON-RPC over HTTP */
dissector_add_string("media_type", "application/dds-web+json", json_handle); /* DDS Web Integration Service over HTTP */
- text_lines_handle = find_dissector("data-text-lines");
+ text_lines_handle = find_dissector_add_dependency("data-text-lines", proto_json);
}
/*
diff --git a/epan/dissectors/packet-juniper.c b/epan/dissectors/packet-juniper.c
index 5d067dc7d6..41b1b1be80 100644
--- a/epan/dissectors/packet-juniper.c
+++ b/epan/dissectors/packet-juniper.c
@@ -1436,7 +1436,7 @@ proto_reg_handoff_juniper(void)
dissector_handle_t juniper_vp_handle;
dissector_handle_t juniper_svcs_handle;
- ipv4_handle = find_dissector("ip");
+ ipv4_handle = find_dissector_add_dependency("ip", proto_juniper);
data_handle = find_dissector("data");
juniper_atm2_handle = create_dissector_handle(dissect_juniper_atm2, proto_juniper);
diff --git a/epan/dissectors/packet-jxta.c b/epan/dissectors/packet-jxta.c
index 6be32b8b2a..15ae9aa580 100644
--- a/epan/dissectors/packet-jxta.c
+++ b/epan/dissectors/packet-jxta.c
@@ -76,6 +76,7 @@ static dissector_table_t media_type_dissector_table = NULL;
static dissector_handle_t media_handle = NULL;
static dissector_handle_t data_handle = NULL;
static dissector_handle_t stream_jxta_handle = NULL;
+static dissector_handle_t ssl_handle = NULL;
static int hf_uri_addr = -1;
static int hf_uri_src = -1;
@@ -2076,7 +2077,6 @@ static int dissect_media( const gchar* fullmediatype, tvbuff_t * tvb, packet_inf
if (0 == strcmp("application/x-jxta-tls-block", mediatype)) {
/* If we recognize it as a TLS packet then we shuffle it off to ssl dissector. */
- dissector_handle_t ssl_handle = find_dissector("ssl");
if (NULL != ssl_handle) {
dissected = call_dissector(ssl_handle, tvb, pinfo, tree);
}
@@ -2400,9 +2400,10 @@ void proto_reg_handoff_jxta(void)
stream_jxta_handle = find_dissector("jxta.stream");
media_type_dissector_table = find_dissector_table("media_type");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_jxta);
data_handle = find_dissector("data");
- media_handle = find_dissector("media");
+ media_handle = find_dissector_add_dependency("media", proto_jxta);
init_done = TRUE;
}
diff --git a/epan/dissectors/packet-kerberos.c b/epan/dissectors/packet-kerberos.c
index 1d2210c44f..9ea86d3d58 100644
--- a/epan/dissectors/packet-kerberos.c
+++ b/epan/dissectors/packet-kerberos.c
@@ -5563,7 +5563,7 @@ proto_reg_handoff_kerberos(void)
{
dissector_handle_t kerberos_handle_tcp;
- krb4_handle = find_dissector("krb4");
+ krb4_handle = find_dissector_add_dependency("krb4", proto_kerberos);
kerberos_handle_udp = create_dissector_handle(dissect_kerberos_udp,
proto_kerberos);
diff --git a/epan/dissectors/packet-l2tp.c b/epan/dissectors/packet-l2tp.c
index 207b5f3e30..3d1209ec34 100644
--- a/epan/dissectors/packet-l2tp.c
+++ b/epan/dissectors/packet-l2tp.c
@@ -3472,8 +3472,8 @@ proto_reg_handoff_l2tp(void)
/*
* Get a handle for the PPP-in-HDLC-like-framing dissector.
*/
- ppp_hdlc_handle = find_dissector("ppp_hdlc");
- ppp_lcp_options_handle = find_dissector("ppp_lcp_options");
+ ppp_hdlc_handle = find_dissector_add_dependency("ppp_hdlc", proto_l2tp);
+ ppp_lcp_options_handle = find_dissector_add_dependency("ppp_lcp_options", proto_l2tp);
/* Register vendor AVP dissector(s)*/
dissector_add_uint("l2tp.vendor_avp", VENDOR_CABLELABS, create_dissector_handle(dissect_l2tp_vnd_cablelabs_avps, proto_l2tp));
@@ -3482,8 +3482,8 @@ proto_reg_handoff_l2tp(void)
/*
* Get a handle for the dissectors used in v3.
*/
- atm_oam_handle = find_dissector("atm_oam_cell");
- llc_handle = find_dissector("llc");
+ atm_oam_handle = find_dissector_add_dependency("atm_oam_cell", proto_l2tp);
+ llc_handle = find_dissector_add_dependency("llc", proto_l2tp);
data_handle = find_dissector("data");
atm_oam_llc_handle = create_dissector_handle( dissect_atm_oam_llc, proto_l2tp );
diff --git a/epan/dissectors/packet-lapb.c b/epan/dissectors/packet-lapb.c
index 954a587f1a..65bcdbca40 100644
--- a/epan/dissectors/packet-lapb.c
+++ b/epan/dissectors/packet-lapb.c
@@ -227,8 +227,8 @@ proto_reg_handoff_lapb(void)
* pseudo-header for LAPB-over-Ethernet, but we do get it
* for raw LAPB.
*/
- x25_dir_handle = find_dissector("x.25_dir");
- x25_handle = find_dissector("x.25");
+ x25_dir_handle = find_dissector_add_dependency("x.25_dir", proto_lapb);
+ x25_handle = find_dissector_add_dependency("x.25", proto_lapb);
lapb_handle = find_dissector("lapb");
dissector_add_uint("wtap_encap", WTAP_ENCAP_LAPB, lapb_handle);
diff --git a/epan/dissectors/packet-lapbether.c b/epan/dissectors/packet-lapbether.c
index 9e018b4166..6de872c116 100644
--- a/epan/dissectors/packet-lapbether.c
+++ b/epan/dissectors/packet-lapbether.c
@@ -95,7 +95,7 @@ proto_reg_handoff_lapbether(void)
/*
* Get a handle for the LAPB dissector.
*/
- lapb_handle = find_dissector("lapb");
+ lapb_handle = find_dissector_add_dependency("lapb", proto_lapbether);
lapbether_handle = create_dissector_handle(dissect_lapbether,
proto_lapbether);
diff --git a/epan/dissectors/packet-lcsap.c b/epan/dissectors/packet-lcsap.c
index 8a147bfef3..9149a282da 100644
--- a/epan/dissectors/packet-lcsap.c
+++ b/epan/dissectors/packet-lcsap.c
@@ -2285,8 +2285,8 @@ proto_reg_handoff_lcsap(void)
if (!Initialized) {
lcsap_handle = find_dissector("lcsap");
- lpp_handle = find_dissector("lpp");
- lppa_handle = find_dissector("lppa");
+ lpp_handle = find_dissector_add_dependency("lpp", proto_lcsap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_lcsap);
dissector_add_for_decode_as("sctp.port", lcsap_handle); /* for "decode-as" */
dissector_add_uint("sctp.ppi", LCS_AP_PAYLOAD_PROTOCOL_ID, lcsap_handle);
Initialized=TRUE;
diff --git a/epan/dissectors/packet-ldap.c b/epan/dissectors/packet-ldap.c
index 6d0e827272..4431492732 100644
--- a/epan/dissectors/packet-ldap.c
+++ b/epan/dissectors/packet-ldap.c
@@ -5839,13 +5839,13 @@ proto_reg_handoff_ldap(void)
cldap_handle = create_dissector_handle(dissect_mscldap, proto_cldap);
dissector_add_uint("udp.port", UDP_PORT_CLDAP, cldap_handle);
- gssapi_handle = find_dissector("gssapi");
- gssapi_wrap_handle = find_dissector("gssapi_verf");
- spnego_handle = find_dissector("spnego");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_ldap);
+ gssapi_wrap_handle = find_dissector_add_dependency("gssapi_verf", proto_ldap);
+ spnego_handle = find_dissector_add_dependency("spnego", proto_ldap);
- ntlmssp_handle = find_dissector("ntlmssp");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_ldap);
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_ldap);
prefs_register_ldap();
diff --git a/epan/dissectors/packet-lge_monitor.c b/epan/dissectors/packet-lge_monitor.c
index beabbaf2ad..f51f0fef7f 100644
--- a/epan/dissectors/packet-lge_monitor.c
+++ b/epan/dissectors/packet-lge_monitor.c
@@ -123,10 +123,10 @@ proto_reg_handoff_lge_monitor(void)
if (!lge_monitor_prefs_initialized) {
lge_monitor_handle = create_dissector_handle(dissect_lge_monitor, proto_lge_monitor);
dissector_add_for_decode_as("udp.port", lge_monitor_handle);
- mtp3_handle = find_dissector("mtp3");
- m3ua_handle = find_dissector("m3ua");
- sccp_handle = find_dissector("sccp");
- sctp_handle = find_dissector("sctp");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_lge_monitor);
+ m3ua_handle = find_dissector_add_dependency("m3ua", proto_lge_monitor);
+ sccp_handle = find_dissector_add_dependency("sccp", proto_lge_monitor);
+ sctp_handle = find_dissector_add_dependency("sctp", proto_lge_monitor);
lge_monitor_prefs_initialized = TRUE;
}
else {
diff --git a/epan/dissectors/packet-lisp-data.c b/epan/dissectors/packet-lisp-data.c
index 924c38b64c..28669ade6e 100644
--- a/epan/dissectors/packet-lisp-data.c
+++ b/epan/dissectors/packet-lisp-data.c
@@ -290,9 +290,9 @@ proto_reg_handoff_lisp_data(void)
lisp_data_handle = create_dissector_handle(dissect_lisp_data,
proto_lisp_data);
dissector_add_uint("udp.port", LISP_DATA_PORT, lisp_data_handle);
- ipv4_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
- lisp_handle = find_dissector("lisp");
+ ipv4_handle = find_dissector_add_dependency("ip", proto_lisp_data);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_lisp_data);
+ lisp_handle = find_dissector_add_dependency("lisp", proto_lisp_data);
}
/*
diff --git a/epan/dissectors/packet-lisp.c b/epan/dissectors/packet-lisp.c
index 681fbdcbd1..2ecde37a2a 100644
--- a/epan/dissectors/packet-lisp.c
+++ b/epan/dissectors/packet-lisp.c
@@ -3625,8 +3625,8 @@ void
proto_reg_handoff_lisp(void)
{
dissector_add_uint("udp.port", LISP_CONTROL_PORT, lisp_handle);
- ipv4_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ipv4_handle = find_dissector_add_dependency("ip", proto_lisp);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_lisp);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-llc.c b/epan/dissectors/packet-llc.c
index 6cf7df684e..0a5365dee1 100644
--- a/epan/dissectors/packet-llc.c
+++ b/epan/dissectors/packet-llc.c
@@ -871,13 +871,13 @@ proto_reg_handoff_llc(void)
* Get handles for the BPDU, Ethernet, FDDI, Token Ring and
* Turbocell dissectors.
*/
- bpdu_handle = find_dissector("bpdu");
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- eth_withfcs_handle = find_dissector("eth_withfcs");
- fddi_handle = find_dissector("fddi");
- tr_handle = find_dissector("tr");
- turbo_handle = find_dissector("turbocell");
- mesh_handle = find_dissector("mesh");
+ bpdu_handle = find_dissector_add_dependency("bpdu", proto_llc);
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_llc);
+ eth_withfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_llc);
+ fddi_handle = find_dissector_add_dependency("fddi", proto_llc);
+ tr_handle = find_dissector_add_dependency("tr", proto_llc);
+ turbo_handle = find_dissector_add_dependency("turbocell", proto_llc);
+ mesh_handle = find_dissector_add_dependency("mesh", proto_llc);
data_handle = find_dissector("data");
/*
diff --git a/epan/dissectors/packet-logcat.c b/epan/dissectors/packet-logcat.c
index 0905dddba8..92279ccb58 100644
--- a/epan/dissectors/packet-logcat.c
+++ b/epan/dissectors/packet-logcat.c
@@ -305,7 +305,7 @@ proto_register_logcat(void)
void
proto_reg_handoff_logcat(void)
{
- data_text_lines_handle = find_dissector("data-text-lines");
+ data_text_lines_handle = find_dissector_add_dependency("data-text-lines", proto_logcat);
dissector_add_uint("wtap_encap", WTAP_ENCAP_LOGCAT, logcat_handle);
diff --git a/epan/dissectors/packet-lpp.c b/epan/dissectors/packet-lpp.c
index 59d3bb2c6f..f20fdf719e 100644
--- a/epan/dissectors/packet-lpp.c
+++ b/epan/dissectors/packet-lpp.c
@@ -17501,7 +17501,7 @@ void proto_register_lpp(void) {
void
proto_reg_handoff_lpp(void)
{
- lppe_handle = find_dissector("lppe");
+ lppe_handle = find_dissector_add_dependency("lppe", proto_lpp);
}
diff --git a/epan/dissectors/packet-ltp.c b/epan/dissectors/packet-ltp.c
index bc5382751a..d73f64f557 100644
--- a/epan/dissectors/packet-ltp.c
+++ b/epan/dissectors/packet-ltp.c
@@ -993,7 +993,7 @@ proto_reg_handoff_ltp(void)
if (!initialized) {
ltp_handle = create_dissector_handle(dissect_ltp, proto_ltp);
- bundle_handle = find_dissector("bundle");
+ bundle_handle = find_dissector_add_dependency("bundle", proto_ltp);
initialized = TRUE;
} else {
dissector_delete_uint("udp.port", currentPort, ltp_handle);
diff --git a/epan/dissectors/packet-lwapp.c b/epan/dissectors/packet-lwapp.c
index 8737e86a7b..7e3c70fc97 100644
--- a/epan/dissectors/packet-lwapp.c
+++ b/epan/dissectors/packet-lwapp.c
@@ -543,9 +543,9 @@ proto_reg_handoff_lwapp(void)
/*
* Get handles for the Ethernet and wireless dissectors.
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- wlan_handle = find_dissector("wlan_withoutfcs");
- wlan_bsfc_handle = find_dissector("wlan_bsfc");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_lwapp);
+ wlan_handle = find_dissector_add_dependency("wlan_withoutfcs", proto_lwapp);
+ wlan_bsfc_handle = find_dissector_add_dependency("wlan_bsfc", proto_lwapp);
data_handle = find_dissector("data");
/* This dissector assumes lwapp packets in an 802.3 frame */
diff --git a/epan/dissectors/packet-m2pa.c b/epan/dissectors/packet-m2pa.c
index fe650a0bd1..a9b343b0cd 100644
--- a/epan/dissectors/packet-m2pa.c
+++ b/epan/dissectors/packet-m2pa.c
@@ -594,7 +594,7 @@ proto_reg_handoff_m2pa(void)
/* Port preferences code shamelessly copied from packet-beep.c */
if (!prefs_initialized) {
m2pa_handle = find_dissector("m2pa");
- mtp3_handle = find_dissector("mtp3");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_m2pa);
dissector_add_uint("sctp.ppi", M2PA_PAYLOAD_PROTOCOL_ID, m2pa_handle);
diff --git a/epan/dissectors/packet-m2tp.c b/epan/dissectors/packet-m2tp.c
index 80eea7567e..f00f08d189 100644
--- a/epan/dissectors/packet-m2tp.c
+++ b/epan/dissectors/packet-m2tp.c
@@ -655,7 +655,7 @@ void
proto_reg_handoff_m2tp(void)
{
dissector_handle_t m2tp_handle;
- mtp2_handle = find_dissector("mtp2");
+ mtp2_handle = find_dissector_add_dependency("mtp2", proto_m2tp);
m2tp_handle = create_dissector_handle(dissect_m2tp, proto_m2tp);
dissector_add_uint("sctp.ppi", M2TP_PAYLOAD_PROTOCOL_ID, m2tp_handle);
dissector_add_uint("sctp.port", SCTP_PORT_M2TP, m2tp_handle);
diff --git a/epan/dissectors/packet-m2ua.c b/epan/dissectors/packet-m2ua.c
index 78ee7fbea1..2b7ad32403 100644
--- a/epan/dissectors/packet-m2ua.c
+++ b/epan/dissectors/packet-m2ua.c
@@ -1142,7 +1142,7 @@ proto_reg_handoff_m2ua(void)
{
dissector_handle_t m2ua_handle;
- mtp3_handle = find_dissector("mtp3");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_m2ua);
m2ua_handle = create_dissector_handle(dissect_m2ua, proto_m2ua);
dissector_add_uint("sctp.ppi", M2UA_PAYLOAD_PROTOCOL_ID, m2ua_handle);
dissector_add_uint("sctp.port", SCTP_PORT_M2UA, m2ua_handle);
diff --git a/epan/dissectors/packet-m3ua.c b/epan/dissectors/packet-m3ua.c
index a29fb16912..ea1e356fcb 100644
--- a/epan/dissectors/packet-m3ua.c
+++ b/epan/dissectors/packet-m3ua.c
@@ -2153,7 +2153,7 @@ proto_reg_handoff_m3ua(void)
/*
* Get a handle for the MTP3 dissector.
*/
- mtp3_handle = find_dissector("mtp3");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_m3ua);
data_handle = find_dissector("data");
m3ua_handle = find_dissector("m3ua");
dissector_add_uint("sctp.ppi", M3UA_PAYLOAD_PROTOCOL_ID, m3ua_handle);
diff --git a/epan/dissectors/packet-mac-lte.c b/epan/dissectors/packet-mac-lte.c
index 127ac02a40..84fca1037f 100644
--- a/epan/dissectors/packet-mac-lte.c
+++ b/epan/dissectors/packet-mac-lte.c
@@ -8737,14 +8737,14 @@ void proto_reg_handoff_mac_lte(void)
/* Add as a heuristic UDP dissector */
heur_dissector_add("udp", dissect_mac_lte_heur, "MAC-LTE over UDP", "mac_lte_udp", proto_mac_lte, HEURISTIC_DISABLE);
- rlc_lte_handle = find_dissector("rlc-lte");
- lte_rrc_bcch_dl_sch_handle = find_dissector("lte_rrc.bcch_dl_sch");
- lte_rrc_bcch_bch_handle = find_dissector("lte_rrc.bcch_bch");
- lte_rrc_pcch_handle = find_dissector("lte_rrc.pcch");
- lte_rrc_ul_ccch_handle = find_dissector("lte_rrc.ul_ccch");
- lte_rrc_dl_ccch_handle = find_dissector("lte_rrc.dl_ccch");
- lte_rrc_sbcch_sl_bch_handle = find_dissector("lte_rrc.sbcch_sl_bch");
- lte_rrc_sc_mcch_handle = find_dissector("lte_rrc.sc_mcch");
+ rlc_lte_handle = find_dissector_add_dependency("rlc-lte", proto_mac_lte);
+ lte_rrc_bcch_dl_sch_handle = find_dissector_add_dependency("lte_rrc.bcch_dl_sch", proto_mac_lte);
+ lte_rrc_bcch_bch_handle = find_dissector_add_dependency("lte_rrc.bcch_bch", proto_mac_lte);
+ lte_rrc_pcch_handle = find_dissector_add_dependency("lte_rrc.pcch", proto_mac_lte);
+ lte_rrc_ul_ccch_handle = find_dissector_add_dependency("lte_rrc.ul_ccch", proto_mac_lte);
+ lte_rrc_dl_ccch_handle = find_dissector_add_dependency("lte_rrc.dl_ccch", proto_mac_lte);
+ lte_rrc_sbcch_sl_bch_handle = find_dissector_add_dependency("lte_rrc.sbcch_sl_bch", proto_mac_lte);
+ lte_rrc_sc_mcch_handle = find_dissector_add_dependency("lte_rrc.sc_mcch", proto_mac_lte);
}
/*
diff --git a/epan/dissectors/packet-mbim.c b/epan/dissectors/packet-mbim.c
index 35d19592bf..09a52c8a7d 100644
--- a/epan/dissectors/packet-mbim.c
+++ b/epan/dissectors/packet-mbim.c
@@ -8022,13 +8022,13 @@ proto_reg_handoff_mbim(void)
if (!initialized) {
dissector_handle_t mbim_decode_as_handle = create_dissector_handle(dissect_mbim_decode_as, proto_mbim);
- bertlv_handle = find_dissector("gsm_sim.bertlv");
- etsi_cat_handle = find_dissector("etsi_cat");
- gsm_sms_handle = find_dissector("gsm_sms");
- cdma_sms_handle = find_dissector("ansi_637_trans");
- eth_handle = find_dissector("eth_withoutfcs");
- eth_fcs_handle = find_dissector("eth_withfcs");
- ip_handle = find_dissector("ip");
+ bertlv_handle = find_dissector_add_dependency("gsm_sim.bertlv", proto_mbim);
+ etsi_cat_handle = find_dissector_add_dependency("etsi_cat", proto_mbim);
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms", proto_mbim);
+ cdma_sms_handle = find_dissector_add_dependency("ansi_637_trans", proto_mbim);
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_mbim);
+ eth_fcs_handle = find_dissector_add_dependency("eth_withfcs", proto_mbim);
+ ip_handle = find_dissector_add_dependency("ip", proto_mbim);
data_handle = find_dissector("data");
heur_dissector_add("usb.bulk", dissect_mbim_bulk_heur, "MBIM USB bulk endpoint", "mbim_usb_bulk", proto_mbim, HEURISTIC_ENABLE);
dissector_add_for_decode_as("usb.device", mbim_decode_as_handle);
diff --git a/epan/dissectors/packet-mdshdr.c b/epan/dissectors/packet-mdshdr.c
index d8e9fe3dd5..9272d5670a 100644
--- a/epan/dissectors/packet-mdshdr.c
+++ b/epan/dissectors/packet-mdshdr.c
@@ -323,7 +323,7 @@ proto_reg_handoff_mdshdr(void)
mdshdr_handle = create_dissector_handle(dissect_mdshdr, proto_mdshdr);
dissector_add_uint("ethertype", ETHERTYPE_FCFT, mdshdr_handle);
data_handle = find_dissector("data");
- fc_dissector_handle = find_dissector("fc");
+ fc_dissector_handle = find_dissector_add_dependency("fc", proto_mdshdr);
mdshdr_prefs_initialized = TRUE;
}
diff --git a/epan/dissectors/packet-megaco.c b/epan/dissectors/packet-megaco.c
index 6963b9e178..df5e752c40 100644
--- a/epan/dissectors/packet-megaco.c
+++ b/epan/dissectors/packet-megaco.c
@@ -3834,10 +3834,10 @@ proto_reg_handoff_megaco(void)
#endif
if (!megaco_prefs_initialized) {
- sdp_handle = find_dissector("sdp");
- h245_handle = find_dissector("h245dg");
- h248_handle = find_dissector("h248");
- h248_otp_handle = find_dissector("h248_otp");
+ sdp_handle = find_dissector_add_dependency("sdp", proto_megaco);
+ h245_handle = find_dissector_add_dependency("h245dg", proto_megaco);
+ h248_handle = find_dissector_add_dependency("h248", proto_megaco);
+ h248_otp_handle = find_dissector_add_dependency("h248_otp", proto_megaco);
data_handle = find_dissector("data");
megaco_text_handle = find_dissector("megaco");
diff --git a/epan/dissectors/packet-meta.c b/epan/dissectors/packet-meta.c
index f0e093c189..76e3850666 100644
--- a/epan/dissectors/packet-meta.c
+++ b/epan/dissectors/packet-meta.c
@@ -810,14 +810,14 @@ proto_reg_handoff_meta(void)
dissector_add_uint("wtap_encap", WTAP_ENCAP_META, meta_handle);
#endif
data_handle = find_dissector("data");
- alcap_handle = find_dissector("alcap");
- atm_untrunc_handle = find_dissector("atm_untruncated");
- nbap_handle = find_dissector("nbap");
- sscf_nni_handle = find_dissector("sscf-nni");
- ethwithfcs_handle = find_dissector("eth_withfcs");
- ethwithoutfcs_handle = find_dissector("eth_withoutfcs");
- fphint_handle = find_dissector("fp_hint");
- mtp2_handle = find_dissector("mtp2");
+ alcap_handle = find_dissector_add_dependency("alcap", proto_meta);
+ atm_untrunc_handle = find_dissector_add_dependency("atm_untruncated", proto_meta);
+ nbap_handle = find_dissector_add_dependency("nbap", proto_meta);
+ sscf_nni_handle = find_dissector_add_dependency("sscf-nni", proto_meta);
+ ethwithfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_meta);
+ ethwithoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_meta);
+ fphint_handle = find_dissector_add_dependency("fp_hint", proto_meta);
+ mtp2_handle = find_dissector_add_dependency("mtp2", proto_meta);
}
/*
diff --git a/epan/dissectors/packet-mgcp.c b/epan/dissectors/packet-mgcp.c
index 1e3c2f515c..a582d59c66 100644
--- a/epan/dissectors/packet-mgcp.c
+++ b/epan/dissectors/packet-mgcp.c
@@ -2376,7 +2376,7 @@ void proto_reg_handoff_mgcp(void)
if (!mgcp_prefs_initialized)
{
/* Get a handle for the SDP dissector. */
- sdp_handle = find_dissector("sdp");
+ sdp_handle = find_dissector_add_dependency("sdp", proto_mgcp);
mgcp_tpkt_handle = create_dissector_handle(dissect_tpkt_mgcp, proto_mgcp);
mgcp_prefs_initialized = TRUE;
}
diff --git a/epan/dissectors/packet-mint.c b/epan/dissectors/packet-mint.c
index 5e5770b93e..8c3b34c68a 100644
--- a/epan/dissectors/packet-mint.c
+++ b/epan/dissectors/packet-mint.c
@@ -740,7 +740,7 @@ proto_reg_handoff_mint(void)
dissector_add_uint("udp.port", PORT_MINT_DATA_TUNNEL, mint_data_handle);
dissector_add_uint("ethertype", ETHERTYPE_MINT, mint_eth_handle);
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", hfi_mint->id);
}
/*
diff --git a/epan/dissectors/packet-mip.c b/epan/dissectors/packet-mip.c
index d25a013f13..5f61009bb0 100644
--- a/epan/dissectors/packet-mip.c
+++ b/epan/dissectors/packet-mip.c
@@ -1480,7 +1480,7 @@ proto_reg_handoff_mip(void)
dissector_handle_t mip_handle;
mip_handle = find_dissector("mip");
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_mip);
dissector_add_uint("udp.port", UDP_PORT_MIP, mip_handle);
/* Register as dissector for 3GPP2 NVSE */
diff --git a/epan/dissectors/packet-mpls.c b/epan/dissectors/packet-mpls.c
index 5d1cf705b3..f51b82a8f2 100644
--- a/epan/dissectors/packet-mpls.c
+++ b/epan/dissectors/packet-mpls.c
@@ -651,9 +651,9 @@ proto_reg_handoff_mpls(void)
dissector_add_uint( "mpls.label", MPLS_LABEL_INVALID, mpls_pwcw_handle );
dissector_data = find_dissector("data");
- dissector_ipv6 = find_dissector("ipv6");
- dissector_ip = find_dissector("ip");
- dissector_pw_eth_heuristic = find_dissector("pw_eth_heuristic");
+ dissector_ipv6 = find_dissector_add_dependency("ipv6", proto_pw_mcw );
+ dissector_ip = find_dissector_add_dependency("ip", proto_pw_mcw );
+ dissector_pw_eth_heuristic = find_dissector_add_dependency("pw_eth_heuristic", proto_pw_mcw);
dissector_pw_ach = create_dissector_handle(dissect_pw_ach, proto_pw_ach );
}
diff --git a/epan/dissectors/packet-msdp.c b/epan/dissectors/packet-msdp.c
index 604118d7c1..9a76c31d28 100644
--- a/epan/dissectors/packet-msdp.c
+++ b/epan/dissectors/packet-msdp.c
@@ -588,7 +588,7 @@ proto_reg_handoff_msdp(void)
msdp_handle = create_dissector_handle(dissect_msdp, proto_msdp);
dissector_add_uint("tcp.port", 639, msdp_handle);
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_msdp);
}
/*
diff --git a/epan/dissectors/packet-mtp2.c b/epan/dissectors/packet-mtp2.c
index 447e2475ba..76fb4be073 100644
--- a/epan/dissectors/packet-mtp2.c
+++ b/epan/dissectors/packet-mtp2.c
@@ -442,7 +442,7 @@ proto_reg_handoff_mtp2(void)
dissector_add_uint("wtap_encap", WTAP_ENCAP_MTP2_WITH_PHDR,
mtp2_with_phdr_handle);
- mtp3_handle = find_dissector("mtp3");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_mtp2);
}
/*
diff --git a/epan/dissectors/packet-multipart.c b/epan/dissectors/packet-multipart.c
index 3870b6f677..aa9da5975d 100644
--- a/epan/dissectors/packet-multipart.c
+++ b/epan/dissectors/packet-multipart.c
@@ -1198,8 +1198,8 @@ proto_reg_handoff_multipart(void)
* When there is no dissector for the given media, call the media dissector.
*/
data_handle = find_dissector("data");
- media_handle = find_dissector("media");
- gssapi_handle = find_dissector("gssapi");
+ media_handle = find_dissector_add_dependency("media", proto_multipart);
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_multipart);
/*
* Get the content type and Internet media type table
diff --git a/epan/dissectors/packet-mux27010.c b/epan/dissectors/packet-mux27010.c
index 4460b93799..8ac557783f 100644
--- a/epan/dissectors/packet-mux27010.c
+++ b/epan/dissectors/packet-mux27010.c
@@ -1440,7 +1440,7 @@ proto_reg_handoff_mux27010(void)
/*Initialization of dissector*/
dissector_add_uint("wtap_encap", WTAP_ENCAP_MUX27010, mux27010_handle);
- ppp_handle = find_dissector("ppp");
+ ppp_handle = find_dissector_add_dependency("ppp", proto_mux27010);
}
diff --git a/epan/dissectors/packet-nas_eps.c b/epan/dissectors/packet-nas_eps.c
index 4021b93eef..2ab60b0bcd 100644
--- a/epan/dissectors/packet-nas_eps.c
+++ b/epan/dissectors/packet-nas_eps.c
@@ -6046,8 +6046,8 @@ proto_register_nas_eps(void)
void
proto_reg_handoff_nas_eps(void)
{
- gsm_a_dtap_handle = find_dissector("gsm_a_dtap");
- lpp_handle = find_dissector("lpp");
+ gsm_a_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_nas_eps);
+ lpp_handle = find_dissector_add_dependency("lpp", proto_nas_eps);
}
/*
diff --git a/epan/dissectors/packet-nasdaq-soup.c b/epan/dissectors/packet-nasdaq-soup.c
index 1062785580..2645ab0d52 100644
--- a/epan/dissectors/packet-nasdaq-soup.c
+++ b/epan/dissectors/packet-nasdaq-soup.c
@@ -291,7 +291,7 @@ void
proto_reg_handoff_nasdaq_soup(void)
{
nasdaq_soup_handle = create_dissector_handle(dissect_nasdaq_soup, proto_nasdaq_soup);
- nasdaq_itch_handle = find_dissector("nasdaq-itch");
+ nasdaq_itch_handle = find_dissector_add_dependency("nasdaq-itch", proto_nasdaq_soup);
dissector_add_for_decode_as("tcp.port", nasdaq_soup_handle);
}
diff --git a/epan/dissectors/packet-nb_rtpmux.c b/epan/dissectors/packet-nb_rtpmux.c
index c1a2ba18f1..a378f4a6fd 100644
--- a/epan/dissectors/packet-nb_rtpmux.c
+++ b/epan/dissectors/packet-nb_rtpmux.c
@@ -299,7 +299,7 @@ proto_reg_handoff_nb_rtpmux(void)
/* Allow 'decode-as' for UDP ports */
dissector_add_for_decode_as("udp.port", nb_rtpmux_handle);
- rtpdissector = find_dissector("rtp");
+ rtpdissector = find_dissector_add_dependency("rtp", proto_nb_rtpmux);
}
/*
diff --git a/epan/dissectors/packet-netanalyzer.c b/epan/dissectors/packet-netanalyzer.c
index b9c471cffa..cb515276d4 100644
--- a/epan/dissectors/packet-netanalyzer.c
+++ b/epan/dissectors/packet-netanalyzer.c
@@ -461,7 +461,7 @@ void proto_reg_handoff_netanalyzer(void)
dissector_handle_t netana_handle;
dissector_handle_t netana_handle_transparent;
- eth_dissector_handle = find_dissector("eth_withfcs");
+ eth_dissector_handle = find_dissector_add_dependency("eth_withfcs", proto_netanalyzer);
data_dissector_handle = find_dissector("data");
netana_handle = create_dissector_handle(dissect_netanalyzer, proto_netanalyzer);
diff --git a/epan/dissectors/packet-netlink-netfilter.c b/epan/dissectors/packet-netlink-netfilter.c
index 3752b77ea9..2421b32066 100644
--- a/epan/dissectors/packet-netlink-netfilter.c
+++ b/epan/dissectors/packet-netlink-netfilter.c
@@ -229,7 +229,7 @@ proto_reg_handoff_netlink_netfilter(void)
{
dissector_add_uint("netlink.protocol", WS_NETLINK_NETFILTER, netlink_netfilter);
- nflog_handle = find_dissector("nflog");
+ nflog_handle = find_dissector_add_dependency("nflog", hfi_netlink_netfilter->id);
}
/*
diff --git a/epan/dissectors/packet-netrom.c b/epan/dissectors/packet-netrom.c
index 80cead4433..79a8426486 100644
--- a/epan/dissectors/packet-netrom.c
+++ b/epan/dissectors/packet-netrom.c
@@ -619,7 +619,7 @@ proto_reg_handoff_netrom(void)
dissector_add_uint( "ax25.pid", AX25_P_NETROM, create_dissector_handle( dissect_netrom, proto_netrom ) );
register_capture_dissector("ax25.pid", AX25_P_NETROM, capture_netrom, proto_netrom);
- ip_handle = find_dissector( "ip" );
+ ip_handle = find_dissector_add_dependency( "ip", proto_netrom );
data_handle = find_dissector( "data" );
}
diff --git a/epan/dissectors/packet-nettl.c b/epan/dissectors/packet-nettl.c
index ca60a9b53d..75d74a8fcf 100644
--- a/epan/dissectors/packet-nettl.c
+++ b/epan/dissectors/packet-nettl.c
@@ -342,13 +342,13 @@ proto_reg_handoff_nettl(void)
/*
* Get handles for various dissectors and dissector tables.
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
- tr_handle = find_dissector("tr");
- fddi_bitswapped_handle = find_dissector("fddi_bitswapped");
- lapb_handle = find_dissector("lapb");
- x25_handle = find_dissector("x.25");
- sctp_handle = find_dissector("sctp");
- raw_ip_handle = find_dissector("raw_ip");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_nettl);
+ tr_handle = find_dissector_add_dependency("tr", proto_nettl);
+ fddi_bitswapped_handle = find_dissector_add_dependency("fddi_bitswapped", proto_nettl);
+ lapb_handle = find_dissector_add_dependency("lapb", proto_nettl);
+ x25_handle = find_dissector_add_dependency("x.25", proto_nettl);
+ sctp_handle = find_dissector_add_dependency("sctp", proto_nettl);
+ raw_ip_handle = find_dissector_add_dependency("raw_ip", proto_nettl);
data_handle = find_dissector("data");
ip_proto_dissector_table = find_dissector_table("ip.proto");
tcp_subdissector_table = find_dissector_table("tcp.port");
diff --git a/epan/dissectors/packet-nflog.c b/epan/dissectors/packet-nflog.c
index ef62ed6e65..589973ab50 100644
--- a/epan/dissectors/packet-nflog.c
+++ b/epan/dissectors/packet-nflog.c
@@ -297,8 +297,8 @@ proto_reg_handoff_nflog(void)
{
dissector_handle_t nflog_handle;
- ip_handle = find_dissector("ip");
- ip6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", hfi_nflog->id);
+ ip6_handle = find_dissector_add_dependency("ipv6", hfi_nflog->id);
data_handle = find_dissector("data");
nflog_handle = find_dissector("nflog");
diff --git a/epan/dissectors/packet-nsh.c b/epan/dissectors/packet-nsh.c
index 590ac61020..e52668c1f0 100644
--- a/epan/dissectors/packet-nsh.c
+++ b/epan/dissectors/packet-nsh.c
@@ -361,9 +361,9 @@ proto_reg_handoff_nsh(void)
nsh_handle = create_dissector_handle(dissect_nsh, proto_nsh);
dissector_add_uint("gre.proto", ETHERTYPE_NSH, nsh_handle);
- dissector_ip = find_dissector("ip");
- dissector_ipv6 = find_dissector("ipv6");
- dissector_eth = find_dissector("eth_maybefcs");
+ dissector_ip = find_dissector_add_dependency("ip", proto_nsh);
+ dissector_ipv6 = find_dissector_add_dependency("ipv6", proto_nsh);
+ dissector_eth = find_dissector_add_dependency("eth_maybefcs", proto_nsh);
}
diff --git a/epan/dissectors/packet-nsip.c b/epan/dissectors/packet-nsip.c
index ac697ad508..93b9ce68a5 100644
--- a/epan/dissectors/packet-nsip.c
+++ b/epan/dissectors/packet-nsip.c
@@ -1169,8 +1169,8 @@ proto_reg_handoff_nsip(void) {
static range_t *nsip_udp_port_range;
if (!nsip_prefs_initialized) {
- nsip_handle = find_dissector("gprs_ns");
- bssgp_handle = find_dissector("bssgp");
+ nsip_handle = find_dissector_add_dependency("gprs_ns", proto_nsip);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_nsip);
nsip_prefs_initialized = TRUE;
} else {
dissector_delete_uint_range("udp.port", nsip_udp_port_range, nsip_handle);
diff --git a/epan/dissectors/packet-nstrace.c b/epan/dissectors/packet-nstrace.c
index ce82163fe6..1d06450a4e 100644
--- a/epan/dissectors/packet-nstrace.c
+++ b/epan/dissectors/packet-nstrace.c
@@ -388,6 +388,8 @@ static const value_string ns_httpabortcode_vals[] = {
};
static dissector_handle_t eth_withoutfcs_handle;
+static dissector_handle_t http_handle;
+
void add35records(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_tree *ns_tree);
@@ -605,10 +607,8 @@ void add35records(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_tre
case NSREC_HTTP:
/* Call HTTP dissector */
{
- dissector_handle_t http_handle;
tvbuff_t *next_tvb_http_client;
morerecs=0;
- http_handle = find_dissector("http");
next_tvb_http_client = tvb_new_subset_remaining(tvb, offset);
call_dissector(http_handle, next_tvb_http_client, pinfo, tree);
}
@@ -1139,7 +1139,8 @@ void proto_reg_handoff_ns(void)
{
dissector_handle_t nstrace_handle;
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_nstrace);
+ http_handle = find_dissector_add_dependency("http", proto_nstrace);
nstrace_handle = create_dissector_handle(dissect_nstrace, proto_nstrace);
dissector_add_uint("wtap_encap", WTAP_ENCAP_NSTRACE_1_0, nstrace_handle);
diff --git a/epan/dissectors/packet-null.c b/epan/dissectors/packet-null.c
index 0c2ce19424..277bc20255 100644
--- a/epan/dissectors/packet-null.c
+++ b/epan/dissectors/packet-null.c
@@ -538,7 +538,7 @@ proto_reg_handoff_null(void)
* Get a handle for the PPP-in-HDLC-like-framing dissector and
* the "I don't know what this is" dissector.
*/
- ppp_hdlc_handle = find_dissector("ppp_hdlc");
+ ppp_hdlc_handle = find_dissector_add_dependency("ppp_hdlc", proto_null);
data_handle = find_dissector("data");
ethertype_dissector_table = find_dissector_table("ethertype");
diff --git a/epan/dissectors/packet-nwmtp.c b/epan/dissectors/packet-nwmtp.c
index 082c4b4dbd..c42386ca27 100644
--- a/epan/dissectors/packet-nwmtp.c
+++ b/epan/dissectors/packet-nwmtp.c
@@ -164,7 +164,7 @@ void proto_register_mwmtp(void)
void proto_reg_handoff_nwmtp(void)
{
dissector_add_for_decode_as("udp.port", nwmtp_handle);
- mtp_handle = find_dissector("mtp3");
+ mtp_handle = find_dissector_add_dependency("mtp3", proto_nwmtp);
}
/*
diff --git a/epan/dissectors/packet-obex.c b/epan/dissectors/packet-obex.c
index 59c0664a73..52f8ce7bf5 100644
--- a/epan/dissectors/packet-obex.c
+++ b/epan/dissectors/packet-obex.c
@@ -3887,8 +3887,8 @@ proto_reg_handoff_obex(void)
dissector_add_string("bluetooth.uuid", "1133", obex_handle);
dissector_add_string("bluetooth.uuid", "1134", obex_handle);
- http_handle = find_dissector("http");
- xml_handle = find_dissector("xml");
+ http_handle = find_dissector_add_dependency("http", proto_obex);
+ xml_handle = find_dissector_add_dependency("xml", proto_obex);
data_handle = find_dissector("data");
data_text_lines_handle = find_dissector("data-text-lines");
diff --git a/epan/dissectors/packet-openflow.c b/epan/dissectors/packet-openflow.c
index 9328616bbf..825fa473f6 100644
--- a/epan/dissectors/packet-openflow.c
+++ b/epan/dissectors/packet-openflow.c
@@ -201,9 +201,9 @@ proto_reg_handoff_openflow(void)
dissector_add_uint("tcp.port", currentPort, openflow_handle);
- openflow_v1_handle = find_dissector("openflow_v1");
- openflow_v4_handle = find_dissector("openflow_v4");
- openflow_v5_handle = find_dissector("openflow_v5");
+ openflow_v1_handle = find_dissector_add_dependency("openflow_v1", proto_openflow);
+ openflow_v4_handle = find_dissector_add_dependency("openflow_v4", proto_openflow);
+ openflow_v5_handle = find_dissector_add_dependency("openflow_v5", proto_openflow);
}
/*
diff --git a/epan/dissectors/packet-openflow_v1.c b/epan/dissectors/packet-openflow_v1.c
index 32929defe0..d77776a9ec 100644
--- a/epan/dissectors/packet-openflow_v1.c
+++ b/epan/dissectors/packet-openflow_v1.c
@@ -30,6 +30,7 @@
#include <epan/expert.h>
void proto_register_openflow_v1(void);
+void proto_reg_handoff_openflow_v1(void);
static dissector_handle_t eth_withoutfcs_handle;
@@ -1452,8 +1453,6 @@ proto_register_openflow_v1(void)
register_dissector("openflow_v1", dissect_openflow_v1, proto_openflow_v1);
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
-
/* Required function calls to register the header fields and subtrees */
proto_register_field_array(proto_openflow_v1, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
@@ -1461,6 +1460,12 @@ proto_register_openflow_v1(void)
expert_register_field_array(expert_openflow_v1, ei, array_length(ei));
}
+void
+proto_reg_handoff_openflow_v1(void)
+{
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_openflow_v1);
+}
+
/*
* Editor modelines - http://www.wireshark.org/tools/modelines.html
*
diff --git a/epan/dissectors/packet-openflow_v4.c b/epan/dissectors/packet-openflow_v4.c
index cb525a7a0a..97efeb322e 100644
--- a/epan/dissectors/packet-openflow_v4.c
+++ b/epan/dissectors/packet-openflow_v4.c
@@ -32,6 +32,7 @@
#include <epan/ipproto.h>
void proto_register_openflow_v4(void);
+void proto_reg_handoff_openflow_v4(void);
static dissector_handle_t eth_withoutfcs_handle;
@@ -7866,8 +7867,6 @@ proto_register_openflow_v4(void)
register_dissector("openflow_v4", dissect_openflow_v4, proto_openflow_v4);
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
-
/* Required function calls to register the header fields and subtrees */
proto_register_field_array(proto_openflow_v4, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
@@ -7875,6 +7874,12 @@ proto_register_openflow_v4(void)
expert_register_field_array(expert_openflow_v4, ei, array_length(ei));
}
+void
+proto_reg_handoff_openflow_v4(void)
+{
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_openflow_v4);
+}
+
/*
* Editor modelines - http://www.wireshark.org/tools/modelines.html
*
diff --git a/epan/dissectors/packet-openflow_v5.c b/epan/dissectors/packet-openflow_v5.c
index 7e12a42eab..b9a4e5a04b 100644
--- a/epan/dissectors/packet-openflow_v5.c
+++ b/epan/dissectors/packet-openflow_v5.c
@@ -32,6 +32,7 @@
#include <epan/ipproto.h>
void proto_register_openflow_v5(void);
+void proto_reg_handoff_openflow_v5(void);
static dissector_handle_t eth_withoutfcs_handle;
@@ -9818,8 +9819,6 @@ proto_register_openflow_v5(void)
register_dissector("openflow_v5", dissect_openflow_v5, proto_openflow_v5);
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
-
/* Required function calls to register the header fields and subtrees */
proto_register_field_array(proto_openflow_v5, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
@@ -9827,6 +9826,12 @@ proto_register_openflow_v5(void)
expert_register_field_array(expert_openflow_v5, ei, array_length(ei));
}
+void
+proto_reg_handoff_openflow_v5(void)
+{
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_openflow_v5);
+}
+
/*
* Editor modelines - http://www.wireshark.org/tools/modelines.html
*
diff --git a/epan/dissectors/packet-openvpn.c b/epan/dissectors/packet-openvpn.c
index efc0fec8e7..b3781674df 100644
--- a/epan/dissectors/packet-openvpn.c
+++ b/epan/dissectors/packet-openvpn.c
@@ -666,7 +666,7 @@ proto_reg_handoff_openvpn(void)
static gboolean initialized = FALSE;
if (! initialized) {
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_openvpn);
initialized = TRUE;
} else {
if (tcp_port > 0)
diff --git a/epan/dissectors/packet-pana.c b/epan/dissectors/packet-pana.c
index b17f3d5af2..b06cde6bef 100644
--- a/epan/dissectors/packet-pana.c
+++ b/epan/dissectors/packet-pana.c
@@ -892,7 +892,7 @@ proto_reg_handoff_pana(void)
pana_handle = create_dissector_handle(dissect_pana, proto_pana);
dissector_add_for_decode_as("udp.port", pana_handle);
- eap_handle = find_dissector("eap");
+ eap_handle = find_dissector_add_dependency("eap", proto_pana);
}
diff --git a/epan/dissectors/packet-pdc.c b/epan/dissectors/packet-pdc.c
index 76aa99f63a..eba89fab7a 100644
--- a/epan/dissectors/packet-pdc.c
+++ b/epan/dissectors/packet-pdc.c
@@ -596,7 +596,7 @@ void proto_reg_handoff_pdc(void)
if (! initialized)
{
- asterix_handle = find_dissector("asterix");
+ asterix_handle = find_dissector_add_dependency("asterix", proto_pdc);
pdc_tcp_handle = create_dissector_handle(tcp_dissect_pdc, proto_pdc);
dissector_add_for_decode_as("tcp.port", pdc_tcp_handle);
initialized = TRUE;
diff --git a/epan/dissectors/packet-pdcp-lte.c b/epan/dissectors/packet-pdcp-lte.c
index 854cd36a3b..e9dc58d885 100644
--- a/epan/dissectors/packet-pdcp-lte.c
+++ b/epan/dissectors/packet-pdcp-lte.c
@@ -2781,9 +2781,9 @@ void proto_reg_handoff_pdcp_lte(void)
/* Add as a heuristic UDP dissector */
heur_dissector_add("udp", dissect_pdcp_lte_heur, "PDCP-LTE over UDP", "pdcp_lte_udp", proto_pdcp_lte, HEURISTIC_DISABLE);
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
- rohc_handle = find_dissector("rohc");
+ ip_handle = find_dissector_add_dependency("ip", proto_pdcp_lte);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_pdcp_lte);
+ rohc_handle = find_dissector_add_dependency("rohc", proto_pdcp_lte);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-peekremote.c b/epan/dissectors/packet-peekremote.c
index 36e988125d..d497582b62 100644
--- a/epan/dissectors/packet-peekremote.c
+++ b/epan/dissectors/packet-peekremote.c
@@ -686,7 +686,7 @@ proto_register_peekremote(void)
void
proto_reg_handoff_peekremote(void)
{
- wlan_radio_handle = find_dissector("wlan_radio");
+ wlan_radio_handle = find_dissector_add_dependency("wlan_radio", proto_peekremote);
dissector_add_uint("udp.port", 5000, peekremote_handle);
diff --git a/epan/dissectors/packet-pflog.c b/epan/dissectors/packet-pflog.c
index f26a44b15d..21bc61b941 100644
--- a/epan/dissectors/packet-pflog.c
+++ b/epan/dissectors/packet-pflog.c
@@ -414,8 +414,8 @@ proto_reg_handoff_pflog(void)
{
dissector_handle_t pflog_handle;
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_pflog);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_pflog);
data_handle = find_dissector("data");
pflog_handle = create_dissector_handle(dissect_pflog, proto_pflog);
diff --git a/epan/dissectors/packet-pim.c b/epan/dissectors/packet-pim.c
index 920b3baefb..9c9a7d2f23 100644
--- a/epan/dissectors/packet-pim.c
+++ b/epan/dissectors/packet-pim.c
@@ -1871,8 +1871,8 @@ proto_reg_handoff_pim(void)
/*
* Get handles for the IPv4 and IPv6 dissectors.
*/
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_pim);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_pim);
}
/*
diff --git a/epan/dissectors/packet-pktap.c b/epan/dissectors/packet-pktap.c
index dcc82abe1f..a886f8e9d1 100644
--- a/epan/dissectors/packet-pktap.c
+++ b/epan/dissectors/packet-pktap.c
@@ -276,7 +276,7 @@ proto_reg_handoff_pktap(void)
{
dissector_add_uint("wtap_encap", WTAP_ENCAP_PKTAP, pktap_handle);
- pcap_pktdata_handle = find_dissector("pcap_pktdata");
+ pcap_pktdata_handle = find_dissector_add_dependency("pcap_pktdata", proto_pktap);
/* XXX - WTAP_ENCAP_USER2 to handle Mavericks' botch wherein it
uses DLT_USER2 for PKTAP; if you are using DLT_USER2 for your
diff --git a/epan/dissectors/packet-pmproxy.c b/epan/dissectors/packet-pmproxy.c
index 3d956714e6..615ffa2256 100644
--- a/epan/dissectors/packet-pmproxy.c
+++ b/epan/dissectors/packet-pmproxy.c
@@ -256,7 +256,7 @@ void proto_register_pmproxy(void) {
void proto_reg_handoff_pmproxy(void) {
pmproxy_handle = create_dissector_handle(dissect_pmproxy, proto_pmproxy);
- pcp_handle = find_dissector("pcp");
+ pcp_handle = find_dissector_add_dependency("pcp", proto_pmproxy);
dissector_add_uint("tcp.port", PMPROXY_PORT, pmproxy_handle);
diff --git a/epan/dissectors/packet-pop.c b/epan/dissectors/packet-pop.c
index adce23484e..eb457be21f 100644
--- a/epan/dissectors/packet-pop.c
+++ b/epan/dissectors/packet-pop.c
@@ -475,10 +475,10 @@ proto_reg_handoff_pop(void)
data_handle = find_dissector("data");
/* find the IMF dissector */
- imf_handle = find_dissector("imf");
+ imf_handle = find_dissector_add_dependency("imf", proto_pop);
/* find the SSL dissector */
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_pop);
}
/*
diff --git a/epan/dissectors/packet-ppcap.c b/epan/dissectors/packet-ppcap.c
index ef0d8b1d73..d736449089 100644
--- a/epan/dissectors/packet-ppcap.c
+++ b/epan/dissectors/packet-ppcap.c
@@ -688,16 +688,16 @@ module_t *ppcap_module;
void proto_reg_handoff_ppcap(void)
{
- ppcap_handle = find_dissector("ppcap");
- mtp3_handle = find_dissector("mtp3"); /* calling the protocol MTP3 */
- tcap_handle = find_dissector("tcap"); /* calling the protocol TCAP */
- bssap_handle = find_dissector("bssap"); /* calling the protocol BSSAP */
- ranap_handle = find_dissector("ranap"); /* calling the protocol RANAP */
- h248_handle = find_dissector("h248"); /* calling the protocol H248 */
- sip_handle = find_dissector("sip"); /* calling the protocol SIP */
- sccp_handle = find_dissector("sccp"); /* calling the protocol SCCP */
- sgsap_handle = find_dissector("sgsap"); /* calling the protocol SGSAP */
- gtpv2_handle = find_dissector("gtpv2"); /* calling the protocol GTPv2 */
+ ppcap_handle = find_dissector_add_dependency("ppcap", proto_ppcap);
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_ppcap); /* calling the protocol MTP3 */
+ tcap_handle = find_dissector_add_dependency("tcap", proto_ppcap); /* calling the protocol TCAP */
+ bssap_handle = find_dissector_add_dependency("bssap", proto_ppcap); /* calling the protocol BSSAP */
+ ranap_handle = find_dissector_add_dependency("ranap", proto_ppcap); /* calling the protocol RANAP */
+ h248_handle = find_dissector_add_dependency("h248", proto_ppcap); /* calling the protocol H248 */
+ sip_handle = find_dissector_add_dependency("sip", proto_ppcap); /* calling the protocol SIP */
+ sccp_handle = find_dissector_add_dependency("sccp", proto_ppcap); /* calling the protocol SCCP */
+ sgsap_handle = find_dissector_add_dependency("sgsap", proto_ppcap); /* calling the protocol SGSAP */
+ gtpv2_handle = find_dissector_add_dependency("gtpv2", proto_ppcap); /* calling the protocol GTPv2 */
data_handle = find_dissector("data"); /* calling the protocol DATA */
sccp_ssn_dissector_table = find_dissector_table("sccp.ssn");
diff --git a/epan/dissectors/packet-ppi.c b/epan/dissectors/packet-ppi.c
index 8dc8d69f76..9dba8bc99b 100644
--- a/epan/dissectors/packet-ppi.c
+++ b/epan/dissectors/packet-ppi.c
@@ -1499,13 +1499,13 @@ void
proto_reg_handoff_ppi(void)
{
data_handle = find_dissector("data");
- ieee80211_radio_handle = find_dissector("wlan_radio");
- pcap_pktdata_handle = find_dissector("pcap_pktdata");
- ppi_gps_handle = find_dissector("ppi_gps");
- ppi_vector_handle = find_dissector("ppi_vector");
- ppi_sensor_handle = find_dissector("ppi_sensor");
- ppi_antenna_handle = find_dissector("ppi_antenna");
- ppi_fnet_handle = find_dissector("ppi_fnet");
+ ieee80211_radio_handle = find_dissector_add_dependency("wlan_radio", proto_ppi);
+ pcap_pktdata_handle = find_dissector_add_dependency("pcap_pktdata", proto_ppi);
+ ppi_gps_handle = find_dissector_add_dependency("ppi_gps", proto_ppi);
+ ppi_vector_handle = find_dissector_add_dependency("ppi_vector", proto_ppi);
+ ppi_sensor_handle = find_dissector_add_dependency("ppi_sensor", proto_ppi);
+ ppi_antenna_handle = find_dissector_add_dependency("ppi_antenna", proto_ppi);
+ ppi_fnet_handle = find_dissector_add_dependency("ppi_fnet", proto_ppi);
dissector_add_uint("wtap_encap", WTAP_ENCAP_PPI, ppi_handle);
register_capture_dissector("wtap_encap", WTAP_ENCAP_PPI, capture_ppi, proto_ppi);
diff --git a/epan/dissectors/packet-ppp.c b/epan/dissectors/packet-ppp.c
index 8940e38bbc..6c796dbdf3 100644
--- a/epan/dissectors/packet-ppp.c
+++ b/epan/dissectors/packet-ppp.c
@@ -5964,7 +5964,7 @@ proto_reg_handoff_ppp(void)
/*
* Get a handle for the CHDLC dissector.
*/
- chdlc_handle = find_dissector("chdlc");
+ chdlc_handle = find_dissector_add_dependency("chdlc", proto_ppp);
data_handle = find_dissector("data");
ppp_handle = find_dissector("ppp");
@@ -6603,8 +6603,8 @@ proto_reg_handoff_bcp_bpdu(void)
{
dissector_handle_t bcp_bpdu_handle;
- eth_withfcs_handle = find_dissector("eth_withfcs");
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withfcs_handle = find_dissector_add_dependency("eth_withfcs", proto_bcp_bpdu);
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_bcp_bpdu);
bcp_bpdu_handle = create_dissector_handle(dissect_bcp_bpdu, proto_bcp_bpdu);
diff --git a/epan/dissectors/packet-pppoe.c b/epan/dissectors/packet-pppoe.c
index ac3dbe538c..f13391a2ad 100644
--- a/epan/dissectors/packet-pppoe.c
+++ b/epan/dissectors/packet-pppoe.c
@@ -1296,7 +1296,7 @@ void proto_reg_handoff_pppoes(void)
dissector_add_uint("wtap_encap", WTAP_ENCAP_PPP_ETHER, pppoes_handle);
/* Get a handle for the PPP dissector */
- ppp_handle = find_dissector("ppp");
+ ppp_handle = find_dissector_add_dependency("ppp", proto_pppoes);
}
/*
diff --git a/epan/dissectors/packet-pw-cesopsn.c b/epan/dissectors/packet-pw-cesopsn.c
index 2f5737843a..8d347d25e2 100644
--- a/epan/dissectors/packet-pw-cesopsn.c
+++ b/epan/dissectors/packet-pw-cesopsn.c
@@ -453,7 +453,7 @@ void proto_reg_handoff_pw_cesopsn(void)
dissector_handle_t pw_cesopsn_mpls_handle;
data_handle = find_dissector("data");
- pw_padding_handle = find_dissector("pw_padding");
+ pw_padding_handle = find_dissector_add_dependency("pw_padding", proto);
/* For Decode As */
pw_cesopsn_mpls_handle = create_dissector_handle( dissect_pw_cesopsn_mpls, proto );
diff --git a/epan/dissectors/packet-pw-eth.c b/epan/dissectors/packet-pw-eth.c
index 247edcc1b9..04057d3cbb 100644
--- a/epan/dissectors/packet-pw-eth.c
+++ b/epan/dissectors/packet-pw-eth.c
@@ -201,7 +201,7 @@ proto_reg_handoff_pw_eth(void)
{
dissector_handle_t pw_eth_handle_heuristic;
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_pw_eth_cw);
pw_eth_handle_cw = create_dissector_handle( dissect_pw_eth_cw, proto_pw_eth_cw );
dissector_add_for_decode_as("mpls.label", pw_eth_handle_cw);
diff --git a/epan/dissectors/packet-pw-fr.c b/epan/dissectors/packet-pw-fr.c
index db2089c3ca..b7134f9878 100644
--- a/epan/dissectors/packet-pw-fr.c
+++ b/epan/dissectors/packet-pw-fr.c
@@ -316,7 +316,7 @@ proto_reg_handoff_pw_fr(void)
pw_fr_mpls_handle = create_dissector_handle( dissect_pw_fr, proto_encaps );
dissector_add_for_decode_as("mpls.label", pw_fr_mpls_handle);
- fr_stripped_address_handle = find_dissector("fr_stripped_address");
+ fr_stripped_address_handle = find_dissector_add_dependency("fr_stripped_address", proto_encaps);
}
/*
diff --git a/epan/dissectors/packet-pw-hdlc.c b/epan/dissectors/packet-pw-hdlc.c
index e0c1776641..d323b7c328 100644
--- a/epan/dissectors/packet-pw-hdlc.c
+++ b/epan/dissectors/packet-pw-hdlc.c
@@ -230,8 +230,8 @@ void proto_reg_handoff_pw_hdlc(void)
pw_ppp_handle = create_dissector_handle( dissect_pw_hdlc_nocw_hdlc_ppp, proto_pw_hdlc_nocw_hdlc_ppp );
dissector_add_for_decode_as( "mpls.label", pw_ppp_handle );
- ppp_handle = find_dissector( "ppp" );
- fr_handle = find_dissector( "fr" );
+ ppp_handle = find_dissector_add_dependency( "ppp", proto_pw_hdlc_nocw_hdlc_ppp );
+ fr_handle = find_dissector_add_dependency( "fr", proto_pw_hdlc_nocw_fr );
}
/*
diff --git a/epan/dissectors/packet-pw-satop.c b/epan/dissectors/packet-pw-satop.c
index b35533f673..db676a35c5 100644
--- a/epan/dissectors/packet-pw-satop.c
+++ b/epan/dissectors/packet-pw-satop.c
@@ -469,7 +469,7 @@ void proto_reg_handoff_pw_satop(void)
dissector_handle_t pw_satop_mpls_handle;
data_handle = find_dissector("data");
- pw_padding_handle = find_dissector("pw_padding");
+ pw_padding_handle = find_dissector_add_dependency("pw_padding", proto);
/* For Decode As */
pw_satop_mpls_handle = create_dissector_handle( dissect_pw_satop_mpls, proto );
diff --git a/epan/dissectors/packet-q931.c b/epan/dissectors/packet-q931.c
index fbe317b3f4..412b9608b3 100644
--- a/epan/dissectors/packet-q931.c
+++ b/epan/dissectors/packet-q931.c
@@ -4010,7 +4010,7 @@ proto_reg_handoff_q931(void)
* dissect putatively-H.255 Call Signaling stuff as User
* Information.
*/
- h225_handle = find_dissector("h225");
+ h225_handle = find_dissector_add_dependency("h225", proto_q931);
data_handle = find_dissector("data");
diff --git a/epan/dissectors/packet-q932.c b/epan/dissectors/packet-q932.c
index 92a748e031..054864a439 100644
--- a/epan/dissectors/packet-q932.c
+++ b/epan/dissectors/packet-q932.c
@@ -1128,7 +1128,7 @@ void proto_reg_handoff_q932(void) {
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_FACILITY, q932_ie_handle);
/* Notification indicator */
dissector_add_uint("q931.ie", (0x00 << 8) | Q932_IE_NOTIFICATION_INDICATOR, q932_ie_handle);
- q932_ros_handle = find_dissector("q932.ros");
+ q932_ros_handle = find_dissector_add_dependency("q932.ros", proto_q932);
}
if(g_facility_encoding == FACILITY_QSIG){
diff --git a/epan/dissectors/packet-qllc.c b/epan/dissectors/packet-qllc.c
index 3c6272f5e7..2554ac9ffc 100644
--- a/epan/dissectors/packet-qllc.c
+++ b/epan/dissectors/packet-qllc.c
@@ -173,7 +173,7 @@ proto_register_qllc(void)
void
proto_reg_handoff_qllc(void)
{
- sna_handle = find_dissector("sna");
+ sna_handle = find_dissector_add_dependency("sna", proto_qllc);
}
/*
diff --git a/epan/dissectors/packet-qsig.c b/epan/dissectors/packet-qsig.c
index c0644b5097..33b2e884e1 100644
--- a/epan/dissectors/packet-qsig.c
+++ b/epan/dissectors/packet-qsig.c
@@ -16397,8 +16397,8 @@ void proto_reg_handoff_qsig(void) {
dissector_handle_t qsig_err_handle;
dissector_handle_t qsig_ie_handle;
- q931_handle = find_dissector("q931");
- q931_ie_handle = find_dissector("q931.ie");
+ q931_handle = find_dissector_add_dependency("q931", proto_qsig);
+ q931_ie_handle = find_dissector_add_dependency("q931.ie", proto_qsig);
qsig_arg_handle = create_dissector_handle(dissect_qsig_arg, proto_qsig);
qsig_res_handle = create_dissector_handle(dissect_qsig_res, proto_qsig);
diff --git a/epan/dissectors/packet-radius.c b/epan/dissectors/packet-radius.c
index c037943e08..97ae20e8d7 100644
--- a/epan/dissectors/packet-radius.c
+++ b/epan/dissectors/packet-radius.c
@@ -2676,7 +2676,7 @@ proto_reg_handoff_radius(void)
if (!initialized) {
radius_handle = find_dissector("radius");
- eap_handle = find_dissector("eap");
+ eap_handle = find_dissector_add_dependency("eap", proto_radius);
initialized = TRUE;
} else {
diff --git a/epan/dissectors/packet-ranap.c b/epan/dissectors/packet-ranap.c
index f548699a67..6ffd10cf69 100644
--- a/epan/dissectors/packet-ranap.c
+++ b/epan/dissectors/packet-ranap.c
@@ -16528,8 +16528,8 @@ proto_reg_handoff_ranap(void)
if (!initialized) {
ranap_handle = find_dissector("ranap");
- rrc_s_to_trnc_handle = find_dissector("rrc.s_to_trnc_cont");
- rrc_t_to_srnc_handle = find_dissector("rrc.t_to_srnc_cont");
+ rrc_s_to_trnc_handle = find_dissector_add_dependency("rrc.s_to_trnc_cont", proto_ranap);
+ rrc_t_to_srnc_handle = find_dissector_add_dependency("rrc.t_to_srnc_cont", proto_ranap);
rrc_ho_to_utran_cmd = find_dissector("rrc.irat.ho_to_utran_cmd");
initialized = TRUE;
diff --git a/epan/dissectors/packet-raw.c b/epan/dissectors/packet-raw.c
index 9a3d20a1d7..60bb3a035b 100644
--- a/epan/dissectors/packet-raw.c
+++ b/epan/dissectors/packet-raw.c
@@ -184,10 +184,10 @@ proto_reg_handoff_raw(void)
* Get handles for the IP, IPv6, undissected-data, and
* PPP-in-HDLC-like-framing dissectors.
*/
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_raw);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_raw);
data_handle = find_dissector("data");
- ppp_hdlc_handle = find_dissector("ppp_hdlc");
+ ppp_hdlc_handle = find_dissector_add_dependency("ppp_hdlc", proto_raw);
dissector_add_uint("wtap_encap", WTAP_ENCAP_RAW_IP, raw_handle);
register_capture_dissector("wtap_encap", WTAP_ENCAP_RAW_IP, capture_raw, proto_raw);
}
diff --git a/epan/dissectors/packet-redback.c b/epan/dissectors/packet-redback.c
index 7c8736c02d..4f5b5aa5b7 100644
--- a/epan/dissectors/packet-redback.c
+++ b/epan/dissectors/packet-redback.c
@@ -236,14 +236,14 @@ proto_reg_handoff_redback(void)
osinl_incl_subdissector_table = find_dissector_table("osinl.incl");
osinl_excl_subdissector_table = find_dissector_table("osinl.excl");
- ipv4_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ipv4_handle = find_dissector_add_dependency("ip", hfi_redback->id);
+ ipv6_handle = find_dissector_add_dependency("ipv6", hfi_redback->id);
data_handle = find_dissector("data");
- ethnofcs_handle = find_dissector("eth_withoutfcs");
- clnp_handle = find_dissector("clnp");
- arp_handle = find_dissector("arp");
- ppp_handle = find_dissector("ppp");
- ppphdlc_handle = find_dissector("ppp_hdlc");
+ ethnofcs_handle = find_dissector_add_dependency("eth_withoutfcs", hfi_redback->id);
+ clnp_handle = find_dissector_add_dependency("clnp", hfi_redback->id);
+ arp_handle = find_dissector_add_dependency("arp", hfi_redback->id);
+ ppp_handle = find_dissector_add_dependency("ppp", hfi_redback->id);
+ ppphdlc_handle = find_dissector_add_dependency("ppp_hdlc", hfi_redback->id);
dissector_add_uint("wtap_encap", WTAP_ENCAP_REDBACK, redback_handle);
}
diff --git a/epan/dissectors/packet-redbackli.c b/epan/dissectors/packet-redbackli.c
index 38766db9a1..ac64c51f9f 100644
--- a/epan/dissectors/packet-redbackli.c
+++ b/epan/dissectors/packet-redbackli.c
@@ -288,7 +288,7 @@ void proto_register_redbackli(void) {
void proto_reg_handoff_redbackli(void) {
dissector_handle_t redbackli_handle;
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_redbackli);
redbackli_handle = find_dissector("redbackli");
dissector_add_for_decode_as("udp.port", redbackli_handle);
diff --git a/epan/dissectors/packet-reload-framing.c b/epan/dissectors/packet-reload-framing.c
index ca8d7a129c..f8c3a19a0f 100644
--- a/epan/dissectors/packet-reload-framing.c
+++ b/epan/dissectors/packet-reload-framing.c
@@ -594,7 +594,7 @@ proto_reg_handoff_reload_framing(void)
reload_framing_tcp_handle = create_dissector_handle(dissect_reload_framing_tcp, proto_reload_framing);
reload_framing_udp_handle = create_dissector_handle(dissect_reload_framing, proto_reload_framing);
- reload_handle = find_dissector("reload");
+ reload_handle = find_dissector_add_dependency("reload", proto_reload_framing);
dissector_add_uint("tcp.port", TCP_PORT_RELOAD, reload_framing_tcp_handle);
dissector_add_uint("udp.port", UDP_PORT_RELOAD, reload_framing_udp_handle);
diff --git a/epan/dissectors/packet-reload.c b/epan/dissectors/packet-reload.c
index fba66de830..3a6c2c7460 100644
--- a/epan/dissectors/packet-reload.c
+++ b/epan/dissectors/packet-reload.c
@@ -5939,7 +5939,7 @@ proto_reg_handoff_reload(void)
{
data_handle = find_dissector("data");
- xml_handle = find_dissector("xml");
+ xml_handle = find_dissector_add_dependency("xml", proto_reload);
heur_dissector_add("udp", dissect_reload_heur, "RELOAD over UDP", "reload_udp", proto_reload, HEURISTIC_ENABLE);
heur_dissector_add("tcp", dissect_reload_heur, "RELOAD over TCP", "reload_tcp", proto_reload, HEURISTIC_ENABLE);
diff --git a/epan/dissectors/packet-rfc2190.c b/epan/dissectors/packet-rfc2190.c
index e6a87bff5c..dc43395454 100644
--- a/epan/dissectors/packet-rfc2190.c
+++ b/epan/dissectors/packet-rfc2190.c
@@ -250,7 +250,7 @@ proto_reg_handoff_rfc2190(void)
dissector_add_uint("rtp.pt", PT_H263, rfc2190_handle);
dissector_add_uint("iax2.codec", AST_FORMAT_H263, rfc2190_handle);
- h263_handle = find_dissector("h263data");
+ h263_handle = find_dissector_add_dependency("h263data", proto_rfc2190);
}
diff --git a/epan/dissectors/packet-rfid-pn532-hci.c b/epan/dissectors/packet-rfid-pn532-hci.c
index 89f44ff442..d85b3ed283 100644
--- a/epan/dissectors/packet-rfid-pn532-hci.c
+++ b/epan/dissectors/packet-rfid-pn532-hci.c
@@ -280,7 +280,7 @@ proto_register_pn532_hci(void)
void
proto_reg_handoff_pn532_hci(void)
{
- pn532_handle = find_dissector("pn532");
+ pn532_handle = find_dissector_add_dependency("pn532", proto_pn532_hci);
dissector_add_uint("usb.product", (0x04e6 << 16) | 0x5591, pn532_hci_handle);
diff --git a/epan/dissectors/packet-rfid-pn532.c b/epan/dissectors/packet-rfid-pn532.c
index 0b9c004c1c..f200c1a9eb 100644
--- a/epan/dissectors/packet-rfid-pn532.c
+++ b/epan/dissectors/packet-rfid-pn532.c
@@ -2334,9 +2334,9 @@ void proto_register_pn532(void)
void proto_reg_handoff_pn532(void)
{
sub_handles[SUB_DATA] = find_dissector("data");
- sub_handles[SUB_FELICA] = find_dissector("felica");
- sub_handles[SUB_MIFARE] = find_dissector("mifare");
- sub_handles[SUB_ISO7816] = find_dissector("iso7816");
+ sub_handles[SUB_FELICA] = find_dissector_add_dependency("felica", proto_pn532);
+ sub_handles[SUB_MIFARE] = find_dissector_add_dependency("mifare", proto_pn532);
+ sub_handles[SUB_ISO7816] = find_dissector_add_dependency("iso7816", proto_pn532);
}
/*
diff --git a/epan/dissectors/packet-rlc-lte.c b/epan/dissectors/packet-rlc-lte.c
index 54d88ffa61..aab7cfe832 100644
--- a/epan/dissectors/packet-rlc-lte.c
+++ b/epan/dissectors/packet-rlc-lte.c
@@ -3705,8 +3705,8 @@ void proto_reg_handoff_rlc_lte(void)
/* Add as a heuristic UDP dissector */
heur_dissector_add("udp", dissect_rlc_lte_heur, "RLC-LTE over UDP", "rlc_lte_udp", proto_rlc_lte, HEURISTIC_DISABLE);
- pdcp_lte_handle = find_dissector("pdcp-lte");
- ip_handle = find_dissector("ip");
+ pdcp_lte_handle = find_dissector_add_dependency("pdcp-lte", proto_rlc_lte);
+ ip_handle = find_dissector_add_dependency("ip", proto_rlc_lte);
}
/*
diff --git a/epan/dissectors/packet-rlc.c b/epan/dissectors/packet-rlc.c
index 70e178ef32..281e5a3386 100644
--- a/epan/dissectors/packet-rlc.c
+++ b/epan/dissectors/packet-rlc.c
@@ -3005,9 +3005,9 @@ proto_register_rlc(void)
void
proto_reg_handoff_rlc(void)
{
- rrc_handle = find_dissector("rrc");
- ip_handle = find_dissector("ip");
- bmc_handle = find_dissector("bmc");
+ rrc_handle = find_dissector_add_dependency("rrc", proto_rlc);
+ ip_handle = find_dissector_add_dependency("ip", proto_rlc);
+ bmc_handle = find_dissector_add_dependency("bmc", proto_rlc);
/* Add as a heuristic UDP dissector */
heur_dissector_add("udp", dissect_rlc_heur, "RLC over UDP", "rlc_udp", proto_rlc, HEURISTIC_DISABLE);
}
diff --git a/epan/dissectors/packet-rmt-alc.c b/epan/dissectors/packet-rmt-alc.c
index 25f8a83069..68de96c4d0 100644
--- a/epan/dissectors/packet-rmt-alc.c
+++ b/epan/dissectors/packet-rmt-alc.c
@@ -237,9 +237,9 @@ void proto_reg_handoff_alc(void)
preferences_initialized = TRUE;
handle = create_dissector_handle(dissect_alc, proto_rmt_alc);
dissector_add_for_decode_as("udp.port", handle);
- xml_handle = find_dissector("xml");
- rmt_lct_handle = find_dissector("rmt-lct");
- rmt_fec_handle = find_dissector("rmt-fec");
+ xml_handle = find_dissector_add_dependency("xml", proto_rmt_alc);
+ rmt_lct_handle = find_dissector_add_dependency("rmt-lct", proto_rmt_alc);
+ rmt_fec_handle = find_dissector_add_dependency("rmt-fec", proto_rmt_alc);
}
/* Register UDP port for dissection */
diff --git a/epan/dissectors/packet-rmt-norm.c b/epan/dissectors/packet-rmt-norm.c
index 56606a70e1..ffdb6e877c 100644
--- a/epan/dissectors/packet-rmt-norm.c
+++ b/epan/dissectors/packet-rmt-norm.c
@@ -980,7 +980,7 @@ void proto_reg_handoff_norm(void)
dissector_add_for_decode_as("udp.port", handle);
heur_dissector_add("udp", dissect_norm_heur, "NORM over UDP", "rmt_norm_udp", proto_rmt_norm, HEURISTIC_DISABLE);
- rmt_fec_handle = find_dissector("rmt-fec");
+ rmt_fec_handle = find_dissector_add_dependency("rmt-fec", proto_rmt_norm);
}
/*
diff --git a/epan/dissectors/packet-rnsap.c b/epan/dissectors/packet-rnsap.c
index af8cbeabf0..ade1f6a737 100644
--- a/epan/dissectors/packet-rnsap.c
+++ b/epan/dissectors/packet-rnsap.c
@@ -55368,7 +55368,7 @@ proto_reg_handoff_rnsap(void)
dissector_handle_t rnsap_handle;
rnsap_handle = find_dissector("rnsap");
- rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
+ rrc_dl_dcch_handle = find_dissector_add_dependency("rrc.dl.dcch", proto_rnsap);
dissector_add_uint("sccp.ssn", SCCP_SSN_RNSAP, rnsap_handle);
/* Add heuristic dissector */
diff --git a/epan/dissectors/packet-rohc.c b/epan/dissectors/packet-rohc.c
index 4663fa0c0b..f67a9df6af 100644
--- a/epan/dissectors/packet-rohc.c
+++ b/epan/dissectors/packet-rohc.c
@@ -2997,8 +2997,8 @@ proto_reg_handoff_rohc(void)
{
dissector_add_uint("ethertype", ETHERTYPE_ROHC, rohc_handle);
- ip_handle = find_dissector("ip");
- ipv6_handle = find_dissector("ipv6");
+ ip_handle = find_dissector_add_dependency("ip", proto_rohc);
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_rohc);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-roofnet.c b/epan/dissectors/packet-roofnet.c
index 2104bcef6d..236f496075 100644
--- a/epan/dissectors/packet-roofnet.c
+++ b/epan/dissectors/packet-roofnet.c
@@ -357,7 +357,7 @@ void proto_reg_handoff_roofnet(void)
/* Until now there is no other option than having an IPv4 payload (maybe
* extended one day to IPv6 or other?) */
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_roofnet);
roofnet_handle = create_dissector_handle(dissect_roofnet, proto_roofnet);
/* I did not put the type numbers in the ethertypes.h as they only are
* experimental and not official */
diff --git a/epan/dissectors/packet-rpc.c b/epan/dissectors/packet-rpc.c
index 1225d11ab7..b7c4b2193a 100644
--- a/epan/dissectors/packet-rpc.c
+++ b/epan/dissectors/packet-rpc.c
@@ -4439,8 +4439,8 @@ proto_reg_handoff_rpc(void)
heur_dissector_add("tcp", dissect_rpc_tcp_heur, "RPC over TCP", "rpc_tcp", proto_rpc, HEURISTIC_ENABLE);
heur_dissector_add("udp", dissect_rpc_heur, "RPC over UDP", "rpc_udp", proto_rpc, HEURISTIC_ENABLE);
- gssapi_handle = find_dissector("gssapi");
- spnego_krb5_wrap_handle = find_dissector("spnego-krb5-wrap");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_rpc);
+ spnego_krb5_wrap_handle = find_dissector_add_dependency("spnego-krb5-wrap", proto_rpc);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-rpcap.c b/epan/dissectors/packet-rpcap.c
index b1b598e481..26ff59a0e6 100644
--- a/epan/dissectors/packet-rpcap.c
+++ b/epan/dissectors/packet-rpcap.c
@@ -1483,7 +1483,7 @@ proto_reg_handoff_rpcap (void)
static gboolean rpcap_prefs_initialized = FALSE;
if (!rpcap_prefs_initialized) {
- pcap_pktdata_handle = find_dissector ("pcap_pktdata");
+ pcap_pktdata_handle = find_dissector_add_dependency("pcap_pktdata", proto_rpcap);
data_handle = find_dissector ("data");
rpcap_prefs_initialized = TRUE;
diff --git a/epan/dissectors/packet-rpcrdma.c b/epan/dissectors/packet-rpcrdma.c
index 51e7b9e891..ca716972fc 100644
--- a/epan/dissectors/packet-rpcrdma.c
+++ b/epan/dissectors/packet-rpcrdma.c
@@ -593,8 +593,8 @@ proto_reg_handoff_rpcordma(void)
manual_addr_data[1] = wmem_alloc(wmem_epan_scope(), GID_SIZE);
data_handler = find_dissector("data");
- rpc_handler = find_dissector("rpc");
- ib_handler = find_dissector("infiniband");
+ rpc_handler = find_dissector_add_dependency("rpc", proto_rpcordma);
+ ib_handler = find_dissector_add_dependency("infiniband", proto_rpcordma);
proto_ib = dissector_handle_get_protocol_index(ib_handler);
initialized = TRUE;
diff --git a/epan/dissectors/packet-rrc.c b/epan/dissectors/packet-rrc.c
index 661bcdc5b1..8195c7d4c4 100644
--- a/epan/dissectors/packet-rrc.c
+++ b/epan/dissectors/packet-rrc.c
@@ -210088,7 +210088,7 @@ void proto_register_rrc(void) {
void
proto_reg_handoff_rrc(void)
{
- gsm_a_dtap_handle = find_dissector("gsm_a_dtap");
+ gsm_a_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_rrc);
rrc_pcch_handle = find_dissector("rrc.pcch");
rrc_ul_ccch_handle = find_dissector("rrc.ul.ccch");
rrc_dl_ccch_handle = find_dissector("rrc.dl.ccch");
@@ -210096,10 +210096,10 @@ proto_reg_handoff_rrc(void)
rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
rrc_ue_radio_access_cap_info_handle = find_dissector("rrc.ue_radio_access_cap_info");
rrc_dl_dcch_handle = find_dissector("rrc.dl.dcch");
- lte_rrc_ue_eutra_cap_handle = find_dissector("lte-rrc.ue_eutra_cap");
- lte_rrc_dl_dcch_handle = find_dissector("lte-rrc.dl.dcch");
+ lte_rrc_ue_eutra_cap_handle = find_dissector_add_dependency("lte-rrc.ue_eutra_cap", proto_rrc);
+ lte_rrc_dl_dcch_handle = find_dissector_add_dependency("lte-rrc.dl.dcch", proto_rrc);
rrc_bcch_fach_handle = find_dissector("rrc.bcch.fach");
- gsm_rlcmac_dl_handle = find_dissector("gsm_rlcmac_dl");
+ gsm_rlcmac_dl_handle = find_dissector_add_dependency("gsm_rlcmac_dl", proto_rrc);
}
diff --git a/epan/dissectors/packet-rsl.c b/epan/dissectors/packet-rsl.c
index c397eb2250..593ea63016 100644
--- a/epan/dissectors/packet-rsl.c
+++ b/epan/dissectors/packet-rsl.c
@@ -4465,11 +4465,11 @@ proto_reg_handoff_rsl(void)
{
dissector_add_uint("lapd.gsm.sapi", LAPD_GSM_SAPI_RA_SIG_PROC, rsl_handle);
- gsm_cbch_handle = find_dissector("gsm_cbch");
- gsm_cbs_handle = find_dissector("gsm_cbs");
- gsm_a_ccch_handle = find_dissector("gsm_a_ccch");
- gsm_a_dtap_handle = find_dissector("gsm_a_dtap");
- gsm_a_sacch_handle = find_dissector("gsm_a_sacch");
+ gsm_cbch_handle = find_dissector_add_dependency("gsm_cbch", proto_rsl);
+ gsm_cbs_handle = find_dissector_add_dependency("gsm_cbs", proto_rsl);
+ gsm_a_ccch_handle = find_dissector_add_dependency("gsm_a_ccch", proto_rsl);
+ gsm_a_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_rsl);
+ gsm_a_sacch_handle = find_dissector_add_dependency("gsm_a_sacch", proto_rsl);
}
/*
diff --git a/epan/dissectors/packet-rtp.c b/epan/dissectors/packet-rtp.c
index adaeaff29b..6780bbfbbb 100644
--- a/epan/dissectors/packet-rtp.c
+++ b/epan/dissectors/packet-rtp.c
@@ -3745,23 +3745,23 @@ proto_reg_handoff_rtp(void)
dissector_add_for_decode_as("flip.payload", rtp_handle );
- rtcp_handle = find_dissector("rtcp");
+ rtcp_handle = find_dissector_add_dependency("rtcp", proto_rtp);
data_handle = find_dissector("data");
- stun_handle = find_dissector("stun-udp");
- classicstun_handle = find_dissector("classicstun");
- classicstun_heur_handle = find_dissector("classicstun-heur");
- stun_heur_handle = find_dissector("stun-heur");
- t38_handle = find_dissector("t38_udp");
- zrtp_handle = find_dissector("zrtp");
-
- sprt_handle = find_dissector("sprt");
+ stun_handle = find_dissector_add_dependency("stun-udp", proto_rtp);
+ classicstun_handle = find_dissector_add_dependency("classicstun", proto_rtp);
+ classicstun_heur_handle = find_dissector_add_dependency("classicstun-heur", proto_rtp);
+ stun_heur_handle = find_dissector_add_dependency("stun-heur", proto_rtp);
+ t38_handle = find_dissector_add_dependency("t38_udp", proto_rtp);
+ zrtp_handle = find_dissector_add_dependency("zrtp", proto_rtp);
+
+ sprt_handle = find_dissector_add_dependency("sprt", proto_rtp);
v150fw_handle = find_dissector("v150fw");
- bta2dp_content_protection_header_scms_t = find_dissector("bta2dp_content_protection_header_scms_t");
- btvdp_content_protection_header_scms_t = find_dissector("btvdp_content_protection_header_scms_t");
- bta2dp_handle = find_dissector("bta2dp");
- btvdp_handle = find_dissector("btvdp");
- sbc_handle = find_dissector("sbc");
+ bta2dp_content_protection_header_scms_t = find_dissector_add_dependency("bta2dp_content_protection_header_scms_t", proto_rtp);
+ btvdp_content_protection_header_scms_t = find_dissector_add_dependency("btvdp_content_protection_header_scms_t", proto_rtp);
+ bta2dp_handle = find_dissector_add_dependency("bta2dp", proto_rtp);
+ btvdp_handle = find_dissector_add_dependency("btvdp", proto_rtp);
+ sbc_handle = find_dissector_add_dependency("sbc", proto_rtp);
dissector_add_string("rtp_dyn_payload_type", "v150fw", v150fw_handle);
diff --git a/epan/dissectors/packet-rtpproxy.c b/epan/dissectors/packet-rtpproxy.c
index e782a78129..e75f713acb 100644
--- a/epan/dissectors/packet-rtpproxy.c
+++ b/epan/dissectors/packet-rtpproxy.c
@@ -1511,10 +1511,10 @@ proto_reg_handoff_rtpproxy(void)
dissector_add_uint("udp.port", rtpproxy_udp_port, rtpproxy_udp_handle);
old_rtpproxy_udp_port = rtpproxy_udp_port;
- rtcp_handle = find_dissector("rtcp");
- rtp_events_handle = find_dissector("rtpevent");
- rtp_handle = find_dissector("rtp");
- bencode_handle = find_dissector("bencode");
+ rtcp_handle = find_dissector_add_dependency("rtcp", proto_rtpproxy);
+ rtp_events_handle = find_dissector_add_dependency("rtpevent", proto_rtpproxy);
+ rtp_handle = find_dissector_add_dependency("rtp", proto_rtpproxy);
+ bencode_handle = find_dissector_add_dependency("bencode", proto_rtpproxy);
/* Calculate nstime_t struct for the timeout from the rtpproxy_timeout value in milliseconds */
rtpproxy_timeout_ns.secs = (rtpproxy_timeout - rtpproxy_timeout % 1000) / 1000;
diff --git a/epan/dissectors/packet-rua.c b/epan/dissectors/packet-rua.c
index ff51a56b7c..6c56da31e9 100644
--- a/epan/dissectors/packet-rua.c
+++ b/epan/dissectors/packet-rua.c
@@ -1764,7 +1764,7 @@ proto_reg_handoff_rua(void)
if (!initialized) {
rua_handle = find_dissector("rua");
- ranap_handle = find_dissector("ranap");
+ ranap_handle = find_dissector_add_dependency("ranap", proto_rua);
dissector_add_uint("sctp.ppi", RUA_PAYLOAD_PROTOCOL_ID, rua_handle);
initialized = TRUE;
diff --git a/epan/dissectors/packet-rudp.c b/epan/dissectors/packet-rudp.c
index 3b3c32c6ce..b6dd6d8ef7 100644
--- a/epan/dissectors/packet-rudp.c
+++ b/epan/dissectors/packet-rudp.c
@@ -247,7 +247,7 @@ proto_reg_handoff_rudp(void) {
if (!initialized) {
rudp_handle = create_dissector_handle(dissect_rudp, proto_rudp);
dissector_add_for_decode_as("udp.port", rudp_handle);
- sm_handle = find_dissector("sm");
+ sm_handle = find_dissector_add_dependency("sm", proto_rudp);
data_handle = find_dissector("data");
initialized = TRUE;
} else {
diff --git a/epan/dissectors/packet-rx.c b/epan/dissectors/packet-rx.c
index b225101c8f..0d514b9022 100644
--- a/epan/dissectors/packet-rx.c
+++ b/epan/dissectors/packet-rx.c
@@ -760,7 +760,7 @@ proto_reg_handoff_rx(void)
/*
* Get handle for the AFS dissector.
*/
- afs_handle = find_dissector("afs");
+ afs_handle = find_dissector_add_dependency("afs", proto_rx);
/* Ports in the range UDP_PORT_RX_LOW to UDP_PORT_RX_HIGH
are all used for various AFS services. */
diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c
index f0976cd9ab..3bcc1e484e 100644
--- a/epan/dissectors/packet-s1ap.c
+++ b/epan/dissectors/packet-s1ap.c
@@ -11890,12 +11890,12 @@ proto_reg_handoff_s1ap(void)
static guint SctpPort;
s1ap_handle = find_dissector("s1ap");
- gcsna_handle = find_dissector("gcsna");
+ gcsna_handle = find_dissector_add_dependency("gcsna", proto_s1ap);
if (!Initialized) {
- nas_eps_handle = find_dissector("nas-eps");
- lppa_handle = find_dissector("lppa");
- bssgp_handle = find_dissector("bssgp");
+ nas_eps_handle = find_dissector_add_dependency("nas-eps", proto_s1ap);
+ lppa_handle = find_dissector_add_dependency("lppa", proto_s1ap);
+ bssgp_handle = find_dissector_add_dependency("bssgp", proto_s1ap);
dissector_add_for_decode_as("sctp.port", s1ap_handle);
dissector_add_uint("sctp.ppi", S1AP_PAYLOAD_PROTOCOL_ID, s1ap_handle);
Initialized=TRUE;
diff --git a/epan/dissectors/packet-sap.c b/epan/dissectors/packet-sap.c
index 60ee0e3c55..7701627724 100644
--- a/epan/dissectors/packet-sap.c
+++ b/epan/dissectors/packet-sap.c
@@ -388,7 +388,7 @@ proto_reg_handoff_sap(void)
/*
* Get a handle for the SDP dissector.
*/
- sdp_handle = find_dissector("sdp");
+ sdp_handle = find_dissector_add_dependency("sdp", proto_sap);
}
/*
diff --git a/epan/dissectors/packet-sccp.c b/epan/dissectors/packet-sccp.c
index 2c791ddfda..77bf4ed545 100644
--- a/epan/dissectors/packet-sccp.c
+++ b/epan/dissectors/packet-sccp.c
@@ -4156,12 +4156,12 @@ proto_reg_handoff_sccp(void)
dissector_add_string("tali.opcode", "sccp", sccp_handle);
data_handle = find_dissector("data");
- tcap_handle = find_dissector("tcap");
- ranap_handle = find_dissector("ranap");
- bssap_handle = find_dissector("bssap");
- gsmmap_handle = find_dissector("gsm_map_sccp");
- camel_handle = find_dissector("camel");
- inap_handle = find_dissector("inap");
+ tcap_handle = find_dissector_add_dependency("tcap", proto_sccp);
+ ranap_handle = find_dissector_add_dependency("ranap", proto_sccp);
+ bssap_handle = find_dissector_add_dependency("bssap", proto_sccp);
+ gsmmap_handle = find_dissector_add_dependency("gsm_map_sccp", proto_sccp);
+ camel_handle = find_dissector_add_dependency("camel", proto_sccp);
+ inap_handle = find_dissector_add_dependency("inap", proto_sccp);
initialised = TRUE;
}
diff --git a/epan/dissectors/packet-scop.c b/epan/dissectors/packet-scop.c
index 1e7d9772e5..8456393a89 100644
--- a/epan/dissectors/packet-scop.c
+++ b/epan/dissectors/packet-scop.c
@@ -403,7 +403,7 @@ void proto_reg_handoff_scop(void)
if (!inited){
scop_udp_handle = find_dissector("scop.udp");
scop_tcp_handle = find_dissector("scop.tcp");
- ieee802154_handle = find_dissector("wpan_nofcs");
+ ieee802154_handle = find_dissector_add_dependency("wpan_nofcs", proto_scop);
data_handle = find_dissector("data");
inited = TRUE;
} else {
diff --git a/epan/dissectors/packet-sdlc.c b/epan/dissectors/packet-sdlc.c
index 27be134ba0..aa67910ca7 100644
--- a/epan/dissectors/packet-sdlc.c
+++ b/epan/dissectors/packet-sdlc.c
@@ -200,7 +200,7 @@ proto_reg_handoff_sdlc(void)
/*
* Get handle for the SNA dissector.
*/
- sna_handle = find_dissector("sna");
+ sna_handle = find_dissector_add_dependency("sna", proto_sdlc);
data_handle = find_dissector("data");
sdlc_handle = create_dissector_handle(dissect_sdlc, proto_sdlc);
diff --git a/epan/dissectors/packet-sdp.c b/epan/dissectors/packet-sdp.c
index aa7a30d368..9d61558427 100644
--- a/epan/dissectors/packet-sdp.c
+++ b/epan/dissectors/packet-sdp.c
@@ -3113,11 +3113,11 @@ proto_reg_handoff_sdp(void)
{
dissector_handle_t sdp_handle;
- rtcp_handle = find_dissector("rtcp");
- msrp_handle = find_dissector("msrp");
- sprt_handle = find_dissector("sprt");
- h264_handle = find_dissector("h264");
- mp4ves_config_handle = find_dissector("mp4ves_config");
+ rtcp_handle = find_dissector_add_dependency("rtcp", proto_sdp);
+ msrp_handle = find_dissector_add_dependency("msrp", proto_sdp);
+ sprt_handle = find_dissector_add_dependency("sprt", proto_sdp);
+ h264_handle = find_dissector_add_dependency("h264", proto_sdp);
+ mp4ves_config_handle = find_dissector_add_dependency("mp4ves_config", proto_sdp);
proto_sprt = dissector_handle_get_protocol_index(find_dissector("sprt"));
diff --git a/epan/dissectors/packet-ses.c b/epan/dissectors/packet-ses.c
index 5a6b880259..c597bc3574 100644
--- a/epan/dissectors/packet-ses.c
+++ b/epan/dissectors/packet-ses.c
@@ -1916,7 +1916,7 @@ proto_reg_handoff_ses(void)
data_handle = find_dissector("data");
/* define sub dissector */
- pres_handle = find_dissector("pres");
+ pres_handle = find_dissector_add_dependency("pres", proto_ses);
/* add our session dissector to cotp dissector list
* and cotp_is dissector list*/
diff --git a/epan/dissectors/packet-sgsap.c b/epan/dissectors/packet-sgsap.c
index 0b4e6407d3..392e43a575 100644
--- a/epan/dissectors/packet-sgsap.c
+++ b/epan/dissectors/packet-sgsap.c
@@ -1733,7 +1733,7 @@ proto_reg_handoff_sgsap(void)
static range_t *sgsap_port_range;
sgsap_handle = find_dissector("sgsap");
- gsm_a_dtap_handle = find_dissector("gsm_a_dtap");
+ gsm_a_dtap_handle = find_dissector_add_dependency("gsm_a_dtap", proto_sgsap);
if (!Initialized) {
dissector_add_for_decode_as("sctp.port", sgsap_handle);
diff --git a/epan/dissectors/packet-sigcomp.c b/epan/dissectors/packet-sigcomp.c
index 3e9b6c616d..654381114d 100644
--- a/epan/dissectors/packet-sigcomp.c
+++ b/epan/dissectors/packet-sigcomp.c
@@ -6790,7 +6790,7 @@ proto_reg_handoff_sigcomp(void)
if (!Initialized) {
sigcomp_handle = find_dissector("sigcomp");
sigcomp_tcp_handle = create_dissector_handle(dissect_sigcomp_tcp,proto_sigcomp);
- sip_handle = find_dissector("sip");
+ sip_handle = find_dissector_add_dependency("sip",proto_sigcomp);
Initialized=TRUE;
} else {
dissector_delete_uint("udp.port", udp_port1, sigcomp_handle);
diff --git a/epan/dissectors/packet-simple.c b/epan/dissectors/packet-simple.c
index 12ff3dba5f..3ac7754a31 100644
--- a/epan/dissectors/packet-simple.c
+++ b/epan/dissectors/packet-simple.c
@@ -700,7 +700,7 @@ void proto_reg_handoff_simple(void)
simple_dissector_handle = create_dissector_handle(dissect_simple, proto_simple);
dissector_add_for_decode_as("udp.port", simple_dissector_handle);
- link16_handle = find_dissector("link16");
+ link16_handle = find_dissector_add_dependency("link16", proto_simple);
}
/*
diff --git a/epan/dissectors/packet-sip.c b/epan/dissectors/packet-sip.c
index 5b33a7cc3f..5e06d28fc7 100644
--- a/epan/dissectors/packet-sip.c
+++ b/epan/dissectors/packet-sip.c
@@ -6434,7 +6434,7 @@ proto_reg_handoff_sip(void)
dissector_handle_t sip_handle;
sip_handle = find_dissector("sip");
sip_tcp_handle = find_dissector("sip.tcp");
- sigcomp_handle = find_dissector("sigcomp");
+ sigcomp_handle = find_dissector_add_dependency("sigcomp", proto_sip);
sip_diag_handle = find_dissector("sip.diagnostic");
sip_uri_userinfo_handle = find_dissector("sip.uri_userinfo");
/* SIP content type and internet media type used by other dissectors are the same */
diff --git a/epan/dissectors/packet-sll.c b/epan/dissectors/packet-sll.c
index 642378cb5c..76463a3787 100644
--- a/epan/dissectors/packet-sll.c
+++ b/epan/dissectors/packet-sll.c
@@ -353,8 +353,8 @@ proto_reg_handoff_sll(void)
*/
gre_dissector_table = find_dissector_table("gre.proto");
data_handle = find_dissector("data");
- ethertype_handle = find_dissector("ethertype");
- netlink_handle = find_dissector("netlink");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_sll);
+ netlink_handle = find_dissector_add_dependency("netlink", proto_sll);
dissector_add_uint("wtap_encap", WTAP_ENCAP_SLL, sll_handle);
register_capture_dissector("wtap_encap", WTAP_ENCAP_SLL, capture_sll, hfi_sll->id);
diff --git a/epan/dissectors/packet-smb-mailslot.c b/epan/dissectors/packet-smb-mailslot.c
index 81ab388b25..b402edc20b 100644
--- a/epan/dissectors/packet-smb-mailslot.c
+++ b/epan/dissectors/packet-smb-mailslot.c
@@ -252,9 +252,9 @@ proto_register_smb_mailslot(void)
void
proto_reg_handoff_smb_mailslot(void)
{
- mailslot_browse_handle = find_dissector("mailslot_browse");
- mailslot_lanman_handle = find_dissector("mailslot_lanman");
- netlogon_handle = find_dissector("smb_netlogon");
+ mailslot_browse_handle = find_dissector_add_dependency("mailslot_browse", proto_smb_msp);
+ mailslot_lanman_handle = find_dissector_add_dependency("mailslot_lanman", proto_smb_msp);
+ netlogon_handle = find_dissector_add_dependency("smb_netlogon", proto_smb_msp);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-smb.c b/epan/dissectors/packet-smb.c
index 4f84e5c2f0..f804c9638f 100644
--- a/epan/dissectors/packet-smb.c
+++ b/epan/dissectors/packet-smb.c
@@ -20546,8 +20546,8 @@ proto_reg_handoff_smb(void)
{
dissector_handle_t smb_handle;
- gssapi_handle = find_dissector("gssapi");
- ntlmssp_handle = find_dissector("ntlmssp");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_smb);
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_smb);
heur_dissector_add("netbios", dissect_smb_heur, "SMB over Netbios", "smb_netbios", proto_smb, HEURISTIC_ENABLE);
heur_dissector_add("smb_direct", dissect_smb_heur, "SMB over SMB Direct", "smb_smb_direct", proto_smb, HEURISTIC_ENABLE);
diff --git a/epan/dissectors/packet-smb2.c b/epan/dissectors/packet-smb2.c
index 69dc90e740..41a058b598 100644
--- a/epan/dissectors/packet-smb2.c
+++ b/epan/dissectors/packet-smb2.c
@@ -9683,9 +9683,9 @@ proto_register_smb2(void)
void
proto_reg_handoff_smb2(void)
{
- gssapi_handle = find_dissector("gssapi");
- ntlmssp_handle = find_dissector("ntlmssp");
- rsvd_handle = find_dissector("rsvd");
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_smb2);
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_smb2);
+ rsvd_handle = find_dissector_add_dependency("rsvd", proto_smb2);
data_handle = find_dissector("data");
heur_dissector_add("netbios", dissect_smb2_heur, "SMB2 over Netbios", "smb2_netbios", proto_smb2, HEURISTIC_ENABLE);
heur_dissector_add("smb_direct", dissect_smb2_heur, "SMB2 over SMB Direct", "smb2_smb_direct", proto_smb2, HEURISTIC_ENABLE);
diff --git a/epan/dissectors/packet-smpp.c b/epan/dissectors/packet-smpp.c
index 8918463cc1..b9f8418d83 100644
--- a/epan/dissectors/packet-smpp.c
+++ b/epan/dissectors/packet-smpp.c
@@ -3802,7 +3802,7 @@ proto_reg_handoff_smpp(void)
/* Required for call_dissector() */
DebugLog(("Finding gsm_sms_ud subdissector\n"));
- gsm_sms_handle = find_dissector("gsm_sms_ud");
+ gsm_sms_handle = find_dissector_add_dependency("gsm_sms_ud", proto_smpp);
DISSECTOR_ASSERT(gsm_sms_handle);
/* Tapping setup */
diff --git a/epan/dissectors/packet-smtp.c b/epan/dissectors/packet-smtp.c
index 06c31f2d2d..d6147f43cb 100644
--- a/epan/dissectors/packet-smtp.c
+++ b/epan/dissectors/packet-smtp.c
@@ -1321,13 +1321,13 @@ proto_reg_handoff_smtp(void)
dissector_add_uint("tcp.port", TCP_PORT_SUBMISSION, smtp_handle);
/* find the IMF dissector */
- imf_handle = find_dissector("imf");
+ imf_handle = find_dissector_add_dependency("imf", proto_smtp);
/* find the SSL dissector */
- ssl_handle = find_dissector("ssl");
+ ssl_handle = find_dissector_add_dependency("ssl", proto_smtp);
/* find the NTLM dissector */
- ntlmssp_handle = find_dissector("ntlmssp");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_smtp);
}
/*
diff --git a/epan/dissectors/packet-snaeth.c b/epan/dissectors/packet-snaeth.c
index 19fa5b88e2..da1cfb4543 100644
--- a/epan/dissectors/packet-snaeth.c
+++ b/epan/dissectors/packet-snaeth.c
@@ -106,7 +106,7 @@ proto_reg_handoff_snaeth(void)
/*
* Get handle for the LLC dissector.
*/
- llc_handle = find_dissector("llc");
+ llc_handle = find_dissector_add_dependency("llc", proto_snaeth);
snaeth_handle = create_dissector_handle(dissect_snaeth, proto_snaeth);
dissector_add_uint("ethertype", ETHERTYPE_SNA, snaeth_handle);
diff --git a/epan/dissectors/packet-sndcp.c b/epan/dissectors/packet-sndcp.c
index 3f1cd94bbb..718796ea92 100644
--- a/epan/dissectors/packet-sndcp.c
+++ b/epan/dissectors/packet-sndcp.c
@@ -585,7 +585,7 @@ proto_reg_handoff_sndcp(void)
/* Find IP and data handle for upper layer dissectors
*/
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_sndcp);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-spdy.c b/epan/dissectors/packet-spdy.c
index 5dca654bb7..ac7e47a2c7 100644
--- a/epan/dissectors/packet-spdy.c
+++ b/epan/dissectors/packet-spdy.c
@@ -1947,7 +1947,7 @@ void proto_reg_handoff_spdy(void) {
ssl_dissector_add(0, spdy_handle);
data_handle = find_dissector("data");
- media_handle = find_dissector("media");
+ media_handle = find_dissector_add_dependency("media", proto_spdy);
port_subdissector_table = find_dissector_table("http.port");
media_type_subdissector_table = find_dissector_table("media_type");
diff --git a/epan/dissectors/packet-spice.c b/epan/dissectors/packet-spice.c
index fd0f70f6e8..72b6497ab7 100644
--- a/epan/dissectors/packet-spice.c
+++ b/epan/dissectors/packet-spice.c
@@ -4565,7 +4565,7 @@ proto_reg_handoff_spice(void)
spice_handle = create_dissector_handle(dissect_spice, proto_spice);
dissector_add_for_decode_as("tcp.port", spice_handle);
heur_dissector_add("tcp", test_spice_protocol, "Spice over TCP", "spice_tcp", proto_spice, HEURISTIC_ENABLE);
- jpeg_handle = find_dissector("image-jfif");
+ jpeg_handle = find_dissector_add_dependency("image-jfif", proto_spice);
}
/*
diff --git a/epan/dissectors/packet-srp.c b/epan/dissectors/packet-srp.c
index 81a48201b6..066b73b6c8 100644
--- a/epan/dissectors/packet-srp.c
+++ b/epan/dissectors/packet-srp.c
@@ -223,8 +223,8 @@ void proto_register_srp (void)
void proto_reg_handoff_srp(void) {
- ccsrl_handle = find_dissector("ccsrl");
- h245dg_handle = find_dissector("h245dg");
+ ccsrl_handle = find_dissector_add_dependency("ccsrl", proto_srp);
+ h245dg_handle = find_dissector_add_dependency("h245dg", proto_srp);
}
/*
diff --git a/epan/dissectors/packet-sscf-nni.c b/epan/dissectors/packet-sscf-nni.c
index eb0f8147cb..d1d0f6c658 100644
--- a/epan/dissectors/packet-sscf-nni.c
+++ b/epan/dissectors/packet-sscf-nni.c
@@ -131,7 +131,7 @@ proto_register_sscf(void)
void
proto_reg_handoff_sscf(void)
{
- mtp3_handle = find_dissector("mtp3");
+ mtp3_handle = find_dissector_add_dependency("mtp3", proto_sscf);
}
/*
diff --git a/epan/dissectors/packet-sstp.c b/epan/dissectors/packet-sstp.c
index 9052a412cd..81dc74b6dc 100644
--- a/epan/dissectors/packet-sstp.c
+++ b/epan/dissectors/packet-sstp.c
@@ -514,7 +514,7 @@ proto_register_sstp(void)
void
proto_reg_handoff_sstp(void)
{
- ppp_handle = find_dissector("ppp");
+ ppp_handle = find_dissector_add_dependency("ppp", proto_sstp);
}
/*
diff --git a/epan/dissectors/packet-stt.c b/epan/dissectors/packet-stt.c
index 74611450dc..2d124bce05 100644
--- a/epan/dissectors/packet-stt.c
+++ b/epan/dissectors/packet-stt.c
@@ -991,7 +991,7 @@ proto_reg_handoff_stt(void)
* in the tunneled Ethernet frames, but it is missing from the
* captures attached to bug 10282.
*/
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_stt);
data_handle = find_dissector("data");
heur_dissector_add("ip", dissect_stt_heur, "Stateless Transport Tunneling over IP", "stt_ip", proto_stt, HEURISTIC_ENABLE);
diff --git a/epan/dissectors/packet-swipe.c b/epan/dissectors/packet-swipe.c
index e77d3de424..07457db5fd 100644
--- a/epan/dissectors/packet-swipe.c
+++ b/epan/dissectors/packet-swipe.c
@@ -129,7 +129,7 @@ proto_reg_handoff_swipe(void)
swipe_handle = create_dissector_handle(dissect_swipe, proto_swipe );
dissector_add_uint("ip.proto", IP_PROTO_SWIPE, swipe_handle);
- ipv6_handle = find_dissector("ipv6");
+ ipv6_handle = find_dissector_add_dependency("ipv6", proto_swipe );
}
/*
diff --git a/epan/dissectors/packet-sync.c b/epan/dissectors/packet-sync.c
index 4a33e2619d..80a7b2dd94 100644
--- a/epan/dissectors/packet-sync.c
+++ b/epan/dissectors/packet-sync.c
@@ -303,7 +303,7 @@ proto_register_sync(void)
void
proto_reg_handoff_sync(void)
{
- ip_handle = find_dissector("ip");
+ ip_handle = find_dissector_add_dependency("ip", proto_sync);
dissector_add_for_decode_as("udp.port", sync_handle);
}
diff --git a/epan/dissectors/packet-syslog.c b/epan/dissectors/packet-syslog.c
index 2ad5d68bba..15a413c2ea 100644
--- a/epan/dissectors/packet-syslog.c
+++ b/epan/dissectors/packet-syslog.c
@@ -356,7 +356,7 @@ proto_reg_handoff_syslog(void)
dissector_add_for_decode_as("tcp.port", syslog_handle);
/* Find the mtp3 dissector */
- mtp_handle = find_dissector("mtp3");
+ mtp_handle = find_dissector_add_dependency("mtp3", proto_syslog);
}
/*
diff --git a/epan/dissectors/packet-t38.c b/epan/dissectors/packet-t38.c
index 10982825cd..6d7ad7f80a 100644
--- a/epan/dissectors/packet-t38.c
+++ b/epan/dissectors/packet-t38.c
@@ -1450,8 +1450,8 @@ proto_reg_handoff_t38(void)
t38_udp_handle=create_dissector_handle(dissect_t38_udp, proto_t38);
t38_tcp_handle=create_dissector_handle(dissect_t38_tcp, proto_t38);
t38_tcp_pdu_handle=create_dissector_handle(dissect_t38_tcp_pdu, proto_t38);
- rtp_handle = find_dissector("rtp");
- t30_hdlc_handle = find_dissector("t30.hdlc");
+ rtp_handle = find_dissector_add_dependency("rtp", proto_t38);
+ t30_hdlc_handle = find_dissector_add_dependency("t30.hdlc""rtp", proto_t38);
data_handle = find_dissector("data");
t38_prefs_initialized = TRUE;
}
diff --git a/epan/dissectors/packet-tcap.c b/epan/dissectors/packet-tcap.c
index fb073f8ebc..2332cf489b 100644
--- a/epan/dissectors/packet-tcap.c
+++ b/epan/dissectors/packet-tcap.c
@@ -3331,7 +3331,7 @@ proto_reg_handoff_tcap(void)
{
data_handle = find_dissector("data");
- ansi_tcap_handle = find_dissector("ansi_tcap");
+ ansi_tcap_handle = find_dissector_add_dependency("ansi_tcap", proto_tcap);
ber_oid_dissector_table = find_dissector_table("ber.oid");
diff --git a/epan/dissectors/packet-tdmoe.c b/epan/dissectors/packet-tdmoe.c
index 38e570a922..5bfb1adec4 100644
--- a/epan/dissectors/packet-tdmoe.c
+++ b/epan/dissectors/packet-tdmoe.c
@@ -179,7 +179,7 @@ proto_reg_handoff_tdmoe(void)
tdmoe_handle = create_dissector_handle(dissect_tdmoe, proto_tdmoe);
dissector_add_uint("ethertype", ETHERTYPE_TDMOE, tdmoe_handle);
- lapd_handle = find_dissector("lapd-bitstream");
+ lapd_handle = find_dissector_add_dependency("lapd-bitstream", proto_tdmoe);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-tdmop.c b/epan/dissectors/packet-tdmop.c
index 677649be2c..04033d5443 100644
--- a/epan/dissectors/packet-tdmop.c
+++ b/epan/dissectors/packet-tdmop.c
@@ -358,7 +358,7 @@ void proto_reg_handoff_tdmop(void)
if (pref_tdmop_ethertype) {
dissector_add_uint("ethertype", pref_tdmop_ethertype, tdmop_handle);
}
- lapd_handle = find_dissector("lapd-bitstream");
+ lapd_handle = find_dissector_add_dependency("lapd-bitstream", proto_tdmop);
data_handle = find_dissector("data");
current_tdmop_ethertype = pref_tdmop_ethertype;
current_tdmop_udpport = pref_tdmop_udpport;
diff --git a/epan/dissectors/packet-tds.c b/epan/dissectors/packet-tds.c
index b6a8122836..13617f4429 100644
--- a/epan/dissectors/packet-tds.c
+++ b/epan/dissectors/packet-tds.c
@@ -5638,8 +5638,8 @@ proto_reg_handoff_tds(void)
heur_dissector_add("tcp", dissect_tds_tcp_heur, "Tabular Data Stream over TCP", "tds_tcp", proto_tds, HEURISTIC_ENABLE);
- ntlmssp_handle = find_dissector("ntlmssp");
- gssapi_handle = find_dissector("gssapi");
+ ntlmssp_handle = find_dissector_add_dependency("ntlmssp", proto_tds);
+ gssapi_handle = find_dissector_add_dependency("gssapi", proto_tds);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-telkonet.c b/epan/dissectors/packet-telkonet.c
index 536df887d5..6813db71a9 100644
--- a/epan/dissectors/packet-telkonet.c
+++ b/epan/dissectors/packet-telkonet.c
@@ -103,7 +103,7 @@ proto_reg_handoff_telkonet(void)
{
dissector_handle_t telkonet_handle;
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_telkonet);
telkonet_handle = create_dissector_handle(dissect_telkonet, proto_telkonet);
dissector_add_uint("ethertype", ETHERTYPE_TELKONET, telkonet_handle);
diff --git a/epan/dissectors/packet-telnet.c b/epan/dissectors/packet-telnet.c
index 9b3b2c4bd1..7345d080b7 100644
--- a/epan/dissectors/packet-telnet.c
+++ b/epan/dissectors/packet-telnet.c
@@ -2196,8 +2196,8 @@ void
proto_reg_handoff_telnet(void)
{
dissector_add_uint("tcp.port", TCP_PORT_TELNET, telnet_handle);
- tn3270_handle = find_dissector("tn3270");
- tn5250_handle = find_dissector("tn5250");
+ tn3270_handle = find_dissector_add_dependency("tn3270", proto_telnet);
+ tn5250_handle = find_dissector_add_dependency("tn5250", proto_telnet);
ssl_handle = find_dissector("ssl");
}
diff --git a/epan/dissectors/packet-text-media.c b/epan/dissectors/packet-text-media.c
index 85588baa7f..af480ef4c7 100644
--- a/epan/dissectors/packet-text-media.c
+++ b/epan/dissectors/packet-text-media.c
@@ -168,7 +168,7 @@ proto_reg_handoff_text_lines(void)
dissector_add_string("media_type", "application/x-wms-logplaystats", text_lines_handle);
dissector_add_string("media_type", "application/x-rtsp-udp-packetpair", text_lines_handle);
- xml_handle = find_dissector("xml");
+ xml_handle = find_dissector_add_dependency("xml", proto_text_lines);
}
/*
diff --git a/epan/dissectors/packet-tr.c b/epan/dissectors/packet-tr.c
index 6949c51ff4..807c285542 100644
--- a/epan/dissectors/packet-tr.c
+++ b/epan/dissectors/packet-tr.c
@@ -805,8 +805,8 @@ proto_reg_handoff_tr(void)
/*
* Get handles for the TR MAC and LLC dissectors.
*/
- trmac_handle = find_dissector("trmac");
- llc_handle = find_dissector("llc");
+ trmac_handle = find_dissector_add_dependency("trmac", proto_tr);
+ llc_handle = find_dissector_add_dependency("llc", proto_tr);
data_handle = find_dissector("data");
tr_handle = find_dissector("tr");
diff --git a/epan/dissectors/packet-trill.c b/epan/dissectors/packet-trill.c
index cd40c0fc00..64d6d7ea07 100644
--- a/epan/dissectors/packet-trill.c
+++ b/epan/dissectors/packet-trill.c
@@ -212,7 +212,7 @@ proto_reg_handoff_trill(void)
* meaning that the inner Ethernet frame does *not* include an
* FCS.
*/
- eth_dissector = find_dissector( "eth_withoutfcs" ) ;
+ eth_dissector = find_dissector_add_dependency( "eth_withoutfcs", proto_trill );
}
/*
diff --git a/epan/dissectors/packet-tte.c b/epan/dissectors/packet-tte.c
index 92839649ea..cba328a139 100644
--- a/epan/dissectors/packet-tte.c
+++ b/epan/dissectors/packet-tte.c
@@ -197,7 +197,7 @@ proto_reg_handoff_tte(void)
hf_eth_src = proto_registrar_get_id_byname ("eth.src");
hf_eth_type = proto_registrar_get_id_byname ("eth.type");
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_tte);
}
/*
diff --git a/epan/dissectors/packet-turbocell.c b/epan/dissectors/packet-turbocell.c
index 637672929b..1cf6824e7b 100644
--- a/epan/dissectors/packet-turbocell.c
+++ b/epan/dissectors/packet-turbocell.c
@@ -339,7 +339,7 @@ void proto_register_turbocell(void)
void proto_reg_handoff_turbocell(void)
{
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_turbocell);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-tzsp.c b/epan/dissectors/packet-tzsp.c
index ebbb25139f..848fa319f4 100644
--- a/epan/dissectors/packet-tzsp.c
+++ b/epan/dissectors/packet-tzsp.c
@@ -554,14 +554,14 @@ proto_reg_handoff_tzsp(void)
dissector_add_uint("udp.port", UDP_PORT_TZSP, tzsp_handle);
/* Get the data dissector for handling various encapsulation types. */
- eth_maybefcs_handle = find_dissector("eth_maybefcs");
- tr_handle = find_dissector("tr");
- ppp_handle = find_dissector("ppp_hdlc");
- fddi_handle = find_dissector("fddi");
- raw_ip_handle = find_dissector("raw_ip");
- ieee_802_11_handle = find_dissector("wlan");
- ieee_802_11_prism_handle = find_dissector("prism");
- ieee_802_11_avs_handle = find_dissector("wlancap");
+ eth_maybefcs_handle = find_dissector_add_dependency("eth_maybefcs", proto_tzsp);
+ tr_handle = find_dissector_add_dependency("tr", proto_tzsp);
+ ppp_handle = find_dissector_add_dependency("ppp_hdlc", proto_tzsp);
+ fddi_handle = find_dissector_add_dependency("fddi", proto_tzsp);
+ raw_ip_handle = find_dissector_add_dependency("raw_ip", proto_tzsp);
+ ieee_802_11_handle = find_dissector_add_dependency("wlan", proto_tzsp);
+ ieee_802_11_prism_handle = find_dissector_add_dependency("prism", proto_tzsp);
+ ieee_802_11_avs_handle = find_dissector_add_dependency("wlancap", proto_tzsp);
data_handle = find_dissector("data");
/* Register this protocol as an encapsulation type. */
diff --git a/epan/dissectors/packet-ua.c b/epan/dissectors/packet-ua.c
index df002bb428..fc295a86fe 100644
--- a/epan/dissectors/packet-ua.c
+++ b/epan/dissectors/packet-ua.c
@@ -306,8 +306,8 @@ void proto_reg_handoff_ua_msg(void)
#endif
- noe_handle = find_dissector("noe");
- ua3g_handle = find_dissector("ua3g");
+ noe_handle = find_dissector_add_dependency("noe", proto_ua_msg);
+ ua3g_handle = find_dissector_add_dependency("ua3g", proto_ua_msg);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-uasip.c b/epan/dissectors/packet-uasip.c
index 24b2de558b..e5fc4c19f5 100644
--- a/epan/dissectors/packet-uasip.c
+++ b/epan/dissectors/packet-uasip.c
@@ -467,8 +467,8 @@ void proto_reg_handoff_uasip(void)
if (!prefs_initialized)
{
- ua_sys_to_term_handle = find_dissector("ua_sys_to_term");
- ua_term_to_sys_handle = find_dissector("ua_term_to_sys");
+ ua_sys_to_term_handle = find_dissector_add_dependency("ua_sys_to_term", proto_uasip);
+ ua_term_to_sys_handle = find_dissector_add_dependency("ua_term_to_sys", proto_uasip);
prefs_initialized = TRUE;
}
diff --git a/epan/dissectors/packet-uaudp.c b/epan/dissectors/packet-uaudp.c
index 0dc3117230..9f2321bb2c 100644
--- a/epan/dissectors/packet-uaudp.c
+++ b/epan/dissectors/packet-uaudp.c
@@ -612,8 +612,8 @@ void proto_reg_handoff_uaudp(void)
if (!prefs_initialized)
{
- ua_sys_to_term_handle = find_dissector("ua_sys_to_term");
- ua_term_to_sys_handle = find_dissector("ua_term_to_sys");
+ ua_sys_to_term_handle = find_dissector_add_dependency("ua_sys_to_term", proto_uaudp);
+ ua_term_to_sys_handle = find_dissector_add_dependency("ua_term_to_sys", proto_uaudp);
#if 0
uaudp_opcode_dissector_table =
register_dissector_table("uaudp.opcode",
diff --git a/epan/dissectors/packet-ubertooth.c b/epan/dissectors/packet-ubertooth.c
index f7a0a61178..ef5f2c19d9 100644
--- a/epan/dissectors/packet-ubertooth.c
+++ b/epan/dissectors/packet-ubertooth.c
@@ -3482,7 +3482,7 @@ proto_register_ubertooth(void)
void
proto_reg_handoff_ubertooth(void)
{
- bluetooth_ubertooth_handle = find_dissector("bluetooth_ubertooth");
+ bluetooth_ubertooth_handle = find_dissector_add_dependency("bluetooth_ubertooth", proto_ubertooth);
dissector_add_uint("usb.product", (0x1d50 << 16) | 0x6000, ubertooth_handle); /* Ubertooth Zero */
dissector_add_uint("usb.product", (0x1d50 << 16) | 0x6002, ubertooth_handle); /* Ubertooth One */
diff --git a/epan/dissectors/packet-ulp.c b/epan/dissectors/packet-ulp.c
index f0bec6be82..da8fdd540d 100644
--- a/epan/dissectors/packet-ulp.c
+++ b/epan/dissectors/packet-ulp.c
@@ -10664,8 +10664,8 @@ proto_reg_handoff_ulp(void)
dissector_add_string("media_type","application/oma-supl-ulp", ulp_tcp_handle);
dissector_add_string("media_type","application/vnd.omaloc-supl-init", ulp_tcp_handle);
ulp_udp_handle = create_dissector_handle(dissect_ULP_PDU_PDU, proto_ulp);
- rrlp_handle = find_dissector("rrlp");
- lpp_handle = find_dissector("lpp");
+ rrlp_handle = find_dissector_add_dependency("rrlp", proto_ulp);
+ lpp_handle = find_dissector_add_dependency("lpp", proto_ulp);
initialized = TRUE;
} else {
dissector_delete_uint("tcp.port", local_ulp_tcp_port, ulp_tcp_handle);
diff --git a/epan/dissectors/packet-uma.c b/epan/dissectors/packet-uma.c
index 9822fe3811..271a123303 100644
--- a/epan/dissectors/packet-uma.c
+++ b/epan/dissectors/packet-uma.c
@@ -1766,8 +1766,8 @@ proto_reg_handoff_uma(void)
uma_udp_handle = find_dissector("umaudp");
dissector_add_for_decode_as("udp.port", uma_udp_handle);
data_handle = find_dissector("data");
- rtcp_handle = find_dissector("rtcp");
- llc_handle = find_dissector("llcgprs");
+ rtcp_handle = find_dissector_add_dependency("rtcp", proto_uma);
+ llc_handle = find_dissector_add_dependency("llcgprs", proto_uma);
bssap_pdu_type_table = find_dissector_table("bssap.pdu_type");
Initialized=TRUE;
} else {
diff --git a/epan/dissectors/packet-umts_fp.c b/epan/dissectors/packet-umts_fp.c
index 93c8a89468..b1178865a0 100644
--- a/epan/dissectors/packet-umts_fp.c
+++ b/epan/dissectors/packet-umts_fp.c
@@ -5709,14 +5709,14 @@ void proto_reg_handoff_fp(void)
{
dissector_handle_t fp_aal2_handle;
- rlc_bcch_handle = find_dissector("rlc.bcch");
- mac_fdd_rach_handle = find_dissector("mac.fdd.rach");
- mac_fdd_fach_handle = find_dissector("mac.fdd.fach");
- mac_fdd_pch_handle = find_dissector("mac.fdd.pch");
- mac_fdd_dch_handle = find_dissector("mac.fdd.dch");
- mac_fdd_edch_handle = find_dissector("mac.fdd.edch");
- mac_fdd_edch_type2_handle = find_dissector("mac.fdd.edch.type2");
- mac_fdd_hsdsch_handle = find_dissector("mac.fdd.hsdsch");
+ rlc_bcch_handle = find_dissector_add_dependency("rlc.bcch", proto_fp);
+ mac_fdd_rach_handle = find_dissector_add_dependency("mac.fdd.rach", proto_fp);
+ mac_fdd_fach_handle = find_dissector_add_dependency("mac.fdd.fach", proto_fp);
+ mac_fdd_pch_handle = find_dissector_add_dependency("mac.fdd.pch", proto_fp);
+ mac_fdd_dch_handle = find_dissector_add_dependency("mac.fdd.dch", proto_fp);
+ mac_fdd_edch_handle = find_dissector_add_dependency("mac.fdd.edch", proto_fp);
+ mac_fdd_edch_type2_handle = find_dissector_add_dependency("mac.fdd.edch.type2", proto_fp);
+ mac_fdd_hsdsch_handle = find_dissector_add_dependency("mac.fdd.hsdsch", proto_fp);
heur_dissector_add("udp", heur_dissect_fp, "FP over UDP", "fp_udp", proto_fp, HEURISTIC_DISABLE);
diff --git a/epan/dissectors/packet-umts_mac.c b/epan/dissectors/packet-umts_mac.c
index 2dc0c4fe0f..ed4ea763f5 100644
--- a/epan/dissectors/packet-umts_mac.c
+++ b/epan/dissectors/packet-umts_mac.c
@@ -1490,13 +1490,13 @@ proto_register_umts_mac(void)
void
proto_reg_handoff_umts_mac(void)
{
- rlc_pcch_handle = find_dissector("rlc.pcch");
- rlc_ccch_handle = find_dissector("rlc.ccch");
- rlc_ctch_handle = find_dissector("rlc.ctch");
- rlc_dcch_handle = find_dissector("rlc.dcch");
- rlc_ps_dtch_handle = find_dissector("rlc.ps_dtch");
+ rlc_pcch_handle = find_dissector_add_dependency("rlc.pcch", proto_umts_mac);
+ rlc_ccch_handle = find_dissector_add_dependency("rlc.ccch", proto_umts_mac);
+ rlc_ctch_handle = find_dissector_add_dependency("rlc.ctch", proto_umts_mac);
+ rlc_dcch_handle = find_dissector_add_dependency("rlc.dcch", proto_umts_mac);
+ rlc_ps_dtch_handle = find_dissector_add_dependency("rlc.ps_dtch", proto_umts_mac);
- rrc_handle = find_dissector("rrc");
+ rrc_handle = find_dissector_add_dependency("rrc", proto_umts_mac);
}
/*
diff --git a/epan/dissectors/packet-usb-audio.c b/epan/dissectors/packet-usb-audio.c
index e388733464..74df9a4e14 100644
--- a/epan/dissectors/packet-usb-audio.c
+++ b/epan/dissectors/packet-usb-audio.c
@@ -655,7 +655,7 @@ proto_reg_handoff_usb_audio(void)
usb_audio_bulk_handle = find_dissector("usbaudio");
dissector_add_uint("usb.bulk", IF_CLASS_AUDIO, usb_audio_bulk_handle);
- sysex_handle = find_dissector("sysex");
+ sysex_handle = find_dissector_add_dependency("sysex", proto_usb_audio);
}
/*
* Editor modelines
diff --git a/epan/dissectors/packet-usb-ccid.c b/epan/dissectors/packet-usb-ccid.c
index 25e0b9738b..5b4164fa0a 100644
--- a/epan/dissectors/packet-usb-ccid.c
+++ b/epan/dissectors/packet-usb-ccid.c
@@ -758,11 +758,11 @@ proto_reg_handoff_ccid(void)
dissector_add_for_decode_as("usb.protocol", usb_ccid_handle);
sub_handles[SUB_DATA] = find_dissector("data");
- sub_handles[SUB_ISO7816] = find_dissector("iso7816");
- sub_handles[SUB_GSM_SIM_CMD] = find_dissector("gsm_sim.command");
- sub_handles[SUB_PN532] = find_dissector("pn532");
- sub_handles[SUB_ACR122_PN532] = find_dissector("acr122");
- sub_handles[SUB_GSM_SIM_RSP] = find_dissector("gsm_sim.response");
+ sub_handles[SUB_ISO7816] = find_dissector_add_dependency("iso7816", proto_ccid);
+ sub_handles[SUB_GSM_SIM_CMD] = find_dissector_add_dependency("gsm_sim.command", proto_ccid);
+ sub_handles[SUB_PN532] = find_dissector_add_dependency("pn532", proto_ccid);
+ sub_handles[SUB_ACR122_PN532] = find_dissector_add_dependency("acr122", proto_ccid);
+ sub_handles[SUB_GSM_SIM_RSP] = find_dissector_add_dependency("gsm_sim.response", proto_ccid);
}
/*
diff --git a/epan/dissectors/packet-usb-com.c b/epan/dissectors/packet-usb-com.c
index fbafc43072..dd03aa5ac6 100644
--- a/epan/dissectors/packet-usb-com.c
+++ b/epan/dissectors/packet-usb-com.c
@@ -1085,10 +1085,10 @@ proto_reg_handoff_usb_com(void)
dissector_add_uint("usb.bulk", IF_CLASS_CDC_DATA, usb_com_bulk_handle);
usb_com_interrupt_handle = create_dissector_handle(dissect_usb_com_interrupt, proto_usb_com);
dissector_add_uint("usb.interrupt", IF_CLASS_COMMUNICATIONS, usb_com_interrupt_handle);
- mbim_control_handle = find_dissector("mbim.control");
- mbim_descriptor_handle = find_dissector("mbim.descriptor");
- mbim_bulk_handle = find_dissector("mbim.bulk");
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ mbim_control_handle = find_dissector_add_dependency("mbim.control", proto_usb_com);
+ mbim_descriptor_handle = find_dissector_add_dependency("mbim.descriptor", proto_usb_com);
+ mbim_bulk_handle = find_dissector_add_dependency("mbim.bulk", proto_usb_com);
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_usb_com);
}
/*
diff --git a/epan/dissectors/packet-v5dl.c b/epan/dissectors/packet-v5dl.c
index 1b8baec234..fd1f067105 100644
--- a/epan/dissectors/packet-v5dl.c
+++ b/epan/dissectors/packet-v5dl.c
@@ -434,7 +434,7 @@ proto_register_v5dl(void)
void
proto_reg_handoff_v5dl(void)
{
- v52_handle = find_dissector("v52");
+ v52_handle = find_dissector_add_dependency("v52", proto_v5dl);
}
/*
diff --git a/epan/dissectors/packet-v5ef.c b/epan/dissectors/packet-v5ef.c
index b688cc5353..0207713d09 100644
--- a/epan/dissectors/packet-v5ef.c
+++ b/epan/dissectors/packet-v5ef.c
@@ -35,6 +35,7 @@
#include <wiretap/wtap.h>
void proto_register_v5ef(void);
+void proto_reg_handoff_v5ef(void);
static int proto_v5ef = -1;
static int hf_v5ef_direction = -1;
@@ -143,9 +144,6 @@ dissect_v5ef(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_
}
void
-proto_reg_handoff_v5ef(void);
-
-void
proto_register_v5ef(void)
{
static hf_register_info hf[] = {
@@ -197,8 +195,8 @@ proto_reg_handoff_v5ef(void)
v5ef_handle = find_dissector("v5ef");
dissector_add_uint("wtap_encap", WTAP_ENCAP_V5_EF, v5ef_handle);
- lapd_handle = find_dissector("lapd");
- v5dl_handle = find_dissector("v5dl");
+ lapd_handle = find_dissector_add_dependency("lapd", proto_v5ef);
+ v5dl_handle = find_dissector_add_dependency("v5dl", proto_v5ef);
}
/*
diff --git a/epan/dissectors/packet-v5ua.c b/epan/dissectors/packet-v5ua.c
index c6258ee26b..9924bf3e9c 100644
--- a/epan/dissectors/packet-v5ua.c
+++ b/epan/dissectors/packet-v5ua.c
@@ -1646,8 +1646,8 @@ proto_reg_handoff_v5ua(void)
dissector_handle_t v5ua_handle;
v5ua_handle = create_dissector_handle(dissect_v5ua, proto_v5ua);
- q931_handle = find_dissector("q931");
- v52_handle = find_dissector("v52");
+ q931_handle = find_dissector_add_dependency("q931", proto_v5ua);
+ v52_handle = find_dissector_add_dependency("v52", proto_v5ua);
dissector_add_uint("sctp.port", SCTP_PORT_V5UA_DRAFT, v5ua_handle);
dissector_add_uint("sctp.port", SCTP_PORT_V5UA_RFC, v5ua_handle);
diff --git a/epan/dissectors/packet-vcdu.c b/epan/dissectors/packet-vcdu.c
index a7b4ef8d3e..29cbf9a810 100644
--- a/epan/dissectors/packet-vcdu.c
+++ b/epan/dissectors/packet-vcdu.c
@@ -670,7 +670,7 @@ void
proto_reg_handoff_vcdu(void)
{
dissector_add_for_decode_as("udp.port", vcdu_handle);
- ccsds_handle = find_dissector("ccsds");
+ ccsds_handle = find_dissector_add_dependency("ccsds", proto_vcdu);
}
/*
diff --git a/epan/dissectors/packet-vlan.c b/epan/dissectors/packet-vlan.c
index 915129b573..f3c1303c52 100644
--- a/epan/dissectors/packet-vlan.c
+++ b/epan/dissectors/packet-vlan.c
@@ -287,7 +287,7 @@ proto_reg_handoff_vlan(void)
}
old_q_in_q_ethertype = q_in_q_ethertype;
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", hfi_vlan->id);
dissector_add_uint("ethertype", q_in_q_ethertype, vlan_handle);
}
diff --git a/epan/dissectors/packet-vmlab.c b/epan/dissectors/packet-vmlab.c
index ff1c2547a7..8279ce1fd1 100644
--- a/epan/dissectors/packet-vmlab.c
+++ b/epan/dissectors/packet-vmlab.c
@@ -185,7 +185,7 @@ proto_reg_handoff_vmlab(void)
dissector_add_uint("ethertype", ETHERTYPE_VMLAB, vmlab_handle);
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_vmlab);
}
/*
diff --git a/epan/dissectors/packet-vntag.c b/epan/dissectors/packet-vntag.c
index c07ef581e7..81a6da06b6 100644
--- a/epan/dissectors/packet-vntag.c
+++ b/epan/dissectors/packet-vntag.c
@@ -176,7 +176,7 @@ proto_reg_handoff_vntag(void)
vntag_handle = create_dissector_handle(dissect_vntag, proto_vntag);
dissector_add_uint("ethertype", ETHERTYPE_VNTAG, vntag_handle);
- ethertype_handle = find_dissector("ethertype");
+ ethertype_handle = find_dissector_add_dependency("ethertype", proto_vntag);
}
/*
diff --git a/epan/dissectors/packet-vxlan.c b/epan/dissectors/packet-vxlan.c
index c5d60162c1..dc2d3da8be 100644
--- a/epan/dissectors/packet-vxlan.c
+++ b/epan/dissectors/packet-vxlan.c
@@ -200,7 +200,7 @@ proto_reg_handoff_vxlan(void)
* meaning that the inner Ethernet frame does *not* include an
* FCS.
*/
- eth_handle = find_dissector("eth_withoutfcs");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_vxlan);
vxlan_handle = create_dissector_handle(dissect_vxlan, proto_vxlan);
dissector_add_uint("udp.port", UDP_PORT_VXLAN, vxlan_handle);
diff --git a/epan/dissectors/packet-wassp.c b/epan/dissectors/packet-wassp.c
index 9533434e20..a3c6f86ddf 100644
--- a/epan/dissectors/packet-wassp.c
+++ b/epan/dissectors/packet-wassp.c
@@ -2103,8 +2103,8 @@ proto_reg_handoff_wassp(void)
heur_dissector_add("udp", dissect_wassp_heur, "WASSP over UDP", "wassp_udp", proto_wassp, HEURISTIC_DISABLE);
- snmp_handle = find_dissector("snmp");
- ieee80211_handle = find_dissector("wlan_withoutfcs");
+ snmp_handle = find_dissector_add_dependency("snmp", proto_wassp);
+ ieee80211_handle = find_dissector_add_dependency("wlan_withoutfcs", proto_wassp);
}
/*
diff --git a/epan/dissectors/packet-wcp.c b/epan/dissectors/packet-wcp.c
index ae483120fe..1460e6a4d8 100644
--- a/epan/dissectors/packet-wcp.c
+++ b/epan/dissectors/packet-wcp.c
@@ -790,7 +790,7 @@ proto_reg_handoff_wcp(void) {
/*
* Get handle for the Frame Relay (uncompressed) dissector.
*/
- fr_uncompressed_handle = find_dissector("fr_uncompressed");
+ fr_uncompressed_handle = find_dissector_add_dependency("fr_uncompressed", proto_wcp);
wcp_handle = create_dissector_handle(dissect_wcp, proto_wcp);
dissector_add_uint("fr.nlpid", NLPID_COMPRESSED, wcp_handle);
diff --git a/epan/dissectors/packet-websocket.c b/epan/dissectors/packet-websocket.c
index 603b068608..d8bf15ea21 100644
--- a/epan/dissectors/packet-websocket.c
+++ b/epan/dissectors/packet-websocket.c
@@ -557,9 +557,9 @@ void
proto_reg_handoff_websocket(void)
{
data_handle = find_dissector("data");
- text_lines_handle = find_dissector("data-text-lines");
- json_handle = find_dissector("json");
- sip_handle = find_dissector("sip");
+ text_lines_handle = find_dissector_add_dependency("data-text-lines", proto_websocket);
+ json_handle = find_dissector_add_dependency("json", proto_websocket);
+ sip_handle = find_dissector_add_dependency("sip", proto_websocket);
proto_http = proto_get_id_by_filter_name("http");
}
diff --git a/epan/dissectors/packet-wfleet-hdlc.c b/epan/dissectors/packet-wfleet-hdlc.c
index 6ba9c59859..190253a7a2 100644
--- a/epan/dissectors/packet-wfleet-hdlc.c
+++ b/epan/dissectors/packet-wfleet-hdlc.c
@@ -114,7 +114,7 @@ proto_reg_handoff_wfleet_hdlc(void)
* Find the eth dissector and save a ref to it
*/
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_wfleet_hdlc);
}
/*
diff --git a/epan/dissectors/packet-wsp.c b/epan/dissectors/packet-wsp.c
index fb8609fb0f..fc049bd5ce 100644
--- a/epan/dissectors/packet-wsp.c
+++ b/epan/dissectors/packet-wsp.c
@@ -7175,9 +7175,9 @@ proto_reg_handoff_wsp(void)
/*
* Get a handle for the WTP-over-UDP and the generic media dissectors.
*/
- wtp_fromudp_handle = find_dissector("wtp-udp");
- media_handle = find_dissector("media");
- wbxml_uaprof_handle = find_dissector("wbxml-uaprof");
+ wtp_fromudp_handle = find_dissector_add_dependency("wtp-udp", proto_wsp);
+ media_handle = find_dissector_add_dependency("media", proto_wsp);
+ wbxml_uaprof_handle = find_dissector_add_dependency("wbxml-uaprof", proto_wsp);
/* Only connection-less WSP has no previous handler */
dissector_add_uint("udp.port", UDP_PORT_WSP, wsp_fromudp_handle);
diff --git a/epan/dissectors/packet-wtp.c b/epan/dissectors/packet-wtp.c
index edffc01353..f35d861921 100644
--- a/epan/dissectors/packet-wtp.c
+++ b/epan/dissectors/packet-wtp.c
@@ -1075,7 +1075,7 @@ proto_reg_handoff_wtp(void)
* Get a handle for the connection-oriented WSP dissector - if WTP
* PDUs have data, it is WSP.
*/
- wsp_handle = find_dissector("wsp-co");
+ wsp_handle = find_dissector_add_dependency("wsp-co", proto_wtp);
wtp_fromudp_handle = find_dissector("wtp-udp");
dissector_add_uint("udp.port", UDP_PORT_WTP_WSP, wtp_fromudp_handle);
diff --git a/epan/dissectors/packet-x25.c b/epan/dissectors/packet-x25.c
index a42437412d..0ff3443579 100644
--- a/epan/dissectors/packet-x25.c
+++ b/epan/dissectors/packet-x25.c
@@ -2407,10 +2407,10 @@ proto_reg_handoff_x25(void)
/*
* Get handles for various dissectors.
*/
- ip_handle = find_dissector("ip");
- clnp_handle = find_dissector("clnp");
- ositp_handle = find_dissector("ositp");
- qllc_handle = find_dissector("qllc");
+ ip_handle = find_dissector_add_dependency("ip", proto_x25);
+ clnp_handle = find_dissector_add_dependency("clnp", proto_x25);
+ ositp_handle = find_dissector_add_dependency("ositp", proto_x25);
+ qllc_handle = find_dissector_add_dependency("qllc", proto_x25);
data_handle = find_dissector("data");
x25_handle = find_dissector("x.25");
diff --git a/epan/dissectors/packet-xip-serval.c b/epan/dissectors/packet-xip-serval.c
index b47b275527..54953b4cbe 100644
--- a/epan/dissectors/packet-xip-serval.c
+++ b/epan/dissectors/packet-xip-serval.c
@@ -414,8 +414,8 @@ void
proto_reg_handoff_xip_serval(void)
{
data_handle = find_dissector("data");
- tcp_handle = find_dissector("tcp");
- udp_handle = find_dissector("udp");
+ tcp_handle = find_dissector_add_dependency("tcp", proto_xip_serval);
+ udp_handle = find_dissector_add_dependency("udp", proto_xip_serval);
}
/*
diff --git a/epan/dissectors/packet-xip.c b/epan/dissectors/packet-xip.c
index 538b9d1dec..f7fb208abc 100644
--- a/epan/dissectors/packet-xip.c
+++ b/epan/dissectors/packet-xip.c
@@ -698,7 +698,7 @@ proto_reg_handoff_xip(void)
{
dissector_add_uint("ethertype", ETHERTYPE_XIP, xip_handle);
- xip_serval_handle = find_dissector("xipserval");
+ xip_serval_handle = find_dissector_add_dependency("xipserval", proto_xip);
data_handle = find_dissector("data");
}
diff --git a/epan/dissectors/packet-xmpp.c b/epan/dissectors/packet-xmpp.c
index 1eadaa41e6..bea9bab5c9 100644
--- a/epan/dissectors/packet-xmpp.c
+++ b/epan/dissectors/packet-xmpp.c
@@ -1481,7 +1481,7 @@ proto_register_xmpp(void) {
void
proto_reg_handoff_xmpp(void) {
- xml_handle = find_dissector("xml");
+ xml_handle = find_dissector_add_dependency("xml", proto_xmpp);
dissector_add_uint("tcp.port", XMPP_PORT, xmpp_handle);
diff --git a/epan/dissectors/packet-xot.c b/epan/dissectors/packet-xot.c
index d8c3766125..248aa973c9 100644
--- a/epan/dissectors/packet-xot.c
+++ b/epan/dissectors/packet-xot.c
@@ -450,7 +450,7 @@ proto_reg_handoff_xot(void)
{
dissector_add_uint("tcp.port", TCP_PORT_XOT, xot_handle);
- x25_handle = find_dissector("x.25");
+ x25_handle = find_dissector_add_dependency("x.25", proto_xot);
}
/*
diff --git a/epan/dissectors/packet-zbee-nwk.c b/epan/dissectors/packet-zbee-nwk.c
index c8a97fed0e..586c9ee36a 100644
--- a/epan/dissectors/packet-zbee-nwk.c
+++ b/epan/dissectors/packet-zbee-nwk.c
@@ -1967,8 +1967,8 @@ void proto_reg_handoff_zbee_nwk(void)
{
/* Find the other dissectors we need. */
data_handle = find_dissector("data");
- aps_handle = find_dissector(ZBEE_PROTOABBREV_APS);
- zbee_gp_handle = find_dissector(ZBEE_PROTOABBREV_NWK_GP);
+ aps_handle = find_dissector_add_dependency(ZBEE_PROTOABBREV_APS, proto_zbee_nwk);
+ zbee_gp_handle = find_dissector_add_dependency(ZBEE_PROTOABBREV_NWK_GP, proto_zbee_nwk);
/* Register our dissector with IEEE 802.15.4 */
dissector_add_for_decode_as(IEEE802154_PROTOABBREV_WPAN_PANID, find_dissector(ZBEE_PROTOABBREV_NWK));
diff --git a/plugins/docsis/packet-docsis.c b/plugins/docsis/packet-docsis.c
index de78b83cfd..58b8a88cab 100644
--- a/plugins/docsis/packet-docsis.c
+++ b/plugins/docsis/packet-docsis.c
@@ -841,7 +841,7 @@ proto_reg_handoff_docsis (void)
dissector_add_uint ("wtap_encap", WTAP_ENCAP_DOCSIS, docsis_handle);
docsis_mgmt_handle = find_dissector ("docsis_mgmt");
- eth_withoutfcs_handle = find_dissector ("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_docsis);
}
/*
diff --git a/plugins/ethercat/packet-ecatmb.c b/plugins/ethercat/packet-ecatmb.c
index 217b99d29f..91c90ddc00 100644
--- a/plugins/ethercat/packet-ecatmb.c
+++ b/plugins/ethercat/packet-ecatmb.c
@@ -1983,8 +1983,8 @@ void proto_reg_handoff_ecat_mailbox(void)
ecat_mailbox_handle = find_dissector("ecat_mailbox");
dissector_add_uint("ecatf.type", 5, ecat_mailbox_handle);
- eth_handle = find_dissector("eth_withoutfcs");
- ams_handle = find_dissector("ams");
+ eth_handle = find_dissector_add_dependency("eth_withoutfcs", proto_ecat_mailbox);
+ ams_handle = find_dissector_add_dependency("ams", proto_ecat_mailbox);
}
/*
diff --git a/plugins/ethercat/packet-esl.c b/plugins/ethercat/packet-esl.c
index aed683517c..38049d63b2 100644
--- a/plugins/ethercat/packet-esl.c
+++ b/plugins/ethercat/packet-esl.c
@@ -363,7 +363,7 @@ proto_reg_handoff_esl(void) {
static gboolean initialized = FALSE;
if (!initialized) {
- eth_withoutfcs_handle = find_dissector("eth_withoutfcs");
+ eth_withoutfcs_handle = find_dissector_add_dependency("eth_withoutfcs", proto_esl);
heur_dissector_add("eth", dissect_esl_heur, "EtherCAT over Ethernet", "esl_eth", proto_esl, HEURISTIC_DISABLE);
initialized = TRUE;
}
diff --git a/plugins/ethercat/packet-ethercat-datagram.c b/plugins/ethercat/packet-ethercat-datagram.c
index a5387f5b2a..437973c7ea 100644
--- a/plugins/ethercat/packet-ethercat-datagram.c
+++ b/plugins/ethercat/packet-ethercat-datagram.c
@@ -1696,7 +1696,7 @@ void proto_reg_handoff_ecat(void)
ecat_handle = create_dissector_handle(dissect_ecat_datagram, proto_ecat_datagram);
dissector_add_uint("ecatf.type", 1 /* EtherCAT type */, ecat_handle);
- ecat_mailbox_handle = find_dissector("ecat_mailbox");
+ ecat_mailbox_handle = find_dissector_add_dependency("ecat_mailbox", proto_ecat_datagram);
}
/*
diff --git a/plugins/wimaxasncp/packet-wimaxasncp.c b/plugins/wimaxasncp/packet-wimaxasncp.c
index 28e8a7d349..d1dca91b70 100644
--- a/plugins/wimaxasncp/packet-wimaxasncp.c
+++ b/plugins/wimaxasncp/packet-wimaxasncp.c
@@ -3467,7 +3467,7 @@ proto_reg_handoff_wimaxasncp(void)
{
/* Find the EAP dissector */
- eap_handle = find_dissector("eap");
+ eap_handle = find_dissector_add_dependency("eap", proto_wimaxasncp);
inited = TRUE;
}