OpenBSD CVS

CVS log for src/sys/netinet6/in6_var.h


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

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.80 / (download) - annotate - [select for diffs], Mon May 13 01:15:53 2024 UTC (4 weeks ago) by jsg
Branch: MAIN
CVS Tags: HEAD
Changes since 1.79: +1 -4 lines
Diff to previous 1.79 (colored)

remove prototypes with no matching function
ok mpi@

Revision 1.79 / (download) - annotate - [select for diffs], Sun Apr 21 17:32:11 2024 UTC (7 weeks, 1 day ago) by florian
Branch: MAIN
Changes since 1.78: +2 -1 lines
Diff to previous 1.78 (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.78 / (download) - annotate - [select for diffs], Wed Nov 23 07:57:39 2022 UTC (18 months, 2 weeks ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3
Changes since 1.77: +1 -6 lines
Diff to previous 1.77 (colored)

Recommit previous "Remove useless struct in6_ifextra"

This was the right diff after all, I just confused myself between trees.

OK bluhm
---
  Remove useless struct in6_ifextra

  in6_var.h r1.75 removed all other struct members.

  Now It only contains a single struct nd_ifinfo pointer, so address family
  specific data might as well be just that.

  ND_IFINFO() is the only way nd6_nbr.c and nd6.c access this data, there is
  no other usage of if_afdata[].

  One allocation and unhelpful indirection less per interface.

  All under _KERNEL.

  OK claudio

Revision 1.77 / (download) - annotate - [select for diffs], Tue Nov 22 19:28:29 2022 UTC (18 months, 2 weeks ago) by kn
Branch: MAIN
Changes since 1.76: +5 -0 lines
Diff to previous 1.76 (colored)

Backout "Remove useless struct in6_ifextra" commit

I committed the wrong iteration of this diff, sorry for the noise.

Revision 1.76 / (download) - annotate - [select for diffs], Tue Nov 22 14:51:01 2022 UTC (18 months, 2 weeks ago) by kn
Branch: MAIN
Changes since 1.75: +1 -6 lines
Diff to previous 1.75 (colored)

Remove useless struct in6_ifextra

in6_var.h r1.75 removed all other struct members.

Now It only contains a single struct nd_ifinfo pointer, so address family
specific data might as well be just that.

ND_IFINFO() is the only way nd6_nbr.c and nd6.c access this data, there is
no other usage of if_afdata[].

One allocation and unhelpful indirection less per interface.

All under _KERNEL.

OK claudio

Revision 1.75 / (download) - annotate - [select for diffs], Sat Nov 12 16:36:07 2022 UTC (18 months, 4 weeks ago) by kn
Branch: MAIN
Changes since 1.74: +1 -4 lines
Diff to previous 1.74 (colored)

Remove unused fields from struct in6_ifextra

This is all under _KERNEL:
- rs_lhcookie was added in 2014 110585f259f4974284e531f0a1e121b001a580dc
  "Move sending of router solicitations to the kernel; [...]"
  but never used
- nprefixes and ndefrouters became obsolete with 2017
  4a2f474d14c160dc7829cce0149ead09d473ece9
  "Remove sending of router solicitations and processing of router
   advertisements from the kernel. [...]"

OK mpi

Revision 1.74 / (download) - annotate - [select for diffs], Sun Jan 2 22:36:04 2022 UTC (2 years, 5 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1
Changes since 1.73: +2 -2 lines
Diff to previous 1.73 (colored)

spelling
ok jmc@ reads ok tb@

Revision 1.73 / (download) - annotate - [select for diffs], Fri Jul 3 17:42:50 2020 UTC (3 years, 11 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9, OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.72: +2 -2 lines
Diff to previous 1.72 (colored)

Rename IN6_IFF_PRIVACY to IN6_IFF_TEMPORARY.
This is the name the other BSDs use for this, there is no reason to
be different, the IPv6 RFCs call these addresses temporary, and some
software in ports wants to use this as well.
Most recently pointed out for firefox by landry.
OK claudio, sthen

Revision 1.72 / (download) - annotate - [select for diffs], Sun May 6 15:21:25 2018 UTC (6 years, 1 month ago) by florian
Branch: MAIN
CVS Tags: 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
Changes since 1.71: +1 -4 lines
Diff to previous 1.71 (colored)

Nuke unused ia6_createtime struct member.
OK tb

Revision 1.71 / (download) - annotate - [select for diffs], Thu Oct 26 15:05:41 2017 UTC (6 years, 7 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE, OPENBSD_6_3
Changes since 1.70: +11 -24 lines
Diff to previous 1.70 (colored)

Kill deprecated IPv6 ioctl(2)s.

ok florian@, sthen@, jsg@

Revision 1.70 / (download) - annotate - [select for diffs], Tue Oct 24 09:36:13 2017 UTC (6 years, 7 months ago) by jsg
Branch: MAIN
Changes since 1.69: +1 -5 lines
Diff to previous 1.69 (colored)

remove defines for ioctls the kernel doesn't recognise
ok mpi@

Revision 1.69 / (download) - annotate - [select for diffs], Tue Aug 15 06:08:52 2017 UTC (6 years, 9 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE, OPENBSD_6_2
Changes since 1.68: +1 -2 lines
Diff to previous 1.68 (colored)

After we stopped processing router advertisements in the kernel
sppp_update_ip6_addr() became the last user of n6_are_prefix_equal().
Since it compares /128 prefixes it doesn't need all the bells and
whistles and can be converted to a memcmp. Remove the now unused
n6_are_prefix_equal().
OK bluhm, mpi

Revision 1.68 / (download) - annotate - [select for diffs], Sun Aug 6 08:15:58 2017 UTC (6 years, 10 months ago) by florian
Branch: MAIN
Changes since 1.67: +2 -2 lines
Diff to previous 1.67 (colored)

in6_leavegroup can't fail; OK phessler

Revision 1.67 / (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.66: +1 -4 lines
Diff to previous 1.66 (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.66 / (download) - annotate - [select for diffs], Mon Mar 6 08:59:07 2017 UTC (7 years, 3 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE, OPENBSD_6_1
Changes since 1.65: +1 -4 lines
Diff to previous 1.65 (colored)

Kill global list of IPv6 addresses.

ok bluhm@

Revision 1.65 / (download) - annotate - [select for diffs], Thu Feb 9 15:23:35 2017 UTC (7 years, 4 months ago) by jca
Branch: MAIN
Changes since 1.64: +1 -2 lines
Diff to previous 1.64 (colored)

percpu counters for raw ipv6 and icmp6 stats

ok mpi@

Revision 1.64 / (download) - annotate - [select for diffs], Tue Jul 5 10:17:14 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE, OPENBSD_6_0
Changes since 1.63: +1 -4 lines
Diff to previous 1.63 (colored)

Expand IN6_IFF_NOTREADY, ok bluhm@

Revision 1.63 / (download) - annotate - [select for diffs], Mon Jun 13 10:34:40 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.62: +2 -1 lines
Diff to previous 1.62 (colored)

Move the ioctl(2) logic of in{,6}_control() into two new functions
in{,6}_ioctl() that do not deal with sockets.

This will allow to automagically configure interface addresses in
the kernel without too many layer violations.

Required by upcoming umb(4).

Revision 1.62 / (download) - annotate - [select for diffs], Thu Mar 3 12:57:15 2016 UTC (8 years, 3 months ago) by jca
Branch: MAIN
Changes since 1.61: +0 -94 lines
Diff to previous 1.61 (colored)

Kill IPv6 prefix and router renumbering ioctls.

Router renumbering was never supported, prefix ioctls were deprecated
~15 years ago.  Move some items in netinet6/nd6.h where they are still
used.

ok mikeb@ mpi@

Revision 1.61 / (download) - annotate - [select for diffs], Thu Mar 3 12:51:51 2016 UTC (8 years, 3 months ago) by jca
Branch: MAIN
Changes since 1.60: +1 -11 lines
Diff to previous 1.60 (colored)

Delete all traces of SIOCSIF(ADDR|DSTADDR|NETMASK)_IN6

Those ioctls never made sense, IPv6 was designed right from the start
with support for multiple addresses by interface.

ok mikeb@ mpi@

Revision 1.60 / (download) - annotate - [select for diffs], Sun Feb 28 07:15:34 2016 UTC (8 years, 3 months ago) by stefan
Branch: MAIN
Changes since 1.59: +1 -2 lines
Diff to previous 1.59 (colored)

Remove SIOCSIFALIFETIME_IN6 ioctl, as NetBSD did.

As described in NetBSD kern/35897 PR, the parameters
this ioctl needs overlay each other in a union. The ioctl
cannot have worked properly.

Discovered while discussing overflow checks with mmcc@ and mpi@
The checks were part of the removed code.

ok deraadt@

Revision 1.59 / (download) - annotate - [select for diffs], Thu Jan 21 11:23:48 2016 UTC (8 years, 4 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE, OPENBSD_5_9
Changes since 1.58: +2 -1 lines
Diff to previous 1.58 (colored)

Introduce in{,6}_hasmulti(), two functions to check in the hot path if
an interface joined a specific multicast group.

ok phessler@, visa@, dlg@

Revision 1.58 / (download) - annotate - [select for diffs], Wed Nov 18 13:58:02 2015 UTC (8 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.57: +1 -2 lines
Diff to previous 1.57 (colored)

Factorize the bits to check if a L2 route is connected, wether it is
attached to a carp(4) or bridge(4) member, to not dereference rt_ifp
directly.

ok visa@

Revision 1.57 / (download) - annotate - [select for diffs], Mon Oct 5 01:22:34 2015 UTC (8 years, 8 months ago) by deraadt
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored)

user land -> userland; from Rob Pierce

Revision 1.56 / (download) - annotate - [select for diffs], Thu Sep 10 16:39:39 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.55: +1 -8 lines
Diff to previous 1.55 (colored)

Kill in6_ifstat_inc() and associated per-ifp storage.

The SIOCGIFSTAT_IN6 is no longer supported.

ok mikeb@, claudio@, dlg@

Revision 1.55 / (download) - annotate - [select for diffs], Wed Sep 9 15:51:40 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.54: +1 -2 lines
Diff to previous 1.54 (colored)

Kill icmp6_ifstat_inc() and associated per-ifp storage.

The SIOCGIFSTAT_ICMP6 is no longer supported.

ok dlg@, mikeb@, claudio@

Revision 1.54 / (download) - annotate - [select for diffs], Tue Sep 1 17:21:36 2015 UTC (8 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.53: +2 -3 lines
Diff to previous 1.53 (colored)

Kill unused ``ia_net'' field in the struct in6_ifaddr, bad copy
paste from the IPv4 time.

While here update the comment about ``ia6_ndpr'' it's now only
used for autoconf.

Revision 1.53 / (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.52: +1 -4 lines
Diff to previous 1.52 (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.52 / (download) - annotate - [select for diffs], Wed Jul 8 08:48:34 2015 UTC (8 years, 11 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE, OPENBSD_5_8
Changes since 1.51: +2 -2 lines
Diff to previous 1.51 (colored)

Pass an interface index instead of a pointer to in6_addr2scopeid().

ok millert@

Revision 1.51 / (download) - annotate - [select for diffs], Thu Nov 20 09:55:57 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE, OPENBSD_5_7
Changes since 1.50: +1 -2 lines
Diff to previous 1.50 (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.50 / (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.49: +2 -1 lines
Diff to previous 1.49 (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.49 / (download) - annotate - [select for diffs], Thu Apr 3 08:22:10 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE, OPENBSD_5_6
Changes since 1.48: +1 -3 lines
Diff to previous 1.48 (colored)

Introduce rt_ifa_{add,del}loop() to replace in6_{add,rem}loop().

Move these functions to a more generic place and make them reuse
existing code, they'll be soon used in IPv4 too.

Tested by André Lucas, Vigdis and sthen@, thanks!

ok sthen@

Revision 1.48 / (download) - annotate - [select for diffs], Thu Mar 27 10:39:23 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.47: +2 -2 lines
Diff to previous 1.47 (colored)

Stop mixing interface address flags with routing entry ones.

Instead of always copying ifa_flags to the routing entry flags when
creating a route by calling rtinit(), explicitly pass the RTF_CLONING
flag when required.  This means ifa_flags are now *only* used to check
if an address has an associated route that was created by the kernel
auto-magically.

ok benno@

Revision 1.47 / (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.46: +2 -2 lines
Diff to previous 1.46 (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.46 / (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.45: +25 -49 lines
Diff to previous 1.45 (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.45 / (download) - annotate - [select for diffs], Fri Nov 22 07:59:09 2013 UTC (10 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.44: +2 -3 lines
Diff to previous 1.44 (colored)

Remove unused proc argument in in6_control().

ok henning@, mikeb@

Revision 1.44 / (download) - annotate - [select for diffs], Thu Oct 24 11:31:43 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.43: +1 -14 lines
Diff to previous 1.43 (colored)

Remove the number of in6_var.h inclusions by moving some functions and
global variables to in6.h.

ok deraadt@

Revision 1.43 / (download) - annotate - [select for diffs], Thu Oct 24 11:20:18 2013 UTC (10 years, 7 months ago) by deraadt
Branch: MAIN
Changes since 1.42: +5 -7 lines
Diff to previous 1.42 (colored)

Significant namespace cleanup of netinet6 symbols.

One worrying bit is in icmp6.h where some htols() and htonl() are
added, which may affect compatibility down the line.  This component
can be reverted if issues show up.  Ports tree greps indicate no issue.

ok claudio mpi etc

Revision 1.42 / (download) - annotate - [select for diffs], Mon Oct 14 11:07:42 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.41: +22 -58 lines
Diff to previous 1.41 (colored)

Change the macros used to iterate over the multicast records of an
interface to not depend on the global list of addresses.

For IPv4 the IP_TO_IA() macro still depends on the global list of
addresses because we want to be sure to grab the first configured
address of an interface, where the records are linked.

Tested by sthen@, ok henning@

Revision 1.41 / (download) - annotate - [select for diffs], Mon Aug 26 07:15:58 2013 UTC (10 years, 9 months ago) by bluhm
Branch: MAIN
Changes since 1.40: +1 -6 lines
Diff to previous 1.40 (colored)

No one uses the obsolete IPv6 ioctls SIOCGDRLST_IN6, SIOCGPRLST_IN6,
OSIOCGIFINFO_IN6 anymore.  Remove them together with the structs
in6_drlist, in6_oprlist, in6_prlist, in6_ondireq and the kernel
implementation.
OK mikeb@ henning@

Revision 1.40 / (download) - annotate - [select for diffs], Mon Jun 17 18:02:24 2013 UTC (10 years, 11 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE, OPENBSD_5_4
Changes since 1.39: +1 -2 lines
Diff to previous 1.39 (colored)

Remove unused field ia_plen from struct in6_ifaddr.  The prefix
length is always calculated on demand from ia_prefixmask.
OK claudio@ mpi@ henning@

Revision 1.39 / (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.38: +7 -5 lines
Diff to previous 1.38 (colored)

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

ok bluhm@, mikeb@

Revision 1.38 / (download) - annotate - [select for diffs], Fri Mar 22 01:41:12 2013 UTC (11 years, 2 months ago) by tedu
Branch: MAIN
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)

simple replacement of LIST_END with NULL. ok mpi

Revision 1.37 / (download) - annotate - [select for diffs], Mon Mar 11 14:08:04 2013 UTC (11 years, 3 months ago) by mpi
Branch: MAIN
Changes since 1.36: +1 -4 lines
Diff to previous 1.36 (colored)

Remove unused code manipulating a default interface and its index,
This is a leftover from the on-link assumption behavior removal,
which has been deprecated by RFC4861 anyway.

ok mikeb@, bluhm@, florian@

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

When deleting an IPv6 interface address, also remove the prefix and
the cloning route.
bug report and test Florian Riehm; original fix sperreault@; OK claudio@

Revision 1.35 / (download) - annotate - [select for diffs], Sun Nov 11 04:45:44 2012 UTC (11 years, 7 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE, OPENBSD_5_3
Changes since 1.34: +8 -2 lines
Diff to previous 1.34 (colored)

align ifaliasreq.ifra_addr similar to the way that ifreq is fixed --
a gruesome union, to block the compiler from placing the struct
incorrectly aligned on stack frames
ok guenther

Revision 1.34 / (download) - annotate - [select for diffs], Thu Oct 13 18:23:40 2011 UTC (12 years, 8 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_5_2_BASE, OPENBSD_5_2, OPENBSD_5_1_BASE, OPENBSD_5_1
Changes since 1.33: +1 -2 lines
Diff to previous 1.33 (colored)

Since the IPv6 madness is not enough introduce NAT64 -- which is actually
"af-to" a generic IP version translator for pf(4).
Not everything perfect yet but lets fix these things in the tree.
Insane amount of work done by sperreault@, mikeb@ and reyk@.
Looked over by mcbride@ henning@ and myself at eurobsdcon.
OK mcbride@ and general put it in from deraadt@

Revision 1.33 / (download) - annotate - [select for diffs], Tue Jul 26 21:19:51 2011 UTC (12 years, 10 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_0_BASE, OPENBSD_5_0
Changes since 1.32: +2 -3 lines
Diff to previous 1.32 (colored)

Accept neighbor discovery packets from source IPv6 addresses for
which we have a cloning or cloned route.  The old check was based
on configured interface addresses, now we use a route lookup.  This
allows us to use prefixes for the local network that ospf6d has
added.
ok claudio@

Revision 1.32 / (download) - annotate - [select for diffs], Thu Jul 8 19:42:46 2010 UTC (13 years, 11 months ago) by jsg
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE, OPENBSD_4_9, OPENBSD_4_8_BASE, OPENBSD_4_8
Changes since 1.31: +1 -3 lines
Diff to previous 1.31 (colored)

remove some unused netinet6 code
ok stsp@ henning@ claudio@

Revision 1.31 / (download) - annotate - [select for diffs], Tue Apr 6 14:12:10 2010 UTC (14 years, 2 months ago) by stsp
Branch: MAIN
Changes since 1.30: +2 -1 lines
Diff to previous 1.30 (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.29.2.1 / (download) - annotate - [select for diffs], Sun Nov 2 04:02:10 2008 UTC (15 years, 7 months ago) by brad
Branch: OPENBSD_4_4
Changes since 1.29: +3 -1 lines
Diff to previous 1.29 (colored) next main 1.30 (colored)

If a neighbor solictation isn't from the unspecified address, make sure
that the source address matches one of the interfaces address prefixes.

Revision 1.28.8.1 / (download) - annotate - [select for diffs], Thu Oct 2 17:28:35 2008 UTC (15 years, 8 months ago) by brad
Branch: OPENBSD_4_3
Changes since 1.28: +3 -1 lines
Diff to previous 1.28 (colored) next main 1.29 (colored)

If a neighbor solictation isn't from the unspecified address, make sure
that the source address matches one of the interfaces address prefixes.

Revision 1.28.6.1 / (download) - annotate - [select for diffs], Thu Oct 2 17:28:12 2008 UTC (15 years, 8 months ago) by brad
Branch: OPENBSD_4_2
Changes since 1.28: +3 -1 lines
Diff to previous 1.28 (colored) next main 1.29 (colored)

If a neighbor solictation isn't from the unspecified address, make sure
that the source address matches one of the interfaces address prefixes.

Revision 1.30 / (download) - annotate - [select for diffs], Wed Oct 1 21:17:06 2008 UTC (15 years, 8 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_4_7_BASE, OPENBSD_4_7, OPENBSD_4_6_BASE, OPENBSD_4_6, OPENBSD_4_5_BASE, OPENBSD_4_5
Changes since 1.29: +3 -1 lines
Diff to previous 1.29 (colored)

If a neighbor solictation isn't from the unspecified address, make sure
that the source address matches one of the interfaces address prefixes.
From NetBSD, tested by todd@ and naddy@

Revision 1.29 / (download) - annotate - [select for diffs], Wed Jun 11 06:30:36 2008 UTC (16 years ago) by mcbride
Branch: MAIN
CVS Tags: OPENBSD_4_4_BASE
Branch point for: OPENBSD_4_4
Changes since 1.28: +3 -1 lines
Diff to previous 1.28 (colored)

From KAME, allow adjustable limits on NDP entries and discovered routes.

ok mpf naddy

Revision 1.28 / (download) - annotate - [select for diffs], Thu Jul 6 02:56:58 2006 UTC (17 years, 11 months ago) by brad
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE, OPENBSD_4_2_BASE, OPENBSD_4_1_BASE, OPENBSD_4_1, OPENBSD_4_0_BASE, OPENBSD_4_0
Branch point for: OPENBSD_4_3, OPENBSD_4_2
Changes since 1.27: +55 -55 lines
Diff to previous 1.27 (colored)

u_quad_t -> u_int64_t

no functional change.

Revision 1.27 / (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.26: +8 -8 lines
Diff to previous 1.26 (colored)

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

Revision 1.26 / (download) - annotate - [select for diffs], Sun Dec 11 17:21:53 2005 UTC (18 years, 6 months ago) by deraadt
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE, OPENBSD_3_9
Changes since 1.25: +11 -11 lines
Diff to previous 1.25 (colored)

bitfields must be off an int or such type

Revision 1.25 / (download) - annotate - [select for diffs], Mon Sep 19 19:36:49 2005 UTC (18 years, 8 months ago) by brad
Branch: MAIN
Changes since 1.24: +1 -2 lines
Diff to previous 1.24 (colored)

remove the unused in6_ifindex2scopeid()
if at all, it works with site-local addresses whose fate is uncertain
to say the least

From drochner NetBSD

ok deraadt@

Revision 1.24 / (download) - annotate - [select for diffs], Wed Jun 16 02:38:23 2004 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_8_BASE, OPENBSD_3_8, OPENBSD_3_7_BASE, OPENBSD_3_7, OPENBSD_3_6_BASE, OPENBSD_3_6
Changes since 1.23: +2 -2 lines
Diff to previous 1.23 (colored)

missing paren in macro def.  Patrick Latifi

Revision 1.8.2.7 / (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.8.2.6: +11 -7 lines
Diff to previous 1.8.2.6 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored)

Merge of current from two weeks agointo the SMP branch

Revision 1.23 / (download) - annotate - [select for diffs], Tue Jan 13 06:28:16 2004 UTC (20 years, 5 months ago) by mcbride
Branch: MAIN
CVS Tags: SMP_SYNC_B, SMP_SYNC_A, OPENBSD_3_5_BASE, OPENBSD_3_5
Changes since 1.22: +3 -1 lines
Diff to previous 1.22 (colored)

Expose in6_ifremloop() and in6_ifaddloop() so that they can be used by carp.

ok henning@ millert@ itojun@

Revision 1.22 / (download) - annotate - [select for diffs], Wed Oct 15 23:35:42 2003 UTC (20 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.21: +9 -7 lines
Diff to previous 1.21 (colored)

c++ friendly, sync w/kame.  pvalchev ok

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

Sync SMP branch to -current

Revision 1.21 / (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.20: +2 -6 lines
Diff to previous 1.20 (colored)

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

Revision 1.8.2.5 / (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.8.2.4: +50 -37 lines
Diff to previous 1.8.2.4 (colored) to branchpoint 1.8 (colored)

Sync the SMP branch with 3.3

Revision 1.13.4.1 / (download) - annotate - [select for diffs], Tue Jun 11 03:31:37 2002 UTC (22 years ago) by art
Branch: UBC
Changes since 1.13: +67 -54 lines
Diff to previous 1.13 (colored) next main 1.14 (colored)

Sync UBC branch to -current

Revision 1.20 / (download) - annotate - [select for diffs], Sat Jun 8 21:22:02 2002 UTC (22 years 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.19: +26 -16 lines
Diff to previous 1.19 (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.19 / (download) - annotate - [select for diffs], Sat Jun 8 00:06:58 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 (colored)

in6_len2mask is a duplicate of in6_prefixlen2mask.  unify.  sync w/kame

Revision 1.18 / (download) - annotate - [select for diffs], Fri Jun 7 15:00:55 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.17: +17 -19 lines
Diff to previous 1.17 (colored)

style

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

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

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

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

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

simplify condition to perform DAD.  sync w/kame

Revision 1.8.2.4 / (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.8.2.3: +37 -37 lines
Diff to previous 1.8.2.3 (colored) to branchpoint 1.8 (colored)

Merge in -current from roughly a week ago

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

First round of __P removal in sys

Revision 1.8.2.3 / (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.8.2.2: +2 -1 lines
Diff to previous 1.8.2.2 (colored) to branchpoint 1.8 (colored)

Sync the SMP branch to something just after 3.0

Revision 1.13 / (download) - annotate - [select for diffs], Wed Jul 18 12:50:44 2001 UTC (22 years, 10 months ago) by itojun
Branch: MAIN
CVS Tags: UBC_BASE, OPENBSD_3_0_BASE, OPENBSD_3_0
Branch point for: UBC
Changes since 1.12: +2 -1 lines
Diff to previous 1.12 (colored)

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

Revision 1.8.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.8.2.1: +17 -8 lines
Diff to previous 1.8.2.1 (colored) to branchpoint 1.8 (colored)

merge in approximately 2.9 into SMP branch

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

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

Revision 1.11 / (download) - annotate - [select for diffs], Fri Feb 16 08:22:06 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.10: +2 -2 lines
Diff to previous 1.10 (colored)

kill register declarations.  to sync with kame better.

Revision 1.10 / (download) - annotate - [select for diffs], Mon Apr 17 04:44:50 2000 UTC (24 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE, OPENBSD_2_8, OPENBSD_2_7_BASE, OPENBSD_2_7
Changes since 1.9: +8 -6 lines
Diff to previous 1.9 (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.8.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.8: +21 -3 lines
Diff to previous 1.8 (colored)

Sync with -current

Revision 1.9 / (download) - annotate - [select for diffs], Mon Feb 28 11:55:22 2000 UTC (24 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.8: +21 -3 lines
Diff to previous 1.8 (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.8 / (download) - annotate - [select for diffs], Fri Feb 4 18:13:36 2000 UTC (24 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: SMP_BASE
Branch point for: SMP
Changes since 1.7: +3 -1 lines
Diff to previous 1.7 (colored)

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

Revision 1.7 / (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.6: +2 -1 lines
Diff to previous 1.6 (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.6 / (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.5: +1 -85 lines
Diff to previous 1.5 (colored)

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

Revision 1.5 / (download) - annotate - [select for diffs], Fri Dec 10 08:53:17 1999 UTC (24 years, 6 months ago) by angelos
Branch: MAIN
Changes since 1.4: +2 -0 lines
Diff to previous 1.4 (colored)

Add RCS tags, remove unused header files and code, remove a few
unnecessary ifdefs...

Revision 1.4 / (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
Changes since 1.3: +644 -197 lines
Diff to previous 1.3 (colored)

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

Revision 1.3 / (download) - annotate - [select for diffs], Wed Feb 24 04:36:42 1999 UTC (25 years, 3 months ago) by cmetz
Branch: MAIN
CVS Tags: OPENBSD_2_6_BASE, OPENBSD_2_6, OPENBSD_2_5_BASE, OPENBSD_2_5
Changes since 1.2: +29 -22 lines
Diff to previous 1.2 (colored)

Synchronized changes needed to integrate into OpenBSD with the NRL source
tree so we can have a unified netinet6 directory.

Revision 1.2 / (download) - annotate - [select for diffs], Fri Jan 8 00:50:38 1999 UTC (25 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +26 -23 lines
Diff to previous 1.1 (colored)

use _KERNEL, add ipv6intrq decl

Revision 1.1 / (download) - annotate - [select for diffs], Wed Jan 6 23:26:56 1999 UTC (25 years, 5 months ago) by deraadt
Branch: MAIN

first few files of NRL ipv6.  This NRL release was officially exported
to me by US DOD officials, with the crypto already removed.

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.