summaryrefslogtreecommitdiff
path: root/sys/netinet/tcp_syncache.c
Commit message (Collapse)AuthorAgeFilesLines
* Switch vm_zone.h with uma.h. Change over to uma interfaces.Jeff Roberson2002-03-201-8/+9
| | | | Notes: svn path=/head/; revision=92760
* This is the first part of the new kernel memory allocator. This replacesJeff Roberson2002-03-191-1/+1
| | | | | | | | | malloc(9) and vm_zone with a slab like allocator. Reviewed by: arch@ Notes: svn path=/head/; revision=92654
* NAI DBA updateRobert Watson2002-03-141-1/+1
| | | | Notes: svn path=/head/; revision=92275
* - Set inc_isipv6 in tcp6_usr_connect().Hajimu UMEMOTO2002-02-281-0/+1
| | | | | | | | | | - When making a pcb from a sync cache, do not forget to copy inc_isipv6. Obtained from: KAME MFC After: 1 week Notes: svn path=/head/; revision=91492
* When expanding a syncache entry into a socket, inherit the socket optionsJonathan Lemon2002-02-201-1/+1
| | | | | | | | from the current listen socket instead of the cached (and possibly stale) TCB pointer. Notes: svn path=/head/; revision=90982
* When a duplicate SYN arrives which matches an entry in the syncache,Jonathan Lemon2002-02-121-0/+5
| | | | | | | | | update our lazy reference to the inpcb structure, as it may have changed. Found by: dima Notes: svn path=/head/; revision=90556
* Pre-KSE/M3 commit.Julian Elischer2002-02-071-2/+2
| | | | | | | | | | | | | this is a low-functionality change that changes the kernel to access the main thread of a process via the linked list of threads rather than assuming that it is embedded in the process. It IS still embeded there but remove all teh code that assumes that in preparation for the next commit which will actually move it out. Reviewed by: peter@freebsd.org, gallatin@cs.duke.edu, benno rice, Notes: svn path=/head/; revision=90361
* The ENDPTS_EQ macro was comparing the one of the fports to itself. Fix.Jonathan Lemon2002-01-221-1/+1
| | | | | | | Submitted by: emy@boostworks.com Notes: svn path=/head/; revision=89667
* If syncookies are disabled (net.inet.tcp.syncookies) then use the fasterJonathan Lemon2001-12-211-1/+4
| | | | | | | | | arc4random() routine to generate ISNs instead of creating them with MD5(). Suggested by: silby Notes: svn path=/head/; revision=88330
* When storing an int value in a void *, use intptr_t as the cast typeJonathan Lemon2001-12-191-2/+2
| | | | | | | (instead of int) to keep the 64 bit platforms happy. Notes: svn path=/head/; revision=88195
* Extend the SYN DoS defense by adding syncookies to the syncache.Jonathan Lemon2001-12-191-14/+193
| | | | | | | | | | | | | | | All TCP ISNs that are sent out are valid cookies, which allows entries in the syncache to be dropped and still have the ACK accepted later. As all entries pass through the syncache, there is no sudden switchover from cache -> cookies when the cache is full; instead, syncache entries simply have a reduced lifetime. More details may be found in the "Resisting DoS attacks with a SYN cache" paper in the Usenix BSDCon 2002 conference proceedings. Sponsored by: DARPA, NAI Labs Notes: svn path=/head/; revision=88180
* Undo one of my last minute changes; move sc_iss up earlier so itJonathan Lemon2001-12-131-1/+1
| | | | | | | is initialized in case we take the T/TCP path. Notes: svn path=/head/; revision=87780
* Fix a bug with transmitter restart after receiving a 0 window. TheMatthew Dillon2001-12-021-1/+1
| | | | | | | | | | | | | | | | receiver was not sending an immediate ack with delayed acks turned on when the input buffer is drained, preventing the transmitter from restarting immediately. Propogate the TCP_NODELAY option to accept()ed sockets. (Helps tbench and is a good idea anyway). Some cleanup. Identify additonal issues in comments. MFC after: 1 day Notes: svn path=/head/; revision=87193
* Clear a new syncache entry first, followed by filling in values. ThisSeigo Tanimura2001-11-271-4/+4
| | | | | | | fixes route breakage due to uncleared gabage on my box. Notes: svn path=/head/; revision=86958
* Fixed a buffer overrun. In my kernel configuration, tcp_syncache happensBruce Evans2001-11-231-1/+1
| | | | | | | | | to be followed by nfsnodehashtbl, so bzeroing callouts beyond the end of tcp_syncache soon caused a null pointer panic when nfsnodehashtbl was accessed. Notes: svn path=/head/; revision=86814
* Introduce a syncache, which enables FreeBSD to withstand a SYN floodJonathan Lemon2001-11-221-0/+1161
DoS in an improved fashion over the existing code. Reviewed by: silby (in a previous iteration) Sponsored by: DARPA, NAI Labs Notes: svn path=/head/; revision=86764