The NetBSD Project

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

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

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.104 / (download) - annotate - [select for diffs], Tue Jun 16 17:12:18 2020 UTC (5 months, 2 weeks ago) by maxv
Branch: MAIN
CVS Tags: thorpej-futex-base, thorpej-futex, HEAD
Changes since 1.103: +1 -2 lines
Diff to previous 1.103 (colored)

remove unused

Revision 1.103 / (download) - annotate - [select for diffs], Fri Jun 12 11:04:45 2020 UTC (5 months, 3 weeks ago) by roy
Branch: MAIN
Changes since 1.102: +31 -129 lines
Diff to previous 1.102 (colored)

Remove in-kernel handling of Router Advertisements

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

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

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

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

Revision 1.102 / (download) - annotate - [select for diffs], Fri Oct 18 04:33:53 2019 UTC (13 months, 2 weeks ago) by ozaki-r
Branch: MAIN
CVS Tags: phil-wifi-20200421, phil-wifi-20200411, phil-wifi-20200406, phil-wifi-20191119, is-mlppp-base, is-mlppp, bouyer-xenpvh-base2, bouyer-xenpvh-base1, bouyer-xenpvh-base, bouyer-xenpvh, ad-namecache-base3, ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache
Changes since 1.101: +3 -1 lines
Diff to previous 1.101 (colored)

in6: reset the temporary address timer on a change of the interval period

Revision 1.101 / (download) - annotate - [select for diffs], Wed Oct 16 07:40:40 2019 UTC (13 months, 3 weeks ago) by ozaki-r
Branch: MAIN
Changes since 1.100: +2 -2 lines
Diff to previous 1.100 (colored)

Reorganize in6_tmpaddrtimer stuffs

- Move the related functions to where in6_tmpaddrtimer_ch exists
- Hide global variable in6_tmpaddrtimer_ch
- Rename ip6_init2 to in6_tmpaddrtimer_init
- Reduce callers of callout_reset
- Use callout_schedule

Revision 1.100 / (download) - annotate - [select for diffs], Tue May 29 04:38:29 2018 UTC (2 years, 6 months ago) by ozaki-r
Branch: MAIN
CVS Tags: phil-wifi-base, phil-wifi-20190609, pgoyette-compat-20190127, pgoyette-compat-20190118, pgoyette-compat-1226, pgoyette-compat-1126, pgoyette-compat-1020, pgoyette-compat-0930, pgoyette-compat-0906, pgoyette-compat-0728, pgoyette-compat-0625, netbsd-9-base, isaki-audio2-base, isaki-audio2
Branch point for: phil-wifi, netbsd-9
Changes since 1.99: +3 -1 lines
Diff to previous 1.99 (colored)

Make a deletion of in6m in nd6_rtrequest atomic

Revision 1.99 / (download) - annotate - [select for diffs], Tue May 29 04:36:47 2018 UTC (2 years, 6 months ago) by ozaki-r
Branch: MAIN
Changes since 1.98: +2 -1 lines
Diff to previous 1.98 (colored)

Improve atomicity of in6_leavegroup and in6_delmulti

