aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--reassemble.c9
-rw-r--r--reassemble.h5
2 files changed, 11 insertions, 3 deletions
diff --git a/reassemble.c b/reassemble.c
index 5d6a4544ed..b89b5bff72 100644
--- a/reassemble.c
+++ b/reassemble.c
@@ -1,7 +1,7 @@
/* reassemble.c
* Routines for {fragment,segment} reassembly
*
- * $Id: reassemble.c,v 1.29 2003/03/04 06:47:10 guy Exp $
+ * $Id: reassemble.c,v 1.30 2003/04/09 09:04:08 sahlberg Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -465,6 +465,7 @@ fragment_add(tvbuff_t *tvb, int offset, packet_info *pinfo, guint32 id,
fd_head->len=0;
fd_head->flags=0;
fd_head->data=NULL;
+ fd_head->reassembled_in=0;
/*
* We're going to use the key to insert the fragment,
@@ -647,7 +648,8 @@ fragment_add(tvbuff_t *tvb, int offset, packet_info *pinfo, guint32 id,
/* mark this packet as defragmented.
allows us to skip any trailing fragments */
fd_head->flags |= FD_DEFRAGMENTED;
-
+ fd_head->reassembled_in=pinfo->fd->num;
+
return fd_head;
}
@@ -837,6 +839,7 @@ fragment_add_seq_work(fragment_data *fd_head, tvbuff_t *tvb, int offset,
/* mark this packet as defragmented.
allows us to skip any trailing fragments */
fd_head->flags |= FD_DEFRAGMENTED;
+ fd_head->reassembled_in=pinfo->fd->num;
return TRUE;
}
@@ -892,6 +895,7 @@ fragment_add_seq(tvbuff_t *tvb, int offset, packet_info *pinfo, guint32 id,
fd_head->len=0;
fd_head->flags=FD_BLOCKSEQUENCE;
fd_head->data=NULL;
+ fd_head->reassembled_in=0;
/*
* We're going to use the key to insert the fragment,
@@ -1031,6 +1035,7 @@ fragment_add_seq_check_work(tvbuff_t *tvb, int offset, packet_info *pinfo,
fd_head->len=0;
fd_head->flags=FD_BLOCKSEQUENCE;
fd_head->data=NULL;
+ fd_head->reassembled_in=0;
if (!more_frags) {
/*
diff --git a/reassemble.h b/reassemble.h
index f1276f0d10..38301ef732 100644
--- a/reassemble.h
+++ b/reassemble.h
@@ -1,7 +1,7 @@
/* reassemble.h
* Declarations of outines for {fragment,segment} reassembly
*
- * $Id: reassemble.h,v 1.13 2002/12/19 11:22:38 sahlberg Exp $
+ * $Id: reassemble.h,v 1.14 2003/04/09 09:04:08 sahlberg Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -57,6 +57,9 @@ typedef struct _fragment_data {
guint32 offset;
guint32 len;
guint32 datalen; /*Only valid in first item of list */
+ guint32 reassembled_in; /* frame where this PDU was reassembled,
+ only valid in the first item of the list
+ and when FD_DEFRAGMENTED is set*/
guint32 flags;
unsigned char *data;
} fragment_data;