#
6975a183 |
| 03-Aug-2014 |
rmind <rmind@NetBSD.org> |
in6_pcbdetach: now that IGMP and multicast groups are MP-safe, we can move the ip6_freemoptions() call outside the softnet_lock. Should fix PR/49065.
|
#
50c78d5e |
| 24-Jul-2014 |
rtr <rtr@NetBSD.org> |
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
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
show more ...
|
#
69af6b71 |
| 30-May-2014 |
christos <christos@NetBSD.org> |
Introduce 2 new variables: ipsec_enabled and ipsec_used. Ipsec enabled is controlled by sysctl and determines if is allowed. ipsec_used is set automatically based on ipsec being enabled, and rules ex
Introduce 2 new variables: ipsec_enabled and ipsec_used. Ipsec enabled is controlled by sysctl and determines if is allowed. ipsec_used is set automatically based on ipsec being enabled, and rules existing.
show more ...
|
#
836ad814 |
| 23-Nov-2013 |
christos <christos@NetBSD.org> |
convert from CIRCLEQ to TAILQ.
|
#
1ab097fe |
| 05-Jun-2013 |
christos <christos@NetBSD.org> |
IPSEC has not come in two speeds for a long time now (IPSEC == kame, FAST_IPSEC). Make everything refer to IPSEC to avoid confusion.
|
#
97397377 |
| 12-Apr-2013 |
christos <christos@NetBSD.org> |
PR/47738: connect(2) to 239.x.y.z should return error but does not.
|
#
f4cee4ec |
| 24-Aug-2012 |
dholland <dholland@NetBSD.org> |
Remove stray #undef, probably someone's debugging leftover from long ago.
|
#
0efe2bb2 |
| 25-Jun-2012 |
christos <christos@NetBSD.org> |
rename rfc6056 -> portalgo, requested by yamt
|
#
aeba21b4 |
| 22-Mar-2012 |
drochner <drochner@NetBSD.org> |
remove KAME IPSEC, replaced by FAST_IPSEC
|
#
71997383 |
| 31-Dec-2011 |
christos <christos@NetBSD.org> |
- fix offsetof usage, and redundant defines - kill pointer casts to 0
|
#
f8f92f08 |
| 19-Dec-2011 |
drochner <drochner@NetBSD.org> |
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 FA
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.
show more ...
|
#
c36a332f |
| 24-Sep-2011 |
christos <christos@NetBSD.org> |
Add inet6 part of the rfc6056 code contributed by Vlad Balan as part of Google SoC-2011
|
#
88c00ee5 |
| 31-Aug-2011 |
plunky <plunky@NetBSD.org> |
NULL does not need a cast
|
#
c23f74c5 |
| 04-May-2011 |
dyoung <dyoung@NetBSD.org> |
Invalidate the vestigital PCB at the top of in6_pcblookup_connect() to fix the bug where incoming TCPv6 connections were reset.
|
#
1fc47adf |
| 03-May-2011 |
dyoung <dyoung@NetBSD.org> |
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 Coyo
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.
show more ...
|
#
0253fb8b |
| 20-Aug-2010 |
joerg <joerg@NetBSD.org> |
Remove stray {
|
#
0e26070e |
| 20-Aug-2010 |
joerg <joerg@NetBSD.org> |
Consider a mapped IPv4 address of 0.0.0.0 as unspecified. This allows using mapped IPv4 address with connect without preceding bind.
|
#
7aa04865 |
| 26-May-2009 |
pooka <pooka@NetBSD.org> |
POOL_INIT -> pool_init
|
#
b1520331 |
| 12-May-2009 |
elad <elad@NetBSD.org> |
Implicit EPERM -> explicit EACCES.
Requested by ad@ and yamt@.
|
#
996746c2 |
| 02-May-2009 |
elad <elad@NetBSD.org> |
Replace wrong __UNCONST() use with a local variable.
Similar to issues pointed out by bouyer@ and forgotten by me when I did the last commit.
Should fix issues reported on current-users@ in:
h
Replace wrong __UNCONST() use with a local variable.
Similar to issues pointed out by bouyer@ and forgotten by me when I did the last commit.
Should fix issues reported on current-users@ in:
http://mail-index.netbsd.org/current-users/2009/05/02/msg009273.html
show more ...
|
#
ddcbe0e1 |
| 30-Apr-2009 |
elad <elad@NetBSD.org> |
- Make in6_pcbbind_{addr,port}() static
- Properly authorize port binding in in_pcbsetport() and in6_pcbsetport()
- Pass struct sockaddr_in6 to in6_pcbsetport() instead of just the address, so th
- Make in6_pcbbind_{addr,port}() static
- Properly authorize port binding in in_pcbsetport() and in6_pcbsetport()
- Pass struct sockaddr_in6 to in6_pcbsetport() instead of just the address, so that we have a more complete context
- Adjust udp6_output() to craft a sockaddr_in6 as it calls in6_pcbsetport()
- Fix an issue in in_pcbbind() where we used the "dom_sa_any" pointer and not a copy of it, pointed out by bouyer@, thanks!
Mailing list reference:
http://mail-index.netbsd.org/tech-net/2009/04/29/msg001259.html
show more ...
|
#
3a272cca |
| 22-Apr-2009 |
elad <elad@NetBSD.org> |
Only check if the port is used if it was specified.
Should fix problem reported in
http://mail-index.netbsd.org/current-users/2009/04/22/msg009130.html
|
#
b7a32934 |
| 20-Apr-2009 |
elad <elad@NetBSD.org> |
Replace KAUTH_GENERIC_ISSUSER with a better alternative.
|
#
e75a3b5e |
| 20-Apr-2009 |
elad <elad@NetBSD.org> |
Extract in6_pcbbind()'s guts into two new routines: in6_pcbbind_addr() and in6_pcbbind_port(), used for binding to an address and a port respectively.
While here, fix a possible "leak" of an in6pcb
Extract in6_pcbbind()'s guts into two new routines: in6_pcbbind_addr() and in6_pcbbind_port(), used for binding to an address and a port respectively.
While here, fix a possible "leak" of an in6pcb when binding to an address succeeded but binding to an auto-assigned port failed.
Proposed and received no objections on tech-net@:
http://mail-index.netbsd.org/tech-net/2009/04/15/msg001223.html
show more ...
|
#
d779b85d |
| 18-Apr-2009 |
tsutsui <tsutsui@NetBSD.org> |
Remove extra whitespace added by a stupid tool. XXX: more in src/sys/arch
|