| #
c5711800 |
| 29-Jun-2024 |
riastradh <riastradh@NetBSD.org> |
netinet6: Use _NET_STAT* API instead of direct array access.
XXX Exception: ip6flow_addstats_rt _assigns_ one of the `statistics' to the current count of ip6 flows in use, and we don't have anything
netinet6: Use _NET_STAT* API instead of direct array access.
XXX Exception: ip6flow_addstats_rt _assigns_ one of the `statistics' to the current count of ip6 flows in use, and we don't have anything in the _NET_STAT* API for that. So for now I abuse the abstraction, until we sort out this one exceptional case properly.
PR kern/58380
show more ...
|
| #
0e390eee |
| 28-Oct-2022 |
ozaki-r <ozaki-r@NetBSD.org> |
inpcb: integrate data structures of PCB into one
Data structures of network protocol control blocks (PCBs), i.e., struct inpcb, in6pcb and inpcb_hdr, are not organized well. Users of the data struc
inpcb: integrate data structures of PCB into one
Data structures of network protocol control blocks (PCBs), i.e., struct inpcb, in6pcb and inpcb_hdr, are not organized well. Users of the data structures have to handle them separately and thus the code is cluttered and duplicated.
The commit integrates the data structures into one, struct inpcb. As a result, users of PCBs only have to handle just one data structure, so the code becomes simple.
One drawback is that the data size of PCB for IPv4 increases by 40 bytes (from 248 bytes to 288 bytes).
show more ...
|
| #
b54270a1 |
| 24-Oct-2022 |
knakahara <knakahara@NetBSD.org> |
Fix PR kern/57037
Be able to change the behavior sending parameter changing routing messages. When set net.inet6.ip6.param_rt_msg=0, don't send parameter changing routing messages. When set net.inet
Fix PR kern/57037
Be able to change the behavior sending parameter changing routing messages. When set net.inet6.ip6.param_rt_msg=0, don't send parameter changing routing messages. When set net.inet6.ip6.param_rt_msg=1(default), send parameter changing routing messages by RTM_NEWADDR.
show more ...
|
| #
0c0a3f29 |
| 02-Sep-2022 |
thorpej <thorpej@NetBSD.org> |
pktqueue: Re-factor sysctl handling.
Provide a new pktq_sysctl_setup() function that attaches standard pktq sysctl nodes below a specified parent node, with either a fixed node ID or CTL_CREATE to d
pktqueue: Re-factor sysctl handling.
Provide a new pktq_sysctl_setup() function that attaches standard pktq sysctl nodes below a specified parent node, with either a fixed node ID or CTL_CREATE to dynamically assign node IDs. Make all of the sysctl handlers private to pktqueue.c, and remove the INET- and INET6-specific pktqueue sysctl code from net/if.c.
show more ...
|
| #
2143da87 |
| 19-Feb-2021 |
christos <christos@NetBSD.org> |
- Make ALIGNED_POINTER use __alignof(t) instead of sizeof(t). This is more correct because it works with non-primitive types and provides the ABI alignment for the type the compiler will use. - R
- Make ALIGNED_POINTER use __alignof(t) instead of sizeof(t). This is more correct because it works with non-primitive types and provides the ABI alignment for the type the compiler will use. - Remove all the *_HDR_ALIGNMENT macros and asserts - Replace POINTER_ALIGNED_P with ACCESSIBLE_POINTER which is identical to ALIGNED_POINTER, but returns that the pointer is always aligned if the CPU supports unaligned accesses. [ as proposed in tech-kern ]
show more ...
|
| #
91838898 |
| 14-Feb-2021 |
christos <christos@NetBSD.org> |
- centralize header align and pullup into a single inline function - use a single macro to align pointers and expose the alignment, instead of hard-coding 3 in 1/2 the macros. - fix an issue in the
- centralize header align and pullup into a single inline function - use a single macro to align pointers and expose the alignment, instead of hard-coding 3 in 1/2 the macros. - fix an issue in the ipv6 lt2p where it was aligning for ipv4 and pulling for ipv6.
show more ...
|
| #
9e214c7f |
| 28-Aug-2020 |
ozaki-r <ozaki-r@NetBSD.org> |
inet6: reduce silent packet discards
|
| #
4c639cc7 |
| 28-Aug-2020 |
ozaki-r <ozaki-r@NetBSD.org> |
inet6: pass rcvif to ip6_forward to avoid extra psref_acquire
|
| #
b494441d |
| 28-Aug-2020 |
ozaki-r <ozaki-r@NetBSD.org> |
ipsec: rename ipsec_ip_input to ipsec_ip_input_checkpolicy
Because it just checks if a packet passes security policies.
|
| #
c1e00d7d |
| 28-Aug-2020 |
ozaki-r <ozaki-r@NetBSD.org> |
inet, inet6: count packets dropped by IPsec
The counters count packets dropped due to security policy checks.
|
| #
6ef1c327 |
| 27-Jul-2020 |
roy <roy@NetBSD.org> |
ip6: Remove __packed attribute from ip6 structures
They should naturally align. Add compile time assertations to ip6_input.c to prove this.
|
| #
0551fa11 |
| 19-Jun-2020 |
maxv <maxv@NetBSD.org> |
localify
|
| #
b05648aa |
| 12-Jun-2020 |
roy <roy@NetBSD.org> |
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
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).
show more ...
|
| #
624f3f74 |
| 12-Nov-2019 |
maxv <maxv@NetBSD.org> |
Add more checks in ip6_pullexthdr, to prevent a panic in m_copydata. The Rip6 entry point could see a garbage Hop6 option.
Not a big issue, since it's a clean panic only triggerable if the socket ha
Add more checks in ip6_pullexthdr, to prevent a panic in m_copydata. The Rip6 entry point could see a garbage Hop6 option.
Not a big issue, since it's a clean panic only triggerable if the socket has the IN6P_DSTOPTS/IN6P_RTHDR option.
Reported-by: syzbot+3b07b3511b4ceb8bf1e2@syzkaller.appspotmail.com
show more ...
|
| #
5fd0d56d |
| 18-Oct-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
in6: reset the temporary address timer on a change of the interval period
|
| #
367904e3 |
| 16-Oct-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
Validate ip6_temp_preferred_lifetime (net.inet6.ip6.temppltime) on a change
ip6_temp_preferred_lifetime is used to calculate an interval period to regenerate temporary addresse by TEMP_PREFERRED_L
Validate ip6_temp_preferred_lifetime (net.inet6.ip6.temppltime) on a change
ip6_temp_preferred_lifetime is used to calculate an interval period to regenerate temporary addresse by TEMP_PREFERRED_LIFETIME - REGEN_ADVANCE - DESYNC_FACTOR as per RFC 3041 3.5. So it must be greater than (REGEN_ADVANCE + DESYNC_FACTOR), otherwise it will be negative and go wrong, for example KASSERT(to_ticks >= 0) in callout_schedule_locked fails.
show more ...
|
| #
e32ddc92 |
| 16-Oct-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
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 ca
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
show more ...
|
| #
2bcf5b29 |
| 19-Sep-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
Apply some missing changes lost on the previous commit
|
| #
e524fb36 |
| 19-Sep-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
Avoid having a rtcache directly in a percpu storage
percpu(9) has a certain memory storage for each CPU and provides it by the piece to users. If the storages went short, percpu(9) enlarges them by
Avoid having a rtcache directly in a percpu storage
percpu(9) has a certain memory storage for each CPU and provides it by the piece to users. If the storages went short, percpu(9) enlarges them by allocating new larger memory areas, replacing old ones with them and destroying the old ones. A percpu storage referenced by a pointer gotten via percpu_getref can be destroyed by the mechanism after a running thread sleeps even if percpu_putref has not been called.
Using rtcache, i.e., packet processing, typically involves sleepable operations such as rwlock so we must avoid dereferencing a rtcache that is directly stored in a percpu storage during packet processing. Address this situation by having just a pointer to a rtcache in a percpu storage instead.
Reviewed by knakahara@ and yamaguchi@
show more ...
|
| #
183863f5 |
| 15-Sep-2019 |
bouyer <bouyer@NetBSD.org> |
Packet filters can return an mbuf chain with fragmented headers, so m_pullup() it if needed and remove the KASSERT()s.
|
| #
6d8eb4f9 |
| 13-May-2019 |
ozaki-r <ozaki-r@NetBSD.org> |
Count packets dropped by pfil
|
| #
e2f99c2d |
| 17-Jan-2019 |
knakahara <knakahara@NetBSD.org> |
Fix ipsecif(4) cannot apply input direction packet filter. Reviewed by ozaki-r@n.o and ryo@n.o.
Add ATF later.
|
| #
e0e84df6 |
| 14-Jan-2019 |
maxv <maxv@NetBSD.org> |
Fix bug, should be ip6_protox[].
|
| #
5c987100 |
| 15-Nov-2018 |
maxv <maxv@NetBSD.org> |
Remove the 't' argument from m_tag_find().
|
| #
a7f3f7dd |
| 19-May-2018 |
maxv <maxv@NetBSD.org> |
Remove misleading comment.
|