History log of /src/sys/netinet/tcp_usrreq.c |
Revision | | Date | Author | Comments |
1.238 |
| 04-Nov-2022 |
ozaki-r | inpcb: rename functions to in6pcb_*
|
1.237 |
| 04-Nov-2022 |
ozaki-r | inpcb: rename functions to inpcb_*
Inspired by rmind-smpnet patches.
|
1.236 |
| 30-Oct-2022 |
ozaki-r | tcp: restore NULL check for inp in tcp_ctloutput
|
1.235 |
| 29-Oct-2022 |
ozaki-r | tcp: restore NULL checks for inp
|
1.234 |
| 28-Oct-2022 |
ozaki-r | inpcb: separate inpcb again to reduce the size of PCB for IPv4
The data size of PCB for IPv4 increased because of the merge of struct in6pcb. The change decreases the size to the original size by separating struct inpcb (again). struct in4pcb and in6pcb that embed struct inpcb are introduced.
Even after the separation, users don't need to realize the separation and only have to use some macros to access dedicated data. For example, inp->inp_laddr is now accessed through in4p_laddr(inp).
|
1.233 |
| 28-Oct-2022 |
ozaki-r | inpcb: integrate data structures of PCB into one
Data structures of network protocol control blocks (PCBs), i.e., struct inpcb, in6pcb and inpcb_hdr, are not organized well. Users of the data structures have to handle them separately and thus the code is cluttered and duplicated.
The commit integrates the data structures into one, struct inpcb. As a result, users of PCBs only have to handle just one data structure, so the code becomes simple.
One drawback is that the data size of PCB for IPv4 increases by 40 bytes (from 248 bytes to 288 bytes).
|
1.232 |
| 20-Sep-2022 |
ozaki-r | tcp: separate syn cache stuffs into tcp_syncache.[ch] files
No functional change.
|
1.231 |
| 28-Jun-2022 |
riastradh | tcp(4): Bail early on sendoob if not connected.
XXX Not sure if testing tp->t_template is the right way to discern this -- I just reached for it because the downstream crash is a panic on tp->t_template == NULL in tcp_output.
XXX In principle this could try connecting to the address, except it's not passed down from the logic in uipc_socket.c to tcp_sendoob.
Reported-by: syzbot+a01f4cfec72790855ce2@syzkaller.appspotmail.com
|
1.230 |
| 04-Aug-2021 |
christos | Get the value of the right variable (from RVP)
|
1.229 |
| 08-Mar-2021 |
christos | Remove the unused "addin" argument (it was always 0) and go back using a random iss by default (instead of rfc1948)
|
1.228 |
| 23-Nov-2020 |
chs | Restore correct functioning of SIOCATMARK by removing the previous change that was done to fix poll(POLLPRI | POLLRDBAND) and instead add a separate flag to track when poll() should indicate that a MSG_OOB byte is available. Re-fixes PR 54435 properly.
|
1.227 |
| 17-Oct-2020 |
mlelstv | branches: 1.227.2; Fix RTT values reported by TCP_INFO.
|
1.226 |
| 13-Apr-2020 |
maxv | hardclock_ticks -> getticks()
|
1.225 |
| 06-Aug-2019 |
riastradh | branches: 1.225.6; Clamp tcp timer quantities to reasonable ranges.
Reported-by: syzbot+259675123340bf46a6de@syzkaller.appspotmail.com
|
1.224 |
| 05-Feb-2019 |
mrg | branches: 1.224.4; adjust fallthru comments to appease gcc7.
|
1.223 |
| 28-Jan-2019 |
martin | Fix memory leaks pointed out by Ilja Van Sprundel: all sendoob() functions are expted to free both passed mbuf chains.
|
1.222 |
| 16-Dec-2018 |
christos | sbspace() does not return negative values anymore and that broke OOB data sending. Instead of depending on negative values, account for the 1024 bytes sosend() adds so that it can use all the space here in a separate function sbspace_oob(). Idea from mlelstv@
|
1.221 |
| 24-Nov-2018 |
maxv | KNF, no functional change.
|
1.220 |
| 24-Nov-2018 |
maxv | Fix kernel pointer leaks in sysctl_inpcblist.
|
1.219 |
| 03-May-2018 |
maxv | branches: 1.219.2; Remove now unused tcpip.h includes. Some were already unused before.
|
1.218 |
| 07-Apr-2018 |
maxv | Remove dead code.
|
1.217 |
| 29-Mar-2018 |
maxv | Remove #ifdef INET. Same as tcp_input.c. Makes the code easier to understand.
Also make tcp6_mtudisc() static in tcp_subr.c.
|
1.216 |
| 15-Aug-2017 |
christos | branches: 1.216.2; add some more getsockopt(2) params
|
1.215 |
| 28-Jul-2017 |
maxv | Remove TCP_COMPAT_42. This feature is a workaround for a bug in the TCP stack of BSD4.2. Having such features just does not make any sense, and looking at the code, I'm not sure it actually works.
|
1.214 |
| 24-Jan-2017 |
ozaki-r | branches: 1.214.6; Tweak softnet_lock and NET_MPSAFE
- Don't hold softnet_lock in some functions if NET_MPSAFE - Add softnet_lock to sysctl_net_inet_icmp_redirtimeout - Add softnet_lock to expire_upcalls of ip_mroute.c - Restore softnet_lock for in{,6}_pcbpurgeif{,0} if NET_MPSAFE - Mark some softnet_lock for future work
|
1.213 |
| 18-Nov-2016 |
knakahara | branches: 1.213.2; fix: "ifconfig destory" can stalls when "ifconfig" is done parallel. This problem occurs only if NET_MPSAFE on.
ifconfig destroy side: kernel entry point is ifioctl => if_clone_destroy. pr_purgeif() acquires softnet_lock, and then ifa_remove() calls pserialize_perform() holding softnet_lock. ifconfig side: kernel entry point is socreate. pr_attach()(udp_attach_wrapper()) calls sosetlock(). In this call path, sosetlock() try to acquire softnet_lock. These can cause dead lock.
|
1.212 |
| 26-Apr-2016 |
ozaki-r | branches: 1.212.2; Sweep unnecessary route.h inclusions
|
1.211 |
| 15-Feb-2016 |
rtr | Reduce code duplication.
Split creation of IPv4-Mapped IPv6 addresses into its own function and use it.
No functional change intended. As posted to tech-net@
|
1.210 |
| 14-Feb-2016 |
rtr | remove duplicated #include of <netinet/in.h>
|
1.209 |
| 24-Aug-2015 |
pooka | sprinkle _KERNEL_OPT
|
1.208 |
| 02-May-2015 |
rtr | make connect syscall use sockaddr_big and modify pr_{send,connect} nam parameter type from buf * to sockaddr *.
final commit for parameter type changes to protocol user requests
* bump kernel version to 7.99.15 for parameter type changes to pr_{send,connect}
|
1.207 |
| 26-Apr-2015 |
rtr | remove pr_generic from struct pr_usrreqs and all implementations of pr_generic in protocols.
bump to 7.99.13
approved by rmind@
|
1.206 |
| 24-Apr-2015 |
rtr | make accept, getsockname and getpeername syscalls use sockaddr_big and modify pr_{accept,sockname,peername} nam parameter type from mbuf * to sockaddr *.
* retained use of mbuftypes[MT_SONAME] for now. * bump to netbsd version 7.99.12 for parameter type change.
patch posted to tech-net@ 2015/04/19
|
1.205 |
| 03-Apr-2015 |
rtr | * change pr_bind to accept struct sockaddr * instead of struct mbuf * * update protocol bind implementations to use/expect sockaddr * instead of mbuf * * introduce sockaddr_big struct for storage of addr data passed via sys_bind; sockaddr_big is of sufficient size and alignment to accommodate all addr data sizes received. * modify sys_bind to allocate sockaddr_big instead of using an mbuf. * bump kernel version to 7.99.9 for change to pr_bind() parameter type.
Patch posted to tech-net@ http://mail-index.netbsd.org/tech-net/2015/03/15/msg005004.html
The choice to use a new structure sockaddr_big has been retained since changing sockaddr_storage size would lead to unnecessary ABI change. The use of the new structure does not preclude future work that increases the size of sockaddr_storage and at that time sockaddr_big may be trivially replaced.
Tested by mrg@ and myself, discussed with rmind@, posted to tech-net@
|
1.204 |
| 31-Mar-2015 |
ozaki-r | Remove unnecessary opt_ipsec.h inclusions
|
1.203 |
| 14-Feb-2015 |
he | Port over the TCP_INFO socket option from FreeBSD, originally from the Linux 2.6 TCP API. This permits the caller to query certain information about a TCP connection, and is used by pkgsrc's net/iperf3 test program if available.
This extends struct tcbcb with three fields to count retransmits, out-of-sequence receives and zero window announcements, and will therefore warrant a kernel revision bump (done separately).
|
1.202 |
| 10-Nov-2014 |
maxv | branches: 1.202.2; Do not uselessly include <sys/malloc.h>.
|
1.201 |
| 18-Oct-2014 |
snj | src is too big these days to tolerate superfluous apostrophes. It's "its", people!
|
1.200 |
| 09-Aug-2014 |
rtr | branches: 1.200.2; split PRU_CONNECT2 & PRU_PURGEIF function out of pr_generic() usrreq switches and put into separate functions
- always KASSERT(solocked(so)) even if not implemented (for PRU_CONNECT2 only)
- replace calls to pr_generic() with req = PRU_CONNECT2 with calls to pr_connect2()
- replace calls to pr_generic() with req = PRU_PURGEIF with calls to pr_purgeif()
put common code from unp_connect2() (used by unp_connect() into unp_connect1() and call out to it when needed
patch only briefly reviewed by rmind@
|
1.199 |
| 08-Aug-2014 |
rtr | split PRU_RCVD function out of pr_generic() usrreq switches and put into separate functions
- always KASSERT(solocked(so)) even if not implemented
- replace calls to pr_generic() with req = PRU_RCVD with calls to pr_rcvd()
|
1.198 |
| 05-Aug-2014 |
rtr | split PRU_SEND function out of pr_generic() usrreq switches and put into separate functions
xxx_send(struct socket *, struct mbuf *, struct mbuf *, struct mbuf *, struct lwp *)
- always KASSERT(solocked(so)) even if not implemented
- replace calls to pr_generic() with req = PRU_SEND with calls to pr_send()
rename existing functions that operate on PCB for consistency (and to free up their names for xxx_send() PRUs
- l2cap_send() -> l2cap_send_pcb() - sco_send() -> sco_send_pcb() - rfcomm_send() -> rfcomm_send_pcb()
patch reviewed by rmind
|
1.197 |
| 05-Aug-2014 |
rtr | get_tcppcb() is nearly always called upon entry to usrreqs so KASSERT(solocked(so)) inside it and remove the redundant KASSERT everywhere we are using tcp_getpcb()
|
1.196 |
| 05-Aug-2014 |
rtr | revert the removal of struct lwp * parameter from bind, listen and connect user requests.
this should resolve the issue relating to nfs client hangs presented recently by wiz on current-users@
|
1.195 |
| 02-Aug-2014 |
rtr | restore splsoftnet() in various usrreqs that were removed during the PRU splits. we will properly review removal after the PRU split work is complete.
|
1.194 |
| 31-Jul-2014 |
rtr | split PRU_DISCONNECT, PRU_SHUTDOWN and PRU_ABORT function out of pr_generic() usrreq switches and put into separate functions
xxx_disconnect(struct socket *) xxx_shutdown(struct socket *) xxx_abort(struct socket *)
- always KASSERT(solocked(so)) even if not implemented - replace calls to pr_generic() with req = PRU_{DISCONNECT,SHUTDOWN,ABORT} with calls to pr_{disconnect,shutdown,abort}() respectively
rename existing internal functions used to implement above functionality to permit use of the names for xxx_{disconnect,shutdown,abort}().
- {l2cap,sco,rfcomm}_disconnect() -> {l2cap,sco,rfcomm}_disconnect_pcb() - {unp,rip,tcp}_disconnect() -> {unp,rip,tcp}_disconnect1() - unp_shutdown() -> unp_shutdown1()
patch reviewed by rmind
|
1.193 |
| 30-Jul-2014 |
rtr | split PRU_CONNECT function out of pr_generic() usrreq switches and put into seaparate functions
xxx_listen(struct socket *, struct mbuf *)
- always KASSERT(solocked(so)) and KASSERT(nam != NULL) - replace calls to pr_generic() with req = PRU_CONNECT with pr_connect() - rename existin {l2cap,sco,rfcomm}_connect() to {l2cap,sco,rfcomm}_connect_pcb() respectively to permit naming consistency with other protocols functions. - drop struct lwp * parameter from unp_connect() and at_pcbconnect() and use curlwp instead where appropriate.
patch reviewed by rmind
|
1.192 |
| 30-Jul-2014 |
rtr | put boilerplate extraction of inpcb or in6pcb and tcpcb performed in tcp usrreqs into a function that can be called instead of cut & pasting it to every single usrreq function.
tcp_getpcb(struct socket *, struct inpcb **, struct in6pcb **, struct tcpcb **)
* examines the family of the provided socket and fills in either inpcb or in6pcb and tcpcb. * if the pcb is not present for the family of the socket EINVAL is returned, if the family is not AF_INET{,6} EAFNOSUPPORT is returned.
signature provided by and patch reviewed by rmind
|
1.191 |
| 24-Jul-2014 |
rtr | cleanup after last commit
- add KASSERT(req != PRU_BIND) and KASSERT(req != PRU_LISTEN) inside tcp_usrreq() as these reqs should no longer reach here. - remove (now unreachable) PRU_LISTEN case in switch.
|
1.190 |
| 24-Jul-2014 |
rtr | split PRU_BIND and PRU_LISTEN function out of pr_generic() usrreq switches and put into separate functions xxx_bind(struct socket *, struct mbuf *) xxx_listen(struct socket *)
- always KASSERT(solocked(so)) even if not implemented
- replace calls to pr_generic() with req = PRU_BIND with call to pr_bind()
- replace calls to pr_generic() with req = PRU_LISTEN with call to pr_listen()
- drop struct lwp * parameter from at_pcbsetaddr(), in_pcbbind() and unp_bind() and always use curlwp.
rename existing functions that operate on PCB for consistency (and to free up their names for xxx_{bind,listen}() PRUs
- l2cap_{bind,listen}() -> l2cap_{bind,listen}_pcb() - sco_{bind,listen}() -> sco_{bind,listen}_pcb() - rfcomm_{bind,listen}() -> rfcomm_{bind,listen}_pcb()
patch reviewed by rmind
welcome to netbsd 6.99.48
|
1.189 |
| 23-Jul-2014 |
rtr | split PRU_SENDOOB and PRU_RCVOOB function out of pr_generic() usrreq switches and put into separate functions xxx_sendoob(struct socket *, struct mbuf *, struct mbuf *) xxx_recvoob(struct socket *, struct mbuf *, int)
- always KASSERT(solocked(so)) even if request is not implemented
- replace calls to pr_generic() with req = PRU_{SEND,RCV}OOB with calls to pr_{send,recv}oob() respectively.
there is still some tweaking of m_freem(m) and m_freem(control) to come for consistency. not performed with this commit for clarity.
reviewed by rmind
|
1.188 |
| 14-Jul-2014 |
rtr | pr_generic() for req = PRU_RCVOOB is always called with control == NULL so don't bother with a conditional block that handles non-NULL, it doesn't happen.
|
1.187 |
| 10-Jul-2014 |
rmind | tcp_accept: simplify a little.
|
1.186 |
| 09-Jul-2014 |
rtr | * split PRU_ACCEPT function out of pr_generic() usrreq switches and put into a separate function xxx_accept(struct socket *, struct mbuf *)
note: future cleanup will take place to remove struct mbuf parameter type and replace it with a more appropriate type.
patch reviewed by rmind
|
1.185 |
| 09-Jul-2014 |
rtr | * split PRU_PEERADDR and PRU_SOCKADDR function out of pr_generic() usrreq switches and put into separate functions xxx_{peer,sock}addr(struct socket *, struct mbuf *).
- KASSERT(solocked(so)) always in new functions even if request is not implemented
- KASSERT(pcb != NULL) and KASSERT(nam) if the request is implemented and not for tcp.
* for tcp roll #ifdef KPROF and #ifdef DEBUG code from tcp_usrreq() into easier to cut & paste functions tcp_debug_capture() and tcp_debug_trace()
- functions provided by rmind - remaining use of PRU_{PEER,SOCK}ADDR #define to be removed in a future commit.
* rename netbt functions to permit consistency of pru function names (as has been done with other requests already split out).
- l2cap_{peer,sock}addr() -> l2cap_{peer,sock}_addr_pcb() - rfcomm_{peer,sock}addr() -> rfcomm_{peer,sock}_addr_pcb() - sco_{peer,sock}addr() -> sco_{peer,sock}_addr_pcb()
* split/refactor do_sys_getsockname(lwp, fd, which, nam) into two functions do_sys_get{peer,sock}name(fd, nam).
- move PRU_PEERADDR handling into do_sys_getpeername() from do_sys_getsockname() - have svr4_stream directly call do_sys_get{sock,peer}name() respectively instead of providing `which' & fix a DPRINTF string that incorrectly wrote "getpeername" when it meant "getsockname" - fix sys_getpeername() and sys_getsockname() to call do_sys_get{sock,peer}name() without `which' and `lwp' & adjust comments - bump kernel version for removal of lwp & which parameters from do_sys_getsockname()
note: future cleanup to remove struct mbuf * abuse in xxx_{peer,sock}name() still to come, not done in this commit since it is easier to do post split.
patch reviewed by rmind
welcome to 6.99.47
|
1.184 |
| 07-Jul-2014 |
rtr | * sprinkle KASSERT(solocked(so)); in all pr_stat() functions. * fix remaining inconsistent struct socket parameter names.
|
1.183 |
| 07-Jul-2014 |
rtr | backout change that made pr_stat return EOPNOTSUPP for protocols that were not filling in struct stat.
decision made after further discussion with rmind and investigation of how other operating systems behave. soo_stat() is doing just enough to be able to call what gets returned valid and thus justifys a return of success.
additional review will be done to determine of the pr_stat functions that were already returning EOPNOTSUPP can be considered successful with what soo_stat() is doing.
|
1.182 |
| 07-Jul-2014 |
rtr | * have pr_stat return EOPNOTSUPP consistently for all protocols that do not fill in struct stat instead of returning success.
* in pr_stat remove all checks for non-NULL so->so_pcb except where the pcb is actually used (i.e. cases where we don't return EOPNOTSUPP).
proposed on tech-net@
|
1.181 |
| 06-Jul-2014 |
rtr | * split PRU_SENSE functionality out of xxx_usrreq() switches and place into separate xxx_stat(struct socket *, struct stat *) functions. * replace calls using pr_generic with req == PRU_SENSE with pr_stat().
further change will follow that cleans up the pattern used to extract the pcb and test for its presence.
reviewed by rmind
|
1.180 |
| 01-Jul-2014 |
rtr | fix parameter types in pr_ioctl, called xx_control() functions and remove abuse of pointer to struct mbuf type.
param2 changed to u_long type and uses parameter name 'cmd' (ioctl command) param3 changed to void * type and uses parameter name 'data' param4 changed to struct ifnet * and uses parameter name 'ifp' param5 has been removed (formerly struct lwp *) and uses of 'l' have been replaced with curlwp from curproc(9).
callers have had (now unnecessary) casts to struct mbuf * removed, called code has had (now unnecessary) casts to u_long, void * and struct ifnet * respectively removed.
reviewed by rmind@
|
1.179 |
| 23-Jun-2014 |
rtr | where appropriate rename xxx_ioctl() struct mbuf * parameters from `control' to `ifp' after split from xxx_usrreq().
sys_socket.c fix wrapping of arguments to be consistent with other function calls in the file after replacing pr_usrreq() call with pr_ioctl() which required one less argument.
link_proto.c fix indentation of parameters in link_ioctl() prototype to be consistent with the rest of the file.
discussed with rmind@
|
1.178 |
| 22-Jun-2014 |
rtr | * split PRU_CONTROL functionality out of xxx_userreq() switches and place into separate xxx_ioctl() functions. * place KASSERT(req != PRU_CONTROL) inside xxx_userreq() as it is now inappropriate for req = PRU_CONTROL in xxx_userreq(). * replace calls to pr_generic() with req = PRU_CONTROL with pr_ioctl(). * remove & fixup references to PRU_CONTROL xxx_userreq() function comments. * fix various comments references for xxx_userreq() that mentioned PRU_CONTROL as xxx_userreq() no longer handles the request.
a further change will follow to fix parameter and naming inconsistencies retained from original code.
Reviewed by rmind@
|
1.177 |
| 22-May-2014 |
rmind | tcp_usrreq: fix the previous - the assert is still not true (but PRU_SENSE case will handle it); eventually, pr_usrreq should not be called without PCB attached.
|
1.176 |
| 21-May-2014 |
rmind | tcp_usrreq: fix the previous correctly - restore the assert logic, but move it after the PRU_SENSE check.
|
1.175 |
| 21-May-2014 |
pgoyette | Restore original sense of the check, and allow both inp and in6p to be NULL. This case is explicitly handled below.
|
1.174 |
| 20-May-2014 |
rmind | Adjust PR_WRAP_USRREQS() to include the attach/detach functions. We still need the kernel-lock for some corner cases.
|
1.173 |
| 19-May-2014 |
rmind | - Split off PRU_ATTACH and PRU_DETACH logic into separate functions. - Replace malloc with kmem and eliminate M_PCB while here. - Sprinkle more asserts.
|
1.172 |
| 18-May-2014 |
rmind | Add struct pr_usrreqs with a pr_generic function and prepare for the dismantling of pr_usrreq in the protocols; no functional change intended. PRU_ATTACH/PRU_DETACH changes will follow soon.
Bump for struct protosw. Welcome to 6.99.62!
|
1.171 |
| 25-Feb-2014 |
pooka | branches: 1.171.2; Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before the sysctl link sets are processed, and remove redundancy.
Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate lines of code.
|
1.170 |
| 02-Dec-2013 |
kefren | Update TCP CB with new values on rfc1323 and mssdflt sysctl updates From yasuoka@iij.ad.jp in kern/44254
|
1.169 |
| 23-Nov-2013 |
christos | convert from CIRCLEQ to TAILQ.
|
1.168 |
| 04-Oct-2013 |
christos | PR/48098: Brian Marcotte: Avoid kernel assertion for embryonic sockets that don't have credentials yet. XXX: pullup-6
|
1.167 |
| 15-Sep-2013 |
martin | Remove unused variables
|
1.166 |
| 10-Apr-2013 |
christos | branches: 1.166.4; Limit the tcp initial window setting to 10, leaving it by default to 4 and simplifying the code in process. Per draft-ietf-initcwnd-08.txt.
|
1.165 |
| 02-Jun-2012 |
dsl | branches: 1.165.2; Add some pre-processor magic to verify that the type of the data item passed to sysctl_createv() actually matches the declared type for the item itself. In the places where the caller specifies a function and a structure address (typically the 'softc') an explicit (void *) cast is now needed. Fixes bugs in sys/dev/acpi/asus_acpi.c sys/dev/bluetooth/bcsp.c sys/kern/vfs_bio.c sys/miscfs/syncfs/sync_subr.c and setting AcpiGbl_EnableAmlDebugObject. (mostly passing the address of a uint64_t when typed as CTLTYPE_INT). I've test built quite a few kernels, but there may be some unfixed MD fallout. Most likely passing &char[] to char *. Also add CTLFLAG_UNSIGNED for unsiged decimals - not set yet.
|
1.164 |
| 22-Mar-2012 |
drochner | remove KAME IPSEC, replaced by FAST_IPSEC
|
1.163 |
| 17-Mar-2012 |
christos | PR/46077: M. Nunberg: Stat should not fial on connecting socket.
|
1.162 |
| 02-Feb-2012 |
tls | branches: 1.162.2; Entropy-pool implementation move and cleanup.
1) Move core entropy-pool code and source/sink/sample management code to sys/kern from sys/dev.
2) Remove use of NRND as test for presence of entropy-pool code throughout source tree.
3) Remove use of RND_ENABLED in device drivers as microoptimization to avoid expensive operations on disabled entropy sources; make the rnd_add calls do this directly so all callers benefit.
4) Fix bug in recent rnd_add_data()/rnd_add_uint32() changes that might have lead to slight entropy overestimation for some sources.
5) Add new source types for environmental sensors, power sensors, VM system events, and skew between clocks, with a sample implementation for each.
ok releng to go in before the branch due to the difficulty of later pullup (widespread #ifdef removal and moved files). Tested with release builds on amd64 and evbarm and live testing on amd64.
|
1.161 |
| 19-Dec-2011 |
drochner | rename the IPSEC in-kernel CPP variable and config(8) option to KAME_IPSEC, and make IPSEC define it so that existing kernel config files work as before Now the default can be easily be changed to FAST_IPSEC just by setting the IPSEC alias to FAST_IPSEC.
|
1.160 |
| 06-Jun-2011 |
dyoung | branches: 1.160.2; 1.160.6; Don't allocate resources for vtw until/unless it is enabled. This will further help those machines where memory is in short supply.
TBD: release resources after vtw is disabled and all entries have expired.
|
1.159 |
| 03-May-2011 |
dyoung | branches: 1.159.2; Reduces the resources demanded by TCP sessions in TIME_WAIT-state using methods called Vestigial Time-Wait (VTW) and Maximum Segment Lifetime Truncation (MSLT).
MSLT and VTW were contributed by Coyote Point Systems, Inc.
Even after a TCP session enters the TIME_WAIT state, its corresponding socket and protocol control blocks (PCBs) stick around until the TCP Maximum Segment Lifetime (MSL) expires. On a host whose workload necessarily creates and closes down many TCP sockets, the sockets & PCBs for TCP sessions in TIME_WAIT state amount to many megabytes of dead weight in RAM.
Maximum Segment Lifetimes Truncation (MSLT) assigns each TCP session to a class based on the nearness of the peer. Corresponding to each class is an MSL, and a session uses the MSL of its class. The classes are loopback (local host equals remote host), local (local host and remote host are on the same link/subnet), and remote (local host and remote host communicate via one or more gateways). Classes corresponding to nearer peers have lower MSLs by default: 2 seconds for loopback, 10 seconds for local, 60 seconds for remote. Loopback and local sessions expire more quickly when MSLT is used.
Vestigial Time-Wait (VTW) replaces a TIME_WAIT session's PCB/socket dead weight with a compact representation of the session, called a "vestigial PCB". VTW data structures are designed to be very fast and memory-efficient: for fast insertion and lookup of vestigial PCBs, the PCBs are stored in a hash table that is designed to minimize the number of cacheline visits per lookup/insertion. The memory both for vestigial PCBs and for elements of the PCB hashtable come from fixed-size pools, and linked data structures exploit this to conserve memory by representing references with a narrow index/offset from the start of a pool instead of a pointer. When space for new vestigial PCBs runs out, VTW makes room by discarding old vestigial PCBs, oldest first. VTW cooperates with MSLT.
It may help to think of VTW as a "FIN cache" by analogy to the SYN cache.
A 2.8-GHz Pentium 4 running a test workload that creates TIME_WAIT sessions as fast as it can is approximately 17% idle when VTW is active versus 0% idle when VTW is inactive. It has 103 megabytes more free RAM when VTW is active (approximately 64k vestigial PCBs are created) than when it is inactive.
|
1.158 |
| 30-Dec-2009 |
elad | branches: 1.158.4; 1.158.6; Get the uid from the socket's credentials.
|
1.157 |
| 16-Sep-2009 |
pooka | Replace a large number of link set based sysctl node creations with calls from subsystem constructors. Benefits both future kernel modules and rump.
no change to sysctl nodes on i386/MONOLITHIC & build tested i386/ALL
|
1.156 |
| 09-Sep-2009 |
darran | Make tcp msl (max segment life) tunable via sysctl net.inet.tcp.msl. Okayed by tls@.
|
1.155 |
| 07-Jun-2009 |
rmind | sysctl_inpcblist: fix a lock leak in error path (hi <matt>).
|
1.154 |
| 17-Apr-2009 |
elad | Pass the lwp argument to in6_pcbbind() for the INET6 PRU_LISTEN and PRU_CONNECT cases of tcp_usrreq(). It seems they were forgotten a long time ago.
Similar code in FreeBSD and OpenBSD passes the thread (credentials)/proc.
|
1.153 |
| 15-Apr-2009 |
elad | Remove a few KAUTH_GENERIC_ISSUSER in favor of more descriptive alternatives.
Discussed on tech-kern:
http://mail-index.netbsd.org/tech-kern/2009/04/11/msg004798.html
Input from ad@, christos@, dyoung@, tsutsui@.
Okay ad@.
|
1.152 |
| 11-Mar-2009 |
mrg | like KERN_FILE2: *do* update "needed" when there is no count. we want userland to know what sort of size to provide..
while here, slightly normalise the previous to init_sysctl.c.
|
1.151 |
| 18-Feb-2009 |
yamt | sysctl_net_inet_ip_ports: fix ipv6 sysctls.
|
1.150 |
| 06-Nov-2008 |
dyoung | branches: 1.150.4; Cosmetic: change (type *)0 to NULL.
|
1.149 |
| 11-Oct-2008 |
pooka | branches: 1.149.2; 1.149.4; 1.149.6; Move uidinfo to its own module in kern_uidinfo.c and include in rump. No functional change to uidinfo.
|
1.148 |
| 20-Aug-2008 |
matt | Make the sysctl routines take out softnet_lock before dealing with any data structures.
Change inet6ctlerrmap and zeroin6_addr to const.
|
1.147 |
| 06-Aug-2008 |
plunky | Convert socket options code to use a sockopt structure instead of laying everything into an mbuf.
approved by core
|
1.146 |
| 04-May-2008 |
thorpej | branches: 1.146.2; 1.146.6; Simplify the interface to netstat_sysctl() and allocate space for the collated counters using kmem_alloc().
PR kern/38577
|
1.145 |
| 28-Apr-2008 |
martin | Remove clause 3 and 4 from TNF licenses
|
1.144 |
| 24-Apr-2008 |
ad | branches: 1.144.2; Merge the socket locking patch:
- Socket layer becomes MP safe. - Unix protocols become MP safe. - Allows protocol processing interrupts to safely block on locks. - Fixes a number of race conditions.
With much feedback from matt@ and plunky@.
|
1.143 |
| 23-Apr-2008 |
thorpej | Make IPSEC and FAST_IPSEC stats per-cpu. Use <net/net_stats.h> and netstat_sysctl().
|
1.142 |
| 12-Apr-2008 |
thorpej | branches: 1.142.2; Make IP, TCP, UDP, and ICMP statistics per-CPU. The stats are collated when the user requests them via sysctl.
|
1.141 |
| 08-Apr-2008 |
thorpej | Change TCP stats from a structure to an array of uint64_t's.
Note: This is ABI-compatible with the old tcpstat structure; old netstat binaries will continue to work properly.
|
1.140 |
| 16-Dec-2007 |
elad | branches: 1.140.6; Really fix low port allocation, by always passing a valid lwp to in_pcbbind().
Okay dyoung@.
Note that the network code is another candidate for major cleanup... also note that this issue is likely to be present in netinet6 code, too.
|
1.139 |
| 27-Nov-2007 |
christos | branches: 1.139.2; 1.139.6; require that the options argument is the right size, not that it is greater or equal to the requested size. Suggested by Matt Thomas.
|
1.138 |
| 04-Nov-2007 |
rmind | branches: 1.138.2; Pick the smallest possible TCP window scaling factor that will still allow us to scale up to sb_max. This might fix the problems with some firewalls.
Taken from FreeBSD (silby). OK by <dyoung>.
|
1.137 |
| 19-Sep-2007 |
dyoung | branches: 1.137.4; 1) Introduce a new socket option, (SOL_SOCKET, SO_NOHEADER), that tells a socket that it should both add a protocol header to tx'd datagrams and remove the header from rx'd datagrams:
int onoff = 1, s = socket(...); setsockopt(s, SOL_SOCKET, SO_NOHEADER, &onoff);
2) Add an implementation of (SOL_SOCKET, SO_NOHEADER) for raw IPv4 sockets.
3) Reorganize the protocols' pr_ctloutput implementations a bit. Consistently return ENOPROTOOPT when an option is unsupported, and EINVAL if a supported option's arguments are incorrect. Reorganize the flow of code so that it's more clear how/when options are passed down the stack until they are handled.
Shorten some pr_ctloutput staircases for readability.
4) Extract common mbuf code into subroutines, add new sockaddr methods, and introduce a new subroutine, fsocreate(), for reuse later; use it first in sys_socket():
struct mbuf *m_getsombuf(struct socket *so)
Create an mbuf and make its owner the socket `so'.
struct mbuf *m_intopt(struct socket *so, int val)
Create an mbuf, make its owner the socket `so', put the int `val' into it, and set its length to sizeof(int).
int fsocreate(..., int *fd)
Create a socket, a la socreate(9), put the socket into the given LWP's descriptor table, return the descriptor at `fd' on success.
void *sockaddr_addr(struct sockaddr *sa, socklen_t *slenp) const void *sockaddr_const_addr(const struct sockaddr *sa, socklen_t *slenp)
Extract a pointer to the address part of a sockaddr. Write the length of the address part at `slenp', if `slenp' is not NULL.
socklen_t sockaddr_getlen(const struct sockaddr *sa)
Return the length of a sockaddr. This just evaluates to sa->sa_len. I only add this for consistency with code that appears in a portable userland library that I am going to import.
const struct sockaddr *sockaddr_any(const struct sockaddr *sa)
Return the "don't care" sockaddr in the same family as `sa'. This is the address a client should sobind(9) if it does not care the source address and, if applicable, the port et cetera that it uses.
const void *sockaddr_anyaddr(const struct sockaddr *sa, socklen_t *slenp)
Return the "don't care" sockaddr in the same family as `sa'. This is the address a client should sobind(9) if it does not care the source address and, if applicable, the port et cetera that it uses.
|
1.136 |
| 02-Aug-2007 |
rmind | branches: 1.136.2; 1.136.4; 1.136.6; TCP socket buffers automatic sizing - ported from FreeBSD. http://mail-index.netbsd.org/tech-net/2007/02/04/0006.html
! Disabled by default, marked as experimental. Testers are very needed. ! Someone should thoroughly test this, and improve if possible.
Discussed on <tech-net>: http://mail-index.netbsd.org/tech-net/2007/07/12/0002.html Thanks Greg Troxel for comments.
OK by the long silence on <tech-net>.
|
1.135 |
| 28-Jun-2007 |
christos | branches: 1.135.2; Handle mapped and scoped ipv6 addresses. From Anon Ymous.
|
1.134 |
| 26-Jun-2007 |
xtraeme | Protect inet6_ident_core() with #ifdef INET6, fixes building without options INET6.
|
1.133 |
| 25-Jun-2007 |
christos | tcpdrop kernel bits (from anon ymous)
|
1.132 |
| 20-Jun-2007 |
christos | - per socket keepalive settings - settable connection establishment timeout
|
1.131 |
| 04-Mar-2007 |
christos | branches: 1.131.2; 1.131.4; Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
|
1.130 |
| 06-Dec-2006 |
yamt | branches: 1.130.2; add some more tcp mowners.
|
1.129 |
| 10-Nov-2006 |
yamt | branches: 1.129.2; 1.129.4; 1.129.8; tcp_ctloutput: when called for a socket which is not AF_INET or AF_INET6, panic rather than returning possibly leaking an mbuf.
|
1.128 |
| 19-Oct-2006 |
rpaulo | Use a better way to create sysctl subtrees for ECN and Congctl. Inspired on ABC subtree.
|
1.127 |
| 19-Oct-2006 |
yamt | implement RFC3465 appropriate byte counting. from Kentaro A. Kurahone, with minor adjustments by me. the ack prediction part of the original patch was omitted because it's a separate change. reviewed by Rui Paulo.
|
1.126 |
| 16-Oct-2006 |
rpaulo | Export the tcp_do_rfc1948 variable to userland via sysctl. The code to generate an ISS via an MD5 hash has been present in the NetBSD kernel since 2001, but it wasn't even exported to userland at that time. It was agreed on tech-net with the original author <thorpej> that we should let the user decide if he wants to enable it or not. Not enabled by default.
|
1.125 |
| 13-Oct-2006 |
elad | Introduce KAUTH_REQ_NETWORK_SOCKET_CANSEE. Since we're not gonna be having credentials on sockets, at least not anytime soon, this is a way to check if we can "look" at a socket. Later on when (and if) we do have socket credentials, the interface usage remains the same because we pass the socket.
This also fixes sysctl for inet/inet6 pcblist.
|
1.124 |
| 09-Oct-2006 |
rpaulo | Modular (I tried ;-) TCP congestion control API. Whenever certain conditions happen in the TCP stack, this interface calls the specified callback to handle the situation according to the currently selected congestion control algorithm. A new sysctl node was created: net.inet.tcp.congctl.{available,selected} with obvious meanings. The old net.inet.tcp.newreno MIB was removed. The API is discussed in tcp_congctl(9).
In the near future, it will be possible to selected a congestion control algorithm on a per-socket basis.
Discussed on tech-net and reviewed by <yamt>.
|
1.123 |
| 05-Oct-2006 |
tls | Protect calls to pool_put/pool_get that may occur in interrupt context with spl used to protect other allocations and frees, or datastructure element insertion and removal, in adjacent code.
It is almost unquestionably the case that some of the spl()/splx() calls added here are superfluous, but it really seems wrong to see:
s=splfoo(); /* frob data structure */ splx(s); pool_put(x);
and if we think we need to protect the first operation, then it is hard to see why we should not think we need to protect the next. "Better safe than sorry".
It is also almost unquestionably the case that I missed some pool gets/puts from interrupt context with my strategy for finding these calls; use of PR_NOWAIT is a strong hint that a pool may be used from interrupt context but many callers in the kernel pass a "can wait/can't wait" flag down such that my searches might not have found them. One notable area that needs to be looked at is pf.
See also:
http://mail-index.netbsd.org/tech-kern/2006/07/19/0003.html http://mail-index.netbsd.org/tech-kern/2006/07/19/0009.html
|
1.122 |
| 13-Sep-2006 |
elad | branches: 1.122.2; Don't use KAUTH_RESULT_* where it's not applicable. Prompted by yamt@.
|
1.121 |
| 08-Sep-2006 |
elad | First take at security model abstraction.
- Add a few scopes to the kernel: system, network, and machdep.
- Add a few more actions/sub-actions (requests), and start using them as opposed to the KAUTH_GENERIC_ISSUSER place-holders.
- Introduce a basic set of listeners that implement our "traditional" security model, called "bsd44". This is the default (and only) model we have at the moment.
- Update all relevant documentation.
- Add some code and docs to help folks who want to actually use this stuff:
* There's a sample overlay model, sitting on-top of "bsd44", for fast experimenting with tweaking just a subset of an existing model.
This is pretty cool because it's *really* straightforward to do stuff you had to use ugly hacks for until now...
* And of course, documentation describing how to do the above for quick reference, including code samples.
All of these changes were tested for regressions using a Python-based testsuite that will be (I hope) available soon via pkgsrc. Information about the tests, and how to write new ones, can be found on:
http://kauth.linbsd.org/kauthwiki
NOTE FOR DEVELOPERS: *PLEASE* don't add any code that does any of the following:
- Uses a KAUTH_GENERIC_ISSUSER kauth(9) request, - Checks 'securelevel' directly, - Checks a uid/gid directly.
(or if you feel you have to, contact me first)
This is still work in progress; It's far from being done, but now it'll be a lot easier.
Relevant mailing list threads:
http://mail-index.netbsd.org/tech-security/2006/01/25/0011.html http://mail-index.netbsd.org/tech-security/2006/03/24/0001.html http://mail-index.netbsd.org/tech-security/2006/04/18/0000.html http://mail-index.netbsd.org/tech-security/2006/05/15/0000.html http://mail-index.netbsd.org/tech-security/2006/08/01/0000.html http://mail-index.netbsd.org/tech-security/2006/08/25/0000.html
Many thanks to YAMAMOTO Takashi, Matt Thomas, and Christos Zoulas for help stablizing kauth(9).
Full credit for the regression tests, making sure these changes didn't break anything, goes to Matt Fleming and Jaime Fournier.
Happy birthday Randi! :)
|
1.120 |
| 05-Sep-2006 |
rpaulo | branches: 1.120.2; Import of TCP ECN algorithm for congestion control. Both available for IPv4 and IPv6. Basic implementation test results are available at http://netbsd-soc.sourceforge.net/projects/ecn/testresults.html.
Work sponsored by the Google Summer of Code project 2006. Special thanks to Kentaro Kurahone, Allen Briggs and Matt Thomas for their help, comments and support during the project.
|
1.119 |
| 23-Jul-2006 |
ad | Use the LWP cached credentials where sane.
|
1.118 |
| 16-Jul-2006 |
elad | get rid of CURTAIN() macro. inline the last use of it, together with a nice XXX comment (assigned to me of course) that we should be doing this differently.
|
1.117 |
| 14-May-2006 |
elad | integrate kauth.
|
1.116 |
| 15-Apr-2006 |
christos | Move pf2 assignment after we've assigned pf.
|
1.115 |
| 14-Apr-2006 |
christos | Coverity CID 1154: Prevent NULL deref.
|
1.114 |
| 14-Apr-2006 |
christos | Coverity CID 738: Fix the query size vs. result returning setup.
|
1.113 |
| 11-Dec-2005 |
christos | branches: 1.113.4; 1.113.6; 1.113.8; 1.113.10; 1.113.12; merge ktrace-lwp.
|
1.112 |
| 15-Nov-2005 |
dsl | Pass the current process structure to in_pcbconnect() so that it can pass it to in_pcbbind() so that can allocate a low numbered port if setsockopt() has been used to set IP_PORTRANGE to IP_PORTRANGE_LOW. While there, fail in_pcbconnect() if the in_pcbbind() fails - rather than sending the request out from a port of zero. This has been largely broken since the socket option was added in 1998.
|
1.111 |
| 07-Sep-2005 |
elad | branches: 1.111.6; Implement curtain for AF_INET{,6} PCB lists.
|
1.110 |
| 06-Sep-2005 |
rpaulo | Correct SYSCTL_DESCR for tcp.debx.
|
1.109 |
| 06-Sep-2005 |
rpaulo | Implement tcp.inet{,6}.tcp{,6}.(debug|debx) when TCP_DEBUG is set. They can be used to ``transliterate protocol trace'' like trpt(8) does.
|
1.108 |
| 10-Aug-2005 |
yamt | move {tcp,udp}_do_loopback_cksum back to tcp/udp so that they can be referenced by ipv6.
|
1.107 |
| 05-Aug-2005 |
elad | Add sysctls for IP, ICMP, TCP, and UDP statistics.
|
1.106 |
| 20-Jun-2005 |
atatat | branches: 1.106.2; Change the rest of the sysctl subsystem to use const consistently. The __UNCONST macro is now used only where necessary and the RW macros are gone. Most of the changes here are consumers of the sysctl_createv(9) interface that now takes a pair of const pointers which used not to be.
|
1.105 |
| 09-Jun-2005 |
atatat | Properly fix the constipated lossage wrt -Wcast-qual and the sysctl code. I know it's not the prettiest code, but it seems to work rather well in spite of itself.
|
1.104 |
| 29-May-2005 |
christos | - add const - remove bogus casts - avoid nested variables
|
1.103 |
| 07-May-2005 |
christos | PR/30154: YAMAMOTO Takashi: tcp_close locking botch chgsbsize() as mentioned in the PR can be called from an interrupt context via tcp_close(). Avoid calling uid_find() in chgsbsize(). - Instead of storing so_uid in struct socketvar, store *so_uidinfo - Add a simple lock to struct uidinfo.
|
1.102 |
| 05-Apr-2005 |
kurahone | Added sysctl tunable limits for the number of maximum SACK holes per connection and per system.
Idea taken from FreeBSD.
|
1.101 |
| 30-Mar-2005 |
yamt | s of sack is selective, not selection. pointed by Michael Eriksson.
|
1.100 |
| 11-Mar-2005 |
atatat | branches: 1.100.2; Revert the change that made kern.file2 and net.*.*.pcblist into nodes instead of structs. It had other deleterious side-effects that are rather nasty. Another solution must be found.
|
1.99 |
| 10-Mar-2005 |
atatat | Make this build without INET6 xor INET (hah!) again.
|
1.98 |
| 10-Mar-2005 |
atatat | Change types of kern.file2 and net.*.*.pcblist to NODE
|
1.97 |
| 09-Mar-2005 |
atatat | Add the following nodes to the sysctl tree:
net.local.stream.pcblist net.local.dgram.pcblist net.inet.tcp.pcblist net.inet.udp.pcblist net.inet.raw.pcblist net.inet6.tcp6.pcblist net.inet6.udp6.pcblist net.inet6.raw6.pcblist
which allow retrieval of the pcbs in use for those protocols. The struct involved is 32/64 bit clean and incorporates parts of struct inpcb, struct unpcb, a bit of struct tcpcb, and two socket addresses.
|
1.96 |
| 06-Mar-2005 |
yamt | update SYSCTL_DESCR; sack is implemented.
|
1.95 |
| 02-Mar-2005 |
mycroft | Copyright maintenance.
|
1.94 |
| 03-Feb-2005 |
perry | ANSIfy function declarations
|
1.93 |
| 15-Dec-2004 |
thorpej | branches: 1.93.2; 1.93.4; Don't perform checksums on loopback interfaces. They can be reenabled with the net.inet.*.do_loopback_cksum sysctl.
Approved by: groo
|
1.92 |
| 25-May-2004 |
atatat | Sysctl descriptions under net subtree (net.key not done)
|
1.91 |
| 18-May-2004 |
itojun | fix MD5 signature support to actually validate inbound signature, and drop packet if fails.
|
1.90 |
| 25-Apr-2004 |
jonathan | Initial commit of a port of the FreeBSD implementation of RFC 2385 (MD5 signatures for TCP, as used with BGP). Credit for original FreeBSD code goes to Bruce M. Simpson, with FreeBSD sponsorship credited to sentex.net. Shortening of the setsockopt() name attributed to Vincent Jardin.
This commit is a minimal, working version of the FreeBSD code, as MFC'ed to FreeBSD-4. It has received minimal testing with a ttcp modified to set the TCP-MD5 option; BMS's additions to tcpdump-current (tcpdump -M) confirm that the MD5 signatures are correct. Committed as-is for further testing between a NetBSD BGP speaker (e.g., quagga) and industry-standard BGP speakers (e.g., Cisco, Juniper).
NOTE: This version has two potential flaws. First, I do see any code that verifies recieved TCP-MD5 signatures. Second, the TCP-MD5 options are internally padded and assumed to be 32-bit aligned. A more space-efficient scheme is to pack all TCP options densely (and possibly unaligned) into the TCP header ; then do one final padding to a 4-byte boundary. Pre-existing comments note that accounting for TCP-option space when we add SACK is yet to be done. For now, I'm punting on that; we can solve it properly, in a way that will handle SACK blocks, as a separate exercise.
In case a pullup to NetBSD-2 is requested, this adds sys/netipsec/xform_tcp.c ,and modifies:
sys/net/pfkeyv2.h,v 1.15 sys/netinet/files.netinet,v 1.5 sys/netinet/ip.h,v 1.25 sys/netinet/tcp.h,v 1.15 sys/netinet/tcp_input.c,v 1.200 sys/netinet/tcp_output.c,v 1.109 sys/netinet/tcp_subr.c,v 1.165 sys/netinet/tcp_usrreq.c,v 1.89 sys/netinet/tcp_var.h,v 1.109 sys/netipsec/files.netipsec,v 1.3 sys/netipsec/ipsec.c,v 1.11 sys/netipsec/ipsec.h,v 1.7 sys/netipsec/key.c,v 1.11 share/man/man4/tcp.4,v 1.16 lib/libipsec/pfkey.c,v 1.20 lib/libipsec/pfkey_dump.c,v 1.17 lib/libipsec/policy_token.l,v 1.8 sbin/setkey/parse.y,v 1.14 sbin/setkey/setkey.8,v 1.27 sbin/setkey/token.l,v 1.15
Note that the preceding two revisions to tcp.4 will be required to cleanly apply this diff.
|
1.89 |
| 20-Apr-2004 |
matt | export tcpstates for _KERNEL and remove tcp_usrreq.c's incorrect declartion.
|
1.88 |
| 29-Mar-2004 |
atatat | Make these compile without INET. tcp_input probably needs a lot more work...
|
1.87 |
| 24-Mar-2004 |
atatat | branches: 1.87.2; Tango on sysctl_createv() and flags. The flags have all been renamed, and sysctl_createv() now uses more arguments.
|
1.86 |
| 04-Dec-2003 |
atatat | Dynamic sysctl.
Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(), vfs_sysctl(), etc, routines, along with sysctl_int() et al. Now all nodes are registered with the tree, and nodes can be added (or removed) easily, and I/O to and from the tree is handled generically.
Since the nodes are registered with the tree, the mapping from name to number (and back again) can now be discovered, instead of having to be hard coded. Adding new nodes to the tree is likewise much simpler -- the new infrastructure handles almost all the work for simple types, and just about anything else can be done with a small helper function.
All existing nodes are where they were before (numerically speaking), so all existing consumers of sysctl information should notice no difference.
PS - I'm sorry, but there's a distinct lack of documentation at the moment. I'm working on sysctl(3/8/9) right now, and I promise to watch out for buses.
|
1.85 |
| 22-Oct-2003 |
thorpej | Rather than zeroing a tcpcb structure and filling in all the fields individually, create a tcpcb template pre-initialized (and pre-zero'd) with the static and mostly-static tcpcb parameters. The template is now copied into the new tcpcb, which zeros and initializes most of the tcpcb in one pass. The template is kept up-to-date as TCP sysctl variables are changed.
Combined with the previous sb_max change, TCP socket creation is now 25% faster.
|
1.84 |
| 29-Sep-2003 |
tls | Increase default socket-buffer sizes from 16K to 32K. This increases throughput significantly in a wide variety of test cases, including local gigabit ethernet with both jumbo and standard frames, transcontinental (U.S.) connections with e2e bandwidths ranging from 10Mbit/sec to 155Mbit/sec, and on a variety of test connections between the NetBSD Project public servers and machines in Australia.
The impact of this change is less dramatic for high-delay connections when Path MTU is in use but still measurable.
For optimal performance on local gigabit networks, a higher socket buffer size (at least 64K) will still yield a substantial improvement in performance, but 32K gets us most of the way there in my test cases, with only a cost of _doubling_ memory use per socket rather than _quadrupling_ it.
N.B. Windows NT, at least since Win2k SP2, uses a default socket buffer size (or their analogue thereof) of 64K, which is a useful data point.
|
1.83 |
| 04-Sep-2003 |
itojun | revamp inpcb/in6pcb so that they are more aligned with each other. in6pcb lookup now uses hash(9).
|
1.82 |
| 07-Aug-2003 |
agc | Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
|
1.81 |
| 29-Jun-2003 |
fvdl | branches: 1.81.2; Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more.
|
1.80 |
| 29-Jun-2003 |
simonb | Fix a nit in a comment.
|
1.79 |
| 28-Jun-2003 |
darrenr | Pass lwp pointers throughtout the kernel, as required, so that the lwpid can be inserted into ktrace records. The general change has been to replace "struct proc *" with "struct lwp *" in various function prototypes, pass the lwp through and use l_proc to get the process pointer when needed.
Bump the kernel rev up to 1.6V
|
1.78 |
| 26-Jun-2003 |
christos | abuse the mib instead of abusing the new pointer. Idea from simon burge. It allows the tcp_sysctl_ident to run by non-super-users. No backwards compatibility provided.
|
1.77 |
| 23-Jun-2003 |
martin | Make sure to include opt_foo.h if a defflag option FOO is used.
|
1.76 |
| 19-Apr-2003 |
christos | PR/2352: Tor Egge: Add sysctl to get uid of connected socket.
|
1.75 |
| 26-Feb-2003 |
matt | Add MBUFTRACE kernel option. Do a little mbuf rework while here. Change all uses of MGET*(*, M_WAIT, *) to m_get*(M_WAIT, *). These are not performance critical and making them call m_get saves considerable space. Add m_clget analogue of MCLGET and make corresponding change for M_WAIT uses. Modify netinet, gem, fxp, tulip, nfs to support MBUFTRACE. Begin to change netstat to use sysctl.
|
1.74 |
| 22-Oct-2002 |
simonb | Guard use of "ostate" with #ifdef TCP_DEBUG in tcp_usrreq(). Don't put semicolons at the end of "#define token value".
|
1.73 |
| 03-Jul-2002 |
thorpej | Rename sbappend_stream() to sbappendstream(), per suggestion from Jonathan Stone.
|
1.72 |
| 03-Jul-2002 |
thorpej | Make insertion of data into socket buffers O(C): * Keep pointers to the first and last mbufs of the last record in the socket buffer. * Use the sb_lastrecord pointer in the sbappend*() family of functions to avoid traversing the packet chain to find the last record. * Add a new sbappend_stream() function for stream protocols which guarantee that there will never be more than one record in the socket buffer. This function uses the sb_mbtail pointer to perform the data insertion. Make TCP use sbappend_stream().
On a profiling run, this makes sbappend of a TCP transmission using a 1M socket buffer go from 50% of the time to .02% of the time.
Thanks to Bill Sommerfeld and YAMAMOTO Takashi for their debugging assistance!
|
1.71 |
| 09-Jun-2002 |
itojun | whitespace
|
1.70 |
| 11-Mar-2002 |
martin | branches: 1.70.4; KNFify my last change.
|
1.69 |
| 28-Feb-2002 |
martin | Enforce a lower bound of 32 for tcp_mssdflt.
This avoids kernel crashes when we don't handle nonsensial values like 0 gracefully. Better check here once beforehand than having to check for non meaningful values in time critical paths (like tcp_output).
Fixes PR 15709.
|
1.68 |
| 20-Nov-2001 |
lukem | - replace "defopt" with "defparam" for options which must take a value, as config(8) will warn for value-less defparam options - minor whitespace/formatting cleanup - consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
|
1.67 |
| 13-Nov-2001 |
lukem | add RCSIDs
|
1.66 |
| 29-Oct-2001 |
simonb | Don't need to include <uvm/uvm_extern.h> just to include <sys/sysctl.h> anymore.
|
1.65 |
| 10-Sep-2001 |
thorpej | branches: 1.65.2; Split tcp_timers() into multiple functions, one for each timer, and call it directly from tcp_slowtimo() (via a table) rather than going through tcp_userreq().
This will allow us to call TCP timers directly from callouts, in a future revision.
|
1.64 |
| 25-Jul-2001 |
itojun | branches: 1.64.2; allocate ipsec policy buffer attached to pcb in in*_pcballoc, before giving anyone accesses to pcb (do not reveal an inconsistent ones). sync with kame
|
1.63 |
| 08-Jul-2001 |
abs | branches: 1.63.2; Rename TCPDEBUG to TCP_DEBUG, defopt TCP_DEBUG and TCP_NDEBUG, and make all usage of tcp_trace dependent on TCP_DEBUG - resulting in a 31K saving on an INET enabled i386 kernel.
|
1.62 |
| 03-Jul-2001 |
itojun | call in{,6}_pcbpurgeif0() before in{,6}_purgeif().
|
1.61 |
| 20-Mar-2001 |
thorpej | Two changes, designed to make us even more resilient against TCP ISS attacks (which we already fend off quite well).
1. First-cut implementation of RFC1948, Steve Bellovin's cryptographic hash method of generating TCP ISS values. Note, this code is experimental and disabled by default (experimental enough that I don't export the variable via sysctl yet, either). There are a couple of issues I'd like to discuss with Steve, so this code should only be used by people who really know what they're doing.
2. Per a recent thread on Bugtraq, it's possible to determine a system's uptime by snooping the RFC1323 TCP timestamp options sent by a host; in 4.4BSD, timestamps are created by incrementing the tcp_now variable at 2 Hz; there's even a company out there that uses this to determine web server uptime. According to Newsham's paper "The Problem With Random Increments", while NetBSD's TCP ISS generation method is much better than the "random increment" method used by FreeBSD and OpenBSD, it is still theoretically possible to mount an attack against NetBSD's method if the attacker knows how many times the tcp_iss_seq variable has been incremented. By not leaking uptime information, we can make that much harder to determine. So, we avoid the leak by giving each TCP connection a timebase of 0.
|
1.60 |
| 11-Feb-2001 |
itojun | branches: 1.60.2; make sure we call tcp_output() only if we have template.
|
1.59 |
| 18-Jan-2001 |
jdolecek | constify
|
1.58 |
| 11-Dec-2000 |
itojun | make sure t_family has the correct protocol family, after connect(2) and/or bind(2). sync with kame
|
1.57 |
| 17-Oct-2000 |
itojun | allow INET6-less build. From: smd@ebone.net (Sean Doran)
|
1.56 |
| 17-Oct-2000 |
itojun | be more friendly with INET-less build. XXX we need to do more to do a working INET-less build
|
1.55 |
| 06-Oct-2000 |
enami | Cosmetic changes to previous commit; indent break statement sanely.
|
1.54 |
| 06-Oct-2000 |
enami | Just call matching purgeif/pcbpurgeif routine for the protocol family. Without this, if a v6 address is placed before a v4 address in if_addrlist, a PRU_PURGEIF request for v6 tcp protocol purges also v4 addresses and, as a result, if_detach fails to request PRU_PURGEIF for v4 protocols other than tcp.
|
1.53 |
| 28-Jul-2000 |
itojun | nuke the following sysctl variables. "ppsratelimit" should work better. need to recompile sbin/sysctl after updating /usr/include. net.inet.tcp.rstratelimit net.inet.icmp.errratelimit net.inet6.icmp6.errratelimit
|
1.52 |
| 28-Jun-2000 |
mrg | <vm/vm.h> -> <uvm/uvm_extern.h>
|
1.51 |
| 05-Jun-2000 |
itojun | branches: 1.51.2; pass struct proc * down to udp6_output and in6_pcbbind.
|
1.50 |
| 22-May-2000 |
itojun | branches: 1.50.2; disallow negative numbers for ratelimit interval (tcp, icmp, icmp6).
|
1.49 |
| 30-Mar-2000 |
augustss | Remove register declarations.
|
1.48 |
| 15-Feb-2000 |
thorpej | Add support for rate-limiting RSTs sent in response to no socket for an incoming packet. Default minimum interval is 10ms. The interval is changeable via the "net.inet.tcp.rstratelimit" sysctl variable.
|
1.47 |
| 04-Feb-2000 |
itojun | avoid calling in6_control(SIOCDIFADDR_IN6) from interrupt context. it is not supposed to work. logging fix: add "\n" to some of log() in in6_prefix.c.
improve in6_ifdetach(). now almost all structure depend on ifnet will be cleared up. possible loose ends: - cached route_in6 in static varaiables needs to be cleared as well - there are ifaddr manipulation without reference counting, which should be fixed we still see panics after card removal, though... not sure what is left.
(sync with kame)
|
1.46 |
| 02-Feb-2000 |
thorpej | PRU_PURGEADDR -> PRU_PURGEIF, per a discussion w/ itojun. In the IPv4 and IPv6 code, also use this to traverse PCB tables, looking for cached routes referencing the dying ifnet, forcing them to be refreshed.
|
1.45 |
| 01-Feb-2000 |
thorpej | First-draft if_detach() implementation, originally from Bill Studnemund, although this version has been changed somewhat: - reference counting on ifaddrs isn't as complete as Bill's original work was. This is hard to get right, and we should attack one protocol at a time. - This doesn't do reference counting or dynamic allocation of ifnets yet. - This version introduces a new PRU -- PRU_PURGEADDR, which is used to purge an ifaddr from a protocol. The old method Bill used didn't work on all protocols, and it only worked on some because it was Very Lucky.
This mostly works ... i.e. works for my USB Ethernet, except for a dangling ifaddr reference left by the IPv6 code; have not yet tracked this down.
|
1.44 |
| 31-Jan-2000 |
itojun | bring in latest KAME ipsec tree. - interop issues in ipcomp is fixed - padding type (after ESP) is configurable - key database memory management (need more fixes) - policy specification is revisited
XXX m->m_pkthdr.rcvif is still overloaded - hope to fix it soon
|
1.43 |
| 13-Dec-1999 |
itojun | sync IPv6 part with latest KAME tree. IPsec part is left unmodified due to massive changes in KAME side. - IPv6 output goes through nd6_output - faith can capture IPv4 packets as well - you can run IPv4-to-IPv6 translator using heavily modified DNS servers - per-interface statistics (required for IPv6 MIB) - interface autoconfig is revisited - udp input handling has a big change for mapped address support. - introduce in4_cksum() for non-overwriting checksumming - introduce m_pulldown() - neighbor discovery cleanups/improvements - netinet/in.h strictly conforms to RFC2553 (no extra defs visible to userland) - IFA_STATS is fixed a bit (not tested) - and more more more.
TODO: - cleanup os-independency #ifdef - avoid rcvif dual use (for IPsec) to help ifdetach
(sorry for jumbo commit, I can't separate this any more...)
|
1.42 |
| 09-Jul-1999 |
thorpej | branches: 1.42.2; 1.42.8; defopt IPSEC and IPSEC_ESP (both into opt_ipsec.h).
|
1.41 |
| 02-Jul-1999 |
itojun | avoid "variable not initialized" warnings on some of the platforms.
|
1.40 |
| 01-Jul-1999 |
itojun | IPv6 kernel code, based on KAME/NetBSD 1.4, SNAP kit 19990628. (Sorry for a big commit, I can't separate this into several pieces...) Pls check sys/netinet6/TODO and sys/netinet6/IMPLEMENTATION for details.
- sys/kern: do not assume single mbuf, accept chained mbuf on passing data from userland to kernel (or other way round). - "midway" ATM card: ATM PVC pseudo device support, like those done in ALTQ package (ftp://ftp.csl.sony.co.jp/pub/kjc/). - sys/netinet/tcp*: IPv4/v6 dual stack tcp support. - sys/netinet/{ip6,icmp6}.h, sys/net/pfkeyv2.h: IETF document assumes those file to be there so we patch it up. - sys/netinet: IPsec additions are here and there. - sys/netinet6/*: most of IPv6 code sits here. - sys/netkey: IPsec key management code - dev/pci/pcidevs: regen
In my understanding no code here is subject to export control so it should be safe.
|
1.39 |
| 10-Sep-1998 |
tv | branches: 1.39.8; 1.39.10; egcs {brace} warning fix
|
1.38 |
| 10-Sep-1998 |
mouse | Create tcp.keepidle, tcp.keepintvl, tcp.keepcnt, tcp.slowhz sysctls.
|
1.37 |
| 06-May-1998 |
thorpej | Use macros from tcp_timer.h to manipulate TCP timers, so that their implementation can be changed easily.
|
1.36 |
| 29-Apr-1998 |
matt | New TCP reassembly code. The new code reduces the memory needed by out-of-order packets and builds the infrastructure needed for sending SACK blocks (to be added shortly).
|
1.35 |
| 13-Apr-1998 |
kml | Fix to ensure that the correct MSS is advertised for loopback TCP connections by using the MTU of the interface. Also added a knob, mss_ifmtu, to force all connections to use the MTU of the interface to calculate the advertised MSS.
|
1.34 |
| 19-Feb-1998 |
thorpej | Update copyright (sigh, should have done this long ago).
|
1.33 |
| 05-Jan-1998 |
thorpej | Finishing merging 4.4BSD-Lite2 netinet. At this point, the only changes left were SCCS IDs and Copyright dates.
|
1.32 |
| 05-Jan-1998 |
thorpej | From 4.4BSD-Lite2 (noted by Frank van der Linden): so_linger is used as an argument to tsleep(), so was stuffed with clockticks for the TCP linger time. However, so_linger is set directly from l_linger if the linger time is specified, and l_linger is seconds (although this is not currently documented anywhere). Fix this to set the TCP linger time in seconds, and multiply so_linger by hz when tsleep() is called to actually perform the linger.
|
1.31 |
| 13-Dec-1997 |
thorpej | After further examination of traces of bulk transfers (with help from Kevin Lahey), undo the "defer window update until next delayed ACK".
|
1.30 |
| 11-Dec-1997 |
thorpej | Implement an infrastructure to allow larger initial congestion windows. The sysctl'able variable "tcp_init_win", when set to 0, selects an auto-tuning algorithm for selecting the initial window, based on transmit segment size, per discussion in the IETF tcpimpl working group.
Default initial window is still 1 segment, but will soon become 2 segments, per discussion in tcpimpl.
|
1.29 |
| 11-Dec-1997 |
thorpej | In the PRU_RCVD entry point, if TF_DELACK is set, don't send the window update now, since it will be sent within 200ms when the delayed ACK is sent. Instrument how many hits we get on this optimization.
|
1.28 |
| 08-Nov-1997 |
kml | TCP MSS fixes to provide cleaner slow-start and recovery.
|
1.27 |
| 10-Oct-1997 |
explorer | branches: 1.27.2; Add hooks to use the kernel random system to generate TCP sequence numbers.
|
1.26 |
| 28-Jul-1997 |
thorpej | branches: 1.26.2; Generate dependencies for the TCP_SENDSPACE and TCP_RECVSPACE options.
|
1.25 |
| 28-Jul-1997 |
thorpej | Make the following tunable via sysctl, inspired by BSD/OS: - tcp_sendspace - tcp_recvspace - tcp_mssdflt - tcp_syn_cache_limit - tcp_syn_bucket_limit - tcp_syn_cache_timer
|
1.24 |
| 12-Jun-1997 |
kleink | Eliminate a superflouus `if' statement: when detaching the TCP protocol from a socket, just calling tcp_disconnect() on the tcpcb will do the right thing. From Thorsten Frueauf <frueauf@ira.uka.de> and W. Richard Stevens in PR/3738 resp. TCP/IP Illustrated, Vol. 2.
|
1.23 |
| 23-May-1996 |
mycroft | Make sure the control mbufs are freed in all cases.
|
1.22 |
| 23-May-1996 |
mycroft | Minor changes.
|
1.21 |
| 22-May-1996 |
mycroft | Pass a proc pointer down to the usrreq and pcbbind functions for PRU_ATTACH, PRU_BIND and PRU_CONTROL. The usrreq interface really needs to be split up, but this will have to wait. Remove SS_PRIV completely.
|
1.20 |
| 13-Feb-1996 |
christos | branches: 1.20.4; netinet prototypes
|
1.19 |
| 31-Jan-1996 |
mycroft | Add a comment describing the previous.
|
1.18 |
| 31-Jan-1996 |
mycroft | If we close from FIN_WAIT_2 state, make sure we don't leave the socket around forever if we don't get a final FIN. From Arne Juul, PR 1659.
|
1.17 |
| 30-Sep-1995 |
thorpej | branches: 1.17.2; Implement tcp_sysctl(). Add a sysctl option to enable/disable RFC1323 extensions to TCP. From John Kohl <jtk@kolvir.blrc.ma.us>.
|
1.16 |
| 12-Aug-1995 |
mycroft | splnet --> splsoftnet
|
1.15 |
| 12-Jun-1995 |
mycroft | Various cleanup, including: * Convert several data structures to use queue.h. * Split in_pcbnotify() into two parts; one for notifying a specific PCB, and one for notifying all PCBs for a particular foreign address.
|
1.14 |
| 13-Apr-1995 |
cgd | be a bit more careful and explicit with types. (basically a large no-op.)
|
1.13 |
| 21-Mar-1995 |
glass | Default linger time was 120 clock ticks instead of the intended 2 minutes. [Bug pointed out by Wright/Stevens in TCP/IP Illustrated Vol II]
|
1.12 |
| 14-Oct-1994 |
mycroft | Don't return received data to the user until the initial handshake is complete. Also use TCPS_HAVEESTABLISHED() in a few other places.
|
1.11 |
| 13-Oct-1994 |
mycroft | Increase the default window size to 16k.
|
1.10 |
| 29-Jun-1994 |
cgd | branches: 1.10.2; New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD'
|
1.9 |
| 13-May-1994 |
mycroft | Update to 4.4-Lite networking code, with a few local changes.
|
1.8 |
| 10-Jan-1994 |
mycroft | Change the counters to be all the same type -- u_long.
|
1.7 |
| 08-Jan-1994 |
mycroft | Remove some extra prototypes.
|
1.6 |
| 08-Jan-1994 |
mycroft | Prototypes.
|
1.5 |
| 18-Dec-1993 |
mycroft | Canonicalize all #includes.
|
1.4 |
| 15-Jun-1993 |
cgd | branches: 1.4.4; bump sendspace and recvspace up to 8k each; rod says these should be safe values...
|
1.3 |
| 22-May-1993 |
cgd | add include of select.h if necessary for protos, or delete if extraneous
|
1.2 |
| 18-May-1993 |
cgd | make kernel select interface be one-stop shopping & clean it all up.
|
1.1 |
| 21-Mar-1993 |
cgd | branches: 1.1.1; Initial revision
|
1.1.1.3 |
| 05-Jan-1998 |
thorpej | Import sys/netinet from 4.4BSD-Lite2 for reference purposes.
|
1.1.1.2 |
| 05-Jan-1998 |
thorpej | Import sys/netinet from 4.4BSD-Lite for reference purposes.
|
1.1.1.1 |
| 21-Mar-1993 |
cgd | initial import of 386bsd-0.1 sources
|
1.4.4.1 |
| 24-Sep-1993 |
mycroft | Make all files using spl*() #include cpu.h. Changes from trunk.
|
1.10.2.1 |
| 13-Oct-1994 |
mycroft | Update from trunk.
|
1.17.2.1 |
| 02-Feb-1996 |
mycroft | Bring in changes for mondo patch 2.
|
1.20.4.1 |
| 11-Dec-1996 |
mycroft | From trunk: Eliminate SS_PRIV; instead, pass down a proc pointer to the usrreq methods that need it. Fix numerous memory leaks and bogus return values.
|
1.26.2.1 |
| 14-Oct-1997 |
thorpej | Update marc-pcmcia branch from trunk.
|
1.27.2.2 |
| 09-May-1998 |
mycroft | Pull up patch from kml.
|
1.27.2.1 |
| 08-Nov-1997 |
thorpej | Pull up from trunk: TCP MSS fixes to provide cleaner slow-start and recovery. (kml)
|
1.39.10.3 |
| 30-Nov-1999 |
itojun | bring in latest KAME (as of 19991130, KAME/NetBSD141) into kame branch just for reference purposes. This commit includes 1.4 -> 1.4.1 sync for kame branch.
The branch does not compile at all (due to the lack of ALTQ and some other source code). Please do not try to modify the branch, this is just for referenre purposes.
synchronization to latest KAME will take place on HEAD branch soon.
|
1.39.10.2 |
| 06-Jul-1999 |
itojun | KAME/NetBSD 1.4, SNAP kit 1999/07/05. NOTE: this branch is just for reference purposes (i.e. for taking cvs diff). do not touch anything on the branch. actual work must be done on HEAD branch.
|
1.39.10.1 |
| 28-Jun-1999 |
itojun | KAME/NetBSD 1.4 SNAP kit, dated 19990628.
NOTE: this branch (kame) is used just for refernce. this may not compile due to multiple reasons.
|
1.39.8.2 |
| 02-Aug-1999 |
thorpej | Update from trunk.
|
1.39.8.1 |
| 01-Jul-1999 |
thorpej | Sync w/ -current.
|
1.42.8.1 |
| 27-Dec-1999 |
wrstuden | Pull up to last week's -current.
|
1.42.2.4 |
| 27-Mar-2001 |
bouyer | Sync with HEAD.
|
1.42.2.3 |
| 11-Feb-2001 |
bouyer | Sync with HEAD.
|
1.42.2.2 |
| 13-Dec-2000 |
bouyer | Sync with HEAD (for UBC fixes).
|
1.42.2.1 |
| 20-Nov-2000 |
bouyer | Update thorpej_scsipi to -current as of a month ago
|
1.50.2.1 |
| 22-Jun-2000 |
minoura | Sync w/ netbsd-1-5-base.
|
1.51.2.2 |
| 09-Oct-2000 |
enami | Pullup rev. 1.54 and 1.55 (approved by jhawk):
|
1.51.2.1 |
| 16-Aug-2000 |
itojun | pullup (approved by releng-1-5)
switch from net.inet*.*.*ratelimit to net.inet*.*.ppslimit.
(tags are rough estimate - we had some try-and-error in main trunc) sys/netinet/icmp6.h 1.9 -> 1.11 sys/netinet/icmp_var.h 1.15 -> 1.17 sys/netinet/in_proto.c 1.39 -> 1.42 sys/netinet/ip_icmp.c 1.50 -> 1.51, 1.52 -> 1.54 sys/netinet/tcp_input.c 1.111 -> 1.112, 1.115 -> 1.117 sys/netinet/tcp_usrreq.c 1.52 -> 1.53 sys/netinet/tcp_var.h 1.72 -> 1.75 sys/netinet6/icmp6.c 1.34 -> 1.35, 1.36 -> 1.38 sys/netinet6/in6_proto.c 1.17 -> 1.19
|
1.60.2.9 |
| 11-Nov-2002 |
nathanw | Catch up to -current
|
1.60.2.8 |
| 01-Aug-2002 |
nathanw | Catch up to -current.
|
1.60.2.7 |
| 20-Jun-2002 |
nathanw | Catch up to -current.
|
1.60.2.6 |
| 01-Apr-2002 |
nathanw | Catch up to -current. (CVS: It's not just a program. It's an adventure!)
|
1.60.2.5 |
| 08-Jan-2002 |
nathanw | Catch up to -current.
|
1.60.2.4 |
| 14-Nov-2001 |
nathanw | Catch up to -current.
|
1.60.2.3 |
| 21-Sep-2001 |
nathanw | Catch up to -current.
|
1.60.2.2 |
| 24-Aug-2001 |
nathanw | Catch up with -current.
|
1.60.2.1 |
| 09-Apr-2001 |
nathanw | Catch up with -current.
|
1.63.2.6 |
| 06-Sep-2002 |
jdolecek | sync kqueue branch with HEAD
|
1.63.2.5 |
| 23-Jun-2002 |
jdolecek | catch up with -current on kqueue branch
|
1.63.2.4 |
| 16-Mar-2002 |
jdolecek | Catch up with -current.
|
1.63.2.3 |
| 10-Jan-2002 |
thorpej | Sync kqueue branch with -current.
|
1.63.2.2 |
| 13-Sep-2001 |
thorpej | Update the kqueue branch to HEAD.
|
1.63.2.1 |
| 03-Aug-2001 |
lukem | update to -current
|
1.64.2.1 |
| 01-Oct-2001 |
fvdl | Catch up with -current.
|
1.65.2.1 |
| 12-Nov-2001 |
thorpej | Sync the thorpej-mips-cache branch with -current.
|
1.70.4.2 |
| 15-Jul-2002 |
gehenna | catch up with -current.
|
1.70.4.1 |
| 20-Jun-2002 |
gehenna | catch up with -current.
|
1.81.2.11 |
| 11-Dec-2005 |
christos | Sync with head.
|
1.81.2.10 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.81.2.9 |
| 01-Apr-2005 |
skrll | Sync with HEAD.
|
1.81.2.8 |
| 08-Mar-2005 |
skrll | Sync with HEAD.
|
1.81.2.7 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.81.2.6 |
| 04-Feb-2005 |
skrll | Sync with HEAD.
|
1.81.2.5 |
| 18-Dec-2004 |
skrll | Sync with HEAD.
|
1.81.2.4 |
| 21-Sep-2004 |
skrll | Fix the sync with head I botched.
|
1.81.2.3 |
| 18-Sep-2004 |
skrll | Sync with HEAD.
|
1.81.2.2 |
| 03-Aug-2004 |
skrll | Sync with HEAD
|
1.81.2.1 |
| 02-Jul-2003 |
darrenr | Apply the aborted ktrace-lwp changes to a specific branch. This is just for others to review, I'm concerned that patch fuziness may have resulted in some errant code being generated but I'll look at that later by comparing the diff from the base to the branch with the file I attempt to apply to it. This will, at the very least, put the changes in a better context for others to review them and attempt to tinker with removing passing of 'struct lwp' through the kernel.
|
1.87.2.1 |
| 28-May-2004 |
tron | Pull up revision 1.92 (requested by atatat in ticket #391): Sysctl descriptions under net subtree (net.key not done)
|
1.93.4.2 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.93.4.1 |
| 12-Feb-2005 |
yamt | sync with head.
|
1.93.2.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.100.2.2 |
| 06-May-2005 |
tron | Pull up revision 1.102 (requested by kurahone in ticket #199): Added sysctl tunable limits for the number of maximum SACK holes per connection and per system. Idea taken from FreeBSD.
|
1.100.2.1 |
| 01-May-2005 |
tron | Pull up revision 1.101 (requested by yamt in ticket #221): s of sack is selective, not selection. pointed by Michael Eriksson.
|
1.106.2.7 |
| 21-Jan-2008 |
yamt | sync with head
|
1.106.2.6 |
| 07-Dec-2007 |
yamt | sync with head
|
1.106.2.5 |
| 15-Nov-2007 |
yamt | sync with head.
|
1.106.2.4 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.106.2.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.106.2.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.106.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.111.6.1 |
| 22-Nov-2005 |
yamt | sync with head.
|
1.113.12.1 |
| 24-May-2006 |
tron | Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
|
1.113.10.3 |
| 06-May-2006 |
christos | - Move kauth_cred_t declaration to <sys/types.h> - Cleanup struct ucred; forward declarations that are unused. - Don't include <sys/kauth.h> in any header, but include it in the c files that need it.
Approved by core.
|
1.113.10.2 |
| 19-Apr-2006 |
elad | sync with head.
|
1.113.10.1 |
| 08-Mar-2006 |
elad | Adapt to kernel authorization KPI.
|
1.113.8.3 |
| 14-Sep-2006 |
yamt | sync with head.
|
1.113.8.2 |
| 11-Aug-2006 |
yamt | sync with head
|
1.113.8.1 |
| 24-May-2006 |
yamt | sync with head.
|
1.113.6.2 |
| 01-Jun-2006 |
kardel | Sync with head.
|
1.113.6.1 |
| 22-Apr-2006 |
simonb | Sync with head.
|
1.113.4.3 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.113.4.2 |
| 05-Feb-2006 |
rpaulo | in6pcb -> inpcb merge.
|
1.113.4.1 |
| 05-Feb-2006 |
rpaulo | <netinet6/in6_pcb.h> went away. Bye!
|
1.120.2.2 |
| 12-Jan-2007 |
ad | Sync with head.
|
1.120.2.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.122.2.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.122.2.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.129.8.1 |
| 05-Sep-2009 |
bouyer | Pull up following revision(s) (requested by mlelstv in ticket #1358): sys/netinet/tcp_usrreq.c: revision 1.148 via patch Make the sysctl routines take raise to splnet() before dealing with any data structures.
|
1.129.4.1 |
| 03-Jun-2008 |
skrll | Sync with netbsd-4.
|
1.129.2.3 |
| 05-Sep-2009 |
bouyer | Pull up following revision(s) (requested by mlelstv in ticket #1358): sys/netinet/tcp_usrreq.c: revision 1.148 via patch Make the sysctl routines take raise to splnet() before dealing with any data structures.
|
1.129.2.2 |
| 29-Jan-2008 |
pavel | Pull up following revision(s) (requested by joerg in ticket #1057): sys/netinet/tcp_usrreq.c: revision 1.134 Protect inet6_ident_core() with #ifdef INET6, fixes building without options INET6.
|
1.129.2.1 |
| 21-Jan-2008 |
bouyer | Pull up following revision(s) (requested by ghen in ticket #1039): sys/netinet/tcp_var.h: revision 1.148 distrib/sets/lists/comp/mi: revision 1.1035 distrib/sets/lists/man/mi: revision 1.1010 usr.sbin/tcpdrop/Makefile: revision 1.1 usr.sbin/tcpdrop/tcpdrop.c: revision 1.1 - 1.3 usr.sbin/tcpdrop/tcpdrop.8: revision 1.1 usr.sbin/Makefile: revision 1.228 via patch sys/netinet/tcp_usrreq.c: revision 1.133 distrib/sets/lists/base/mi: revision 1.712 Import tcpdrop(8) from OpenBSD
|
1.130.2.1 |
| 12-Mar-2007 |
rmind | Sync with HEAD.
|
1.131.4.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.131.2.3 |
| 09-Oct-2007 |
ad | Sync with head.
|
1.131.2.2 |
| 20-Aug-2007 |
ad | Sync with HEAD.
|
1.131.2.1 |
| 15-Jul-2007 |
ad | Sync with head.
|
1.135.2.1 |
| 15-Aug-2007 |
skrll | Sync with HEAD.
|
1.136.6.2 |
| 02-Aug-2007 |
rmind | TCP socket buffers automatic sizing - ported from FreeBSD. http://mail-index.netbsd.org/tech-net/2007/02/04/0006.html
! Disabled by default, marked as experimental. Testers are very needed. ! Someone should thoroughly test this, and improve if possible.
Discussed on <tech-net>: http://mail-index.netbsd.org/tech-net/2007/07/12/0002.html Thanks Greg Troxel for comments.
OK by the long silence on <tech-net>.
|
1.136.6.1 |
| 02-Aug-2007 |
rmind | file tcp_usrreq.c was added on branch matt-mips64 on 2007-08-02 02:42:42 +0000
|
1.136.4.2 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.136.4.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.136.2.3 |
| 03-Dec-2007 |
joerg | Sync with HEAD.
|
1.136.2.2 |
| 04-Nov-2007 |
jmcneill | Sync with HEAD.
|
1.136.2.1 |
| 02-Oct-2007 |
joerg | Sync with HEAD.
|
1.137.4.1 |
| 13-Nov-2007 |
bouyer | Sync with HEAD
|
1.138.2.2 |
| 27-Dec-2007 |
mjf | Sync with HEAD.
|
1.138.2.1 |
| 08-Dec-2007 |
mjf | Sync with HEAD.
|
1.139.6.1 |
| 02-Jan-2008 |
bouyer | Sync with HEAD
|
1.139.2.1 |
| 26-Dec-2007 |
ad | Sync with head.
|
1.140.6.3 |
| 17-Jan-2009 |
mjf | Sync with HEAD.
|
1.140.6.2 |
| 28-Sep-2008 |
mjf | Sync with HEAD.
|
1.140.6.1 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.142.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.144.2.5 |
| 11-Mar-2010 |
yamt | sync with head
|
1.144.2.4 |
| 16-Sep-2009 |
yamt | sync with head
|
1.144.2.3 |
| 20-Jun-2009 |
yamt | sync with head
|
1.144.2.2 |
| 04-May-2009 |
yamt | sync with head.
|
1.144.2.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.146.6.2 |
| 13-Dec-2008 |
haad | Update haad-dm branch to haad-dm-base2.
|
1.146.6.1 |
| 19-Oct-2008 |
haad | Sync with HEAD.
|
1.146.2.1 |
| 18-Sep-2008 |
wrstuden | Sync with wrstuden-revivesa-base-2.
|
1.149.6.1 |
| 17-Jun-2009 |
bouyer | branches: 1.149.6.1.2; Pull up following revision(s) (requested by rmind in ticket #812): sys/netinet/tcp_usrreq.c: revision 1.155 sysctl_inpcblist: fix a lock leak in error path (hi <matt>).
|
1.149.6.1.2.1 |
| 21-Apr-2010 |
matt | sync to netbsd-5
|
1.149.4.2 |
| 26-Sep-2009 |
snj | Pull up following revision(s) (requested by darran in ticket #950): sys/netinet/tcp_input.c: revision 1.299 sys/netinet/tcp_usrreq.c: revision 1.156 sys/netinet/tcp_var.h: revision 1.161 Make tcp msl (max segment life) tunable via sysctl net.inet.tcp.msl. Okayed by tls@.
|
1.149.4.1 |
| 17-Jun-2009 |
bouyer | Pull up following revision(s) (requested by rmind in ticket #812): sys/netinet/tcp_usrreq.c: revision 1.155 sysctl_inpcblist: fix a lock leak in error path (hi <matt>).
|
1.149.2.3 |
| 28-Apr-2009 |
skrll | Sync with HEAD.
|
1.149.2.2 |
| 03-Mar-2009 |
skrll | Sync with HEAD.
|
1.149.2.1 |
| 19-Jan-2009 |
skrll | Sync with HEAD.
|
1.150.4.2 |
| 23-Jul-2009 |
jym | Sync with HEAD.
|
1.150.4.1 |
| 13-May-2009 |
jym | Sync with HEAD.
Commit is split, to avoid a "too many arguments" protocol error.
|
1.158.6.1 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.158.4.2 |
| 12-Jun-2011 |
rmind | sync with head
|
1.158.4.1 |
| 31-May-2011 |
rmind | sync with head
|
1.159.2.1 |
| 23-Jun-2011 |
cherry | Catchup with rmind-uvmplock merge.
|
1.160.6.2 |
| 05-Apr-2012 |
mrg | sync to latest -current.
|
1.160.6.1 |
| 18-Feb-2012 |
mrg | merge to -current.
|
1.160.2.3 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.160.2.2 |
| 30-Oct-2012 |
yamt | sync with head
|
1.160.2.1 |
| 17-Apr-2012 |
yamt | sync with head
|
1.162.2.3 |
| 14-Dec-2013 |
bouyer | Pull up following revision(s) (requested by kefren in ticket #992): sys/netinet/tcp_usrreq.c: revision 1.170 Update TCP CB with new values on rfc1323 and mssdflt sysctl updates =46rom yasuoka-cj7TXg5MjN14Eiagz67IpQ@public.gmane.org in kern/44254
|
1.162.2.2 |
| 20-Oct-2013 |
bouyer | Pull up following revision(s) (requested by spz in ticket #967): sys/netinet/tcp_usrreq.c: revision 1.168 PR/48098: Brian Marcotte: Avoid kernel assertion for embryonic sockets that don't have credentials yet. XXX: pullup-6
|
1.162.2.1 |
| 17-Mar-2012 |
bouyer | branches: 1.162.2.1.4; 1.162.2.1.6; Pull up following revision(s) (requested by jruoho in ticket #124): sys/netinet/tcp_usrreq.c: revision 1.163 PR/46077: M. Nunberg: Stat should not fial on connecting socket.
|
1.162.2.1.6.1 |
| 20-Oct-2013 |
bouyer | Pull up following revision(s) (requested by spz in ticket #967): sys/netinet/tcp_usrreq.c: revision 1.168 PR/48098: Brian Marcotte: Avoid kernel assertion for embryonic sockets that don't have credentials yet. XXX: pullup-6
|
1.162.2.1.4.1 |
| 20-Oct-2013 |
bouyer | Pull up following revision(s) (requested by spz in ticket #967): sys/netinet/tcp_usrreq.c: revision 1.168 PR/48098: Brian Marcotte: Avoid kernel assertion for embryonic sockets that don't have credentials yet. XXX: pullup-6
|
1.165.2.3 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.165.2.2 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.165.2.1 |
| 23-Jun-2013 |
tls | resync from head
|
1.166.4.5 |
| 18-May-2014 |
rmind | sync with head
|
1.166.4.4 |
| 17-Oct-2013 |
rmind | Eliminate some of the splsoftnet() calls, misc clean up.
|
1.166.4.3 |
| 23-Sep-2013 |
rmind | - Add some initial locking to the IPv4 PCB. - Rename inpcb_lookup_*() routines to be more accurate and add comments. - Add some comments about connection life-cycle WRT socket layer.
|
1.166.4.2 |
| 28-Aug-2013 |
rmind | Checkpoint work in progress: - Initial split of the protocol user-request method into the following methods: pr_attach, pr_detach and pr_generic for old the pr_usrreq. - Adjust socreate(9) and sonewconn(9) to call pr_attach without the socket lock held (as a preparation for the locking scheme adjustment). - Adjust all pr_attach routines to assert that PCB is not set. - Sprinkle various comments, document some routines and their locking. - Remove M_PCB, replace with kmem(9). - Fix few bugs spotted on the way.
|
1.166.4.1 |
| 17-Jul-2013 |
rmind | Checkpoint work in progress: - Move PCB structures under __INPCB_PRIVATE, adjust most of the callers and thus make IPv4 PCB structures mostly opaque. Any volunteers for merging in6pcb with inpcb (see rpaulo-netinet-merge-pcb branch)? - Move various global vars to the modules where they belong, make them static. - Some preliminary work for IPv4 PCB locking scheme. - Make raw IP code mostly MP-safe. Simplify some of it. - Rework "fast" IP forwarding (ipflow) code to be mostly MP-safe. It should run from a software interrupt, rather than hard. - Rework tun(4) pseudo interface to be MP-safe. - Work towards making some other interfaces more strict.
|
1.171.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.200.2.4 |
| 29-Jan-2019 |
msaitoh | Pull up following revision(s) (requested by martin in ticket #1676): sys/net/link_proto.c 1.37 sys/netatalk/ddp_usrreq.c 1.72 sys/netbt/hci_socket.c 1.46 sys/netbt/l2cap_socket.c 1.36 sys/netbt/rfcomm_socket.c 1.38 sys/netbt/sco_socket.c 1.38 sys/netinet/tcp_usrreq.c 1.223 via patch sys/netinet6/raw_ip6.c 1.173 sys/netinet6/udp6_usrreq.c 1.146 sys/netmpls/mpls_proto.c 1.32 sys/netnatm/natm.c patch
Fix memory leaks pointed out by Ilja Van Sprundel: all sendoob() functions are expted to free both passed mbuf chains.
|
1.200.2.3 |
| 11-Sep-2017 |
snj | Pull up following revision(s) (requested by jdolecek in ticket #1498): sys/netinet/tcp_usrreq.c: revision 1.216 add some more getsockopt(2) params
|
1.200.2.2 |
| 21-Feb-2015 |
martin | branches: 1.200.2.2.2; 1.200.2.2.6; Pull up following revision(s) (requested by he in ticket #530): sys/netinet/tcp_output.c: revision 1.180 sys/netinet/tcp_input.c: revision 1.336 sys/netinet/tcp_usrreq.c: revision 1.203 share/man/man4/tcp.4: revision 1.30 sys/netinet/tcp.h: revision 1.31 sys/netinet/tcp_subr.c: revision 1.258 sys/netinet/tcp_var.h: revision 1.176 sys/netinet/tcp_var.h: revision 1.177 sys/sys/param.h: bump revision
Port over the TCP_INFO socket option from FreeBSD, originally from the Linux 2.6 TCP API. This permits the caller to query certain information about a TCP connection, and is used by pkgsrc's net/iperf3 test program if available.
This extends struct tcbcb with three fields to count retransmits, out-of-sequence receives and zero window announcements, and will therefore warrant a kernel revision bump (done separately).
Change the new counter variables in struct tcpcb to uint32_t, as per christos' comments.
|
1.200.2.1 |
| 17-Jan-2015 |
martin | Pull up following revision(s) (requested by maxv in ticket #427): sys/compat/svr4/svr4_schedctl.c: revision 1.8 sys/netinet/tcp_timer.c: revision 1.88 sys/miscfs/genfs/layer_vfsops.c: revision 1.45 sys/compat/svr4/svr4_ioctl.c: revision 1.37 sys/ufs/chfs/chfs_vfsops.c: revision 1.14 sys/miscfs/fdesc/fdesc_vfsops.c: revision 1.91 sys/compat/linux/arch/i386/linux_ptrace.c: revision 1.30 sys/compat/common/kern_time_50.c: revision 1.28 sys/netinet6/ip6_forward.c: revision 1.74 sys/miscfs/umapfs/umap_vnops.c: revision 1.57 sys/compat/svr4/svr4_fcntl.c: revision 1.74 distrib/sets/lists/comp/mi: revision 1.1931 sys/netinet6/udp6_output.c: revision 1.46 sys/fs/puffs/puffs_compat.c: revision 1.3 sys/fs/udf/udf_rename.c: revision 1.11 sys/compat/svr4/svr4_filio.c: revision 1.24 sys/fs/udf/udf_rename.c: revision 1.12 sys/netinet/tcp_usrreq.c: revision 1.202 sys/miscfs/umapfs/umap_subr.c: revision 1.29 sys/compat/linux/common/linux_fadvise64.c: revision 1.3 sys/netinet/if_atm.c: revision 1.34 sys/miscfs/procfs/procfs_subr.c: revision 1.106 sys/miscfs/genfs/layer_subr.c: revision 1.37 sys/netinet/tcp_sack.c: revision 1.30 sys/compat/freebsd/freebsd_misc.c: revision 1.33 sys/compat/freebsd/freebsd_file.c: revision 1.33 sys/ufs/chfs/chfs_vnode.c: revision 1.12 sys/compat/svr4/svr4_ttold.c: revision 1.34 sys/compat/linux/common/linux_file.c: revision 1.114 sys/compat/linux/arch/mips/linux_machdep.c: revision 1.43 sys/compat/linux/common/linux_signal.c: revision 1.76 sys/compat/common/compat_util.c: revision 1.46 sys/compat/linux/arch/arm/linux_ptrace.c: revision 1.18 sys/compat/svr4/svr4_sockio.c: revision 1.36 sys/compat/linux/arch/arm/linux_machdep.c: revision 1.32 sys/compat/svr4/svr4_signal.c: revision 1.66 sys/kern/kern_exec.c: revision 1.410 sys/fs/puffs/puffs_vfsops.c: revision 1.115 sys/compat/svr4/svr4_exec_elf64.c: revision 1.15 sys/compat/linux/arch/i386/linux_machdep.c: revision 1.159 sys/compat/linux/arch/alpha/linux_machdep.c: revision 1.50 sys/compat/linux32/common/linux32_misc.c: revision 1.24 sys/netinet/in_pcb.c: revision 1.153 sys/sys/malloc.h: revision 1.116 sys/compat/common/if_43.c: revision 1.9 share/man/man9/Makefile: revision 1.380 sys/netinet/tcp_vtw.c: revision 1.12 sys/miscfs/umapfs/umap_vfsops.c: revision 1.95 sys/ufs/ext2fs/ext2fs_vfsops.c: revision 1.186 sys/compat/common/uipc_syscalls_43.c: revision 1.46 sys/ufs/ext2fs/ext2fs_vnops.c: revision 1.115 sys/fs/puffs/puffs_msgif.c: revision 1.97 sys/compat/svr4/svr4_ipc.c: revision 1.27 sys/compat/linux/common/linux_exec.c: revision 1.117 sys/ufs/ext2fs/ext2fs_readwrite.c: revision 1.66 sys/netinet/tcp_output.c: revision 1.179 sys/compat/svr4/svr4_termios.c: revision 1.28 sys/fs/udf/udf_strat_bootstrap.c: revision 1.4 sys/fs/puffs/puffs_subr.c: revision 1.67 sys/fs/puffs/puffs_node.c: revision 1.36 sys/miscfs/overlay/overlay_vnops.c: revision 1.21 sys/fs/cd9660/cd9660_node.c: revision 1.34 sys/netinet/raw_ip.c: revision 1.146 sys/sys/mallocvar.h: revision 1.13 sys/miscfs/overlay/overlay_vfsops.c: revision 1.63 share/man/man9/malloc.9: revision 1.50 sys/netinet6/dest6.c: revision 1.18 sys/compat/linux/common/linux_uselib.c: revision 1.33 sys/compat/linux/common/linux_socket.c: revision 1.120 share/man/man9/malloc.9: revision 1.51 sys/netinet/tcp_subr.c: revision 1.257 sys/compat/linux/common/linux_socketcall.c: revision 1.45 sys/compat/linux/common/linux_fadvise64_64.c: revision 1.3 sys/compat/freebsd/freebsd_ipc.c: revision 1.17 sys/compat/linux/common/linux_misc_notalpha.c: revision 1.109 sys/compat/linux/arch/alpha/linux_pipe.c: revision 1.17 sys/netinet6/in6_pcb.c: revision 1.132 sys/netinet6/in6_ifattach.c: revision 1.94 sys/compat/svr4/svr4_exec_elf32.c: revision 1.15 sys/miscfs/nullfs/null_vfsops.c: revision 1.90 sys/fs/cd9660/cd9660_util.c: revision 1.12 sys/compat/linux/arch/powerpc/linux_machdep.c: revision 1.48 sys/compat/freebsd/freebsd_exec_elf32.c: revision 1.20 sys/miscfs/procfs/procfs_vfsops.c: revision 1.94 sys/compat/linux/arch/powerpc/linux_ptrace.c: revision 1.28 sys/compat/linux/common/linux_sched.c: revision 1.67 sys/compat/linux/common/linux_exec_aout.c: revision 1.67 sys/compat/linux/common/linux_pipe.c: revision 1.67 sys/compat/linux/common/linux_llseek.c: revision 1.34 sys/compat/linux/arch/mips/linux_ptrace.c: revision 1.10 Do not uselessly include <sys/malloc.h>. Cleanup: - remove struct kmembuckets (dead) - correctly deadify MALLOC_XX - remove MALLOC_DEFINE_LIMIT and MALLOC_JUSTDEFINE_LIMIT (dead) - remove malloc_roundup(), malloc_type_setlimit(), MALLOC_DEFINE_LIMIT() and MALLOC_JUSTDEFINE_LIMIT() from man 9 malloc New sentence, new line. Bump date for previous. Obsolete malloc_roundup(9), malloc_type_setlimit(9) and MALLOC_DEFINE_LIMIT(9) man pages.
|
1.200.2.2.6.1 |
| 29-Jan-2019 |
msaitoh | Pull up following revision(s) (requested by martin in ticket #1676): sys/net/link_proto.c 1.37 sys/netatalk/ddp_usrreq.c 1.72 sys/netbt/hci_socket.c 1.46 sys/netbt/l2cap_socket.c 1.36 sys/netbt/rfcomm_socket.c 1.38 sys/netbt/sco_socket.c 1.38 sys/netinet/tcp_usrreq.c 1.223 via patch sys/netinet6/raw_ip6.c 1.173 sys/netinet6/udp6_usrreq.c 1.146 sys/netmpls/mpls_proto.c 1.32 sys/netnatm/natm.c patch
Fix memory leaks pointed out by Ilja Van Sprundel: all sendoob() functions are expted to free both passed mbuf chains.
|
1.200.2.2.2.1 |
| 29-Jan-2019 |
msaitoh | Pull up following revision(s) (requested by martin in ticket #1676): sys/net/link_proto.c 1.37 sys/netatalk/ddp_usrreq.c 1.72 sys/netbt/hci_socket.c 1.46 sys/netbt/l2cap_socket.c 1.36 sys/netbt/rfcomm_socket.c 1.38 sys/netbt/sco_socket.c 1.38 sys/netinet/tcp_usrreq.c 1.223 via patch sys/netinet6/raw_ip6.c 1.173 sys/netinet6/udp6_usrreq.c 1.146 sys/netmpls/mpls_proto.c 1.32 sys/netnatm/natm.c patch
Fix memory leaks pointed out by Ilja Van Sprundel: all sendoob() functions are expted to free both passed mbuf chains.
|
1.202.2.7 |
| 28-Aug-2017 |
skrll | Sync with HEAD
|
1.202.2.6 |
| 05-Feb-2017 |
skrll | Sync with HEAD
|
1.202.2.5 |
| 05-Dec-2016 |
skrll | Sync with HEAD
|
1.202.2.4 |
| 29-May-2016 |
skrll | Sync with HEAD
|
1.202.2.3 |
| 22-Sep-2015 |
skrll | Sync with HEAD
|
1.202.2.2 |
| 06-Jun-2015 |
skrll | Sync with HEAD
|
1.202.2.1 |
| 06-Apr-2015 |
skrll | Sync with HEAD
|
1.212.2.2 |
| 20-Mar-2017 |
pgoyette | Sync with HEAD
|
1.212.2.1 |
| 07-Jan-2017 |
pgoyette | Sync with HEAD. (Note that most of these changes are simply $NetBSD$ tag issues.)
|
1.213.2.1 |
| 21-Apr-2017 |
bouyer | Sync with HEAD
|
1.214.6.2 |
| 29-Jan-2019 |
msaitoh | Pull up following revision(s) (requested by martin in ticket #1175): sys/net/link_proto.c 1.37 sys/netatalk/ddp_usrreq.c 1.72 sys/netbt/hci_socket.c 1.46 sys/netbt/l2cap_socket.c 1.36 sys/netbt/rfcomm_socket.c 1.38 sys/netbt/sco_socket.c 1.38 sys/netinet/sctp_usrreq.c 1.14 sys/netinet/tcp_usrreq.c 1.223 sys/netinet6/raw_ip6.c 1.173 sys/netinet6/sctp6_usrreq.c 1.17 sys/netinet6/udp6_usrreq.c 1.146 sys/netmpls/mpls_proto.c 1.32 sys/netnatm/natm.c patch
Fix memory leaks pointed out by Ilja Van Sprundel: all sendoob() functions are expted to free both passed mbuf chains.
|
1.214.6.1 |
| 25-Aug-2017 |
snj | Pull up following revision(s) (requested by jdolecek in ticket #216): sys/netinet/tcp_usrreq.c: revision 1.216 add some more getsockopt(2) params
|
1.216.2.5 |
| 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
1.216.2.4 |
| 26-Nov-2018 |
pgoyette | Sync with HEAD, resolve a couple of conflicts
|
1.216.2.3 |
| 21-May-2018 |
pgoyette | Sync with HEAD
|
1.216.2.2 |
| 16-Apr-2018 |
pgoyette | Sync with HEAD, resolve some conflicts
|
1.216.2.1 |
| 30-Mar-2018 |
pgoyette | Resolve conflicts between branch and HEAD
|
1.219.2.3 |
| 21-Apr-2020 |
martin | Sync with HEAD
|
1.219.2.2 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.219.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.224.4.1 |
| 10-Sep-2019 |
martin | Pull up following revision(s) (requested by maxv in ticket #193):
sys/netinet/tcp_timer.h: revision 1.30 sys/netinet/tcp_input.c: revision 1.415 sys/netinet/tcp_usrreq.c: revision 1.225 sys/netinet/tcp_subr.c: revision 1.283
Clamp tcp timer quantities to reasonable ranges.
|
1.225.6.1 |
| 20-Apr-2020 |
bouyer | Sync with HEAD
|
1.227.2.2 |
| 03-Apr-2021 |
thorpej | Sync with HEAD.
|
1.227.2.1 |
| 14-Dec-2020 |
thorpej | Sync w/ HEAD.
|