d8acd268 markj May 12, 2021, 5 p.m.
The various protocol implementations are not very consistent about
freeing mbufs in error paths.  In general, all protocols must free both
"m" and "control" upon an error, except if PRUS_NOTREADY is specified
(this is only implemented by TCP and unix(4) and requires further work
not handled in this diff), in which case "control" still must be freed.

This diff plugs various leaks in the pru_send implementations.

Reviewed by:	tuexen
MFC after:	2 weeks
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D30151
cgit
c1dd4d64 markj May 12, 2021, 4:52 p.m.
Commit 81728a538 ("Split rtinit() into multiple functions.") removed
the initialization of sa6, but not one of its uses.  This meant that we
were passing an uninitialized sockaddr as the address to
lltable_prefix_free().  Remove the variable outright to fix the problem.
The caller is expected to hold a reference on pr.

Fixes:		81728a538 ("Split rtinit() into multiple functions.")
Reported by:	KMSAN
Reviewed by:	donner
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D30166
cgit
ad22ba2b markj May 12, 2021, 4:52 p.m.
A successful copyinstr() call guarantees that the returned string is
nul-terminated.  Furthermore, the removed check would harmlessly compare
an uninitialized byte with '\0' if the new name is shorter than
IFNAMESIZ - 1.

Reported by:	KMSAN
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
cgit
06d1fd9f markj May 12, 2021, 4:52 p.m.
Otherwise padding bytes are leaked.

Reported by:	KMSAN
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
cgit
cd497bd4 markj May 12, 2021, 4:52 p.m.
MFC after:	1 week
Sponsored by:	The FreeBSD Foundation
cgit
93f7be08 andrew May 12, 2021, 2:12 p.m.
There is no need to call it evert 10ms when we need 1s granularity.
Update to update the time every second.

Reviewed by:	imp, manu, tsoome
Sponsored by:	Innovate UK
Differential Revision: https://reviews.freebsd.org/D30227
cgit
251842c6 tuexen May 12, 2021, 4:02 p.m.
When the TCP is in the front states, don't take the slop variable
into account. This improves consistency with the base stack.

Reviewed by:		rrs@
Differential Revision:	https://reviews.freebsd.org/D30230
MFC after:		1 week
Sponsored by:		Netflix, Inc.
cgit
c0dbc49a gjb May 12, 2021, 4:08 p.m.
Reported by:	Yasuhiro Kimura
Sponsored by:	Rubicon Communications, LLC ("Netgate")
cgit
69b6abb7 gjb May 12, 2021, 2:32 p.m.
Sponsored by:	Rubicon Communications, LLC ("Netgate")
cgit
fb6e261c gjb May 12, 2021, 2:29 p.m.
MFC after:	immediately (pending re approval)
Sponsored by:	Rubicon Communications, LLC ("Netgate")
cgit
3f25cfea gjb May 12, 2021, 2:27 p.m.
MFC after:	immediately (pending re approval)
Sponsored by:	Rubicon Communications, LLC ("Netgate")
cgit
12dda000 tuexen May 12, 2021, 1:29 p.m.
Thanks to Taylor Brandstetter for finding the issue and providing
a patch for the userland stack.

MFC after:	3 days
cgit
8c39e252 se May 12, 2021, 5:50 a.m.
Merge commit '2858419a0ee2b8f5827de72c00618bcd69ebc5fc'

This update fixes the initialization of "scale" to 20 if started with
-l and the initial statement leads to an error (e.g. contains a syntax
error). Scale was initialized to 0 in that case.

Another change is the support of job control in interactive mode with
line editing enabled. The control characters have been interpreted as
editing commands only, prior to this version.

MFC after:	3 days
cgit
2858419a se May 12, 2021, 5:35 a.m.
e681dd3e se May 12, 2021, 5:22 a.m.
The update had been performed on a check-out of the vendor branch,
but the final push lacked the target designation vendor/bc.
cgit