History log of /dragonfly/sys/netinet6/ip6_input.c (Results 1 – 25 of 78)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b272101a 30-Oct-2023 Aaron LI <aly@aaronly.me>

Various minor whitespace cleanups

Accumulated along the way.


# 0704bacf 12-Jan-2024 Aaron LI <aly@aaronly.me>

sockbuf: Improve sbcreatecontrol() parameter types to save casts

- Change 'caddr_t p' to 'const void *p' to save casts for the callers.
The 'const' qualifier is also added meanwhile.
- Change 'int

sockbuf: Improve sbcreatecontrol() parameter types to save casts

- Change 'caddr_t p' to 'const void *p' to save casts for the callers.
The 'const' qualifier is also added meanwhile.
- Change 'int size' to 'size_t size', given that callers generally pass
this parameter as sizeof().
- Update all relevant callers.

For the reference, OpenBSD also did this for sbcreatecontrol().

show more ...


# 05d02a38 28-Dec-2023 Aaron LI <aly@aaronly.me>

kernel: Remove unnecessary casts for updated mbuf(9) functions


# 2b3f93ea 13-Oct-2023 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Add per-process capability-based restrictions

* This new system allows userland to set capability restrictions which
turns off numerous kernel features and root accesses. These restricti

kernel - Add per-process capability-based restrictions

* This new system allows userland to set capability restrictions which
turns off numerous kernel features and root accesses. These restrictions
are inherited by sub-processes recursively. Once set, restrictions cannot
be removed.

Basic restrictions that mimic an unadorned jail can be enabled without
creating a jail, but generally speaking real security also requires
creating a chrooted filesystem topology, and a jail is still needed
to really segregate processes from each other. If you do so, however,
you can (for example) disable mount/umount and most global root-only
features.

* Add new system calls and a manual page for syscap_get(2) and syscap_set(2)

* Add sys/caps.h

* Add the "setcaps" userland utility and manual page.

* Remove priv.9 and the priv_check infrastructure, replacing it with
a newly designed caps infrastructure.

* The intention is to add path restriction lists and similar features to
improve jailess security in the near future, and to optimize the
priv_check code.

show more ...


# 9a2d6101 19-Sep-2023 Matthew Dillon <dillon@apollo.backplane.com>

netinet6 - Fix ipv6 mbuf packet type issue causing an NFS panic

* A forwarding case in ip6_input() was allocating an mbuf with
MT_HEADER instead of MT_DATA, causing an NFS case later
on to panic

netinet6 - Fix ipv6 mbuf packet type issue causing an NFS panic

* A forwarding case in ip6_input() was allocating an mbuf with
MT_HEADER instead of MT_DATA, causing an NFS case later
on to panic.

Submitted-by: iteratee (Kyle Butt)

show more ...


Revision tags: v6.4.0, v6.4.0rc1, v6.5.0, v6.2.2, v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2
# 1dea7c0c 03-Sep-2020 Daniel Fojt <df@neosystem.org>

kernel: avoid possible use-after-free in ipv6

Fix improper mbuf handling when processing IPv6 Hop-by-Hop options.

Taken from: FreeBSD (FreeBSD-SA-20:24.ipv6)


Revision tags: v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2
# fcf6efef 02-Mar-2019 Sascha Wildner <saw@online.de>

kernel: Remove numerous #include <sys/thread2.h>.

Most of them were added when we converted spl*() calls to
crit_enter()/crit_exit(), almost 14 years ago. We can now
remove a good chunk of them agai

kernel: Remove numerous #include <sys/thread2.h>.

Most of them were added when we converted spl*() calls to
crit_enter()/crit_exit(), almost 14 years ago. We can now
remove a good chunk of them again for where crit_*() are
no longer used.

I had to adjust some files that were relying on thread2.h
or headers that it includes coming in via other headers
that it was removed from.

show more ...


Revision tags: v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1
# 755d70b8 21-Apr-2018 Sascha Wildner <saw@online.de>

