diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/Makefile.am b/MAC/Tools/ethereal-0.9.8-epaplugin/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..f4b206c17c0502517fb5fb9ceba48eedc098e68d --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/Makefile.am @@ -0,0 +1,1231 @@ +# Makefile.am +# Automake file for Ethereal +# +# $Id$ +# +# Ethereal - Network traffic analyzer +# By Gerald Combs <gerald@ethereal.com> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +ACLOCAL_AMFLAGS = `./aclocal-flags` + +# +# This is a hideous hack. +# +# Automake needs to know into which sections to install various man +# pages; if the names in "man_MANS" have suffixes, it can infer the +# sections from the name (e.g., "hello.1" goes in section 1), but if +# they don't have suffixes, it can't tell what sections to put them, and +# it just gives up and doesn't create any rules to install them (and it +# gives up silently, so you have no clue what's wrong). +# +# Therefore, we can't just set "man_MANS" to a list of variables to be +# filled in by the configure script, as those variables don't have man +# page section numbers. +# +# It turns out (although this is not documented anywhere I could find +# in the automake Info file) that if you define, instead, variables with +# names like "man{section}_MANS", automake will infer that the names in +# those variables are the names of man pages to be installed in section +# "{section}". +# +# So, as all our man pages go in section 1, we define "man1_MANS" to +# contain all the man page. +# +# *However*, if "man_MANS" isn't defined at all, automake concludes that +# there are no man pages, the fact that, say, "man1_MANS" is defined +# nonwithstanding! (I suspect this is the result of a mistaken attempt +# to get people to fix their automake files not to use "MANS"; if "MANS" +# is defined, it prints a warning and sets the exit status, but doesn't +# exit, and then it just gives up if "man_MANS" isn't defined, +# presumably on the theory that the only reason it wouldn't be defined +# is because the automake file uses the obsolete "MANS" variable instead +# of the shiny new "man_MANS" variable.) +# +# So we also define "man_MANS", but don't define it as anything; +# automake will arrange that the Makefile define it as the union of all +# the "man{section}_MANS" variables. +# +bin_PROGRAMS = @ethereal_bin@ @editcap_bin@ @mergecap_bin@ @tethereal_bin@ @dftest_bin@ @randpkt_bin@ @text2pcap_bin@ +bin_SCRIPTS = @idl2eth_bin@ +man1_MANS = @ethereal_man@ @editcap_man@ @mergecap_man@ @tethereal_man@ @text2pcap_man@ @idl2eth_man@ +man_MANS = + +EXTRA_PROGRAMS = ethereal ethereal_static tethereal tethereal_static editcap mergecap dftest text2pcap +EXTRA_SCRIPTS = idl2eth + +# +# Install "manuf" in the directory for Ethereal configuration files. +# +sysconf_DATA = manuf + +# +# Install the Diameter DTD and XML files in the "diameter" subdirectory +# of that directory. +# +diameterdir = $(sysconfdir)/diameter +diameter_DATA = dictionary.dtd dictionary.xml mobileipv4.xml \ + nasreq.xml sunping.xml + +DISSECTOR_SRC = \ + packet-aarp.c \ + packet-afp.c \ + packet-afs.c \ + packet-aim.c \ + packet-ajp13.c \ + packet-aodv.c \ + packet-aodv6.c \ + packet-arcnet.c \ + packet-arp.c \ + packet-asap.c \ + packet-ascend.c\ + packet-atalk.c \ + packet-atm.c \ + packet-auto_rp.c \ + packet-bacapp.c \ + packet-bacnet.c \ + packet-beep.c \ + packet-bgp.c \ + packet-bootp.c \ + packet-bootparams.c \ + packet-bpdu.c \ + packet-bvlc.c \ + packet-cdp.c \ + packet-cgmp.c \ + packet-chdlc.c \ + packet-clearcase.c \ + packet-clip.c \ + packet-clnp.c \ + packet-cops.c \ + packet-cosine.c \ + packet-cpha.c \ + packet-cups.c \ + packet-data.c \ + packet-dccp.c \ + packet-dcerpc.c \ + packet-dcerpc-afs4int.c \ + packet-dcerpc-bossvr.c \ + packet-dcerpc-browser.c \ + packet-dcerpc-cds_clerkserver.c \ + packet-dcerpc-cds_solicit.c \ + packet-dcerpc-conv.c \ + packet-dcerpc-cprpc_server.c \ + packet-dcerpc-dce122.c \ + packet-dcerpc-dfs.c \ + packet-dcerpc-dnsserver.c \ + packet-dcerpc-dtsprovider.c \ + packet-dcerpc-dtsstime_req.c \ + packet-dcerpc-epm.c \ + packet-dcerpc-fldb.c \ + packet-dcerpc-ftserver.c \ + packet-dcerpc-krb5rpc.c \ + packet-dcerpc-lsa.c \ + packet-dcerpc-lsa-ds.c \ + packet-dcerpc-mapi.c \ + packet-dcerpc-mgmt.c \ + packet-dcerpc-ndr.c \ + packet-dcerpc-netlogon.c \ + packet-dcerpc-nspi.c \ + packet-dcerpc-nt.c \ + packet-dcerpc-oxid.c \ + packet-dcerpc-reg.c \ + packet-dcerpc-remact.c \ + packet-dcerpc-rep_proc.c \ + packet-dcerpc-roverride.c \ + packet-dcerpc-rpriv.c \ + packet-dcerpc-rs_acct.c \ + packet-dcerpc-rs_attr.c \ + packet-dcerpc-rs_misc.c \ + packet-dcerpc-rs_pgo.c \ + packet-dcerpc-rs_repadm.c \ + packet-dcerpc-rs_replist.c \ + packet-dcerpc-rs_unix.c \ + packet-dcerpc-rsec_login.c \ + packet-dcerpc-samr.c \ + packet-dcerpc-secidmap.c \ + packet-dcerpc-spoolss.c \ + packet-dcerpc-srvsvc.c \ + packet-dcerpc-tapi.c \ + packet-dcerpc-tkn4int.c \ + packet-dcerpc-ubikdisk.c \ + packet-dcerpc-ubikvote.c \ + packet-dcerpc-update.c \ + packet-dcerpc-wkssvc.c \ + packet-ddtp.c \ + packet-dec-bpdu.c \ + packet-dhcpv6.c \ + packet-diameter.c \ + packet-dlsw.c \ + packet-dns.c \ + packet-dsi.c \ + packet-dvmrp.c \ + packet-eap.c \ + packet-eapol.c \ + packet-eigrp.c \ + packet-esis.c \ + packet-eth.c \ + packet-ethertype.c \ + packet-fc.c \ + packet-fcels.c \ + packet-fcip.c \ + packet-fclctl.c \ + packet-fcp.c \ + packet-fcswils.c \ + packet-fddi.c \ + packet-fix.c \ + packet-fr.c \ + packet-frame.c \ + packet-ftp.c \ + packet-fw1.c \ + packet-giop.c \ + packet-gmrp.c \ + packet-gnutella.c \ + packet-gre.c \ + packet-gssapi.c \ + packet-gtp.c \ + packet-gvrp.c \ + packet-h1.c \ + packet-h261.c \ + packet-hclnfsd.c \ + packet-hsrp.c \ + packet-http.c \ + packet-hyperscsi.c \ + packet-iapp.c \ + packet-ib.c \ + packet-icap.c \ + packet-icmpv6.c\ + packet-icp.c \ + packet-icq.c \ + packet-ieee80211.c \ + packet-ieee8023.c \ + packet-igmp.c \ + packet-igrp.c \ + packet-imap.c \ + packet-ip.c \ + packet-ipfc.c \ + packet-ipp.c \ + packet-ipsec.c \ + packet-ipv6.c \ + packet-ipx.c \ + packet-irc.c \ + packet-isakmp.c\ + packet-iscsi.c \ + packet-isdn.c \ + packet-isis.c \ + packet-isis-clv.c \ + packet-isis-hello.c \ + packet-isis-lsp.c \ + packet-isis-snp.c \ + packet-isl.c \ + packet-isup.c \ + packet-iua.c \ + packet-kerberos.c \ + packet-klm.c \ + packet-l2tp.c \ + packet-lapb.c \ + packet-lapbether.c \ + packet-lapd.c \ + packet-ldap.c \ + packet-ldp.c \ + packet-llc.c \ + packet-lmi.c \ + packet-lmp.c \ + packet-lpd.c \ + packet-m2pa.c \ + packet-m2tp.c \ + packet-m2ua.c \ + packet-m3ua.c \ + packet-mbtcp.c \ + packet-mip.c \ + packet-mmse.c \ + packet-mount.c \ + packet-mpeg1.c \ + packet-mpls.c \ + packet-mrdisc.c \ + packet-msdp.c \ + packet-msnip.c \ + packet-msproxy.c \ + packet-mtp2.c \ + packet-mtp3.c \ + packet-nbipx.c \ + packet-nbns.c \ + packet-ncp.c \ + packet-ncp2222.c \ + packet-ndmp.c \ + packet-ndps.c \ + packet-netbios.c \ + packet-netflow.c \ + packet-nfs.c \ + packet-nfsacl.c \ + packet-nfsauth.c \ + packet-nisplus.c \ + packet-nlm.c \ + packet-nntp.c \ + packet-ntlmssp.c \ + packet-ntp.c \ + packet-null.c \ + packet-osi.c \ + packet-osi-options.c \ + packet-ospf.c \ + packet-pcnfsd.c \ + packet-pflog.c \ + packet-pgm.c \ + packet-pim.c \ + packet-pop.c \ + packet-portmap.c \ + packet-ppp.c \ + packet-pppoe.c \ + packet-pptp.c \ + packet-prism.c \ + packet-q2931.c \ + packet-q931.c \ + packet-qllc.c \ + packet-quake.c \ + packet-quake2.c \ + packet-quake3.c \ + packet-quakeworld.c \ + packet-radius.c\ + packet-ranap.c \ + packet-raw.c \ + packet-rip.c \ + packet-ripng.c \ + packet-rlogin.c \ + packet-rmi.c \ + packet-rpc.c \ + packet-rpl.c \ + packet-rquota.c \ + packet-rsh.c \ + packet-rstat.c \ + packet-rsvp.c \ + packet-rtcp.c \ + packet-rtp.c \ + packet-rtsp.c \ + packet-rwall.c \ + packet-rx.c \ + packet-sadmind.c \ + packet-sap.c \ + packet-sccp.c \ + packet-sccpmg.c \ + packet-scsi.c \ + packet-sctp.c \ + packet-sdp.c \ + packet-sip.c \ + packet-skinny.c \ + packet-slimp3.c \ + packet-sll.c \ + packet-slowprotocols.c \ + packet-smb.c \ + packet-smb-browse.c \ + packet-smb-common.c \ + packet-smb-logon.c \ + packet-smb-mailslot.c \ + packet-smb-pipe.c \ + packet-smpp.c \ + packet-smtp.c \ + packet-sna.c \ + packet-snaeth.c \ + packet-snmp.c \ + packet-socks.c \ + packet-spnego.c \ + packet-spray.c \ + packet-srvloc.c \ + packet-sscop.c \ + packet-ssl.c \ + packet-stat.c \ + packet-stat-notify.c \ + packet-sua.c \ + packet-syslog.c \ + packet-tacacs.c \ + packet-tcp.c \ + packet-tds.c \ + packet-telnet.c\ + packet-tftp.c \ + packet-time.c \ + packet-tns.c \ + packet-tpkt.c \ + packet-tr.c \ + packet-trmac.c \ + packet-tsp.c \ + packet-ucp.c \ + packet-udp.c \ + packet-v120.c \ + packet-vines.c \ + packet-vj.c \ + packet-vlan.c \ + packet-vrrp.c \ + packet-vtp.c \ + packet-wap.c \ + packet-wccp.c \ + packet-wcp.c \ + packet-who.c \ + packet-wlancap.c \ + packet-wsp.c \ + packet-wtls.c \ + packet-wtp.c \ + packet-x11.c \ + packet-x25.c \ + packet-xdmcp.c \ + packet-xot.c \ + packet-xyplex.c \ + packet-yhoo.c \ + packet-ypbind.c \ + packet-yppasswd.c \ + packet-ypserv.c \ + packet-ypxfr.c \ + packet-zebra.c + +if HAVE_PLUGINS +plugin_src = \ + plugins/docsis/packet-bpkmattr.c \ + plugins/docsis/packet-bpkmreq.c \ + plugins/docsis/packet-bpkmrsp.c \ + plugins/docsis/packet-docsis.c \ + plugins/docsis/packet-dsaack.c \ + plugins/docsis/packet-dsareq.c \ + plugins/docsis/packet-dsarsp.c \ + plugins/docsis/packet-dscack.c \ + plugins/docsis/packet-dscreq.c \ + plugins/docsis/packet-dscrsp.c \ + plugins/docsis/packet-dsdreq.c \ + plugins/docsis/packet-dsdrsp.c \ + plugins/docsis/packet-macmgmt.c \ + plugins/docsis/packet-map.c \ + plugins/docsis/packet-regack.c \ + plugins/docsis/packet-regreq.c \ + plugins/docsis/packet-regrsp.c \ + plugins/docsis/packet-rngreq.c \ + plugins/docsis/packet-rngrsp.c \ + plugins/docsis/packet-tlv.c \ + plugins/docsis/packet-uccreq.c \ + plugins/docsis/packet-uccrsp.c \ + plugins/docsis/packet-ucd.c \ + plugins/giop/packet-cosnaming.c \ + plugins/giop/packet-coseventcomm.c \ + plugins/gryphon/packet-gryphon.c \ + plugins/mgcp/packet-mgcp.c \ + plugins/pcli/packet-pcli.c \ + plugins/epa/packet-epa.c + +plugin_static_ldadd = \ + plugins/docsis/packet-bpkmattr-static.o \ + plugins/docsis/packet-bpkmreq-static.o \ + plugins/docsis/packet-bpkmrsp-static.o \ + plugins/docsis/packet-docsis-static.o \ + plugins/docsis/packet-dsaack-static.o \ + plugins/docsis/packet-dsareq-static.o \ + plugins/docsis/packet-dsarsp-static.o \ + plugins/docsis/packet-dscack-static.o \ + plugins/docsis/packet-dscreq-static.o \ + plugins/docsis/packet-dscrsp-static.o \ + plugins/docsis/packet-dsdreq-static.o \ + plugins/docsis/packet-dsdrsp-static.o \ + plugins/docsis/packet-macmgmt-static.o \ + plugins/docsis/packet-map-static.o \ + plugins/docsis/packet-regack-static.o \ + plugins/docsis/packet-regreq-static.o \ + plugins/docsis/packet-regrsp-static.o \ + plugins/docsis/packet-rngreq-static.o \ + plugins/docsis/packet-rngrsp-static.o \ + plugins/docsis/packet-tlv-static.o \ + plugins/docsis/packet-uccreq-static.o \ + plugins/docsis/packet-uccrsp-static.o \ + plugins/docsis/packet-ucd-static.o \ + plugins/giop/packet-cosnaming-static.o \ + plugins/giop/packet-coseventcomm-static.o \ + plugins/gryphon/packet-gryphon-static.o \ + plugins/mgcp/packet-mgcp-static.o \ + plugins/pcli/packet-pcli-static.o \ + plugins/epa/packet-epa-static.o + +plugin_libs = \ + plugins/docsis/docsis.la \ + plugins/giop/cosnaming.la \ + plugins/giop/coseventcomm.la \ + plugins/gryphon/gryphon.la \ + plugins/mgcp/mgcp.la \ + plugins/pcli/pcli.la \ + plugins/epa/epa.la + +plugin_ldadd = \ + "-dlopen" self \ + "-dlopen" plugins/docsis/docsis.la \ + "-dlopen" plugins/giop/cosnaming.la \ + "-dlopen" plugins/giop/coseventcomm.la \ + "-dlopen" plugins/gryphon/gryphon.la \ + "-dlopen" plugins/mgcp/mgcp.la \ + "-dlopen" plugins/pcli/pcli.la \ + "-dlopen" plugins/epa/epa.la +else +plugin_src = + +plugin_static_ldadd = + +plugin_libs = + +plugin_ldadd = +endif + +noinst_HEADERS = \ + packet-afp.h \ + packet-afs-defs.h \ + packet-afs-macros.h \ + packet-afs-register-info.h \ + packet-afs.h \ + packet-arp.h \ + packet-atalk.h \ + packet-atm.h \ + packet-bgp.h \ + packet-bootparams.h \ + packet-chdlc.h \ + packet-clearcase.h \ + packet-clip.h \ + packet-data.h \ + packet-dccp.h \ + packet-dcerpc-browser.h \ + packet-dcerpc-dce122.h \ + packet-dcerpc-dfs.h \ + packet-dcerpc-dnsserver.h \ + packet-dcerpc-lsa.h \ + packet-dcerpc-mapi.h \ + packet-dcerpc-netlogon.h \ + packet-dcerpc-nt.h \ + packet-dcerpc-reg.h \ + packet-dcerpc-samr.h \ + packet-dcerpc-spoolss.h \ + packet-dcerpc-srvsvc.h \ + packet-dcerpc-tapi.h \ + packet-dcerpc-wkssvc.h \ + packet-dcerpc.h \ + packet-ddtp.h \ + packet-diameter-defs.h \ + packet-dns.h \ + packet-dvmrp.h \ + packet-esis.h \ + packet-eth.h \ + packet-fc.h \ + packet-fcbls.h \ + packet-fcels.h \ + packet-fclctl.h \ + packet-fcp.h \ + packet-fcswils.h \ + packet-fddi.h \ + packet-frame.h \ + packet-giop.h \ + packet-gnutella.h \ + packet-gssapi.h \ + packet-gtp.h \ + packet-hclnfsd.h \ + packet-http.h \ + packet-ieee80211.h \ + packet-ieee8023.h \ + packet-igmp.h \ + packet-ip.h \ + packet-ipsec.h \ + packet-ipv6.h \ + packet-ipx.h \ + packet-isis-clv.h \ + packet-isis-hello.h \ + packet-isis-lsp.h \ + packet-isis-snp.h \ + packet-isis.h \ + packet-isl.h \ + packet-kerberos.h \ + packet-klm.h \ + packet-ldap.h \ + packet-llc.h \ + packet-mount.h \ + packet-mrdisc.h \ + packet-msnip.h \ + packet-mtp3.h \ + packet-ncp-int.h \ + packet-ndps.h \ + packet-netbios.h \ + packet-nfs.h \ + packet-nisplus.h \ + packet-nlm.h \ + packet-ntp.h \ + packet-null.h \ + packet-osi-options.h \ + packet-osi.h \ + packet-pcnfsd.h \ + packet-pflog.h \ + packet-pim.h \ + packet-portmap.h \ + packet-ppp.h \ + packet-prism.h \ + packet-q931.h \ + packet-raw.h \ + packet-ripng.h \ + packet-rmi.h \ + packet-rpc.h \ + packet-rquota.h \ + packet-rsvp.h \ + packet-rtcp.h \ + packet-rtp.h \ + packet-rwall.h \ + packet-rx.h \ + packet-scsi.h \ + packet-sll.h \ + packet-smb-browse.h \ + packet-smb-common.h \ + packet-smb-logon.h \ + packet-smb-mailslot.h \ + packet-smb-pipe.h \ + packet-sna.h \ + packet-snmp.h \ + packet-spray.h \ + packet-stat-notify.h \ + packet-stat.h \ + packet-tcp.h \ + packet-tns.h \ + packet-tpkt.h \ + packet-tr.h \ + packet-udp.h \ + packet-vines.h \ + packet-vlan.h \ + packet-wap.h \ + packet-wccp.h \ + packet-wlancap.h \ + packet-wsp.h \ + packet-wtls.h \ + packet-wtp.h \ + packet-x11-keysym.h \ + packet-yhoo.h \ + packet-ypbind.h \ + packet-yppasswd.h \ + packet-ypserv.h \ + packet-ypxfr.h + +ETHEREAL_COMMON_SRC = \ + afn.c \ + afn.h \ + aftypes.h \ + alignment.h \ + arcnet_pids.h \ + asn1.c \ + asn1.h \ + bridged_pids.h \ + capture_stop_conditions.c \ + capture_stop_conditions.h \ + cfile.c \ + cfile.h \ + color.h \ + column.c \ + column.h \ + conditions.c \ + conditions.h \ + crypt-md4.c \ + crypt-md4.h \ + crypt-rc4.c \ + crypt-rc4.h \ + etypes.h \ + file.h \ + follow.c \ + follow.h \ + format-oid.h \ + greproto.h \ + in_cksum.c \ + in_cksum.h \ + ipproto.c \ + ipproto.h \ + llcsaps.h \ + nlpid.h \ + oui.h \ + pcap-util.c \ + pcap-util.h \ + ppptypes.h \ + prefs-int.h \ + prefs.c \ + prefs.h \ + print.c \ + print.h \ + ps.c \ + ps.h \ + ptvcursor.c \ + ptvcursor.h \ + reassemble.c \ + reassemble.h \ + register.h \ + ringbuffer.c \ + ringbuffer.h \ + rpc_defrag.h \ + smb.h \ + tap.c \ + tap.h \ + util.c \ + util.h \ + x11-declarations.h \ + x11-register-info.h \ + x264_prt_id.h \ + xdlc.c \ + xdlc.h \ + xmlstub.c \ + xmlstub.h + +BUILT_SOURCES = \ + x11-declarations.h \ + x11-register-info.h + +ethereal_SOURCES = \ + $(DISSECTOR_SRC) \ + $(ETHEREAL_COMMON_SRC) \ + register.c \ + capture.c \ + capture.h \ + file.c \ + filters.c \ + filters.h \ + globals.h \ + menu.h \ + progress_dlg.h \ + proto_hier_stats.h \ + proto_hier_stats.c \ + simple_dialog.h \ + statusbar.h \ + summary.c \ + summary.h \ + ui_util.h + +ethereal_static_SOURCES = \ + $(DISSECTOR_SRC) \ + $(ETHEREAL_COMMON_SRC) \ + register-static.c \ + capture.c \ + capture.h \ + file.c \ + filters.c \ + filters.h \ + globals.h \ + menu.h \ + progress_dlg.h \ + proto_hier_stats.h \ + proto_hier_stats.c \ + simple_dialog.h \ + statusbar.h \ + summary.c \ + summary.h \ + ui_util.h + +EXTRA_ethereal_SOURCES = \ + snprintf.c \ + snprintf.h \ + snprintf-imp.h \ + strerror.c \ + strerror.h \ + strcasecmp.c \ + strncasecmp.c \ + mkstemp.c \ + mkstemp.h \ + strptime.c \ + strptime.h + +# Optional objects that I know how to build. These will be +# linked into the ethereal executable. +# They will also be linked into the tethereal executable; if this +# list ever grows to include something that can't be linked with +# tethereal, or if tethereal needs something that ethereal doesn't, +# we should probably split this into stuff needed both +# by ethereal and tethereal and stuff needed only by one or the +# other. +ethereal_optional_objects = @SNPRINTF_O@ @STRERROR_O@ \ + @STRCASECMP_O@ @STRNCASECMP_O@ @MKSTEMP_O@ @STRPTIME_O@ + +# Additional libs that I know how to build. These will be +# linked into the ethereal executable. +ethereal_additional_libs = \ + wiretap/libwiretap.a \ + gtk/libui.a \ + epan/libethereal.a \ + epan/ftypes/libftypes.a \ + epan/dfilter/libdfilter.a + +# This is the automake dependency variable for the executable +ethereal_DEPENDENCIES = \ + $(ethereal_optional_objects) \ + $(ethereal_additional_libs) \ + $(plugin_libs) + +ethereal_static_DEPENDENCIES = \ + $(ethereal_optional_objects) \ + $(ethereal_additional_libs) + +# This automake variable adds to the link-line for the executable. +# +# Note that Ethereal doesn't have to be linked with @GLIB_LIBS@, as +# they are included in @GTK_LIBS@, and doesn't have to be linked with +# @SOCKET_LIBS@ or @NSL_LIBS@, as those should also be included in +# @GTK_LIBS@ (as those are also needed for X applications, and GTK+ +# applications are X applications). +ethereal_LDADD = \ + $(ethereal_optional_objects) \ + $(ethereal_additional_libs) \ + @SNMP_LIBS@ @SSL_LIBS@ \ + $(plugin_ldadd) \ + @PCAP_LIBS@ @GTK_LIBS@ + +ethereal_static_LDADD = \ + "-all-static" \ + $(plugin_static_ldadd) \ + $(ethereal_optional_objects) \ + $(ethereal_additional_libs) \ + @SNMP_LIBS@ @SSL_LIBS@ \ + @PCAP_LIBS@ @GTK_LIBS@ + +ethereal_LDFLAGS = -export-dynamic +ethereal_static_LDFLAGS = -Wl,-static + +TETHEREAL_TAP_SRC = \ + tap-dcerpcstat.c \ + tap-iostat.c \ + tap-protocolinfo.c \ + tap-protohierstat.c \ + tap-rpcstat.c \ + tap-rpcprogs.c + +tethereal_SOURCES = \ + $(DISSECTOR_SRC) \ + $(ETHEREAL_COMMON_SRC) \ + $(TETHEREAL_TAP_SRC) \ + tethereal-tap-register.c \ + register.c \ + tethereal.c + +tethereal_static_SOURCES = \ + $(DISSECTOR_SRC) \ + $(ETHEREAL_COMMON_SRC) \ + $(TETHEREAL_TAP_SRC) \ + tethereal-tap-register.c \ + register-static.c \ + tethereal.c + +# Additional libs that I know how to build. These will be +# linked into the tethereal executable. +tethereal_additional_libs = \ + wiretap/libwiretap.a \ + epan/libethereal.a \ + epan/ftypes/libftypes.a \ + epan/dfilter/libdfilter.a + +# This is the automake dependency variable for the executable +tethereal_DEPENDENCIES = \ + $(ethereal_optional_objects) \ + $(tethereal_additional_libs) \ + $(plugin_libs) + +tethereal_static_DEPENDENCIES = \ + $(ethereal_optional_objects) \ + $(tethereal_additional_libs) + +# This automake variable adds to the link-line for the executable +tethereal_LDADD = wiretap/libwiretap.a \ + $(ethereal_optional_objects) \ + $(tethereal_additional_libs) \ + @SNMP_LIBS@ @SSL_LIBS@ \ + $(plugin_ldadd) \ + @GLIB_LIBS@ -lm \ + @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ + +tethereal_static_LDADD = \ + "-all-static" \ + $(plugin_static_ldadd) \ + wiretap/libwiretap.a \ + $(ethereal_optional_objects) \ + $(tethereal_additional_libs) \ + @SNMP_LIBS@ @SSL_LIBS@ \ + @GLIB_LIBS@ -lm \ + @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ + +tethereal_LDFLAGS = -export-dynamic +tethereal_static_LDFLAGS = -Wl,-static + +# Optional objects that I know how to build, and that are needed by +# text2pcap. +text2pcap_optional_objects = @STRERROR_O@ @STRPTIME_O@ + +text2pcap_SOURCES = text2pcap.c text2pcap-scanner.l +text2pcap_DEPENDENCIES = text2pcap.h + +# This automake variable adds to the link-line for the executable +text2pcap_LDADD = $(text2pcap_optional_objects) \ + @GLIB_LIBS@ -lm + +mergecap_SOURCES = mergecap.c +mergecap_DEPENDENCIES = wiretap/libwiretap.a + +editcap_SOURCES = editcap.c + +# This is the automake dependency variable for the executable +editcap_DEPENDENCIES = wiretap/libwiretap.a + +# This automake variable adds to the link-line for the executable +editcap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@ +mergecap_LDADD = wiretap/libwiretap.a @GLIB_LIBS@ + +# +# Build various header files for the X11 dissector. +# +x11-declarations.h x11-register-info.h: x11-fields process-x11-fields.pl + $(PERL) $(srcdir)/process-x11-fields.pl <$(srcdir)/x11-fields + +# +# Build shell scripts by doing variable substitution. +# Taken from autoconf 2.13. +# +editsh = sed -e 's,@''SHELL''@,$(SHELL),g' + +SUFFIXES = .sh +.sh: + rm -f $@ $@.tmp + $(editsh) $< > $@.tmp && chmod +x $@.tmp && mv $@.tmp $@ + +# +# Build "register.c", which contains a function "register_all_protocols()" +# that calls the register routines for all protocols. +# +# We do this by grepping through sources. If that turns out to be too slow, +# maybe we could just require every .o file to have an register routine +# of a given name (packet-aarp.o -> proto_register_aarp, etc.). +# +# Formatting conventions: The name of the proto_register_* routines must +# start in column zero, or must be preceded only by "void " starting in +# column zero, and must not be inside #if. +# +# We assume that all dissector routines are in "packet-XXX.c" files. +# +# For some unknown reason, having a big "for" loop in the Makefile +# to scan all the "packet-XXX.c" files doesn't work with some "make"s; +# they seem to pass only the first few names in the list to the shell, +# for some reason. +# +# Therefore, we have a script to generate the "register.c" file. +# +# The first argument is the name of the file to write. +# The second argument is the directory in which the source files live. +# All subsequent arguments are the files to scan. +# +register.c: $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc + @echo Making register.c + @$(srcdir)/make-reg-dotc register.c $(srcdir) $(DISSECTOR_SRC) + +register-static.c: $(plugin_src) $(DISSECTOR_SRC) $(srcdir)/make-reg-dotc + @echo Making register-static.c + @$(srcdir)/make-reg-dotc register-static.c $(srcdir) $(plugin_src) $(DISSECTOR_SRC) + +# +# Build "tethereal-tap-register.c", which contains a function +# "register_all_tap_listeners()" +# that calls the register routines for all tehtereal tap listeners. +# +# We do this by grepping through sources. +# +# Formatting conventions: The name of the tap_listener_register_* +# routines must start in column zero, or must be preceded only by +# "void " starting in column zero, and must not be inside #if. +# +# The first argument is the directory in which the source files live. +# All subsequent arguments are the files to scan. +# +tethereal-tap-register.c: $(TETHEREAL_TAP_SRC) $(srcdir)/make-tapreg-dotc + @echo Making tethereal-tap-register.c + @$(srcdir)/make-tapreg-dotc tethereal-tap-register.c $(srcdir) $(TETHEREAL_TAP_SRC) + +ps.c: print.ps rdps + ./rdps $(srcdir)/print.ps ps.c + +rdps: rdps.c + $(CC) $(CFLAGS) -o rdps $(srcdir)/rdps.c + +randpkt.o: randpkt.c + $(CC) -DHAVE_CONFIG_H -I. `glib-config --cflags` -c $(srcdir)/randpkt.c + +randpkt: randpkt.o wiretap/libwiretap.a + $(LINK) -o randpkt randpkt.o wiretap/libwiretap.a `glib-config --libs` -lz + + +dftest_SOURCES = \ + $(DISSECTOR_SRC) \ + $(ETHEREAL_COMMON_SRC) \ + register.c \ + dftest.c + +dftest_additional_libs = \ + wiretap/libwiretap.a \ + epan/libethereal.a \ + epan/ftypes/libftypes.a \ + epan/dfilter/libdfilter.a + +dftest_DEPENDENCIES = \ + $(ethereal_optional_objects) \ + $(dftest_additional_libs) \ + $(plugin_libs) + +# This automake variable adds to the link-line for the executable +dftest_LDADD = \ + $(ethereal_optional_objects) \ + $(dftest_additional_libs) \ + @SNMP_LIBS@ @SSL_LIBS@ \ + $(plugin_ldadd) \ + @GLIB_LIBS@ -lm \ + @PCAP_LIBS@ @SOCKET_LIBS@ @NSL_LIBS@ + +dftest_LDFLAGS = -export-dynamic + +CLEANFILES = \ + idl2eth + +DISTCLEANFILES = \ + aclocal-missing/*.m4 \ + register.c \ + register-static.c \ + rdps \ + ps.c \ + *~ + +EXTRA_DIST = \ + Ethereal.desktop \ + FAQ \ + INSTALL.configure \ + Makefile.nmake \ + README.aix \ + README.bsd \ + README.hpux \ + README.irix \ + README.linux \ + README.tru64 \ + README.vmware \ + README.win32 \ + TODO \ + aclocal-fallback/glib-2.0.m4 \ + aclocal-fallback/glib.m4 \ + aclocal-fallback/gtk-2.0.m4 \ + aclocal-fallback/gtk.m4 \ + aclocal-flags \ + autogen.sh \ + capture-wpcap.c \ + capture-wpcap.h \ + cleanbld.bat \ + config.h.win32 \ + config.nmake \ + debian/README.debian \ + debian/changelog \ + debian/control \ + debian/copyright \ + debian/dirs \ + debian/docs \ + debian/menu \ + debian/postinst \ + debian/prerm \ + debian/rules \ + dictionary.dtd \ + dictionary.xml \ + doc/Makefile.am \ + doc/Makefile.nmake \ + doc/README.design \ + doc/README.developer \ + doc/README.idl2eth \ + doc/README.plugins \ + doc/README.regression \ + doc/README.tvbuff \ + doc/dfilter2pod.pl \ + doc/editcap.pod \ + doc/ethereal.pod.template \ + doc/idl2eth.pod \ + doc/mergecap.pod \ + doc/randpkt.txt \ + doc/tethereal.pod.template \ + doc/text2pcap.pod \ + editcap.c \ + ethereal_be.py \ + ethereal_gen.py \ + getopt.c \ + getopt.h \ + idl2eth.sh \ + image/Makefile.nmake \ + image/README.image \ + image/clist_ascend.xpm \ + image/clist_descend.xpm \ + image/dn_arrow.xpm \ + image/editcap.rc.in \ + image/eexcl3d64.xpm \ + image/eicon3d16.xpm \ + image/eicon3d32.xpm \ + image/eicon3d48.xpm \ + image/eicon3d64.xpm \ + image/elogo3d48x48.png \ + image/ethereal.ico \ + image/ethereal.rc.in \ + image/ethereal48x48-trans.png \ + image/ethereal48x48.png \ + image/hi16-app-ethereal.png \ + image/hi32-app-ethereal.png \ + image/hi48-app-ethereal.png \ + image/icon-ethereal.xpm \ + image/icon-excl.xpm \ + image/lo16-app-ethereal.png \ + image/lo32-app-ethereal.png \ + image/lo48-app-ethereal.png \ + image/mergecap.rc.in \ + image/nsis-checked.bmp \ + image/nsis-unchecked.bmp \ + image/tethereal.rc.in \ + image/text2pcap.rc.in \ + image/up_arrow.xpm \ + make-manuf \ + make-reg-dotc \ + make-reg-dotc.py \ + make-tapreg-dotc \ + manuf \ + manuf.tmpl \ + mergecap.c \ + mobileipv4.xml \ + nasreq.xml \ + ncp2222.py \ + packet-ncp2222.inc \ + print.ps \ + process-x11-fields.pl \ + randpkt.c \ + rdps.c \ + sunping.xml \ + text2pcap-scanner.l \ + text2pcap.c \ + text2pcap.h \ + wka.tmpl \ + x11-fields + +if SETUID_INSTALL +install-exec-hook: + -chmod +s $(DESTDIR)$(bindir)/ethereal + -chmod +s $(DESTDIR)$(bindir)/tethereal + -chmod +s $(DESTDIR)$(bindir)/ethereal_static +else +install-exec-hook: +endif + +# +# Currently register.c can be included in the distribution because +# we always build all protocol dissectors. We used to have to check +# whether or not to build the snmp dissector. If we again need to +# variably build something, making register.c non-portable, uncomment +# the dist-hook line below. +# +# Oh, yuk. We don't want to include "register.c" in the distribution, as +# its contents depend on the configuration, and therefore we want it +# to be built when the first "make" is done; however, Automake insists +# on putting *all* source into the distribution. +# +# We work around this by having a "dist-hook" rule that deletes +# "register.c", so that "dist" won't pick it up. +# +#dist-hook: +# @rm -f $(distdir)/register.c + +# Hack around the problem that I haven't found a way to include an +# empty directroy in the distribution tarball. +dist-hook: + mkdir -p aclocal-missing + +DIST_SUBDIRS = tools wiretap doc epan plugins packaging gtk + +if HAVE_PLUGINS +SUBDIRS = tools wiretap doc epan plugins packaging @ethereal_SUBDIRS@ +else +SUBDIRS = tools wiretap doc epan packaging @ethereal_SUBDIRS@ +endif + +ethereal.1: ethereal doc/ethereal.pod.template + (cd doc ; \ + $(MAKE) ../ethereal.1 ) + +tethereal.1: tethereal doc/tethereal.pod.template + (cd doc ; \ + $(MAKE) ../tethereal.1 ) + +editcap.1: doc/editcap.pod + (cd doc ; \ + $(MAKE) ../editcap.1 ) + +idl2eth.1: doc/idl2eth.pod + (cd doc ; \ + $(MAKE) ../idl2eth.1 ) + +mergecap.1: doc/mergecap.pod + (cd doc ; \ + $(MAKE) ../mergecap.1 ) + +text2pcap.1: doc/text2pcap.pod + (cd doc ; \ + $(MAKE) ../text2pcap.1 ) + +packet-ncp2222.c : ncp2222.py + $(PYTHON) $(srcdir)/ncp2222.py -o $@ + +libtool: $(LIBTOOL_DEPS) + $(SHELL) ./config.status --recheck + +# We load top_stagedir with an explicit path so that libtool doesn't freak. +top_stagedir=`cd $(top_srcdir) && pwd`/packaging/svr4.stage +stagedir=$(top_stagedir)/$(PACKAGE).stage +host_cpu=@host_cpu@ +host_os=@host_os@ + +svr4-package: $(bin_SCRIPTS) $(lib_LTLIBRARIES) + if test x$(HAVE_SVR4_PACKAGING) = xyes ; then \ + rm -rf $(stagedir) ; \ + $(MAKE) DESTDIR=$(stagedir) install; \ + $(srcdir)/packaging/svr4/mkpkg \ + $(PACKAGE) \ + $(PACKAGE)-$(VERSION)-$(host_os)-$(host_cpu)-local \ + $(prefix) \ + $(top_stagedir) ; \ + else \ + echo "Error: SVR4 packaging tools not found." ; \ + echo "Package build abandoned." ; \ + fi + +solaris-package: svr4-package + +rpm_topdir=`cd $(top_srcdir) && pwd`/packaging/rpm +rpm-package: dist + if test x$(HAVE_RPM) = xyes ; then \ + cd $(rpm_topdir) ; \ + mkdir -p BUILD RPMS SOURCES ; \ + cd SOURCES ; \ + ln -s ../../../$(distdir).tar.gz ; \ + cd .. ; \ + rpm --define "_topdir `cd . && pwd`" -bb SPECS/ethereal.spec && \ + echo "Package successfully built in `pwd`/RPMS." ; \ + else \ + echo "Error: RPM executable and/or source directory not found." ; \ + fi +srpm-package: dist + if test x$(HAVE_RPM) = xyes ; then \ + cd $(rpm_topdir) ; \ + mkdir -p BUILD SRPMS SOURCES ; \ + cd SOURCES ; \ + ln -s ../../../$(distdir).tar.gz ; \ + cd .. ; \ + rpm --define "_topdir `cd . && pwd`" -bs SPECS/ethereal.spec && \ + echo "Package successfully built in `pwd`/SRPMS." ; \ + else \ + echo "Error: RPM executable and/or source directory not found." ; \ + fi + +debian-package: debian/rules + dpkg-buildpackage -rfakeroot -us -uc + +clean-local: + rm -rf $(top_stagedir) diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/Makefile.am b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..4a7a67226c758a75b895ad5495e18fe5e1ca4648 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/Makefile.am @@ -0,0 +1,34 @@ +# Makefile.am +# Automake file for Ethereal +# +# $Id$ +# +# Ethereal - Network traffic analyzer +# By Gerald Combs <gerald@ethereal.com> +# Copyright 1998 Gerald Combs +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +SUBDIRS = docsis giop gryphon mgcp pcli epa + +plugindir = @plugindir@ + +EXTRA_DIST = \ + plugin_api.c \ + plugin_api.h \ + plugin_api_decls.h \ + plugin_api_defs.h \ + plugin_table.h \ + Makefile.nmake diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/.libs/epa.lai b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/.libs/epa.lai new file mode 100644 index 0000000000000000000000000000000000000000..bccdd3c303a99b9b89f4c906eb59016dc5619835 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/.libs/epa.lai @@ -0,0 +1,32 @@ +# epa.la - a libtool library file +# Generated by ltmain.sh - GNU libtool 1.4.3 (1.922.2.111 2002/10/23 02:54:36) +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='epa.so' + +# Names of this library. +library_names='epa.so epa.so epa.so' + +# The name of the static archive. +old_library='epa.a' + +# Libraries that this one depends upon. +dependency_libs=' -L/usr/local/lib' + +# Version information for epa. +current=0 +age=0 +revision=0 + +# Is this an already installed library? +installed=yes + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/usr/lib/ethereal/plugins/0.9.8' diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/AUTHORS b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/AUTHORS new file mode 100644 index 0000000000000000000000000000000000000000..ab6dab3a21890633c6d3623c49b022ddb15701e9 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/AUTHORS @@ -0,0 +1,4 @@ +Author : +Klaas Jan Wierenga <wierenga@astron.nl> + + diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/COPYING b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/COPYING new file mode 100644 index 0000000000000000000000000000000000000000..d60c31a97a544b53039088d14fe9114583c0efc3 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/COPYING @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/ChangeLog b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/ChangeLog new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.am b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.am new file mode 100644 index 0000000000000000000000000000000000000000..8b334e997dafba90ee32f9b1c05f775ba8c7eb53 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.am @@ -0,0 +1,55 @@ +# Makefile.am +# Automake file for Ethereal/EPA dissectors +# +# $Id$ +# +# Copyright 2004, Astron +# Klaas Jan Wierenga <wierenga@astron.nl> +# +# Ethereal - Network traffic analyzer +# By Gerald Combs <gerald@ethereal.com> +# Copyright 1998 Gerald Combs +# +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# + +INCLUDES = -I$(top_srcdir) + +plugindir = @plugindir@ + +plugin_LTLIBRARIES = epa.la +epa_la_SOURCES = packet-epa.c moduleinfo.h +epa_la_LDFLAGS = -module -avoid-version + +# Libs must be cleared, or else libtool won't create a shared module. +# If your module needs to be linked against any particular libraries, +# add them here. +LIBS = + + +# The following allows a non-plugin version of the module to be built to +# be linked with a static ethereal binary. +# +epa_la_DEPENDENCIES = packet-epa-static.o + +packet-epa-static.o: packet-epa.c moduleinfo.h + $(LTCOMPILE) -c -o packet-epa-static.o -D__ETHEREAL_STATIC__ $(srcdir)/packet-epa.c + +CLEANFILES = \ + epa + +EXTRA_DIST = \ + Makefile.nmake diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.nmake b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.nmake new file mode 100644 index 0000000000000000000000000000000000000000..8bde720a28ea529723d12f916125851d3f40ad6d --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/Makefile.nmake @@ -0,0 +1,20 @@ +# +# $Id$ +# +include ..\..\config.nmake + +############### no need to modify below this line ######### + +CFLAGS=/DHAVE_CONFIG_H /I../.. /I../../wiretap \ + /I$(GLIB_DIR) /I$(GTK_DIR) /I$(GLIB_DIR)/gmodule \ + /I$(GTK_DIR)\gdk /I$(GTK_DIR)\gdk\win32 \ + /I$(PCAP_DIR)\include $(LOCAL_CFLAGS) + +OBJECTS=packet-epa.obj + +epa.dll epa.exp epa.lib : packet-epa.obj ..\plugin_api.obj + link -dll /out:epa.dll packet-epa.obj ..\plugin_api.obj \ + $(GLIB_DIR)\glib-$(GLIB_VERSION).lib + +clean: + rm -f $(OBJECTS) epa.dll epa.exp epa.lib diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/moduleinfo.h b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/moduleinfo.h new file mode 100644 index 0000000000000000000000000000000000000000..4ee6930d0e4aa9958fd1821705e33e8850b66292 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/moduleinfo.h @@ -0,0 +1,17 @@ +/* Included *after* config.h, in order to re-define these macros */ + +#ifdef PACKAGE +#undef PACKAGE +#endif + +/* Name of package */ +#define PACKAGE "epa" + + +#ifdef VERSION +#undef VERSION +#endif + +/* Version number of package */ +#define VERSION "0.0.1" + diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.c b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.c new file mode 100644 index 0000000000000000000000000000000000000000..8fae797b29ca25c9182b060636dec23b19f13413 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.c @@ -0,0 +1,435 @@ +/* packet-epa.c + * Routines for LOFAR Embedded Processing Application protocol dissection + * Copyright 2004, Klaas Jan Wierenga <wierenga@astron.nl> + * + * $Id$ + * + * Ethereal - Network traffic analyzer + * By Gerald Combs <gerald@ethereal.com> + * Copyright 1998 Gerald Combs + * + * Copied from WHATEVER_FILE_YOU_USED (where "WHATEVER_FILE_YOU_USED" + * is a dissector file; if you just copied this from README.developer, + * don't bother with the "Copied from" - you don't even need to put + * in a "Copied from" if you copied an existing dissector, especially + * if the bulk of the code in the new dissector is your code) + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif + +#include <stdio.h> +#include <stdlib.h> +#include <string.h> + +#include <glib.h> + +#ifdef NEED_SNPRINTF_H +# include "snprintf.h" +#endif + +#include <epan/packet.h> +#include "packet-epa.h" + +/** + * EPA protocol constants and value to string mappings. + */ +static const value_string type_vals[] = +{ + { 0x00, "Invalid message type" }, + { 0x01, "Read request (READ)" }, + { 0x02, "Write command (WRITE)" }, + { 0x03, "Read result (READRES)" }, + { 0x04, "Read error (READERR)" }, + { 0, NULL }, +}; + +static const value_string page_vals[] = +{ + { 0x00, "Write page for LCU (INACTIVE)" }, + { 0x01, "Read page for FPGA (ACTIVE)" }, + { 0, NULL }, +}; + +static const value_string dst_vals[] = +{ + { 0x00, "Beamlet processor" }, + { 0x80, "RSP Main FPGA" }, + { 0, NULL }, +}; + +static const value_string pid_vals[] = +{ + { 0x00, "Status overview (STATUS)" }, + { 0x01, "Selftest functionality (TST)" }, + { 0x02, "FPGA configuration and reset (CFG)" }, + { 0x03, "Waveform generator (WG)" }, + { 0x04, "Subband select (SS)" }, + { 0x05, "Beamformer (BF)" }, + { 0x06, "Beamlet statistics (ST)" }, + { 0x07, "Subband statistics (STSUB)" }, + { 0x08, "RCU Control (RCU)" }, + { 0, NULL }, +}; + +static const value_string status_vals[] = +{ + { 0x00, "RSP Status" }, + { 0x01, "Version" }, + { 0, NULL }, +}; + +static const value_string tst_vals[] = +{ + { 0x00, "Selftest" }, + { 0, NULL }, +}; + +static const value_string cfg_vals[] = +{ + { 0x00, "Reset" }, + { 0x01, "Reprogram" }, + { 0, NULL }, +}; + +static const value_string wg_vals[] = +{ + { 0x00, "Waveform generator settings" }, + { 0x01, "User waveform" }, + { 0x02, "Soft PPS" }, + { 0, NULL }, +}; + +static const value_string ss_vals[] = +{ + { 0x00, "Number of selected subbands" }, + { 0x01, "Subband Select parameters" }, + { 0, NULL }, +}; + +static const value_string bf_vals[] = +{ + { 0x00, "Coefs Xre" }, + { 0x01, "Coefs Xim" }, + { 0x02, "Coefs Yre" }, + { 0x03, "Coefs Yim" }, + { 0, NULL }, +}; + +static const value_string st_vals[] = +{ + { 0x00, "Mean" }, + { 0x01, "Power" }, + { 0, NULL }, +}; + +static const value_string stsub_vals[] = +{ + { 0x00, "Mean" }, + { 0x01, "Power" }, + { 0, NULL }, +}; + +static const value_string rcu_vals[] = +{ + { 0x00, "RCU Settings" }, + { 0, NULL }, +}; + +/** + * Pluginize BEGIN + * + * Pluginize the EPA dissector + */ +#include "plugins/plugin_api.h" +#include "moduleinfo.h" +#include <gmodule.h> +#include "plugins/plugin_api_defs.h" + +#ifndef __ETHEREAL_STATIC__ +G_MODULE_EXPORT const gchar version[] = "1.0"; +G_MODULE_EXPORT void plugin_init(plugin_address_table_t *pat); +G_MODULE_EXPORT void plugin_reg_handoff(void); +#endif + +/** + * Pluginize END + */ + +/** + * Constants + */ +#define ETHERTYPE_EPA 0x10FA + +/* Initialize the protocol and registered fields */ +static int proto_epa = -1; +static int hf_epa_type = -1; +static int hf_epa_ffi = -1; +static int hf_epa_seqnr = -1; +static int hf_epa_addr_dstid = -1; +static int hf_epa_addr_pid = -1; +static int hf_epa_addr_regid = -1; +static int hf_epa_addr_pageid = -1; +static int hf_epa_offset = -1; +static int hf_epa_size = -1; +static int hf_epa_data = -1; + +/* Initialize the subtree pointers */ +static gint ett_epa = -1; + +/* Code to actually dissect the packets */ +static void +dissect_epa(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) +{ + + /* Set up structures needed to add the protocol subtree and manage it */ + proto_item *ti; + proto_tree *epa_tree; + + /* Make entries in Protocol column and Info column on summary display */ + if (check_col(pinfo->cinfo, COL_PROTOCOL)) + col_set_str(pinfo->cinfo, COL_PROTOCOL, "epa"); + + /* This field shows up as the "Info" column in the display; you should make + it, if possible, summarize what's in the packet, so that a user looking + at the list of packets can tell what type of packet it is. See section 1.5 + for more information. + + If you are setting it to a constant string, use "col_set_str()", as + it's more efficient than the other "col_set_XXX()" calls. + + If you're setting it to a string you've constructed, or will be + appending to the column later, use "col_add_str()". + + "col_add_fstr()" can be used instead of "col_add_str()"; it takes + "printf()"-like arguments. Don't use "col_add_fstr()" with a format + string of "%s" - just use "col_add_str()" or "col_set_str()", as it's + more efficient than "col_add_fstr()". + + If you will be fetching any data from the packet before filling in + the Info column, clear that column first, in case the calls to fetch + data from the packet throw an exception because they're fetching data + past the end of the packet, so that the Info column doesn't have data + left over from the previous dissector; do + + if (check_col(pinfo->cinfo, COL_INFO)) + col_clear(pinfo->cinfo, COL_INFO); + + */ + + if (check_col(pinfo->cinfo, COL_INFO)) + col_clear(pinfo->cinfo, COL_INFO); + + /* In the interest of speed, if "tree" is NULL, don't do any work not + necessary to generate protocol tree items. */ + if (tree) + { + + /* NOTE: The offset and length values in the call to + "proto_tree_add_item()" define what data bytes to highlight in the hex + display window when the line in the protocol tree display + corresponding to that item is selected. + + Supplying a length of -1 is the way to highlight all data from the + offset to the end of the packet. */ + + /* create display subtree for the protocol */ + ti = proto_tree_add_item(tree, proto_epa, tvb, 0, -1, FALSE); + + epa_tree = proto_item_add_subtree(ti, ett_epa); + + /* add an item to the subtree, see section 1.6 for more information */ + + /* Continue adding tree items to process the packet here */ + proto_tree_add_item(epa_tree, hf_epa_type, tvb, 0, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_ffi, tvb, 1, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_seqnr, tvb, 2, 2, TRUE); + proto_tree_add_item(epa_tree, hf_epa_addr_dstid, tvb, 4, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_addr_pid, tvb, 5, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_addr_regid, tvb, 6, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_addr_pageid, tvb, 7, 1, FALSE); + proto_tree_add_item(epa_tree, hf_epa_offset, tvb, 8, 2, TRUE); + proto_tree_add_item(epa_tree, hf_epa_size, tvb, 10, 2, TRUE); + proto_tree_add_item(epa_tree, hf_epa_data, tvb, 12, -1, FALSE); + + } + + /* fill the INFO column */ + if (check_col(pinfo->cinfo, COL_INFO)) + { + char* typestr = type_vals[tvb_get_guint8(tvb, 0)].strptr; + char* regstr = 0; + guint8 reg = tvb_get_guint8(tvb, 6); + guint8 pid = tvb_get_guint8(tvb, 5); + + switch (pid) + { + case 0x00: + regstr = status_vals[reg].strptr; + break; + + case 0x01: + regstr = tst_vals[reg].strptr; + break; + + case 0x02: + regstr = cfg_vals[reg].strptr; + break; + + case 0x03: + regstr = wg_vals[reg].strptr; + break; + + case 0x04: + regstr = ss_vals[reg].strptr; + break; + + case 0x05: + regstr = bf_vals[reg].strptr; + break; + + case 0x06: + regstr = st_vals[reg].strptr; + break; + + case 0x07: + regstr = stsub_vals[reg].strptr; + break; + + case 0x08: + regstr = rcu_vals[reg].strptr; + break; + } + + if (!typestr) typestr = "Unknown type?"; + if (!regstr) regstr = "Unknown register?"; + + col_add_fstr(pinfo->cinfo, COL_INFO, "%s; %s", typestr, regstr); + } + + /* If this protocol has a sub-dissector call it here, see section 1.8 */ +} + + +/* Register the protocol with Ethereal */ + +/* this format is require because a script is used to build the C function + that calls all the protocol registration. +*/ + +void +proto_register_epa(void) +{ + + /* Setup list of header fields See Section 1.6.1 for details*/ + static hf_register_info hf[] = { + { &hf_epa_type, + { "type", "epa.type", + FT_UINT8, BASE_HEX, VALS(type_vals), 0x0, + "Message type", HFILL } + }, + { &hf_epa_ffi, + { "ffi", "epa.ffi", + FT_UINT8, BASE_HEX, NULL, 0x0, + "For Future Information", HFILL } + }, + { &hf_epa_seqnr, + { "seqnr", "epa.seqnr", + FT_UINT16, BASE_DEC, NULL, 0x0, + "Sequence number", HFILL } + }, + { &hf_epa_addr_dstid, + { "addr_dstid", "epa.addr_dstid", + FT_UINT8, BASE_HEX, VALS(dst_vals), 0x0, + "Destination ID", HFILL } + }, + { &hf_epa_addr_pid, + { "addr_pid", "epa.addr_pid", + FT_UINT8, BASE_HEX, VALS(pid_vals), 0x0, + "Process ID", HFILL } + }, + { &hf_epa_addr_regid, + { "addr_regid", "epa.addr_regid", + FT_UINT8, BASE_HEX, NULL, 0x0, + "Register ID", HFILL } + }, + { &hf_epa_addr_pageid, + { "addr_pageid", "epa.addr_pageid", + FT_UINT8, BASE_HEX, VALS(page_vals), 0x0, + "Page ID", HFILL } + }, + { &hf_epa_offset, + { "offset", "epa.offset", + FT_UINT16, BASE_DEC, NULL, 0x0, + "Register offset", HFILL } + }, + { &hf_epa_size, + { "size", "epa.size", + FT_UINT16, BASE_DEC, NULL, 0x0, + "Read/write size", HFILL } + }, + { &hf_epa_data, + { "data", "epa.data", + FT_BYTES, BASE_HEX, NULL, 0x0, + "Userdata", HFILL } + }, + }; + + /* Setup protocol subtree array */ + static gint *ett[] = { + &ett_epa, + }; + + /* Register the protocol name and description */ + proto_epa = proto_register_protocol("LOFAR EPA Protocol", + "EPA", "epa"); + + /* Required function calls to register the header fields and subtrees used */ + proto_register_field_array(proto_epa, hf, array_length(hf)); + proto_register_subtree_array(ett, array_length(ett)); +} + + +/* If this dissector uses sub-dissector registration add a registration routine. + This format is required because a script is used to find these routines and + create the code that calls these routines. +*/ +void +proto_reg_handoff_epa(void) +{ + dissector_handle_t epa_handle; + + epa_handle = create_dissector_handle(dissect_epa, proto_epa); + dissector_add("ethertype", ETHERTYPE_EPA, epa_handle); +} + +void plugin_init(plugin_address_table_t* pat) +{ + /* initialise the table of pointers needed in Win32 DLLs */ + plugin_address_table_init(pat); + + /* register the new protocol, protocol fields, and subtrees */ + if (proto_epa == -1) { /* execute protocol initialization only once */ + proto_register_epa(); + } +} + +void plugin_reg_handoff(void) +{ + proto_reg_handoff_epa(); +} diff --git a/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.h b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.h new file mode 100644 index 0000000000000000000000000000000000000000..2fbbf2dbd0c0478acc82e793cf982f0168dee5e4 --- /dev/null +++ b/MAC/Tools/ethereal-0.9.8-epaplugin/plugins/epa/packet-epa.h @@ -0,0 +1,29 @@ +/* packet-epa.h + * + * $Id$ + * + * Ethereal - Network traffic analyzer + * By Gerald Combs <gerald@ethereal.com> + * Copyright 1998 Gerald Combs + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation; either version 2 + * of the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#ifndef __PACKET_EPA_H__ +#define __PACKET_EPA_H__ + +void capture_epa(const guchar *, int, int, packet_counts *); + +#endif