diff options
author | Guy Harris <guy@alum.mit.edu> | 2002-12-17 08:48:38 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2002-12-17 08:48:38 +0000 |
commit | 675a2960eec6e2cdc2e5bff9a3928b5ca527e520 (patch) | |
tree | 8157a319ed661fcb970c3aa9f75fea7e39d1e0a7 | |
parent | 9c0d1cbfb7a9fab8d000d7055ac4ff265ef9a540 (diff) | |
download | wireshark-675a2960eec6e2cdc2e5bff9a3928b5ca527e520.tar.gz wireshark-675a2960eec6e2cdc2e5bff9a3928b5ca527e520.tar.bz2 wireshark-675a2960eec6e2cdc2e5bff9a3928b5ca527e520.zip |
If NBF reassembly isn't enabled, hand Data First Middle frames to
subdissectors, so that we try to dissect the first frame of a
multi-frame message as, for example, SMB, as that's the frame that
contains the SMB header. (That also means we try to dissect middle
frames, but that probably won't work unless one happens to begin with
0xff S M B.)
svn path=/trunk/; revision=6791
-rw-r--r-- | packet-netbios.c | 33 |
1 files changed, 14 insertions, 19 deletions
diff --git a/packet-netbios.c b/packet-netbios.c index 4ea49b0e62..7ec235adb8 100644 --- a/packet-netbios.c +++ b/packet-netbios.c @@ -5,7 +5,7 @@ * * derived from the packet-nbns.c * - * $Id: packet-netbios.c,v 1.53 2002/12/03 08:24:58 guy Exp $ + * $Id: packet-netbios.c,v 1.54 2002/12/17 08:48:38 guy Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs <gerald@ethereal.com> @@ -1223,26 +1223,21 @@ dissect_netbios(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree) } } else { /* - * If this is NB_DATA_FIRST_MIDDLE, - * just show it as a fragment. - * (XXX - it'd be nice to dissect it - * if it's the first fragment, but we'd - * need to do reassembly in order to - * discover that.) + * Dissect this, regardless of whether + * it's NB_DATA_FIRST_MIDDLE or + * NB_DATA_ONLY_LAST. * - * If this is NB_DATA_ONLY_LAST, dissect - * it. (XXX - it'd be nice to show it - * as a fragment if it's part of a - * fragmented datagram, but we'd need - * to do reassembly in order to discover - * that.) + * XXX - it'd be nice to show + * NB_DATA_FIRST_MIDDLE as a fragment + * if it's not the first fragment (i.e., + * MIDDLE rather than FIRST), and show + * NB_DATA_ONLY_LAST as a fragment if + * it's part of a fragmented datagram + * (i.e, LAST rather than ONLY), but + * we'd have to do reassembly to + * be able to determine that. */ - if (command == NB_DATA_FIRST_MIDDLE) - next_tvb = NULL; - else { - next_tvb = tvb_new_subset(tvb, offset, - -1, -1); - } + next_tvb = tvb_new_subset(tvb, offset, -1, -1); } if (next_tvb != NULL) dissect_netbios_payload(next_tvb, pinfo, tree); |