<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/netinet, branch main</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>carp: define CARP_AUTHLEN for carp_authlen field</title>
<updated>2026-04-17T18:32:01+00:00</updated>
<author>
<name>Christos Longros</name>
<email>chris.longros@gmail.com</email>
</author>
<published>2026-04-17T18:32:01+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=d9e7dd4a19b81a78a801973f8f5231f46a6d20b8'/>
<id>d9e7dd4a19b81a78a801973f8f5231f46a6d20b8</id>
<content type='text'>
Replace the bare 7 with a named constant.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Replace the bare 7 with a named constant.
</pre>
</div>
</content>
</entry>
<entry>
<title>sctp(4): Fix a typo in a source code comment</title>
<updated>2026-04-17T14:59:26+00:00</updated>
<author>
<name>Gordon Bergling</name>
<email>gbe@FreeBSD.org</email>
</author>
<published>2026-04-17T14:59:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a154d72775cbf3f0679fb2f989b3d1a035ae41c9'/>
<id>a154d72775cbf3f0679fb2f989b3d1a035ae41c9</id>
<content type='text'>
- s/initited/initiated/

Obtained from:	NetBSD
MFC after:	3 days
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- s/initited/initiated/

Obtained from:	NetBSD
MFC after:	3 days
</pre>
</div>
</content>
</entry>
<entry>
<title>in_mcast: Avoid calling sysctl_wire_old_buffer() in an epoch section</title>
<updated>2026-04-17T12:42:54+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2026-04-17T12:42:54+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c1b514c88c76a4de906775d47b06388e62ab6845'/>
<id>c1b514c88c76a4de906775d47b06388e62ab6845</id>
<content type='text'>
Wiring a virtual address range may require the thread to sleep, and this
is not permitted in an epoch section.

MFC after:	1 week
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Wiring a virtual address range may require the thread to sleep, and this
is not permitted in an epoch section.

MFC after:	1 week
</pre>
</div>
</content>
</entry>
<entry>
<title>tcp: use RFC 6191 for connection recycling in TIME-WAIT</title>
<updated>2026-04-17T07:11:41+00:00</updated>
<author>
<name>Michael Tuexen</name>
<email>tuexen@FreeBSD.org</email>
</author>
<published>2026-04-17T07:11:41+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=3a54aa3b0911bef15e014b8a8185e116efb0a918'/>
<id>3a54aa3b0911bef15e014b8a8185e116efb0a918</id>
<content type='text'>
Implement the criteria specified in RFC 6191 for recycling TCP
connections in TIME-WAIT.

Reviewed by:		rscheff, Marius Halden
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D56321
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement the criteria specified in RFC 6191 for recycling TCP
connections in TIME-WAIT.

Reviewed by:		rscheff, Marius Halden
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D56321
</pre>
</div>
</content>
</entry>
<entry>
<title>in_mcast: Fix a lock leak in inp_set_source_filters()</title>
<updated>2026-04-16T20:27:45+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2026-04-16T19:57:57+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bebc1a5b09e358b420077a1b5c0f85f8e7f0812f'/>
<id>bebc1a5b09e358b420077a1b5c0f85f8e7f0812f</id>
<content type='text'>
MFC after:	3 days
Reported by:	Claude Opus 4.6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
MFC after:	3 days
Reported by:	Claude Opus 4.6
</pre>
</div>
</content>
</entry>
<entry>
<title>nd6: Add support for route information (RFC 4191)</title>
<updated>2026-04-16T18:57:07+00:00</updated>
<author>
<name>Pouria Mousavizadeh Tehrani</name>
<email>pouria@FreeBSD.org</email>
</author>
<published>2026-04-16T14:23:49+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=c8d25804f56ae7c35eaa492b6110807a2675d41a'/>
<id>c8d25804f56ae7c35eaa492b6110807a2675d41a</id>
<content type='text'>
Implement RFC 4191 by handling received Router Adverisement (RA)
packets with route information option.
For default routes, use the route information's lifetime and
preference to overwrite the RA's lifetime/preference.
Also install and update more-specific route prefixes with the
option's lifetime and expire them when their lifetime elapses.

PR:		263982
Reviewed by:	markj
Tested by:	Marek Zarychta &lt;zarychtam@plan-b.pwste.edu.pl&gt;
Relnotes:	yes
Differential Revision: https://reviews.freebsd.org/D55449
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement RFC 4191 by handling received Router Adverisement (RA)
packets with route information option.
For default routes, use the route information's lifetime and
preference to overwrite the RA's lifetime/preference.
Also install and update more-specific route prefixes with the
option's lifetime and expire them when their lifetime elapses.

