summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsilby <silby@FreeBSD.org>2007-12-04 07:11:13 +0000
committersilby <silby@FreeBSD.org>2007-12-04 07:11:13 +0000
commite548183f0ae7359b95b3fa42ec00ff3cd1fa50b8 (patch)
treecef4de18c4d3a8fdde9c612b8037c77332620579
parent200640eacfbecd3f053374044fbc0e1a7f39b99f (diff)
downloadFreeBSD-src-e548183f0ae7359b95b3fa42ec00ff3cd1fa50b8.zip
FreeBSD-src-e548183f0ae7359b95b3fa42ec00ff3cd1fa50b8.tar.gz
Fix SACK negotiation that was broken in rev 1.105.
Before this fix, FreeBSD would negotiate SACK on outgoing connections, but would always fail to negotiate it on incoming connections. Discovered by: James Healy and Lawrence Stewart Submitted by: James Healy and Lawrence Stewart MFC after: 3 days
-rw-r--r--sys/netinet/tcp_syncache.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c
index 67e8c58..946706d 100644
--- a/sys/netinet/tcp_syncache.c
+++ b/sys/netinet/tcp_syncache.c
@@ -1184,7 +1184,7 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th,
if (to->to_flags & TOF_SIGNATURE)
sc->sc_flags |= SCF_SIGNATURE;
#endif
- if (to->to_flags & TOF_SACK)
+ if (to->to_flags & TOF_SACKPERM)
sc->sc_flags |= SCF_SACK;
if (to->to_flags & TOF_MSS)
sc->sc_peer_mss = to->to_mss; /* peer mss may be zero */
OpenPOWER on IntegriCloud