aboutsummaryrefslogtreecommitdiffstats
path: root/packet-nbns.c
diff options
context:
space:
mode:
authorRichard Sharpe <sharpe@ns.aus.com>1999-08-21 08:45:09 +0000
committerRichard Sharpe <sharpe@ns.aus.com>1999-08-21 08:45:09 +0000
commit0ccb231a56276f255bc67eeb3cdc5c90cf2e8753 (patch)
treecd1e67e18c520416d7d87e051710186445e5092c /packet-nbns.c
parent3a41de3bbb8a67f1a6d4d1781e648cf7d75973ee (diff)
downloadwireshark-0ccb231a56276f255bc67eeb3cdc5c90cf2e8753.tar.gz
wireshark-0ccb231a56276f255bc67eeb3cdc5c90cf2e8753.tar.bz2
wireshark-0ccb231a56276f255bc67eeb3cdc5c90cf2e8753.zip
This is the code in packet-nbns that handles continuation messages.
It checks to see if the packet we have in front of us does not start with one of the four NetBIOS over TCP/IP message types, or if it is a data message, then looks for \0377SMB in the first four bytes ... It seems to work well on one large trace of Samba activity that I have. ` svn path=/trunk/; revision=536
Diffstat (limited to 'packet-nbns.c')
-rw-r--r--packet-nbns.c26
1 files changed, 25 insertions, 1 deletions
diff --git a/packet-nbns.c b/packet-nbns.c
index bf074ef19f..a91ae4db5a 100644
--- a/packet-nbns.c
+++ b/packet-nbns.c
@@ -4,7 +4,7 @@
* Gilbert Ramirez <gram@verdict.uthscsa.edu>
* Much stuff added by Guy Harris <guy@netapp.com>
*
- * $Id: packet-nbns.c,v 1.24 1999/08/18 00:57:51 guy Exp $
+ * $Id: packet-nbns.c,v 1.25 1999/08/21 08:45:09 sharpe Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@zing.org>
@@ -1277,6 +1277,30 @@ dissect_nbss(const u_char *pd, int offset, frame_data *fd, proto_tree *tree)
if (flags & NBSS_FLAGS_E)
length += 65536;
+ /* Hmmm, it may be a continuation message ... */
+
+#define RJSHACK 1
+#ifdef RJSHACK
+ if (((msg_type != SESSION_REQUEST) &&
+ (msg_type != NEGATIVE_SESSION_RESPONSE) &&
+ (msg_type != RETARGET_SESSION_RESPONSE) &&
+ (msg_type != SESSION_MESSAGE)) ||
+ ((msg_type == SESSION_MESSAGE) &&
+ (memcmp(pd + offset + 4, "\377SMB", 4) != 0))) {
+
+ if (check_col(fd, COL_PROTOCOL))
+ col_add_str(fd, COL_PROTOCOL, "NBSS (TCP)");
+ if (check_col(fd, COL_INFO)) {
+ col_add_fstr(fd, COL_INFO, "NBSS (TCP) Continuation Message");
+ }
+
+ if (tree)
+ proto_tree_add_text(tree, offset, max_data, "Continuation data");
+
+ return;
+ }
+#endif
+
if (check_col(fd, COL_PROTOCOL))
col_add_str(fd, COL_PROTOCOL, "NBSS (TCP)");
if (check_col(fd, COL_INFO)) {