PR:		263982
Reviewed by:	markj
Tested by:	Marek Zarychta &lt;zarychtam@plan-b.pwste.edu.pl&gt;
Relnotes:	yes
Differential Revision: https://reviews.freebsd.org/D55449
</pre>
</div>
</content>
</entry>
<entry>
<title>tcp lro: fix vnet handling</title>
<updated>2026-04-15T20:31:48+00:00</updated>
<author>
<name>Michael Tuexen</name>
<email>tuexen@FreeBSD.org</email>
</author>
<published>2026-04-15T20:31:48+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=2d13620c6e1be7f8136095f648a6b824158d0941'/>
<id>2d13620c6e1be7f8136095f648a6b824158d0941</id>
<content type='text'>
Reported by:		Shawn Webb
Reviewed by:		glebius, rrs
Fixes:			f707cc00ed12 ("lro: move pkt rejection checks to leafs to avoid queueing")
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D56420
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reported by:		Shawn Webb
Reviewed by:		glebius, rrs
Fixes:			f707cc00ed12 ("lro: move pkt rejection checks to leafs to avoid queueing")
Sponsored by:		Netflix, Inc.
Differential Revision:	https://reviews.freebsd.org/D56420
</pre>
</div>
</content>
</entry>
<entry>
<title>ip_mroute: Fix a lock leak in X_ip_mforward()</title>
<updated>2026-04-15T15:06:05+00:00</updated>
<author>
<name>Mark Johnston</name>
<email>markj@FreeBSD.org</email>
</author>
<published>2026-04-15T15:01:58+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=18b7115cba2f698909a4801dc2cc1b04b1f4f210'/>
<id>18b7115cba2f698909a4801dc2cc1b04b1f4f210</id>
<content type='text'>
If a FIB does not have a router configured, X_ip_mforward() would leak a
lock.  Plug the leak.

The IPv6 counterpart did not have such a check.  It wouldn't send an
upcall to a non-existent router anyway due to the router_ver check, but
we should verify that a router is present anyway.

Add regression test cases to exercise these code paths.

Reported by:	Claude Opus 4.6
Fixes:		0bb9c2b665d9 ("ip6_mroute: FIBify")
Sponsored by:	Klara, Inc.
Sponsored by:	Stormshield
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If a FIB does not have a router configured, X_ip_mforward() would leak a
lock.  Plug the leak.

The IPv6 counterpart did not have such a check.  It wouldn't send an
upcall to a non-existent router anyway due to the router_ver check, but
we should verify that a router is present anyway.

Add regression test cases to exercise these code paths.

Reported by:	Claude Opus 4.6
Fixes:		0bb9c2b665d9 ("ip6_mroute: FIBify")
Sponsored by:	Klara, Inc.
Sponsored by:	Stormshield
</pre>
</div>
</content>
</entry>
<entry>
<title>routing: Make ip[6]_tryforward() FIB-aware for local traffic</title>
<updated>2026-04-14T22:11:18+00:00</updated>
<author>
<name>Pouria Mousavizadeh Tehrani</name>
<email>pouria@FreeBSD.org</email>
</author>
<published>2026-04-11T12:58:28+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=bf41d86df0d9dc4a1342c579f4e72db3c66b3443'/>
<id>bf41d86df0d9dc4a1342c579f4e72db3c66b3443</id>
<content type='text'>
`ip_tryforward()` and `ip6_tryforward()` checks whether the destination
address is local or not without considering if it belongs to the current FIB.
If the destination is local but not in our FIB, forward it instead
of returning it to ip_input().

PR:		292319
Reviewed by:	zlei
MFC after:	1 week
MFC to:		stable/15
Differential Revision: https://reviews.freebsd.org/D56353
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`ip_tryforward()` and `ip6_tryforward()` checks whether the destination
address is local or not without considering if it belongs to the current FIB.
If the destination is local but not in our FIB, forward it instead
of returning it to ip_input().

PR:		292319
Reviewed by:	zlei
MFC after:	1 week
MFC to:		stable/15
Differential Revision: https://reviews.freebsd.org/D56353
</pre>
</div>
</content>
</entry>
<entry>
<title>lro: move pkt rejection checks to leafs to avoid queueing non-LRO'able pkts</title>
<updated>2026-04-14T18:47:57+00:00</updated>
<author>
<name>Andrew Gallatin</name>
<email>gallatin@FreeBSD.org</email>
</author>
<published>2026-04-13T21:33:17+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=f707cc00ed124828e367b020d6b417842321f641'/>
<id>f707cc00ed124828e367b020d6b417842321f641</id>
<content type='text'>
When lro mbuf queuing is enabled, we should not queue easily
reject-able packets. Queuing them does a bit of extra work (sorting,
timestamps) and can potentially delay urgent packets such as LACP
PDUs. This change moves simple rejection tests from lro_rx_common()
into lro_rx and (more importantly) into tcp_lro_queue_mbuf().

Note this change only moves the easy checks on forwarding and packet
metadata, where the rejection criteria is already hot in cache. It
does not move parsing and looking inside the packet to verify the
ether protocol, ip protocol, etc. This could be done, but we risk
essentially doubling the cache misses per-packet by doing so.

Differential Revision: https://reviews.freebsd.org/D56337
Reviewed by: rrs, tuexen
Sponsored by: Netflix
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When lro mbuf queuing is enabled, we should not queue easily
reject-able packets. Queuing them does a bit of extra work (sorting,
timestamps) and can potentially delay urgent packets such as LACP
PDUs. This change moves simple rejection tests from lro_rx_common()
into lro_rx and (more importantly) into tcp_lro_queue_mbuf().

Note this change only moves the easy checks on forwarding and packet
metadata, where the rejection criteria is already hot in cache. It
does not move parsing and looking inside the packet to verify the
ether protocol, ip protocol, etc. This could be done, but we risk
essentially doubling the cache misses per-packet by doing so.

Differential Revision: https://reviews.freebsd.org/D56337
Reviewed by: rrs, tuexen
Sponsored by: Netflix
</pre>
</div>
</content>
</entry>
</feed>
