diff options
author | Guy Harris <guy@alum.mit.edu> | 2007-05-22 00:00:09 +0000 |
---|---|---|
committer | Guy Harris <guy@alum.mit.edu> | 2007-05-22 00:00:09 +0000 |
commit | 6559749cd1d61f49b987b6d8610f0f2c4a8e8767 (patch) | |
tree | 83a307d6f44bf1b786625d3e4ede07144c641f40 /epan/follow.c | |
parent | 360624a4c712a324af6df350febf10bac6b59c94 (diff) |
Have the follow code keep track of whether there's any data in the TCP
stream, and, if there isn't, pop up a dialog indicating that there isn't
any data in the stream. This fixes bug 1604.
svn path=/trunk/; revision=21870
Diffstat (limited to 'epan/follow.c')
-rw-r--r-- | epan/follow.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/epan/follow.c b/epan/follow.c index 5e819e4cd4..55f5be3c9e 100644 --- a/epan/follow.c +++ b/epan/follow.c @@ -51,7 +51,8 @@ typedef struct _tcp_frag { FILE* data_out_file = NULL; -gboolean incomplete_tcp_stream = FALSE; +gboolean empty_tcp_stream; +gboolean incomplete_tcp_stream; static guint8 ip_address[2][MAX_IPADDR_LEN]; static guint tcp_port[2]; @@ -304,9 +305,12 @@ check_fragments( int index, tcp_stream_chunk *sc ) { /* this should always be called before we start to reassemble a stream */ void -reset_tcp_reassembly() { +reset_tcp_reassembly(void) +{ tcp_frag *current, *next; int i; + + empty_tcp_stream = TRUE; incomplete_tcp_stream = FALSE; for( i=0; i<2; i++ ) { seq[i] = 0; @@ -332,4 +336,5 @@ write_packet_data( int index, tcp_stream_chunk *sc, const char *data ) DISSECTOR_ASSERT(1 * sizeof(tcp_stream_chunk) == fwrite( sc, 1, sizeof(tcp_stream_chunk), data_out_file )); DISSECTOR_ASSERT(1 * sc->dlen == fwrite( data, 1, sc->dlen, data_out_file )); bytes_written[index] += sc->dlen; + empty_tcp_stream = FALSE; } |