History log of /netbsd/sys/netinet6/in6_pcb.c (Results 51 – 75 of 177)
Revision Date Author Comments
# 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


12345678