OpenBSD CVS

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


[BACK] Up to [local] / src / sys / netinet6

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.99 / (download) - annotate - [select for diffs], Sun Apr 21 17:32:11 2024 UTC (7 weeks ago) by florian
Branch: MAIN
CVS Tags: HEAD
Changes since 1.98: +5 -5 lines
Diff to previous 1.98 (colored)

Implement rule 5.5 of RFC 6724 (Default Address Selection for IPv6)

Rule 5.5: Prefer addresses in a prefix advertised by the next-hop.

For this we have to track the (link-local) address of the advertising
router per interface address and compare it with the selected route.

Rule 5.5 is useful in multi-homing setups where we have more than one
prefix and default router. We have to use the source address with the
correct default gateway otherwise traffic is likely going to be
dropped because of BCP 38.

While here refactor in6_update_ifa() a bit to make the code clearer
and consistently use (var & flag) instead of (var & flag) != 0.

Patiently reviewed by & OK bluhm.

Revision 1.98 / (download) - annotate - [select for diffs], Sun Mar 31 15:53:12 2024 UTC (2 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.97: +19 -25 lines
Diff to previous 1.97 (colored)

Combine route_cache() and rtalloc_mpath() in new route_mpath().

Fill and check the cache and call rtalloc_mpath() together.  Then
the caller of route_mpath() does not have to care about the uint32_t
*src pointer and just pass struct in_addr.  All the conversions are
done inside the functions.

A previous version of this diff was backed out.  There was an
additional rtisvalid() in rtalloc_mpath() that prevented packet
output via interfaces that were not up.  Now the route in the cache
has to be valid, but after new lookup, rtalloc_mpath() may return
invalid routes.  This generates less errors in userland an preserves
existing behavior.

OK sashan@

Revision 1.97 / (download) - annotate - [select for diffs], Thu Feb 29 12:01:59 2024 UTC (3 months, 1 week ago) by naddy
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5
Changes since 1.96: +24 -17 lines
Diff to previous 1.96 (colored)

revert "Combine route_cache() and rtalloc_mpath() in new route_mpath()"

It breaks NFS.

ok claudio@

Revision 1.96 / (download) - annotate - [select for diffs], Tue Feb 27 12:37:49 2024 UTC (3 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.95: +18 -25 lines
Diff to previous 1.95 (colored)

Combine route_cache() and rtalloc_mpath() in new route_mpath().

Fill and check the cache and call rtalloc_mpath() together.  Then
the caller of route_mpath() does not have to care about the uint32_t
*src pointer and just pass struct in_addr.  All the conversions are
done inside the functions.  ro->ro_rt is either valid or NULL.  Note
that some places have a stricter rtisvalid() now compared to the
previous NULL check.

OK claudio@

Revision 1.95 / (download) - annotate - [select for diffs], Thu Feb 22 14:25:58 2024 UTC (3 months, 2 weeks ago) by bluhm
Branch: MAIN
Changes since 1.94: +4 -4 lines
Diff to previous 1.94 (colored)

Make the route cache aware of multipath routing.

Pass source address to route_cache() and store it in struct route.
Cached multipath routes are only valid if source address matches.
If sysctl multipath changes, increase route generation number.

OK claudio@

Revision 1.94 / (download) - annotate - [select for diffs], Tue Feb 13 12:22:09 2024 UTC (3 months, 3 weeks ago) by bluhm
Branch: MAIN
Changes since 1.93: +8 -9 lines
Diff to previous 1.93 (colored)

Merge struct route and struct route_in6.

Use a common struct route for both inet and inet6.  Unfortunately
struct sockaddr is shorter than sockaddr_in6, so netinet/in.h has
to be exposed from net/route.h.  Struct route has to be bsd visible
for userland as netstat kvm code inspects inp_route.  Internet PCB
and TCP SYN cache can use a plain struct route now.  All specific
sockaddr types for inet and inet6 are embeded there.

OK claudio@

Revision 1.93 / (download) - annotate - [select for diffs], Fri Feb 9 14:02:12 2024 UTC (4 months ago) by bluhm
Branch: MAIN
Changes since 1.92: +3 -5 lines
Diff to previous 1.92 (colored)

Route cache function returns hit or miss.

The route_cache() function can easily return whether it was a cache
hit or miss.  Then the logic to perform a route lookup gets a bit
simpler.  Some more complicated if (ro->ro_rt == NULL) checks still
exist elsewhere.
Also use route cache in in_pcbselsrc() instead of filling struct
route manually.

OK claudio@

Revision 1.92 / (download) - annotate - [select for diffs], Wed Feb 7 23:40:40 2024 UTC (4 months ago) by bluhm
Branch: MAIN
Changes since 1.91: +9 -41 lines
Diff to previous 1.91 (colored)

Use the route generation number also for IPv6.

Implement route6_cache() to check whether the cached route is still
valid and otherwise fill caching parameter of struct route_in6.
Also count cache hits and misses in netstat.  in_pcbrtentry() uses
route cache now.

OK claudio@

Revision 1.91 / (download) - annotate - [select for diffs], Tue Jan 9 19:57:01 2024 UTC (5 months ago) by bluhm
Branch: MAIN
Changes since 1.90: +2 -2 lines
Diff to previous 1.90 (colored)

Convert some struct inpcb parameter to const pointer.

OK millert@

Revision 1.90 / (download) - annotate - [select for diffs], Fri Dec 15 00:24:56 2023 UTC (5 months, 3 weeks ago) by bluhm
Branch: MAIN
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored)

Use inpcb table mutex to set addresses.

Protect all remaining write access to inp_faddr and inp_laddr with
inpcb table mutex.  Document inpcb locking for foreign and local
address and port and routing table id.  Reading will be made MP
safe by adding per socket rw-locks in a next step.

OK sashan@ mvs@

Revision 1.89 / (download) - annotate - [select for diffs], Sun Dec 3 20:36:24 2023 UTC (6 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.88: +4 -4 lines
Diff to previous 1.88 (colored)

Rename all in6p local variables to inp.

There exists no struct in6pcb in OpenBSD, this was an old kame idea.
Calling the local variable in6p does not make sense, it is actually
a struct inpcb.  Also in6p is not used consistently in inet6 code.
Having the same convention for IPv4 and IPv6 is less confusing.

OK sashan@ mvs@

Revision 1.88 / (download) - annotate - [select for diffs], Fri Dec 1 14:08:04 2023 UTC (6 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.87: +3 -3 lines
Diff to previous 1.87 (colored)

Make internet PCB connect more consistent.

The public interface is in_pcbconnect().  It dispatches to
in6_pcbconnect() if necessary.  Call the former from tcp_connect()
and udp_connect().
In in6_pcbconnect() initialization in6a = NULL is not necessary.
in6_pcbselsrc() sets the pointer, but does not read the value.
Pass a constant in6_addr pointer to in6_pcbselsrc() and in6_selectsrc().
It returns a reference to the address of some internal data structure.
We want to be sure that in6_addr is not modified this way.  IPv4
in_pcbselsrc() solves this by passing a copy of the address.

OK kn@ sashan@ mvs@

Revision 1.87 / (download) - annotate - [select for diffs], Tue Nov 28 13:23:20 2023 UTC (6 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.86: +15 -17 lines
Diff to previous 1.86 (colored)

Remove struct inpcb from in6_embedscope() parameters.

rip6_output() did modify inp_outputopts6 temporarily to provide
different ip6_pktopts to in6_embedscope().  Better pass inp_outputopts6
and inp_moptions6 as separate arguments to in6_embedscope().
Simplify the code that deals with these options in in6_embedscope().
Doucument inp_moptions and inp_moptions6 as protected by net lock.

OK kn@

Revision 1.86 / (download) - annotate - [select for diffs], Tue Feb 22 01:15:02 2022 UTC (2 years, 3 months ago) by guenther
Branch: MAIN
CVS Tags: OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.85: +1 -2 lines
Diff to previous 1.85 (colored)

Delete unnecessary #includes of <sys/domain.h> and/or <sys/protosw.h>

net/if_pppx.c pointed out by jsg@
ok gnezdo@ deraadt@ jsg@ mpi@ millert@

Revision 1.85 / (download) - annotate - [select for diffs], Wed Mar 10 10:21:49 2021 UTC (3 years, 3 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.84: +4 -4 lines
Diff to previous 1.84 (colored)

spelling

ok gnezdo@ semarie@ mpi@

Revision 1.84 / (download) - annotate - [select for diffs], Sat Nov 7 09:51:40 2020 UTC (3 years, 7 months ago) by denis
Branch: MAIN
Changes since 1.83: +3 -4 lines
Diff to previous 1.83 (colored)

Rework source IP address setting.

- Move most of the processing out of rtable.c (reasonnable tb@, ok bluhm@)
- Remove memory allocation, store pointer to existing ifaddr
- Fix tunnel interface handling

looks fine mpi@

Revision 1.83 / (download) - annotate - [select for diffs], Thu Nov 5 10:46:13 2020 UTC (3 years, 7 months ago) by denis
Branch: MAIN
Changes since 1.82: +2 -3 lines
Diff to previous 1.82 (colored)

Replace wrong cast with satosin.

Advised by bluhm@

Revision 1.82 / (download) - annotate - [select for diffs], Thu Oct 29 21:15:27 2020 UTC (3 years, 7 months ago) by denis
Branch: MAIN
Changes since 1.81: +24 -1 lines
Diff to previous 1.81 (colored)

Add feature to force the selection of source IP address

Based/previous work on an idea from deraadt@
Input from claudio@, djm@, deraadt@, sthen@

OK deraadt@

Revision 1.81 / (download) - annotate - [select for diffs], Fri Dec 2 11:16:04 2016 UTC (7 years, 6 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8, OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5, OPENBSD_6_4_BASE, OPENBSD_6_4, OPENBSD_6_3_BASE, OPENBSD_6_3, OPENBSD_6_2_BASE, OPENBSD_6_2, OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.80: +51 -52 lines
Diff to previous 1.80 (colored)

Rremoves 'struct route_in6 *' argument from in6_selectsrc().

Move the corresponding code in in6_pcbselsrc().  This reduces
differences with IPv4 and will help us to get rid of 'struct route*'.

ok vgross@

Revision 1.80 / (download) - annotate - [select for diffs], Fri Sep 2 13:53:44 2016 UTC (7 years, 9 months ago) by vgross
Branch: MAIN
Changes since 1.79: +5 -5 lines
Diff to previous 1.79 (colored)

in6_selectroute should never get a valid struct route * filled with something
else than AF_INET6.

Ok florian@

Revision 1.79 / (download) - annotate - [select for diffs], Thu Aug 4 20:46:24 2016 UTC (7 years, 10 months ago) by vgross
Branch: MAIN
Changes since 1.78: +29 -7 lines
Diff to previous 1.78 (colored)

Commit in6_selectsrc() split again, with missing assignment fixed.

Revision 1.78 / (download) - annotate - [select for diffs], Fri Jul 22 11:14:41 2016 UTC (7 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.77: +6 -26 lines
Diff to previous 1.77 (colored)

Revert in_selectsrc() refactoring, it breaks IPv6.

Reported by Heiko on bugs@.

ok stsp@, claudio@

Revision 1.77 / (download) - annotate - [select for diffs], Wed Jul 20 18:51:50 2016 UTC (7 years, 10 months ago) by vgross
Branch: MAIN
Changes since 1.76: +27 -7 lines
Diff to previous 1.76 (colored)

Split in6_selectsrc() into a low-level part and a pcb-level part, and
convert in_selectsrc() prototype to match.

Ok bluhm@ mpi@.

Revision 1.76 / (download) - annotate - [select for diffs], Tue Jul 5 10:17:14 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.75: +3 -3 lines
Diff to previous 1.75 (colored)

Expand IN6_IFF_NOTREADY, ok bluhm@

Revision 1.75 / (download) - annotate - [select for diffs], Tue Jul 5 09:17:10 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.74: +3 -6 lines
Diff to previous 1.74 (colored)

Do not use ``rt_addr'' in in{6,}_selectsrc() it doesn't work with magic
addresses set on p2p interfaces.

Found the hardway by naddy@

Revision 1.74 / (download) - annotate - [select for diffs], Thu Jun 30 12:36:27 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.73: +6 -3 lines
Diff to previous 1.73 (colored)

Use ``rt_addr'' rather than ``rt_ifa'' to get the source address
corresponding to a route.

ok florian@ on a previous version, input and ok bluhm@

Revision 1.73 / (download) - annotate - [select for diffs], Mon Jun 27 16:36:08 2016 UTC (7 years, 11 months ago) by jca
Branch: MAIN
Changes since 1.72: +1 -8 lines
Diff to previous 1.72 (colored)

Kill outdated comment.  Reading the code is enough.

ok sthen@ bluhm@

Revision 1.72 / (download) - annotate - [select for diffs], Sat Dec 5 13:21:00 2015 UTC (8 years, 6 months ago) by vgross
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.71: +3 -8 lines
Diff to previous 1.71 (colored)

Remove useless "if() else", multicast and unicast v6 route lookups are
actually the same. This has been introduced in r1.7 to prevent RTM_MISS
storms, but we don't send this message anymore.

ok @mpi

Revision 1.71 / (download) - annotate - [select for diffs], Wed Dec 2 13:29:26 2015 UTC (8 years, 6 months ago) by claudio
Branch: MAIN
Changes since 1.70: +2 -2 lines
Diff to previous 1.70 (colored)

Kill the RT_REPORT flag to rtalloc() and stop sending RTM_MISS messages
for failed route lookups. This is something that was maybe useful in the
90is but in this modern times it is just annoying and nothing expect it
anyway. OK mpi@, sthen@

Revision 1.70 / (download) - annotate - [select for diffs], Sun Oct 25 14:43:06 2015 UTC (8 years, 7 months ago) by florian
Branch: MAIN
Changes since 1.69: +1 -85 lines
Diff to previous 1.69 (colored)

Remove IPV6_NEXTHOP implementation. Source routing is considered to be
a bad idea these days.
kill it mpi@
general agreement in the network hackers room at u2k15

Revision 1.69 / (download) - annotate - [select for diffs], Sun Oct 25 13:55:51 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.68: +3 -3 lines
Diff to previous 1.68 (colored)

Use the "modern" way to check if a route entry correspond to a local
address.

Fix a regression introduced when removing the lo0 hack.

ok florian@

Revision 1.68 / (download) - annotate - [select for diffs], Sat Oct 24 16:57:46 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.67: +12 -5 lines
Diff to previous 1.67 (colored)

Convert to rt_ifidx.

ok bluhm@

Revision 1.67 / (download) - annotate - [select for diffs], Sat Oct 24 16:08:48 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.66: +4 -6 lines
Diff to previous 1.66 (colored)

Ignore Router Advertisment's current hop limit.

Appart from the usual inet6 axe murdering exercise to keep you fit, this
allows us to get rid of a lot of layer violation due to the use of per-
ifp variables to store the current hop limit.

Imputs from bluhm@, ok phessler@, florian@, bluhm@

Revision 1.66 / (download) - annotate - [select for diffs], Sat Oct 24 12:33:16 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.65: +2 -2 lines
Diff to previous 1.65 (colored)

Convert some if_ref() to if_get().

ok claudio@

Revision 1.65 / (download) - annotate - [select for diffs], Thu Oct 22 16:33:32 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.64: +4 -11 lines
Diff to previous 1.64 (colored)

Use rt_ifp instead of rt_ifa->ifa_ifp.

ok bluhm@

Revision 1.64 / (download) - annotate - [select for diffs], Mon Oct 19 12:11:28 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.63: +4 -5 lines
Diff to previous 1.63 (colored)

Stop checking for RTF_UP directly, call rtisvalid(9) instead.

While here add two missing ``rtableid'' checks in in6_selectsrc().

ok bluhm@

Revision 1.63 / (download) - annotate - [select for diffs], Tue Oct 13 10:16:17 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.62: +6 -8 lines
Diff to previous 1.62 (colored)

Use rtisivalid(9) to check if the given (cached) route can be used.

Note that after calling rtalloc(9) we only check if a route has been
returned or not and do not check for its validity.  This cannot be
improved without a massive refactoring.

The kernel currently *do* use !RTF_UP route due to a mismatch between
the value of ifp->if_link_state and the IFF_UP|IFF_RUNNING code.

I'd explain the RTF_UP flag as follow:

.  If a cached route entry w/o RTF_UP is passed to ip{6,}_output(),
.  call rtalloc(9) to see if a better entry is present in the tree.

This is enough to support MPATH and route cache invalidation.

ok bluhm@

Revision 1.62 / (download) - annotate - [select for diffs], Fri Sep 18 14:26:22 2015 UTC (8 years, 8 months ago) by mpi
Branch: MAIN
Changes since 1.61: +3 -2 lines
Diff to previous 1.61 (colored)

Do not manually decrement rt's refcounter in nd6_lookup() and let the
callers rtfree(9) it.

Inputs and ok bluhm@

Revision 1.61 / (download) - annotate - [select for diffs], Fri Sep 11 20:16:03 2015 UTC (8 years, 9 months ago) by claudio
Branch: MAIN
Changes since 1.60: +9 -2 lines
Diff to previous 1.60 (colored)

if_put after if_get for in6_src and ip6_output which got a lot easier after
all the cleanup by mpi@ since we no longer overwrite ifps, etc. OK dlg@

Revision 1.60 / (download) - annotate - [select for diffs], Fri Sep 11 19:23:00 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.59: +18 -65 lines
Diff to previous 1.59 (colored)

Rewrite in6_selectroute() to no longer return an ifp.

The returned "struct rtentry" is either the cached one or the one passed
in options.

ok claudio@

Revision 1.59 / (download) - annotate - [select for diffs], Fri Sep 11 13:53:04 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.58: +21 -33 lines
Diff to previous 1.58 (colored)

Move the multicast option parsing out of in6_selectroute().

ok claudio@

Revision 1.58 / (download) - annotate - [select for diffs], Fri Sep 11 09:58:33 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.57: +3 -31 lines
Diff to previous 1.57 (colored)

Kill selectroute().

ok claudio@

Revision 1.57 / (download) - annotate - [select for diffs], Fri Sep 11 07:42:35 2015 UTC (8 years, 9 months ago) by claudio
Branch: MAIN
Changes since 1.56: +5 -9 lines
Diff to previous 1.56 (colored)

in6_embedscope() needs to lose some weight. Remove the last argument.
In all but two calls NULL is passed and in the other 2 cases the ifp
is only used to maybe feed it to in6_selecthlim() to select the hoplimit
for the link. Since in6_embedscope() only works on link-local addresses
it does not matter what hop limit we select since the destination is
directly reachable.
OK florian@ mpi@

Revision 1.56 / (download) - annotate - [select for diffs], Thu Sep 10 17:52:05 2015 UTC (8 years, 9 months ago) by claudio
Branch: MAIN
Changes since 1.55: +3 -11 lines
Diff to previous 1.55 (colored)

It is time to put inet6 on a diet. Use the flensing knife and cut out
the 3rd argument of in6_recoverscope() and make it return void.
OK dlg@ mikeb@

Revision 1.55 / (download) - annotate - [select for diffs], Thu Sep 3 14:59:23 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.54: +8 -6 lines
Diff to previous 1.54 (colored)

Revert (again!) the two uses of rtisvalid(9), they break NFS!

Found the hardway by naddy@

Revision 1.54 / (download) - annotate - [select for diffs], Thu Sep 3 09:59:59 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.53: +6 -8 lines
Diff to previous 1.53 (colored)

Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9).

This introduces a behavior change as we now reject !RTF_UP routes to
output packets.  This stricter check exposed a bug in the setup of
new routes and was the reason for the previous revert.  This should
be now fixed by r1.229 of sys/net/route.c .

ok bluhm@

Revision 1.53 / (download) - annotate - [select for diffs], Wed Sep 2 08:28:06 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.52: +8 -6 lines
Diff to previous 1.52 (colored)

Revert the two uses of rtisvalid(9) for the moment, it breaks dhclient(8)
configured networks on RAMDISK kernels.

The problem is that the default route installed by dhclient(8) does not
have the RTF_UP flag in this environement and rtisvalid(9) doesn't allow
you to use a RTF_DOWN route.

Revision 1.52 / (download) - annotate - [select for diffs], Tue Sep 1 14:33:15 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.51: +6 -8 lines
Diff to previous 1.51 (colored)

Convert ip{,6}_output() (cached) route entry checks to rtisvalid(9).

ok bluhm@

Revision 1.51 / (download) - annotate - [select for diffs], Mon Jun 8 22:19:28 2015 UTC (9 years ago) by krw
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.50: +3 -3 lines
Diff to previous 1.50 (colored)

More damned eye searing whitespace. No change to .o files.

Revision 1.50 / (download) - annotate - [select for diffs], Wed Dec 17 09:45:59 2014 UTC (9 years, 5 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.49: +4 -5 lines
Diff to previous 1.49 (colored)

Use an interface index instead of a pointer for multicast options.

Output interface (port) selection for multicast traffic is not done via
route lookups.  Instead the output ifp is registred when setsockopt(2)
is called with the IP{V6,}_MULTICAST_IF option.  But since there is no
mechanism to invalidate such pointer stored in a pcb when an interface
is destroyed/removed, it might lead your kernel to fault.

Prevent a fault upon resume reported by frantisek holop, thanks!

ok mikeb@, claudio@

Revision 1.49 / (download) - annotate - [select for diffs], Fri Dec 5 15:50:04 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.48: +2 -1 lines
Diff to previous 1.48 (colored)

Explicitly include <net/if_var.h> instead of pulling it in <net/if.h>.

ok mikeb@, krw@, bluhm@, tedu@

Revision 1.48 / (download) - annotate - [select for diffs], Sat Nov 1 21:40:39 2014 UTC (9 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.47: +6 -5 lines
Diff to previous 1.47 (colored)

Rename rtalloc1() into rtalloc(9) and convert its flags to only enable
functionnality instead of a mix of enable/disable.

ok bluhm@, jca@

Revision 1.47 / (download) - annotate - [select for diffs], Tue Oct 14 09:52:26 2014 UTC (9 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.46: +8 -8 lines
Diff to previous 1.46 (colored)

Use rtfree() instead of RTFREE(), NULLify some free'd route pointers and
kill the macro.

ok mikeb@, henning@

Revision 1.46 / (download) - annotate - [select for diffs], Sat Sep 27 12:26:16 2014 UTC (9 years, 8 months ago) by mpi
Branch: MAIN
Changes since 1.45: +9 -5 lines
Diff to previous 1.45 (colored)

Kill rtalloc() and update rtalloc1() and rtalloc_mpath() to no longer
rely on "struct route" that should die.

ok claudio@

Revision 1.45 / (download) - annotate - [select for diffs], Tue Jul 22 11:06:10 2014 UTC (9 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6
Changes since 1.44: +1 -2 lines
Diff to previous 1.44 (colored)

Fewer <netinet/in_systm.h> !

Revision 1.44 / (download) - annotate - [select for diffs], Tue Jun 3 13:32:24 2014 UTC (10 years ago) by mpi
Branch: MAIN
Changes since 1.43: +1 -2 lines
Diff to previous 1.43 (colored)

Do not include <sys/malloc.h> where it is not needed.

Revision 1.43 / (download) - annotate - [select for diffs], Mon Apr 21 11:10:54 2014 UTC (10 years, 1 month ago) by henning
Branch: MAIN
Changes since 1.42: +2 -2 lines
Diff to previous 1.42 (colored)

we'll do fine without casting NULL to struct foo * / void *
ok gcc & md5 (alas, no binary change)

Revision 1.42 / (download) - annotate - [select for diffs], Fri Apr 18 10:48:30 2014 UTC (10 years, 1 month ago) by jca
Branch: MAIN
Changes since 1.41: +49 -51 lines
Diff to previous 1.41 (colored)

Invert the signature logic of in{,6}_selectsrc, make them return the
error code and pass the resulting source address back to the caller
through a pointer, as suggested by chrisz.  This gives us more readable
code, and eases the deletion of useless checks in the callers' error path.
Add a bunch of "0 -> NULL" conversions, while here.
ok chrisz@ mpi@

Revision 1.41 / (download) - annotate - [select for diffs], Mon Apr 7 10:04:17 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.40: +1 -20 lines
Diff to previous 1.40 (colored)

Retire kernel support for SO_DONTROUTE, this time without breaking
localhost connections.

The plan is to always use the routing table for addresses and routes
resolutions, so there is no future for an option that wants to bypass
it.  This option has never been implemented for IPv6 anyway, so let's
just remove the IPv4 bits that you weren't aware of.

Tested a least by lteo@, guenther@ and chrisz@, ok mikeb@, benno@

Revision 1.40 / (download) - annotate - [select for diffs], Fri Mar 28 08:33:51 2014 UTC (10 years, 2 months ago) by sthen
Branch: MAIN
Changes since 1.39: +19 -0 lines
Diff to previous 1.39 (colored)

revert "Retire kernel support for SO_DONTROUTE" diff, which does bad things
for localhost connections. discussed with deraadt@

Revision 1.39 / (download) - annotate - [select for diffs], Thu Mar 27 13:27:28 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.38: +1 -20 lines
Diff to previous 1.38 (colored)

Retire kernel support for SO_DONTROUTE, since the plan is to always
use the routing table there's no future for an option that wants to
bypass it.  This option has never been implemented for IPv6 anyway,
so let's just remove the IPv4 bits that you weren't aware of.

Tested by florian@, man pages inputs from jmc@, ok benno@

Revision 1.38 / (download) - annotate - [select for diffs], Wed Mar 12 14:15:09 2014 UTC (10 years, 3 months ago) by mpi
Branch: MAIN
Changes since 1.37: +3 -6 lines
Diff to previous 1.37 (colored)

ANSIfy a declaration, no object change.

Revision 1.37 / (download) - annotate - [select for diffs], Tue Jan 7 17:07:46 2014 UTC (10 years, 5 months ago) by mikeb
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.36: +3 -2 lines
Diff to previous 1.36 (colored)

Propagate an rdomain number to the nd6_lookup independently from
the ifp pointer which can be NULL.  This prevents a crash reported
by David Hill <dhill at mindcry ! org>.  OK bluhm

Revision 1.36 / (download) - annotate - [select for diffs], Mon Nov 11 09:15:35 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.35: +6 -4 lines
Diff to previous 1.35 (colored)

Replace most of our formating functions to convert IPv4/6 addresses from
network to presentation format to inet_ntop().

The few remaining functions will be soon converted.

ok mikeb@, deraadt@ and moral support from henning@

Revision 1.35 / (download) - annotate - [select for diffs], Wed Oct 23 19:57:50 2013 UTC (10 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.34: +9 -17 lines
Diff to previous 1.34 (colored)

Back when some NRL code was merged into KAME to create the *BSD IPV6
stack (factoid: by a bunch of people in my living room), some compatibility
#define's were created to shim incompatible inpcb access methods. There
was an understanding they would eventually be removed.  Since they are
error prone, and 1999 is a long time ago, now they die.
ok mikeb claudio mpi

Revision 1.34 / (download) - annotate - [select for diffs], Mon Oct 21 08:42:25 2013 UTC (10 years, 7 months ago) by phessler
Branch: MAIN
Changes since 1.33: +3 -1 lines
Diff to previous 1.33 (colored)

Sprinkle a lot more IPv6 routing domains support in the kernel.

Mostly mechanical, setting and passing the rdomain and rtable correctly.
Not yet enabled.

Lots of help and hints from claudio and bluhm

OK claudio@, bluhm@

Revision 1.33 / (download) - annotate - [select for diffs], Thu Oct 17 16:27:46 2013 UTC (10 years, 7 months ago) by bluhm
Branch: MAIN
Changes since 1.32: +1 -2 lines
Diff to previous 1.32 (colored)

The header file netinet/in_var.h included netinet6/in6_var.h.  This
created a bunch of useless dependencies.  Remove this implicit
inclusion and do an explicit #include <netinet6/in6_var.h> when it
is needed.
OK mpi@ henning@

Revision 1.32 / (download) - annotate - [select for diffs], Fri May 31 15:04:24 2013 UTC (11 years ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.31: +5 -6 lines
Diff to previous 1.31 (colored)

Remove a bunch of sockaddr_in6 pointer casts and replace others
with sin6tosa() or satosin6() inline functions.  This allows the
compiler to check the types more strictly.
OK mpi@

Revision 1.31 / (download) - annotate - [select for diffs], Thu Mar 28 16:45:16 2013 UTC (11 years, 2 months ago) by tedu
Branch: MAIN
Changes since 1.30: +1 -2 lines
Diff to previous 1.30 (colored)

no need for a lot of code to include proc.h

Revision 1.30 / (download) - annotate - [select for diffs], Thu Mar 28 00:32:11 2013 UTC (11 years, 2 months ago) by bluhm
Branch: MAIN
Changes since 1.29: +11 -12 lines
Diff to previous 1.29 (colored)

Unfortunately the satosin, sintosa, ifatoia, satosin6, sin6tosa,
ifatoia6 macros do not check the source type.  They just cast
anything.  Remove needless casts and do not use those macros if the
source type does not match.  Remove duplicate defines.
No binary change.  OK kettenis@ krw@

Revision 1.29 / (download) - annotate - [select for diffs], Wed Mar 20 10:34:12 2013 UTC (11 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.28: +20 -25 lines
Diff to previous 1.28 (colored)

Introduce if_get() to retrieve an interface descriptor pointer given
an interface index and replace all the redondant checks and accesses
to a global array by a call to this function.

With imputs from and ok bluhm@, mikeb@

Revision 1.28 / (download) - annotate - [select for diffs], Mon Mar 4 14:42:25 2013 UTC (11 years, 3 months ago) by bluhm
Branch: MAIN
Changes since 1.27: +4 -4 lines
Diff to previous 1.27 (colored)

Replace the cast to struct in6_ifaddr pointer with the ifatoia6() macro.
No binary change.
OK claudio@

Revision 1.27 / (download) - annotate - [select for diffs], Thu Nov 24 17:39:55 2011 UTC (12 years, 6 months ago) by sperreault
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3, OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1
Changes since 1.26: +22 -17 lines
Diff to previous 1.26 (colored)

rdomain support for IPv6
ok mikeb

Revision 1.26 / (download) - annotate - [select for diffs], Sun Aug 7 18:49:50 2011 UTC (12 years, 10 months ago) by mikeb
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.25: +78 -3 lines
Diff to previous 1.25 (colored)

Several fixes for the IPV6_PKTINFO handling with sendmsg(2)

Verify that the address in the in6_pktinfo structure included
in the control message is unicast and configured on the local
host. Additional checks prevent from using non-routable
addresses and inactive interfaces.

Embed the scope identifier into the link local addresses as
required by the stack.  Do not force users to provide valid
interface index in the ipi6_ifindex but look it up in place
if needed.

ok bluhm, waived by deraadt for the release.

Revision 1.25 / (download) - annotate - [select for diffs], Fri May 7 13:33:17 2010 UTC (14 years, 1 month ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.24: +5 -5 lines
Diff to previous 1.24 (colored)

Start cleaning up the mess called rtalloc*. Kill rtalloc2, make rtalloc1
accept flags for report and nocloning. Move the rtableid into struct route
(with a minor twist for now) and make a few more codepathes rdomain aware.
Appart from the pf.c and route.c bits the diff is mostly mechanical.
More to come...
OK michele, henning

Revision 1.24 / (download) - annotate - [select for diffs], Mon Feb 8 12:04:35 2010 UTC (14 years, 4 months ago) by jsing
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7
Changes since 1.23: +17 -35 lines
Diff to previous 1.23 (colored)

More destatic and ansification.

ok claudio@ naddy@

Revision 1.23 / (download) - annotate - [select for diffs], Sun Nov 23 13:30:59 2008 UTC (15 years, 6 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.22: +3 -3 lines
Diff to previous 1.22 (colored)

When accessing cached routes make sure the route is actually still valid.
Before accessing a ro_rt make sure the route is either freshly allocated or
RTF_UP is set. If not ro_rt should be freed and reallocated or at least no
info from the ro_rt should be considered valid.
This seems to solve the crashes seen by Felipe Alfaro Solana.
some sort of OK dlg@

Revision 1.22 / (download) - annotate - [select for diffs], Mon Dec 11 11:26:05 2006 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE, OPENBSD_4_4, OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2, OPENBSD_4_1_BASE, OPENBSD_4_1
Changes since 1.21: +3 -3 lines
Diff to previous 1.21 (colored)

de-__P.  noted by Dries Schellekens

Revision 1.21 / (download) - annotate - [select for diffs], Sat Dec 9 01:12:28 2006 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.20: +217 -1 lines
Diff to previous 1.20 (colored)

switch IPv6 advanced API from RFC2292 to RFC3542 (2292 is superseded by 3542).
the kernel still handles RFC2292 set/getsockopts, so that compiled binary
has no trouble running.  userland sees RFC3542 symbols only on header file
so new code has to use RFC3542 API.

bump libc shlib minor for function additions.

tested on i386/amd64 by jmc, i386 by brad. checked by deraadt.

Revision 1.20 / (download) - annotate - [select for diffs], Fri Nov 17 01:11:23 2006 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.19: +11 -14 lines
Diff to previous 1.19 (colored)

change semantics of ff01::/16 to interface local multicast
(to sync up with more recent IPv6 spec)

ok from: deraadt mcbride

Revision 1.19 / (download) - annotate - [select for diffs], Sun Jun 18 11:47:46 2006 UTC (17 years, 11 months ago) by pascoe
Branch: MAIN
CVS Tags: OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.18: +2 -2 lines
Diff to previous 1.18 (colored)

Add support for equal-cost multipath IP.

To minimise path disruptions, this implements recommendations made in RFC2992 -
the hash-threshold mechanism to select paths based on source/destination IP
address pairs, and inserts multipath routes in the middle of the route table.

To enable multipath distribution, use:
   sysctl net.inet.ip.multipath=1
and/or:
   sysctl net.inet6.ip6.multipath=1

testing norby@
ok claudio@ henning@ hshoexer@

Revision 1.18 / (download) - annotate - [select for diffs], Fri Jun 16 16:49:40 2006 UTC (17 years, 11 months ago) by henning
Branch: MAIN
Changes since 1.17: +2 -2 lines
Diff to previous 1.17 (colored)

adjust functions dealing with the routing table to take a table ID as
parameter so they can work on alternate tables. table 0 hardcoded for
many callers yet, that will be adapted step by step.
input + ok claudio norby hshoexer

Revision 1.17 / (download) - annotate - [select for diffs], Mon Sep 19 19:38:34 2005 UTC (18 years, 8 months ago) by brad
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9
Changes since 1.16: +2 -2 lines
Diff to previous 1.16 (colored)

sin6_scope_id maps to interface indices for link local addresses only!
(unlikely to be used with other scopes for now, but we should be
correct anyway)

From drochner NetBSD

ok deraadt@

Revision 1.3.2.5 / (download) - annotate - [select for diffs], Thu Feb 19 10:57:25 2004 UTC (20 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.3.2.4: +7 -4 lines
Diff to previous 1.3.2.4 (colored) to branchpoint 1.3 (colored) next main 1.4 (colored)

Merge of current from two weeks agointo the SMP branch

Revision 1.16 / (download) - annotate - [select for diffs], Wed Dec 10 03:30:21 2003 UTC (20 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A, OPENBSD_3_8_BASE, OPENBSD_3_8, OPENBSD_3_7_BASE, OPENBSD_3_7, OPENBSD_3_6_BASE, OPENBSD_3_6, OPENBSD_3_5_BASE, OPENBSD_3_5
Changes since 1.15: +7 -4 lines
Diff to previous 1.15 (colored)

use if_indexlim (instead of if_index) and ifindex2ifnet[x] != NULL
to check if interface exists, as (1) if_index will have different meaning
(2) ifindex2ifnet could become NULL when interface gets destroyed,
when we introduce dynamically-created interfaces.  markus ok

Revision 1.3.2.4 / (download) - annotate - [select for diffs], Sat Jun 7 11:06:09 2003 UTC (21 years ago) by ho
Branch: SMP
Changes since 1.3.2.3: +2 -6 lines
Diff to previous 1.3.2.3 (colored) to branchpoint 1.3 (colored)

Sync SMP branch to -current

Revision 1.15 / (download) - annotate - [select for diffs], Mon Jun 2 23:28:15 2003 UTC (21 years ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.14: +2 -6 lines
Diff to previous 1.14 (colored)

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999.  Proofed by myself and Theo.

Revision 1.3.2.3 / (download) - annotate - [select for diffs], Fri Mar 28 00:41:29 2003 UTC (21 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.3.2.2: +20 -21 lines
Diff to previous 1.3.2.2 (colored) to branchpoint 1.3 (colored)

Sync the SMP branch with 3.3

Revision 1.11.6.2 / (download) - annotate - [select for diffs], Tue Oct 29 00:36:48 2002 UTC (21 years, 7 months ago) by art
Branch: UBC
Changes since 1.11.6.1: +20 -20 lines
Diff to previous 1.11.6.1 (colored) to branchpoint 1.11 (colored) next main 1.12 (colored)

sync to -current

Revision 1.14 / (download) - annotate - [select for diffs], Wed Sep 11 03:15:36 2002 UTC (21 years, 9 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_B, UBC_SYNC_A, OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.13: +20 -20 lines
Diff to previous 1.13 (colored)

KNF - return is not a function.  sync w/kame

Revision 1.11.6.1 / (download) - annotate - [select for diffs], Tue Jun 11 03:31:37 2002 UTC (22 years ago) by art
Branch: UBC
Changes since 1.11: +2 -3 lines
Diff to previous 1.11 (colored)

Sync UBC branch to -current

Revision 1.13 / (download) - annotate - [select for diffs], Wed May 29 07:54:59 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.12: +2 -2 lines
Diff to previous 1.12 (colored)

attach nd_ifinfo structure to if_afdata.
split IPv6 MTU (advertised by RA) from real link MTU.
sync with kame

Revision 1.12 / (download) - annotate - [select for diffs], Wed May 29 01:45:52 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.11: +1 -2 lines
Diff to previous 1.11 (colored)

rm obsolete comment

Revision 1.3.2.2 / (download) - annotate - [select for diffs], Mon May 14 22:40:18 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.3.2.1: +153 -19 lines
Diff to previous 1.3.2.1 (colored) to branchpoint 1.3 (colored)

merge in approximately 2.9 into SMP branch

Revision 1.11 / (download) - annotate - [select for diffs], Fri Mar 30 11:09:00 2001 UTC (23 years, 2 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_BASE, OPENBSD_3_1_BASE, OPENBSD_3_1, OPENBSD_3_0_BASE, OPENBSD_3_0, OPENBSD_2_9_BASE, OPENBSD_2_9
Branch point for: UBC
Changes since 1.10: +1 -8 lines
Diff to previous 1.10 (colored)

enable FAKE_LOOPBACK_IF case by default.
now traffic on loopback interface will be presented to bpf as normal wire
format packet (without KAME scopeid in s6_addr16[1]).

fix KAME PR 250 (host mistakenly accepts packets to fe80::x%lo0).

sync with kame.

Revision 1.10 / (download) - annotate - [select for diffs], Fri Feb 16 14:45:12 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.9: +40 -17 lines
Diff to previous 1.9 (colored)

amove in6_{embed,recover}scope prototypes to in6_var.h (kernel only).
add in6_clearscope.  sync better with kame

Revision 1.9 / (download) - annotate - [select for diffs], Tue Feb 6 00:22:23 2001 UTC (23 years, 4 months ago) by mickey
Branch: MAIN
Changes since 1.8: +2 -6 lines
Diff to previous 1.8 (colored)

allow changing number of loopbacks in ukc.
change rest of the code to use lo0ifp pointing
to the corresponding struct ifnet.
itojun@ and niklas@ ok

Revision 1.8 / (download) - annotate - [select for diffs], Wed Jun 21 09:07:24 2000 UTC (23 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE, OPENBSD_2_8
Changes since 1.7: +9 -2 lines
Diff to previous 1.7 (colored)

correct in6_recoverscope() for multicast loopback case.

Revision 1.4.2.1 / (download) - annotate - [select for diffs], Sun Jun 18 18:02:33 2000 UTC (23 years, 11 months ago) by jason
Branch: OPENBSD_2_7
Changes since 1.4: +6 -2 lines
Diff to previous 1.4 (colored) next main 1.5 (colored)

pull in patch from current:
Fix (itojun):
lookup routing table for multicast too, to allow scoped IPv6 multicast
to go out of the node.  "ping6 ff02::1%wi0" will work fine with this
(and should correct route6d behavior too)

Revision 1.7 / (download) - annotate - [select for diffs], Sun Jun 18 17:02:59 2000 UTC (23 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.6: +7 -3 lines
Diff to previous 1.6 (colored)

lookup routing table for multicast too, to allow scoped IPv6 multicast
to go out of the node.  "ping6 ff02::1%wi0" will work fine with this
(and should correct route6d behavior too)

this is major issue for IPv6.  i think this needs to become an erratta entry.
sorry about this.

Revision 1.6 / (download) - annotate - [select for diffs], Sun Jun 18 04:49:32 2000 UTC (23 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.5: +5 -5 lines
Diff to previous 1.5 (colored)

don't panic even if in6p == NULL.
(this should have been there with tcp_ident change... sorry)

Revision 1.5 / (download) - annotate - [select for diffs], Tue Jun 13 10:12:01 2000 UTC (24 years ago) by itojun
Branch: MAIN
Changes since 1.4: +115 -4 lines
Diff to previous 1.4 (colored)

allow link-local IPv6 addres in in6_pcbbind.

Revision 1.3.2.1 / (download) - annotate - [select for diffs], Thu Mar 2 07:04:45 2000 UTC (24 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.3: +1 -4 lines
Diff to previous 1.3 (colored)

Sync with -current

Revision 1.4 / (download) - annotate - [select for diffs], Mon Feb 28 11:55:22 2000 UTC (24 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_7_BASE
Branch point for: OPENBSD_2_7
Changes since 1.3: +1 -4 lines
Diff to previous 1.3 (colored)

bring in recent KAME changes (only important and stable ones, as usual).
- remove net.inet6.ip6.nd6_proxyall.  introduce proxy NDP code works
  just like "arp -s".
- revise source address selection.
  be more careful about use of yet-to-be-valid addresses as source.
- as router, transmit ICMP6_DST_UNREACH_BEYONDSCOPE against out-of-scope
  packet forwarding attempt.
- path MTU discovery takes care of routing header properly.
- be more strict about mbuf chain parsing.
- nuke xxCTL_VARS #define, they are for BSDI.
- disable SIOCSIFDSTADDR_IN6/SIOCSIFNETMASK_IN6 ioctl, they do not fit
  IPv6 model where multiple address on interface is normal.
  (kernel side supports them for a while for backward compat,
  the support will be nuked shortly)
- introduce "default outgoing interface" (for spec conformance in very
  rare case)

Revision 1.3 / (download) - annotate - [select for diffs], Mon Feb 7 06:09:10 2000 UTC (24 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: SMP_BASE
Branch point for: SMP
Changes since 1.2: +2 -2 lines
Diff to previous 1.2 (colored)

fix include file path related to ip6.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Dec 10 10:04:28 1999 UTC (24 years, 6 months ago) by angelos
Branch: MAIN
Changes since 1.1: +3 -35 lines
Diff to previous 1.1 (colored)

Remove remaining unnecessary ifdefs (itojun will hate me for this :-)

Revision 1.1 / (download) - annotate - [select for diffs], Wed Dec 8 06:50:21 1999 UTC (24 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: kame_19991208

bring in KAME IPv6 code, dated 19991208.
replaces NRL IPv6 layer.  reuses NRL pcb layer.  no IPsec-on-v6 support.
see sys/netinet6/{TODO,IMPLEMENTATION} for more details.

GENERIC configuration should work fine as before.  GENERIC.v6 works fine
as well, but you'll need KAME userland tools to play with IPv6 (will be
bringed into soon).

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.