diff options
author | jlemon <jlemon@FreeBSD.org> | 2001-12-21 04:41:08 +0000 |
---|---|---|
committer | jlemon <jlemon@FreeBSD.org> | 2001-12-21 04:41:08 +0000 |
commit | 87be243fa61c8f92dfb48e69ccb8e0ff79ab22cc (patch) | |
tree | dcae0b83a338727559fd79c7cbb292628a983d0d /sys/netinet/tcp_syncache.c | |
parent | d39f9b45170a78e9b6575fa4c1780fa7dfeda9ed (diff) | |
download | FreeBSD-src-87be243fa61c8f92dfb48e69ccb8e0ff79ab22cc.zip FreeBSD-src-87be243fa61c8f92dfb48e69ccb8e0ff79ab22cc.tar.gz |
If syncookies are disabled (net.inet.tcp.syncookies) then use the faster
arc4random() routine to generate ISNs instead of creating them with MD5().
Suggested by: silby
Diffstat (limited to 'sys/netinet/tcp_syncache.c')
-rw-r--r-- | sys/netinet/tcp_syncache.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index d6ce983..bf6432b 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -900,7 +900,10 @@ syncache_add(inc, to, th, sop, m) sc->sc_route.ro_rt = NULL; } sc->sc_irs = th->th_seq; - sc->sc_iss = syncookie_generate(sc); + if (tcp_syncookies) + sc->sc_iss = syncookie_generate(sc); + else + sc->sc_iss = arc4random(); /* Initial receive window: clip sbspace to [0 .. TCP_MAXWIN] */ win = sbspace(&so->so_rcv); |