aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/tcp_reass.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/netinet/tcp_reass.c')
-rw-r--r--sys/netinet/tcp_reass.c26
1 files changed, 10 insertions, 16 deletions
diff --git a/sys/netinet/tcp_reass.c b/sys/netinet/tcp_reass.c
index bf8df6aad53f..62ccb3bd138b 100644
--- a/sys/netinet/tcp_reass.c
+++ b/sys/netinet/tcp_reass.c
@@ -966,24 +966,18 @@ findpcb:
* SYN appears to be valid. Create compressed TCP state
* for syncache.
*/
- if (so->so_qlen <= so->so_qlimit) {
#ifdef TCPDEBUG
- if (so->so_options & SO_DEBUG)
- tcp_trace(TA_INPUT, ostate, tp,
- (void *)tcp_saveipgen, &tcp_savetcp, 0);
+ if (so->so_options & SO_DEBUG)
+ tcp_trace(TA_INPUT, ostate, tp,
+ (void *)tcp_saveipgen, &tcp_savetcp, 0);
#endif
- tcp_dooptions(&to, optp, optlen, TO_SYN);
- if (!syncache_add(&inc, &to, th, inp, &so, m))
- goto dropunlock;
- /*
- * Entry added to syncache, mbuf used to
- * send SYN-ACK packet. Everything unlocked
- * already.
- */
- return;
- }
- /* Catch all. Everthing that makes it down here is junk. */
- goto dropunlock;
+ tcp_dooptions(&to, optp, optlen, TO_SYN);
+ syncache_add(&inc, &to, th, inp, &so, m);
+ /*
+ * Entry added to syncache and mbuf consumed.
+ * Everything unlocked already by syncache_add().
+ */
+ return;
}
/*