diff options
author | Guy Harris <guy@alum.mit.edu> | 2000-04-03 09:41:31 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2000-04-03 09:41:31 +0000 |
commit | 3ee409084ca5ad3d8c0eb434750e914d87c01d88 (patch) | |
tree | 7d4e9b44453a62c4a84a6d8a267e544c4d37fe60 /packet-udp.c | |
parent | 7678c401dd54acfa4b7efed39276a3a1b08e3968 (diff) |
Move the creation of, and registration of protocols known to UDP in, the
hash table attached to "udp.port" out of "init_dissect_udp()" into
"proto_register_udp()", so that it's done the way TCP does it, and then
get rid of "init_dissect_udp()".
svn path=/trunk/; revision=1781
Diffstat (limited to 'packet-udp.c')
-rw-r--r-- | packet-udp.c | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/packet-udp.c b/packet-udp.c index a62915bcf5..feb8cffadb 100644 --- a/packet-udp.c +++ b/packet-udp.c @@ -1,7 +1,7 @@ /* packet-udp.c * Routines for UDP packet disassembly * - * $Id: packet-udp.c,v 1.53 2000/04/03 09:24:08 guy Exp $ + * $Id: packet-udp.c,v 1.54 2000/04/03 09:41:12 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@zing.org> @@ -131,22 +131,6 @@ typedef struct _e_udphdr { static dissector_table_t udp_dissector_table; -void init_dissect_udp(void) { - - udp_dissector_table = register_dissector_table(hf_udp_port); - - /* Now add the protocols we know about */ - - dissector_add("udp.port", UDP_PORT_BOOTPS, dissect_bootp); - dissector_add("udp.port", UDP_PORT_TFTP, dissect_tftp); - dissector_add("udp.port", UDP_PORT_SAP, dissect_sap); - dissector_add("udp.port", UDP_PORT_HSRP, dissect_hsrp); - dissector_add("udp.port", UDP_PORT_PIM_RP_DISC, dissect_auto_rp); - dissector_add("udp.port", UDP_PORT_TACACS, dissect_tacacs); - dissector_add("udp.port", UDP_PORT_DHIS1, dissect_dhis); - dissector_add("udp.port", UDP_PORT_DHIS2, dissect_dhis); -} - void dissect_udp(const u_char *pd, int offset, frame_data *fd, proto_tree *tree) { e_udphdr uh; @@ -334,4 +318,21 @@ proto_register_udp(void) proto_udp = proto_register_protocol("User Datagram Protocol", "udp"); proto_register_field_array(proto_udp, hf, array_length(hf)); proto_register_subtree_array(ett, array_length(ett)); + +/* 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_BOOTPS, dissect_bootp); + dissector_add("udp.port", UDP_PORT_TFTP, dissect_tftp); + dissector_add("udp.port", UDP_PORT_SAP, dissect_sap); + dissector_add("udp.port", UDP_PORT_HSRP, dissect_hsrp); + dissector_add("udp.port", UDP_PORT_PIM_RP_DISC, dissect_auto_rp); + dissector_add("udp.port", UDP_PORT_TACACS, dissect_tacacs); + dissector_add("udp.port", UDP_PORT_DHIS1, dissect_dhis); + dissector_add("udp.port", UDP_PORT_DHIS2, dissect_dhis); } |