aboutsummaryrefslogtreecommitdiffstats
path: root/conversation.h
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2000-04-12 22:53:16 +0000
committerGuy Harris <guy@alum.mit.edu>2000-04-12 22:53:16 +0000
commitcf31cb477de12dd31cda254b544290173b76fd13 (patch)
treec8532731900da17a24d9529fb203a39c853775e3 /conversation.h
parented237c129d8445a45dbe5e8819353c468e6d24ee (diff)
Jeff Foster's SOCKS dissector, support for associating dissectors
with conversations and having TCP and UDP check whether a packet is part of a conversation with a dissector and, if so, using that dissector on the conversation, and "ethertype()"-style support for allowing a dissector to call a sub-dissector via the same path that the TCP and UDP dissectors use, based on port numbers supplied by that dissector. svn path=/trunk/; revision=1837
Diffstat (limited to 'conversation.h')
-rw-r--r--conversation.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/conversation.h b/conversation.h
index 602b19687a..68acad1833 100644
--- a/conversation.h
+++ b/conversation.h
@@ -1,7 +1,7 @@
/* conversation.h
* Routines for building lists of packets that are part of a "conversation"
*
- * $Id: conversation.h,v 1.4 2000/01/05 21:48:16 gram Exp $
+ * $Id: conversation.h,v 1.5 2000/04/12 22:53:14 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -26,6 +26,7 @@
#ifndef __CONVERSATION_H__
#define __CONVERSATION_H__
+#include "packet.h" /* for conversation dissector type */
/*
* Data structure representing a conversation.
*/
@@ -33,6 +34,8 @@ typedef struct conversation {
struct conversation *next; /* pointer to next conversation on hash chain */
guint32 index; /* unique ID for conversation */
void *data; /* data our client can associate with a conversation */
+ dissector_t dissector; /* protocol dissector client can associate with conversation */
+
} conversation_t;
extern void conversation_init(void);
@@ -41,4 +44,7 @@ conversation_t *conversation_new(address *src, address *dst, port_type ptype,
conversation_t *find_conversation(address *src, address *dst, port_type ptype,
guint32 src_port, guint32 dst_port);
+dissector_t find_conversation_dissector(address *src, address *dst, port_type ptype,
+ guint32 src_port, guint32 dst_port);
+
#endif /* conversation.h */