The NetBSD Project

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

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

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: MAIN


Revision 1.131 / (download) - annotate - [select for diffs], Fri Jan 3 08:53:14 2020 UTC (3 weeks, 4 days ago) by maxv
Branch: MAIN
CVS Tags: ad-namecache-base2, ad-namecache-base1, ad-namecache-base, ad-namecache, HEAD
Changes since 1.130: +5 -8 lines
Diff to previous 1.130 (colored)

Don't forget to initialize 'sin6_len'. With kASan, from time to time the
value will be bigger than the size of the source, and we get a read
overflow. With kMSan the uninitialized access is detected immediately.

Reported-by: syzbot+841ca14baccec37b4f8f@syzkaller.appspotmail.com

Revision 1.130 / (download) - annotate - [select for diffs], Wed Jul 24 02:38:29 2019 UTC (6 months ago) by msaitoh
Branch: MAIN
CVS Tags: phil-wifi-20191119, netbsd-9-base, netbsd-9-0-RC1
Branch point for: netbsd-9
Changes since 1.129: +3 -3 lines
Diff to previous 1.129 (colored)

 Fix typo in comment (s/alreay/already/).

Revision 1.129 / (download) - annotate - [select for diffs], Thu Jun 21 10:37:50 2018 UTC (19 months, 1 week ago) by knakahara
Branch: MAIN
CVS Tags: phil-wifi-base, phil-wifi-20190609, phil-wifi, 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, isaki-audio2-base, isaki-audio2
Changes since 1.128: +7 -2 lines
Diff to previous 1.128 (colored)

sbappendaddr() is required any lock. Currently, softnet_lock is appropriate.

When rip_input() is called as inetsw[].pr_input, rip_iput() is always called
with holding softnet_lock, that is, in case of !defined(NET_MPSAFE) it is
acquired in ipintr(), otherwise(defined(NET_MPSAFE)) it is acquire in
PR_WRAP_INPUT macro.
However, some function calls rip_input() directly without holding softnet_lock.
That causes assertion failure in sbappendaddr().
rip6_input() and icmp6_rip6_input() are also required softnet_lock for the same
reason.

