OpenBSD CVS

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


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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.122 / (download) - annotate - [select for diffs], Sun Jul 9 19:06:48 2023 UTC (11 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, HEAD
Changes since 1.121: +5 -7 lines
Diff to previous 1.121 (colored)

Fix route entry leak.

In in6_ifdetach() two struct rtentry were leaked.  This was triggered
by regress/sbin/route and detected with btrace(8) refcnt.  The
reference returned by rtalloc() must be freed with rtfree() in all
cases.

OK phessler@ mvs@

Revision 1.121 / (download) - annotate - [select for diffs], Tue Nov 15 18:42:46 2022 UTC (18 months, 3 weeks ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.120: +4 -6 lines
Diff to previous 1.120 (colored)

Not assigning a link local address by default breaks various things.
A lot of code depends on a eui64 address to be present. So revert this
bit of the last commit.
OK florian@

Revision 1.120 / (download) - annotate - [select for diffs], Mon Nov 14 17:12:55 2022 UTC (18 months, 3 weeks ago) by claudio
Branch: MAIN
Changes since 1.119: +7 -7 lines
Diff to previous 1.119 (colored)

Relax the list of interfaces which support IPv6 a bit.

No longer require IFF_MULTICAST for all interfaces. It is save to skip
this for interfaces that don't require a ND cache. Also do not assign a
link-local address in such cases. This affects point-to-point interfaces
and the NBMA / point-to-multipoint interfaces like mpe(4), mgre(4) and wg(4).
The NBMA interfaces need some alternative way to figure out the address
mapping. In the end this allows non-multicast interfaces to work with IPv6.
OK dlg@ kn@

Revision 1.119 / (download) - annotate - [select for diffs], Thu Sep 8 10:22:07 2022 UTC (21 months ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2
Changes since 1.118: +2 -2 lines
Diff to previous 1.118 (colored)

Rename global ifnet TAILQ

Naming the list like the struct itself makes for awful grepping.
Call the global variable "ifnetlist" from now on.

There used to be kvm(3) consumers in base picking up this symbol, but those
have long been converted to other interfaces.

A few potential ports users remain, same deal as sys/net/if_var.h r1.116
"Remove struct ifnet's unused if_switchport member":  they get bumped.

Previous users pointed out by deraadt
OK bluhm

Revision 1.118 / (download) - annotate - [select for diffs], Mon Mar 15 17:28:45 2021 UTC (3 years, 2 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE, OPENBSD_7_1, OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.117: +3 -3 lines
Diff to previous 1.117 (colored)

Clear AUTOCONF6TEMP flag when we detach inet6.

Revision 1.117 / (download) - annotate - [select for diffs], Sun Jun 21 11:32:34 2020 UTC (3 years, 11 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.116: +8 -1 lines
Diff to previous 1.116 (colored)

wireguard can do ipv6, but doesnt do link local addresses.

i feel like i should add IFT_L3IPVLAN here so mgre(4) can take
advantage of this too.

from Matt Dunwoodie and Jason A. Donenfeld

ok deraadt@

Revision 1.116 / (download) - annotate - [select for diffs], Tue Mar 17 09:53:59 2020 UTC (4 years, 2 months ago) by tobhe
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE, OPENBSD_6_7
Changes since 1.115: +3 -3 lines
Diff to previous 1.115 (colored)

Use strlcpy instead of strncpy to ensure results are NUL terminated.

ok mpi@

Revision 1.115 / (download) - annotate - [select for diffs], Fri Nov 8 07:16:29 2019 UTC (4 years, 7 months ago) by dlg
Branch: MAIN
Changes since 1.114: +4 -4 lines
Diff to previous 1.114 (colored)

convert interface address change hooks to tasks and a task_list.

this follows what's been done for detach and link state hooks, and
makes handling of hooks generally more robust.

address hooks are a bit different to detach/link state hooks in
that there's only a few things that register hooks (carp, pf, vxlan),
but a lot of places to run the hooks (lots of ipv4 and ipv6 address
configuration).

an address hook cookie was in struct pfi_kif, which is part of the
pf abi. rather than break pfctl -sI, this maintains the void * used
for the cookie and uses it to store a task, which is then used as
intended with the new api.

Revision 1.114 / (download) - annotate - [select for diffs], Wed Aug 21 15:32:18 2019 UTC (4 years, 9 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE, OPENBSD_6_6
Changes since 1.113: +2 -83 lines
Diff to previous 1.113 (colored)

    Remove support for semantically opace interface identifiers (RFC 7217)
    for IPv6 link local addresses.

    Some hosting and VM providers route customer IPv6 prefixes to link
    local addresses derived from ethernet MAC addresses (RFC 2464). This
    leads to hard to debug IPv6 connectivity problems and is probably not
    worth the effort.

    RFC 7721 lists 4 weaknesses:

    3.1. Correlation of Activities over Time & 3.2. Location Tracking
    These are still possible with RFC 7217 addresses for an adversary
    connected to the same layer 2 network (think conference wifi). Since
    the link local prefix stays the same (fe80::/64) the link local
    addresses do not change between different networks.
    An adversary on the same layer 2 network can probably track ethernet
    MAC addresses via different means, too.

    3.3. Address Scanning & 3.4. Device-Specific Vulnerability Exploitation
    These now become possible, however, as noted above a layer 2 adversary
    was probably able to do this via different means.

    People concerned with these weaknesses are advised to use
    ifconfig lladdr random.
OK benno
input & OK kn

Revision 1.113 / (download) - annotate - [select for diffs], Wed Feb 13 23:47:43 2019 UTC (5 years, 3 months ago) by dlg
Branch: MAIN
CVS Tags: OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.112: +3 -2 lines
Diff to previous 1.112 (colored)

change rt_ifa_add and rt_ifa_del so they take an rdomain argument.

this allows mpls interfaces (mpe, mpw) to pass the rdomain they
wish the local label to be in, rather than have it implicitly forced
to 0 by these functions. right now they'll pass 0, but it will soon
be possible to have them rx packets in other rdomains.

previously the functions used ifp->if_rdomain for the rdomain.
everything other than mpls still passes ifp->if_rdomain.

ok mpi@

Revision 1.112 / (download) - annotate - [select for diffs], Sun Feb 10 22:32:26 2019 UTC (5 years, 4 months ago) by dlg
Branch: MAIN
Changes since 1.111: +2 -2 lines
Diff to previous 1.111 (colored)

remove the implict RTF_MPATH flag that rt_ifa_add() sets on new routes.

MPLS interfaces (ab)use rt_ifa_add for adding the local MPLS label
that they listen on for incoming packets, while every other use of
rt_ifa_add is for adding addresses on local interfaces. MPLS does
this cos the addresses involved are in basically the same shape as
ones used for setting up local addresses.

It is appropriate for interfaces to want RTF_MPATH on local addresses,
but in the MPLS case it means you can have multiple local things
listening on the same label, which doesn't actually work. mpe in
particular keeps track of in use labels to it can handle collisions,
however, mpw does not. It is currently possible to have multiple
mpw interfaces on the same local label, and sharing the same label
as mpe or possible normal forwarding labels.

Moving the RTF_MPATH flag out of rt_ifa_add means all the callers
that still want it need to pass it themselves. The mpe and mpw
callers are left alone without the flag, and will now get EEXIST
from rt_ifa_add when a label is already in use.

ok (and a huge amount of patience and help) mpi@
claudio@ is ok with the idea, but saw a much much earlier solution
to the problem

Revision 1.111 / (download) - annotate - [select for diffs], Fri Oct 5 07:06:09 2018 UTC (5 years, 8 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.110: +1 -52 lines
Diff to previous 1.110 (colored)

Do not join node information multicast group (RFC 4620).
Benno removed code to answer ICMP queries over 4 years ago.
Aham Brahmasmi (aham.brahmasmi AT gmx.com) points out
that we still joined the group though.

OK sthen, bluhm, kn

Revision 1.110 / (download) - annotate - [select for diffs], Sun Aug 26 22:30:00 2018 UTC (5 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.109: +11 -7 lines
Diff to previous 1.109 (colored)

Do not add ::1 on non-default lo(4) as intended.

Reported by and ok sthen@

Revision 1.109 / (download) - annotate - [select for diffs], Tue Jul 10 20:44:39 2018 UTC (5 years, 11 months ago) by florian
Branch: MAIN
Changes since 1.108: +20 -4 lines
Diff to previous 1.108 (colored)

When an interface doesn't have a layer 2 address in6_get_soii_ifid()
failes and then later on a in in6_get_ifid() a layer 2 address is
"borrowed" from from another interface.

Do the "borrowing" in in6_get_soii_ifid(), too so that semantically
opaque interface identifiers work for these kind of interfaces, too.

OK phessler, benno

Revision 1.108 / (download) - annotate - [select for diffs], Tue Jul 10 20:43:26 2018 UTC (5 years, 11 months ago) by florian
Branch: MAIN
Changes since 1.107: +2 -13 lines
Diff to previous 1.107 (colored)

When an interface doesn't have a layer 2 address in6_get_ifid()
tries to "borrow" one from another interface.
But then it checks if the U bit is set int the generated EUI64
address and rejects it.
On the other hand for interfaces that do have a layer 2 address this
check is skipped, so relax it for the "borrowing" case, too.

With this one gets stable link local addresses on e.g. gre(4)
interfaces on certain virtualisation environments depending which mac
addresses get picked for the vio(4) interfaces while previously we
would end up with a random IP on every reboot.

Reported by Aaron A. Glenn via phessler.

OK phessler, benno

Revision 1.107 / (download) - annotate - [select for diffs], Tue Mar 27 15:03:52 2018 UTC (6 years, 2 months ago) by dhill
Branch: MAIN
Changes since 1.106: +4 -4 lines
Diff to previous 1.106 (colored)

Use memcpy instead of bcopy when the memory does not overlap.

OK deraadt@ florian@

Revision 1.106 / (download) - annotate - [select for diffs], Tue Mar 13 13:58:03 2018 UTC (6 years, 2 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.105: +2 -2 lines
Diff to previous 1.105 (colored)

Calculate RFC7217 link-local style addresses the same way as
slaacd(8).

RFC 7217 states (section 5, page 9):
| The Interface Identifier is finally obtained by taking as many
| bits from the RID value (computed in the previous step) as
| necessary, starting from the least significant bit.

Problem in slaacd pointed out by semarie@.

OK sthen, phessler

Revision 1.105 / (download) - annotate - [select for diffs], Sat Feb 10 05:52:08 2018 UTC (6 years, 4 months ago) by florian
Branch: MAIN
Changes since 1.104: +67 -2 lines
Diff to previous 1.104 (colored)

Implement RFC 7217: "A Method for Generating Semantically Opaque
Interface Identifiers with IPv6 Stateless Address Autoconfiguration."

"An IPv6 address configured using this method is stable within each
subnet, but the corresponding Interface Identifier changes when the
host moves from one network to another. This method is meant to be an
alternative to generating Interface Identifiers based on hardware
addresses."

OK naddy, sthen

Revision 1.104 / (download) - annotate - [select for diffs], Fri Sep 1 16:48:27 2017 UTC (6 years, 9 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.103: +16 -67 lines
Diff to previous 1.103 (colored)

Use in6_get_rand_ifid() instead of get_last_resort_ifid() and delete the
get_last_resort_ifid() function because eww.
Also if your system is so constraint that you end up in
in6_get_rand_ifid() you don't deserve a random ifid that stays
stable over reboots.
Simplify code a bit since get_ifid() can no longer fail. It couldn't
fail before either because that code path was #if 0'ed.
While here sprinkle in some in6_ prefixes, pointed out by stsp.
OK stsp

Revision 1.103 / (download) - annotate - [select for diffs], Tue Jul 11 12:51:05 2017 UTC (6 years, 11 months ago) by florian
Branch: MAIN
Changes since 1.102: +2 -7 lines
Diff to previous 1.102 (colored)

Purging is at last at hand. Day of Doom is here. All that is evil
shall all be cleansed.

Remove sending of router solicitations and processing of router
advertisements from the kernel. It's handled by slaacd(8) these days.

Input & OK bluhm@, mpi@

Revision 1.102 / (download) - annotate - [select for diffs], Tue May 16 12:24:02 2017 UTC (7 years ago) by mpi
Branch: MAIN
Changes since 1.101: +2 -2 lines
Diff to previous 1.101 (colored)

Replace remaining splsoftassert(IPL_SOFTNET) by NET_ASSERT_LOCKED().

ok visa@

Revision 1.101 / (download) - annotate - [select for diffs], Thu Dec 29 12:17:22 2016 UTC (7 years, 5 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.100: +4 -7 lines
Diff to previous 1.100 (colored)

Get rid of recursive splsoftnet() in in6_ifattach_linklocal().

ok visa@

Revision 1.100 / (download) - annotate - [select for diffs], Thu Jun 30 08:19:03 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.99: +8 -5 lines
Diff to previous 1.99 (colored)

Restore the automagically added /64 route on p2p interfaces in order to
send traffic to link-local addresses without default route.

Fix a regression reported by Michael Lechtermann, ok stsp@, sthen@

Revision 1.99 / (download) - annotate - [select for diffs], Wed Dec 2 16:35:53 2015 UTC (8 years, 6 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.98: +3 -3 lines
Diff to previous 1.98 (colored)

When destroying an interface, we have to wait until all references
are not used anymore.  This has to be done before any interface
fields become invalid.
As the route delete request cannot call if_get() anymore, pass down
the interface.  Split rtrequest_delete() into a separate function
that may take an existing inteface.
OK mpi@

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

Convert to rt_ifidx.

ok bluhm@

Revision 1.97 / (download) - annotate - [select for diffs], Thu Oct 22 15:37:47 2015 UTC (8 years, 7 months ago) by bluhm
Branch: MAIN
Changes since 1.96: +2 -2 lines
Diff to previous 1.96 (colored)

Inspired by satosin(), use inline functions to convert sockaddr dl.
Instead of casts they check wether the incoming object has the
expected type.  So introduce satosdl() and sdltosa() in the kernel.
OK mpi@

Revision 1.96 / (download) - annotate - [select for diffs], Sat Sep 12 20:50:17 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.95: +2 -2 lines
Diff to previous 1.95 (colored)

Now that rtrequest1(9) properly sets RTF_UP for newly added route,
stop passing it in every rt_ifa_add(9) calls.

ok claudio@

Revision 1.95 / (download) - annotate - [select for diffs], Thu Sep 3 16:42:01 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.94: +13 -9 lines
Diff to previous 1.94 (colored)

Change the order of operations for loopback interfaces to have
::1 configured before fe80::1.

(lo0:0) in pf should resolve to 127.0.0.1 ::1.

reported by and ok mikeb@

Revision 1.94 / (download) - annotate - [select for diffs], Mon Aug 31 08:33:01 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.93: +23 -29 lines
Diff to previous 1.93 (colored)

Do not install connected routes on loopback interfaces.

Previously loopback connected routes were managed via the global list
of prefixes, which mean that systems with AUTOCONF'd addresses did not
see them in the routing table.

This also makes inet6 route creation coherent with inet.

Revision 1.93 / (download) - annotate - [select for diffs], Mon Aug 24 23:26:43 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.92: +9 -17 lines
Diff to previous 1.92 (colored)

Start moving away from the global prefix list by limiting its usage to
AUTOCONF'd addresses.

This prevent the kernel from removing connected (/64) routes as soon as
it configures an AUTOCONF'd address based on a RA.

Tested by sebastia@, ok sthen@

Revision 1.92 / (download) - annotate - [select for diffs], Mon Aug 24 15:58:35 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.91: +6 -31 lines
Diff to previous 1.91 (colored)

Rework the code to decide when to perform DAD to no longer rely on the
IN6_IFF_NODAD pseudo-flag not being set.

This was just a flag for spaghetti code that should not exist in the
first place.

Tested by sebastia@, ok sthen@

Revision 1.91 / (download) - annotate - [select for diffs], Mon Aug 17 10:57:24 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.90: +1 -13 lines
Diff to previous 1.90 (colored)

Remove anoying comment about in6_update_ifa().

Revision 1.90 / (download) - annotate - [select for diffs], Sat Jul 18 15:05:32 2015 UTC (8 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.89: +6 -34 lines
Diff to previous 1.89 (colored)

Merge two identical chunks to add new prefixes to the global data
structures into a function.

ok florian@

Revision 1.89 / (download) - annotate - [select for diffs], Thu Jul 16 15:31:35 2015 UTC (8 years, 10 months ago) by mpi
Branch: MAIN
Changes since 1.88: +3 -8 lines
Diff to previous 1.88 (colored)

Properly layer Router Solicitation code.

Tweak and ok florian@

Revision 1.88 / (download) - annotate - [select for diffs], Mon Jun 8 22:19:28 2015 UTC (9 years ago) by krw
Branch: MAIN
Changes since 1.87: +2 -2 lines
Diff to previous 1.87 (colored)

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

Revision 1.87 / (download) - annotate - [select for diffs], Mon Apr 27 14:51:44 2015 UTC (9 years, 1 month ago) by mpi
Branch: MAIN
Changes since 1.86: +3 -10 lines
Diff to previous 1.86 (colored)

Do not call nd6_purge() before purging the IPv6 addresses of a detached
interface.

Fix a use after free introduced in r1.98 of netinet6/in6.c and recently
exposed by a crazy pool/malloc damage finder being currently refined by
dlg@ and deraadt@.

ok mikeb@, henning@

Revision 1.86 / (download) - annotate - [select for diffs], Sat Mar 14 03:38:52 2015 UTC (9 years, 3 months ago) by jsg
Branch: MAIN
Changes since 1.85: +1 -2 lines
Diff to previous 1.85 (colored)

Remove some includes include-what-you-use claims don't
have any direct symbols used.  Tested for indirect use by compiling
amd64/i386/sparc64 kernels.

ok tedu@ deraadt@

Revision 1.85 / (download) - annotate - [select for diffs], Thu Feb 5 03:01:03 2015 UTC (9 years, 4 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.84: +3 -19 lines
Diff to previous 1.84 (colored)

Convert various rtrequest1(RTM_DELETE,...) calls to rtdeletemsg(9).

This unify some code and notify userland for free.

blambert@ agrees, ok bluhm@

Revision 1.84 / (download) - annotate - [select for diffs], Wed Jan 28 22:10:13 2015 UTC (9 years, 4 months ago) by mpi
Branch: MAIN
Changes since 1.83: +19 -3 lines
Diff to previous 1.83 (colored)

Revert rtdeletemsg conversion.  It was not ok'd, I misunderstood bluhm@'s
email.

Revision 1.83 / (download) - annotate - [select for diffs], Tue Jan 27 10:31:19 2015 UTC (9 years, 4 months ago) by mpi
Branch: MAIN
Changes since 1.82: +26 -62 lines
Diff to previous 1.82 (colored)

Ensure that link-local addresses are correctly configured on loopback
interfaces.

When the kernel automagically configures IPv6 addresses on loopback
interfaces, start by assigning a link-local address and then try to
assign "::1".

Only the first configured loopback interface per rdomain can have the
"::1" address.  But even if other loopback interfaces failed to get
this address, because it is already taken, give them a chance to have
a link-local address.

While here change in6_ifattach() to return an error value and remove
duplicated code.

Fix a regression introduced by the NOINET6 flag removal.

ok henning@, stsp@, florian@, benno@

Revision 1.82 / (download) - annotate - [select for diffs], Mon Jan 26 11:38:37 2015 UTC (9 years, 4 months ago) by mpi
Branch: MAIN
Changes since 1.81: +3 -19 lines
Diff to previous 1.81 (colored)

Call rtdeletemsg(9) instead of rerolling its code.  As a bonus you'll
get userland notification for free.

ok blambert@, bluhm@

Revision 1.81 / (download) - annotate - [select for diffs], Sat Jan 10 11:43:37 2015 UTC (9 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.80: +20 -5 lines
Diff to previous 1.80 (colored)

Correct some comments and merge in6_if_up() into in6_ifattach() to
reflect that IPv6 link-local addresses are no longer automagically
configured the first time an interface is brought up.

ok henning@, stsp@

Revision 1.80 / (download) - annotate - [select for diffs], Thu Jan 8 17:21:01 2015 UTC (9 years, 5 months ago) by florian
Branch: MAIN
Changes since 1.79: +2 -3 lines
Diff to previous 1.79 (colored)

Clear autoconf6 flag after autoconf6 cleanup happened, not before.
Otherwise clean up code will never run.
OK mpi@, benno@, henning@

Revision 1.79 / (download) - annotate - [select for diffs], Tue Jan 6 21:26:46 2015 UTC (9 years, 5 months ago) by stsp
Branch: MAIN
Changes since 1.78: +3 -1 lines
Diff to previous 1.78 (colored)

Remove the NOINET6 interface flag, a left-over from the times when IPv6
was enabled by default. Add AFATTACH/AFDETACH ioctls which enable/disable
an address family for an interface (currently used for IPv6 only).

New kernel needs new ifconfig for IPv6 configuration (address assignment
still works with old ifconfig making this easy to cross over).

Committing on behalf of henning@ who is currently lebensmittelvergiftet.
ok stsp, benno, mpi

Revision 1.78 / (download) - annotate - [select for diffs], Thu Dec 4 00:02:15 2014 UTC (9 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.77: +14 -16 lines
Diff to previous 1.77 (colored)

replace md5 with sha512. ok deraadt

Revision 1.77 / (download) - annotate - [select for diffs], Thu Nov 20 09:55:57 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.76: +1 -3 lines
Diff to previous 1.76 (colored)

What have no need for a variable that holds the maximum MTU size of
interfaces with an IPv6 address.

ok henning@, mikeb@, deraadt@

Revision 1.76 / (download) - annotate - [select for diffs], Tue Nov 18 23:55:01 2014 UTC (9 years, 6 months ago) by krw
Branch: MAIN
Changes since 1.75: +1 -2 lines
Diff to previous 1.75 (colored)

Nuke yet more obvious #include duplications.

ok miod@

Revision 1.75 / (download) - annotate - [select for diffs], Tue Nov 18 02:37:31 2014 UTC (9 years, 6 months ago) by tedu
Branch: MAIN
Changes since 1.74: +1 -3 lines
Diff to previous 1.74 (colored)

move arc4random prototype to systm.h. more appropriate for most code
to include that than rdnvar.h. ok deraadt dlg

Revision 1.74 / (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.73: +3 -3 lines
Diff to previous 1.73 (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.73 / (download) - annotate - [select for diffs], Mon Aug 25 14:00:34 2014 UTC (9 years, 9 months ago) by florian
Branch: MAIN
Changes since 1.72: +10 -1 lines
Diff to previous 1.72 (colored)

Move sending of router solicitations to the kernel; receiving and
processing of router advertisements was already in the kernel.
With this rtsol{,d}(8) is no longer necessary.

The kernel starts sending solicitations with
# ifconfig $IF inet6 autoconf
or
inet6 autoconf
in /etc/hostname.$IF.

input stsp@
much help & OK mpi@
tweaks & OK bluhm@

Revision 1.72 / (download) - annotate - [select for diffs], Tue Jul 1 19:37:07 2014 UTC (9 years, 11 months ago) by benno
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6
Changes since 1.71: +1 -12 lines
Diff to previous 1.71 (colored)

When a carp interface is created with IFXF_NOINET6 flag, no link-local
address will be created when the vhid (and MAC) is set.  Depending on
the order of the configuration the interface can end up with a ipv6
address, but no v6 link-local and no working neigbor discovery.

Removing this case statement will result in the link-local address
being configured by "ifconfig up" if the inet6 address was configured
before. If you are using inet6 on carp, put an "up" at the end of your
hostname.if. I will work on a better solution at g2k14.

ok henning, mpi

Revision 1.71 / (download) - annotate - [select for diffs], Thu Jun 26 13:08:25 2014 UTC (9 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.70: +2 -1 lines
Diff to previous 1.70 (colored)

Calling in{6,}_purgeaddr() is not enough to remove an address from
an interface.  Two other operations are performed when issuing a
SIOCDIFADDR{_IN6,} ioctl: call the address hook and the per-driver
ioctl function.

Since carp(4) relies on an address hook to recalculate its hash, make
sure to call this hook when IFXF_NOINET6 is set or when the rdomain is
changed.

ok henning@, mikeb@

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

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

Revision 1.69 / (download) - annotate - [select for diffs], Tue May 20 10:29:01 2014 UTC (10 years ago) by mpi
Branch: MAIN
Changes since 1.68: +4 -17 lines
Diff to previous 1.68 (colored)

Fix eui64 address generation, broken since the removal of the link-layer
address from the per-ifp list.

Found the hard way by weerd@, florian@ and stsp@, ok florian@

Revision 1.68 / (download) - annotate - [select for diffs], Tue Jan 21 10:18:26 2014 UTC (10 years, 4 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE, OPENBSD_5_5
Changes since 1.67: +1 -11 lines
Diff to previous 1.67 (colored)

Do not clean the multicast records of an interface when it is destroyed
(unplugged).  Even if it makes no sense to keep them around if the
interface is no more, we cannot safely remove them since pcb multicast
options might keep a pointer to them.

Fixes a user after free introduced by the multicast address linking
rewrite and reported by Alexey Suslikov, thanks!

ok claudio@

Revision 1.67 / (download) - annotate - [select for diffs], Mon Jan 13 23:03:52 2014 UTC (10 years, 4 months ago) by bluhm
Branch: MAIN
Changes since 1.66: +10 -10 lines
Diff to previous 1.66 (colored)

Call all local valiables of type struct in6_ifaddr "ia6".  This is
consistent with struct ifaddr "ifa" and struct in_ifaddr "ia".
OK mpi@

Revision 1.66 / (download) - annotate - [select for diffs], Tue Jan 7 16:34:05 2014 UTC (10 years, 5 months ago) by stsp
Branch: MAIN
Changes since 1.65: +15 -19 lines
Diff to previous 1.65 (colored)

Some follow-up fixes for IFID collision handling in IPv6CP.

Really change the link-local address in the unlikely event of an IFID
collision, instead of going into an infinite conf-nak loop with the peer.

To make the netinet6 code use the IPv6CP IFID in a new link-local address,
in6_ifattach_linklocal() must accept a provided IFID.  Replace the unused
'altifp' parameter with a new 'ifid' parameter for this purpose.

Always use the latest suggested address in IPv6CP replies, even if
the task to update the interface's address hasn't run yet.
Also, clear the ifindex (KAME hack) in addresses sent during IPv6CP.

ok mpi

Revision 1.65 / (download) - annotate - [select for diffs], Mon Jan 6 13:01:20 2014 UTC (10 years, 5 months ago) by stsp
Branch: MAIN
Changes since 1.64: +21 -1 lines
Diff to previous 1.64 (colored)

Make in6_ifdetach() remove the ff01::1 route for the detaching interface, too.
The route used to linger after an interface detached from IPv6.
ok mikeb

Revision 1.64 / (download) - annotate - [select for diffs], Thu Nov 28 10:16:44 2013 UTC (10 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.63: +11 -6 lines
Diff to previous 1.63 (colored)

Change the way protocol multicast addresses are linked to an interface.

Instead of linking multicast records to the first configured address of
the corresponding protocol, making this address and its position in the
global list special, add them to a new list directly linked to the
interface descriptor.

This new multicast address list is similar to the address list, all its
elements contain a protocol agnostic part.  This design allows us to
be able to join a multicast group without necessarily having a configured
address.  That means IPv6 multicast kludges are no longer needed.

Another benefit is to be able to add and remove an IP address from an
interface without worrying about multicast records.  That means that the
global IPv4 list is no longer needed since the first configured address
of an interface is no longer special.

This new list might also be extended in the future to contain the
link-layer addresses used to configure hardware filters.

Tested by sthen@ and weerd@, ok mikeb@

Revision 1.63 / (download) - annotate - [select for diffs], Tue Nov 19 09:00:43 2013 UTC (10 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.62: +1 -3 lines
Diff to previous 1.62 (colored)

Remove some FDDI/ATM leftovers.

ok mikeb@, henning@, deraadt@, brad@, miod@

Revision 1.62 / (download) - annotate - [select for diffs], Thu Oct 17 16:27:45 2013 UTC (10 years, 7 months ago) by bluhm
Branch: MAIN
Changes since 1.61: +2 -2 lines
Diff to previous 1.61 (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.61 / (download) - annotate - [select for diffs], Fri May 31 15:04:23 2013 UTC (11 years ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.60: +2 -2 lines
Diff to previous 1.60 (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.60 / (download) - annotate - [select for diffs], Tue Mar 26 00:14:18 2013 UTC (11 years, 2 months ago) by bluhm
Branch: MAIN
Changes since 1.59: +1 -51 lines
Diff to previous 1.59 (colored)

Remove a block of dead code in in6_ifdetach().  It was never executed
due to the wrong & in satosin6(&ifa->ifa_addr).  The link local
prefix fe80 was not checked within the IPv6 address, but within
some pointers of the interface address struct.  The whole loop
around this was also never executed as all IPv6 addresses had already
been purged.
OK sperreault@ mpi@ mikeb@

Revision 1.59 / (download) - annotate - [select for diffs], Mon Mar 25 14:40:57 2013 UTC (11 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.58: +5 -19 lines
Diff to previous 1.58 (colored)

Substitute the handcrafted list of IPv6 addresses by a proper TAILQ.

ok bluhm@, mikeb@

Revision 1.58 / (download) - annotate - [select for diffs], Thu Mar 7 09:03:16 2013 UTC (11 years, 3 months ago) by mpi
Branch: MAIN
Changes since 1.57: +3 -3 lines
Diff to previous 1.57 (colored)

Remove the IFAFREE() macro, the ifafree() function it was calling already
check for the reference counter.

ok mikeb@, miod@, pelikan@, kettenis@, krw@

Revision 1.57 / (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.56: +2 -2 lines
Diff to previous 1.56 (colored)

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

Revision 1.56 / (download) - annotate - [select for diffs], Wed Sep 19 09:47:25 2012 UTC (11 years, 8 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3
Changes since 1.55: +3 -8 lines
Diff to previous 1.55 (colored)

Use TAILQ_FOREACH macro for loops.  No binary diff.
OK henning@

Revision 1.55 / (download) - annotate - [select for diffs], Tue Aug 21 19:50:39 2012 UTC (11 years, 9 months ago) by bluhm
Branch: MAIN
Changes since 1.54: +1 -4 lines
Diff to previous 1.54 (colored)

Reverse the name and meaning of the IFXF_INET6_PRIVACY interface
flag.  It is now called IFXF_INET6_NOPRIVACY.  So IPv6 privacy
addresses are on by default without resetting the flag during
ifconfig down/up.
OK stsp@, sperreault@ (who wrote the same diff)

Revision 1.54 / (download) - annotate - [select for diffs], Wed Aug 15 14:00:32 2012 UTC (11 years, 9 months ago) by sperreault
Branch: MAIN
Changes since 1.53: +4 -1 lines
Diff to previous 1.53 (colored)

Enable IPv6 autoconfprivacy by default

diff originally by stsp@
"please commit it" deraadt@
"don't care" stsp@
"don't like" bluhm@

Revision 1.53 / (download) - annotate - [select for diffs], Tue Jan 3 23:41:51 2012 UTC (12 years, 5 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1
Changes since 1.52: +2 -2 lines
Diff to previous 1.52 (colored)

To access the ifaddr of an in_ifaddr or in6_ifaddr struct, it is
cleaner to access the first member via ia_ifa instead of casting.
No binary change.
ok henning@ krw@

Revision 1.52 / (download) - annotate - [select for diffs], Thu Nov 24 17:39:55 2011 UTC (12 years, 6 months ago) by sperreault
Branch: MAIN
Changes since 1.51: +8 -5 lines
Diff to previous 1.51 (colored)

rdomain support for IPv6
ok mikeb

Revision 1.51 / (download) - annotate - [select for diffs], Tue Apr 6 14:12:10 2010 UTC (14 years, 2 months ago) by stsp
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE, OPENBSD_5_0, OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.50: +24 -4 lines
Diff to previous 1.50 (colored)

Simple implementation of RFC4941, "Privacy Extensions for Stateless
Address Autoconfiguration in IPv6". For those among us who are paranoid
about broadcasting their MAC address to the IPv6 internet.

Man page help from jmc, testing by weerd, arc4random API hints from djm.

ok deraadt, claudio

Revision 1.50 / (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.49: +9 -9 lines
Diff to previous 1.49 (colored)

More destatic and ansification.

ok claudio@ naddy@

Revision 1.49 / (download) - annotate - [select for diffs], Wed Jan 13 02:13:12 2010 UTC (14 years, 5 months ago) by henning
Branch: MAIN
Changes since 1.48: +2 -2 lines
Diff to previous 1.48 (colored)

instead of fiddling with the per-interface address lists directly in
many places create a proper API (ifa_add / ifa_del) and use it.
ok theo ryan dlg

Revision 1.48 / (download) - annotate - [select for diffs], Fri Jan 30 10:47:46 2009 UTC (15 years, 4 months ago) by mcbride
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.47: +7 -4 lines
Diff to previous 1.47 (colored)

"XXX: should this be performed under splnet()?"... Yes, yes it should.
Interface configuration causes neighbour discoverery, which runs packets
through parts of the stack that require at least splsoftnet(), like pf and
pfsync.

ok dlg

Revision 1.47 / (download) - annotate - [select for diffs], Wed Jun 11 19:00:50 2008 UTC (16 years ago) by mcbride
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE, OPENBSD_4_4
Changes since 1.46: +26 -26 lines
Diff to previous 1.46 (colored)

ANSIfy to sync with KAME. From Karl Sjodahl <dunceor@gmail.com>.

ok todd deraadt naddy bluhm

Revision 1.46 / (download) - annotate - [select for diffs], Sun May 11 08:13:02 2008 UTC (16 years, 1 month ago) by claudio
Branch: MAIN
Changes since 1.45: +22 -9 lines
Diff to previous 1.45 (colored)

rtrequest to rtrequest1 conversion in inet6. With that no rtrequest should
be left over. OK henning@

Revision 1.45 / (download) - annotate - [select for diffs], Fri Jun 8 09:31:38 2007 UTC (17 years ago) by henning
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_3, OPENBSD_4_2_BASE, OPENBSD_4_2
Changes since 1.44: +1 -17 lines
Diff to previous 1.44 (colored)

kill arcnet leftovers, some pt out by Mike Belopuhov <mkb@crypt.org.ru>,
some I found afterwards, ok dlg

Revision 1.44 / (download) - annotate - [select for diffs], Wed Nov 15 03:07:44 2006 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE, OPENBSD_4_1
Changes since 1.43: +1 -5 lines
Diff to previous 1.43 (colored)

unifdef -USCOPEDROUTING

Revision 1.43 / (download) - annotate - [select for diffs], Thu Aug 31 12:37:31 2006 UTC (17 years, 9 months ago) by mcbride
Branch: MAIN
CVS Tags: OPENBSD_4_0_BASE, OPENBSD_4_0
Changes since 1.42: +11 -8 lines
Diff to previous 1.42 (colored)

Automatically add a IPv6 link-local address to carp interfaces when the
virtual MAC address is set. Among other things, this makes route6d work
correctly on systems with carp interfaces.

In order to ensure backwards compatibility, we do not include IPv6
link-local addresses in generating the HMAC, but we accept HMACs with AND
without the link-local addresses. They will be added to the HMAC in a future
release.

In short: this change should only affect backwards compatibility for
IPv6 users who are manually adding link-local addresses on carp interfaces.

testing mtu@ todd@
ok mpf@ henning@ deraadt@

Revision 1.42 / (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.41: +5 -5 lines
Diff to previous 1.41 (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.41 / (download) - annotate - [select for diffs], Sat May 27 23:40:27 2006 UTC (18 years ago) by claudio
Branch: MAIN
Changes since 1.40: +5 -1 lines
Diff to previous 1.40 (colored)

Do the same thing as for IPv4. Use a sysctl to enable/disable mfrowarding
and additionaly make the code part of the MROUTING option. Put it in deraadt@

Revision 1.40 / (download) - annotate - [select for diffs], Sun Mar 5 21:48:57 2006 UTC (18 years, 3 months ago) by miod
Branch: MAIN
Changes since 1.39: +11 -14 lines
Diff to previous 1.39 (colored)

Use more queue macros rather than doing it by hand; ok otto@ krw@

Revision 1.39 / (download) - annotate - [select for diffs], Mon May 23 20:10:14 2005 UTC (19 years ago) by mpf
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9, OPENBSD_3_8_BASE, OPENBSD_3_8
Changes since 1.38: +3 -2 lines
Diff to previous 1.38 (colored)

carp needs a multicast kludge storage.
Fixes PR 4211.
OK mcbride@

Revision 1.38 / (download) - annotate - [select for diffs], Thu Apr 21 23:34:01 2005 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.37: +1 -7 lines
Diff to previous 1.37 (colored)

remove (now obsolete) handling of IFT_PROPVIRTUAL/bridge*.  tested by camield@

Revision 1.37 / (download) - annotate - [select for diffs], Tue Dec 7 20:38:47 2004 UTC (19 years, 6 months ago) by mcbride
Branch: MAIN
CVS Tags: OPENBSD_3_7_BASE, OPENBSD_3_7
Changes since 1.36: +2 -1 lines
Diff to previous 1.36 (colored)

Convert carp(4) to behave more like a regular interface, much in the same
style as vlan(4). carp interfaces no longer require the physical interface
to be on the same subnet as the carp interface, or even that the physical
interface has an adress at all, so CARP can now be used on /30 networks.

ok deraadt@ henning@

Revision 1.6.2.10 / (download) - annotate - [select for diffs], Sat Jun 5 23:11:26 2004 UTC (20 years ago) by niklas
Branch: SMP
Changes since 1.6.2.9: +2 -1 lines
Diff to previous 1.6.2.9 (colored) to branchpoint 1.6 (colored) next main 1.7 (colored)

Merge with the trunk

Revision 1.36 / (download) - annotate - [select for diffs], Fri May 7 14:42:27 2004 UTC (20 years, 1 month ago) by millert
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A, OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.35: +3 -2 lines
Diff to previous 1.35 (colored)

Replace RSA-derived md5 code with code derived from Colin Plumb's PD version.
This moves md5.c out of libkern and into sys/crypto where it belongs (as
requested by markus@).  Note that md5.c is still mandatory (dev/rnd.c uses it).
Verified with IPsec + hmac-md5 and tcp md5sig. OK henning@ and hshoexer@

Revision 1.6.2.9 / (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.6.2.8: +5 -0 lines
Diff to previous 1.6.2.8 (colored) to branchpoint 1.6 (colored)

Merge of current from two weeks agointo the SMP branch

Revision 1.35 / (download) - annotate - [select for diffs], Tue Jul 8 10:23:32 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_5_BASE, OPENBSD_3_5, OPENBSD_3_4_BASE, OPENBSD_3_4
Changes since 1.34: +5 -1 lines
Diff to previous 1.34 (colored)

on interface removal, clear multicast forwarding stuff.  from kame

Revision 1.34 / (download) - annotate - [select for diffs], Sat Jun 28 14:42:16 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored)

i don't think pfsync needs a link-local addr.

Revision 1.21.2.3 / (download) - annotate - [select for diffs], Mon May 19 22:27:25 2003 UTC (21 years ago) by tedu
Branch: UBC
Changes since 1.21.2.2: +1 -14 lines
Diff to previous 1.21.2.2 (colored) to branchpoint 1.21 (colored) next main 1.22 (colored)

sync

Revision 1.6.2.8 / (download) - annotate - [select for diffs], Fri May 16 00:29:44 2003 UTC (21 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.6.2.7: +0 -13 lines
Diff to previous 1.6.2.7 (colored) to branchpoint 1.6 (colored)

merge the trunk so we will get the genfs and locking fixes

Revision 1.33 / (download) - annotate - [select for diffs], Wed May 14 05:23:37 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_A
Changes since 1.32: +1 -14 lines
Diff to previous 1.32 (colored)

it is unlikely that we introduce 6to4 interface (IFT_STF) to openbsd.

Revision 1.6.2.7 / (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.6.2.6: +261 -399 lines
Diff to previous 1.6.2.6 (colored) to branchpoint 1.6 (colored)

Sync the SMP branch with 3.3

Revision 1.21.2.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.21.2.1: +28 -22 lines
Diff to previous 1.21.2.1 (colored) to branchpoint 1.21 (colored)

sync to -current

Revision 1.32 / (download) - annotate - [select for diffs], Thu Sep 12 01:11:54 2002 UTC (21 years, 9 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_B, OPENBSD_3_3_BASE, OPENBSD_3_3, OPENBSD_3_2_BASE, OPENBSD_3_2
Changes since 1.31: +3 -1 lines
Diff to previous 1.31 (colored)

configure "next" pointer correctly.  from j@pureftpd.org

Revision 1.31 / (download) - annotate - [select for diffs], Wed Sep 11 03:27:30 2002 UTC (21 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.30: +6 -6 lines
Diff to previous 1.30 (colored)

fix pointer signedness mixup.  sync w/kame

Revision 1.30 / (download) - annotate - [select for diffs], Wed Sep 11 03:15:36 2002 UTC (21 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.29: +5 -5 lines
Diff to previous 1.29 (colored)

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

Revision 1.29 / (download) - annotate - [select for diffs], Tue Jun 11 07:36:00 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.28: +15 -11 lines
Diff to previous 1.28 (colored)

silence some of log(), as the codepath will be visited for IPv6-non-capable
interfaces too and can be annoying.  net.inet6.icmp6.nd6_debug will
re-enable them.

Revision 1.28 / (download) - annotate - [select for diffs], Tue Jun 11 07:04:07 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.27: +3 -3 lines
Diff to previous 1.27 (colored)

whitespace

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

Sync UBC branch to -current

Revision 1.27 / (download) - annotate - [select for diffs], Sat Jun 8 21:22:02 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.26: +236 -311 lines
Diff to previous 1.26 (colored)

sync with latest KAME in6_ifaddr/prefix/default router manipulation.
behavior changes:
- two iocts used by ndp(8) are now obsolete (backward compat provided).
  use sysctl path instead.
- lo0 does not get ::1 automatically.  it will get ::1 when lo0 comes up.

Revision 1.26 / (download) - annotate - [select for diffs], Fri Jun 7 04:34:45 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.25: +8 -12 lines
Diff to previous 1.25 (colored)

whitespace sync w/kame

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

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

Revision 1.24 / (download) - annotate - [select for diffs], Wed May 29 02:59:12 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.23: +1 -58 lines
Diff to previous 1.23 (colored)

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

Revision 1.23 / (download) - annotate - [select for diffs], Thu May 23 06:56:16 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.22: +2 -9 lines
Diff to previous 1.22 (colored)

simplify condition to perform DAD.  sync w/kame

Revision 1.6.2.6 / (download) - annotate - [select for diffs], Thu Mar 28 14:56:46 2002 UTC (22 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.6.2.5: +6 -6 lines
Diff to previous 1.6.2.5 (colored) to branchpoint 1.6 (colored)

Merge in -current from roughly a week ago

Revision 1.22 / (download) - annotate - [select for diffs], Thu Mar 14 01:27:11 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE, OPENBSD_3_1
Changes since 1.21: +7 -7 lines
Diff to previous 1.21 (colored)

First round of __P removal in sys

Revision 1.6.2.5 / (download) - annotate - [select for diffs], Wed Mar 6 02:15:08 2002 UTC (22 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.6.2.4: +4 -4 lines
Diff to previous 1.6.2.4 (colored) to branchpoint 1.6 (colored)

Merge in trunk

Revision 1.21 / (download) - annotate - [select for diffs], Fri Dec 7 09:16:07 2001 UTC (22 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_BASE
Branch point for: UBC
Changes since 1.20: +4 -4 lines
Diff to previous 1.20 (colored)

whitespace/comment sync with kame

Revision 1.6.2.4 / (download) - annotate - [select for diffs], Wed Oct 31 03:29:04 2001 UTC (22 years, 7 months ago) by nate
Branch: SMP
Changes since 1.6.2.3: +12 -5 lines
Diff to previous 1.6.2.3 (colored) to branchpoint 1.6 (colored)

Sync the SMP branch to something just after 3.0

Revision 1.20 / (download) - annotate - [select for diffs], Thu Aug 23 14:10:33 2001 UTC (22 years, 9 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE, OPENBSD_3_0
Changes since 1.19: +7 -4 lines
Diff to previous 1.19 (colored)

suppress printf() on non-multicast interface.
suppress ipv6 initialization for IFT_PFLOG.

Revision 1.19 / (download) - annotate - [select for diffs], Thu Aug 23 02:42:25 2001 UTC (22 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.18: +2 -1 lines
Diff to previous 1.18 (colored)

don't try to enable IPv6 on IFT_PFLOG.

Revision 1.18 / (download) - annotate - [select for diffs], Wed Jul 18 12:50:44 2001 UTC (22 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.17: +5 -2 lines
Diff to previous 1.17 (colored)

avoid using malloc() during interupt context for multicast kludge entry.
allocate it on interface initialization.

Revision 1.6.2.3 / (download) - annotate - [select for diffs], Wed Jul 4 10:55:20 2001 UTC (22 years, 11 months ago) by niklas
Branch: SMP
Changes since 1.6.2.2: +15 -16 lines
Diff to previous 1.6.2.2 (colored) to branchpoint 1.6 (colored)

Merge in -current from two days ago in the SMP branch.
As usual with merges, they do not indicate progress, so do not hold
your breath for working SMP, and do not mail me and ask about the
state of it.  It has not changed.  There is work ongoing, but very, very
slowly.  The commit is done in parts as to not lock up the tree in too
big chunks at a time.

Revision 1.17 / (download) - annotate - [select for diffs], Sat Jun 9 06:43:37 2001 UTC (23 years ago) by angelos
Branch: MAIN
Changes since 1.16: +15 -16 lines
Diff to previous 1.16 (colored)

No need for net/net_osdep.h

Revision 1.6.2.2 / (download) - annotate - [select for diffs], Mon May 14 22:40:17 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.6.2.1: +576 -401 lines
Diff to previous 1.6.2.1 (colored) to branchpoint 1.6 (colored)

merge in approximately 2.9 into SMP branch

Revision 1.16 / (download) - annotate - [select for diffs], Fri Feb 16 15:59:38 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE, OPENBSD_2_9
Changes since 1.15: +10 -3 lines
Diff to previous 1.15 (colored)

cosmetic sync with kame

Revision 1.15 / (download) - annotate - [select for diffs], Wed Feb 7 11:43:53 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.14: +23 -32 lines
Diff to previous 1.14 (colored)

by default, don't bark on inbound ND messages, as outsider may be able to
fill up /var with bogus packets.
setting net.inet6.icmp6.nd6_debug will re-enable kernel messages on invalid
ND packet and other occasions.

improve icmp6 stats.

Revision 1.14 / (download) - annotate - [select for diffs], Thu Jan 18 06:48:25 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.13: +3 -2 lines
Diff to previous 1.13 (colored)

do not remove default route by mistake, on interface removal.

Revision 1.13 / (download) - annotate - [select for diffs], Wed Oct 25 22:01:02 2000 UTC (23 years, 7 months ago) by jason
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE, OPENBSD_2_8
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored)

silence the "no multicast" warning for IFT_ENC, too
deraadt ok

Revision 1.12 / (download) - annotate - [select for diffs], Wed Oct 18 18:49:39 2000 UTC (23 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.11: +14 -2 lines
Diff to previous 1.11 (colored)

don't try to configure IPv6 on bridge*.  comment from deraadt

Revision 1.11 / (download) - annotate - [select for diffs], Mon Oct 2 04:45:03 2000 UTC (23 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.10: +5 -5 lines
Diff to previous 1.10 (colored)

fix missing \n.  from doug@freebsd (sync with kame)

Revision 1.10 / (download) - annotate - [select for diffs], Fri May 5 07:58:15 2000 UTC (24 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_7_BASE, OPENBSD_2_7
Changes since 1.9: +16 -5 lines
Diff to previous 1.9 (colored)

cope with interface detach (like pcmcia card removal).  remove any
IPv6 addresses assigned to the interface.  reported by ho, bunch of
help from niklas.   KAME PR 231.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Apr 27 15:40:37 2000 UTC (24 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.8: +2 -2 lines
Diff to previous 1.8 (colored)

correct in6_ifdetach().  free oia, not ia.
Lennart says there are more problems to go (I don't own openbsd-current laptop).
From: Lennart Augustsson <augustss@augustsson.net>

Revision 1.8 / (download) - annotate - [select for diffs], Mon Apr 17 04:44:50 2000 UTC (24 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.7: +545 -393 lines
Diff to previous 1.7 (colored)

revisit in6_ifattach().  (1) make it more persistent about initializaing an
interface (2) cleanup interface id selection.
run NUD on p2p interface (required by spec for bidir p2p interface).
add "ndp -i interface" (can tweak per-interface ND flag).
(sync with more recent kame)

Revision 1.6.2.1 / (download) - annotate - [select for diffs], Fri Mar 24 09:09:40 2000 UTC (24 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.6: +25 -4 lines
Diff to previous 1.6 (colored)

Sync with -current

Revision 1.7 / (download) - annotate - [select for diffs], Thu Mar 2 09:44:28 2000 UTC (24 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.6: +25 -4 lines
Diff to previous 1.6 (colored)

do not add ifa_dstaddr for non-pointopoint interface.  IPv6 has no
concept for "broadcast".

Revision 1.6 / (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.5: +3 -3 lines
Diff to previous 1.5 (colored)

fix include file path related to ip6.

Revision 1.5 / (download) - annotate - [select for diffs], Fri Feb 4 18:13:36 2000 UTC (24 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.4: +15 -1 lines
Diff to previous 1.4 (colored)

more coverage of in6_ifdetach()'s cleanup process.
bug fix in SIOCGIFADDR_IN6 (point to point case).

Revision 1.4 / (download) - annotate - [select for diffs], Wed Feb 2 17:16:52 2000 UTC (24 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.3: +24 -1 lines
Diff to previous 1.3 (colored)

- improve in6_ifdetach to remove (1) multicast kludge list (2) route to
  link-local allnode multicast (ff02:x::/32)
- fix ifnet refcnt'ing in multicast kludge list management.
- avoid dangling pointer in multicast kludge management.

(angelos, try this version of in6_ifdetach() - it should be better)

Revision 1.3 / (download) - annotate - [select for diffs], Fri Dec 10 12:34:45 1999 UTC (24 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.2: +10 -10 lines
Diff to previous 1.2 (colored)

use proper type for in6_first_ifid (char -> u_int8_t)
suggested by: deraadt

Revision 1.2 / (download) - annotate - [select for diffs], Fri Dec 10 10:04:27 1999 UTC (24 years, 6 months ago) by angelos
Branch: MAIN
Changes since 1.1: +4 -86 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.