The NetBSD Project

CVS log for src/sys/netinet6/in6_proto.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / netinet6

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.128 / (download) - annotate - [select for diffs], Fri Jun 12 11:04:45 2020 UTC (7 months, 1 week ago) by roy
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-futex, HEAD
Changes since 1.127: +2 -14 lines
Diff to previous 1.127 (colored)

Remove in-kernel handling of Router Advertisements

This is much better handled by a user-land tool.
Proposed on tech-net here:
https://mail-index.netbsd.org/tech-net/2020/04/22/msg007766.html

Note that the ioctl SIOCGIFINFO_IN6 no longer sets flags. That now
needs to be done using the pre-existing SIOCSIFINFO_FLAGS ioctl.

Compat is fully provided where it makes sense, but trying to turn on
RA handling will obviously throw an error as it no longer exists.

Note that if you use IPv6 temporary addresses, this now needs to be
turned on in dhcpcd.conf(5) rather than in sysctl.conf(5).

Revision 1.127 / (download) - annotate - [select for diffs], Fri Apr 24 17:36:55 2020 UTC (8 months, 3 weeks ago) by jakllsch
Branch: MAIN
CVS Tags: bouyer-xenpvh-base2
Changes since 1.126: +4 -2 lines
Diff to previous 1.126 (colored)

Fill in .pr_usrreqs for SOCK_SEQPACKET and SOCK_STREAM variants of SCTP too.

This should allow these socket types of SCTP to operate on IPv6 family
sockets, as .pr_usrreqs must not be NULL for socreate() to succeed.

Revision 1.126 / (download) - annotate - [select for diffs], Tue Aug 14 14:49:14 2018 UTC (2 years, 5 months ago) by maxv
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, netbsd-9-base, netbsd-9-1-RELEASE, netbsd-9-0-RELEASE, netbsd-9-0-RC2, netbsd-9-0-RC1, netbsd-9, isaki-audio2-base, isaki-audio2, is-mlppp-base, is-mlppp, bouyer-xenpvh-base1, bouyer-xenpvh-base, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Branch point for: bouyer-xenpvh
Changes since 1.125: +2 -22 lines
Diff to previous 1.125 (colored)

Retire EtherIP, we have L2TP instead.

Revision 1.125 / (download) - annotate - [select for diffs], Fri May 11 09:43:59 2018 UTC (2 years, 8 months ago) by roy
Branch: MAIN
CVS Tags: phil-wifi-base, pgoyette-compat-0728, pgoyette-compat-0625, pgoyette-compat-0521
Branch point for: phil-wifi
Changes since 1.124: +3 -3 lines
Diff to previous 1.124 (colored)

Increase the default size of some receive buffers from 8k to 16k.
This mitigates recent reports of socket overflow errors
and fixes PR bin/53247.

Revision 1.124 / (download) - annotate - [select for diffs], Thu May 3 07:13:48 2018 UTC (2 years, 8 months ago) by maxv
Branch: MAIN
Changes since 1.123: +2 -3 lines
Diff to previous 1.123 (colored)

Remove now unused tcpip.h includes. Some were already unused before.

Revision 1.123 / (download) - annotate - [select for diffs], Thu May 3 06:41:30 2018 UTC (2 years, 8 months ago) by maxv
Branch: MAIN
Changes since 1.122: +2 -4 lines
Diff to previous 1.122 (colored)

Remove net_osdep.h completely.