Revision 1.128 / (download) - annotate - [select for diffs], Sun May 20 06:29:43 2018 UTC (20 months, 1 week ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-0521
Changes since 1.127: +2 -6 lines
Diff to previous 1.127 (colored)

Remove notyet, we've never had this.

Revision 1.127 / (download) - annotate - [select for diffs], Tue May 1 07:21:39 2018 UTC (20 months, 4 weeks ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-0502
Changes since 1.126: +2 -4 lines
Diff to previous 1.126 (colored)

Remove now unused net_osdep.h includes, the other BSDs did the same.

Revision 1.126 / (download) - annotate - [select for diffs], Sun Apr 29 07:05:13 2018 UTC (21 months ago) by maxv
Branch: MAIN
Changes since 1.125: +5 -5 lines
Diff to previous 1.125 (colored)

Replace
	m_copym(m, 0, M_COPYALL, M_DONTWAIT)
by
	m_copypacket(m, M_DONTWAIT)
when it is obvious that 'm' has M_PKTHDR set.

Revision 1.125 / (download) - annotate - [select for diffs], Thu Apr 26 19:50:09 2018 UTC (21 months ago) by maxv
Branch: MAIN
Changes since 1.124: +8 -8 lines
Diff to previous 1.124 (colored)

Stop using m_copy(), use m_copym() directly. m_copy is useless,
undocumented and confusing.

Revision 1.124 / (download) - annotate - [select for diffs], Thu Apr 26 07:28:21 2018 UTC (21 months ago) by maxv
Branch: MAIN
Changes since 1.123: +5 -9 lines
Diff to previous 1.123 (colored)

Use M_UNWRITABLE, no functional change.

Revision 1.123 / (download) - annotate - [select for diffs], Wed Mar 21 14:23:54 2018 UTC (22 months, 1 week ago) by roy
Branch: MAIN
CVS Tags: pgoyette-compat-0422, pgoyette-compat-0415, pgoyette-compat-0407, pgoyette-compat-0330, pgoyette-compat-0322
Changes since 1.122: +3 -2 lines
Diff to previous 1.122 (colored)

Sprinkle more soroverflow().

Revision 1.122 / (download) - annotate - [select for diffs], Tue Feb 6 06:32:25 2018 UTC (23 months, 3 weeks ago) by maxv
Branch: MAIN
CVS Tags: pgoyette-compat-base, pgoyette-compat-0315
Branch point for: pgoyette-compat
Changes since 1.121: +3 -13 lines
Diff to previous 1.121 (colored)

Remove dead code.

Revision 1.121 / (download) - annotate - [select for diffs], Fri Feb 2 09:01:17 2018 UTC (23 months, 3 weeks ago) by maxv
Branch: MAIN
Changes since 1.120: +78 -78 lines
Diff to previous 1.120 (colored)

Style, no functional change.

Revision 1.120 / (download) - annotate - [select for diffs], Fri Feb 2 06:23:45 2018 UTC (23 months, 3 weeks ago) by maxv
Branch: MAIN
Changes since 1.119: +3 -3 lines
Diff to previous 1.119 (colored)

Fix a pretty simple, yet pretty tragic typo: we should return IPPROTO_DONE,
not IPPROTO_NONE. With IPPROTO_NONE we will keep parsing the header chain
on an mbuf that was already freed.

Revision 1.119 / (download) - annotate - [select for diffs], Wed Mar 1 08:54:12 2017 UTC (2 years, 10 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, perseant-stdc-iso10646-base, perseant-stdc-iso10646, nick-nhusb-base-20170825, netbsd-8-base, matt-nb8-mediatek-base, matt-nb8-mediatek, jdolecek-ncq-base, jdolecek-ncq, bouyer-socketcan-base1
Branch point for: netbsd-8
Changes since 1.118: +5 -5 lines
Diff to previous 1.118 (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.118 / (download) - annotate - [select for diffs], Wed Feb 22 07:46:00 2017 UTC (2 years, 11 months ago) by ozaki-r
Branch: MAIN
Changes since 1.117: +3 -3 lines
Diff to previous 1.117 (colored)

Stop using useless IN6_*_MULTI macros

Revision 1.117 / (download) - annotate - [select for diffs], Tue Feb 14 03:05:06 2017 UTC (2 years, 11 months ago) by ozaki-r
Branch: MAIN
Changes since 1.116: +3 -8 lines
Diff to previous 1.116 (colored)

Do ND in L2_output in the same manner as arpresolve

The benefits of this change are:
- The flow is consistent with IPv4 (and FreeBSD and OpenBSD)
  - old: ip6_output => nd6_output (do ND if needed) => L2_output (lookup a stored cache)
  - new: ip6_output => L2_output (lookup a cache. Do ND if cache not found)
- We can remove some workarounds in nd6_output
- We can move L2 specific operations to their own place
- The performance slightly improves because one cache lookup is reduced

Revision 1.116 / (download) - annotate - [select for diffs], Tue Jan 24 07:09:25 2017 UTC (3 years ago) by ozaki-r
Branch: MAIN
CVS Tags: nick-nhusb-base-20170204
Changes since 1.115: +3 -2 lines
Diff to previous 1.115 (colored)

Tweak softnet_lock and NET_MPSAFE

- Don't hold softnet_lock in some functions if NET_MPSAFE
- Add softnet_lock to sysctl_net_inet_icmp_redirtimeout
- Add softnet_lock to expire_upcalls of ip_mroute.c
- Restore softnet_lock for in{,6}_pcbpurgeif{,0} if NET_MPSAFE
- Mark some softnet_lock for future work

Revision 1.115 / (download) - annotate - [select for diffs], Mon Jan 16 15:44:47 2017 UTC (3 years ago) by christos
Branch: MAIN
Changes since 1.114: +30 -30 lines
Diff to previous 1.114 (colored)

ip6_sprintf -> IN6_PRINT so that we pass the size.

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

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

Reviewed by ozaki-r@

Revision 1.113 / (download) - annotate - [select for diffs], Wed Jan 11 13:08:29 2017 UTC (3 years ago) by ozaki-r
Branch: MAIN
CVS Tags: bouyer-socketcan-base
Branch point for: bouyer-socketcan
Changes since 1.112: +2 -3 lines
Diff to previous 1.112 (colored)

Get rid of unnecessary header inclusions

Revision 1.112 / (download) - annotate - [select for diffs], Fri Jul 15 07:40:09 2016 UTC (3 years, 6 months ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-20170107, pgoyette-localcount-20161104, pgoyette-localcount-20160806, pgoyette-localcount-20160726, nick-nhusb-base-20161204, nick-nhusb-base-20161004, localcount-20160914
Changes since 1.111: +5 -6 lines
Diff to previous 1.111 (colored)

Use sin6tosa and sin6tocsa macros

No functional change.

Revision 1.111 / (download) - annotate - [select for diffs], Tue Jun 21 03:28:27 2016 UTC (3 years, 7 months ago) by ozaki-r
Branch: MAIN
CVS Tags: pgoyette-localcount-base, nick-nhusb-base-20160907
Branch point for: pgoyette-localcount
Changes since 1.110: +3 -3 lines
Diff to previous 1.110 (colored)

Replace ifp of ip_moptions and ip6_moptions with if_index

The motivation is the same as the mbuf's rcvif case; avoid having a pointer
of an ifnet object in ip_moptions and ip6_moptions, which is not MP-safe.

ip_moptions and ip6_moptions can be stored in a PCB for inet or inet6
that's life time is different from ifnet one and so an ifnet object can be
disappeared anytime we get it via them. Thus we need to look up an ifnet
object by if_index every time for safe.

Revision 1.110 / (download) - annotate - [select for diffs], Fri Jun 10 13:31:44 2016 UTC (3 years, 7 months ago) by ozaki-r
Branch: MAIN
Changes since 1.109: +6 -6 lines
Diff to previous 1.109 (colored)

Avoid storing a pointer of an interface in a mbuf

Having a pointer of an interface in a mbuf isn't safe if we remove big
kernel locks; an interface object (ifnet) can be destroyed anytime in any
packet processing and accessing such object via a pointer is racy. Instead
we have to get an object from the interface collection (ifindex2ifnet) via
an interface index (if_index) that is stored to a mbuf instead of an
pointer.

The change provides two APIs: m_{get,put}_rcvif_psref that use psref(9)
for sleep-able critical sections and m_{get,put}_rcvif that use
pserialize(9) for other critical sections. The change also adds another
API called m_get_rcvif_NOMPSAFE, that is NOT MP-safe and for transition
moratorium, i.e., it is intended to be used for places where are not
planned to be MP-ified soon.

The change adds some overhead due to psref to performance sensitive paths,
however the overhead is not serious, 2% down at worst.

Proposed on tech-kern and tech-net.

Revision 1.109 / (download) - annotate - [select for diffs], Mon Aug 24 22:21:27 2015 UTC (4 years, 5 months ago) by pooka
Branch: MAIN
CVS Tags: nick-nhusb-base-20160529, nick-nhusb-base-20160422, nick-nhusb-base-20160319, nick-nhusb-base-20151226, nick-nhusb-base-20150921
Changes since 1.108: +4 -2 lines
Diff to previous 1.108 (colored)

sprinkle _KERNEL_OPT

Revision 1.108 / (download) - annotate - [select for diffs], Fri Aug 7 08:11:33 2015 UTC (4 years, 5 months ago) by ozaki-r
Branch: MAIN
Changes since 1.107: +4 -4 lines
Diff to previous 1.107 (colored)

Use time_uptime instead of time_second to avoid time leaps

Some codes in sys/net* use time_second to manage time periods such as
cache expirations. However, time_second doesn't increase monotonically
and can leap by say settimeofday(2) according to time_second(9). We
should use time_uptime instead of it to avoid such time leaps.

This change replaces time_second with time_uptime. Additionally it
converts a time based on time_uptime to a time based on time_second
when the kernel passes the time to userland programs that expect
the latter, and vice versa.

Note that we shouldn't leak time_uptime to other hosts over the
netowrk. My investigation shows there is no such leak:
http://mail-index.netbsd.org/tech-net/2015/08/06/msg005332.html

Discussed on tech-kern and tech-net.

Revision 1.107 / (download) - annotate - [select for diffs], Sat May 17 21:26:20 2014 UTC (5 years, 8 months ago) by rmind
Branch: MAIN
CVS Tags: tls-maxphys-base, tls-earlyentropy-base, rmind-smpnet-nbase, rmind-smpnet-base, nick-nhusb-base-20150606, nick-nhusb-base-20150406, nick-nhusb-base, netbsd-7-nhusb-base-20170116, netbsd-7-nhusb-base, netbsd-7-nhusb, netbsd-7-base, netbsd-7-1-RELEASE, netbsd-7-1-RC2, netbsd-7-1-RC1, netbsd-7-1-1-RELEASE, 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
Branch point for: nick-nhusb, netbsd-7-1, netbsd-7-0, netbsd-7
Changes since 1.106: +3 -9 lines
Diff to previous 1.106 (colored)

Replace open-coded access (and boundary checking) of ifindex2ifnet with
if_byindex() function.

Revision 1.106 / (download) - annotate - [select for diffs], Tue Feb 25 18:30:12 2014 UTC (5 years, 11 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-pagecache-base9, riastradh-xf86-video-intel-2-7-1-pre-2-21-15, riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.105: +3 -7 lines
Diff to previous 1.105 (colored)

Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before
the sysctl link sets are processed, and remove redundancy.

Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate
lines of code.

Revision 1.105 / (download) - annotate - [select for diffs], Thu Nov 21 21:55:13 2013 UTC (6 years, 2 months ago) by riz
Branch: MAIN
Changes since 1.104: +8 -11 lines
Diff to previous 1.104 (colored)

Revert previous and solve in a different way, using __unused.  Fixes
building with MRT6DEBUG.

ok martin.

Revision 1.104 / (download) - annotate - [select for diffs], Sat Sep 14 11:33:59 2013 UTC (6 years, 4 months ago) by martin
Branch: MAIN
Changes since 1.103: +12 -6 lines
Diff to previous 1.103 (colored)

Remove unused variable and ifdef some others like their use

Revision 1.103 / (download) - annotate - [select for diffs], Sat Dec 31 20:41:59 2011 UTC (8 years, 1 month ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base8, yamt-pagecache-base7, yamt-pagecache-base6, yamt-pagecache-base5, yamt-pagecache-base4, riastradh-drm2-base2, riastradh-drm2-base1, riastradh-drm2-base, riastradh-drm2, netbsd-6-base, netbsd-6-1-RELEASE, netbsd-6-1-RC4, netbsd-6-1-RC3, netbsd-6-1-RC2, netbsd-6-1-RC1, netbsd-6-1-5-RELEASE, netbsd-6-1-4-RELEASE, netbsd-6-1-3-RELEASE, netbsd-6-1-2-RELEASE, netbsd-6-1-1-RELEASE, netbsd-6-0-RELEASE, netbsd-6-0-RC2, netbsd-6-0-RC1, netbsd-6-0-6-RELEASE, netbsd-6-0-5-RELEASE, netbsd-6-0-4-RELEASE, netbsd-6-0-3-RELEASE, netbsd-6-0-2-RELEASE, netbsd-6-0-1-RELEASE, matt-nb6-plus-nbase, matt-nb6-plus-base, matt-nb6-plus, khorben-n900, 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, agc-symver-base, agc-symver
Branch point for: tls-maxphys, rmind-smpnet, netbsd-6-1, netbsd-6-0, netbsd-6
Changes since 1.102: +3 -4 lines
Diff to previous 1.102 (colored)

- fix offsetof usage, and redundant defines
- kill pointer casts to 0

Revision 1.102 / (download) - annotate - [select for diffs], Wed Oct 19 01:53:07 2011 UTC (8 years, 3 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pagecache-base3, yamt-pagecache-base2, yamt-pagecache-base, jmcneill-usbmp-pre-base2, jmcneill-usbmp-base, jmcneill-audiomp3-base, jmcneill-audiomp3
Branch point for: yamt-pagecache, jmcneill-usbmp
Changes since 1.101: +15 -14 lines
Diff to previous 1.101 (colored)

Use if_addr_init() and if_mcast_op() instead of ifp->if_ioctl().

Revision 1.101 / (download) - annotate - [select for diffs], Wed Aug 31 18:31:03 2011 UTC (8 years, 5 months ago) by plunky
Branch: MAIN
Changes since 1.100: +3 -4 lines
Diff to previous 1.100 (colored)

NULL does not need a cast

Revision 1.100 / (download) - annotate - [select for diffs], Thu Oct 14 03:34:42 2010 UTC (9 years, 3 months ago) by oki
Branch: MAIN
CVS Tags: uebayasi-xip-base4, uebayasi-xip-base3, rmind-uvmplock-nbase, rmind-uvmplock-base, matt-mips64-premerge-20101231, jruoho-x86intr-base, jruoho-x86intr, cherry-xenmp-base, cherry-xenmp, bouyer-quota2-nbase, bouyer-quota2-base, bouyer-quota2
Changes since 1.99: +3 -3 lines
Diff to previous 1.99 (colored)

Fixed mbuf leak possibility.

Revision 1.99 / (download) - annotate - [select for diffs], Tue Jul 27 13:59:40 2010 UTC (9 years, 6 months ago) by jakllsch
Branch: MAIN
CVS Tags: yamt-nfs-mp-base11, yamt-nfs-mp-base10, uebayasi-xip-base2
Changes since 1.98: +4 -4 lines
Diff to previous 1.98 (colored)

Make MRT6DEBUG compile on LP64 by using ptrdiff_t printf() format specifier.

Revision 1.98 / (download) - annotate - [select for diffs], Wed Sep 16 15:23:05 2009 UTC (10 years, 4 months ago) by pooka
Branch: MAIN
CVS Tags: yamt-nfs-mp-base9, uebayasi-xip-base1, uebayasi-xip-base, matt-premerge-20091211, jym-xensuspend-nbase
Branch point for: uebayasi-xip, rmind-uvmplock
Changes since 1.97: +6 -3 lines
Diff to previous 1.97 (colored)

Replace a large number of link set based sysctl node creations with
calls from subsystem constructors.  Benefits both future kernel
modules and rump.

no change to sysctl nodes on i386/MONOLITHIC & build tested i386/ALL

Revision 1.97 / (download) - annotate - [select for diffs], Wed Mar 18 16:00:23 2009 UTC (10 years, 10 months ago) by cegger
Branch: MAIN
CVS Tags: yamt-nfs-mp-base8, yamt-nfs-mp-base7, yamt-nfs-mp-base6, yamt-nfs-mp-base5, yamt-nfs-mp-base4, yamt-nfs-mp-base3, nick-hppapmap-base4, nick-hppapmap-base3, nick-hppapmap-base, jymxensuspend-base, jym-xensuspend-base
Changes since 1.96: +13 -13 lines
Diff to previous 1.96 (colored)

bzero -> memset

Revision 1.96 / (download) - annotate - [select for diffs], Wed Aug 6 15:01:23 2008 UTC (11 years, 5 months ago) by plunky
Branch: MAIN
CVS Tags: wrstuden-revivesa-base-4, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, nick-hppapmap-base2, 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, mjf-devfs2-base, 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, jym-xensuspend
Changes since 1.95: +49 -47 lines
Diff to previous 1.95 (colored)

Convert socket options code to use a sockopt structure
instead of laying everything into an mbuf.

approved by core

Revision 1.95 / (download) - annotate - [select for diffs], Tue Jun 24 10:35:14 2008 UTC (11 years, 7 months ago) by gmcgarry
Branch: MAIN
CVS Tags: simonb-wapbl-nbase, simonb-wapbl-base
Branch point for: haad-dm
Changes since 1.94: +3 -3 lines
Diff to previous 1.94 (colored)

ioctl commands are unsigned long.  ABI change to mrt6_ioctl() will affect 64-bit platforms.

Revision 1.94 / (download) - annotate - [select for diffs], Thu May 22 01:06:39 2008 UTC (11 years, 8 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-pf42-base4, yamt-pf42-base3, wrstuden-revivesa-base-1, wrstuden-revivesa-base
Branch point for: simonb-wapbl
Changes since 1.93: +5 -6 lines
Diff to previous 1.93 (colored)

Don't cast to void * unnecessarily.

Revision 1.93 / (download) - annotate - [select for diffs], Sun May 4 07:22:15 2008 UTC (11 years, 8 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-pf42-base2, yamt-nfs-mp-base2, hpcarm-cleanup-nbase
Branch point for: wrstuden-revivesa
Changes since 1.92: +3 -8 lines
Diff to previous 1.92 (colored)

Simplify the interface to netstat_sysctl() and allocate space for
the collated counters using kmem_alloc().

PR kern/38577

Revision 1.92 / (download) - annotate - [select for diffs], Thu Apr 24 11:38:38 2008 UTC (11 years, 9 months ago) by ad
Branch: MAIN
CVS Tags: yamt-nfs-mp-base
Branch point for: yamt-nfs-mp
Changes since 1.91: +9 -6 lines
Diff to previous 1.91 (colored)

Merge the socket locking patch:

- Socket layer becomes MP safe.
- Unix protocols become MP safe.
- Allows protocol processing interrupts to safely block on locks.
- Fixes a number of race conditions.

With much feedback from matt@ and plunky@.

Revision 1.91 / (download) - annotate - [select for diffs], Wed Apr 23 05:26:50 2008 UTC (11 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.90: +9 -34 lines
Diff to previous 1.90 (colored)

Use <net/net_stats.h> / netstat_sysctl().

Revision 1.90 / (download) - annotate - [select for diffs], Tue Apr 15 05:40:15 2008 UTC (11 years, 9 months ago) by thorpej
Branch: MAIN
CVS Tags: yamt-pf42-baseX, yamt-pf42-base
Branch point for: yamt-pf42
Changes since 1.89: +63 -15 lines
Diff to previous 1.89 (colored)

Make pim6 stats per-cpu.

Revision 1.89 / (download) - annotate - [select for diffs], Tue Apr 15 03:57:04 2008 UTC (11 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.88: +6 -5 lines
Diff to previous 1.88 (colored)

Make ip6 and icmp6 stats per-cpu.

Revision 1.88 / (download) - annotate - [select for diffs], Tue Apr 8 23:37:43 2008 UTC (11 years, 9 months ago) by thorpej
Branch: MAIN
Changes since 1.87: +5 -5 lines
Diff to previous 1.87 (colored)

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

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

Revision 1.87 / (download) - annotate - [select for diffs], Wed Feb 27 19:40:56 2008 UTC (11 years, 11 months ago) by matt
Branch: MAIN
CVS Tags: yamt-lazymbuf-base15, yamt-lazymbuf-base14, matt-armv6-nbase, keiichi-mipv6-nbase, keiichi-mipv6-base, ad-socklock-base1
Changes since 1.86: +3 -3 lines
Diff to previous 1.86 (colored)

Convert to ansi definitions from old-style definitons.
Remember that func() is not ansi, func(void) is.

Revision 1.86 / (download) - annotate - [select for diffs], Tue Nov 27 22:45:30 2007 UTC (12 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: yamt-kmem-base3, yamt-kmem-base2, yamt-kmem-base, yamt-kmem, vmlocking2-base3, vmlocking2-base2, vmlocking2-base1, vmlocking2, vmlocking-nbase, reinoud-bufcleanup-nbase, reinoud-bufcleanup-base, nick-net80211-sync-base, nick-net80211-sync, mjf-devfs-base, matt-armv6-base, jmcneill-pm-base, hpcarm-cleanup-base, cube-autoconf-base, cube-autoconf, bouyer-xeni386-nbase, bouyer-xeni386-merge1, bouyer-xeni386-base, bouyer-xeni386
Branch point for: mjf-devfs2, keiichi-mipv6
Changes since 1.85: +8 -8 lines
Diff to previous 1.85 (colored)

require that the options argument is the right size, not that it is greater
or equal to the requested size. Suggested by Matt Thomas.

Revision 1.85 / (download) - annotate - [select for diffs], Sat Nov 10 00:14:32 2007 UTC (12 years, 2 months ago) by dyoung
Branch: MAIN
CVS Tags: bouyer-xenamd64-base2, bouyer-xenamd64-base
Changes since 1.84: +9 -20 lines
Diff to previous 1.84 (colored)

Use sockaddr_in6_init().

Revision 1.84 / (download) - annotate - [select for diffs], Thu Nov 1 20:33:57 2007 UTC (12 years, 3 months ago) by dyoung
Branch: MAIN
CVS Tags: jmcneill-base
Branch point for: mjf-devfs
Changes since 1.83: +17 -17 lines
Diff to previous 1.83 (colored)

De-__P().

Revision 1.83 / (download) - annotate - [select for diffs], Mon Jul 9 21:11:12 2007 UTC (12 years, 6 months ago) by ad
Branch: MAIN
CVS Tags: yamt-x86pmap-base4, yamt-x86pmap-base3, yamt-x86pmap-base2, yamt-x86pmap-base, yamt-x86pmap, vmlocking-base, nick-csl-alignment-base5, nick-csl-alignment-base, nick-csl-alignment, mjf-ufs-trans-base, matt-mips64-base, matt-mips64, hpcarm-cleanup
Branch point for: matt-armv6, jmcneill-pm, bouyer-xenamd64
Changes since 1.82: +4 -4 lines
Diff to previous 1.82 (colored)

Merge some of the less invasive changes from the vmlocking branch:

- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements

Revision 1.82 / (download) - annotate - [select for diffs], Wed May 23 17:32:46 2007 UTC (12 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.81: +3 -3 lines
Diff to previous 1.81 (colored)

fix typos in previous

Revision 1.81 / (download) - annotate - [select for diffs], Wed May 23 17:15:02 2007 UTC (12 years, 8 months ago) by christos
Branch: MAIN
Changes since 1.80: +22 -60 lines
Diff to previous 1.80 (colored)

Ansify + add a few comments, from Karl Sjödahl

Revision 1.80 / (download) - annotate - [select for diffs], Wed May 2 20:40:27 2007 UTC (12 years, 9 months ago) by dyoung
Branch: MAIN
CVS Tags: yamt-idlelwp-base8
Changes since 1.79: +4 -4 lines
Diff to previous 1.79 (colored)

Eliminate address family-specific route caches (struct route, struct
route_in6, struct route_iso), replacing all caches with a struct
route.

The principle benefit of this change is that all of the protocol
families can benefit from route cache-invalidation, which is
necessary for correct routing.  Route-cache invalidation fixes an
ancient PR, kern/3508, at long last; it fixes various other PRs,
also.

Discussions with and ideas from Joerg Sonnenberger influenced this
work tremendously.  Of course, all design oversights and bugs are
mine.

DETAILS

1 I added to each address family a pool of sockaddrs.  I have
  introduced routines for allocating, copying, and duplicating,
  and freeing sockaddrs:

        struct sockaddr *sockaddr_alloc(sa_family_t af, int flags);
        struct sockaddr *sockaddr_copy(struct sockaddr *dst,
                                       const struct sockaddr *src);
        struct sockaddr *sockaddr_dup(const struct sockaddr *src, int flags);
        void sockaddr_free(struct sockaddr *sa);

  sockaddr_alloc() returns either a sockaddr from the pool belonging
  to the specified family, or NULL if the pool is exhausted.  The
  returned sockaddr has the right size for that family; sa_family
  and sa_len fields are initialized to the family and sockaddr
  length---e.g., sa_family = AF_INET and sa_len = sizeof(struct
  sockaddr_in).  sockaddr_free() puts the given sockaddr back into
  its family's pool.

  sockaddr_dup() and sockaddr_copy() work analogously to strdup()
  and strcpy(), respectively.  sockaddr_copy() KASSERTs that the
  family of the destination and source sockaddrs are alike.

  The 'flags' argumet for sockaddr_alloc() and sockaddr_dup() is
  passed directly to pool_get(9).

2 I added routines for initializing sockaddrs in each address
  family, sockaddr_in_init(), sockaddr_in6_init(), sockaddr_iso_init(),
  etc.  They are fairly self-explanatory.

3 structs route_in6 and route_iso are no more.  All protocol families
  use struct route.  I have changed the route cache, 'struct route',
  so that it does not contain storage space for a sockaddr.  Instead,
  struct route points to a sockaddr coming from the pool the sockaddr
  belongs to.  I added a new method to struct route, rtcache_setdst(),
  for setting the cache destination:

        int rtcache_setdst(struct route *, const struct sockaddr *);

  rtcache_setdst() returns 0 on success, or ENOMEM if no memory is
  available to create the sockaddr storage.

  It is now possible for rtcache_getdst() to return NULL if, say,
  rtcache_setdst() failed.  I check the return value for NULL
  everywhere in the kernel.

4 Each routing domain (struct domain) has a list of live route
  caches, dom_rtcache.  rtflushall(sa_family_t af) looks up the
  domain indicated by 'af', walks the domain's list of route caches
  and invalidates each one.

Revision 1.79 / (download) - annotate - [select for diffs], Sun Mar 4 06:03:26 2007 UTC (12 years, 10 months ago) by christos
Branch: MAIN
CVS Tags: thorpej-atomic-base, thorpej-atomic, reinoud-bufcleanup
Branch point for: vmlocking, mjf-ufs-trans
Changes since 1.78: +15 -15 lines
Diff to previous 1.78 (colored)

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

Revision 1.78 / (download) - annotate - [select for diffs], Sat Feb 17 22:34:14 2007 UTC (12 years, 11 months ago) by dyoung
Branch: MAIN
CVS Tags: ad-audiomp-base, ad-audiomp
Changes since 1.77: +6 -4 lines
Diff to previous 1.77 (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.77 / (download) - annotate - [select for diffs], Mon Jan 29 06:05:10 2007 UTC (13 years ago) by dyoung
Branch: MAIN
CVS Tags: post-newlock2-merge, newlock2-nbase, newlock2-base
Branch point for: yamt-idlelwp
Changes since 1.76: +6 -5 lines
Diff to previous 1.76 (colored)

Cosmetic: move an splsoftnet() call out of the variable declarations,
get rid of a gratuitous cast, change (struct socket *)0 to NULL.

Revision 1.76 / (download) - annotate - [select for diffs], Thu Nov 16 01:33:45 2006 UTC (13 years, 2 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base5, yamt-splraiseipl-base4, yamt-splraiseipl-base3, 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, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, matt-nb4-arm-base, matt-nb4-arm
Changes since 1.75: +3 -3 lines
Diff to previous 1.75 (colored)

__unused removal on arguments; approved by core.

Revision 1.75 / (download) - annotate - [select for diffs], Thu Oct 12 01:32:39 2006 UTC (13 years, 3 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base2
Changes since 1.74: +3 -4 lines
Diff to previous 1.74 (colored)

- sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386

Revision 1.74 / (download) - annotate - [select for diffs], Wed Aug 30 17:13:45 2006 UTC (13 years, 5 months ago) by christos
Branch: MAIN
CVS Tags: yamt-splraiseipl-base, yamt-pdpolicy-base9, yamt-pdpolicy-base8, rpaulo-netinet-merge-pcb-base
Branch point for: yamt-splraiseipl, newlock2
Changes since 1.73: +7 -4 lines
Diff to previous 1.73 (colored)

fix initializers

Revision 1.73 / (download) - annotate - [select for diffs], Thu Aug 17 17:11:28 2006 UTC (13 years, 5 months ago) by christos
Branch: MAIN
Changes since 1.72: +6 -7 lines
Diff to previous 1.72 (colored)

Fix all the -D*DEBUG* code that it was rotting away and did not even compile.
Mostly from Arnaud Lacombe, many thanks!

Revision 1.72 / (download) - annotate - [select for diffs], Wed Jun 7 22:34:03 2006 UTC (13 years, 7 months ago) by kardel
Branch: MAIN
CVS Tags: yamt-pdpolicy-base7, yamt-pdpolicy-base6, gdamore-uart-base, gdamore-uart, chap-midi-nbase, chap-midi-base, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.71: +4 -4 lines
Diff to previous 1.71 (colored)

merge FreeBSD timecounters from branch simonb-timecounters
- struct timeval time is gone
  time.tv_sec -> time_second
- struct timeval mono_time is gone
  mono_time.tv_sec -> time_uptime
- access to time via
	{get,}{micro,nano,bin}time()
	get* versions are fast but less precise
- support NTP nanokernel implementation (NTP API 4)
- further reading:
  Timecounter Paper: http://phk.freebsd.dk/pubs/timecounter.pdf
  NTP Nanokernel: http://www.eecis.udel.edu/~mills/ntp/html/kern.html

Revision 1.71 / (download) - annotate - [select for diffs], Sun Mar 5 23:47:08 2006 UTC (13 years, 10 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-pdpolicy-base5, yamt-pdpolicy-base4, yamt-pdpolicy-base3, yamt-pdpolicy-base2, simonb-timecounters-base, peter-altq-base, peter-altq, elad-kernelauth-base, elad-kernelauth
Branch point for: chap-midi
Changes since 1.70: +44 -35 lines
Diff to previous 1.70 (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.70 / (download) - annotate - [select for diffs], Fri Mar 3 14:07:06 2006 UTC (13 years, 11 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-pdpolicy-base
Branch point for: yamt-pdpolicy
Changes since 1.69: +5 -5 lines
Diff to previous 1.69 (colored)

Fix typos in comments.

From: the KAME project via SUZUKI Shinsuke.

Revision 1.69 / (download) - annotate - [select for diffs], Sat Jan 21 00:15:36 2006 UTC (14 years ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-uio_vmspace-base5
Branch point for: simonb-timecounters, rpaulo-netinet-merge-pcb
Changes since 1.68: +22 -13 lines
Diff to previous 1.68 (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.68 / (download) - annotate - [select for diffs], Sun Dec 11 12:25:02 2005 UTC (14 years, 1 month ago) by christos
Branch: MAIN
Branch point for: yamt-uio_vmspace
Changes since 1.67: +2 -2 lines
Diff to previous 1.67 (colored)

merge ktrace-lwp.

Revision 1.67 / (download) - annotate - [select for diffs], Fri Oct 21 18:00:45 2005 UTC (14 years, 3 months ago) by bouyer
Branch: MAIN
CVS Tags: yamt-vop-base3, yamt-vop-base2, yamt-readahead-pervnode, yamt-readahead-perfile, yamt-readahead-base3, yamt-readahead-base2, yamt-readahead-base, yamt-readahead, thorpej-vnode-attr-base, thorpej-vnode-attr, ktrace-lwp-base
Changes since 1.66: +3 -3 lines
Diff to previous 1.66 (colored)

mif6table is used by netstat, so don't declare it static. Fix netstat -g
on Xen, whose ELF loader doesn't load local symbols in the symbol table.

Revision 1.66 / (download) - annotate - [select for diffs], Mon Oct 17 15:56:43 2005 UTC (14 years, 3 months ago) by rpaulo
Branch: MAIN
CVS Tags: yamt-vop-base
Branch point for: yamt-vop
Changes since 1.65: +21 -13 lines
Diff to previous 1.65 (colored)

If we recieve a PIM register message when IPv6 PIM-SM routing is
enabled avoid a crash when forwarding the packet to outgoing interfaces.

Taken from FreeBSD which obtained it from KAME.

Revision 1.65 / (download) - annotate - [select for diffs], Sun Aug 28 21:03:18 2005 UTC (14 years, 5 months ago) by rpaulo
Branch: MAIN
Changes since 1.64: +31 -2 lines
Diff to previous 1.64 (colored)

Implement net.inet6.pim6.stats sysctl.

Reviewed by Elad Efrat.

Revision 1.64 / (download) - annotate - [select for diffs], Sun May 29 21:43:09 2005 UTC (14 years, 8 months ago) by christos
Branch: MAIN
Branch point for: yamt-lazymbuf
Changes since 1.63: +14 -6 lines
Diff to previous 1.63 (colored)

avoid silly static variables that even caused nesting issues, not to mention
reentrancy concerns.

Revision 1.63 / (download) - annotate - [select for diffs], Sat Feb 26 22:45:12 2005 UTC (14 years, 11 months ago) by perry
Branch: MAIN
CVS Tags: yamt-km-base4, yamt-km-base3, netbsd-3-base, kent-audio2-base
Branch point for: netbsd-3
Changes since 1.62: +3 -3 lines
Diff to previous 1.62 (colored)

nuke trailing whitespace

Revision 1.62 / (download) - annotate - [select for diffs], Tue Dec 21 11:40:12 2004 UTC (15 years, 1 month ago) by drochner
Branch: MAIN
CVS Tags: yamt-km-base2, yamt-km-base, kent-audio1-beforemerge
Branch point for: yamt-km, kent-audio2
Changes since 1.61: +3 -4 lines
Diff to previous 1.61 (colored)

remove a redundant check for ifindex2ifnet[idx] != 0

Revision 1.61 / (download) - annotate - [select for diffs], Sat Sep 4 23:30:07 2004 UTC (15 years, 4 months ago) by manu
Branch: MAIN
CVS Tags: kent-audio1-base, kent-audio1
Changes since 1.60: +3 -3 lines
Diff to previous 1.60 (colored)

IPv4 PIM support, based on a submission from Pavlin Radoslavov posted on
tech-net@

Revision 1.60 / (download) - annotate - [select for diffs], Wed Dec 10 11:46:33 2003 UTC (16 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.59: +4 -3 lines
Diff to previous 1.59 (colored)

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

Revision 1.59 / (download) - annotate - [select for diffs], Wed Dec 10 09:28:38 2003 UTC (16 years, 1 month ago) by itojun
Branch: MAIN
Changes since 1.58: +42 -25 lines
Diff to previous 1.58 (colored)

validate set/getsockopt arg more strictly.  with previous code privileged
user can cause kernel crash.

Revision 1.58 / (download) - annotate - [select for diffs], Thu Oct 30 01:43:09 2003 UTC (16 years, 3 months ago) by simonb
Branch: MAIN
Changes since 1.57: +3 -4 lines
Diff to previous 1.57 (colored)

Remove some assigned-to but otherwise unused variables.

Revision 1.57 / (download) - annotate - [select for diffs], Wed Oct 15 22:55:34 2003 UTC (16 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.56: +2 -4 lines
Diff to previous 1.56 (colored)

backout previous (ENETREST special handlng)

Revision 1.56 / (download) - annotate - [select for diffs], Wed Oct 15 22:16:35 2003 UTC (16 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.55: +4 -2 lines
Diff to previous 1.55 (colored)

ignore ENETRESET on ADDMULTI

Revision 1.55 / (download) - annotate - [select for diffs], Fri Aug 22 21:53:08 2003 UTC (16 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.54: +3 -3 lines
Diff to previous 1.54 (colored)

change the additional arg to be passed to ip{,6}_output to struct socket *.

this fixes KAME policy lookup which was broken by the previous commit.

Revision 1.54 / (download) - annotate - [select for diffs], Fri Aug 22 20:20:09 2003 UTC (16 years, 5 months ago) by jonathan
Branch: MAIN
Changes since 1.53: +4 -4 lines
Diff to previous 1.53 (colored)

Replace the set_socket() method of passing an extra struct socket*
argument to ip6_output() with a new explicit struct in6pcb* argument.
(The underlying socket can be obtained via in6pcb->inp6_socket.)

In preparation for fast-ipsec.  Reviewed by itojun.

Revision 1.53 / (download) - annotate - [select for diffs], Thu Aug 7 16:33:27 2003 UTC (16 years, 5 months ago) by agc
Branch: MAIN
Changes since 1.52: +35 -3 lines
Diff to previous 1.52 (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.52 / (download) - annotate - [select for diffs], Sat Jul 12 15:16:50 2003 UTC (16 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.51: +12 -13 lines
Diff to previous 1.51 (colored)

KNF

Revision 1.51 / (download) - annotate - [select for diffs], Sat Jul 12 15:12:45 2003 UTC (16 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.50: +2 -8 lines
Diff to previous 1.50 (colored)

no longer needed (#define _KERNEL)

Revision 1.50 / (download) - annotate - [select for diffs], Tue Jul 8 10:20:45 2003 UTC (16 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.49: +39 -4 lines
Diff to previous 1.49 (colored)

on interface detach, clear multicast forwarding table.  from kame

Revision 1.49 / (download) - annotate - [select for diffs], Tue Jun 24 07:39:26 2003 UTC (16 years, 7 months ago) by itojun
Branch: MAIN
Branch point for: ktrace-lwp
Changes since 1.48: +4 -5 lines
Diff to previous 1.48 (colored)

use time.tv_sec directly

Revision 1.48 / (download) - annotate - [select for diffs], Mon Jun 23 11:02:18 2003 UTC (16 years, 7 months ago) by martin
Branch: MAIN
Changes since 1.47: +3 -2 lines
Diff to previous 1.47 (colored)

Make sure to include opt_foo.h if a defflag option FOO is used.

Revision 1.47 / (download) - annotate - [select for diffs], Fri Jun 6 06:52:29 2003 UTC (16 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.46: +4 -2 lines
Diff to previous 1.46 (colored)

don't try to forward multicast packet to mif that went away; kame

Revision 1.46 / (download) - annotate - [select for diffs], Fri May 16 03:56:49 2003 UTC (16 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.45: +5 -4 lines
Diff to previous 1.45 (colored)

use strlcpy

Revision 1.45 / (download) - annotate - [select for diffs], Thu May 15 13:46:15 2003 UTC (16 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.44: +14 -14 lines
Diff to previous 1.44 (colored)

check version before computing checksum.  checksum is more expensive operation.

Revision 1.44 / (download) - annotate - [select for diffs], Wed May 14 17:02:59 2003 UTC (16 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.43: +5 -5 lines
Diff to previous 1.43 (colored)

KNF

Revision 1.43 / (download) - annotate - [select for diffs], Wed May 14 17:00:22 2003 UTC (16 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.42: +6 -6 lines
Diff to previous 1.42 (colored)

KNF

Revision 1.42 / (download) - annotate - [select for diffs], Wed May 14 06:47:42 2003 UTC (16 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.41: +2 -11 lines
Diff to previous 1.41 (colored)

always use PULLDOWN_TEST codepath.

Revision 1.41 / (download) - annotate - [select for diffs], Wed Nov 27 05:09:36 2002 UTC (17 years, 2 months ago) by itojun
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.40: +41 -2 lines
Diff to previous 1.40 (colored)

recover original stanford copyright.  sync w/kame

Revision 1.40 / (download) - annotate - [select for diffs], Sat Nov 9 03:12:05 2002 UTC (17 years, 2 months ago) by itojun
Branch: MAIN
Changes since 1.39: +5 -2 lines
Diff to previous 1.39 (colored)

need icmp6.h for MULTICAST_PMTUD case.  sync w/kame

Revision 1.39 / (download) - annotate - [select for diffs], Sat Nov 2 07:30:57 2002 UTC (17 years, 3 months ago) by perry
Branch: MAIN
Changes since 1.38: +5 -5 lines
Diff to previous 1.38 (colored)

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

Revision 1.38 / (download) - annotate - [select for diffs], Mon Sep 23 05:51:15 2002 UTC (17 years, 4 months ago) by simonb
Branch: MAIN
CVS Tags: kqueue-beforemerge, kqueue-base, kqueue-aftermerge
Changes since 1.37: +2 -7 lines
Diff to previous 1.37 (colored)

Remove breaks after returns, unreachable returns and returns after
returns(!).

Revision 1.37 / (download) - annotate - [select for diffs], Wed Sep 11 02:46:45 2002 UTC (17 years, 4 months ago) by itojun
Branch: MAIN
Changes since 1.36: +14 -14 lines
Diff to previous 1.36 (colored)

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

Revision 1.36 / (download) - annotate - [select for diffs], Thu Jul 25 12:41:51 2002 UTC (17 years, 6 months ago) by itojun
Branch: MAIN
CVS Tags: gehenna-devsw-base
Changes since 1.35: +3 -3 lines
Diff to previous 1.35 (colored)

correct multicast packet MTU check.  sync w/kame

Revision 1.35 / (download) - annotate - [select for diffs], Sat Jun 29 12:33:33 2002 UTC (17 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.34: +3 -3 lines
Diff to previous 1.34 (colored)

typo in name

Revision 1.34 / (download) - annotate - [select for diffs], Sat Jun 8 20:06:45 2002 UTC (17 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.33: +3 -3 lines
Diff to previous 1.33 (colored)

whitespace cleanup

Revision 1.33 / (download) - annotate - [select for diffs], Fri Jun 7 18:19:05 2002 UTC (17 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.32: +3 -3 lines
Diff to previous 1.32 (colored)

typo

Revision 1.32 / (download) - annotate - [select for diffs], Fri Jun 7 04:18:12 2002 UTC (17 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.31: +3 -3 lines
Diff to previous 1.31 (colored)

typo

Revision 1.31 / (download) - annotate - [select for diffs], Fri Jun 7 04:07:55 2002 UTC (17 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.30: +3 -3 lines
Diff to previous 1.30 (colored)

'fall through' is not a valid LINT keyword.

Revision 1.30 / (download) - annotate - [select for diffs], Thu May 30 04:39:15 2002 UTC (17 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.29: +15 -16 lines
Diff to previous 1.29 (colored)

use M_READONLY where possible.  minor cleanup/sync with kame.

Revision 1.29 / (download) - annotate - [select for diffs], Wed May 29 07:53:41 2002 UTC (17 years, 8 months ago) by itojun
Branch: MAIN
Changes since 1.28: +7 -4 lines
Diff to previous 1.28 (colored)

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

Revision 1.28 / (download) - annotate - [select for diffs], Tue May 14 02:58:33 2002 UTC (17 years, 8 months ago) by matt
Branch: MAIN
CVS Tags: netbsd-1-6-base
Branch point for: netbsd-1-6, gehenna-devsw
Changes since 1.27: +9 -9 lines
Diff to previous 1.27 (colored)

Eliminate more commons or redundant declarations.

Revision 1.27 / (download) - annotate - [select for diffs], Sun Mar 24 20:46:56 2002 UTC (17 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.26: +3 -5 lines
Diff to previous 1.26 (colored)

double m_free() - niklas@openbsd

Revision 1.26 / (download) - annotate - [select for diffs], Mon Mar 4 15:18:32 2002 UTC (17 years, 11 months ago) by sommerfeld
Branch: MAIN
CVS Tags: newlock-base, newlock, eeh-devprop-base, eeh-devprop
Changes since 1.25: +19 -24 lines
Diff to previous 1.25 (colored)

Nuke out-of-synch comment.

Revision 1.25 / (download) - annotate - [select for diffs], Tue Dec 18 03:04:03 2001 UTC (18 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: ifpoll-base
Changes since 1.24: +4 -3 lines
Diff to previous 1.24 (colored)

reduce white space/cosmetic diffs w/kame.

Revision 1.24 / (download) - annotate - [select for diffs], Tue Nov 13 00:57:01 2001 UTC (18 years, 2 months ago) by lukem
Branch: MAIN
Changes since 1.23: +4 -1 lines
Diff to previous 1.23 (colored)

add RCSIDs

Revision 1.23 / (download) - annotate - [select for diffs], Tue Oct 16 06:24:44 2001 UTC (18 years, 3 months ago) by itojun
Branch: MAIN
CVS Tags: thorpej-mips-cache-base, thorpej-mips-cache
Changes since 1.22: +28 -27 lines
Diff to previous 1.22 (colored)

more whitespace/comment sync with kame

Revision 1.22 / (download) - annotate - [select for diffs], Wed Jul 25 09:23:46 2001 UTC (18 years, 6 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.21: +8 -3 lines
Diff to previous 1.21 (colored)

ifindex2ifnet could return NULL if if_detach() is used (pcmcia card
removal and such).

Revision 1.21 / (download) - annotate - [select for diffs], Sun Jul 22 13:34:11 2001 UTC (18 years, 6 months ago) by wiz
Branch: MAIN
Changes since 1.20: +2 -2 lines
Diff to previous 1.20 (colored)

seperate -> separate

Revision 1.20 / (download) - annotate - [select for diffs], Sun Mar 25 09:06:03 2001 UTC (18 years, 10 months ago) by itojun
Branch: MAIN
CVS Tags: thorpej_scsipi_nbase, thorpej_scsipi_beforemerge, thorpej_scsipi_base
Branch point for: kqueue
Changes since 1.19: +7 -10 lines
Diff to previous 1.19 (colored)

couple of missing splx.  sync with kame.
From: csapuntz@play-doh.stanford.edu (Constantine Sapuntzakis)

Revision 1.19 / (download) - annotate - [select for diffs], Thu Mar 8 10:48:40 2001 UTC (18 years, 10 months ago) by itojun
Branch: MAIN
Changes since 1.18: +4 -2 lines
Diff to previous 1.18 (colored)

more missing splx.  from kame

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

missing splx.  from aaron@openbsd.  sync with kame

Revision 1.17 / (download) - annotate - [select for diffs], Sun Feb 11 05:24:45 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
Branch point for: nathanw_sa
Changes since 1.16: +1 -3 lines
Diff to previous 1.16 (colored)

remove #ifdef __FreeBSD__.

Revision 1.16 / (download) - annotate - [select for diffs], Sat Feb 10 03:06:39 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.15: +2 -1 lines
Diff to previous 1.15 (colored)

initialize "mbz" member.  kame 1.35 -> 1.36

Revision 1.15 / (download) - annotate - [select for diffs], Sat Feb 10 02:19:57 2001 UTC (18 years, 11 months ago) by itojun
Branch: MAIN
Changes since 1.14: +65 -62 lines
Diff to previous 1.14 (colored)

cosmetic changes to sync with kame.  tabify and minor local variable renames

Revision 1.14 / (download) - annotate - [select for diffs], Thu Oct 19 03:15:48 2000 UTC (19 years, 3 months ago) by itojun
Branch: MAIN
Changes since 1.13: +16 -2 lines
Diff to previous 1.13 (colored)

kame 1.32 -> 1.33
in add_m6fc(), set interface list for all cases.
in response to a report from Hoerdt Mickael.

kame 1.31 -> 1.32
discard PIM register if the version of the inner packet is incorrect (i.e. IPv6)
(according to clarfication of recent discussion in the IETF pim ML)

Revision 1.13 / (download) - annotate - [select for diffs], Tue Aug 29 09:19:43 2000 UTC (19 years, 5 months ago) by itojun
Branch: MAIN
Changes since 1.12: +27 -2 lines
Diff to previous 1.12 (colored)

do not forward packets with unspecified source address (::).
this is clarification recently made to RFC2460.  sync with kame.

Revision 1.12 / (download) - annotate - [select for diffs], Fri May 19 10:39:43 2000 UTC (19 years, 8 months ago) by itojun
Branch: MAIN
CVS Tags: netbsd-1-5-base, netbsd-1-5-ALPHA2, minoura-xpg4dl-base, minoura-xpg4dl
Branch point for: netbsd-1-5
Changes since 1.11: +166 -95 lines
Diff to previous 1.11 (colored)

correct MLD API. (binary backward compatibility is kept)
commit to usr.sbin/pim6* will follow.

Revision 1.11 / (download) - annotate - [select for diffs], Thu Mar 23 07:03:30 2000 UTC (19 years, 10 months ago) by thorpej
Branch: MAIN
Changes since 1.10: +9 -4 lines
Diff to previous 1.10 (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.10 / (download) - annotate - [select for diffs], Sun Feb 6 12:49:45 2000 UTC (19 years, 11 months ago) by itojun
Branch: MAIN
CVS Tags: chs-ubc2-newbase
Changes since 1.9: +2 -2 lines
Diff to previous 1.9 (colored)

fix include pathname for better rfc2292 compliance.

Revision 1.9 / (download) - annotate - [select for diffs], Thu Jan 6 15:46:10 2000 UTC (20 years ago) by itojun
Branch: MAIN
Changes since 1.8: +2 -170 lines
Diff to previous 1.8 (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.8 / (download) - annotate - [select for diffs], Mon Dec 13 15:17:22 1999 UTC (20 years, 1 month ago) by itojun
Branch: MAIN
CVS Tags: wrstuden-devbsize-base, wrstuden-devbsize-19991221
Changes since 1.7: +181 -9 lines
Diff to previous 1.7 (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.7 / (download) - annotate - [select for diffs], Thu Jul 22 15:46:13 1999 UTC (20 years, 6 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.6: +9 -8 lines
Diff to previous 1.6 (colored)

avoid u_long and hardcoded numbers.

Revision 1.6 / (download) - annotate - [select for diffs], Tue Jul 6 12:23:22 1999 UTC (20 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.5: +7 -9 lines
Diff to previous 1.5 (colored)

sync with KAME/NetBSD 1.4, SNAP kit 19990705.
key changes are:
- icmp6 redirect fix (dst check)
- revised ip6 multicast check for loopback i/f
- several RCS ID cleanups

Revision 1.5 / (download) - annotate - [select for diffs], Tue Jul 6 08:55:56 1999 UTC (20 years, 6 months ago) by itojun
Branch: MAIN
Changes since 1.4: +3 -3 lines
Diff to previous 1.4 (colored)

checked build on alpha and i386, with GENERIC.v6.
fixed several sizeof(void *) and sizeof(size_t) issues on alpha.

Thanks to: Dave Huang and Tim Rightnour

Revision 1.4 / (download) - annotate - [select for diffs], Sun Jul 4 02:01:15 1999 UTC (20 years, 7 months ago) by itojun
Branch: MAIN
Changes since 1.3: +12 -12 lines
Diff to previous 1.3 (colored)

s/splnet/splsoftnet/ in IPv6/IPsec part.
hope I made no mistake (the kernel works fine but I need a regress test)

Suggested by: thorpej

Revision 1.3 / (download) - annotate - [select for diffs], Sat Jul 3 21:30:18 1999 UTC (20 years, 7 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 (20 years, 7 months ago) by itojun
Branch: MAIN
Branch point for: chs-ubc2
Changes since 1.1: +1687 -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 (20 years, 7 months ago) by itojun
Branch: MAIN
Branch point for: kame
FILE REMOVED

file ip6_mroute.c 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>