Revision 1.98 / (download) - annotate - [select for diffs], Thu Apr 19 21:22:02 2018 UTC (2 years, 7 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-compat-0521, pgoyette-compat-0502, pgoyette-compat-0422
Changes since 1.97: +6 -6 lines
Diff to previous 1.97 (colored)

s/static inline/static __inline/g for consistency.

Revision 1.97 / (download) - annotate - [select for diffs], Thu Mar 2 09:48:20 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
CVS Tags: tls-maxphys-base-20171202, prg-localcount2-base3, prg-localcount2-base2, prg-localcount2-base1, prg-localcount2-base, prg-localcount2, pgoyette-localcount-20170426, pgoyette-localcount-20170320, pgoyette-compat-base, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322, pgoyette-compat-0315, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, netbsd-8-0-RC1, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1
Branch point for: pgoyette-compat, netbsd-8
Changes since 1.96: +2 -1 lines
Diff to previous 1.96 (colored)

Plug a race condition on accessing i6mm_maddr

Revision 1.96 / (download) - annotate - [select for diffs], Thu Mar 2 09:16:46 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
Changes since 1.95: +3 -1 lines
Diff to previous 1.95 (colored)

Fix racy in6m_sol

Relook up the entry instead of reusing it, which makes locking simple.

Revision 1.95 / (download) - annotate - [select for diffs], Thu Mar 2 05:27:39 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
Changes since 1.94: +2 -1 lines
Diff to previous 1.94 (colored)

Protect ia6_memberships by in6_ifaddr_lock

Revision 1.94 / (download) - annotate - [select for diffs], Wed Mar 1 08:54:12 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
Changes since 1.93: +2 -1 lines
Diff to previous 1.93 (colored)

Provide in6_multi_group

Use it when checking if we belong to the group, instead of in6_lookup_multi.

No functional change.

Revision 1.93 / (download) - annotate - [select for diffs], Thu Feb 23 07:57:10 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
Changes since 1.92: +8 -80 lines
Diff to previous 1.92 (colored)

Remove mkludge stuffs

For unknown reasons, IPv6 multicast addresses are linked to a first
IPv6 address assigned to an interface. Due to the design, when removing
a first address having multicast addresses, we need to save them to
somewhere and later restore them once a new IPv6 address is activated.
mkludge stuffs support the operations.

This change links multicast addresses to an interface directly and
throws the kludge away.

Note that as usual some obsolete member variables remain for kvm(3)
users. And also sysctl net.inet6.multicast_kludge remains to avoid
breaking old ifmcstat.

TODO: currently ifnet has a list of in6_multi but obviously the list
should be protocol independent. Provide a common structure (if_multi
or something) to handle in6_multi and in_multi together as well as
ifaddr does for in_ifaddr and in6_ifaddr.

Revision 1.92 / (download) - annotate - [select for diffs], Wed Feb 22 07:46:00 2017 UTC (3 years, 9 months ago) by ozaki-r
Branch: MAIN
Changes since 1.91: +1 -24 lines
Diff to previous 1.91 (colored)

Stop using useless IN6_*_MULTI macros

Revision 1.91 / (download) - annotate - [select for diffs], Mon Jan 16 15:44:47 2017 UTC (3 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: nick-nhusb-base-20170204
Changes since 1.90: +1 -2 lines
Diff to previous 1.90 (colored)

ip6_sprintf -> IN6_PRINT so that we pass the size.

Revision 1.90 / (download) - annotate - [select for diffs], Mon Jan 16 07:33:36 2017 UTC (3 years, 10 months ago) by ryo
Branch: MAIN
Changes since 1.89: +2 -2 lines
Diff to previous 1.89 (colored)

Make ip6_sprintf(), in_fmtaddr(), lla_snprintf() and icmp6_redirect_diag() mpsafe.

Reviewed by ozaki-r@

Revision 1.89 / (download) - annotate - [select for diffs], Tue Jan 10 05:42:34 2017 UTC (3 years, 10 months ago) by ozaki-r
Branch: MAIN
CVS Tags: bouyer-socketcan-base
Branch point for: bouyer-socketcan
Changes since 1.88: +3 -1 lines
Diff to previous 1.88 (colored)

Enable some sysctl knobs on rump kernels for ifmcstat

Revision 1.88 / (download) - annotate - [select for diffs], Wed Jan 4 19:37:14 2017 UTC (3 years, 11 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-localcount-20170107
Changes since 1.87: +2 -3 lines
Diff to previous 1.87 (colored)

- kill NULL argument from in6_update_ifa
- amend in6_update_ifa1 to return the ia, so that we can use it in pfil hooks
  to avoid NULL pointer crash.

Revision 1.87 / (download) - annotate - [select for diffs], Wed Sep 14 16:17:17 2016 UTC (4 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: pgoyette-localcount-20161104, nick-nhusb-base-20161204, nick-nhusb-base-20161004
Changes since 1.86: +2 -2 lines
Diff to previous 1.86 (colored)

fix typo

Revision 1.86 / (download) - annotate - [select for diffs], Tue Sep 13 00:45:15 2016 UTC (4 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: localcount-20160914
Changes since 1.85: +2 -2 lines
Diff to previous 1.85 (colored)

remove trailing spaces. userland does not catch this?

Revision 1.85 / (download) - annotate - [select for diffs], Tue Sep 13 00:19:49 2016 UTC (4 years, 2 months ago) by christos
Branch: MAIN
Changes since 1.84: +6 -1 lines
Diff to previous 1.84 (colored)

add bits for address flags

Revision 1.84 / (download) - annotate - [select for diffs], Mon Aug 1 03:15:31 2016 UTC (4 years, 4 months ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-20160806
Changes since 1.83: +56 -6 lines
Diff to previous 1.83 (colored)

Apply pserialize and psref to struct ifaddr and its variants

This change makes struct ifaddr and its variants (in_ifaddr and in6_ifaddr)
MP-safe by using pserialize and psref. At this moment, pserialize_perform
and psref_target_destroy are disabled because (1) we don't need them
because of softnet_lock (2) they cause a deadlock because of softnet_lock.
So we'll enable them when we remove softnet_lock in the future.

Revision 1.83 / (download) - annotate - [select for diffs], Fri Jul 8 04:33:30 2016 UTC (4 years, 4 months ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-base, pgoyette-localcount-20160726, nick-nhusb-base-20160907
Branch point for: pgoyette-localcount
Changes since 1.82: +3 -9 lines
Diff to previous 1.82 (colored)

Replace macros to get an IP address with proper inline functions

The inline functions are more friendly for applying psz/psref;
they consist of only simple interations.

Revision 1.82 / (download) - annotate - [select for diffs], Fri Jul 8 03:40:34 2016 UTC (4 years, 4 months ago) by ozaki-r
Branch: MAIN
Changes since 1.81: +2 -2 lines
Diff to previous 1.81 (colored)

Kill remaining use of the old lists of IP addresses

Revision 1.81 / (download) - annotate - [select for diffs], Wed Jul 6 10:49:49 2016 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.80: +3 -1 lines
Diff to previous 1.80 (colored)

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

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

More varibles will join together.

Revision 1.80 / (download) - annotate - [select for diffs], Wed Jul 6 07:52:53 2016 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.79: +3 -1 lines
Diff to previous 1.79 (colored)

Add missing IN6_ADDRLIST_ENTRY_DESTROY

Revision 1.79 / (download) - annotate - [select for diffs], Mon Jul 4 07:32:18 2016 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.78: +3 -1 lines
Diff to previous 1.78 (colored)

Fix userland compilations of those including in6_var.h

Revision 1.78 / (download) - annotate - [select for diffs], Mon Jul 4 06:48:14 2016 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.77: +54 -4 lines
Diff to previous 1.77 (colored)

Use pslist(9) for the global in6_ifaddr list

psz and psref will be applied in another commit.

No functional change intended.

Revision 1.77 / (download) - annotate - [select for diffs], Wed Jun 22 07:48:17 2016 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.76: +1 -3 lines
Diff to previous 1.76 (colored)

Remove unnecessary NULL checks of ifa->ifa_addr

If it's NULL, it should be a bug. There many IFADDR_FOREACH that don't do
NULL check. If it can be NULL, they should fire already.

Revision 1.76 / (download) - annotate - [select for diffs], Thu Feb 4 02:48:37 2016 UTC (4 years, 10 months ago) by riastradh
Branch: MAIN
CVS Tags: nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319
Changes since 1.75: +2 -1 lines
Diff to previous 1.75 (colored)

Declare in6_tmpaddrtimer_ch in in6_var.h.

Do not declare extern variables in .c files!

Revision 1.75 / (download) - annotate - [select for diffs], Wed Nov 25 06:21:26 2015 UTC (5 years ago) by ozaki-r
Branch: MAIN
CVS Tags: nick-nhusb-base-20151226
Changes since 1.74: +7 -1 lines
Diff to previous 1.74 (colored)

Use lltable/llentry for NDP

lltable and llentry were introduced to replace ARP cache data structure
for further restructuring of the routing table: L2 nexthop cache
separation. This change replaces the NDP cache data structure
(llinfo_nd6) with them as well as ARP.

One noticeable change is for neighbor cache GC mechanism that was
introduced to prevent IPv6 DoS attacks. net.inet6.ip6.neighborgcthresh
was the max number of caches that we store in the system. After
introducing lltable/llentry, the value is changed to be per-interface
basis because lltable/llentry stores neighbor caches in each interface
separately. And the change brings one degradation; the old GC mechanism
dropped exceeded packets based on LRU while the new implementation drops
packets in order from the beginning of lltable (a hash table + linked
lists). It would be improved in the future.

Added functions in in6.c come from FreeBSD (as of r286629) and are
tweaked for NetBSD.

Proposed on tech-kern and tech-net.

Revision 1.74 / (download) - annotate - [select for diffs], Sun Sep 6 06:01:01 2015 UTC (5 years, 3 months ago) by dholland
Branch: MAIN
CVS Tags: nick-nhusb-base-20150921
Changes since 1.73: +2 -1 lines
Diff to previous 1.73 (colored)

More on PR 41200: headers that declare ioctls should include sys/ioccom.h.
This covers (I think) all the MI headers outside of external/ (and dist/).

Revision 1.73 / (download) - annotate - [select for diffs], Tue Apr 7 23:30:36 2015 UTC (5 years, 8 months ago) by roy
Branch: MAIN
CVS Tags: nick-nhusb-base-20150606
Changes since 1.72: +1 -2 lines
Diff to previous 1.72 (colored)

Move in6if_do_dad() to if_do_dad() as the routine is not INET6 specific
and could equally be used by INET.

Revision 1.72 / (download) - annotate - [select for diffs], Thu Feb 26 09:54:46 2015 UTC (5 years, 9 months ago) by roy
Branch: MAIN
CVS Tags: nick-nhusb-base-20150406
Changes since 1.71: +3 -3 lines
Diff to previous 1.71 (colored)

Introduce the routing flag RTF_LOCAL to track local address routes.
Add functions rt_ifa_addlocal() and rt_ifa_remlocal() to add and remove
local routes for the address and announce the new address and route
to the routing socket.

Add in_ifaddlocal() and in_ifremlocal() to use these functions.
Rename in6_if{add,rem}loop() to in6_if{add,rem}local() and use these
functions.

rtinit() no longer announces the address, just the network route for the
address. As such, calls to rt_newaddrmsg() have been removed from
in_addprefix() and in_scrubprefix().

This solves the problem of potentially more than one announcement, or no
announcement at all for the address in certain situations.

Revision 1.71 / (download) - annotate - [select for diffs], Fri Sep 5 06:06:31 2014 UTC (6 years, 3 months ago) by matt
Branch: MAIN
CVS Tags: nick-nhusb-base
Branch point for: nick-nhusb
Changes since 1.70: +3 -2 lines
Diff to previous 1.70 (colored)

Don't nest structure definitions.

Revision 1.70 / (download) - annotate - [select for diffs], Tue Jul 1 05:49:19 2014 UTC (6 years, 5 months ago) by rtr
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-2-RELEASE, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-2-RELEASE, netbsd-7-1-1-RELEASE, netbsd-7-1, netbsd-7-0-RELEASE, netbsd-7-0-RC3, netbsd-7-0-RC2, netbsd-7-0-RC1, netbsd-7-0-2-RELEASE, netbsd-7-0-1-RELEASE, netbsd-7-0, netbsd-7
Changes since 1.69: +2 -3 lines
Diff to previous 1.69 (colored)

fix parameter types in pr_ioctl, called xx_control() functions and remove
abuse of pointer to struct mbuf type.

param2 changed to u_long type and uses parameter name 'cmd' (ioctl command)
param3 changed to void * type and uses parameter name 'data'
param4 changed to struct ifnet * and uses parameter name 'ifp'
param5 has been removed (formerly struct lwp *) and uses of 'l' have been
       replaced with curlwp from curproc(9).

callers have had (now unnecessary) casts to struct mbuf * removed, called
code has had (now unnecessary) casts to u_long, void * and struct ifnet *
respectively removed.

reviewed by rmind@

Revision 1.69 / (download) - annotate - [select for diffs], Thu Jun 5 23:48:16 2014 UTC (6 years, 6 months ago) by rmind
Branch: MAIN
Changes since 1.68: +6 -2 lines
Diff to previous 1.68 (colored)

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

Discussed on tech-net.

Revision 1.68 / (download) - annotate - [select for diffs], Mon Jan 13 18:57:49 2014 UTC (6 years, 10 months ago) by roy
Branch: MAIN
CVS Tags: yamt-pagecache-base9, rmind-smpnet-nbase, rmind-smpnet-base, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.67: +1 -3 lines
Diff to previous 1.67 (colored)

Remove the now un-used function in6ifa_ifplocaladdr.

Revision 1.67 / (download) - annotate - [select for diffs], Thu Jan 2 18:29:01 2014 UTC (6 years, 11 months ago) by pooka
Branch: MAIN
Changes since 1.66: +2 -1 lines
Diff to previous 1.66 (colored)

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

Revision 1.66 / (download) - annotate - [select for diffs], Thu Oct 11 20:05:50 2012 UTC (8 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, khorben-n900, agc-symver-base, agc-symver
Branch point for: rmind-smpnet
Changes since 1.65: +2 -2 lines
Diff to previous 1.65 (colored)

PR/47058: Antti Kantee: If the ipv6 flow code modifies the mbuf, pass the
change up to the caller.

Revision 1.65 / (download) - annotate - [select for diffs], Sat Jun 23 03:14:03 2012 UTC (8 years, 5 months ago) by christos
Branch: MAIN
Branch point for: tls-maxphys
Changes since 1.64: +3 -1 lines
Diff to previous 1.64 (colored)

4 new sysctls to avoid ipv6 DoS attacks from OpenBSD

Revision 1.64 / (download) - annotate - [select for diffs], Thu Jan 15 23:22:15 2009 UTC (11 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base5, yamt-pagecache-base4, yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, yamt-nfs-mp-base9, yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base4, uebayasi-xip-base3, uebayasi-xip-base2, uebayasi-xip-base1, uebayasi-xip-base, uebayasi-xip, rmind-uvmplock-nbase, rmind-uvmplock-base, rmind-uvmplock, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base2, nick-hppapmap-base, netbsd-6-base, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, mjf-devfs2-base, matt-premerge-20091211, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, matt-mips64-premerge-20101231, jymxensuspend-base, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, jruoho-x86intr-base, jruoho-x86intr, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base9, jmcneill-usbmp-base8, jmcneill-usbmp-base7, jmcneill-usbmp-base6, jmcneill-usbmp-base5, jmcneill-usbmp-base4, jmcneill-usbmp-base3, jmcneill-usbmp-base2, jmcneill-usbmp-base10, jmcneill-usbmp-base, jmcneill-usbmp, jmcneill-audiomp3-base, jmcneill-audiomp3, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Branch point for: yamt-pagecache, netbsd-6-0, netbsd-6
Changes since 1.63: +5 -1 lines
Diff to previous 1.63 (colored)

mention that you'll need to update compat if you change the size of in6_ifreq.

Revision 1.63 / (download) - annotate - [select for diffs], Thu Jan 15 20:32:59 2009 UTC (11 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.62: +7 -5 lines
Diff to previous 1.62 (colored)

Emulate a couple more ioctls. Thanks to Matthias Drochner for pointing them out.

Revision 1.62 / (download) - annotate - [select for diffs], Thu Jan 15 18:20:48 2009 UTC (11 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.61: +7 -5 lines
Diff to previous 1.61 (colored)

- switch the lifetime struct to time_t and provide compatibility for the
  old ioctl.

Revision 1.61 / (download) - annotate - [select for diffs], Wed Jan 14 18:06:52 2009 UTC (11 years, 10 months ago) by christos
Branch: MAIN
Changes since 1.60: +3 -3 lines
Diff to previous 1.60 (colored)

Change back time_t in the lifetime struct to int32_t's for binary compatibily.
Since this is just the number of seconds for lifetime of the address, it is
not an issue.

Revision 1.60 / (download) - annotate - [select for diffs], Wed Aug 20 18:35:20 2008 UTC (12 years, 3 months ago) by matt
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, haad-nbase2, haad-dm-base2, haad-dm-base1, haad-dm-base, ad-audiomp2-base, ad-audiomp2
Branch point for: nick-hppapmap
Changes since 1.59: +3 -3 lines
Diff to previous 1.59 (colored)

Make the sysctl routines take out softnet_lock before dealing with
any data structures.

Change inet6ctlerrmap and zeroin6_addr to const.

Revision 1.59 / (download) - annotate - [select for diffs], Thu Jul 31 18:24:07 2008 UTC (12 years, 4 months ago) by matt
Branch: MAIN
Changes since 1.58: +3 -1 lines
Diff to previous 1.58 (colored)

Generalize previous fix so that both NS and NA packets are checked.

Revision 1.58 / (download) - annotate - [select for diffs], Tue Apr 15 03:57:04 2008 UTC (12 years, 7 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, yamt-nfs-mp-base2, yamt-nfs-mp-base, wrstuden-revivesa-base-1, wrstuden-revivesa-base, simonb-wapbl-nbase, simonb-wapbl-base, simonb-wapbl, hpcarm-cleanup-nbase
Branch point for: yamt-nfs-mp, wrstuden-revivesa, haad-dm
Changes since 1.57: +1 -2 lines
Diff to previous 1.57 (colored)

Make ip6 and icmp6 stats per-cpu.

Revision 1.57 / (download) - annotate - [select for diffs], Tue Apr 8 15:04:35 2008 UTC (12 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.56: +2 -2 lines
Diff to previous 1.56 (colored)

Change ICMP6 stats from a structure to an array of uint64_t's.

Note: This is ABI-compatible with the old icmp6stat structure; old netstat
binaries will continue to work properly.

Revision 1.56 / (download) - annotate - [select for diffs], Wed Dec 5 01:17:16 2007 UTC (13 years ago) by dyoung
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-nbase, matt-armv6-base, keiichi-mipv6-nbase, keiichi-mipv6-base, jmcneill-pm-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386, ad-socklock-base1
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored)

Use IFADDR_FOREACH().

Revision 1.55 / (download) - annotate - [select for diffs], Wed Oct 17 04:35:34 2007 UTC (13 years, 1 month ago) by jld
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, vmlocking2-base1, vmlocking-nbase, jmcneill-base, bouyer-xenamd64-base2, bouyer-xenamd64-base, bouyer-xenamd64
Branch point for: vmlocking2, mjf-devfs
Changes since 1.54: +2 -0 lines
Diff to previous 1.54 (colored)

If callout_t is to be used, then <sys/callout.h> should be included.
Fixes the build of ifconfig(8), which failed otherwise.

Revision 1.54 / (download) - annotate - [select for diffs], Tue Oct 16 20:31:33 2007 UTC (13 years, 1 month ago) by joerg
Branch: MAIN
Changes since 1.53: +2 -2 lines
Diff to previous 1.53 (colored)

Inline callout_t in struct in6_multi. This fixes a number of possible
memory leaks. Explicitly destroy the callout before freeing it.
Use callout_setfunc/callout_schedule instead of repeating it for
callout_reset.

Bump NetBSD version to 4.99.34 for kvm users.

Revision 1.53 / (download) - annotate - [select for diffs], Tue Sep 11 19:54:51 2007 UTC (13 years, 2 months ago) by gdt
Branch: MAIN
CVS Tags: yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, vmlocking-base
Branch point for: yamt-x86pmap
Changes since 1.52: +4 -1 lines
Diff to previous 1.52 (colored)

Remove SIOCSIFALIFETIME_IN6, which could not possibly have ever worked.

Problem reported in kern/35897 by Robert Elz.

Revision 1.52 / (download) - annotate - [select for diffs], Thu Jul 19 20:48:56 2007 UTC (13 years, 4 months ago) by dyoung
Branch: MAIN
CVS Tags: nick-csl-alignment-base5, matt-mips64-base, hpcarm-cleanup
Branch point for: matt-mips64, matt-armv6, jmcneill-pm
Changes since 1.51: +100 -63 lines
Diff to previous 1.51 (colored)

Take steps to hide the radix_node implementation of the forwarding table
from the forwarding table's users:

        Introduce rt_walktree() for walking the routing table and
        applying a function to each rtentry.  Replace most
        rn_walktree() calls with it.

        Use rt_getkey()/rt_setkey() to get/set a route's destination.
        Keep a pointer to the sockaddr key in the rtentry, so that
        rtentry users do not have to grovel in the radix_node for
        the key.

        Add a RTM_GET method to rtrequest.  Use that instead of
        radix_node lookups in, e.g., carp(4).

Add sys/net/link_proto.c, which supplies sockaddr routines for
link-layer socket addresses (sockaddr_dl).

Cosmetic:

        Constify.  KNF.  Stop open-coding LIST_FOREACH, TAILQ_FOREACH,
        et cetera.  Use NULL instead of 0 for null pointers.  Use
        __arraycount().  Reduce gratuitous parenthesization.

        Stop using variadic arguments for rip6_output(), it is
        unnecessary.

        Remove the unnecessary rtentry member rt_genmask and the
        code to maintain it, since nothing actually used it.

        Make rt_maskedcopy() easier to read by using meaningful variable
        names.

        Extract a subroutine intern_netmask() for looking up a netmask in
        the masks table.

        Start converting backslash-ridden IPv6 macros in
        sys/netinet6/in6_var.h into inline subroutines that one
        can read without special eyeglasses.

One functional change: when the kernel serves an RTM_GET, RTM_LOCK,
or RTM_CHANGE request, it applies the netmask (if supplied) to a
destination before searching for it in the forwarding table.

I have changed sys/netinet/ip_carp.c, carp_setroute(), to remove
the unlawful radix_node knowledge.

Apart from the changes to carp(4), netiso, ATM, and strip(4), I
have run the changes on three nodes in my wireless routing testbed,
which involves IPv4 + IPv6 dynamic routing acrobatics, and it's
working beautifully so far.

Revision 1.51 / (download) - annotate - [select for diffs], Wed Mar 7 22:20:04 2007 UTC (13 years, 9 months ago) by liamjfoy
Branch: MAIN
CVS Tags: yamt-idlelwp-base8, thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup, nick-csl-alignment-base, mjf-ufs-trans-base, mjf-ufs-trans
Branch point for: vmlocking, nick-csl-alignment
Changes since 1.50: +3 -1 lines
Diff to previous 1.50 (colored)

Add IPv6 Fast Forward - the IPv4 counterpart:

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

ok matt@ christos@ dyoung@ and joerg@

Revision 1.50 / (download) - annotate - [select for diffs], Sun Mar 4 06:03:26 2007 UTC (13 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.49: +4 -4 lines
Diff to previous 1.49 (colored)

Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.

Revision 1.49 / (download) - annotate - [select for diffs], Sat Feb 17 22:34:13 2007 UTC (13 years, 9 months ago) by dyoung
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.48: +4 -3 lines
Diff to previous 1.48 (colored)

KNF: de-__P, bzero -> memset, bcmp -> memcmp.  Remove extraneous
   parentheses in return statements.

Cosmetic: don't open-code TAILQ_FOREACH().

Cosmetic: change types of variables to avoid oodles of casts: in
   in6_src.c, avoid casts by changing several route_in6 pointers
   to struct route pointers.  Remove unnecessary casts to caddr_t
   elsewhere.

Pave the way for eliminating address family-specific route caches:
   soon, struct route will not embed a sockaddr, but it will hold
   a reference to an external sockaddr, instead.  We will set the
   destination sockaddr using rtcache_setdst().  (I created a stub
   for it, but it isn't used anywhere, yet.)  rtcache_free() will
   free the sockaddr.  I have extracted from rtcache_free() a helper
   subroutine, rtcache_clear().  rtcache_clear() will "forget" a
   cached route, but it will not forget the destination by releasing
   the sockaddr.  I use rtcache_clear() instead of rtcache_free()
   in rtcache_update(), because rtcache_update() is not supposed
   to forget the destination.

Constify:

   1 Introduce const accessor for route->ro_dst, rtcache_getdst().

   2 Constify the 'dst' argument to ifnet->if_output().  This
     led me to constify a lot of code called by output routines.

   3 Constify the sockaddr argument to protosw->pr_ctlinput.  This
     led me to constify a lot of code called by ctlinput routines.

   4 Introduce const macros for converting from a generic sockaddr
     to family-specific sockaddrs, e.g., sockaddr_in: satocsin6,
     satocsin, et cetera.

Revision 1.48 / (download) - annotate - [select for diffs], Sat Dec 2 18:59:17 2006 UTC (14 years ago) by dyoung
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, post-newlock2-merge, newlock2-nbase, newlock2-base
Branch point for: yamt-idlelwp
Changes since 1.47: +53 -54 lines
Diff to previous 1.47 (colored)

Use the queue(3) macros instead of open-coding them.  Shorten
staircases.  Remove unnecessary casts.  Where appropriate, s/8/NBBY/.
De-__P().  KNF.

No functional changes intended.

Revision 1.47 / (download) - annotate - [select for diffs], Mon Nov 20 04:17:57 2006 UTC (14 years ago) by dyoung
Branch: MAIN
CVS Tags: wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, matt-nb4-arm-base, matt-nb4-arm
Branch point for: netbsd-4-0, netbsd-4
Changes since 1.46: +2 -2 lines
Diff to previous 1.46 (colored)

Use TAILQ_FOREACH().

Revision 1.46 / (download) - annotate - [select for diffs], Tue Oct 17 14:52:21 2006 UTC (14 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.45: +11 -11 lines
Diff to previous 1.45 (colored)

use portable bitfields.

Revision 1.45 / (download) - annotate - [select for diffs], Sun Jul 23 22:06:13 2006 UTC (14 years, 4 months ago) by ad
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, yamt-pdpolicy-base7, rpaulo-netinet-merge-pcb-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.44: +2 -2 lines
Diff to previous 1.44 (colored)

Use the LWP cached credentials where sane.

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

Integrate Common Address Redundancy Procotol (CARP) from OpenBSD

'pseudo-device	carp'

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

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

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

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

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

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

Revision 1.42 / (download) - annotate - [select for diffs], Fri Mar 3 14:07:06 2006 UTC (14 years, 9 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-pdpolicy-base
Branch point for: yamt-pdpolicy
Changes since 1.41: +2 -2 lines
Diff to previous 1.41 (colored)

Fix typos in comments.

From: the KAME project via SUZUKI Shinsuke.

Revision 1.41 / (download) - annotate - [select for diffs], Sat Jan 21 00:15:36 2006 UTC (14 years, 10 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5
Branch point for: simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.40: +14 -7 lines
Diff to previous 1.40 (colored)

Better support of IPv6 scoped addresses.

- most of the kernel code will not care about the actual encoding of
  scope zone IDs and won't touch "s6_addr16[1]" directly.
- similarly, most of the kernel code will not care about link-local
  scoped addresses as a special case.
- scope boundary check will be stricter.  For example, the current
  *BSD code allows a packet with src=::1 and dst=(some global IPv6
  address) to be sent outside of the node, if the application do:
    s = socket(AF_INET6);
    bind(s, "::1");
    sendto(s, some_global_IPv6_addr);
  This is clearly wrong, since ::1 is only meaningful within a single
  node, but the current implementation of the *BSD kernel cannot
  reject this attempt.
- and, while there, don't try to remove the ff02::/32 interface route
  entry in in6_ifdetach() as it's already gone.

This also includes some level of support for the standard source
address selection algorithm defined in RFC3484, which will be
completed on in the future.

From the KAME project via JINMEI Tatuya.
Approved by core@.

Revision 1.40 / (download) - annotate - [select for diffs], Sat Dec 10 23:39:56 2005 UTC (14 years, 11 months ago) by elad
Branch: MAIN
CVS Tags: ktrace-lwp-base
Branch point for: yamt-uio_vmspace
Changes since 1.39: +2 -2 lines
Diff to previous 1.39 (colored)

Multiple inclusion protection, as suggested by christos@ on tech-kern@
few days ago.

Revision 1.39 / (download) - annotate - [select for diffs], Sun May 29 21:43:51 2005 UTC (15 years, 6 months ago) by christos
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-vop-base, yamt-vop, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr
Branch point for: yamt-lazymbuf
Changes since 1.38: +10 -10 lines
Diff to previous 1.38 (colored)

- avoid shadowed variables
- sprinkle const.

Revision 1.38 / (download) - annotate - [select for diffs], Tue Feb 1 15:29:23 2005 UTC (15 years, 10 months ago) by drochner
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, yamt-km-base2, netbsd-3-base, netbsd-3-1-RELEASE, netbsd-3-1-RC4, netbsd-3-1-RC3, netbsd-3-1-RC2, netbsd-3-1-RC1, netbsd-3-1-1-RELEASE, netbsd-3-0-RELEASE, netbsd-3-0-RC6, netbsd-3-0-RC5, netbsd-3-0-RC4, netbsd-3-0-RC3, netbsd-3-0-RC2, netbsd-3-0-RC1, netbsd-3-0-3-RELEASE, netbsd-3-0-2-RELEASE, netbsd-3-0-1-RELEASE, kent-audio2-base
Branch point for: netbsd-3-1, netbsd-3-0, netbsd-3
Changes since 1.37: +1 -2 lines
Diff to previous 1.37 (colored)

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

Revision 1.37 / (download) - annotate - [select for diffs], Wed Jun 16 02:36:37 2004 UTC (16 years, 5 months ago) by itojun
Branch: MAIN
CVS Tags: yamt-km-base, kent-audio1-beforemerge, kent-audio1-base, kent-audio1
Branch point for: yamt-km, kent-audio2
Changes since 1.36: +2 -2 lines
Diff to previous 1.36 (colored)

insufficient paren in macro def.  Patrick Latifi

Revision 1.36 / (download) - annotate - [select for diffs], Wed Oct 15 01:28:28 2003 UTC (17 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: netbsd-2-base, netbsd-2-1-RELEASE, netbsd-2-1-RC6, netbsd-2-1-RC5, netbsd-2-1-RC4, netbsd-2-1-RC3, netbsd-2-1-RC2, netbsd-2-1-RC1, netbsd-2-1, netbsd-2-0-base, netbsd-2-0-RELEASE, netbsd-2-0-RC5, netbsd-2-0-RC4, netbsd-2-0-RC3, netbsd-2-0-RC2, netbsd-2-0-RC1, netbsd-2-0-3-RELEASE, netbsd-2-0-2-RELEASE, netbsd-2-0-1-RELEASE, netbsd-2-0, netbsd-2
Changes since 1.35: +9 -7 lines
Diff to previous 1.35 (colored)

define struct prf_ra outside of in6_prflags, to be c++ friendly.  sync w/kame

Revision 1.35 / (download) - annotate - [select for diffs], Thu Aug 7 16:33:26 2003 UTC (17 years, 4 months ago) by agc
Branch: MAIN
Changes since 1.34: +2 -6 lines
Diff to previous 1.34 (colored)

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

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

Revision 1.34 / (download) - annotate - [select for diffs], Sat Feb 1 06:23:47 2003 UTC (17 years, 10 months ago) by thorpej
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.33: +3 -1 lines
Diff to previous 1.33 (colored)

Add extensible malloc types, adapted from FreeBSD.  This turns
malloc types into a structure, a pointer to which is passed around,
instead of an int constant.  Allow the limit to be adjusted when the
malloc type is defined, or with a function call, as suggested by
Jonathan Stone.

Revision 1.33 / (download) - annotate - [select for diffs], Sat Nov 2 07:30:56 2002 UTC (18 years, 1 month ago) by perry
Branch: MAIN
CVS Tags: nathanw_sa_before_merge, nathanw_sa_base, gmcgarry_ucred_base, gmcgarry_ucred, gmcgarry_ctxsw_base, gmcgarry_ctxsw, fvdl_fs64_base
Changes since 1.32: +6 -6 lines
Diff to previous 1.32 (colored)

/*CONTCOND*/ while (0)'ed macros

Revision 1.32 / (download) - annotate - [select for diffs], Sat Jun 8 21:22:32 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge, gehenna-devsw-base
Changes since 1.31: +25 -15 lines
Diff to previous 1.31 (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.31 / (download) - annotate - [select for diffs], Sat Jun 8 00:07:00 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.30: +1 -2 lines
Diff to previous 1.30 (colored)

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

Revision 1.30 / (download) - annotate - [select for diffs], Fri Jun 7 18:19:30 2002 UTC (18 years, 6 months ago) by fvdl
Branch: MAIN
Changes since 1.29: +4 -2 lines
Diff to previous 1.29 (colored)

Fix mistakes in previous.

Revision 1.29 / (download) - annotate - [select for diffs], Fri Jun 7 14:37:38 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.28: +2 -2 lines
Diff to previous 1.28 (colored)

style

Revision 1.28 / (download) - annotate - [select for diffs], Fri Jun 7 14:35:55 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.27: +12 -16 lines
Diff to previous 1.27 (colored)

consistency

Revision 1.27 / (download) - annotate - [select for diffs], Wed May 29 07:53:41 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.26: +5 -10 lines
Diff to previous 1.26 (colored)

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

Revision 1.26 / (download) - annotate - [select for diffs], Wed May 29 02:58:31 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.25: +16 -6 lines
Diff to previous 1.25 (colored)

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

Revision 1.25 / (download) - annotate - [select for diffs], Thu May 23 06:35:18 2002 UTC (18 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.24: +2 -1 lines
Diff to previous 1.24 (colored)

simplify conditions to do DAD.  sync w/kame

Revision 1.24 / (download) - annotate - [select for diffs], Fri Dec 21 08:54:54 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: newlock-base, newlock, netbsd-1-6-base, netbsd-1-6-RELEASE, netbsd-1-6-RC3, netbsd-1-6-RC2, netbsd-1-6-RC1, netbsd-1-6-PATCH002-RELEASE, netbsd-1-6-PATCH002-RC4, netbsd-1-6-PATCH002-RC3, netbsd-1-6-PATCH002-RC2, netbsd-1-6-PATCH002-RC1, netbsd-1-6-PATCH002, netbsd-1-6-PATCH001-RELEASE, netbsd-1-6-PATCH001-RC3, netbsd-1-6-PATCH001-RC2, netbsd-1-6-PATCH001-RC1, netbsd-1-6-PATCH001, netbsd-1-6, ifpoll-base, eeh-devprop-base, eeh-devprop
Branch point for: gehenna-devsw
Changes since 1.23: +1 -3 lines
Diff to previous 1.23 (colored)

whitespace/costmetic sync w/kame

Revision 1.23 / (download) - annotate - [select for diffs], Thu Dec 20 07:26:37 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.22: +4 -1 lines
Diff to previous 1.22 (colored)

centralize multicast group management (in6_join/leavegroup).
have a flag for ip6_output() to fragment to minimum MTU.
sync with kame

Revision 1.22 / (download) - annotate - [select for diffs], Tue Dec 18 03:04:03 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.21: +2 -2 lines
Diff to previous 1.21 (colored)

reduce white space/cosmetic diffs w/kame.

Revision 1.21 / (download) - annotate - [select for diffs], Thu Oct 18 07:44:34 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

reduce diffs with kame (mostly cosmetic).
move IPV6_CHECKSUM processing to sys/netinet6/raw_ip6.c.
constify a couple of places.

Revision 1.20 / (download) - annotate - [select for diffs], Tue Oct 16 06:24:44 2001 UTC (19 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

more whitespace/comment sync with kame

Revision 1.19 / (download) - annotate - [select for diffs], Wed Jul 18 13:12:28 2001 UTC (19 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: thorpej-devvp-base3, thorpej-devvp-base2, thorpej-devvp-base, thorpej-devvp, pre-chs-ubcperf, post-chs-ubcperf
Changes since 1.18: +2 -1 lines
Diff to previous 1.18 (colored)

do not malloc() during interrupt context for IPv6 multicast kludge table.
malloc() during interface initialization.  sync with kame

Revision 1.18 / (download) - annotate - [select for diffs], Sat Feb 10 04:14:27 2001 UTC (19 years, 9 months ago) by itojun
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: nathanw_sa, kqueue
Changes since 1.17: +4 -4 lines
Diff to previous 1.17 (colored)

to sync with kame better, (1) remove register declaration for variables,
(2) sync whitespaces, (3) update comments. (4) bring in some of portability
and logging enhancements.  no functional changes here.

Revision 1.17 / (download) - annotate - [select for diffs], Thu Feb 8 14:56:16 2001 UTC (19 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.16: +9 -2 lines
Diff to previous 1.16 (colored)

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

Revision 1.16 / (download) - annotate - [select for diffs], Sun Apr 16 15:28:00 2000 UTC (20 years, 7 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-RELEASE, netbsd-1-5-PATCH003, netbsd-1-5-PATCH002, netbsd-1-5-PATCH001, netbsd-1-5-BETA2, netbsd-1-5-BETA, netbsd-1-5-ALPHA2, netbsd-1-5, minoura-xpg4dl-base, minoura-xpg4dl
Changes since 1.15: +3 -1 lines
Diff to previous 1.15 (colored)

perform neighbor unreachability detection on p2p links (spec requires
it for bidir p2p links).
improve -i in ndp(8) to allow tweaking per-interface ND flag on.
fix ndp(8) infinite loop on certain routing table setup.

Revision 1.15 / (download) - annotate - [select for diffs], Sun Apr 16 15:00:57 2000 UTC (20 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.14: +6 -6 lines
Diff to previous 1.14 (colored)

better sync with latest kame (cosmetic only).

Revision 1.14 / (download) - annotate - [select for diffs], Fri Mar 24 04:09:05 2000 UTC (20 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.13: +1 -5 lines
Diff to previous 1.13 (colored)

move ia6->ia6_dad_ch to dp->dad_timer_ch, to ease KAME code sharing.
now in6_var.h does not need to pull sys/callout.h in.

Revision 1.13 / (download) - annotate - [select for diffs], Thu Mar 23 07:03:30 2000 UTC (20 years, 8 months ago) by thorpej
Branch: MAIN
Changes since 1.12: +5 -1 lines
Diff to previous 1.12 (colored)

New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.

Revision 1.12 / (download) - annotate - [select for diffs], Sat Feb 26 08:39:20 2000 UTC (20 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.11: +4 -3 lines
Diff to previous 1.11 (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.

Revision 1.11 / (download) - annotate - [select for diffs], Fri Feb 25 05:13:06 2000 UTC (20 years, 9 months ago) by itojun
Branch: MAIN
Changes since 1.10: +16 -2 lines
Diff to previous 1.10 (colored)

on SIOCS*_IN6, validate sockaddrs so that we never configure non-AF_INET6
addresses. (in_control has the same problem - I'll need to check it as well)

obsolete the following two ioctls, they do not fit well against IPv6 addressing
model. (the kernel support them for some period of time, we'll remove them
in the near future)
	SIOCSIFDSTADDR_IN6
	SIOCSIFNETMASK_IN6

Revision 1.10 / (download) - annotate - [select for diffs], Fri Feb 4 14:34:26 2000 UTC (20 years, 10 months ago) by itojun
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored)

avoid calling in6_control(SIOCDIFADDR_IN6) from interrupt context.
it is not supposed to work.
logging fix: add "\n" to some of log() in in6_prefix.c.

improve in6_ifdetach().  now almost all structure depend on ifnet
will be cleared up.
possible loose ends:
- cached route_in6 in static varaiables needs to be cleared as well
- there are ifaddr manipulation without reference counting,
  which should be fixed
we still see panics after card removal, though...  not sure what is left.

(sync with kame)

Revision 1.9 / (download) - annotate - [select for diffs], Wed Feb 2 23:28:10 2000 UTC (20 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.8: +2 -1 lines
Diff to previous 1.8 (colored)

PRU_PURGEADDR -> PRU_PURGEIF, per a discussion w/ itojun.  In the IPv4
and IPv6 code, also use this to traverse PCB tables, looking for cached
routes referencing the dying ifnet, forcing them to be refreshed.

Revision 1.8 / (download) - annotate - [select for diffs], Wed Feb 2 16:58:11 2000 UTC (20 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.7: +2 -1 lines
Diff to previous 1.7 (colored)

implement in6_purgemkludge().  in6_ifdetach() calls it to avoid dangling
kludge entries.  the situation would occur if you take the following steps:
- join multicast groups (default ones like linklocal all-node is fine)
- remove all IPv6 addresses manually
- remove pcmcia card

to thorpej: pls call in6_ifdetach() when PRU_PURGEIF is raised (just before
removing ifnet).  it should do the right thing (unable to perform real test
though)

Revision 1.7 / (download) - annotate - [select for diffs], Tue Feb 1 22:52:11 2000 UTC (20 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.6: +2 -1 lines
Diff to previous 1.6 (colored)

First-draft if_detach() implementation, originally from Bill Studnemund,
although this version has been changed somewhat:
- reference counting on ifaddrs isn't as complete as Bill's original
  work was.  This is hard to get right, and we should attack one
  protocol at a time.
- This doesn't do reference counting or dynamic allocation of ifnets yet.
- This version introduces a new PRU -- PRU_PURGEADDR, which is used to
  purge an ifaddr from a protocol.  The old method Bill used didn't work
  on all protocols, and it only worked on some because it was Very Lucky.

This mostly works ... i.e. works for my USB Ethernet, except for a dangling
ifaddr reference left by the IPv6 code; have not yet tracked this down.

Revision 1.6 / (download) - annotate - [select for diffs], Thu Jan 6 15:46:09 2000 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.5: +2 -83 lines
Diff to previous 1.5 (colored)

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

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

Revision 1.5 / (download) - annotate - [select for diffs], Mon Dec 13 15:17:22 1999 UTC (20 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.4: +250 -18 lines
Diff to previous 1.4 (colored)

sync IPv6 part with latest KAME tree.   IPsec part is left unmodified
due to massive changes in KAME side.
- IPv6 output goes through nd6_output
- faith can capture IPv4 packets as well - you can run IPv4-to-IPv6 translator
  using heavily modified DNS servers
- per-interface statistics (required for IPv6 MIB)
- interface autoconfig is revisited
- udp input handling has a big change for mapped address support.
- introduce in4_cksum() for non-overwriting checksumming
- introduce m_pulldown()
- neighbor discovery cleanups/improvements
- netinet/in.h strictly conforms to RFC2553 (no extra defs visible to userland)
- IFA_STATS is fixed a bit (not tested)
- and more more more.

TODO:
- cleanup os-independency #ifdef
- avoid rcvif dual use (for IPsec) to help ifdetach

(sorry for jumbo commit, I can't separate this any more...)

Revision 1.4 / (download) - annotate - [select for diffs], Thu Jul 22 03:59:42 1999 UTC (21 years, 4 months ago) by itojun
Branch: MAIN
CVS Tags: fvdl-softdep-base, fvdl-softdep, comdex-fall-1999-base, comdex-fall-1999, chs-ubc2-base
Branch point for: wrstuden-devbsize, thorpej_scsipi
Changes since 1.3: +6 -6 lines
Diff to previous 1.3 (colored)

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

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

RCS ID police.

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

IPv6 kernel code, based on KAME/NetBSD 1.4, SNAP kit 19990628.
(Sorry for a big commit, I can't separate this into several pieces...)
Pls check sys/netinet6/TODO and sys/netinet6/IMPLEMENTATION for details.

- sys/kern: do not assume single mbuf, accept chained mbuf on passing
  data from userland to kernel (or other way round).
- "midway" ATM card: ATM PVC pseudo device support, like those done in ALTQ
  package (ftp://ftp.csl.sony.co.jp/pub/kjc/).
- sys/netinet/tcp*: IPv4/v6 dual stack tcp support.
- sys/netinet/{ip6,icmp6}.h, sys/net/pfkeyv2.h: IETF document assumes those
  file to be there so we patch it up.
- sys/netinet: IPsec additions are here and there.
- sys/netinet6/*: most of IPv6 code sits here.
- sys/netkey: IPsec key management code
- dev/pci/pcidevs: regen

In my understanding no code here is subject to export control so it
should be safe.

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

file in6_var.h was initially added on branch kame.

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




CVSweb <webmaster@jp.NetBSD.org>