Move calls to "dissector_add()" out of the register routines for TCP and
authorguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Sat, 8 Apr 2000 07:07:42 +0000 (07:07 +0000)
committerguy <guy@f5534014-38df-0310-8fa8-9805f1628bb7>
Sat, 8 Apr 2000 07:07:42 +0000 (07:07 +0000)
UDP and into the handoff registration routines for the protocols in
question.

Make the dissectors for those protocols static if they're not called
outside the dissector's source file.

Get rid of header files if all they did was declare dissectors that are
now static; remove declarations of now-static dissectors from header
files that do more than just declare the dissector.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@1823 f5534014-38df-0310-8fa8-9805f1628bb7

70 files changed:
Makefile.am
packet-auto_rp.c
packet-auto_rp.h [deleted file]
packet-bgp.c
packet-bgp.h
packet-bootp.c
packet-bootp.h [deleted file]
packet-dhis.c
packet-dhis.h
packet-ftp.c
packet-ftp.h [deleted file]
packet-hsrp.c
packet-hsrp.h [deleted file]
packet-http.c
packet-icp.c
packet-icp.h [deleted file]
packet-icq.c
packet-icq.h [deleted file]
packet-imap.c
packet-imap.h [deleted file]
packet-ipp.c
packet-ipx.c
packet-irc.c
packet-irc.h [deleted file]
packet-isakmp.c
packet-isakmp.h [deleted file]
packet-l2tp.c
packet-l2tp.h [deleted file]
packet-ldap.c
packet-ldap.h
packet-lpd.c
packet-lpd.h [deleted file]
packet-mapi.c
packet-mapi.h [deleted file]
packet-nbns.c
packet-nbns.h [deleted file]
packet-ncp.c
packet-nntp.c
packet-nntp.h [deleted file]
packet-ntp.c
packet-ntp.h
packet-pop.c
packet-pop.h [deleted file]
packet-pptp.c
packet-pptp.h [deleted file]
packet-radius.c
packet-radius.h [deleted file]
packet-ripng.c
packet-ripng.h
packet-rtsp.c
packet-rtsp.h [deleted file]
packet-sap.c
packet-sap.h [deleted file]
packet-snmp.c
packet-srvloc.c
packet-srvloc.h [deleted file]
packet-tacacs.c
packet-tacacs.h [deleted file]
packet-tcp.c
packet-telnet.c
packet-telnet.h [deleted file]
packet-time.c
packet-time.h [deleted file]
packet-tns.c
packet-tns.h
packet-udp.c
packet-wccp.c
packet-wccp.h [deleted file]
packet-who.c
packet-who.h [deleted file]

index 062e4c9d8892736da06f6d367c130305c53fe275..63e01f476cc286bffab40248235927b4464aa02c 100644 (file)
@@ -1,7 +1,7 @@
 # Makefile.am
 # Automake file for Ethereal
 #
-# $Id: Makefile.am,v 1.179 2000/04/08 03:32:09 guy Exp $
+# $Id: Makefile.am,v 1.180 2000/04/08 07:07:06 guy Exp $
 #
 # Ethereal - Network traffic analyzer
 # By Gerald Combs <gerald@zing.org>
@@ -46,11 +46,9 @@ DISSECTOR_SOURCES = \
        packet-atm.c   \
        packet-atm.h   \
        packet-auto_rp.c   \
-       packet-auto_rp.h   \
        packet-bgp.c   \
        packet-bgp.h   \
        packet-bootp.c \
-       packet-bootp.h \
        packet-bootparams.c \
        packet-bootparams.h \
        packet-bpdu.c  \
@@ -71,7 +69,6 @@ DISSECTOR_SOURCES = \
        packet-fddi.c  \
        packet-fddi.h  \
        packet-ftp.c   \
-       packet-ftp.h   \
        packet-giop.c  \
        packet-giop.h  \
        packet-gre.c   \
@@ -79,17 +76,13 @@ DISSECTOR_SOURCES = \
        packet-h1.c    \
        packet-h1.h    \
        packet-hsrp.c  \
-       packet-hsrp.h  \
        packet-http.c  \
        packet-http.h  \
        packet-icmpv6.c\
        packet-icmpv6.h\
        packet-icp.c   \
-       packet-icp.h   \
        packet-icq.c   \
-       packet-icq.h   \
        packet-imap.c   \
-       packet-imap.h   \
        packet-ip.c    \
        packet-ip.h    \
        packet-ipp.c   \
@@ -101,9 +94,7 @@ DISSECTOR_SOURCES = \
        packet-ipx.c   \
        packet-ipx.h   \
        packet-irc.c   \
-       packet-irc.h   \
        packet-isakmp.c\
-       packet-isakmp.h\
        packet-isis.h  \
        packet-isis.c  \
        packet-isis-clv.h \
@@ -117,7 +108,6 @@ DISSECTOR_SOURCES = \
        packet-isl.c   \
        packet-isl.h   \
        packet-l2tp.c  \
-       packet-l2tp.h  \
        packet-lapb.c  \
        packet-lapb.h  \
        packet-lapd.c  \
@@ -127,9 +117,7 @@ DISSECTOR_SOURCES = \
        packet-llc.c   \
        packet-llc.h   \
        packet-lpd.c   \
-       packet-lpd.h   \
        packet-mapi.c  \
-       packet-mapi.h  \
        packet-mount.c \
        packet-mount.h \
        packet-mpls.c \
@@ -137,7 +125,6 @@ DISSECTOR_SOURCES = \
        packet-nbipx.c \
        packet-nbipx.h \
        packet-nbns.c  \
-       packet-nbns.h  \
        packet-ncp.c   \
        packet-ncp.h   \
        packet-netbios.c \
@@ -147,7 +134,6 @@ DISSECTOR_SOURCES = \
        packet-nlm.c   \
        packet-nlm.h   \
        packet-nntp.c  \
-       packet-nntp.h  \
        packet-ntp.c  \
        packet-ntp.h  \
        packet-null.c  \
@@ -159,7 +145,6 @@ DISSECTOR_SOURCES = \
        packet-pim.c   \
        packet-pim.h   \
        packet-pop.c   \
-       packet-pop.h   \
        packet-portmap.c   \
        packet-portmap.h   \
        packet-ppp.c   \
@@ -167,13 +152,11 @@ DISSECTOR_SOURCES = \
        packet-pppoe.c \
        packet-pppoe.h \
        packet-pptp.c  \
-       packet-pptp.h  \
        packet-q2931.c \
        packet-q2931.h \
        packet-q931.c  \
        packet-q931.h  \
        packet-radius.c\
-       packet-radius.h\
        packet-raw.c   \
        packet-raw.h   \
        packet-rip.c   \
@@ -186,11 +169,9 @@ DISSECTOR_SOURCES = \
        packet-rsvp.c  \
        packet-rsvp.h  \
        packet-rtsp.c  \
-       packet-rtsp.h  \
        packet-rx.c  \
        packet-rx.h  \
        packet-sap.c   \
-       packet-sap.h   \
        packet-sdp.c   \
        packet-sdp.h   \
        packet-smb.c   \
@@ -206,21 +187,17 @@ DISSECTOR_SOURCES = \
        packet-snmp.c   \
        packet-snmp.h   \
        packet-srvloc.c \
-       packet-srvloc.h \
        packet-sscop.c \
        packet-sscop.h \
        packet-stat.c   \
        packet-stat.h   \
        packet-tacacs.c \
-       packet-tacacs.h \
        packet-tcp.c   \
        packet-tcp.h   \
        packet-telnet.c\
-       packet-telnet.h\
        packet-tftp.c  \
        packet-tftp.h  \
        packet-time.c  \
-       packet-time.h  \
        packet-tns.c \
        packet-tns.h \
        packet-tr.c    \
@@ -239,10 +216,8 @@ DISSECTOR_SOURCES = \
        packet-vrrp.h \
        packet-vtp.c  \
        packet-vtp.h  \
-       packet-wccp.c\
-       packet-wccp.h\
-       packet-who.c\
-       packet-who.h\
+       packet-wccp.c \
+       packet-who.c  \
        packet-x25.c   \
        packet-x25.h   \
        packet-yhoo.c  \
index 4436bbef0c6691962f3ab2c537ba1e90899e2544..4f76cc8931a6e75ec2bfb1097e8cedc5219e9af7 100644 (file)
@@ -4,7 +4,7 @@
  *
  * Heikki Vatiainen <hessu@cs.tut.fi>
  *
- * $Id: packet-auto_rp.c,v 1.3 2000/03/12 04:47:35 gram Exp $
+ * $Id: packet-auto_rp.c,v 1.4 2000/04/08 07:07:08 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -57,6 +57,8 @@ static gint hf_auto_rp_pim_ver = -1;
 static gint hf_auto_rp_group = -1;
 static gint hf_auto_rp_mask_sgn = -1;
 
