aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-kerberos4.c
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2004-09-19 03:51:42 +0000
committerGuy Harris <guy@alum.mit.edu>2004-09-19 03:51:42 +0000
commitf9a64fcf9d9f5bc2ebeb8d746dbac46c6bdbdb15 (patch)
tree988934f2ab485aca627541a899876fa66c609c63 /epan/dissectors/packet-kerberos4.c
parent97cd8040a8df0befb7179db8b71c71e7b36ffbb2 (diff)
Make the Kerberos 4 dissector a "new-style" dissector, so it can
indicate when it's rejected a packet. svn path=/trunk/; revision=12046
Diffstat (limited to 'epan/dissectors/packet-kerberos4.c')
-rw-r--r--epan/dissectors/packet-kerberos4.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/epan/dissectors/packet-kerberos4.c b/epan/dissectors/packet-kerberos4.c
index 8f138645ff..24a50d0751 100644
--- a/epan/dissectors/packet-kerberos4.c
+++ b/epan/dissectors/packet-kerberos4.c
@@ -65,9 +65,6 @@ static gint ett_krb4_auth_msg_type = -1;
#define UDP_PORT_KRB4 750
#define TRANSARC_SPECIAL_VERSION 0x63
-static dissector_handle_t krb4_handle;
-
-
static const value_string byte_order_vals[] = {
{ 0, "Big Endian" },
{ 1, "Little Endian" },
@@ -243,7 +240,7 @@ dissect_krb4_auth_msg_type(packet_info *pinfo, proto_tree *parent_tree, tvbuff_t
return offset;
}
-static void
+static int
dissect_krb4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
{
proto_tree *tree;
@@ -256,7 +253,7 @@ dissect_krb4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
*/
version=tvb_get_guint8(tvb, offset);
if((version!=4)&&(version!=TRANSARC_SPECIAL_VERSION)){
- return;
+ return 0;
}
/* create a tree for krb4 */
@@ -294,7 +291,7 @@ dissect_krb4(tvbuff_t *tvb, packet_info *pinfo, proto_tree *parent_tree)
case AUTH_MSG_DIE:
break;
}
-
+ return tvb_length(tvb);
}
void
@@ -375,12 +372,13 @@ proto_register_krb4(void)
"KRB4", "krb4");
proto_register_field_array(proto_krb4, hf, array_length(hf));
proto_register_subtree_array(ett, array_length(ett));
-
- krb4_handle = create_dissector_handle(dissect_krb4, proto_krb4);
}
void
proto_reg_handoff_krb4(void)
{
+ dissector_handle_t krb4_handle;
+
+ krb4_handle = new_create_dissector_handle(dissect_krb4, proto_krb4);
dissector_add("udp.port", UDP_PORT_KRB4, krb4_handle);
}