Revision 1.122 / (download) - annotate - [select for diffs], Thu Mar 15 08:15:21 2018 UTC (2 years, 10 months ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-0502, pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315
Changes since 1.121: +3 -3 lines
Diff to previous 1.121 (colored)

Add the PR_LASTHDR flag on the PFsync and CARP entries. Otherwise a
"require" IPsec policy is not enforced on them, and unauthenticated
packets will be accepted.

Tested with a require-AH configuration. Sent on tech-net@, no comment.

Revision 1.121 / (download) - annotate - [select for diffs], Wed Feb 7 10:52:20 2018 UTC (2 years, 11 months ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-base
Branch point for: pgoyette-compat
Changes since 1.120: +35 -43 lines
Diff to previous 1.120 (colored)

Style, and localify IPV6FORWARDING. No functional change.

Revision 1.120 / (download) - annotate - [select for diffs], Wed Feb 7 10:21:59 2018 UTC (2 years, 11 months ago) by maxv
Branch: MAIN
Changes since 1.119: +3 -3 lines
Diff to previous 1.119 (colored)

Change ip6_hdrnestlimit to be 15 instead of 50. I couldn't find any
reference in RFCs about what a correct limit should be, but FreeBSD already
uses 15.

If an IPv6 packet has 50 options, there is clearly something wrong with it.

Revision 1.119 / (download) - annotate - [select for diffs], Wed Sep 27 10:05:05 2017 UTC (3 years, 3 months ago) by ozaki-r
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202
Changes since 1.118: +36 -2 lines
Diff to previous 1.118 (colored)

Take softnet_lock on pr_input properly if NET_MPSAFE

Currently softnet_lock is taken unnecessarily in some cases, e.g.,
icmp_input and encap4_input from ip_input, or not taken even if needed,
e.g., udp_input and tcp_input from ipsec4_common_input_cb. Fix them.

NFC if NET_MPSAFE is disabled (default).

Revision 1.118 / (download) - annotate - [select for diffs], Thu Sep 21 07:15:35 2017 UTC (3 years, 4 months ago) by ozaki-r
Branch: MAIN
Changes since 1.117: +2 -3 lines
Diff to previous 1.117 (colored)

Invalidate rtcache based on a global generation counter

The change introduces a global generation counter that is incremented when any
routes have been added or deleted. When a rtcache caches a rtentry into itself,
it also stores a snapshot of the generation counter. If the snapshot equals to
the global counter, the cache is still valid, otherwise invalidated.

One drawback of the change is that all rtcaches of all protocol families are
invalidated when any routes of any protocol families are added or deleted.
If that matters, we should have separate generation counters based on
protocol families.

This change removes LIST_ENTRY from struct route, which fixes a part of
PR kern/52515.

Revision 1.117 / (download) - annotate - [select for diffs], Fri Apr 14 02:43:28 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
CVS Tags: prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, bouyer-socketcan-base1
Branch point for: netbsd-8
Changes since 1.116: +44 -7 lines
Diff to previous 1.116 (colored)

Rumpify netipsec

Note that we should modularize netipsec and reduce reverse symbol references
(referencing symbols of netipsec from net, netinet and netinet6) though,
the task needs lots of code changes. Prior to doing so, rumpifying it and
having ATF tests should be useful.

Revision 1.116 / (download) - annotate - [select for diffs], Thu Feb 16 08:12:44 2017 UTC (3 years, 11 months ago) by knakahara
Branch: MAIN
CVS Tags: pgoyette-localcount-20170320, jdolecek-ncq-base, jdolecek-ncq
Changes since 1.115: +12 -2 lines
Diff to previous 1.115 (colored)

add l2tp(4) L2TPv3 interface.

originally implemented by IIJ SEIL team.

Revision 1.115 / (download) - annotate - [select for diffs], Mon Feb 13 07:18:20 2017 UTC (3 years, 11 months ago) by ozaki-r
Branch: MAIN
Changes since 1.114: +12 -12 lines
Diff to previous 1.114 (colored)

Protect mtudisc and redirect stuffs of icmp/icmp6 with mutex

We have to run pr_init of icmp and icmp6 prior to tcp and tcp6 ones
for mutex initialization.

Revision 1.114 / (download) - annotate - [select for diffs], Tue Dec 13 08:29:03 2016 UTC (4 years, 1 month ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-20170107, nick-nhusb-base-20170204, bouyer-socketcan-base
Branch point for: bouyer-socketcan
Changes since 1.113: +2 -4 lines
Diff to previous 1.113 (colored)

Remove unnecessary inclusions of nd6.h

Revision 1.113 / (download) - annotate - [select for diffs], Wed Jul 6 10:49:49 2016 UTC (4 years, 6 months ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20161204, nick-nhusb-base-20161004, nick-nhusb-base-20160907, localcount-20160914
Branch point for: pgoyette-localcount
Changes since 1.112: +4 -4 lines
Diff to previous 1.112 (colored)

Move in6_ifaddr_list to a more proper place (from ip6_input.c to in6.c)

It's a similar place as the IPv4 address list, i.e., in.c.

More varibles will join together.

Revision 1.112 / (download) - annotate - [select for diffs], Tue Apr 26 08:44:45 2016 UTC (4 years, 8 months ago) by ozaki-r
Branch: MAIN
CVS Tags: nick-nhusb-base-20160529
Changes since 1.111: +2 -3 lines
Diff to previous 1.111 (colored)

Sweep unnecessary route.h inclusions

Revision 1.111 / (download) - annotate - [select for diffs], Mon Apr 11 08:56:16 2016 UTC (4 years, 9 months ago) by ozaki-r
Branch: MAIN
CVS Tags: nick-nhusb-base-20160422
Changes since 1.110: +2 -3 lines
Diff to previous 1.110 (colored)

Sweep unncessary radix.h inclusions

Revision 1.110 / (download) - annotate - [select for diffs], Thu Jan 21 15:41:30 2016 UTC (5 years ago) by riastradh
Branch: MAIN
CVS Tags: nick-nhusb-base-20160319
Changes since 1.109: +42 -108 lines
Diff to previous 1.109 (colored)

Revert previous: ran cvs commit when I meant cvs diff.  Sorry!

Hit up-arrow one too few times.

Revision 1.109 / (download) - annotate - [select for diffs], Thu Jan 21 15:27:48 2016 UTC (5 years ago) by riastradh
Branch: MAIN
Changes since 1.108: +110 -44 lines
Diff to previous 1.108 (colored)

Give proper prototype to ip_output.

Revision 1.108 / (download) - annotate - [select for diffs], Wed Jan 20 21:44:00 2016 UTC (5 years ago) by riastradh
Branch: MAIN
Changes since 1.107: +2 -10 lines
Diff to previous 1.107 (colored)

Eliminate struct protosw::pr_output.

You can't use this unless you know what it is a priori: the formal
prototype is variadic, and the different instances (e.g., ip_output,
route_output) have different real prototypes.

Convert the only user of it, raw_send in net/raw_cb.c, to take an
explicit callback argument.  Convert the only instances of it,
route_output and key_output, to such explicit callbacks for raw_send.
Use assertions to make sure the conversion to explicit callbacks is
warranted.

Discussed on tech-net with no objections:
https://mail-index.netbsd.org/tech-net/2016/01/16/msg005484.html

Revision 1.107 / (download) - annotate - [select for diffs], Tue Oct 13 21:28:35 2015 UTC (5 years, 3 months ago) by rjs
Branch: MAIN
CVS Tags: nick-nhusb-base-20151226
Changes since 1.106: +48 -2 lines
Diff to previous 1.106 (colored)

Add core networking support for SCTP.

Revision 1.106 / (download) - annotate - [select for diffs], Mon Aug 24 22:21:27 2015 UTC (5 years, 4 months ago) by pooka
Branch: MAIN
CVS Tags: nick-nhusb-base-20150921
Changes since 1.105: +4 -2 lines
Diff to previous 1.105 (colored)

sprinkle _KERNEL_OPT

Revision 1.105 / (download) - annotate - [select for diffs], Wed Apr 22 19:46:08 2015 UTC (5 years, 9 months ago) by roy
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606
Changes since 1.104: +4 -2 lines
Diff to previous 1.104 (colored)

Move INET6 specific in6_if_{up,down}() and in6_if_link_{up,down}()
into agnostic domain functions.

Revision 1.104 / (download) - annotate - [select for diffs], Tue Feb 10 19:11:52 2015 UTC (5 years, 11 months ago) by rjs
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.103: +31 -2 lines
Diff to previous 1.103 (colored)

Add DCCP protocol support from KAME.

Revision 1.103 / (download) - annotate - [select for diffs], Thu Jun 5 23:48:16 2014 UTC (6 years, 7 months ago) by rmind
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, nick-nhusb-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7
Branch point for: nick-nhusb
Changes since 1.102: +3 -3 lines
Diff to previous 1.102 (colored)

- Implement pktqueue interface for lockless IP input queue.
- Replace ipintrq and ip6intrq with the pktqueue mechanism.
- Eliminate kernel-lock from ipintr() and ip6intr().
- Some preparation work to push softnet_lock out of ipintr().

Discussed on tech-net.

Revision 1.102 / (download) - annotate - [select for diffs], Thu May 22 22:56:53 2014 UTC (6 years, 8 months ago) by rmind
Branch: MAIN
Changes since 1.101: +2 -7 lines
Diff to previous 1.101 (colored)

Move udp6_input(), udp6_sendup(), udp6_realinput() and udp6_input_checksum()
from udp_usrreq.c to udp6_usrreq.c where they belong.  No functional change.

Revision 1.101 / (download) - annotate - [select for diffs], Sun May 18 14:46:16 2014 UTC (6 years, 8 months ago) by rmind
Branch: MAIN
CVS Tags: rmind-smpnet-nbase, rmind-smpnet-base
Changes since 1.100: +12 -20 lines
Diff to previous 1.100 (colored)

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!

Revision 1.100 / (download) - annotate - [select for diffs], Thu Jan 2 18:29:01 2014 UTC (7 years ago) by pooka
Branch: MAIN
CVS Tags: yamt-pagecache-base9, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.99: +21 -7 lines
Diff to previous 1.99 (colored)

Allow kernels compiled with INET+INET6 to be booted as IPv4-only or IPv6-only.

Revision 1.99 / (download) - annotate - [select for diffs], Wed Jun 5 19:01:26 2013 UTC (7 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2
Branch point for: rmind-smpnet
Changes since 1.98: +8 -8 lines
Diff to previous 1.98 (colored)

IPSEC has not come in two speeds for a long time now (IPSEC == kame,
FAST_IPSEC). Make everything refer to IPSEC to avoid confusion.

Revision 1.98 / (download) - annotate - [select for diffs], Fri Mar 1 18:25:58 2013 UTC (7 years, 10 months ago) by joerg
Branch: MAIN
CVS Tags: khorben-n900, agc-symver-base, agc-symver
Changes since 1.97: +2 -17 lines
Diff to previous 1.97 (colored)

Retire OSI network stack. OK core@

Revision 1.97 / (download) - annotate - [select for diffs], Sat Jun 23 03:14:03 2012 UTC (8 years, 6 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6
Branch point for: tls-maxphys
Changes since 1.96: +6 -2 lines
Diff to previous 1.96 (colored)

4 new sysctls to avoid ipv6 DoS attacks from OpenBSD

Revision 1.96 / (download) - annotate - [select for diffs], Thu Mar 22 20:34:40 2012 UTC (8 years, 10 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base10
Changes since 1.95: +4 -40 lines
Diff to previous 1.95 (colored)

remove KAME IPSEC, replaced by FAST_IPSEC

Revision 1.95 / (download) - annotate - [select for diffs], Sat Dec 31 20:41:59 2011 UTC (9 years ago) by christos
Branch: MAIN
CVS Tags: netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2
Branch point for: netbsd-6-1, netbsd-6-0, netbsd-6
Changes since 1.94: +3 -7 lines
Diff to previous 1.94 (colored)

- fix offsetof usage, and redundant defines
- kill pointer casts to 0

Revision 1.94 / (download) - annotate - [select for diffs], Mon Dec 19 11:59:58 2011 UTC (9 years, 1 month ago) by drochner
Branch: MAIN
Changes since 1.93: +8 -8 lines
Diff to previous 1.93 (colored)

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.

Revision 1.93 / (download) - annotate - [select for diffs], Sat Sep 24 17:22:14 2011 UTC (9 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.92: +5 -5 lines
Diff to previous 1.92 (colored)

Add inet6 part of the rfc6056 code contributed by Vlad Balan as part of
Google SoC-2011

Revision 1.92 / (download) - annotate - [select for diffs], Tue May 24 18:07:11 2011 UTC (9 years, 7 months ago) by spz
Branch: MAIN
CVS Tags: rmind-uvmplock-nbase, rmind-uvmplock-base, cherry-xenmp-base, cherry-xenmp
Changes since 1.91: +9 -2 lines
Diff to previous 1.91 (colored)

RA flood mitigation via a limit on accepted routes:
- introduce a limit for the routes accepted via IPv6 Router Advertisement:
  a common 2 interface client will have 6, the default limit is 100 and
  can be adjusted via sysctl
- report the current number of routes installed via RA via sysctl
- count discarded route additions. Note that one RA message is two routes.
  This is at present only across all interfaces even though per-interface
  would be more useful, since the per-interface structure complies to RFC2466
- bump kernel version due to the previous change
- adjust netstat to use the new value (with netstat -p icmp6)

Revision 1.91 / (download) - annotate - [select for diffs], Tue May 3 17:44:30 2011 UTC (9 years, 8 months ago) by dyoung
Branch: MAIN
Changes since 1.90: +6 -4 lines
Diff to previous 1.90 (colored)

*_drain() routines may be called with locks held, so instead of doing
any work in *_drain(), set a drain-needed flag.  Do the work in the
fasttimo handler.

Contributed by Coyote Point Systems, Inc.

Revision 1.90 / (download) - annotate - [select for diffs], Thu Mar 31 19:40:52 2011 UTC (9 years, 9 months ago) by dyoung
Branch: MAIN
Changes since 1.89: +3 -3 lines
Diff to previous 1.89 (colored)

Hide the radix-trie implementation of the forwarding table so that we
will have an easier time replacing it with something different, even if
it is a second radix-trie implementation.

sys/net/route.c and sys/net/rtsock.c no longer operate directly on
radix_nodes or radix_node_heads.

Hopefully this will reduce the temptation to implement multipath or
source-based routing using grotty hacks to the grotty old radix-trie
code, too. :-)

Revision 1.89 / (download) - annotate - [select for diffs], Tue Aug 24 00:07:00 2010 UTC (10 years, 4 months ago) by jakllsch
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, uebayasi-xip-base4, uebayasi-xip-base3, matt-mips64-premerge-20101231, jruoho-x86intr-base, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: jruoho-x86intr
Changes since 1.88: +4 -4 lines
Diff to previous 1.88 (colored)

Make the EtherIP in IPv6 input path work.
XXX: Figure out if we really need a separate protosw for IPv6.

Revision 1.88 / (download) - annotate - [select for diffs], Thu Feb 4 21:48:35 2010 UTC (10 years, 11 months ago) by joerg
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, yamt-nfs-mp-base10, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.87: +3 -2 lines
Diff to previous 1.87 (colored)

Explicitly include opt_gateway.h when depending on GATEWAY.

Revision 1.87 / (download) - annotate - [select for diffs], Fri Sep 11 22:06:29 2009 UTC (11 years, 4 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, matt-premerge-20091211, jym-xensuspend-nbase
Changes since 1.86: +3 -2 lines
Diff to previous 1.86 (colored)

Make ifconfig(8) set and display preference numbers for IPv6
addresses.  Make the kernel support SIOC[SG]IFADDRPREF for IPv6
interface addresses.

In in6ifa_ifpforlinklocal(), consult preference numbers before
making an otherwise arbitrary choice of in6_ifaddr.  Otherwise,
preference numbers are *not* consulted by the kernel, but that will
be rather easy for somebody with a little bit of free time to fix.

Please note that setting the preference number for a link-local
IPv6 address does not work right, yet, but that ought to be fixed
soon.

In support of the changes above,

1 Add a method to struct domain for "externalizing" a sockaddr, and
  provide an implementation for IPv6.  Expect more work in this area: it
  may be more proper to say that the IPv6 implementation "internalizes"
  a sockaddr.  Add sockaddr_externalize().

2 Add a subroutine, sofamily(), that returns a struct socket's address
  family or AF_UNSPEC.

3 Make a lot of IPv4-specific code generic, and move it from
  sys/netinet/ to sys/net/ for re-use by IPv6 parts of the kernel and
  ifconfig(8).

Revision 1.86 / (download) - annotate - [select for diffs], Fri Sep 11 20:10:06 2009 UTC (11 years, 4 months ago) by dyoung
Branch: MAIN
Changes since 1.85: +4 -2 lines
Diff to previous 1.85 (colored)

Nothing uses sockaddr_in6_cmp() right now, and the generic
sockaddr_cmp() is probably as fast or faster than calling
sockaddr_in6_cmp() through a function pointer, so let's stop
compiling it.

Revision 1.85 / (download) - annotate - [select for diffs], Fri Aug 21 16:52:43 2009 UTC (11 years, 5 months ago) by tsutsui
Branch: MAIN
Changes since 1.84: +7 -3 lines
Diff to previous 1.84 (colored)

Fix error on kernels with options IPSEC without options IPSEC_ESP.
Found on building evbppc/conf/PMPPC.

Revision 1.84 / (download) - annotate - [select for diffs], Mon Mar 23 18:43:20 2009 UTC (11 years, 10 months ago) by liamjfoy
Branch: MAIN
CVS Tags: yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-base
Changes since 1.83: +3 -2 lines
Diff to previous 1.83 (colored)

Init ip6flow pool dynamically instead of using a linkset.

Revision 1.83 / (download) - annotate - [select for diffs], Tue Nov 25 18:28:06 2008 UTC (12 years, 1 month ago) by pooka
Branch: MAIN
CVS Tags: nick-hppapmap-base2, mjf-devfs2-base, haad-nbase2, haad-dm-base2, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: jym-xensuspend
Changes since 1.82: +3 -3 lines
Diff to previous 1.82 (colored)

Make dom_maxrtkey of inet/inet6domain the size of the ip_encap pack
structures.  This is far from optimal, but gets rid of iffy
#ifdef INET in radix.c.  The radix bonsai still needs lots of love
before loading domains dynamically is possible...

Revision 1.82 / (download) - annotate - [select for diffs], Thu Apr 24 11:38:38 2008 UTC (12 years, 8 months ago) by ad
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, netbsd-5-base, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, hpcarm-cleanup-nbase, haad-dm-base1
Branch point for: yamt-nfs-mp, nick-hppapmap, netbsd-5, haad-dm
Changes since 1.81: +40 -2 lines
Diff to previous 1.81 (colored)

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@.

Revision 1.81 / (download) - annotate - [select for diffs], Wed Apr 23 06:09:05 2008 UTC (12 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.80: +5 -2 lines
Diff to previous 1.80 (colored)

Make IPSEC and FAST_IPSEC stats per-cpu.  Use <net/net_stats.h> and
netstat_sysctl().

Revision 1.80 / (download) - annotate - [select for diffs], Tue Apr 15 05:40:15 2008 UTC (12 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base
Branch point for: yamt-pf42
Changes since 1.79: +3 -2 lines
Diff to previous 1.79 (colored)

Make pim6 stats per-cpu.

Revision 1.79 / (download) - annotate - [select for diffs], Wed Sep 19 04:33:44 2007 UTC (13 years, 4 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, vmlocking-base, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, mjf-devfs, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, jmcneill-pm-base, jmcneill-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64, ad-socklock-base1
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.78: +13 -3 lines
Diff to previous 1.78 (colored)

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.

Revision 1.78 / (download) - annotate - [select for diffs], Thu Aug 30 02:17:38 2007 UTC (13 years, 4 months ago) by dyoung
Branch: MAIN
CVS Tags: nick-csl-alignment-base5
Changes since 1.77: +2 -7 lines
Diff to previous 1.77 (colored)

Use malloc(9) for sockaddrs instead of pool(9), and remove dom_sa_pool
and dom_sa_len members from struct domain.  Pools of fixed-size
objects are too rigid for sockaddr_dls, whose size can vary over
a wide range.

Return sockaddr_dl to its "historical" size.  Now that I'm using
malloc(9) instead of pool(9) to allocate sockaddr_dl, I can create
a sockaddr_dl of any size in the kernel, so expanding sockaddr_dl
is useless.

Avoid using sizeof(struct sockaddr_dl) in the kernel.

Introduce sockaddr_dl_alloc() for allocating & initializing an
arbitrary sockaddr_dl on the heap.

Add an argument, the sockaddr length, to sockaddr_alloc(),
sockaddr_copy(), and sockaddr_dl_setaddr().

Constify: LLADDR() -> CLLADDR().

Where the kernel overwrites LLADDR(), use sockaddr_dl_setaddr(),
instead.  Used properly, sockaddr_dl_setaddr() will not overrun
the end of the sockaddr.

Revision 1.77 / (download) - annotate - [select for diffs], Sun May 6 02:56:37 2007 UTC (13 years, 8 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, nick-csl-alignment-base, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: nick-csl-alignment, matt-armv6, jmcneill-pm
Changes since 1.76: +5 -4 lines
Diff to previous 1.76 (colored)

In AppleTalk, IPv4, and IPv6 routing domains, help sockaddr_cmp()
avoid an indirect function call by comparing the family, length,
and bytes [dom->dom_sa_cmpofs, dom->dom_sa_cmpofs + dom->dom_sa_cmplen),
corresponding to the the sockaddrs' "address" members.

For ISO, actually use sockaddr_iso_cmp, for a change.  Thanks to
yamt@ for pointing out my error.

Revision 1.76 / (download) - annotate - [select for diffs], Wed May 2 20:40:26 2007 UTC (13 years, 8 months ago) by dyoung
Branch: MAIN
Changes since 1.75: +32 -3 lines
Diff to previous 1.75 (colored)

Eliminate address family-specific route caches (struct route, struct
route_in6, struct route_iso), replacing all caches with a struct
route.

The principle benefit of this change is that all of the protocol
families can benefit from route cache-invalidation, which is
necessary for correct routing.  Route-cache invalidation fixes an
ancient PR, kern/3508, at long last; it fixes various other PRs,
also.

Discussions with and ideas from Joerg Sonnenberger influenced this
work tremendously.  Of course, all design oversights and bugs are
mine.

DETAILS

1 I added to each address family a pool of sockaddrs.  I have
  introduced routines for allocating, copying, and duplicating,
  and freeing sockaddrs:

        struct sockaddr *sockaddr_alloc(sa_family_t af, int flags);
        struct sockaddr *sockaddr_copy(struct sockaddr *dst,
                                       const struct sockaddr *src);
        struct sockaddr *sockaddr_dup(const struct sockaddr *src, int flags);
        void sockaddr_free(struct sockaddr *sa);

  sockaddr_alloc() returns either a sockaddr from the pool belonging
  to the specified family, or NULL if the pool is exhausted.  The
  returned sockaddr has the right size for that family; sa_family
  and sa_len fields are initialized to the family and sockaddr
  length---e.g., sa_family = AF_INET and sa_len = sizeof(struct
  sockaddr_in).  sockaddr_free() puts the given sockaddr back into
  its family's pool.

  sockaddr_dup() and sockaddr_copy() work analogously to strdup()
  and strcpy(), respectively.  sockaddr_copy() KASSERTs that the
  family of the destination and source sockaddrs are alike.

  The 'flags' argumet for sockaddr_alloc() and sockaddr_dup() is
  passed directly to pool_get(9).

2 I added routines for initializing sockaddrs in each address
  family, sockaddr_in_init(), sockaddr_in6_init(), sockaddr_iso_init(),
  etc.  They are fairly self-explanatory.

3 structs route_in6 and route_iso are no more.  All protocol families
  use struct route.  I have changed the route cache, 'struct route',
  so that it does not contain storage space for a sockaddr.  Instead,
  struct route points to a sockaddr coming from the pool the sockaddr
  belongs to.  I added a new method to struct route, rtcache_setdst(),
  for setting the cache destination:

        int rtcache_setdst(struct route *, const struct sockaddr *);

  rtcache_setdst() returns 0 on success, or ENOMEM if no memory is
  available to create the sockaddr storage.

  It is now possible for rtcache_getdst() to return NULL if, say,
  rtcache_setdst() failed.  I check the return value for NULL
  everywhere in the kernel.

4 Each routing domain (struct domain) has a list of live route
  caches, dom_rtcache.  rtflushall(sa_family_t af) looks up the
  domain indicated by 'af', walks the domain's list of route caches
  and invalidates each one.

Revision 1.75 / (download) - annotate - [select for diffs], Wed Mar 7 22:20:04 2007 UTC (13 years, 10 months ago) by liamjfoy
Branch: MAIN
CVS Tags: thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.74: +8 -2 lines
Diff to previous 1.74 (colored)

Add IPv6 Fast Forward - the IPv4 counterpart:

If ip6_forward successfully forwards a packet, a cache, in this case a
ip6flow struct entry, will be created. ether_input and friends will
then be able to call ip6flow_fastforward with the packet which will then
be passed to if_output (unless an issue is found - in that case the packet
is passed back to ip6_input).

ok matt@ christos@ dyoung@ and joerg@

Revision 1.74 / (download) - annotate - [select for diffs], Tue Mar 6 12:12:24 2007 UTC (13 years, 10 months ago) by liamjfoy
Branch: MAIN
Changes since 1.73: +167 -167 lines
Diff to previous 1.73 (colored)

Fix some style issues - no functional change

Revision 1.73 / (download) - annotate - [select for diffs], Tue Feb 27 22:19:05 2007 UTC (13 years, 10 months ago) by degroote
Branch: MAIN
Changes since 1.72: +21 -16 lines
Diff to previous 1.72 (colored)

Initialize fast_ipsec entry in the protocol switch with structure
initializers as other entries.

Revision 1.72 / (download) - annotate - [select for diffs], Mon Feb 19 07:28:58 2007 UTC (13 years, 11 months ago) by dyoung
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.71: +149 -83 lines
Diff to previous 1.71 (colored)

Initialize protocol switch with structure initializers.

Revision 1.71 / (download) - annotate - [select for diffs], Sat Feb 17 20:38:05 2007 UTC (13 years, 11 months ago) by dyoung
Branch: MAIN
Changes since 1.70: +3 -3 lines
Diff to previous 1.70 (colored)

0 -> NULL

Revision 1.70 / (download) - annotate - [select for diffs], Sat Feb 10 09:43:05 2007 UTC (13 years, 11 months ago) by degroote
Branch: MAIN
Branch point for: yamt-idlelwp
Changes since 1.69: +26 -2 lines
Diff to previous 1.69 (colored)

Commit my SoC work
Add ipv6 support for fast_ipsec
Note that currently, packet with extensions headers are not correctly
supported
Change the ipcomp logic

Revision 1.69 / (download) - annotate - [select for diffs], Sat Dec 9 05:33:07 2006 UTC (14 years, 1 month ago) by dyoung
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, post-newlock2-merge, newlock2-nbase, newlock2-base
Changes since 1.68: +13 -12 lines
Diff to previous 1.68 (colored)

Here are various changes designed to protect against bad IPv4
routing caused by stale route caches (struct route).  Route caches
are sprinkled throughout PCBs, the IP fast-forwarding table, and
IP tunnel interfaces (gre, gif, stf).

Stale IPv6 and ISO route caches will be treated by separate patches.

Thank you to Christoph Badura for suggesting the general approach
to invalidating route caches that I take here.

Here are the details:

Add hooks to struct domain for tracking and for invalidating each
domain's route caches: dom_rtcache, dom_rtflush, and dom_rtflushall.

Introduce helper subroutines, rtflush(ro) for invalidating a route
cache, rtflushall(family) for invalidating all route caches in a
routing domain, and rtcache(ro) for notifying the domain of a new
cached route.

Chain together all IPv4 route caches where ro_rt != NULL.  Provide
in_rtcache() for adding a route to the chain.  Provide in_rtflush()
and in_rtflushall() for invalidating IPv4 route caches.  In
in_rtflush(), set ro_rt to NULL, and remove the route from the
chain.  In in_rtflushall(), walk the chain and remove every route
cache.

In rtrequest1(), call rtflushall() to invalidate route caches when
a route is added.

In gif(4), discard the workaround for stale caches that involves
expiring them every so often.

Replace the pattern 'RTFREE(ro->ro_rt); ro->ro_rt = NULL;' with a
call to rtflush(ro).

Update ipflow_fastforward() and all other users of route caches so
that they expect a cached route, ro->ro_rt, to turn to NULL.

Take care when moving a 'struct route' to rtflush() the source and
to rtcache() the destination.

In domain initializers, use .dom_xxx tags.

KNF here and there.

Revision 1.68 / (download) - annotate - [select for diffs], Thu Nov 23 04:07:07 2006 UTC (14 years, 2 months ago) by rpaulo
Branch: MAIN
CVS Tags: netbsd-4-base
Branch point for: wrstuden-fixsa, netbsd-4
Changes since 1.67: +14 -2 lines
Diff to previous 1.67 (colored)

New EtherIP driver based on tap(4) and gif(4) by Hans Rosenfeld.
Notable changes:
	* Fixes PR 34268.
	* Separates the code from gif(4) (which is more cleaner).
	* Allows the usage of STP (Spanning Tree Protocol).
	* Removed EtherIP implementation from gif(4)/tap(4).

Some input from Christos.

Revision 1.67 / (download) - annotate - [select for diffs], Tue Oct 10 21:49:15 2006 UTC (14 years, 3 months ago) by dogcow
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.66: +3 -3 lines
Diff to previous 1.66 (colored)

change the MOWNER_INIT define to take two args; fix extant struct mowner
decls to use it. Makes options MBUFTRACE compile again and not whinge about
missing structure declarations. (Also makes initialization consistent.)

Revision 1.66 / (download) - annotate - [select for diffs], Wed Aug 30 17:05:30 2006 UTC (14 years, 4 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.65: +14 -10 lines
Diff to previous 1.65 (colored)

add missing initializers

Revision 1.65 / (download) - annotate - [select for diffs], Mon Aug 28 02:51:12 2006 UTC (14 years, 4 months ago) by christos
Branch: MAIN
Changes since 1.64: +3 -9 lines
Diff to previous 1.64 (colored)

remove extra members

Revision 1.64 / (download) - annotate - [select for diffs], Fri Aug 25 19:33:51 2006 UTC (14 years, 4 months ago) by matt
Branch: MAIN
Changes since 1.63: +3 -3 lines
Diff to previous 1.63 (colored)

One step closer to loadable domains.  Store pointers to a domain's soft
interrupt queues so if_detach can remove packets to removed interfaces from
them.  This eliminates a lot of conditional ugly code in if.c

Revision 1.63 / (download) - annotate - [select for diffs], Thu May 18 09:05:51 2006 UTC (14 years, 8 months ago) by liamjfoy
Branch: MAIN
CVS Tags: yamt-pdpolicy-base7, yamt-pdpolicy-base6, yamt-pdpolicy-base5, simonb-timecounters-base, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, chap-midi, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.62: +14 -2 lines
Diff to previous 1.62 (colored)

Integrate Common Address Redundancy Procotol (CARP) from OpenBSD

'pseudo-device	carp'

Thanks to: joerg@ christos@ riz@ and others who tested
Ok: core@

Revision 1.62 / (download) - annotate - [select for diffs], Sun Mar 5 23:47:08 2006 UTC (14 years, 10 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, peter-altq-base, elad-kernelauth-base, elad-kernelauth
Branch point for: peter-altq
Changes since 1.61: +4 -4 lines
Diff to previous 1.61 (colored)

NDP-related improvements:
        RFC4191
	- supports host-side router-preference

	RFC3542
	- if DAD fails on a interface, disables IPv6 operation on the
          interface
	- don't advertise MLD report before DAD finishes

	Others
	- fixes integer overflow for valid and preferred lifetimes
	- improves timer granularity for MLD, using callout-timer.
	- reflects rtadvd's IPv6 host variable information into kernel
	  (router only)
	- adds a sysctl option to enable/disable pMTUd for multicast
          packets
	- performs NUD on PPP/GRE interface by default
	- Redirect works regardless of ip6_accept_rtadv
	- removes RFC1885-related code

From the KAME project via SUZUKI Shinsuke.
Reviewed by core.

Revision 1.61 / (download) - annotate - [select for diffs], Sun Dec 11 12:25:02 2005 UTC (15 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5, yamt-uio_vmspace, yamt-pdpolicy-base
Branch point for: yamt-pdpolicy, simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (colored)

merge ktrace-lwp.

Revision 1.60 / (download) - annotate - [select for diffs], Tue Jul 19 12:58:24 2005 UTC (15 years, 6 months ago) by gdt
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Changes since 1.59: +5 -5 lines
Diff to previous 1.59 (colored)

Add PR_PURGEIF flag for protocols to indicate that the protocol might
store a struct ifnet *, and define it for udp/tcp/rawip for INET and
INET6.  When deleting a struct ifnet, invoke PRU_PURGEIF on all
protocols marked with PR_PURGEIF.  Closes PR kern/29580 (mine).

Revision 1.59 / (download) - annotate - [select for diffs], Sun May 29 21:43:51 2005 UTC (15 years, 7 months ago) by christos
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.58: +4 -4 lines
Diff to previous 1.58 (colored)

- avoid shadowed variables
- sprinkle const.

Revision 1.58 / (download) - annotate - [select for diffs], Sun Jan 23 18:41:57 2005 UTC (16 years ago) by matt
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, yamt-km-base2, yamt-km-base, yamt-km, netbsd-3-base, kent-audio2-base
Branch point for: netbsd-3
Changes since 1.57: +4 -4 lines
Diff to previous 1.57 (colored)

Change initialzie of domains to use link sets.  Switch to using STAILQ.
Add a convenience macro DOMAIN_FOREACH to interate through the domain.

Revision 1.57 / (download) - annotate - [select for diffs], Thu Apr 22 01:01:41 2004 UTC (16 years, 9 months ago) by matt
Branch: MAIN
CVS Tags: kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: kent-audio2
Changes since 1.56: +3 -3 lines
Diff to previous 1.56 (colored)

Constify protosw arrays.  This can reduce the kernel .data section by
over 4K (if all the network protocols) are loaded.

Revision 1.56 / (download) - annotate - [select for diffs], Thu Dec 4 19:38:24 2003 UTC (17 years, 1 month ago) by atatat
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.55: +9 -9 lines
Diff to previous 1.55 (colored)

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.

Revision 1.55 / (download) - annotate - [select for diffs], Mon Nov 3 15:12:06 2003 UTC (17 years, 2 months ago) by briggs
Branch: MAIN
Changes since 1.54: +3 -3 lines
Diff to previous 1.54 (colored)

Revert the change in default value of ipv6_v6only.  Further discussion
on this topic is required.  It should be reintroduced and pursued in
the IETF.

Revision 1.54 / (download) - annotate - [select for diffs], Tue Oct 28 06:31:28 2003 UTC (17 years, 2 months ago) by briggs
Branch: MAIN
Changes since 1.53: +3 -3 lines
Diff to previous 1.53 (colored)

Toggle the default value of ip6_v6only.  Also provide a sample sysctl to
retain the existing behavior.

Revision 1.53 / (download) - annotate - [select for diffs], Sat Sep 6 03:36:32 2003 UTC (17 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.52: +2 -4 lines
Diff to previous 1.52 (colored)

randomize IPv4/v6 fragment ID and IPv6 flowlabel.  avoids predictability
of these fields.  ip_id.c is from openbsd.  ip6_id.c is adapted by kame.

Revision 1.52 / (download) - annotate - [select for diffs], Fri Sep 5 01:35:08 2003 UTC (17 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.51: +3 -3 lines
Diff to previous 1.51 (colored)

call tcp_drain() if IPv4-less kernel

Revision 1.51 / (download) - annotate - [select for diffs], Thu Sep 4 09:17:07 2003 UTC (17 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.50: +4 -4 lines
Diff to previous 1.50 (colored)

revamp inpcb/in6pcb so that they are more aligned with each other.
in6pcb lookup now uses hash(9).

Revision 1.50 / (download) - annotate - [select for diffs], Thu Aug 14 07:57:41 2003 UTC (17 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.49: +3 -3 lines
Diff to previous 1.49 (colored)

enforce ipsec policy on raw wildcard.

Revision 1.49 / (download) - annotate - [select for diffs], Thu Aug 7 16:33:25 2003 UTC (17 years, 5 months ago) by agc
Branch: MAIN
Changes since 1.48: +3 -7 lines
Diff to previous 1.48 (colored)

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.

Revision 1.48 / (download) - annotate - [select for diffs], Thu Aug 7 08:52:32 2003 UTC (17 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.47: +3 -7 lines
Diff to previous 1.47 (colored)

make net.inet6.ip6.redirect actually work.  from Tomoyuki Sahara via kame

Revision 1.47 / (download) - annotate - [select for diffs], Thu Apr 17 19:58:57 2003 UTC (17 years, 9 months ago) by thorpej
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.46: +4 -2 lines
Diff to previous 1.46 (colored)

Protect the definition of offsetof().

Revision 1.46 / (download) - annotate - [select for diffs], Mon Nov 11 18:26:42 2002 UTC (18 years, 2 months ago) by itojun
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.45: +2 -3 lines
Diff to previous 1.45 (colored)

pmtu_probe is not used anywhere (it is used in KAME TCP6-only code).
From: Krister Walfridsson <cato@df.lth.se>

Revision 1.45 / (download) - annotate - [select for diffs], Tue Aug 20 22:06:05 2002 UTC (18 years, 5 months ago) by itojun
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gehenna-devsw-base
Changes since 1.44: +3 -3 lines
Diff to previous 1.44 (colored)

sync up use_deprecated handling with latest kame.
- bind(deprecated) is allowed, trusting userland app is doing the right thing
- use_deprecated default to 1

Revision 1.44 / (download) - annotate - [select for diffs], Sat Aug 17 22:15:58 2002 UTC (18 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.43: +3 -3 lines
Diff to previous 1.43 (colored)

set default value for use_deprecated to 0, to avoid consequences with ftpd.

Revision 1.43 / (download) - annotate - [select for diffs], Sun Jun 9 14:43:12 2002 UTC (18 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.42: +8 -8 lines
Diff to previous 1.42 (colored)

whitespace cleanup

Revision 1.42 / (download) - annotate - [select for diffs], Sat Jun 8 20:06:44 2002 UTC (18 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.41: +9 -9 lines
Diff to previous 1.41 (colored)

whitespace cleanup

Revision 1.41 / (download) - annotate - [select for diffs], Wed May 29 02:58:30 2002 UTC (18 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.40: +4 -3 lines
Diff to previous 1.40 (colored)

move per-interface ip6/icmp6 stat to ifnet->if_afdata.  sync w/kame

Revision 1.40 / (download) - annotate - [select for diffs], Tue May 28 03:04:06 2002 UTC (18 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.39: +3 -2 lines
Diff to previous 1.39 (colored)

limit number of IPv6 fragments (not the fragment queue size) to
fight against lots-of-frags DoS attacks.  sync w/kame

Revision 1.39 / (download) - annotate - [select for diffs], Fri Mar 15 09:25:43 2002 UTC (18 years, 10 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-1-6-base, netbsd-1-6-RC1, eeh-devprop-base, eeh-devprop
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.38: +4 -4 lines
Diff to previous 1.38 (colored)

have tcp6_drain

Revision 1.38 / (download) - annotate - [select for diffs], Fri Dec 21 08:54:19 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: newlock-base, newlock, ifpoll-base
Changes since 1.37: +7 -7 lines
Diff to previous 1.37 (colored)

call encap6_ctlinput on icmp6 against tunnelled packet.  sync w/kame

Revision 1.37 / (download) - annotate - [select for diffs], Fri Dec 21 06:30:44 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.36: +4 -8 lines
Diff to previous 1.36 (colored)

use radix table for inbound tunnel lookup (would increase performance
for machines with a lot of tunnels).
update route cache for IPvX-over-IPv6 tunnel on path MTU discovery.
snyc with kame

Revision 1.36 / (download) - annotate - [select for diffs], Fri Dec 21 03:58:15 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.35: +2 -8 lines
Diff to previous 1.35 (colored)

move in6_gif_hlim decl to in6_gif.c.  sync with kame

Revision 1.35 / (download) - annotate - [select for diffs], Fri Dec 21 03:21:51 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.34: +4 -17 lines
Diff to previous 1.34 (colored)

move protosw fragment for gif/stf to their own source code.
reduce #ifdef in stf code.  sync with kame

Revision 1.34 / (download) - annotate - [select for diffs], Tue Nov 13 00:57:00 2001 UTC (19 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.33: +4 -1 lines
Diff to previous 1.33 (colored)

add RCSIDs

Revision 1.33 / (download) - annotate - [select for diffs], Wed Oct 24 09:37:00 2001 UTC (19 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: thorpej-mips-cache-base
Changes since 1.32: +2 -2 lines
Diff to previous 1.32 (colored)

no tcp_fasttimo any more.  PR 14333

Revision 1.32 / (download) - annotate - [select for diffs], Wed Oct 24 06:36:38 2001 UTC (19 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.31: +2 -2 lines
Diff to previous 1.31 (colored)

more whitespace sync with kame

Revision 1.31 / (download) - annotate - [select for diffs], Tue Oct 16 04:57:38 2001 UTC (19 years, 3 months ago) by itojun
Branch: MAIN
Branch point for: thorpej-mips-cache
Changes since 1.30: +1 -2 lines
Diff to previous 1.30 (colored)

remove unused #define.  sync whitespace/comment with kame.

Revision 1.30 / (download) - annotate - [select for diffs], Mon Oct 15 09:51:17 2001 UTC (19 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.29: +2 -4 lines
Diff to previous 1.29 (colored)

implement IPV6_V6ONLY socket option from draft-ietf-ipngwg-rfc2553bis-03.txt.
IPV6_BINDV6ONLY (netbsd only) is deprecated, but still work just like before.

Revision 1.29 / (download) - annotate - [select for diffs], Wed Mar 21 19:22:28 2001 UTC (19 years, 10 months ago) by thorpej
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base, thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf
Branch point for: kqueue
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

Add a protosw flag, PR_ABRTACPTDIS (Abort on Accept of Disconnected
Socket), and add it to the protocols that use that behavior (all
PR_LISTEN protocols except for PF_LOCAL stream sockets).

Revision 1.28 / (download) - annotate - [select for diffs], Thu Mar 1 16:31:41 2001 UTC (19 years, 10 months ago) by itojun
Branch: MAIN
Branch point for: nathanw_sa
Changes since 1.27: +9 -9 lines
Diff to previous 1.27 (colored)

make sure to enforce inbound ipsec policy checking, for any protocols on top
of ip (check it when final header is visited).  sync with kame.
XXX kame team will need to re-check policy engine code

Revision 1.27 / (download) - annotate - [select for diffs], Wed Feb 21 00:11:53 2001 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.26: +3 -3 lines
Diff to previous 1.26 (colored)

need PR_ADDR|PR_ATOMIC for IPPROTO_EON.  fix typo.  from chopps, sync with kame

Revision 1.26 / (download) - annotate - [select for diffs], Tue Feb 20 08:49:16 2001 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.25: +9 -1 lines
Diff to previous 1.25 (colored)

ISO over IPv4/v6 by EON encapsulation.  from chopps, sync with kame.

Revision 1.25 / (download) - annotate - [select for diffs], Sun Feb 11 06:49:52 2001 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.24: +2 -2 lines
Diff to previous 1.24 (colored)

pull latest kame pcbnotify code.  synchronizes ICMPv6 path mtu discovery
behavior with other protocols (i.e. validation, use of hiwat/lowat).

Revision 1.24 / (download) - annotate - [select for diffs], Sun Feb 11 05:25:04 2001 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)

whitespace sync with kame

Revision 1.23 / (download) - annotate - [select for diffs], Thu Oct 19 20:23:02 2000 UTC (20 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.22: +1 -97 lines
Diff to previous 1.22 (colored)

remove #ifdef TCP6.  it is not likely for us to bring in sys/netinet6/tcp6*.c
(separate TCP/IPv6 stack) into netbsd-current.

Revision 1.22 / (download) - annotate - [select for diffs], Wed Oct 18 21:14:15 2000 UTC (20 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)

verify ICMPv6 too big messages based on TCP pcbs, and/or IPsec SA.
TODO: udp6, and sendto consideration.  as pmtud is mandatory for IPv6,
it is rather important for us to support those cases.
TODO: more testing
TODO: kame sync

Revision 1.21 / (download) - annotate - [select for diffs], Tue Oct 10 16:26:44 2000 UTC (20 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

sync with kame ($KAME$)

Revision 1.20 / (download) - annotate - [select for diffs], Tue Oct 10 13:25:28 2000 UTC (20 years, 3 months ago) by enami
Branch: MAIN
Changes since 1.19: +3 -3 lines
Diff to previous 1.19 (colored)

Don't initialize TCP twice on v4/v6 dual stack kernel.

Revision 1.19 / (download) - annotate - [select for diffs], Fri Jul 28 04:06:59 2000 UTC (20 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 (colored)

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

Revision 1.18 / (download) - annotate - [select for diffs], Thu Jul 6 12:36:18 2000 UTC (20 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.17: +6 -5 lines
Diff to previous 1.17 (colored)

- do not use bitfield for router renumbering header.
- add protection mechanism against ND cache corruption due to bad NUD hints.
- more stats
- icmp6 pps limitation.  TOOD: should implement ppsratecheck(9).

Revision 1.17 / (download) - annotate - [select for diffs], Wed Apr 19 06:30:56 2000 UTC (20 years, 9 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.16: +21 -9 lines
Diff to previous 1.16 (colored)

introduce sys/netinet/ip_encap.c, to dispatch inbound packets
to protocol handlers, based on src/dst (for ip proto #4/41).
see comment in ip_encap.c for details of the problem we have.
there are too many protocol specs for ip proto #4/41.
backward compatibility with MROUTING case is now provided in ip_encap.c.

fix ipip to work with gif (using ip_encap.c).  sorry for breakage.

gif now uses ip_encap.c.

introduce stf pseudo interface (implements 6to4, another IPv6-over-IPv4 code
with ip proto #41).

Revision 1.16 / (download) - annotate - [select for diffs], Sat Feb 26 09:09:17 2000 UTC (20 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.15: +3 -2 lines
Diff to previous 1.15 (colored)

implement rip6_ctlinput, to cope with routing changes correctly.
(IMHO we need rip_ctlinput as well)

Revision 1.15 / (download) - annotate - [select for diffs], Sat Feb 26 09:01:59 2000 UTC (20 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.14: +7 -7 lines
Diff to previous 1.14 (colored)

make it possible to throw IPv6 packet with proto=4/41.
(in normal case we don't do it, but this is how IPv4 in_proto is written)

Revision 1.14 / (download) - annotate - [select for diffs], Mon Feb 14 19:45:50 2000 UTC (20 years, 11 months ago) by thorpej
Branch: MAIN
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

Use ratecheck() for ICMP6 rate limiting.

Revision 1.13 / (download) - annotate - [select for diffs], Sun Feb 6 12:49:45 2000 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Changes since 1.12: +3 -3 lines
Diff to previous 1.12 (colored)

fix include pathname for better rfc2292 compliance.

Revision 1.12 / (download) - annotate - [select for diffs], Thu Jan 6 15:46:09 2000 UTC (21 years ago) by itojun
Branch: MAIN
Changes since 1.11: +6 -323 lines
Diff to previous 1.11 (colored)

remove extra portability #ifdef (like #ifdef __FreeBSD__) in KAME IPv6/IPsec
code, from netbsd-current repository.
#ifdef'ed version is always available from ftp.kame.net.

XXX please do not make too many diff-unfriendly changes, we'll need to take
bunch of diffs on upgrade...

Revision 1.11 / (download) - annotate - [select for diffs], Thu Jan 6 06:41:19 2000 UTC (21 years ago) by itojun
Branch: MAIN
Changes since 1.10: +12 -1 lines
Diff to previous 1.10 (colored)

make IPV6_BINDV6ONLY setsockopt available.  it controls behavior of
AF_INET6 wildcard listening socket.  heavily documented in ip6(4).
net.inet6.ip6.bindv6only defines default value.  default is 1.

"options INET6_BINDV6ONLY" removes any code fragment that supports
IPV6_BINDV6ONLY == 0 case (not defopt'ed as use of this is rare).

Revision 1.10 / (download) - annotate - [select for diffs], Sun Jan 2 16:31:18 2000 UTC (21 years ago) by itojun
Branch: MAIN
Changes since 1.9: +4 -1 lines
Diff to previous 1.9 (colored)

add net.inet6.icmp6.nodeinfo sysctl.
this allows you to disable/enable ICMPv6 node information query/reply
processing (which tells remote end the gethostname(3) setting, interface
addresses on the node, and some other things - documented in
draft-ietf-ipngwg-icmp-name-lookup* or something alike).

to test it, try ping6 -w ::1 with nodeinfo=0 and nodeinfo=1.
(sync with kame change)

Revision 1.9 / (download) - annotate - [select for diffs], Mon Dec 13 15:17:22 1999 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.8: +228 -27 lines
Diff to previous 1.8 (colored)

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...)

Revision 1.8 / (download) - annotate - [select for diffs], Sat Jul 31 18:41:16 1999 UTC (21 years, 5 months ago) by itojun
Branch: MAIN
CVS Tags: fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-base
Branch point for: wrstuden-devbsize, thorpej_scsipi
Changes since 1.7: +3 -1 lines
Diff to previous 1.7 (colored)

sync with recent KAME.
- loosen ipsec restriction on packet diredtion.
- revise icmp6 redirect handling on IsRouter bit.
- tcp/udp notification processing (link-local address case)
- cosmetic fixes (better code share across *BSD).

Revision 1.7 / (download) - annotate - [select for diffs], Fri Jul 30 10:35:36 1999 UTC (21 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.6: +1 -2 lines
Diff to previous 1.6 (colored)

remove reference to in6_systm.h (file itself will be removed afterwords)

Revision 1.6 / (download) - annotate - [select for diffs], Tue Jul 27 06:23:57 1999 UTC (21 years, 6 months ago) by explorer
Branch: MAIN
Changes since 1.5: +6 -1 lines
Diff to previous 1.5 (colored)

Fix a problem where tcp_slowtimo was called twice, once for ipv4 tcp and
once for ipv6.  This patch makes the ipv6 case pass NULLs in for fast
and slow timeouts iff defined(INET) and passes in the right function
if !defined(INET).

Reveiwed by itojun@iijlab.net.

Revision 1.5 / (download) - annotate - [select for diffs], Thu Jul 22 03:59:42 1999 UTC (21 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4 (colored)

change unnecessary u_long/long into u_int32_t or something relevant.
more fixes should follow.

Revision 1.4 / (download) - annotate - [select for diffs], Fri Jul 9 22:57:27 1999 UTC (21 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.3: +2 -1 lines
Diff to previous 1.3 (colored)

defopt IPSEC and IPSEC_ESP (both into opt_ipsec.h).

Revision 1.3 / (download) - annotate - [select for diffs], Sat Jul 3 21:30:18 1999 UTC (21 years, 6 months ago) by thorpej
Branch: MAIN
Changes since 1.2: +2 -0 lines
Diff to previous 1.2 (colored)

RCS ID police.

Revision 1.2 / (download) - annotate - [select for diffs], Thu Jul 1 08:12:55 1999 UTC (21 years, 6 months ago) by itojun
Branch: MAIN
Branch point for: chs-ubc2
Changes since 1.1: +499 -0 lines
Diff to previous 1.1 (colored)

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.

Revision 1.1, Mon Jun 28 06:37:04 1999 UTC (21 years, 6 months ago) by itojun
Branch: MAIN
Branch point for: kame
FILE REMOVED

file in6_proto.c was initially added on branch kame.

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>