Remove IPsec and related code from the system.

It was unmaintained ever since we inherited it from FreeBSD 4.8.

In fact, we had two implementations from that time: IPSEC and FAST_IPSEC.
FAST_IPSEC

Remove IPsec and related code from the system.

It was unmaintained ever since we inherited it from FreeBSD 4.8.

In fact, we had two implementations from that time: IPSEC and FAST_IPSEC.
FAST_IPSEC is the implementation to which FreeBSD has moved since, but
it didn't even build in DragonFly.

Fixes for dports have been committed to DeltaPorts.

Requested-by: dillon
Dports-testing-and-fixing: zrj

show more ...


Revision tags: v5.2.0, v5.3.0, v5.2.0rc, v5.0.2
# 06937ef9 25-Nov-2017 Sascha Wildner <saw@online.de>

Remove faith(4) and faithd(8) from the tree.

FreeBSD did that 3 years ago (r274331). Quoting from their commit msg:

-----8<-----
It looks like industry have chosen different (and more traditional)

Remove faith(4) and faithd(8) from the tree.

FreeBSD did that 3 years ago (r274331). Quoting from their commit msg:

-----8<-----
It looks like industry have chosen different (and more traditional)
stateless/stateful NAT64 as translation mechanism. Last non-trivial
commits to both faith(4) and faithd(8) happened more than 12 years
ago, so I assume it is time to drop RFC3142 in FreeBSD.
----->8-----

Some more info here:

https://lists.freebsd.org/pipermail/freebsd-net/2014-October/040224.html

Discussed-with: sephe

show more ...


Revision tags: v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1
# 860b6b42 20-Jun-2017 Sepherosa Ziehau <sephe@dragonflybsd.org>

loopback: Use ifclone APIs to create loopback interfaces.

This paves way for multiple FIB support.


# f546810c 08-Apr-2017 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Restore mbuf hash after defragmentation.

Reported-by: zach


Revision tags: v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc
# cb3deea5 13-Aug-2015 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Change scope to zone and use in6_clearscope() whenever possible

Obtained-from: KAME via FreeBSD


Revision tags: v4.2.4
# d7a4695a 06-Aug-2015 Nuno Antunes <nuno.antunes@gmail.com>

net/inet6: Add missing ;

* Unbreaks kernel.

Pointed-out-by: YRabbit


# 1af953ac 05-Aug-2015 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Cosmetic clean up

No functional changes.

Obtained-from: KAME via FreeBSD


Revision tags: v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4
# b5523eac 19-Feb-2015 Sascha Wildner <saw@online.de>

kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.

The main reason is that our having to use the MB_WAIT and MB_DONTWAIT
flags was a recurring issue when porting drivers from FreeBSD

kernel: Move us to using M_NOWAIT and M_WAITOK for mbuf functions.

The main reason is that our having to use the MB_WAIT and MB_DONTWAIT
flags was a recurring issue when porting drivers from FreeBSD because
it tended to get forgotten and the code would compile anyway with the
wrong constants. And since MB_WAIT and MB_DONTWAIT ended up as ocflags
for an objcache_get() or objcache_reclaimlist call (which use M_WAITOK
and M_NOWAIT), it was just one big converting back and forth with some
sanitization in between.

This commit allows M_* again for the mbuf functions and keeps the
sanitizing as it was before: when M_WAITOK is among the passed flags,
objcache functions will be called with M_WAITOK and when it is absent,
they will be called with M_NOWAIT. All other flags are scrubbed by the
MB_OCFLAG() macro which does the same as the former MBTOM().

Approved-by: dillon

show more ...


# 9cb60aff 24-Jan-2015 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Dispatch nd6_timer to netisr0 to run

This function now accesses ifindex2ifnet global variable in netisr0.


Revision tags: v4.0.3
# fd89b323 12-Jan-2015 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Dispatch in6_tmpaddrtimer to netisr0 to run

This function now access ifnet global variable in netisr.