+#define UDP_PORT_PIM_RP_DISC 496
+
 struct auto_rp_fixed_hdr {
 #define AUTO_RP_VERSION_MASK 0xf0
 #define AUTO_RP_TYPE_MASK    0x0f
@@ -116,7 +118,7 @@ static const value_string auto_rp_mask_sign_vals[] = {
 
 static int do_auto_rp_map(const u_char *pd, int offset, frame_data *fd, proto_tree *auto_rp_tree);
 
-void dissect_auto_rp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
+static void dissect_auto_rp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         struct auto_rp_fixed_hdr arh;
         gboolean short_hdr = FALSE;
@@ -239,6 +241,12 @@ void proto_register_auto_rp(void)
         return;
 }
 
+void
+proto_reg_handoff_auto_rp(void)
+{
+       dissector_add("udp.port", UDP_PORT_PIM_RP_DISC, dissect_auto_rp);
+}
+
 /*
  * Handles one Auto-RP map entry. Returns the number of bytes in the map entry or < 0 for error.
  */
@@ -290,4 +298,3 @@ static int do_auto_rp_map(const u_char *pd, int offset, frame_data *fd, proto_tr
 
         return offset;
 }
-
diff --git a/packet-auto_rp.h b/packet-auto_rp.h
deleted file mode 100644 (file)
index d380eea..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-auto_rp.h
- *
- * $Id: packet-auto_rp.h,v 1.1 2000/02/15 21:02:02 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_auto_rp(const u_char *, int, frame_data *, proto_tree *);
index f394ca81ec9f022a9d97b624962880100e7b9933..d99c32589db6d00edb1fa145a2ac8668cbf70477 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for BGP packet dissection.
  * Copyright 1999, Jun-ichiro itojun Hagino <itojun@itojun.org>
  *
- * $Id
+ * $Id: packet-bgp.c,v 1.21 2000/04/08 07:07:08 guy Exp $
  * 
  * Supports:
  * RFC1771 A Border Gateway Protocol 4 (BGP-4)
@@ -68,6 +68,8 @@
 #include <arpa/inet.h>
 #endif
 
+#define TCP_PORT_BGP                   179
+
 static const value_string bgptypevals[] = {
     { BGP_OPEN, "OPEN Message" },
     { BGP_UPDATE, "UPDATE Message" },
@@ -1091,7 +1093,7 @@ dissect_bgp_notification(const u_char *pd, int offset, frame_data *fd,
 /*
  * Dissect a BGP packet.
  */
-void
+static void
 dissect_bgp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
     proto_item    *ti;           /* tree item                        */
@@ -1266,3 +1268,9 @@ proto_register_bgp(void)
     proto_bgp = proto_register_protocol("Border Gateway Protocol", "bgp");
     proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_bgp(void)
+{
+    dissector_add("tcp.port", TCP_PORT_BGP, dissect_bgp);
+}
index 27b80eae39fc65ebc1121a4104b971ea1696e4ed..6bb337bdf946300ab7b33e1e2f43bea6502979ad 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-bgp.c
  * Definitions for BGP packet disassembly structures and routine
  *
- * $Id: packet-bgp.h,v 1.7 2000/02/15 21:02:02 gram Exp $
+ * $Id: packet-bgp.h,v 1.8 2000/04/08 07:07:09 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -25,8 +25,6 @@
 #ifndef __PACKET_BGP_H__
 #define __PACKET_BGP_H__
 
-void dissect_bgp(const u_char *, int, frame_data *, proto_tree *);
-
 /* some handy things to know */
 #define BGP_MAX_PACKET_SIZE            4096
 #define BGP_MARKER_SIZE                        16
index 819a117e0bcff630c9a700acfb86bab5f3bf5b97..502944291a9fe34c03a8b40815890777163b5834 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for BOOTP/DHCP packet disassembly
  * Gilbert Ramirez <gram@xiexie.org>
  *
- * $Id: packet-bootp.c,v 1.29 2000/03/29 09:29:16 guy Exp $
+ * $Id: packet-bootp.c,v 1.30 2000/04/08 07:07:10 guy Exp $
  *
  * The information used comes from:
  * RFC 2132: DHCP Options and BOOTP Vendor Extensions
@@ -61,6 +61,8 @@ static int hf_bootp_cookie = -1;
 static guint ett_bootp = -1;
 static guint ett_bootp_option = -1;
 
+#define UDP_PORT_BOOTPS  67
+
 enum field_type { none, ipv4, string, toggle, yes_no, special, opaque,
        time_in_secs,
        val_u_byte, val_u_short, val_u_long,
@@ -552,7 +554,7 @@ bootp_option(const u_char *pd, proto_tree *bp_tree, int voff, int eoff)
        return consumed;
 }
 
-void
+static void
 dissect_bootp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *bp_tree;
@@ -744,3 +746,9 @@ proto_register_bootp(void)
   proto_register_field_array(proto_bootp, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_bootp(void)
+{
+  dissector_add("udp.port", UDP_PORT_BOOTPS, dissect_bootp);
+}
diff --git a/packet-bootp.h b/packet-bootp.h
deleted file mode 100644 (file)
index ed2bc27..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-bootp.h
- *
- * $Id: packet-bootp.h,v 1.1 2000/02/15 21:02:03 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_bootp(const u_char *, int, frame_data *, proto_tree *);
index f746bbeae7af91aa9b6ba9df1b2e54e4a27e698a..c703144e21278b6f643932278893e13d7220eac9 100644 (file)
@@ -3,7 +3,7 @@
  * see http://dhis.sourceforge.net/
  * Olivier Abad <abad@daba.dhis.net>
  *
- * $Id: packet-dhis.c,v 1.2 2000/02/23 22:41:15 oabad Exp $
+ * $Id: packet-dhis.c,v 1.3 2000/04/08 07:07:12 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -57,6 +57,9 @@ static int hf_dhis_status = -1;
 
 static int ett_dhis = -1;
 
+#define UDP_PORT_DHIS1 58800
+#define UDP_PORT_DHIS2 58801
+
 static const value_string vals_dhis_version[] = {
     { DHIS_VERSION_ERROR, "Protocol Error" },
     { DHIS_VERSION_4,     "4" },
@@ -95,7 +98,7 @@ static const value_string vals_dhis_status[] = {
     { 0, NULL}
 };
 
-void
+static void
 dissect_dhis(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
 
@@ -228,3 +231,10 @@ proto_register_dhis(void)
     proto_register_field_array(proto_dhis, hf_dhis, array_length(hf_dhis));
     proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_dhis(void)
+{
+    dissector_add("udp.port", UDP_PORT_DHIS1, dissect_dhis);
+    dissector_add("udp.port", UDP_PORT_DHIS2, dissect_dhis);
+}
index f96f7af84d114bcd7f029e6f12d0ea74f4261124..1b6e9d5e8c1d1787f45acbe6af9f0821010b24cf 100644 (file)
@@ -3,7 +3,7 @@
  * see http://dhis.sourceforge.net/
  * Olivier Abad <abad@daba.dhis.net>
  *
- * $Id: packet-dhis.h,v 1.2 2000/02/23 22:41:15 oabad Exp $
+ * $Id: packet-dhis.h,v 1.3 2000/04/08 07:07:13 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -49,5 +49,3 @@
 #define DHIS_INVALID_PASSWORD  2
 #define DHIS_INVALID_ACCOUNT   3
 #define DHIS_INVALID_OPCODE    4
-
-void dissect_dhis(const u_char *, int, frame_data *, proto_tree *);
index 62a97d50d4a6f201bc7190e1c045fb88a0701d58..9e8497c62d626b719e393bd90b9cc7a675dff31d 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for ftp packet dissection
  * Copyright 1999, Richard Sharpe <rsharpe@ns.aus.com>
  *
- * $Id: packet-ftp.c,v 1.12 2000/03/12 04:47:37 gram Exp $
+ * $Id: packet-ftp.c,v 1.13 2000/04/08 07:07:16 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -54,7 +54,10 @@ static int hf_ftp_response_data = -1;
 
 static gint ett_ftp = -1;
 
-void
+#define TCP_PORT_FTPDATA               20
+#define TCP_PORT_FTP                   21
+
+static void
 dissect_ftp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         proto_tree      *ftp_tree, *ti;
@@ -137,7 +140,7 @@ dissect_ftp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
        }
 }
 
-void
+static void
 dissect_ftpdata(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         proto_tree      *ti;
@@ -195,3 +198,11 @@ proto_register_ftp(void)
   proto_register_field_array(proto_ftp, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ftp(void)
+{
+       dissector_add("tcp.port", TCP_PORT_FTPDATA, &dissect_ftpdata);
+       dissector_add("tcp.port", TCP_PORT_FTP, &dissect_ftp);
+}
+
diff --git a/packet-ftp.h b/packet-ftp.h
deleted file mode 100644 (file)
index 98fce50..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* packet-ftp.h
- *
- * $Id: packet-ftp.h,v 1.1 2000/02/15 21:02:10 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_ftp(const u_char *, int, frame_data *, proto_tree *);
-void dissect_ftpdata(const u_char *, int, frame_data *, proto_tree *);
index f46069810d38f273ec32e16dfe0980a721830885..3babf80907c0994e4fd41481b26d591ea106bc10 100644 (file)
@@ -4,7 +4,7 @@
  *
  * Heikki Vatiainen <hessu@cs.tut.fi>
  *
- * $Id: packet-hsrp.c,v 1.2 2000/01/07 22:05:31 guy Exp $
+ * $Id: packet-hsrp.c,v 1.3 2000/04/08 07:07:17 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -45,6 +45,8 @@
 static gint proto_hsrp = -1;
 static gint ett_hsrp = -1;
 
+#define UDP_PORT_HSRP   1985
+
 struct hsrp_packet {          /* Multicast to 224.0.0.2, TTL 1, UDP, port 1985 */
         guint8  version;      /* RFC2281 describes version 0 */
         guint8  opcode;
@@ -85,7 +87,8 @@ static const value_string hsrp_state_vals[] = {
         {HSRP_STATE_ACTIVE,  "Active"}
 };
 
-void dissect_hsrp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
+static void
+dissect_hsrp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         struct hsrp_packet hsrp;
         gboolean short_packet = FALSE;
@@ -160,3 +163,9 @@ void proto_register_hsrp(void)
 
         return;
 }
+
+void
+proto_reg_handoff_hsrp(void)
+{
+       dissector_add("udp.port", UDP_PORT_HSRP, dissect_hsrp);
+}
diff --git a/packet-hsrp.h b/packet-hsrp.h
deleted file mode 100644 (file)
index 80367c6..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-hsrp.h
- *
- * $Id: packet-hsrp.h,v 1.1 2000/02/15 21:02:12 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_hsrp(const u_char *, int, frame_data *, proto_tree *);
index 0369af143b9d5aae847d4b2fd1928f9717af0392..085e6bb8b1480d08cae10865c78b8768b0614929 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Guy Harris <guy@alum.mit.edu>
  *
- * $Id: packet-http.c,v 1.16 2000/02/23 20:55:33 guy Exp $
+ * $Id: packet-http.c,v 1.17 2000/04/08 07:07:17 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -54,6 +54,11 @@ static int hf_http_request = -1;
 
 static gint ett_http = -1;
 
+#define TCP_PORT_HTTP                  80
+#define TCP_PORT_PROXY_HTTP            3128
+#define TCP_PORT_PROXY_ADMIN_HTTP      3132
+#define TCP_ALT_PORT_HTTP              8080
+
 static int is_http_request_or_reply(const u_char *data, int linelen, http_type_t *type);
 
 void dissect_http(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
@@ -285,3 +290,12 @@ proto_register_http(void)
   proto_register_field_array(proto_http, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_http(void)
+{
+  dissector_add("tcp.port", TCP_PORT_HTTP, dissect_http);
+  dissector_add("tcp.port", TCP_ALT_PORT_HTTP, dissect_http);
+  dissector_add("tcp.port", TCP_PORT_PROXY_HTTP, dissect_http);
+  dissector_add("tcp.port", TCP_PORT_PROXY_ADMIN_HTTP, dissect_http);
+}
index c283bb7cd5093e5244ba7708e0acb99285478b95..2562f502d5f6632216a446b57e6df999a46907cf 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for ICP (internet cache protocol) packet disassembly
  * RFC 2186 && RFC 2187
  *
- * $Id: packet-icp.c,v 1.5 2000/03/12 04:47:38 gram Exp $
+ * $Id: packet-icp.c,v 1.6 2000/04/08 07:07:18 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Peter Torvals
@@ -51,6 +51,8 @@ static int hf_icp_request_nr=-1;
 static gint ett_icp = -1;
 static gint ett_icp_payload = -1;
 
+#define UDP_PORT_ICP    3130
+
 #define CODE_ICP_OP_QUERY 1
 #define CODE_ICP_OP_INVALID 0
 #define CODE_ICP_OP_HIT 2
@@ -100,7 +102,8 @@ typedef struct _e_icphdr
 } e_icphdr;
 
 static gchar textbuf[MAX_TEXTBUF_LENGTH];
-void dissect_icp_payload( const u_char *pd, int offset,
+
+static void dissect_icp_payload( const u_char *pd, int offset,
         frame_data *fd,proto_tree *pload_tree, e_icphdr *icph)
 {
 /* To Be Done take care of fragmentation*/
@@ -169,7 +172,8 @@ guint16 objectlength;
   }
 }
 
-void dissect_icp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
+static void dissect_icp(const u_char *pd, int offset, frame_data *fd,
+       proto_tree *tree)
 {
   proto_tree *icp_tree , *payload_tree;
   proto_item *ti , *payloadtf;
@@ -286,3 +290,9 @@ proto_register_icp(void)
        proto_register_field_array(proto_icp, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_icp(void)
+{
+       dissector_add("udp.port", UDP_PORT_ICP, dissect_icp);
+}
diff --git a/packet-icp.h b/packet-icp.h
deleted file mode 100644 (file)
index 8981506..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-icp.h
- *
- * $Id: packet-icp.h,v 1.1 2000/02/15 21:02:14 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_icp(const u_char *, int, frame_data *, proto_tree *);
index ba18d302ce26499c7a0607e23f550efdb9f77569..f3ee9cea3d602a424bf02b4a3a49863858f238b5 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-icq.c
  * Routines for ICQ packet disassembly
  *
- * $Id: packet-icq.c,v 1.13 2000/03/14 07:12:23 gram Exp $
+ * $Id: packet-icq.c,v 1.14 2000/04/08 07:07:18 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Johan Feyaerts
@@ -82,9 +82,11 @@ static gint ett_icq_decode = -1;
 static gint ett_icq_body = -1;
 static gint ett_icq_body_parts = -1;
 
+#define UDP_PORT_ICQ   4000
+
 enum { ICQ5_client, ICQ5_server};
 
-void dissect_icqv5(const u_char *pd,
+static void dissect_icqv5(const u_char *pd,
                   int offset,
                   frame_data *fd,
                   proto_tree *tree);
@@ -2330,10 +2332,10 @@ dissect_icqv5Server(const u_char *pd,
     }
 }
 
-void dissect_icqv5(const u_char *pd,
-                  int offset,
-                  frame_data *fd, 
-                  proto_tree *tree)
+static void dissect_icqv5(const u_char *pd,
+                         int offset,
+                         frame_data *fd, 
+                         proto_tree *tree)
 {
   guint32 unknown = pletohl(&pd[offset + ICQ5_UNKNOWN]);
   
@@ -2348,10 +2350,10 @@ void dissect_icqv5(const u_char *pd,
   }
 }
 
-void dissect_icq(const u_char *pd,
-                int offset,
-                frame_data *fd, 
-                proto_tree *tree)
+static void dissect_icq(const u_char *pd,
+                       int offset,
+                       frame_data *fd, 
+                       proto_tree *tree)
 {
   int version = 0;
 
@@ -2401,3 +2403,9 @@ proto_register_icq(void)
 
     proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_icq(void)
+{
+    dissector_add("udp.port", UDP_PORT_ICQ, dissect_icq);
+}
diff --git a/packet-icq.h b/packet-icq.h
deleted file mode 100644 (file)
index 9384689..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-icq.h
- *
- * $Id: packet-icq.h,v 1.1 2000/02/15 21:02:14 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_icq(const u_char *, int, frame_data *, proto_tree *);
index edc90ffab20bd7cbc5f45badfcc2348f735235c6..d7f1155f1b72ec1868b798e7b1d395018264fabc 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for imap packet dissection
  * Copyright 1999, Richard Sharpe <rsharpe@ns.aus.com>
  *
- * $Id: packet-imap.c,v 1.4 2000/01/07 22:05:31 guy Exp $
+ * $Id: packet-imap.c,v 1.5 2000/04/08 07:07:19 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -49,7 +49,9 @@ static int hf_imap_request = -1;
 
 static gint ett_imap = -1;
 
-void
+#define TCP_PORT_IMAP                  143
+
+static void
 dissect_imap(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         proto_tree      *imap_tree, *ti;
@@ -134,3 +136,9 @@ proto_register_imap(void)
   proto_register_field_array(proto_imap, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_imap(void)
+{
+  dissector_add("tcp.port", TCP_PORT_IMAP, dissect_imap);
+}
diff --git a/packet-imap.h b/packet-imap.h
deleted file mode 100644 (file)
index 6d93993..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-imap.h
- *
- * $Id: packet-imap.h,v 1.1 2000/02/15 21:02:15 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_imap(const u_char *, int, frame_data *, proto_tree *);
index 51e4eafcaed75152820d9b257841e30a77e3d9aa..f59c7f38603c5d54a99c8ee1ce3fd94bd04eb945 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Guy Harris <guy@alum.mit.edu>
  *
- * $Id: packet-ipp.c,v 1.7 2000/03/07 06:28:47 guy Exp $
+ * $Id: packet-ipp.c,v 1.8 2000/04/08 07:07:20 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -40,6 +40,7 @@
 
 #include <glib.h>
 #include "packet.h"
+#include "packet-http.h"
 
 static int proto_ipp = -1;
 
@@ -571,3 +572,18 @@ proto_register_ipp(void)
  /*       proto_register_field_array(proto_ipp, hf, array_length(hf));*/
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ipp(void)
+{
+       /* XXX - should we just register ourselves as a dissector,
+          and call the HTTP dissector?
+
+          Should we pass to it a pointer to our dissector, so that
+          it knows to call us?
+
+          Or should the HTTP dissector decide that the payload is
+          IPP based on the MIME headers? */
+       dissector_add("tcp.port", 631, dissect_http);
+}
+
index 3aea3699758963c2acb48a72dd207d44594b71c8..0e6df2638af902c2d2b754389f98b66e4d7dd599 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for NetWare's IPX
  * Gilbert Ramirez <gram@xiexie.org>
  *
- * $Id: packet-ipx.c,v 1.51 2000/03/20 22:52:41 gram Exp $
+ * $Id: packet-ipx.c,v 1.52 2000/04/08 07:07:21 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -110,6 +110,8 @@ dissect_ipxmsg(const u_char *pd, int offset, frame_data *fd, proto_tree *tree);
 
 typedef        void    (dissect_func_t)(const u_char *, int, frame_data *, proto_tree *);
 
+#define UDP_PORT_IPX    213            /* RFC 1234 */
+
 struct port_info {
        guint16 port;
        dissect_func_t *func;
@@ -966,3 +968,9 @@ proto_register_ipx(void)
 
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ipx(void)
+{
+       dissector_add("udp.port", UDP_PORT_IPX, dissect_ipx);
+}
index 7b6a85406ce24232f09b461a8588f018cf1955a9..e0c0bc9b13d7118f43ec43832f8a68da176e7d7c 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-irc.c
  * Routines for MSX irc packet dissection
  *
- * $Id: packet-irc.c,v 1.3 2000/01/07 22:05:31 guy Exp $
+ * $Id: packet-irc.c,v 1.4 2000/04/08 07:07:22 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -49,7 +49,11 @@ static int hf_irc_command = -1;
 
 static gint ett_irc = -1;
 
-void dissect_irc_request(proto_tree *tree, char *line, int offset, int len)
+#define TCP_PORT_IRC                   6667
+       /* good candidate for dynamic port specification */
+
+static void
+dissect_irc_request(proto_tree *tree, char *line, int offset, int len)
 {
        proto_tree_add_item_hidden(tree, hf_irc_request,
                offset, len, TRUE);
@@ -57,7 +61,8 @@ void dissect_irc_request(proto_tree *tree, char *line, int offset, int len)
                len, "Request Line: %s", line);
 }
 
-void dissect_irc_response(proto_tree *tree, char *line, int offset, int len)
+static void
+dissect_irc_response(proto_tree *tree, char *line, int offset, int len)
 {
        proto_tree_add_item_hidden(tree, hf_irc_response,
                offset, len, TRUE);
@@ -65,7 +70,7 @@ void dissect_irc_response(proto_tree *tree, char *line, int offset, int len)
                len, "Response Line: %s", line);
 }
 
-void
+static void
 dissect_irc(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *irc_tree, *ti;
@@ -156,3 +161,10 @@ proto_register_irc(void)
        proto_register_field_array(proto_irc, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_irc(void)
+{
+       dissector_add("tcp.port", TCP_PORT_IRC, dissect_irc);
+}
+
diff --git a/packet-irc.h b/packet-irc.h
deleted file mode 100644 (file)
index 1b1dd89..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-irc.h
- *
- * $Id: packet-irc.h,v 1.1 2000/02/15 21:02:26 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_irc(const u_char *, int, frame_data *, proto_tree *);
index 52b46d6da398607edc9ec588d62fc84a022ac9d2..177d558200e02174875b98f058702c484ef76fef 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for the Internet Security Association and Key Management Protocol (ISAKMP)
  * Brad Robel-Forrest <brad.robel-forrest@watchguard.com>
  *
- * $Id: packet-isakmp.c,v 1.12 2000/01/07 22:05:31 guy Exp $
+ * $Id: packet-isakmp.c,v 1.13 2000/04/08 07:07:22 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -56,6 +56,8 @@ static gint ett_isakmp = -1;
 static gint ett_isakmp_flags = -1;
 static gint ett_isakmp_payload = -1;
 
+#define UDP_PORT_ISAKMP        500
+
 #define NUM_PROTO_TYPES        5
 #define proto2str(t)   \
   ((t < NUM_PROTO_TYPES) ? prototypestr[t] : "UNKNOWN-PROTO-TYPE")
@@ -333,7 +335,8 @@ static struct strfunc {
   {"Vendor ID",                        dissect_vid       }
 };
 
-void dissect_isakmp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
+static void
+dissect_isakmp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
   
   struct isakmp_hdr *  hdr = (struct isakmp_hdr *)(pd + offset);
   guint32              len;
@@ -1279,3 +1282,9 @@ proto_register_isakmp(void)
  /*       proto_register_field_array(proto_isakmp, hf, array_length(hf));*/
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_isakmp(void)
+{
+       dissector_add("udp.port", UDP_PORT_ISAKMP, dissect_isakmp);
+}
diff --git a/packet-isakmp.h b/packet-isakmp.h
deleted file mode 100644 (file)
index f03b8ad..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-isakmp.h
- *
- * $Id: packet-isakmp.h,v 1.1 2000/02/15 21:02:27 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_isakmp(const u_char *, int, frame_data *, proto_tree *);
index 0969ec003c10439ffc367a6ae2faf8ff35fef5a2..2bf2f5636a7f898c262e0bf6cb342a12578246b6 100644 (file)
@@ -7,7 +7,7 @@
  * Laurent Cazalet <laurent.cazalet@mailclub.net>
  * Thomas Parvais <thomas.parvais@advalvas.be>
  *
- * $Id: packet-l2tp.c,v 1.7 2000/04/05 15:57:04 gram Exp $
+ * $Id: packet-l2tp.c,v 1.8 2000/04/08 07:07:24 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -55,7 +55,7 @@ static int hf_l2tp_id =-1;
 #include "packet.h"
 #include "resolv.h"
 
-
+#define UDP_PORT_L2TP   1701
 
 #define CONTROL_BIT(msg_info) (msg_info & 0x8000)   /* Type bit control = 1 data = 0 */
 #define LENGTH_BIT(msg_info) (msg_info & 0x4000)    /* Length bit = 1  */ 
@@ -234,7 +234,9 @@ static const char *avptypestr[NUM_AVP_TYPES] = {
 
 
 static gchar textbuffer[200];
-void dissect_l2tp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
+
+static void
+dissect_l2tp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
   proto_tree *l2tp_tree, *l2tp_avp_tree;
   proto_item *ti, *tf;
@@ -695,3 +697,9 @@ proto_register_l2tp(void)
        proto_register_field_array(proto_l2tp, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_l2tp(void)
+{
+       dissector_add("udp.port", UDP_PORT_L2TP, dissect_l2tp);
+}
diff --git a/packet-l2tp.h b/packet-l2tp.h
deleted file mode 100644 (file)
index 86997fd..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-l2tp.h
- *
- * $Id: packet-l2tp.h,v 1.1 2000/02/15 21:02:29 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_l2tp(const u_char *, int, frame_data *, proto_tree *);
index 46037e771714bcf3fe1fab55edebd6177671300c..b00a373ba1155643a27ae35fd87679d2d47278ec 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-ldap.c
  * Routines for ldap packet dissection
  *
- * $Id: packet-ldap.c,v 1.8 2000/04/06 03:59:28 guy Exp $
+ * $Id: packet-ldap.c,v 1.9 2000/04/08 07:07:26 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -114,6 +114,8 @@ static gint ett_ldap_message = -1;
 static gint ett_ldap_referrals = -1;
 static gint ett_ldap_attribute = -1;
 
+#define TCP_PORT_LDAP                  389
+
 static value_string msgTypes [] = {
   {LDAP_REQ_BIND, "Bind Request"},
   {LDAP_REQ_UNBIND, "Unbind Request"},
@@ -703,7 +705,7 @@ static int dissect_ldap_request_abandon(ASN1_SCK *a, proto_tree *tree,
   return 0;
 }
 
-void
+static void
 dissect_ldap(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
   proto_tree *ldap_tree = 0, *ti, *msg_tree;
@@ -1036,3 +1038,10 @@ proto_register_ldap(void)
   proto_register_field_array(proto_ldap, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ldap(void)
+{
+  dissector_add("tcp.port", TCP_PORT_LDAP, dissect_ldap);
+}
+
index a7a9ce8cad7851f5879a542eb293d92e083fa60a..b389b32ca405ab73cff772759288456e19cb7b5f 100644 (file)
@@ -1,6 +1,6 @@
 /* packet-ldap.h
  *
- * $Id: packet-ldap.h,v 1.3 2000/03/29 09:25:21 guy Exp $
+ * $Id: packet-ldap.h,v 1.4 2000/04/08 07:07:28 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -72,5 +72,3 @@
 #define LDAP_MOD_ADD            0
 #define LDAP_MOD_DELETE         1
 #define LDAP_MOD_REPLACE        2
-
-void dissect_ldap(const u_char *, int, frame_data *, proto_tree *);
index 945ed3583f20ffc37b5e4127b2ca3fcf340bbdaa..c52ba1150944cc6925be1f069eda1fa18cfa114c 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for LPR and LPRng packet disassembly
  * Gilbert Ramirez <gram@xiexie.org>
  *
- * $Id: packet-lpd.c,v 1.16 2000/01/22 06:22:14 guy Exp $
+ * $Id: packet-lpd.c,v 1.17 2000/04/08 07:07:28 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -37,6 +37,8 @@
 #include <glib.h>
 #include "packet.h"
 
+#define TCP_PORT_PRINTER               515
+
 static int proto_lpd = -1;
 static int hf_lpd_response = -1;
 static int hf_lpd_request = -1;
@@ -47,7 +49,7 @@ enum lpr_type { request, response, unknown };
 
 static char* find_printer_string(const u_char *pd, int offset, int frame_length);
 
-void
+static void
 dissect_lpd(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *lpd_tree;
@@ -195,3 +197,8 @@ proto_register_lpd(void)
   proto_register_subtree_array(ett, array_length(ett));
 }
 
+void
+proto_reg_handoff_lpd(void)
+{
+  dissector_add("tcp.port", TCP_PORT_PRINTER, &dissect_lpd);
+}
diff --git a/packet-lpd.h b/packet-lpd.h
deleted file mode 100644 (file)
index 57a4fd5..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-lpd.h
- *
- * $Id: packet-lpd.h,v 1.1 2000/02/15 21:02:34 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_lpd(const u_char *, int, frame_data *, proto_tree *);
index 6912c20f75e2e711220566659b5f68b8b43cd012..bde5bb8dcc9c385b2cde55949561017789eeb87a 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-mapi.c
  * Routines for MSX mapi packet dissection
  *
- * $Id: packet-mapi.c,v 1.4 2000/01/07 22:05:32 guy Exp $
+ * $Id: packet-mapi.c,v 1.5 2000/04/08 07:07:29 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -48,13 +48,15 @@ static int hf_mapi_response = -1;
 
 static gint ett_mapi = -1;
 
-void
+#define TCP_PORT_MAPI                  1065
+
+static void
 dissect_mapi(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *mapi_tree, *ti;
 
        if (check_col(fd, COL_PROTOCOL))
-       col_add_str(fd, COL_PROTOCOL, "MAPI");
+               col_add_str(fd, COL_PROTOCOL, "MAPI");
 
        if (check_col(fd, COL_INFO))
        {
@@ -106,3 +108,9 @@ proto_register_mapi(void)
        proto_register_field_array(proto_mapi, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_mapi(void)
+{
+       dissector_add("tcp.port", TCP_PORT_MAPI, dissect_mapi);
+}
diff --git a/packet-mapi.h b/packet-mapi.h
deleted file mode 100644 (file)
index 935a7e6..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-mapi.h
- *
- * $Id: packet-mapi.h,v 1.1 2000/02/15 21:02:34 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_mapi(const u_char *, int, frame_data *, proto_tree *);
index c9ad53dc5f2159fc48b48415862fd605b596e443..d1afb8ab5e7d2682dc111dfe7d4585820ee1d286 100644 (file)
@@ -4,7 +4,7 @@
  * Gilbert Ramirez <gram@xiexie.org>
  * Much stuff added by Guy Harris <guy@alum.mit.edu>
  *
- * $Id: packet-nbns.c,v 1.38 2000/03/12 04:47:42 gram Exp $
+ * $Id: packet-nbns.c,v 1.39 2000/04/08 07:07:29 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -79,6 +79,10 @@ static int hf_nbss_flags = -1;
 static gint ett_nbss = -1;
 static gint ett_nbss_flags = -1;
 
+#define UDP_PORT_NBNS  137
+#define UDP_PORT_NBDGM 138
+#define TCP_PORT_NBSS  139
+
 /* Packet structure taken from RFC 1002. See also RFC 1001.
  * Opcode, flags, and rcode treated as "flags", similarly to DNS,
  * to make it easier to lift the dissection code from "packet-dns.c". */
@@ -1110,7 +1114,7 @@ dissect_answer_records(const u_char *pd, int cur_off, int nbns_data_offset,
        return cur_off - start_off;
 }
 
-void
+static void
 dissect_nbns(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        int                     nbns_data_offset;
@@ -1238,7 +1242,7 @@ struct nbdgm_header {
        guint8          error_code;
 };
 
-void
+static void
 dissect_nbdgm(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree              *nbdgm_tree = NULL;
@@ -1543,7 +1547,7 @@ dissect_nbss_packet(const u_char *pd, int offset, frame_data *fd, proto_tree *tr
        return length + 4;
 }
 
-void
+static void
 dissect_nbss(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        guint8          msg_type;
@@ -1705,3 +1709,11 @@ proto_register_nbt(void)
 
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_nbt(void)
+{
+  dissector_add("udp.port", UDP_PORT_NBNS, dissect_nbns);
+  dissector_add("udp.port", UDP_PORT_NBDGM, dissect_nbdgm);
+  dissector_add("tcp.port", TCP_PORT_NBSS, dissect_nbss);
+}
diff --git a/packet-nbns.h b/packet-nbns.h
deleted file mode 100644 (file)
index 4cd78f5..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-/* packet-nbns.h
- *
- * $Id: packet-nbns.h,v 1.1 2000/02/15 21:02:39 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_nbdgm(const u_char *, int, frame_data *, proto_tree *);
-void dissect_nbns(const u_char *, int, frame_data *, proto_tree *);
-void dissect_nbss(const u_char *, int, frame_data *, proto_tree *);
index b26d0aff455ae059c47fa8ed310431b8f60fa2fb..907e7854e7d53773af216c0d5946ff56394affa6 100644 (file)
@@ -3,7 +3,7 @@
  * Gilbert Ramirez <gram@xiexie.org>
  * Modified to allow NCP over TCP/IP decodes by James Coe <jammer@cin.net>
  *
- * $Id: packet-ncp.c,v 1.31 2000/03/12 04:47:43 gram Exp $
+ * $Id: packet-ncp.c,v 1.32 2000/04/08 07:07:30 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -56,6 +56,8 @@ static gint ett_ncp = -1;
 static gint ett_ncp_request_fields = -1;
 static gint ett_ncp_reply_fields = -1;
 
+#define TCP_PORT_NCP                   524
+
 struct svc_record;
 
 static void
@@ -1034,3 +1036,9 @@ proto_register_ncp(void)
   proto_register_subtree_array(ett, array_length(ett));
   register_init_routine(&ncp_init_protocol);
 }
+
+void
+proto_reg_handoff_ncp(void)
+{
+  dissector_add("tcp.port", TCP_PORT_NCP, dissect_ncp);
+}
index 9a1ae87906d18f7e1021f43f8f24a9e860f7ab1c..12db6e789a819fe1bb4cbecd0828df65db3c2cbb 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for nntp packet dissection
  * Copyright 1999, Richard Sharpe <rsharpe@ns.aus.com>
  *
- * $Id: packet-nntp.c,v 1.7 2000/01/07 22:05:34 guy Exp $
+ * $Id: packet-nntp.c,v 1.8 2000/04/08 07:07:31 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -47,7 +47,9 @@ static int hf_nntp_request = -1;
 
 static gint ett_nntp = -1;
 
-void
+#define TCP_PORT_NNTP                  119
+
+static void
 dissect_nntp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         gchar           *type;
@@ -141,3 +143,9 @@ proto_register_nntp(void)
   proto_register_field_array(proto_nntp, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_nntp(void)
+{
+  dissector_add("tcp.port", TCP_PORT_NNTP, dissect_nntp);
+}
diff --git a/packet-nntp.h b/packet-nntp.h
deleted file mode 100644 (file)
index 4326e5f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-nntp.h
- *
- * $Id: packet-nntp.h,v 1.1 2000/02/15 21:02:43 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_nntp(const u_char *, int, frame_data *, proto_tree *);
index 986598744913d5bcb29f068f90fe2043646874d6..463d2a6a9c5958210a3d5ed2e8650c42a62b7aff 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for NTP packet dissection
  * Copyright 1999, Nathan Neulinger <nneul@umr.edu>
  *
- * $Id: packet-ntp.c,v 1.10 2000/03/12 04:47:44 gram Exp $
+ * $Id: packet-ntp.c,v 1.11 2000/04/08 07:07:32 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -97,6 +97,9 @@
  * first 32 bits and the fraction part in the last 32 bits.
  */
 
+#define UDP_PORT_NTP   123
+#define TCP_PORT_NTP   123
+
  /* Leap indicator, 2bit field is used to warn of a inserted/deleted
   * second, or to alarm loosed synchronization.
   */
@@ -199,7 +202,7 @@ static gint ett_ntp_flags = -1;
  * buff - string buffer for result (OUT)
  * returns pointer to filled buffer.
  */
-char *
+static char *
 ntp_fmt_ts(unsigned char * reftime, char* buff)
 {
        guint32 tempstmp, tempfrac;
@@ -229,7 +232,7 @@ ntp_fmt_ts(unsigned char * reftime, char* buff)
  * fd - frame data
  * proto_tree - resolved protocol tree
  */
-void
+static void
 dissect_ntp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *ntp_tree, *flags_tree;
@@ -434,3 +437,10 @@ proto_register_ntp(void)
        proto_register_field_array(proto_ntp, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ntp(void)
+{
+       dissector_add("udp.port", UDP_PORT_NTP, dissect_ntp);
+       dissector_add("tcp.port", TCP_PORT_NTP, dissect_ntp);
+}
index 7dedb55e7fb15fa423bff37aa43adef9b16f3428..0e96969d24183834319558174019c7a92c4b34fc 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-ntp.h
  * Definitions for packet disassembly structures and routines
  *
- * $Id: packet-ntp.h,v 1.3 2000/02/15 21:02:43 gram Exp $
+ * $Id: packet-ntp.h,v 1.4 2000/04/08 07:07:32 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -29,8 +29,6 @@
 #ifndef PACKET_NTP_H
 #define PACKET_NTP_H
 
-void dissect_ntp(const u_char *, int, frame_data *, proto_tree *);
-
 #define NTP_LI_MASK    192
 #define NTP_LI_NONE    0
 #define NTP_LI_61      64
index dcfce121eb9cc48a52c48d56878ab4520f0f8fc2..909085bc23c4658f16185c64e70fcc342771a057 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for pop packet dissection
  * Copyright 1999, Richard Sharpe <rsharpe@ns.aus.com>
  *
- * $Id: packet-pop.c,v 1.12 2000/01/07 22:05:35 guy Exp $
+ * $Id: packet-pop.c,v 1.13 2000/04/08 07:07:33 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -49,9 +49,11 @@ static int hf_pop_request = -1;
 
 static gint ett_pop = -1;
 
+#define TCP_PORT_POP                   110
+
 static gboolean is_continuation(const u_char *data);
        
-void
+static void
 dissect_pop(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         proto_tree      *pop_tree, *ti;
@@ -126,6 +128,17 @@ dissect_pop(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
        }
 }
 
+static gboolean is_continuation(const u_char *data)
+{
+  if (strncmp(data, "+OK", strlen("+OK")) == 0)
+    return FALSE;
+
+  if (strncmp(data, "-ERR", strlen("-ERR")) == 0)
+    return FALSE;
+
+  return TRUE;
+}
+
 void
 proto_register_pop(void)
 {
@@ -150,13 +163,8 @@ proto_register_pop(void)
   proto_register_subtree_array(ett, array_length(ett));
 }
 
-static gboolean is_continuation(const u_char *data)
+void
+proto_reg_handoff_pop(void)
 {
-  if (strncmp(data, "+OK", strlen("+OK")) == 0)
-    return FALSE;
-
-  if (strncmp(data, "-ERR", strlen("-ERR")) == 0)
-    return FALSE;
-
-  return TRUE;
+  dissector_add("tcp.port", TCP_PORT_POP, dissect_pop);
 }
diff --git a/packet-pop.h b/packet-pop.h
deleted file mode 100644 (file)
index e3a391b..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-pop.h
- *
- * $Id: packet-pop.h,v 1.1 2000/02/15 21:02:51 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_pop(const u_char *, int, frame_data *, proto_tree *);
index 068e731686b994c5417acfa45d94ca7ca75f62db..b6b9319b2d8bd11825b03657af1abf2e171e1d12 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for the Point-to-Point Tunnelling Protocol (PPTP) (RFC 2637)
  * Brad Robel-Forrest <brad.robel-forrest@watchguard.com>
  *
- * $Id: packet-pptp.c,v 1.8 2000/01/20 07:31:29 guy Exp $
+ * $Id: packet-pptp.c,v 1.9 2000/04/08 07:07:33 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -43,6 +43,8 @@
 
 static gint ett_pptp = -1;
 
+#define TCP_PORT_PPTP                  1723
+
 #define NUM_MSG_TYPES          3
 #define msgtype2str(t) \
   ((t < NUM_MSG_TYPES) ? msgtypestr[t] : "UNKNOWN-MESSAGES-TYPE")
@@ -376,7 +378,7 @@ struct set_link
   guint32      recv_acm;
 };
 
-void
+static void
 dissect_pptp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
 
   struct pptp_hdr *    hdr = (struct pptp_hdr *)(pd + offset);
@@ -897,3 +899,9 @@ proto_register_pptp(void)
 
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_pptp(void)
+{
+  dissector_add("tcp.port", TCP_PORT_PPTP, dissect_pptp);
+}
diff --git a/packet-pptp.h b/packet-pptp.h
deleted file mode 100644 (file)
index e29e4bc..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-pptp.h
- *
- * $Id: packet-pptp.h,v 1.1 2000/02/15 21:02:55 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_pptp(const u_char *, int, frame_data *, proto_tree *);
index 485cc3a9f55624e2815ccda20c962c434e1b6f77..ef5b0a7bea27bbabca7c92c61072602f6c89a938 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-radius.c
  * Routines for RADIUS packet disassembly
  *
- * $Id: packet-radius.c,v 1.10 2000/04/05 16:01:39 gram Exp $
+ * $Id: packet-radius.c,v 1.11 2000/04/08 07:07:34 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Johan Feyaerts
@@ -48,6 +48,11 @@ static int hf_radius_id =-1;
 static gint ett_radius = -1;
 static gint ett_radius_avp = -1;
 
+#define UDP_PORT_RADIUS                1645
+#define UDP_PORT_RADIUS_NEW    1812
+#define UDP_PORT_RADACCT       1646
+#define UDP_PORT_RADACCT_NEW   1813
+
 typedef struct _e_radiushdr {
         guint8 rh_code;
         guint8 rh_ident;
@@ -661,7 +666,7 @@ void dissect_attribute_value_pairs(const u_char *pd, int offset, frame_data
   }
 }
 
-void dissect_radius(const u_char *pd, int offset, frame_data *fd, 
+static void dissect_radius(const u_char *pd, int offset, frame_data *fd, 
 proto_tree
 *tree)
 {
@@ -763,3 +768,12 @@ proto_register_radius(void)
        proto_register_field_array(proto_radius, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_radius(void)
+{
+       dissector_add("udp.port", UDP_PORT_RADIUS, dissect_radius);
+       dissector_add("udp.port", UDP_PORT_RADIUS_NEW, dissect_radius);
+       dissector_add("udp.port", UDP_PORT_RADACCT, dissect_radius);
+       dissector_add("udp.port", UDP_PORT_RADACCT_NEW, dissect_radius);
+}
diff --git a/packet-radius.h b/packet-radius.h
deleted file mode 100644 (file)
index 5eebb64..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-radius.h
- *
- * $Id: packet-radius.h,v 1.1 2000/02/15 21:02:57 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_radius(const u_char *, int, frame_data *, proto_tree *);
index e6243c81ba41d624f50655d7ce67f274be1e1025..8ea96c4c144f1d7c2219efaf97641d71b80e669c 100644 (file)
@@ -3,7 +3,7 @@
  * (c) Copyright Jun-ichiro itojun Hagino <itojun@itojun.org>
  * derived from packet-rip.c
  *
- * $Id: packet-ripng.c,v 1.8 2000/03/12 04:47:48 gram Exp $
+ * $Id: packet-ripng.c,v 1.9 2000/04/08 07:07:35 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -51,7 +51,9 @@ static int hf_ripng_version = -1;
 static gint ett_ripng = -1;
 static gint ett_ripng_addr = -1;
 
-void 
+#define UDP_PORT_RIPNG  521
+
+static void 
 dissect_ripng(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) {
     struct rip6 rip6;
     struct netinfo6 ni6;
@@ -145,3 +147,9 @@ proto_register_ripng(void)
     proto_register_field_array(proto_ripng, hf, array_length(hf));
     proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_ripng(void)
+{
+    dissector_add("udp.port", UDP_PORT_RIPNG, dissect_ripng);
+}
index 9c2ce4144eb43f5eb96c9da6f937cd105a594198..642016ad2c1e95fb98f791da091e8a3dace4d231 100644 (file)
@@ -2,7 +2,7 @@
  * RIPng definition
  * (c) Copyright Jun-ichiro itojun Hagino <itojun@itojun.org>
  *
- * $Id: packet-ripng.h,v 1.2 2000/02/15 21:02:59 gram Exp $
+ * $Id: packet-ripng.h,v 1.3 2000/04/08 07:07:35 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -35,8 +35,6 @@
 #include "packet-ipv6.h"
 #endif
 
-void dissect_ripng(const u_char *, int, frame_data *, proto_tree *);
-
 /*
  * KAME Header: /cvsroot/kame/kame/kame/kame/route6d/route6d.h,v 1.1.1.1 1999/08/08 23:31:35 itojun Exp
  */
index 912910b15aa68b68f270f07169ba4723f7b76332..fdbb079d9f73c9ac5ad4ce23b949a51a739614ff 100644 (file)
@@ -4,7 +4,7 @@
  * Jason Lango <jal@netapp.com>
  * Liberally copied from packet-http.c, by Guy Harris <guy@alum.mit.edu>
  *
- * $Id: packet-rtsp.c,v 1.8 2000/02/15 21:03:04 gram Exp $
+ * $Id: packet-rtsp.c,v 1.9 2000/04/08 07:07:35 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -48,6 +48,8 @@ static int hf_rtsp_method = -1;
 static int hf_rtsp_url = -1;
 static int hf_rtsp_status = -1;
 
+#define TCP_PORT_RTSP                  554
+
 static int process_rtsp_request_or_reply(const u_char *data, int offset,
        int linelen, proto_tree *tree);
 
@@ -80,7 +82,7 @@ is_content_sdp(const u_char *line, int linelen)
        return 1;
 }
 
-void dissect_rtsp(const u_char *pd, int offset, frame_data *fd,
+static void dissect_rtsp(const u_char *pd, int offset, frame_data *fd,
        proto_tree *tree)
 {
        proto_tree      *rtsp_tree;
@@ -324,3 +326,9 @@ proto_register_rtsp(void)
        proto_register_field_array(proto_rtsp, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_rtsp(void)
+{
+       dissector_add("tcp.port", TCP_PORT_RTSP, dissect_rtsp);
+}
diff --git a/packet-rtsp.h b/packet-rtsp.h
deleted file mode 100644 (file)
index 100603c..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-rtsp.h
- *
- * $Id: packet-rtsp.h,v 1.1 2000/02/15 21:03:05 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_rtsp(const u_char *, int, frame_data *, proto_tree *);
index 76788a39526524d4cd95f9e6a7493ac2d41e3ab9..adfd4c163f7a5551a3a4eda06027ccfa9300285d 100644 (file)
@@ -4,7 +4,7 @@
  *
  * Heikki Vatiainen <hessu@cs.tut.fi>
  *
- * $Id: packet-sap.c,v 1.5 2000/02/15 21:03:07 gram Exp $
+ * $Id: packet-sap.c,v 1.6 2000/04/08 07:07:35 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -45,6 +45,8 @@
 #include "packet-ipv6.h"
 #include "packet-sdp.h"
 
+#define UDP_PORT_SAP   9875
+
 #define MCAST_SAP_VERSION_MASK 0xE0 /* 3 bits for  SAP version*/
 #define MCAST_SAP_VERSION_SHIFT 5   /* Right shift 5 bits to get the version */
 #define MCAST_SAP_VER0 0            /* Version 0 */
@@ -124,7 +126,8 @@ static gint ett_sap_flags = -1;
 static gint ett_sap_auth = -1;
 static gint ett_sap_authf = -1;
 
-void dissect_sap(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
+static void
+dissect_sap(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         int sap_version, is_ipv6, is_del, is_enc, is_comp, addr_len;
         guint8 auth_len;
@@ -316,3 +319,9 @@ void proto_register_sap(void)
   proto_register_field_array(proto_sap, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_sap(void)
+{
+  dissector_add("udp.port", UDP_PORT_SAP, dissect_sap);
+}
diff --git a/packet-sap.h b/packet-sap.h
deleted file mode 100644 (file)
index b47846d..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-sap.h
- *
- * $Id: packet-sap.h,v 1.1 2000/02/15 21:03:08 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_sap(const u_char *, int, frame_data *, proto_tree *);
index dd51b9b0c2ac7c57ce7041f22c16189fce2eb5d9..c816e3426b55d423c2e467fa15c2331e65ad29b5 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for SNMP (simple network management protocol)
  * D.Jorand (c) 1998
  *
- * $Id: packet-snmp.c,v 1.26 2000/03/15 07:12:55 guy Exp $
+ * $Id: packet-snmp.c,v 1.27 2000/04/08 07:07:36 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -190,6 +190,9 @@ static int proto_snmp = -1;
 
 static gint ett_snmp = -1;
 
+#define UDP_PORT_SNMP          161
+#define UDP_PORT_SNMP_TRAP     162
+
 /* Protocol version numbers */
 #define SNMP_VERSION_1 0
 #define SNMP_VERSION_2c        1
@@ -1176,3 +1179,10 @@ proto_register_snmp(void)
  /*       proto_register_field_array(proto_snmp, hf, array_length(hf));*/
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_snmp(void)
+{
+       dissector_add("udp.port", UDP_PORT_SNMP, dissect_snmp);
+       dissector_add("udp.port", UDP_PORT_SNMP_TRAP, dissect_snmp);
+}
index a88bdb3a189351a6381c14499b1b4111d6daff6d..dea077c72e52b17852de5eae77431f5c4cffab3d 100644 (file)
@@ -6,7 +6,7 @@
  *       In particular I have not had an opportunity to see how it 
  *       responds to SRVLOC over TCP.
  *
- * $Id: packet-srvloc.c,v 1.6 2000/01/22 02:00:24 guy Exp $
+ * $Id: packet-srvloc.c,v 1.7 2000/04/08 07:07:37 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
 #include "packet.h"
 #include "packet-ipv6.h"
 
-int proto_srvloc = -1;
-int hf_srvloc_version = -1;
-int hf_srvloc_function = -1;
-int hf_srvloc_flags = -1;
-int hf_srvloc_error = -1;
+static int proto_srvloc = -1;
+static int hf_srvloc_version = -1;
+static int hf_srvloc_function = -1;
+static int hf_srvloc_flags = -1;
+static int hf_srvloc_error = -1;
 
 static gint ett_srvloc = -1;
-gint ett_srvloc_flags = -1;
+static gint ett_srvloc_flags = -1;
+
+#define TCP_PORT_SRVLOC        427
+#define UDP_PORT_SRVLOC        427
 
 /* Define function types */
 
@@ -173,7 +176,7 @@ dissect_authblk(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 
 /* Packet dissection routine called by tcp & udp when port 427 detected */
 
-void
+static void
 dissect_srvloc(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
     proto_item *ti, *tf;
@@ -430,3 +433,11 @@ proto_register_srvloc(void)
     proto_register_field_array(proto_srvloc, hf, array_length(hf));
     proto_register_subtree_array(ett, array_length(ett));
 };
+
+void
+proto_reg_handoff_srvloc(void)
+{
+    dissector_add("tcp.port", TCP_PORT_SRVLOC, dissect_srvloc);
+    dissector_add("udp.port", UDP_PORT_SRVLOC, dissect_srvloc);
+}
+
diff --git a/packet-srvloc.h b/packet-srvloc.h
deleted file mode 100644 (file)
index 86ab043..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-srvloc.h
- *
- * $Id: packet-srvloc.h,v 1.1 2000/02/15 21:03:11 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_srvloc(const u_char *, int, frame_data *, proto_tree *);
index 74ce291fdd29447b830476677aa92a96867c22d2..ec5dad55276792d6982764e4ea35db9650f7679c 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-tacacs.c
  * Routines for cisco tacacs/tacplus/AAA packet dissection
  *
- * $Id: packet-tacacs.c,v 1.2 2000/01/07 22:05:41 guy Exp $
+ * $Id: packet-tacacs.c,v 1.3 2000/04/08 07:07:39 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -49,13 +49,16 @@ static int hf_tacacs_version = -1;
 
 static gint ett_tacacs = -1;
 
-void
+#define UDP_PORT_TACACS        49
+#define TCP_PORT_TACACS        49
+
+static void
 dissect_tacacs(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *tacacs_tree, *ti;
 
        if (check_col(fd, COL_PROTOCOL))
-       col_add_str(fd, COL_PROTOCOL, "TACACS");
+               col_add_str(fd, COL_PROTOCOL, "TACACS");
 
        if (check_col(fd, COL_INFO))
        {
@@ -87,7 +90,7 @@ dissect_tacacs(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
        }
 }
 
-void
+static void
 dissect_tacplus(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *tacacs_tree, *ti;
@@ -150,3 +153,10 @@ proto_register_tacacs(void)
        proto_register_field_array(proto_tacacs, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_tacacs(void)
+{
+       dissector_add("udp.port", UDP_PORT_TACACS, dissect_tacacs);
+       dissector_add("tcp.port", TCP_PORT_TACACS, dissect_tacplus);
+}
diff --git a/packet-tacacs.h b/packet-tacacs.h
deleted file mode 100644 (file)
index be017a0..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-/* packet-tacacs.h
- *
- * $Id: packet-tacacs.h,v 1.1 2000/02/15 21:03:14 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_tacacs(const u_char *, int, frame_data *, proto_tree *);
-void dissect_tacplus(const u_char *, int, frame_data *, proto_tree *);
index 03b9f3f049c94693607e583df02e3c5e170e45c4..b144c3575a752e4e7ee635e2152b59ced384a289 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-tcp.c
  * Routines for TCP packet disassembly
  *
- * $Id: packet-tcp.c,v 1.65 2000/04/08 03:32:10 guy Exp $
+ * $Id: packet-tcp.c,v 1.66 2000/04/08 07:07:39 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
 
 #include "plugins.h"
 
-#include "packet-bgp.h"
 #include "packet-ip.h"
-#include "packet-ftp.h"
 #include "packet-giop.h"
-#include "packet-http.h"
-#include "packet-imap.h"
-#include "packet-irc.h"
-#include "packet-ldap.h"
-#include "packet-lpd.h"
-#include "packet-mapi.h"
-#include "packet-nbns.h"
-#include "packet-ncp.h"
-#include "packet-nntp.h"
-#include "packet-ntp.h"
-#include "packet-pop.h"
-#include "packet-pptp.h"
 #include "packet-rpc.h"
-#include "packet-rtsp.h"
-#include "packet-srvloc.h"
-#include "packet-tacacs.h"
-#include "packet-telnet.h"
-#include "packet-tns.h"
 #include "packet-yhoo.h"
 
 extern FILE* data_out_file;
@@ -110,32 +91,8 @@ static dissector_table_t subdissector_table;
 
 /* TCP Ports */
 
-#define TCP_PORT_FTPDATA               20
-#define TCP_PORT_FTP                   21
-#define TCP_PORT_TELNET                        23
 #define TCP_PORT_SMTP                  25
-#define TCP_PORT_HTTP                  80
-#define TCP_PORT_TACACS                        49
-#define TCP_PORT_POP                   110
-#define TCP_PORT_NNTP                  119
-#define TCP_PORT_NTP                   123
-#define TCP_PORT_NBSS                  139
-#define TCP_PORT_IMAP                  143
-#define TCP_PORT_BGP                   179
-#define TCP_PORT_LDAP                  389
-#define TCP_PORT_SRVLOC                        427
-#define TCP_PORT_PRINTER               515
-#define TCP_PORT_NCP                   524
-#define TCP_PORT_RTSP                  554
-#define TCP_PORT_MAPI                  1065
-#define TCP_PORT_TNS                   1521
-#define TCP_PORT_PPTP                  1723
-#define TCP_PORT_PROXY_HTTP            3128
-#define TCP_PORT_PROXY_ADMIN_HTTP      3132
 #define TCP_PORT_YHOO                  5050
-#define TCP_ALT_PORT_HTTP              8080
-#define TCP_PORT_IRC                   6667
-       /* good candidate for dynamic port specification */
 
 /* TCP structs and definitions */
 
@@ -661,30 +618,4 @@ proto_register_tcp(void)
 
 /* subdissector code */
        subdissector_table = register_dissector_table(hf_tcp_port);
-
-       dissector_add( "tcp.port", TCP_PORT_PRINTER, &dissect_lpd);
-       dissector_add( "tcp.port", TCP_PORT_TELNET, &dissect_telnet);
-       dissector_add( "tcp.port", TCP_PORT_FTPDATA, &dissect_ftpdata);
-       dissector_add( "tcp.port", TCP_PORT_FTP, &dissect_ftp);
-       dissector_add( "tcp.port", TCP_PORT_POP, &dissect_pop);
-       dissector_add( "tcp.port", TCP_PORT_IMAP, &dissect_imap);
-       dissector_add( "tcp.port", TCP_PORT_NNTP, &dissect_nntp);
-       dissector_add( "tcp.port", TCP_PORT_NTP, &dissect_ntp);
-       dissector_add( "tcp.port", TCP_PORT_PPTP, &dissect_pptp);
-       dissector_add( "tcp.port", TCP_PORT_PPTP, &dissect_pptp);
-       dissector_add( "tcp.port", TCP_PORT_HTTP, &dissect_http);
-       dissector_add( "tcp.port", TCP_ALT_PORT_HTTP, &dissect_http);
-       dissector_add( "tcp.port", 631, &dissect_http); /* IPP */
-       dissector_add( "tcp.port", TCP_PORT_PROXY_HTTP, &dissect_http);
-       dissector_add( "tcp.port", TCP_PORT_PROXY_ADMIN_HTTP, &dissect_http);
-       dissector_add( "tcp.port", TCP_PORT_NBSS, &dissect_nbss);
-       dissector_add( "tcp.port", TCP_PORT_RTSP, &dissect_rtsp);
-       dissector_add( "tcp.port", TCP_PORT_BGP, &dissect_bgp);
-       dissector_add( "tcp.port", TCP_PORT_TACACS, &dissect_tacplus);
-       dissector_add( "tcp.port", TCP_PORT_MAPI, &dissect_mapi);
-       dissector_add( "tcp.port", TCP_PORT_TNS, &dissect_tns);
-       dissector_add( "tcp.port", TCP_PORT_IRC, &dissect_irc);
-       dissector_add( "tcp.port", TCP_PORT_LDAP, &dissect_ldap);
-       dissector_add( "tcp.port", TCP_PORT_SRVLOC, &dissect_srvloc);
-       dissector_add( "tcp.port", TCP_PORT_NCP, &dissect_ncp);
 }
index 06b9ce698412aa3fe86a5953751166cc0b96aaea..078c5565ace33208c0d9d293ede1bebe73831dcc 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for telnet packet dissection
  * Copyright 1999, Richard Sharpe <rsharpe@ns.aus.com>
  *
- * $Id: packet-telnet.c,v 1.10 2000/03/23 10:49:33 guy Exp $
+ * $Id: packet-telnet.c,v 1.11 2000/04/08 07:07:40 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -50,6 +50,8 @@ static gint ett_telnet_subopt = -1;
 
 /* Some defines for Telnet */
 
+#define TCP_PORT_TELNET                        23
+
 #define TN_IAC   255
 #define TN_DONT  254
 #define TN_DO    253
@@ -290,7 +292,7 @@ telnet_command(proto_tree *telnet_tree, const u_char *pd, int start_offset)
   return offset;
 }
 
-void
+static void
 dissect_telnet(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
         proto_tree      *telnet_tree, *ti;
@@ -367,3 +369,9 @@ proto_register_telnet(void)
  /*       proto_register_field_array(proto_telnet, hf, array_length(hf));*/
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_telnet(void)
+{
+       dissector_add("tcp.port", TCP_PORT_TELNET, dissect_telnet);
+}
diff --git a/packet-telnet.h b/packet-telnet.h
deleted file mode 100644 (file)
index ad8065b..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-telnet.h
- *
- * $Id: packet-telnet.h,v 1.1 2000/02/15 21:03:17 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_telnet(const u_char *, int, frame_data *, proto_tree *);
index 1c6791c3274e2288701c2f2ba1521569211012e9..5a564112af3369b80bb963564d2cf46c05ee3150 100644 (file)
@@ -5,7 +5,7 @@
  * Craig Newell <CraigN@cheque.uq.edu.au>
  *     RFC2347 TIME Option Extension
  *
- * $Id: packet-time.c,v 1.3 2000/03/20 22:52:48 gram Exp $
+ * $Id: packet-time.c,v 1.4 2000/04/08 07:07:40 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -39,7 +39,9 @@ static int hf_time_time = -1;
 
 static gint ett_time = -1;
 
-void
+#define UDP_PORT_TIME    37
+
+static void
 dissect_time(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
   proto_tree   *time_tree;
@@ -49,7 +51,7 @@ dissect_time(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
     col_add_str(fd, COL_PROTOCOL, "TIME");
   
   if (check_col(fd, COL_INFO)) {
-    col_add_fstr(fd, COL_INFO, "TIME %s", pi.srcport == 37? "Response":"Request");
+    col_add_fstr(fd, COL_INFO, "TIME %s", pi.srcport == UDP_PORT_TIME? "Response":"Request");
   }
   
   if (tree) {
@@ -86,3 +88,9 @@ proto_register_time(void)
   proto_register_field_array(proto_time, hf, array_length(hf));
   proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_time(void)
+{
+  dissector_add("udp.port", UDP_PORT_TIME, dissect_time);
+}
diff --git a/packet-time.h b/packet-time.h
deleted file mode 100644 (file)
index f79504f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-time.h
- *
- * $Id: packet-time.h,v 1.1 2000/02/15 21:03:18 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_time(const u_char *, int, frame_data *, proto_tree *);
index 2b537c1e20050df57ca0c64eb567e9fc63cd3d3f..f03deb4b6b2dc2be5abd929904aa224edafd8c7e 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-tns.c
  * Routines for MSX tns packet dissection
  *
- * $Id: packet-tns.c,v 1.4 2000/01/07 22:05:41 guy Exp $
+ * $Id: packet-tns.c,v 1.5 2000/04/08 07:07:40 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -63,12 +63,14 @@ static gint ett_tns_sns = -1;
 static gint ett_tns_connect = -1;
 static gint ett_sql = -1;
 
+#define TCP_PORT_TNS                   1521
+
 static const value_string tns_type_vals[] = {
                {TNS_TYPE_CONNECT, "Connect" },
                {TNS_TYPE_ACCEPT, "Accept" },
                {TNS_TYPE_DATA, "Data" },
                {TNS_TYPE_RESEND, "Resend"},
-        {0, NULL}
+               {0, NULL}
 };
 
 
@@ -76,7 +78,7 @@ static const value_string tns_type_vals[] = {
 #define TRUNC(length) if ( ! BYTES_ARE_IN_FRAME(offset, length)) { \
                        dissect_data(pd,offset,fd,tree); return; }
 
-void dissect_tns_sns(const u_char *pd, int offset, frame_data *fd, 
+static void dissect_tns_sns(const u_char *pd, int offset, frame_data *fd, 
        proto_tree *tree, proto_tree *tns_tree)
 {
        proto_tree *sns_tree = NULL, *ti;
@@ -100,7 +102,7 @@ void dissect_tns_sns(const u_char *pd, int offset, frame_data *fd,
        }
 }
 
-void dissect_tns_data(const u_char *pd, int offset, frame_data *fd, 
+static void dissect_tns_data(const u_char *pd, int offset, frame_data *fd, 
        proto_tree *tree, proto_tree *tns_tree)
 {
 
@@ -126,7 +128,7 @@ void dissect_tns_data(const u_char *pd, int offset, frame_data *fd,
        return;
 }
 
-void dissect_tns_connect(const u_char *pd, int offset, frame_data *fd, 
+static void dissect_tns_connect(const u_char *pd, int offset, frame_data *fd, 
        proto_tree *tree, proto_tree *tns_tree)
 {
        proto_tree *connect_tree = NULL, *ti;
@@ -176,7 +178,7 @@ void dissect_tns_connect(const u_char *pd, int offset, frame_data *fd,
        return;
 }
 
-void dissect_tns_accept(const u_char *pd, int offset, frame_data *fd, 
+static void dissect_tns_accept(const u_char *pd, int offset, frame_data *fd, 
        proto_tree *tree, proto_tree *tns_tree)
 {
        dissect_data(pd,offset,fd,tns_tree);
@@ -184,7 +186,7 @@ void dissect_tns_accept(const u_char *pd, int offset, frame_data *fd,
 }
 
 
-void
+static void
 dissect_tns(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree      *tns_tree = NULL, *ti;
@@ -192,7 +194,7 @@ dissect_tns(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
        guint16 type;
 
        if (check_col(fd, COL_PROTOCOL))
-       col_add_str(fd, COL_PROTOCOL, "TNS");
+               col_add_str(fd, COL_PROTOCOL, "TNS");
 
        if (check_col(fd, COL_INFO))
        {
@@ -343,3 +345,9 @@ void proto_register_tns(void)
        proto_register_field_array(proto_tns, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_tns(void)
+{
+       dissector_add("tcp.port", TCP_PORT_TNS, dissect_tns);
+}
index 6d29f0c90cbc0d1c6381b0467db67529886d60ad..c4d9b186b6b9ad6aecce3908f80c498bdad3a5a0 100644 (file)
@@ -1,6 +1,6 @@
 /* packet-tns.h
  *
- * $Id: packet-tns.h,v 1.2 2000/02/15 21:03:19 gram Exp $
+ * $Id: packet-tns.h,v 1.3 2000/04/08 07:07:41 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -22,8 +22,6 @@
  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  */
 
-void dissect_tns(const u_char *, int, frame_data *, proto_tree *);
-
 #ifndef PACKET_TNS_H
 #define PACKET_TNS_H
 
index 209ca1767536535a32bc658c2c7e7e25aaff5dd3..c805250c84c71b23e570e6c14c1a47adf4739d75 100644 (file)
@@ -1,7 +1,7 @@
 /* packet-udp.c
  * Routines for UDP packet disassembly
  *
- * $Id: packet-udp.c,v 1.58 2000/04/04 22:26:36 oabad Exp $
+ * $Id: packet-udp.c,v 1.59 2000/04/08 07:07:41 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
 
 #include "plugins.h"
 
-#include "packet-auto_rp.h"
-#include "packet-bootp.h"
-#include "packet-dhis.h"
-#include "packet-hsrp.h"
-#include "packet-icp.h"
-#include "packet-icq.h"
-#include "packet-ipx.h"
-#include "packet-isakmp.h"
-#include "packet-l2tp.h"
-#include "packet-nbns.h"
 #include "packet-ncp.h"
-#include "packet-ntp.h"
-#include "packet-radius.h"
 #include "packet-rip.h"
-#include "packet-ripng.h"
 #include "packet-rpc.h"
 #include "packet-rx.h"
-#include "packet-sap.h"
-#include "packet-snmp.h"
-#include "packet-srvloc.h"
-#include "packet-tacacs.h"
 #include "packet-tftp.h"
-#include "packet-time.h"
 #include "packet-vines.h"
-#include "packet-wccp.h"
-#include "packet-who.h"
 
 static int proto_udp = -1;             
 static int hf_udp_srcport = -1;
@@ -93,39 +73,13 @@ typedef struct _e_udphdr {
 
 /* UDP Ports -> should go in packet-udp.h */
 
-#define UDP_PORT_TIME    37
-#define UDP_PORT_TACACS  49
-#define UDP_PORT_BOOTPS  67
 #define UDP_PORT_TFTP    69
-#define UDP_PORT_NTP   123
-#define UDP_PORT_NBNS  137
-#define UDP_PORT_NBDGM 138
-#define UDP_PORT_SNMP   161
-#define UDP_PORT_SNMP_TRAP 162
-#define UDP_PORT_IPX    213            /* RFC 1234 */
-#define UDP_PORT_SRVLOC 427
-#define UDP_PORT_PIM_RP_DISC 496
-#define UDP_PORT_ISAKMP        500
-#define UDP_PORT_WHO    513
 #define UDP_PORT_RIP    520
-#define UDP_PORT_RIPNG  521
 #define UDP_PORT_NCP    524
 #define UDP_PORT_VINES 573
-#define UDP_PORT_RADIUS 1645
-#define UDP_PORT_L2TP   1701
-#define UDP_PORT_RADIUS_NEW 1812
-#define UDP_PORT_RADACCT 1646
-#define UDP_PORT_RADACCT_NEW 1813
-#define UDP_PORT_HSRP   1985
-#define UDP_PORT_ICP    3130
-#define UDP_PORT_ICQ   4000
-#define UDP_PORT_SAP   9875
 #define UDP_PORT_RX_LOW 7000
 #define UDP_PORT_RX_HIGH 7009
 #define UDP_PORT_RX_AFS_BACKUPS 7021
-#define UDP_PORT_WCCP  2048
-#define UDP_PORT_DHIS1 58800
-#define UDP_PORT_DHIS2 58801
 
 static dissector_table_t udp_dissector_table;
 
@@ -265,36 +219,4 @@ proto_register_udp(void)
 
 /* subdissector code */
        udp_dissector_table = register_dissector_table(hf_udp_port);
-
-       /* Now add the protocols we know about.
-          XXX - we should add all the UDP ports this way, rather
-          than having the giant "if", just as is now done in
-          "packet-tcp.c". */
-
-       dissector_add("udp.port", UDP_PORT_TIME, dissect_time);
-       dissector_add("udp.port", UDP_PORT_TACACS, dissect_tacacs);
-       dissector_add("udp.port", UDP_PORT_BOOTPS, dissect_bootp);
-       dissector_add("udp.port", UDP_PORT_NTP, dissect_ntp);
-       dissector_add("udp.port", UDP_PORT_NBNS, dissect_nbns);
-       dissector_add("udp.port", UDP_PORT_NBDGM, dissect_nbdgm);
-       dissector_add("udp.port", UDP_PORT_SNMP, dissect_snmp);
-       dissector_add("udp.port", UDP_PORT_SNMP_TRAP, dissect_snmp);
-       dissector_add("udp.port", UDP_PORT_IPX, dissect_ipx);
-       dissector_add("udp.port", UDP_PORT_SRVLOC, dissect_srvloc);
-       dissector_add("udp.port", UDP_PORT_PIM_RP_DISC, dissect_auto_rp);
-       dissector_add("udp.port", UDP_PORT_ISAKMP, dissect_isakmp);
-       dissector_add("udp.port", UDP_PORT_WHO, dissect_who);
-       dissector_add("udp.port", UDP_PORT_RIPNG, dissect_ripng);
-       dissector_add("udp.port", UDP_PORT_RADIUS, dissect_radius);
-       dissector_add("udp.port", UDP_PORT_L2TP, dissect_l2tp);
-       dissector_add("udp.port", UDP_PORT_RADIUS_NEW, dissect_radius);
-       dissector_add("udp.port", UDP_PORT_RADACCT, dissect_radius);
-       dissector_add("udp.port", UDP_PORT_RADACCT_NEW, dissect_radius);
-       dissector_add("udp.port", UDP_PORT_HSRP, dissect_hsrp);
-       dissector_add("udp.port", UDP_PORT_ICP, dissect_icp);
-       dissector_add("udp.port", UDP_PORT_ICQ, dissect_icq);
-       dissector_add("udp.port", UDP_PORT_SAP, dissect_sap);
-       dissector_add("udp.port", UDP_PORT_WCCP, dissect_wccp);
-       dissector_add("udp.port", UDP_PORT_DHIS1, dissect_dhis);
-       dissector_add("udp.port", UDP_PORT_DHIS2, dissect_dhis);
 }
index 88c208be9c6cfa00b01df2edd0b8326c6f4878af..ca4a99e5734acb112f1580a39d3f6821f4e110be 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for Web Cache Coordination Protocol dissection
  * Jerry Talkington <jerryt@netapp.com>
  *
- * $Id: packet-wccp.c,v 1.5 2000/03/12 04:47:51 gram Exp $
+ * $Id: packet-wccp.c,v 1.6 2000/04/08 07:07:41 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -60,6 +60,9 @@ static gint ett_cache_info = -1;
  *
  * if it hasn't expired yet.
  */
+
+#define UDP_PORT_WCCP  2048
+
 #define WCCPv1                 0x0004
 #define WCCP_HERE_I_AM         7
 #define WCCP_I_SEE_YOU         8
@@ -89,7 +92,7 @@ static int wccp_bucket_info(guint8 bucket_info, proto_tree *bucket_tree,
     guint32 start, int offset);
 static gchar *bucket_name(guint8 bucket);
 
-void 
+static void 
 dissect_wccp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
        proto_tree *wccp_tree = NULL;
@@ -334,3 +337,9 @@ proto_register_wccp(void)
        proto_register_field_array(proto_wccp, hf, array_length(hf));
        proto_register_subtree_array(ett, array_length(ett));
 }
+
+void
+proto_reg_handoff_wccp(void)
+{
+       dissector_add("udp.port", UDP_PORT_WCCP, dissect_wccp);
+}
diff --git a/packet-wccp.h b/packet-wccp.h
deleted file mode 100644 (file)
index 7163be4..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-wccp.h
- *
- * $Id: packet-wccp.h,v 1.1 2000/02/15 21:03:27 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_wccp(const u_char *, int, frame_data *, proto_tree *);
index 1c67041b677cd2758b1dc5613d671eeb1f9f66de..c5f78046f1827a13402797cc5aa9aac462e0457b 100644 (file)
@@ -2,7 +2,7 @@
  * Routines for who protocol (see man rwhod)
  * Gilbert Ramirez <gram@xiexie.org>
  *
- * $Id: packet-who.c,v 1.4 2000/03/12 04:47:51 gram Exp $
+ * $Id: packet-who.c,v 1.5 2000/04/08 07:07:41 guy Exp $
  *
  * Ethereal - Network traffic analyzer
  * By Gerald Combs <gerald@zing.org>
@@ -89,10 +89,11 @@ static int hf_who_idle = -1;
 static gint ett_who = -1;
 static gint ett_whoent = -1;
 
+#define UDP_PORT_WHO    513
 
 static void dissect_whoent(const u_char *pd, int offset, frame_data *fd, proto_tree *tree);
 
-void
+static void
 dissect_who(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
 {
 
@@ -295,3 +296,8 @@ proto_register_who(void)
        proto_register_subtree_array(ett, array_length(ett));
 }
 
+void
+proto_reg_handoff_who(void)
+{
+       dissector_add("udp.port", UDP_PORT_WHO, dissect_who);
+}
diff --git a/packet-who.h b/packet-who.h
deleted file mode 100644 (file)
index cb1bdd4..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-/* packet-who.h
- *
- * $Id: packet-who.h,v 1.1 2000/02/15 21:03:28 gram Exp $
- *
- * Ethereal - Network traffic analyzer
- * By Gerald Combs <gerald@zing.org>
- * 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.
- */
-
-
-void dissect_who(const u_char *, int, frame_data *, proto_tree *);