Up to [local] / src / sys / netinet6
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.151 / (download) - annotate - [select for diffs], Sun Jul 30 12:52:03 2023 UTC (10 months, 1 week ago) by krw
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE,
OPENBSD_7_5,
OPENBSD_7_4_BASE,
OPENBSD_7_4,
HEAD
Changes since 1.150: +8 -5 lines
Diff to previous 1.150 (colored)
Check for NULL before de-referencing a pointer, not after. More complete solution after tb@ pointed out what Coverity missed. ok tb@
Revision 1.150 / (download) - annotate - [select for diffs], Sat Jul 29 15:59:27 2023 UTC (10 months, 1 week ago) by krw
Branch: MAIN
Changes since 1.149: +3 -3 lines
Diff to previous 1.149 (colored)
Check for NULL before de-referencing a pointer, not after. Coverity CID #1566406 ok phessler@
Revision 1.149 / (download) - annotate - [select for diffs], Sun May 7 16:23:24 2023 UTC (13 months ago) by bluhm
Branch: MAIN
Changes since 1.148: +2 -2 lines
Diff to previous 1.148 (colored)
I preparation for TSO in software, cleanup the fragment code. Use if_output_ml() to send mbuf lists to interfaces. This can be used for TSO, fragments, ARP and ND6. Rename variable fml to ml. In pf_route6() split the if else block. Put the safety check (hlen + firstlen < tlen) into ip_fragment(). It makes the code correct in case the packet is too short to be fragmented. This should not happen, but other functions also have this logic. No functional change. OK sashan@
Revision 1.148 / (download) - annotate - [select for diffs], Thu May 4 06:56:56 2023 UTC (13 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.147: +2 -2 lines
Diff to previous 1.147 (colored)
Introduce a neighbor discovery mutex like ARP uses it. For now it only protects nd6_list. It does not unlock ND6 from kernel lock yet. OK kn@
Revision 1.147 / (download) - annotate - [select for diffs], Tue May 2 06:06:13 2023 UTC (13 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.146: +5 -6 lines
Diff to previous 1.146 (colored)
Call nd6_ns_output() without kernel lock from nd6_resolve(). OK kn@
Revision 1.146 / (download) - annotate - [select for diffs], Fri Apr 28 14:09:06 2023 UTC (13 months, 1 week ago) by phessler
Branch: MAIN
Changes since 1.145: +31 -2 lines
Diff to previous 1.145 (colored)
Inbound portion of RFC9131. Routers can create new neighbor cache entries when receiving a valid Neighbor Advertisement. OK florian@ kn@
Revision 1.145 / (download) - annotate - [select for diffs], Tue Apr 25 15:41:17 2023 UTC (13 months, 2 weeks ago) by phessler
Branch: MAIN
Changes since 1.144: +9 -1 lines
Diff to previous 1.144 (colored)
When configuring a new address on an interface, an upstream router doesn't know where to send traffic. This will send an unsolicited neighbor advertisement, as described in RFC9131, to the all-routers multicast address so all routers on the same link will learn the path back to the address. This is intended to speed up the first return packet on an IPv6 interface. OK florian@
Revision 1.144 / (download) - annotate - [select for diffs], Wed Apr 5 19:35:23 2023 UTC (14 months ago) by bluhm
Branch: MAIN
Changes since 1.143: +9 -31 lines
Diff to previous 1.143 (colored)
ARP has a queue of packets that should be sent after name resolution. ND6 did only hold a single packet. Unify the logic and add a mbuf hold queue to struct llinfo_nd6. This is MP safe and queue limits are tracked with atomic operations. New function if_mqoutput() has common code for ARP and ND6. ln_saddr6 holds the source address of the requesting packet. That is easier than fiddling with mbuf queue in nd6_ns_output(). OK kn@
Revision 1.143 / (download) - annotate - [select for diffs], Fri Mar 31 19:43:33 2023 UTC (14 months, 1 week ago) by bluhm
Branch: MAIN
Changes since 1.142: +8 -7 lines
Diff to previous 1.142 (colored)
Fix white space.
Revision 1.142 / (download) - annotate - [select for diffs], Fri Jan 6 14:17:15 2023 UTC (17 months ago) by kn
Branch: MAIN
CVS Tags: OPENBSD_7_3_BASE,
OPENBSD_7_3
Changes since 1.141: +15 -22 lines
Diff to previous 1.141 (colored)
Merge common code into new nd6_dad_destroy() The current code wrt. stopping DAD for and removing a particular IP from the list is flawed. Introduce a single nd6_dad_destroy() to the cleanup, so that there's only one place to fix. This is just a mechanical deduplication without significant behaviour change; in case a duplicated address was found, RTM_CHGADDRATTR now goes out before cleanup, which should be no problem. The nd6_dad_create() pendant could be done as well, but the end of nd6_dad_start() is currently the only place where a new IP/DAD entry is set up, so little gain besides function name symmetry. OK claudio
Revision 1.141 / (download) - annotate - [select for diffs], Sat Dec 10 21:29:10 2022 UTC (18 months ago) by mvs
Branch: MAIN
Changes since 1.140: +1 -2 lines
Diff to previous 1.140 (colored)
`dp' was just allocated with M_ZERO flag, so the following bzero(3) is not required. ok kn@
Revision 1.140 / (download) - annotate - [select for diffs], Sat Dec 10 21:26:21 2022 UTC (18 months ago) by kn
Branch: MAIN
Changes since 1.139: +3 -5 lines
Diff to previous 1.139 (colored)
Merge nd6_option_init() into nd6_options() All call-sites call nd6_options() directly after nd6_option_init(). Fold them to simplify the logic and do less pointing around. Feedback OK bluhm florian
Revision 1.139 / (download) - annotate - [select for diffs], Fri Dec 9 17:32:53 2022 UTC (18 months ago) by claudio
Branch: MAIN
Changes since 1.138: +3 -3 lines
Diff to previous 1.138 (colored)
Switch nd_opts from a union to just a struct. The ND6 option handling in the kernel got a lot simpler since only the tgt and src lladdr option are inspected by the kernel. The magic of assigning options via one side of the union and accessing them via the other is total overkill and actually quite error prone. OK florian@
Revision 1.138 / (download) - annotate - [select for diffs], Fri Dec 2 15:35:35 2022 UTC (18 months, 1 week ago) by kn
Branch: MAIN
Changes since 1.137: +6 -8 lines
Diff to previous 1.137 (colored)
Remove constant basereachable and retrans members from struct nd_ifinfo Both are initalised with compile-time constants and never written to. They are part of the Neighbour Discovery machinery and only surface through the single-user SIOCGIFINFO_IN6: $ ndp -i lo0 basereachable=30s0ms, reachable=39s, retrans=1s0ms These values are read-only since 2017 sys/netinet6/nd6.c r1.217 usr.sbin/ndp/ndp.c r1.85 Remove knob and always do neighbor unreachable detection Inline the macros (to keep meaningful names), shrink the per-interface allocated struct nd_ifinfo to what is actually needed and inline nd6_dad_starttimer()'s constant `msec' argument. Nothing else in base, incl. regress, uses SIOCGIFINFO_IN6 or `ndp -i'. OK bluhm
Revision 1.137 / (download) - annotate - [select for diffs], Fri Dec 2 12:58:37 2022 UTC (18 months, 1 week ago) by kn
Branch: MAIN
Changes since 1.136: +3 -24 lines
Diff to previous 1.136 (colored)
Remove useless variable, simplify code Using a local `duplicate' variable to defer the actual checks by a few lines, interleaved with comments (saying the same thing but negated), is harder to follow that neccessary. Fold the logic and merge comments (remove the last obvious one missing a negation) to save 20 LOC. OK bluhm
Revision 1.136 / (download) - annotate - [select for diffs], Mon Nov 28 13:08:53 2022 UTC (18 months, 1 week ago) by kn
Branch: MAIN
Changes since 1.135: +3 -12 lines
Diff to previous 1.135 (colored)
Statically initialise DAD list, remove obsolete dad_init The list of IPv6 addresses to perfom Duplicate Address Detection on is local to nd6_nbr.c; statically initialise it so `dad_init' can go. nd6_dad_find() keeps returning NULL on an initialised but empty list, so nd6_dad_stop() keeps returning early. Feedback OK mvs
Revision 1.135 / (download) - annotate - [select for diffs], Sun Nov 27 15:31:36 2022 UTC (18 months, 1 week ago) by kn
Branch: MAIN
Changes since 1.134: +5 -5 lines
Diff to previous 1.134 (colored)
Remove useless casts All *dp variables are of type 'struct dadq *'; no object change. OK mvs
Revision 1.134 / (download) - annotate - [select for diffs], Wed Nov 23 16:59:10 2022 UTC (18 months, 2 weeks ago) by kn
Branch: MAIN
Changes since 1.133: +5 -5 lines
Diff to previous 1.133 (colored)
Inline useless ND_IFINFO() macro A single cast-free struct pointer dereference needs no indirection. ND_IFINFO() is under _KERNEL. OK mvs
Revision 1.133 / (download) - annotate - [select for diffs], Mon Aug 29 07:51:45 2022 UTC (21 months, 1 week ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_2_BASE,
OPENBSD_7_2
Changes since 1.132: +2 -3 lines
Diff to previous 1.132 (colored)
Use struct refcnt for interface address reference counting. There was a crash due to use after free of the ifa although it is ref counted. As ifa_refcnt was a simple integer increment, there may be a path where multiple CPUs access it concurrently. So change to struct refcnt which is MP safe and provides dt(4) leak debugging. Link level address for IPsec enc(4) and various MPLS interfaces is special. There ifa is part of struct sc. Use refcount anyway and add a panic to detect use after free. bug report stsp@; OK mvs@
Revision 1.132 / (download) - annotate - [select for diffs], Mon Aug 8 17:47:59 2022 UTC (22 months ago) by kn
Branch: MAIN
Changes since 1.131: +5 -5 lines
Diff to previous 1.131 (colored)
Constify in6_addr pointer arguments in nd6_*() functions All of them are passed to inspect/copy out fields, none of the functions writes to the struct. This makes it easier to argue about code (in MP context). OK bluhm
Revision 1.131 / (download) - annotate - [select for diffs], Mon Feb 7 15:23:43 2022 UTC (2 years, 4 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_7_1_BASE,
OPENBSD_7_1
Changes since 1.130: +4 -2 lines
Diff to previous 1.130 (colored)
Checking ifaddr pointer for NULL without checking in6_ifaddr works as ifaddr ia_ifa is the first field of in6_ifaddr. So the pointers are the same, and one NULL check works for both. But in ISO C NULL has some kind of type and this is undefined behavior. So add a second NULL check that the compiler can optimize away. The resulting assembler is the same. found by kubsan; OK tobhe@
Revision 1.130 / (download) - annotate - [select for diffs], Mon Dec 13 14:30:16 2021 UTC (2 years, 5 months ago) by bluhm
Branch: MAIN
Changes since 1.129: +7 -4 lines
Diff to previous 1.129 (colored)
nd6_dad_ns_input() could trigger a NULL deref in nd6_dad_duplicated(). It checks dp in two of three places. One check got lost in revision 1.83. Do a dp == NULL once at the beginning. OK jsg@ Reported-by: syzbot+88c0ce914a0b10b7e1c8@syzkaller.appspotmail.com
Revision 1.129 / (download) - annotate - [select for diffs], Fri Nov 29 16:41:02 2019 UTC (4 years, 6 months ago) by nayden
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,
OPENBSD_6_7_BASE,
OPENBSD_6_7
Changes since 1.128: +8 -8 lines
Diff to previous 1.128 (colored)
add __func__ to panic() and printf() calls in sys/netinet6/* ok benno@ mortimer@
Revision 1.128 / (download) - annotate - [select for diffs], Fri Oct 18 18:35:32 2019 UTC (4 years, 7 months ago) by benno
Branch: MAIN
Changes since 1.127: +1 -10 lines
Diff to previous 1.127 (colored)
Don't check that the ipv6 source address of a neighbor advertisment is from a neighbor's address. Sthen@ dug out RFC 4861 4.4 that says that the source address is "An address assigned to the interface from which the advertisement is sent." -- which can be from a network that the receiver does not know about. Indeed my provider sends such a neighbor advertisment for my default gateway, which breaks my uplink. Claudio@ added this check for symetry with NetBSD code when he added the same check to nd6_ns_input(), where it is needed to fix CVE-2008-2476. See also OpenBSD 4.2 errata 15. ok claudio@, kn@
Revision 1.127 / (download) - annotate - [select for diffs], Thu Dec 20 10:28:58 2018 UTC (5 years, 5 months ago) by claudio
Branch: MAIN
CVS Tags: OPENBSD_6_6_BASE,
OPENBSD_6_6,
OPENBSD_6_5_BASE,
OPENBSD_6_5
Changes since 1.126: +5 -7 lines
Diff to previous 1.126 (colored)
The timeouts in nd6 are in msec so just use timeout_add_msec() instead of some complicated match to convert them to ticks. OK visa@ bluhm@ kn@
Revision 1.126 / (download) - annotate - [select for diffs], Fri Dec 7 10:01:06 2018 UTC (5 years, 6 months ago) by florian
Branch: MAIN
Changes since 1.125: +7 -7 lines
Diff to previous 1.125 (colored)
We are not going to send a neighbor advertisement from a non-master carp interface. Move the check to the beginning of the function to make it clear that there are no other side effects happening. OK claudio
Revision 1.125 / (download) - annotate - [select for diffs], Thu Dec 6 08:11:52 2018 UTC (5 years, 6 months ago) by claudio
Branch: MAIN
Changes since 1.124: +4 -5 lines
Diff to previous 1.124 (colored)
When building ND packets use m_align() to pack the mbuf as optimal as possible. Because of an optional payload maxlen bytes are used on the m_align so that there is always enough space. OK florian@
Revision 1.124 / (download) - annotate - [select for diffs], Thu Jul 12 16:07:35 2018 UTC (5 years, 11 months ago) by florian
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE,
OPENBSD_6_4
Changes since 1.123: +9 -1 lines
Diff to previous 1.123 (colored)
Introduce RTM_CHGADDRATTR to inform userland on the route socket when an attribute of an address is changed. For now it's used when IPv6 duplicate address detection finishes. With this slaacd(8) can find out if a configured address is not duplicated without the need to poll. OK phessler, benno, claudio
Revision 1.123 / (download) - annotate - [select for diffs], Mon Jun 11 08:48:54 2018 UTC (6 years ago) by mpi
Branch: MAIN
Changes since 1.122: +1 -3 lines
Diff to previous 1.122 (colored)
Push the KERNEL_LOCK() inside route_input(). ok visa@, tb@
Revision 1.122 / (download) - annotate - [select for diffs], Thu Nov 23 13:32:25 2017 UTC (6 years, 6 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_3_BASE,
OPENBSD_6_3
Changes since 1.121: +4 -4 lines
Diff to previous 1.121 (colored)
Replace non mp-safe carp_iamatch6() with mp-safe carp_iamatch(). They have the same functionnality since friehm@ cleaned up balancing code. ok florian@, visa@, patrick@, bluhm@, jmatthew@
Revision 1.121 / (download) - annotate - [select for diffs], Fri Aug 11 21:24:20 2017 UTC (6 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_2_BASE,
OPENBSD_6_2
Changes since 1.120: +3 -4 lines
Diff to previous 1.120 (colored)
Remove NET_LOCK()'s argument. Tested by Hrvoje Popovski, ok bluhm@
Revision 1.120 / (download) - annotate - [select for diffs], Fri Jul 28 09:01:09 2017 UTC (6 years, 10 months ago) by mpi
Branch: MAIN
Changes since 1.119: +2 -2 lines
Diff to previous 1.119 (colored)
Add an error argument to rtm_send() instead of rerolling it inside rtdeletemsg(). ok bluhm@
Revision 1.119 / (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.118: +3 -24 lines
Diff to previous 1.118 (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.118 / (download) - annotate - [select for diffs], Wed Jul 5 09:51:37 2017 UTC (6 years, 11 months ago) by florian
Branch: MAIN
Changes since 1.117: +8 -4 lines
Diff to previous 1.117 (colored)
If we are sending a neighbor solicitation for a link local address send it with a link local source address as well. This helps upstream routers with their own source address selection. A reoccurring scenario is: - gateway on fe80::1%if - the gateway does not have an IP in the same prefix as our global address When we want to talk to the outside world we first need to resolve the gateway. We copy the source address from our outgoing packet to the neighbor solicitation packet (a global address) and ask for layer2 information of a link local address. The upstream router now needs to do source address selection of it's own. Since we are coming from a global address and there is no address from the same prefix the router uses another global address lying around. We then drop this with "ND packet from non-neighbor". Reported over the years by a few people, most recently by Marc Peters on bugs@ who confirmed that this fixes the problem. OK stsp@, mpi@
Revision 1.117 / (download) - annotate - [select for diffs], Thu Jun 8 13:28:03 2017 UTC (7 years ago) by mpi
Branch: MAIN
Changes since 1.116: +5 -1 lines
Diff to previous 1.116 (colored)
Notify userland when a new ND is reachable. The same notification is already present in ARP. From Jan Klemkow, ok bluhm@
Revision 1.116 / (download) - annotate - [select for diffs], Tue May 16 12:24:04 2017 UTC (7 years ago) by mpi
Branch: MAIN
Changes since 1.115: +3 -3 lines
Diff to previous 1.115 (colored)
Replace remaining splsoftassert(IPL_SOFTNET) by NET_ASSERT_LOCKED(). ok visa@
Revision 1.115 / (download) - annotate - [select for diffs], Thu Feb 9 15:23:35 2017 UTC (7 years, 4 months ago) by jca
Branch: MAIN
CVS Tags: OPENBSD_6_1_BASE,
OPENBSD_6_1
Changes since 1.114: +7 -7 lines
Diff to previous 1.114 (colored)
percpu counters for raw ipv6 and icmp6 stats ok mpi@
Revision 1.114 / (download) - annotate - [select for diffs], Tue Jan 3 13:32:51 2017 UTC (7 years, 5 months ago) by bluhm
Branch: MAIN
Changes since 1.113: +2 -3 lines
Diff to previous 1.113 (colored)
Take the neighbor solicitation's source address from the packet to send if the mbuf contains the complete IPv6 header. The old check was wrong, it required one additional octet after the header. So the source address selection was depending on the layout of the mbuf chain. OK mpi@
Revision 1.113 / (download) - annotate - [select for diffs], Thu Dec 22 13:39:32 2016 UTC (7 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.112: +6 -7 lines
Diff to previous 1.112 (colored)
Remove all splsoftnet() from ND6 converting the non-recrusive ones to NET_LOCK(). ok bluhm@
Revision 1.112 / (download) - annotate - [select for diffs], Wed Dec 21 12:30:19 2016 UTC (7 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.111: +16 -18 lines
Diff to previous 1.111 (colored)
Use __func__ in debug log to reduce noise when grepping.
Revision 1.111 / (download) - annotate - [select for diffs], Mon Nov 28 13:59:51 2016 UTC (7 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.110: +5 -7 lines
Diff to previous 1.110 (colored)
Remove multiple recursive splsoftnet(). ok bluhm@
Revision 1.110 / (download) - annotate - [select for diffs], Tue Aug 23 11:03:10 2016 UTC (7 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.109: +27 -56 lines
Diff to previous 1.109 (colored)
Use rtalloc(9) directly instead of in6_selectsr() in NS/NA output routines. This is another little step towards deprecating 'struct route{,_in6}'. ok bluhm@
Revision 1.109 / (download) - annotate - [select for diffs], Mon Aug 22 10:33:22 2016 UTC (7 years, 9 months ago) by mpi
Branch: MAIN
Changes since 1.108: +5 -5 lines
Diff to previous 1.108 (colored)
Sizes for free(9) from David Hill.
Revision 1.108 / (download) - annotate - [select for diffs], Thu Aug 4 20:46:24 2016 UTC (7 years, 10 months ago) by vgross
Branch: MAIN
Changes since 1.107: +4 -4 lines
Diff to previous 1.107 (colored)
Commit in6_selectsrc() split again, with missing assignment fixed.
Revision 1.107 / (download) - annotate - [select for diffs], Fri Jul 22 11:14:41 2016 UTC (7 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_6_0_BASE,
OPENBSD_6_0
Changes since 1.106: +3 -3 lines
Diff to previous 1.106 (colored)
Revert in_selectsrc() refactoring, it breaks IPv6. Reported by Heiko on bugs@. ok stsp@, claudio@
Revision 1.106 / (download) - annotate - [select for diffs], Wed Jul 20 18:51:50 2016 UTC (7 years, 10 months ago) by vgross
Branch: MAIN
Changes since 1.105: +4 -4 lines
Diff to previous 1.105 (colored)
Split in6_selectsrc() into a low-level part and a pcb-level part, and convert in_selectsrc() prototype to match. Ok bluhm@ mpi@.
Revision 1.105 / (download) - annotate - [select for diffs], Tue Jul 5 10:17:14 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.104: +3 -3 lines
Diff to previous 1.104 (colored)
Expand IN6_IFF_NOTREADY, ok bluhm@
Revision 1.104 / (download) - annotate - [select for diffs], Wed Jun 15 11:49:35 2016 UTC (7 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.103: +2 -2 lines
Diff to previous 1.103 (colored)
Kill nd6_output(), it doesn't do anything since the resolution logic has been moved to nd6_resolve(). ok visa@, millert@, florian@, sthen@
Revision 1.103 / (download) - annotate - [select for diffs], Wed Jun 1 23:45:19 2016 UTC (8 years ago) by dlg
Branch: MAIN
Changes since 1.102: +6 -7 lines
Diff to previous 1.102 (colored)
make nd6_llinfo_settimer take seconds instead of ticks. most callers are working in seconds, internally it uses seconds, and you can call timeout_add_sec as easily as timeout_add. this also fixes an issue with an nd_defrouter expire which was incorrectly scaled with ticks in a comparison. ok mpi@
Revision 1.102 / (download) - annotate - [select for diffs], Tue Mar 29 11:57:51 2016 UTC (8 years, 2 months ago) by chl
Branch: MAIN
Changes since 1.101: +1 -5 lines
Diff to previous 1.101 (colored)
remove dead stores and unused variables ok bluhm@ jca@
Revision 1.101 / (download) - annotate - [select for diffs], Wed Dec 9 15:05:51 2015 UTC (8 years, 6 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_9_BASE,
OPENBSD_5_9
Changes since 1.100: +2 -1 lines
Diff to previous 1.100 (colored)
Keep all ether prototypes in one place.
Revision 1.100 / (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.99: +29 -3 lines
Diff to previous 1.99 (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.99 / (download) - annotate - [select for diffs], Mon Nov 2 15:05:23 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.98: +4 -11 lines
Diff to previous 1.98 (colored)
Retire ARP load-balacing, thanks for all the fish! One of the keys of our MP work relies on making OpenBSD's kernel simpler! In this case turning ARP processing MP-safe is quite complicated due to the way carp(4) is hooked in arpinput() and nowadays you'd better run kitchensinkd(9) anyway :) ok bluhm@, claudio@, reyk@
Revision 1.98 / (download) - annotate - [select for diffs], Mon Nov 2 07:24:08 2015 UTC (8 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.97: +4 -4 lines
Diff to previous 1.97 (colored)
Prefer an existing refcounted ``ifp'' to rt_ifp when possible or use the interface index directly. 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: +6 -8 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], Fri Sep 18 14:26:22 2015 UTC (8 years, 8 months ago) by mpi
Branch: MAIN
Changes since 1.95: +3 -2 lines
Diff to previous 1.95 (colored)
Do not manually decrement rt's refcounter in nd6_lookup() and let the callers rtfree(9) it. Inputs and ok bluhm@
Revision 1.95 / (download) - annotate - [select for diffs], Fri Sep 11 20:13:22 2015 UTC (8 years, 9 months ago) by claudio
Branch: MAIN
Changes since 1.94: +7 -1 lines
Diff to previous 1.94 (colored)
if_put after if_get for nd6_nbr. OK dlg@
Revision 1.94 / (download) - annotate - [select for diffs], Fri Sep 11 08:17:06 2015 UTC (8 years, 9 months ago) by claudio
Branch: MAIN
Changes since 1.93: +3 -3 lines
Diff to previous 1.93 (colored)
Kill yet another argument to functions in IPv6. This time ip6_output's ifpp - XXX: just for statistics ifpp is always NULL in all callers so that statistic confirms ifpp is dying OK mpi@
Revision 1.93 / (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.92: +1 -6 lines
Diff to previous 1.92 (colored)
Kill icmp6_ifstat_inc() and associated per-ifp storage. The SIOCGIFSTAT_ICMP6 is no longer supported. ok dlg@, mikeb@, claudio@
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: +14 -40 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], Thu Jul 16 15:28:38 2015 UTC (8 years, 10 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_8_BASE,
OPENBSD_5_8
Changes since 1.90: +1 -14 lines
Diff to previous 1.90 (colored)
Kill incorrect and never set ``dad_ignore_ns'' button. ok phessler@
Revision 1.90 / (download) - annotate - [select for diffs], Tue Jun 16 11:09:40 2015 UTC (8 years, 11 months ago) by mpi
Branch: MAIN
Changes since 1.89: +13 -5 lines
Diff to previous 1.89 (colored)
Store a unique ID, an interface index, rather than a pointer to the receiving interface in the packet header of every mbuf. The interface pointer should now be retrieved when necessary with if_get(). If a NULL pointer is returned by if_get(), the interface has probably been destroy/removed and the mbuf should be freed. Such mechanism will simplify garbage collection of mbufs and limit problems with dangling ifp pointers. Tested by jmatthew@ and krw@, discussed with many. ok mikeb@, bluhm@, dlg@
Revision 1.89 / (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.88: +1 -2 lines
Diff to previous 1.88 (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.88 / (download) - annotate - [select for diffs], Wed Dec 17 09:57:13 2014 UTC (9 years, 5 months ago) by mpi
Branch: MAIN
CVS Tags: OPENBSD_5_7_BASE,
OPENBSD_5_7
Changes since 1.87: +5 -5 lines
Diff to previous 1.87 (colored)
Remove the "multicast_" prefix from the fields a multicast-only struct. Prodded by claudio@ and mikeb@
Revision 1.87 / (download) - annotate - [select for diffs], Wed Dec 17 09:45:59 2014 UTC (9 years, 5 months ago) by mpi
Branch: MAIN
Changes since 1.86: +3 -3 lines
Diff to previous 1.86 (colored)
Use an interface index instead of a pointer for multicast options. Output interface (port) selection for multicast traffic is not done via route lookups. Instead the output ifp is registred when setsockopt(2) is called with the IP{V6,}_MULTICAST_IF option. But since there is no mechanism to invalidate such pointer stored in a pcb when an interface is destroyed/removed, it might lead your kernel to fault. Prevent a fault upon resume reported by frantisek holop, thanks! ok mikeb@, claudio@
Revision 1.86 / (download) - annotate - [select for diffs], Fri Dec 5 15:50:04 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.85: +2 -1 lines
Diff to previous 1.85 (colored)
Explicitly include <net/if_var.h> instead of pulling it in <net/if.h>. ok mikeb@, krw@, bluhm@, tedu@
Revision 1.85 / (download) - annotate - [select for diffs], Thu Nov 20 13:54:24 2014 UTC (9 years, 6 months ago) by mpi
Branch: MAIN
Changes since 1.84: +2 -2 lines
Diff to previous 1.84 (colored)
Rework the handling of interfaces and IPv6 addresses for local delivery. - Unicast packets sent to any local address will have their interface set to loobpack. - In order to differentiate traffic from interfaces having identical link-local addresses, provide the scoped addresses to pf(4). - Update the icmp6 state lookup logic to match scoped MLL addresses. - Remove a shortcut in ip6_input() that bypasses pf and always look for an RTF_LOCAL route. Packets sent to multicast addresses still retain their original interface due to the fact that local multicast packet delivering does not use if_output. This makes ping6 to link-local addresses work even with pf enabled and "set skip" on loopbacks, reported by Pieter Verberne. Debugged, analysed and tested with mikeb@. ok mikeb@, henning@, sthen@
Revision 1.84 / (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.83: +1 -3 lines
Diff to previous 1.83 (colored)
move arc4random prototype to systm.h. more appropriate for most code to include that than rdnvar.h. ok deraadt dlg
Revision 1.83 / (download) - annotate - [select for diffs], Mon Nov 10 10:46:10 2014 UTC (9 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.82: +34 -56 lines
Diff to previous 1.82 (colored)
Do not pass an ifa pointer when we already have a DAD descriptor. Tweaks and ok florian@
Revision 1.82 / (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.81: +2 -2 lines
Diff to previous 1.81 (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.81 / (download) - annotate - [select for diffs], Tue Oct 14 09:52:26 2014 UTC (9 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.80: +5 -5 lines
Diff to previous 1.80 (colored)
Use rtfree() instead of RTFREE(), NULLify some free'd route pointers and kill the macro. ok mikeb@, henning@
Revision 1.80 / (download) - annotate - [select for diffs], Sat Jul 12 18:44:23 2014 UTC (9 years, 11 months ago) by tedu
Branch: MAIN
CVS Tags: OPENBSD_5_6_BASE,
OPENBSD_5_6
Changes since 1.79: +5 -5 lines
Diff to previous 1.79 (colored)
add a size argument to free. will be used soon, but for now default to 0. after discussions with beck deraadt kettenis.
Revision 1.79 / (download) - annotate - [select for diffs], Sat Jun 7 11:04:14 2014 UTC (10 years ago) by henning
Branch: MAIN
Changes since 1.78: +0 -1 lines
Diff to previous 1.78 (colored)
g/c unused IFT_L2VLAN, ok reyk bluhm the #define stays since it's userland visible and who knows what uses it
Revision 1.78 / (download) - annotate - [select for diffs], Fri Apr 18 10:48:30 2014 UTC (10 years, 1 month ago) by jca
Branch: MAIN
Changes since 1.77: +6 -6 lines
Diff to previous 1.77 (colored)
Invert the signature logic of in{,6}_selectsrc, make them return the error code and pass the resulting source address back to the caller through a pointer, as suggested by chrisz. This gives us more readable code, and eases the deletion of useless checks in the callers' error path. Add a bunch of "0 -> NULL" conversions, while here. ok chrisz@ mpi@
Revision 1.77 / (download) - annotate - [select for diffs], Mon Apr 14 09:06:42 2014 UTC (10 years, 1 month ago) by mpi
Branch: MAIN
Changes since 1.76: +6 -6 lines
Diff to previous 1.76 (colored)
"struct pkthdr" holds a routing table ID, not a routing domain one. Avoid the confusion by using an appropriate name for the variable. Note that since routing domain IDs are a subset of the set of routing table IDs, the following idiom is correct: rtableid = rdomain But to get the routing domain ID corresponding to a given routing table ID, you must call rtable_l2(9). claudio@ likes it, ok mikeb@
Revision 1.76 / (download) - annotate - [select for diffs], Fri Mar 21 09:45:09 2014 UTC (10 years, 2 months ago) by mpi
Branch: MAIN
Changes since 1.75: +12 -10 lines
Diff to previous 1.75 (colored)
If a NA is received on a carp interface in BACKUP state and match one of the carp addresses silently ignore it since it is certainly coming from the carp MASTER. ok sthen@
Revision 1.75 / (download) - annotate - [select for diffs], Fri Jan 24 12:20:22 2014 UTC (10 years, 4 months ago) by naddy
Branch: MAIN
CVS Tags: OPENBSD_5_5_BASE,
OPENBSD_5_5
Changes since 1.74: +3 -5 lines
Diff to previous 1.74 (colored)
Instead of calculating the ICMPv6 checksum here, just set the flag that is needed and the lower parts of the stack will take care of it. ok henning@, lteo@
Revision 1.74 / (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.73: +27 -27 lines
Diff to previous 1.73 (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.73 / (download) - annotate - [select for diffs], Tue Jan 7 17:07:46 2014 UTC (10 years, 5 months ago) by mikeb
Branch: MAIN
Changes since 1.72: +2 -2 lines
Diff to previous 1.72 (colored)
Propagate an rdomain number to the nd6_lookup independently from the ifp pointer which can be NULL. This prevents a crash reported by David Hill <dhill at mindcry ! org>. OK bluhm
Revision 1.72 / (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.71: +1 -2 lines
Diff to previous 1.71 (colored)
Remove some FDDI/ATM leftovers. ok mikeb@, henning@, deraadt@, brad@, miod@
Revision 1.71 / (download) - annotate - [select for diffs], Mon Nov 11 09:15:35 2013 UTC (10 years, 7 months ago) by mpi
Branch: MAIN
Changes since 1.70: +58 -25 lines
Diff to previous 1.70 (colored)
Replace most of our formating functions to convert IPv4/6 addresses from network to presentation format to inet_ntop(). The few remaining functions will be soon converted. ok mikeb@, deraadt@ and moral support from henning@
Revision 1.70 / (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.69: +7 -7 lines
Diff to previous 1.69 (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.69 / (download) - annotate - [select for diffs], Sun Oct 20 11:03:02 2013 UTC (10 years, 7 months ago) by phessler
Branch: MAIN
Changes since 1.68: +3 -1 lines
Diff to previous 1.68 (colored)
Put a large chunk of the IPv6 rdomain support in-tree. Still some important missing pieces, and this is not yet enabled. OK bluhm@
Revision 1.68 / (download) - annotate - [select for diffs], Thu Oct 17 16:27:46 2013 UTC (10 years, 7 months ago) by bluhm
Branch: MAIN
Changes since 1.67: +1 -2 lines
Diff to previous 1.67 (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.67 / (download) - annotate - [select for diffs], Fri May 31 15:04:24 2013 UTC (11 years ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_4_BASE,
OPENBSD_5_4
Changes since 1.66: +4 -5 lines
Diff to previous 1.66 (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.66 / (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.65: +5 -5 lines
Diff to previous 1.65 (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.65 / (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.64: +11 -12 lines
Diff to previous 1.64 (colored)
Replace the cast to struct in6_ifaddr pointer with the ifatoia6() macro. No binary change. OK claudio@
Revision 1.64 / (download) - annotate - [select for diffs], Sun Mar 3 00:35:14 2013 UTC (11 years, 3 months ago) by bluhm
Branch: MAIN
Changes since 1.63: +9 -1 lines
Diff to previous 1.63 (colored)
Make sure that IPv6 source address selection only chooses a CARP address if the interface is in master state. Disable duplicate address detection on CARP interfaces as the peer may have the same addresses. Test and OK sthen@ florian@ benno@ camield@
Revision 1.63 / (download) - annotate - [select for diffs], Wed May 16 09:48:38 2012 UTC (12 years ago) by mikeb
Branch: MAIN
CVS Tags: OPENBSD_5_3_BASE,
OPENBSD_5_3,
OPENBSD_5_2_BASE,
OPENBSD_5_2
Changes since 1.62: +7 -1 lines
Diff to previous 1.62 (colored)
rfc 4861 mandates that target link local address must be included with a neighbour advertisment sent to a multicast address; nits & ok bluhm
Revision 1.62 / (download) - annotate - [select for diffs], Wed Jan 11 19:12:23 2012 UTC (12 years, 5 months ago) by bluhm
Branch: MAIN
CVS Tags: OPENBSD_5_1_BASE,
OPENBSD_5_1
Changes since 1.61: +6 -11 lines
Diff to previous 1.61 (colored)
Simplify the #if CARP and if (IFT_CARP) dance in nd6_ns_input(). Fix a white space bug while there. No functional change. ok mikeb@ robert@ henning@
Revision 1.61 / (download) - annotate - [select for diffs], Tue Jan 3 23:41:51 2012 UTC (12 years, 5 months ago) by bluhm
Branch: MAIN
Changes since 1.60: +8 -8 lines
Diff to previous 1.60 (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.60 / (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.59: +8 -4 lines
Diff to previous 1.59 (colored)
rdomain support for IPv6 ok mikeb
Revision 1.59 / (download) - annotate - [select for diffs], Sat Oct 15 10:29:06 2011 UTC (12 years, 7 months ago) by nigel
Branch: MAIN
Changes since 1.58: +3 -1 lines
Diff to previous 1.58 (colored)
dont define proxydl in nd6_na_output when NCARP = 0 as unused OK sthend@
Revision 1.58 / (download) - annotate - [select for diffs], Fri Oct 14 16:16:43 2011 UTC (12 years, 7 months ago) by stsp
Branch: MAIN
Changes since 1.57: +8 -1 lines
Diff to previous 1.57 (colored)
Prevent carp slaves from sending IPv6 neighbour advertisements for carp addresses. Fixes "duplicate IP6 address" warnings, appearing since we started accepting IPv6 neighbour discovery packets on carp interfaces. ok henning
Revision 1.57 / (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.56: +3 -3 lines
Diff to previous 1.56 (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.56 / (download) - annotate - [select for diffs], Wed Mar 9 23:31:25 2011 UTC (13 years, 3 months ago) by bluhm
Branch: MAIN
Changes since 1.55: +6 -1 lines
Diff to previous 1.55 (colored)
Log MAC address changes in the IPv6 neighbor discovery protocol cache as "ndp info overwritten". This makes the behavior similar to ARP. ok todd@, deraadt@, henning@, giovanni@, claudio@
Revision 1.55 / (download) - annotate - [select for diffs], Mon Feb 8 11:56:09 2010 UTC (14 years, 4 months ago) by jsing
Branch: MAIN
CVS Tags: OPENBSD_4_9_BASE,
OPENBSD_4_9,
OPENBSD_4_8_BASE,
OPENBSD_4_8,
OPENBSD_4_7_BASE,
OPENBSD_4_7
Changes since 1.54: +17 -17 lines
Diff to previous 1.54 (colored)
Destatic and ansify. ok claudio@ naddy@
Revision 1.54 / (download) - annotate - [select for diffs], Tue Nov 25 12:11:45 2008 UTC (15 years, 6 months ago) by markus
Branch: MAIN
CVS Tags: OPENBSD_4_6_BASE,
OPENBSD_4_6,
OPENBSD_4_5_BASE,
OPENBSD_4_5
Changes since 1.53: +6 -1 lines
Diff to previous 1.53 (colored)
delay /etc/netstart until IPv6-DAD (dup-address-detection) is completed. ok fries, hshoexer, claudio
Revision 1.51.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.51: +19 -3 lines
Diff to previous 1.51 (colored) next main 1.52 (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.48.2.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.48: +19 -3 lines
Diff to previous 1.48 (colored) next main 1.49 (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.45.2.2 / (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.45.2.1: +19 -3 lines
Diff to previous 1.45.2.1 (colored) to branchpoint 1.45 (colored) next main 1.46 (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.53 / (download) - annotate - [select for diffs], Wed Oct 1 21:17:06 2008 UTC (15 years, 8 months ago) by claudio
Branch: MAIN
Changes since 1.52: +19 -3 lines
Diff to previous 1.52 (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.52 / (download) - annotate - [select for diffs], Wed Sep 17 05:43:15 2008 UTC (15 years, 8 months ago) by chl
Branch: MAIN
Changes since 1.51: +1 -3 lines
Diff to previous 1.51 (colored)
remove dead stores and newly created unused variables. Found by LLVM/Clang Static Analyzer. ok henning@ mpf@
Revision 1.51 / (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
Branch point for: OPENBSD_4_4
Changes since 1.50: +27 -43 lines
Diff to previous 1.50 (colored)
ANSIfy to sync with KAME. From Karl Sjodahl <dunceor@gmail.com>. ok todd deraadt naddy bluhm
Revision 1.50 / (download) - annotate - [select for diffs], Sun May 11 03:50:23 2008 UTC (16 years, 1 month ago) by krw
Branch: MAIN
Changes since 1.49: +9 -4 lines
Diff to previous 1.49 (colored)
Try harder to avoid corrupting the mbuf pool. Stuff any mbuf chain in ln_hold or la_hold into temporary storage and null ln_hold or la_hold before manually processing the mbuf chain. Discard the mbuf chain if it is put back in the hold area. ok claudio@ markus@
Revision 1.49 / (download) - annotate - [select for diffs], Fri Apr 18 06:42:20 2008 UTC (16 years, 1 month ago) by djm
Branch: MAIN
Changes since 1.48: +4 -3 lines
Diff to previous 1.48 (colored)
use arc4random_uniform() for random number requests that are not a power of two. use arc4random_bytes() when requesting more than a word of PRNG output. ok deraadt@
Revision 1.45.2.1 / (download) - annotate - [select for diffs], Fri Mar 21 20:39:45 2008 UTC (16 years, 2 months ago) by brad
Branch: OPENBSD_4_2
Changes since 1.45: +3 -1 lines
Diff to previous 1.45 (colored)
fix use-after-free: pfxlist_onlink_check() might free rt_llinfo for the current route, so make sure RTF_LLINFO is still set; fixes pr 5711; ok deraadt@
Revision 1.42.2.1 / (download) - annotate - [select for diffs], Fri Mar 21 20:38:33 2008 UTC (16 years, 2 months ago) by brad
Branch: OPENBSD_4_1
Changes since 1.42: +3 -1 lines
Diff to previous 1.42 (colored) next main 1.43 (colored)
fix use-after-free: pfxlist_onlink_check() might free rt_llinfo for the current route, so make sure RTF_LLINFO is still set; fixes pr 5711; ok deraadt@
Revision 1.48 / (download) - annotate - [select for diffs], Tue Mar 4 11:19:35 2008 UTC (16 years, 3 months ago) by markus
Branch: MAIN
CVS Tags: OPENBSD_4_3_BASE
Branch point for: OPENBSD_4_3
Changes since 1.47: +3 -1 lines
Diff to previous 1.47 (colored)
fix use-after-free: pfxlist_onlink_check() might free rt_llinfo for the current route, so make sure RTF_LLINFO is still set; fixes pr 5711; with krw@ and claudio@; ok jsing@
Revision 1.47 / (download) - annotate - [select for diffs], Tue Feb 5 22:57:31 2008 UTC (16 years, 4 months ago) by mpf
Branch: MAIN
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (colored)
Move carp load balancing (ARP/IP) to a simpler configuration scheme. Instead of using the same IP on multiple interfaces, carp has to be configured with the new "carpnodes" and "balancing" options. # ifconfig carp0 carpnodes 1:0,2:100,3:100 balancing ip carpdev sis0 192.168.5.50 Please note, that this is a flag day for anyone using carp balancing. You'll need to adjust your configuration accordingly. Addititionally this diff adds IPv6 NDP balancing support. Tested and OK mcbride@, reyk@. Manpage help by jmc@.
Revision 1.46 / (download) - annotate - [select for diffs], Sun Dec 9 21:24:58 2007 UTC (16 years, 6 months ago) by hshoexer
Branch: MAIN
Changes since 1.45: +2 -3 lines
Diff to previous 1.45 (colored)
take advantage of M_ZERO ok claudio gilles
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_2_BASE
Branch point for: OPENBSD_4_2
Changes since 1.44: +1 -2 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], Fri Jun 1 00:52:38 2007 UTC (17 years ago) by henning
Branch: MAIN
Changes since 1.43: +3 -3 lines
Diff to previous 1.43 (colored)
apply the "skip ipsec if there are no flows" speedup diff to IPv6 too. we need a pointer to the inpcb to decide, which was not previously passed to ip6_output, so this diff is a little bigger. from itojun, ok ryan
Revision 1.43 / (download) - annotate - [select for diffs], Sun Mar 18 23:23:17 2007 UTC (17 years, 2 months ago) by mpf
Branch: MAIN
Changes since 1.42: +7 -4 lines
Diff to previous 1.42 (colored)
Add IP load balancing support for carp(4). This provides a similar functionality as ARP balancing, but also works for traffic that comes across routers. IPv6 is supported as well. The configuration scheme will change as soon we have sth better. Also add support for changing the MAC address on carp(4) interfaces. (code from mcbride) Tested by pyr@ and reyk@ OK mcbride@
Revision 1.42 / (download) - annotate - [select for diffs], Fri Nov 17 01:11:23 2006 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_4_1_BASE
Branch point for: OPENBSD_4_1
Changes since 1.41: +5 -5 lines
Diff to previous 1.41 (colored)
change semantics of ff01::/16 to interface local multicast (to sync up with more recent IPv6 spec) ok from: deraadt mcbride
Revision 1.41 / (download) - annotate - [select for diffs], Fri Jun 16 16:49:40 2006 UTC (17 years, 11 months ago) by henning
Branch: MAIN
CVS Tags: OPENBSD_4_0_BASE,
OPENBSD_4_0
Changes since 1.40: +2 -2 lines
Diff to previous 1.40 (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.40 / (download) - annotate - [select for diffs], Fri Jun 16 15:41:19 2006 UTC (17 years, 11 months ago) by pascoe
Branch: MAIN
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)
Spelling.
Revision 1.39 / (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.38: +2 -2 lines
Diff to previous 1.38 (colored)
Use more queue macros rather than doing it by hand; ok otto@ krw@
Revision 1.38 / (download) - annotate - [select for diffs], Mon Feb 6 17:37:28 2006 UTC (18 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: OPENBSD_3_9_BASE,
OPENBSD_3_9
Changes since 1.37: +2 -2 lines
Diff to previous 1.37 (colored)
typos from alexey dobriyan;
Revision 1.37 / (download) - annotate - [select for diffs], Thu Feb 10 03:40:16 2005 UTC (19 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_8_BASE,
OPENBSD_3_8,
OPENBSD_3_7_BASE,
OPENBSD_3_7
Changes since 1.36: +1 -26 lines
Diff to previous 1.36 (colored)
remove #if 0'ed code (which was experimental and should never be used)
Revision 1.36 / (download) - annotate - [select for diffs], Tue Jan 18 23:26:52 2005 UTC (19 years, 4 months ago) by mpf
Branch: MAIN
Changes since 1.35: +1 -9 lines
Diff to previous 1.35 (colored)
Rewriting the lladdr can now be done without using mbuf tags. Advertisements run through the carp interface first. So we just take the address from ifp0. While we're there, also remove carp_macmatch6, which isn't used anymore. Proposed by mcbride@ ok mcbride@, pascoe@
Revision 1.35 / (download) - annotate - [select for diffs], Tue Dec 21 10:28:35 2004 UTC (19 years, 5 months ago) by mcbride
Branch: MAIN
Changes since 1.34: +3 -3 lines
Diff to previous 1.34 (colored)
Check that if_type != IFT_CARP before using ifp->if_carp.
Revision 1.34 / (download) - annotate - [select for diffs], Thu Oct 28 20:34:57 2004 UTC (19 years, 7 months ago) by henning
Branch: MAIN
Changes since 1.33: +2 -1 lines
Diff to previous 1.33 (colored)
treat IFT_CARP like IFT_PROPVIRTUAL, ryan daniel ok
Revision 1.8.2.10 / (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.9: +38 -17 lines
Diff to previous 1.8.2.9 (colored) to branchpoint 1.8 (colored) next main 1.9 (colored)
Merge of current from two weeks agointo the SMP branch
Revision 1.33 / (download) - annotate - [select for diffs], Fri Oct 31 09:00:32 2003 UTC (20 years, 7 months ago) by mcbride
Branch: MAIN
CVS Tags: SMP_SYNC_B,
SMP_SYNC_A,
OPENBSD_3_6_BASE,
OPENBSD_3_6,
OPENBSD_3_5_BASE,
OPENBSD_3_5
Changes since 1.32: +24 -4 lines
Diff to previous 1.32 (colored)
Add IPv6 support to CARP. ok deraadt@
Revision 1.32 / (download) - annotate - [select for diffs], Fri Jun 27 22:47:32 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_4_BASE,
OPENBSD_3_4
Changes since 1.31: +14 -12 lines
Diff to previous 1.31 (colored)
split ND6 cache timer management to per-entry. increased accuracy, no O(N) loop. sync w/ kame. marc tested, daniel ok
Revision 1.31 / (download) - annotate - [select for diffs], Tue Jun 24 07:55:12 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.30: +2 -2 lines
Diff to previous 1.30 (colored)
remove unneeded checks of accept_rtadv. from kame
Revision 1.30 / (download) - annotate - [select for diffs], Tue Jun 24 07:47:54 2003 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.29: +6 -7 lines
Diff to previous 1.29 (colored)
use time.tv_sec directly, rather than having time_second (freebsd NIH).
Revision 1.8.2.9 / (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.8: +1 -2 lines
Diff to previous 1.8.2.8 (colored) to branchpoint 1.8 (colored)
Sync SMP branch to -current
Revision 1.29 / (download) - annotate - [select for diffs], Thu May 22 10:20:57 2003 UTC (21 years ago) by itojun
Branch: MAIN
Changes since 1.28: +1 -2 lines
Diff to previous 1.28 (colored)
remove break after return
Revision 1.19.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.19.2.2: +1 -11 lines
Diff to previous 1.19.2.2 (colored) to branchpoint 1.19 (colored) next main 1.20 (colored)
sync
Revision 1.8.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.8.2.7: +0 -10 lines
Diff to previous 1.8.2.7 (colored) to branchpoint 1.8 (colored)
merge the trunk so we will get the genfs and locking fixes
Revision 1.28 / (download) - annotate - [select for diffs], Wed May 14 14:24:44 2003 UTC (21 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: UBC_SYNC_A
Changes since 1.27: +1 -11 lines
Diff to previous 1.27 (colored)
make PULLDOWN_TEST codepath the default (has been default for a long time). markus ok
Revision 1.8.2.7 / (download) - annotate - [select for diffs], Fri Mar 28 00:41:30 2003 UTC (21 years, 2 months ago) by niklas
Branch: SMP
Changes since 1.8.2.6: +187 -139 lines
Diff to previous 1.8.2.6 (colored) to branchpoint 1.8 (colored)
Sync the SMP branch with 3.3
Revision 1.19.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.19.2.1: +6 -6 lines
Diff to previous 1.19.2.1 (colored) to branchpoint 1.19 (colored)
sync to -current
Revision 1.19.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.19: +192 -144 lines
Diff to previous 1.19 (colored)
Sync UBC branch to -current
Revision 1.27 / (download) - annotate - [select for diffs], Sun Jun 9 14:38:39 2002 UTC (22 years 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.26: +6 -6 lines
Diff to previous 1.26 (colored)
whitespace cleanup
Revision 1.26 / (download) - annotate - [select for diffs], Sat Jun 8 21:51:08 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.25: +3 -3 lines
Diff to previous 1.25 (colored)
splnet -> splsoftnet where appropriate
Revision 1.25 / (download) - annotate - [select for diffs], Sat Jun 8 21:29:13 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.24: +4 -4 lines
Diff to previous 1.24 (colored)
KNF
Revision 1.24 / (download) - annotate - [select for diffs], Sat Jun 8 21:22:03 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.23: +173 -123 lines
Diff to previous 1.23 (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.23 / (download) - annotate - [select for diffs], Wed May 29 07:54:59 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.22: +5 -5 lines
Diff to previous 1.22 (colored)
attach nd_ifinfo structure to if_afdata. split IPv6 MTU (advertised by RA) from real link MTU. sync with kame
Revision 1.22 / (download) - annotate - [select for diffs], Tue May 28 10:34:11 2002 UTC (22 years ago) by itojun
Branch: MAIN
Changes since 1.21: +3 -5 lines
Diff to previous 1.21 (colored)
remove #define for kame portability
Revision 1.8.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.8.2.5: +9 -9 lines
Diff to previous 1.8.2.5 (colored) to branchpoint 1.8 (colored)
Merge in -current from roughly a week ago
Revision 1.21 / (download) - annotate - [select for diffs], Fri Mar 15 09:44:56 2002 UTC (22 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_3_1_BASE,
OPENBSD_3_1
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)
s/0/NULL/ for pointer assignment. sync w/kame
Revision 1.20 / (download) - annotate - [select for diffs], Thu Mar 14 01:27:12 2002 UTC (22 years, 3 months ago) by millert
Branch: MAIN
Changes since 1.19: +9 -9 lines
Diff to previous 1.19 (colored)
First round of __P removal in sys
Revision 1.8.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.8.2.4: +7 -7 lines
Diff to previous 1.8.2.4 (colored) to branchpoint 1.8 (colored)
Merge in trunk
Revision 1.19 / (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.18: +8 -8 lines
Diff to previous 1.18 (colored)
whitespace/comment sync with kame
Revision 1.8.2.4 / (download) - annotate - [select for diffs], Wed Dec 5 01:02:40 2001 UTC (22 years, 6 months ago) by niklas
Branch: SMP
Changes since 1.8.2.3: +1 -5 lines
Diff to previous 1.8.2.3 (colored) to branchpoint 1.8 (colored)
Merge in -current
Revision 1.18 / (download) - annotate - [select for diffs], Fri Nov 30 07:59:17 2001 UTC (22 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.17: +1 -5 lines
Diff to previous 1.17 (colored)
unifdef OLDIP6OUTPUT
Revision 1.8.2.3 / (download) - annotate - [select for diffs], Wed Jul 4 10:55:27 2001 UTC (22 years, 11 months ago) by niklas
Branch: SMP
Changes since 1.8.2.2: +17 -19 lines
Diff to previous 1.8.2.2 (colored) to branchpoint 1.8 (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:38 2001 UTC (23 years ago) by angelos
Branch: MAIN
CVS Tags: OPENBSD_3_0_BASE,
OPENBSD_3_0
Changes since 1.16: +17 -19 lines
Diff to previous 1.16 (colored)
No need for net/net_osdep.h
Revision 1.8.2.2 / (download) - annotate - [select for diffs], Mon May 14 22:40:20 2001 UTC (23 years, 1 month ago) by niklas
Branch: SMP
Changes since 1.8.2.1: +147 -71 lines
Diff to previous 1.8.2.1 (colored) to branchpoint 1.8 (colored)
merge in approximately 2.9 into SMP branch
Revision 1.16 / (download) - annotate - [select for diffs], Fri Feb 23 08:01:15 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_9_BASE,
OPENBSD_2_9
Changes since 1.15: +11 -5 lines
Diff to previous 1.15 (colored)
garbage-collect stale ND entries (default: 1 day). RFC 2461 5.3. sync with kame.
Revision 1.15 / (download) - annotate - [select for diffs], Fri Feb 16 16:08:01 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.14: +1 -5 lines
Diff to previous 1.14 (colored)
oops, remove #ifdef __fooBSD__.
Revision 1.14 / (download) - annotate - [select for diffs], Fri Feb 16 08:47:12 2001 UTC (23 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.13: +3 -1 lines
Diff to previous 1.13 (colored)
make sure to clear ln_byhint when neighbor state goes to REACHABLE. sync whitespace/comment with kame.
Revision 1.13 / (download) - annotate - [select for diffs], Thu Feb 8 14:51:23 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.12: +9 -21 lines
Diff to previous 1.12 (colored)
use timeout_xx() throughout sys/netinet6. sync with kame.
Revision 1.12 / (download) - annotate - [select for diffs], Wed Feb 7 11:43:54 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.11: +144 -68 lines
Diff to previous 1.11 (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.11 / (download) - annotate - [select for diffs], Thu Jan 18 04:57:05 2001 UTC (23 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.10: +5 -1 lines
Diff to previous 1.10 (colored)
wrap too noisy warnings into #ifdef ND6_DEBUG
Revision 1.10 / (download) - annotate - [select for diffs], Fri May 19 13:55:17 2000 UTC (24 years ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_8_BASE,
OPENBSD_2_8
Changes since 1.9: +10 -6 lines
Diff to previous 1.9 (colored)
never forward packet with link-local address. experimental support for new loopback packet handling (with FAKE_LOOPBACK_IF, rcvif will be set to real outgoing interface, not the loopback, to honor scope) sync with kame.
Revision 1.8.2.1 / (download) - annotate - [select for diffs], Thu Mar 2 07:04:46 2000 UTC (24 years, 3 months ago) by niklas
Branch: SMP
Changes since 1.8: +102 -49 lines
Diff to previous 1.8 (colored)
Sync with -current
Revision 1.9 / (download) - annotate - [select for diffs], Mon Feb 28 11:55:23 2000 UTC (24 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: OPENBSD_2_7_BASE,
OPENBSD_2_7
Changes since 1.8: +102 -49 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], Mon Feb 7 06:04:43 2000 UTC (24 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: SMP_BASE
Branch point for: SMP
Changes since 1.7: +65 -25 lines
Diff to previous 1.7 (colored)
use log(), not printf(), for DAD messages. make more checks on mbuf length for outbound packets. correct include file path.
Revision 1.7 / (download) - annotate - [select for diffs], Sat Jan 8 05:28:08 2000 UTC (24 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.6: +3 -1 lines
Diff to previous 1.6 (colored)
pull in arc4random() prototype
Revision 1.6 / (download) - annotate - [select for diffs], Sat Jan 8 04:49:22 2000 UTC (24 years, 5 months ago) by deraadt
Branch: MAIN
Changes since 1.5: +3 -3 lines
Diff to previous 1.5 (colored)
use arc4random() instead of random for two reasons. 1) on some architectures, random() should only be used by the scheduler (ie. statintr() because it is uniformly distributed 2) arc4random() is actually strong, random() is not at all
Revision 1.5 / (download) - annotate - [select for diffs], Wed Dec 15 07:08:00 1999 UTC (24 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.4: +5 -3 lines
Diff to previous 1.4 (colored)
do not overwrite traffic class portion when filling in IPv6 version field.
Revision 1.4 / (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.3: +5 -62 lines
Diff to previous 1.3 (colored)
Remove remaining unnecessary ifdefs (itojun will hate me for this :-)
Revision 1.3 / (download) - annotate - [select for diffs], Wed Dec 8 19:53:39 1999 UTC (24 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.2: +3 -1 lines
Diff to previous 1.2 (colored)
silence more DAD debugging information
Revision 1.2 / (download) - annotate - [select for diffs], Wed Dec 8 12:13:37 1999 UTC (24 years, 6 months ago) by deraadt
Branch: MAIN
Changes since 1.1: +3 -1 lines
Diff to previous 1.1 (colored)
silence non-duplicate DAD completion messages
Revision 1.1 / (download) - annotate - [select for diffs], Wed Dec 8 06:50:23 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).