Revision tags: v4.0.2
# f7aad75a 27-Dec-2014 Sepherosa Ziehau <sephe@dragonflybsd.org>

inet6: Remove in6_prefix.[ch]

They have not been used for a while.


Revision tags: v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3, v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0
# 2a810c21 04-Sep-2013 Matthew Dillon <dillon@apollo.backplane.com>

kernel - Implement IPV6 subnet routing / proxy ND6 (equiv to proxy ARP)

* Do not require per-host RTF_ANNOUNCE/AF_LINK entries. They still
work but they aren't needed any more (and they are such

kernel - Implement IPV6 subnet routing / proxy ND6 (equiv to proxy ARP)

* Do not require per-host RTF_ANNOUNCE/AF_LINK entries. They still
work but they aren't needed any more (and they are such a huge bitch
to set up anyway... best to avoid them).

* Machine must have net.inet6.ip6.forwarding mode enabled.

* Internet-facing interface must be promiscuous mode.

* Will automatically proxy ND6 any subnets if the interface
is different from the one receiving the multicast. So e.g.
you can route IPV6 which would otherwise have to be switched.

The subnet interface must currently be different because if it
were the same the solicitation would be directly received by the
target host anyway (being a multicast) and we would compete with
it. This is also a good safety.

Example:

ifconfig igb0 inet6 2999:499:1:555:1::72/80 For DNS
ifconfig igb0 inet6 2999:499:1:555:1::1/80 For subnet default route
ifconfig igb1 inet6 2999:499:1:555::2/80 For internet router
ifconfig igb1 promisc
route add -inet6 default 2999:499:1:555::1

The internet router is doing a terminal /64 block, e.g. it's address
is 2999:499:1:555::1/64, but we want to break the net up further and
route portions of it instead of switch.

show more ...


Revision tags: v3.4.3
# dc71b7ab 31-May-2013 Justin C. Sherrill <justin@shiningsilence.com>

Correct BSD License clause numbering from 1-2-4 to 1-2-3.

Apparently everyone's doing it:
http://svnweb.freebsd.org/base?view=revision&revision=251069

Submitted-by: "Eitan Adler" <lists at eitanadl

Correct BSD License clause numbering from 1-2-4 to 1-2-3.

Apparently everyone's doing it:
http://svnweb.freebsd.org/base?view=revision&revision=251069

Submitted-by: "Eitan Adler" <lists at eitanadler.com>

show more ...


Revision tags: v3.4.2
# 2702099d 06-May-2013 Justin C. Sherrill <justin@shiningsilence.com>

Remove advertising clause from all that isn't contrib or userland bin.

By: Eitan Adler <lists@eitanadler.com>


# ca86d83e 02-May-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

netisr: Renaming, cpufn -> hashfn; no functional changes


# 5337421c 02-May-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

netisr: Inline netisr_cpuport() and netisr_curport()

These two functions do nothing more than just return pointer to the
element in the array.

Per our header file naming convention, put these two f

netisr: Inline netisr_cpuport() and netisr_curport()

These two functions do nothing more than just return pointer to the
element in the array.

Per our header file naming convention, put these two functions in
net/netisr2.h

show more ...


# ec7f7fc8 28-Apr-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

netisr: Function renaming; no functional changes

This cleans up code for keeping input packets' hash instead of masking
the hash with ncpus2_mask. netisr_hashport(), which maps packet hash
to netis

netisr: Function renaming; no functional changes

This cleans up code for keeping input packets' hash instead of masking
the hash with ncpus2_mask. netisr_hashport(), which maps packet hash
to netisr port, will be added soon.

show more ...


Revision tags: v3.4.0, v3.4.1, v3.4.0rc, v3.5.0
# d40991ef 13-Feb-2013 Sepherosa Ziehau <sephe@dragonflybsd.org>

if: Per-cpu ifnet/ifaddr statistics, step 1/3

Wrap ifnet/ifaddr stats updating, setting and extraction into macros;
ease upcoming changes.


1234