aboutsummaryrefslogtreecommitdiffstats
path: root/packet-tcp.c
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-08-29 11:40:24 +0000
committerRonnie Sahlberg <ronnie_sahlberg@ozemail.com.au>2003-08-29 11:40:24 +0000
commit2475b0ed97ba33f09cf9c5c84babd4f0ad129c73 (patch)
tree90815b6503747f02ba0ecadc603927af2fa2e461 /packet-tcp.c
parent431a30d06146dfd803cbef610d30283f9472be65 (diff)
If something is a KeepAlive it is just a keepalive and not also a dup ack
svn path=/trunk/; revision=8312
Diffstat (limited to 'packet-tcp.c')
-rw-r--r--packet-tcp.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/packet-tcp.c b/packet-tcp.c
index 79f2993aa4..216e3c22c1 100644
--- a/packet-tcp.c
+++ b/packet-tcp.c
@@ -1,7 +1,7 @@
/* packet-tcp.c
* Routines for TCP packet disassembly
*
- * $Id: packet-tcp.c,v 1.203 2003/08/29 11:15:13 sahlberg Exp $
+ * $Id: packet-tcp.c,v 1.204 2003/08/29 11:40:24 sahlberg Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@@ -805,9 +805,12 @@ ack_finished:
if(ual->num_acks>1){
struct tcp_acked *ta;
ta=tcp_analyze_get_acked_struct(pinfo->fd->num, TRUE);
- ta->flags|=TCP_A_DUPLICATE_ACK;
- ta->dupack_num=ual->num_acks-1;
- ta->dupack_frame=ual->ack_frame;
+ /* keepalives are not dupacks */
+ if( (!(ta->flags&TCP_A_KEEP_ALIVE)) ){
+ ta->flags|=TCP_A_DUPLICATE_ACK;
+ ta->dupack_num=ual->num_acks-1;
+ ta->dupack_frame=ual->ack_frame;
+ }
}
}