openbsd
2 years agoAvoid the layering violation of re-parsing for \E in roff_expand().
schwarze [Thu, 2 Jun 2022 11:28:16 +0000 (11:28 +0000)]
Avoid the layering violation of re-parsing for \E in roff_expand().
To that end, add another argument to roff_escape()
returning the index of the escape name.
This also makes the code in roff_escape() a bit more uniform
in so far as it no longer needs the "char esc_name" local variable
but now does everything with indices into buf[].
No functional change.

2 years agoAdjust lowest allowed routing priority to be bigger than RTP_LOCAL.
claudio [Thu, 2 Jun 2022 11:12:47 +0000 (11:12 +0000)]
Adjust lowest allowed routing priority to be bigger than RTP_LOCAL.
RTP_LOCAL is internally used by the kernel and is not available for
userland. The minimal usable routing prio is 2.
OK tb@

2 years agoUse a common idiom to check if the user supplied routing priority is
claudio [Thu, 2 Jun 2022 11:05:15 +0000 (11:05 +0000)]
Use a common idiom to check if the user supplied routing priority is
in range. Also rephrase the error message.
OK tb@

2 years agoCleanup ktable_exists() usage and its warning message.
claudio [Thu, 2 Jun 2022 09:29:34 +0000 (09:29 +0000)]
Cleanup ktable_exists() usage and its warning message.

Check the return value in all cases and use a common idiom for this check.
OK tb@

2 years agoAdjust some warning messages to be a bit more accurate. ktable_update()
claudio [Thu, 2 Jun 2022 08:46:25 +0000 (08:46 +0000)]
Adjust some warning messages to be a bit more accurate. ktable_update()
actually loads a routing table and not really an rdomain.

2 years agoWhen running sysupgrade on -stable move to the next release, not
florian [Thu, 2 Jun 2022 07:44:18 +0000 (07:44 +0000)]
When running sysupgrade on -stable move to the next release, not
-current.
Found the hard way by & OK sthen

2 years agoImplement and enable IPv4, TCP, and UDP checksum offloading for igc.
mbuhl [Thu, 2 Jun 2022 07:41:17 +0000 (07:41 +0000)]
Implement and enable IPv4, TCP, and UDP checksum offloading for igc.

ok kevlo@

2 years agoStop hiding a few assertions behind the opt-in LOCKF_DIAGNOSTIC option.
anton [Thu, 2 Jun 2022 05:32:28 +0000 (05:32 +0000)]
Stop hiding a few assertions behind the opt-in LOCKF_DIAGNOSTIC option.
This code has already been exercised quite extensively by syzkaller and
got decent test coverage.

2 years agoenable aq(4) on arm64 now that it works reasonably well
jmatthew [Thu, 2 Jun 2022 03:09:39 +0000 (03:09 +0000)]
enable aq(4) on arm64 now that it works reasonably well

2 years agoFix a buffer overrun in the roff(7) escape sequence parser that could
schwarze [Wed, 1 Jun 2022 23:20:19 +0000 (23:20 +0000)]
Fix a buffer overrun in the roff(7) escape sequence parser that could
be triggered by macro arguments ending in double backslashes, for
example if people wrote .Sq "\\" instead of the correct .Sq "\e".

The bug was hard to find because it caused a segfault only very rarely,
according to my measurements with a probability of less than one permille.
I'm sorry that the first one to hit the bug was an arm64 release build
run by deraadt@.  Thanks to bluhm@ for providing access to an arm64
machine for debugging purposes.  In the end, the bug turned out to be
architecture-independent.

The reason for the bug was that i assumed an invariant that does not exist.
The function roff_parse_comment() is very careful to make sure that the
input buffer does not end in an escape character before passing it on,
so i assumed this is still true when reaching roff_expand() immediately
afterwards.  But roff_expand() can also be reached from roff_getarg(),
in which case there *can* be a lone escape character at the end of the
buffer in case copy mode processing found and converted a double
backslash.

Fix this by handling a trailing escape character correctly in the
function roff_escape().

The lesson here probably is to refrain from assuming an invariant
unless verifying that the invariant actually holds is reasonably
simple.  In some cases, in particular for invariants that are important
but not simple, it might also make sense to assert(3) rather than just
assume the invariant.  An assertion failure is so much better than a
buffer overrun...

2 years agochange amd64 pmap_convert to return void
dv [Wed, 1 Jun 2022 17:47:18 +0000 (17:47 +0000)]
change amd64 pmap_convert to return void

There are no other return options, so adjust function signature to
void. This also allows for cleaning up its usage in vmm(4) in the
vm pmap initialization logic.

ok mlarkin@

2 years agocallers to pf(4) must continue to run with packet as returned
sashan [Wed, 1 Jun 2022 17:34:13 +0000 (17:34 +0000)]
callers to pf(4) must continue to run with packet as returned
by firewall.

OK dlg@

2 years agoremove unused pmap_convert prototype from i386
dv [Wed, 1 Jun 2022 17:16:00 +0000 (17:16 +0000)]
remove unused pmap_convert prototype from i386

Leftover lint from early days of vmm(4).

ok mlarkin@

2 years agoIf escape-time is 0, force to 1 instead - not waiting at all is asking
nicm [Wed, 1 Jun 2022 15:43:22 +0000 (15:43 +0000)]
If escape-time is 0, force to 1 instead - not waiting at all is asking
for problems on some platforms.

2 years agoRemove a confusing comment that has been stale since e2k19 (r1.26).
tb [Wed, 1 Jun 2022 14:48:53 +0000 (14:48 +0000)]
Remove a confusing comment that has been stale since e2k19 (r1.26).

2 years agoAdd a regress test for the end of lock range ambiguity bug.
visa [Wed, 1 Jun 2022 14:21:50 +0000 (14:21 +0000)]
Add a regress test for the end of lock range ambiguity bug.

2 years agoFix ambiguity with lock range end
visa [Wed, 1 Jun 2022 14:18:43 +0000 (14:18 +0000)]
Fix ambiguity with lock range end

When the user requests a lock range that ends at LLONG_MAX, replace
the end point with the special EOF value -1. This avoids ambiguity
with lf_end in lf_split(). The ambiguity could result in a broken
data structure.

This change is visible to userspace in a corner case. When a lock range
has been requested with an end point at absolute position LLONG_MAX,
fcntl(F_GETLK) returns l_len == 0, instead of a positive value, for that
range. This seems consistent with FreeBSD and Linux.

OK anton@

Reported-by: syzbot+c93afea6c27a3fa3af39@syzkaller.appspotmail.com
2 years agoFix lock range start when l_whence == SEEK_END and l_len < 0.
visa [Wed, 1 Jun 2022 14:16:28 +0000 (14:16 +0000)]
Fix lock range start when l_whence == SEEK_END and l_len < 0.

OK anton@

2 years agoLimit the number of RSC checklist FileNameAndHash entries the same way
tb [Wed, 1 Jun 2022 10:59:21 +0000 (10:59 +0000)]
Limit the number of RSC checklist FileNameAndHash entries the same way
as mft FileAndHash entries are checked.

ok claudio job

2 years agoFix off-by-one in MAX_MANIFEST_ENTRIES check
tb [Wed, 1 Jun 2022 10:58:34 +0000 (10:58 +0000)]
Fix off-by-one in MAX_MANIFEST_ENTRIES check

ok claudio job

2 years agoshrink dmesg output by printing the ethernet address on the attach line.
dlg [Wed, 1 Jun 2022 08:19:15 +0000 (08:19 +0000)]
shrink dmesg output by printing the ethernet address on the attach line.

2 years agomark the mvneta interrupt handler as mpsafe.
dlg [Wed, 1 Jun 2022 06:33:46 +0000 (06:33 +0000)]
mark the mvneta interrupt handler as mpsafe.

link state changes still take the kernel lock, but packet processing
is unlocked now.

2 years agorework the rx ring processing.
dlg [Wed, 1 Jun 2022 04:31:08 +0000 (04:31 +0000)]
rework the rx ring processing.

this is another big step toward making the code mpsafe, and makes
a bunch of ring operations such as dmamap syncs and register updates
get done once for the ring rather than for every packet.

2 years agomark mvneta_start mpsafe.
dlg [Wed, 1 Jun 2022 03:51:19 +0000 (03:51 +0000)]
mark mvneta_start mpsafe.

the interrupt handler is still under kernel lock, but at least you
can queue packets from another cpu concurrently.

2 years agodont have to say Ethernet address in dmesg, address is fine
dlg [Wed, 1 Jun 2022 03:39:57 +0000 (03:39 +0000)]
dont have to say Ethernet address in dmesg, address is fine

2 years agotrim some white space
dlg [Wed, 1 Jun 2022 03:37:41 +0000 (03:37 +0000)]
trim some white space

2 years agorework tx start and completion.
dlg [Wed, 1 Jun 2022 03:34:21 +0000 (03:34 +0000)]
rework tx start and completion.

this is a big step toward making the code mpsafe, and makes a bunch
of ring operations such as dmamap syncs and register updates per
start/completion call rather than per packet.

2 years agoMake sure we error on parse failure.
tb [Tue, 31 May 2022 21:35:46 +0000 (21:35 +0000)]
Make sure we error on parse failure.

ok claudio

2 years agoRudimentary implementation of the \A escape sequence, following groff
schwarze [Tue, 31 May 2022 20:21:40 +0000 (20:21 +0000)]
Rudimentary implementation of the \A escape sequence, following groff
semantics (test identifier for syntactical validity), not at all
following the completely unrelated Heirloom semantics (define
hyperlink target position).

The main motivation for providing this implementation is to get \A
into the parsing class ESCAPE_EXPAND that corresponds to groff parsing
behaviour, which is quite similar to the \B escape sequence (test
numerical expression for syntactical validity).  This is likely
to improve parsing of nested escape sequences in the future.

Validation isn't perfect yet.  In particular, this implementation
rejects \A arguments containing some escape sequences that groff
allows to slip through.  But that is unlikely to cause trouble even
in documents using \A for non-trivial purposes.  Rejecting the nested
escapes in question might even improve robustnest because the rejected
names are unlikely to really be usable for practical purposes - no
matter that groff dubiously considers them syntactically valid.

2 years agofix spacing;
jmc [Tue, 31 May 2022 20:12:24 +0000 (20:12 +0000)]
fix spacing;

2 years agoFix typo: argv[1] -> argv[i]
tb [Tue, 31 May 2022 19:37:02 +0000 (19:37 +0000)]
Fix typo: argv[1] -> argv[i]

2 years agoRemove old checklists and add a couple of new ones.
tb [Tue, 31 May 2022 19:14:15 +0000 (19:14 +0000)]
Remove old checklists and add a couple of new ones.

2 years agoThe pflow regression test could fail due to a race where the close(2)
mbuhl [Tue, 31 May 2022 19:01:46 +0000 (19:01 +0000)]
The pflow regression test could fail due to a race where the close(2)
call of the receiver was called before the FIN on the sender was
processed.

OK bluhm@
OK anton@

2 years agoI made non-trivial contributions to these files.
tb [Tue, 31 May 2022 18:51:35 +0000 (18:51 +0000)]
I made non-trivial contributions to these files.

2 years agoShuffle two helper functions down.
tb [Tue, 31 May 2022 18:45:14 +0000 (18:45 +0000)]
Shuffle two helper functions down.

This way the helper functions appear in the order they are used in
rsc_parse_econtent().

2 years agoUpdate reference to RSC draft 08
tb [Tue, 31 May 2022 18:42:26 +0000 (18:42 +0000)]
Update reference to RSC draft 08

ok claudio job

2 years agoRemove now unused ASN1_frame() and cms_econtent_version()
tb [Tue, 31 May 2022 18:41:43 +0000 (18:41 +0000)]
Remove now unused ASN1_frame() and cms_econtent_version()

ok claudio job

2 years agoRewrite rsc.c using ASN.1 templates
tb [Tue, 31 May 2022 18:40:15 +0000 (18:40 +0000)]
Rewrite rsc.c using ASN.1 templates

This implements the constrained versions of the RFC 3779 structures
since OpenSSL's 3779 API doesn't expose IPAddrBlocks. This way we can
also avoid extra checks after walking the structs. Use the previously
exposed sbgp_as_{id,range}() and sbgp_addr{,_range}() to remove a lot
of copy-pasted code.

While parsing ConstrainedASIdentifiers allocate only once and for
ConstrainedIPAddrBlocks allocate once per address family instead of
doing a reallocation for each asid or prefix.

This removes the last explicit use of ASN1_TYPE and ASN1_SEQUENCE_ANY
from rpki-client.

ok claudio job

2 years agoPrepare rewrite of rsc.c with templated ASN.1
tb [Tue, 31 May 2022 18:33:16 +0000 (18:33 +0000)]
Prepare rewrite of rsc.c with templated ASN.1

Change signatures of various functions to avoid using struct parse and
expose sbgp_as_{id,range}() and sbgp_addr{,_range}() so they can be used
from rsc.c. This is a mostly mechanical diff.

ok claudio job

2 years agoTrivial patch to put the roff(7) \g (interpolate format of register)
schwarze [Tue, 31 May 2022 18:08:02 +0000 (18:08 +0000)]
Trivial patch to put the roff(7) \g (interpolate format of register)
escape sequence into the correct parsing class, ESCAPE_EXPAND.
Expansion of \g is supposed to work exactly like the expansion
of the related escape sequence \n (interpolate register value),
but since we ignore the .af (assign output format) request,
we just interpolate an empty string to replace the \g sequence.

Surprising as it may seem, this actually makes a formatting difference
for deviate input like ".O\gNx" which used to raise bogus "escaped
character not allowed in a name" and "skipping unknown macro" errors
and printed nothing, whereas now it correctly prints "OpenBSD".

2 years agoAdd a missing space.
nicm [Tue, 31 May 2022 16:13:43 +0000 (16:13 +0000)]
Add a missing space.

2 years agossh-keygen: implement "verify-required" certificate option
naddy [Tue, 31 May 2022 14:05:12 +0000 (14:05 +0000)]
ssh-keygen: implement "verify-required" certificate option

This was already documented when support for user-verified FIDO
keys was added, but the ssh-keygen(1) code was missing.

ok djm@

2 years agoTrim menu item text correctly, GitHub issue 3197.
nicm [Tue, 31 May 2022 10:22:42 +0000 (10:22 +0000)]
Trim menu item text correctly, GitHub issue 3197.

2 years agoIntroduce a integration test for max-communities
claudio [Tue, 31 May 2022 09:50:26 +0000 (09:50 +0000)]
Introduce a integration test for max-communities

2 years agoExtend community unit test to also check community_count()
claudio [Tue, 31 May 2022 09:46:54 +0000 (09:46 +0000)]
Extend community unit test to also check community_count()

2 years agoImplement a max communities filter match
claudio [Tue, 31 May 2022 09:45:33 +0000 (09:45 +0000)]
Implement a max communities filter match

When max-communities X is set on a filterrule the filter will match when
more than X communities are present in the path. In other words
max-communities 0 means no communities are allowed and max-communities 3
limits it up to 3 communities.
There is max-communities, max-ext-communities and max-large-communities
for each of the 3 community attributes. These three max checks can be used
together.
OK tb@ job@

2 years agosync
deraadt [Mon, 30 May 2022 23:31:45 +0000 (23:31 +0000)]
sync

2 years agoDummy implementation of the roff(7) \V (interpolate environment variable)
schwarze [Mon, 30 May 2022 22:50:40 +0000 (22:50 +0000)]
Dummy implementation of the roff(7) \V (interpolate environment variable)
escape sequence.  This is needed to get \V into the correct parsing
class, ESCAPE_EXPAND.

It is intentional that mandoc(1) output is *not* influenced by environment
variables, so interpolate the name of the variable with some decorating
punctuation rather than interpolating its value.

2 years agoknf; fix whitespace in structs
dv [Mon, 30 May 2022 17:58:20 +0000 (17:58 +0000)]
knf; fix whitespace in structs

2 years agosfgpio(4)
kettenis [Mon, 30 May 2022 17:44:10 +0000 (17:44 +0000)]
sfgpio(4)

2 years agoAdd sfgpio(4), a driver for the GPIO controller found on the
kettenis [Mon, 30 May 2022 17:39:09 +0000 (17:39 +0000)]
Add sfgpio(4), a driver for the GPIO controller found on the
SiFive FU740 SoC.

ok jca@

2 years agogrep(1): print full context when using match count
dv [Mon, 30 May 2022 16:07:28 +0000 (16:07 +0000)]
grep(1): print full context when using match count

When using the match count flag (-m), grep was not printing the
context after the match if the -A or -C flags were provided.

This changes the logic to continue printing lines after hitting the
match count.

ok op@, millert@

2 years agoReplace selwakeup() with KNOTE() in pipe event activation.
visa [Mon, 30 May 2022 14:06:16 +0000 (14:06 +0000)]
Replace selwakeup() with KNOTE() in pipe event activation.

Recommit the reverted change selectively so that only pipes are
affected. Leave sockets untouched for now.

2 years agoRemove duplicates from completion list, GitHub issue 3178.
nicm [Mon, 30 May 2022 13:07:46 +0000 (13:07 +0000)]
Remove duplicates from completion list, GitHub issue 3178.

2 years agoAdd pane_start_path to match start_command.
nicm [Mon, 30 May 2022 13:07:06 +0000 (13:07 +0000)]
Add pane_start_path to match start_command.

2 years agoSet PWD so shells have a hint about the real path (this was done before
nicm [Mon, 30 May 2022 13:06:41 +0000 (13:06 +0000)]
Set PWD so shells have a hint about the real path (this was done before
but lost in a merge). GitHub issue 3186.

2 years agoFix property name from Sergei Dyshel, and a typo from imcusg at gmail
nicm [Mon, 30 May 2022 13:06:10 +0000 (13:06 +0000)]
Fix property name from Sergei Dyshel, and a typo from imcusg at gmail
dot com.

2 years agoCheck if args_strtonum argument is NULL or not a string, from Anindya
nicm [Mon, 30 May 2022 13:04:24 +0000 (13:04 +0000)]
Check if args_strtonum argument is NULL or not a string, from Anindya
Mukherjee.

2 years agoDo not allow pipe-pane on dead panes, from Anindya Mukherjee, GitHub
nicm [Mon, 30 May 2022 13:03:46 +0000 (13:03 +0000)]
Do not allow pipe-pane on dead panes, from Anindya Mukherjee, GitHub
issue 3174.

2 years agoIf a mouse position was above the maximum supported by the normal mouse
nicm [Mon, 30 May 2022 13:02:55 +0000 (13:02 +0000)]
If a mouse position was above the maximum supported by the normal mouse
protocol (223), tmux was allowing it to wrap around. However, since tmux
was not correctly handling this on input, other programs also do not
handle it correctly, and the alternative SGR mouse mode is now
widespread, this seems unnecessary, so remove this feature. Also define
some constants to make it clearer what the numbers mean. Mostly from
Leonid S Usov in GitHub issue 3165.

2 years agoAdd a way for lines added to copy mode to be passed through the parser
nicm [Mon, 30 May 2022 13:00:18 +0000 (13:00 +0000)]
Add a way for lines added to copy mode to be passed through the parser
to handle escape sequences and use it for run-shell, GitHub issue 3156.

2 years agoiTerm2 has OSC 7, from Gregory Anders.
nicm [Mon, 30 May 2022 12:57:31 +0000 (12:57 +0000)]
iTerm2 has OSC 7, from Gregory Anders.

2 years agoSpacing/style nits.
nicm [Mon, 30 May 2022 12:55:25 +0000 (12:55 +0000)]
Spacing/style nits.

2 years agoEmit window-layout-changed on swap-pane, from George Nachman.
nicm [Mon, 30 May 2022 12:54:09 +0000 (12:54 +0000)]
Emit window-layout-changed on swap-pane, from George Nachman.

2 years agoBetter error reporting when applying custom layouts.
nicm [Mon, 30 May 2022 12:52:02 +0000 (12:52 +0000)]
Better error reporting when applying custom layouts.

2 years agoDo not send focus sequences when focus is enabled or disabled by the
nicm [Mon, 30 May 2022 12:51:27 +0000 (12:51 +0000)]
Do not send focus sequences when focus is enabled or disabled by the
application if it is turned off. GitHub issue 3142.

2 years agoAdd an ACL list for users connecting to the tmux socket. Users may be
nicm [Mon, 30 May 2022 12:48:57 +0000 (12:48 +0000)]
Add an ACL list for users connecting to the tmux socket. Users may be
forbidden from attaching, forced to attach read-only, or allowed to
attach read-write. A new command, server-access, configures the list.
tmux gets the user using getpeereid(3) of the client socket. Users must
still configure file system permissions manually. From Dallas Lyons and
others.

2 years agomove bufsz description after appbufsz as per struct fields order
op [Mon, 30 May 2022 10:31:59 +0000 (10:31 +0000)]
move bufsz description after appbufsz as per struct fields order

ok ratchov@

2 years agomake a first pass at providing kstats from the hardware counters.
dlg [Mon, 30 May 2022 10:30:33 +0000 (10:30 +0000)]
make a first pass at providing kstats from the hardware counters.

mvneta counters are read to clear, so we accumulate them over time.
they are also mostly 32bit, except for 2 of them, so this handles
all the 32bit counters in a loop and deals with the 64bit ones as
exceptions.

i can see rx drops now, but not the rx rx counters yet. i'll figure
it out.

this is mostly inspired by em(4).

2 years agotell the compiler about the tx/rx desc alignment.
dlg [Mon, 30 May 2022 09:37:46 +0000 (09:37 +0000)]
tell the compiler about the tx/rx desc alignment.

this leads to better (and shorter) code.

ok patrick@

2 years agotweak the display a bit: have "hashing/tieing" be progress messages
espie [Mon, 30 May 2022 09:30:40 +0000 (09:30 +0000)]
tweak the display a bit: have "hashing/tieing" be progress messages
(they probably won't mean a lot to most users but then they only
appear fleetingly apart from stuff like texlive)

2 years agopwr_action isn't used in this file, zap pointless decl.
jca [Sun, 29 May 2022 22:03:44 +0000 (22:03 +0000)]
pwr_action isn't used in this file, zap pointless decl.

2 years agoDevice tree bindings for this device are official now.
kettenis [Sun, 29 May 2022 16:19:08 +0000 (16:19 +0000)]
Device tree bindings for this device are official now.

2 years agoMore precision regarding a few minor points:
schwarze [Sun, 29 May 2022 12:46:28 +0000 (12:46 +0000)]
More precision regarding a few minor points:
* Say what happens when no pkg-name is given.
* Say "show the names and one-line comments" rather than just "information".
* Say which options cannot be combined with pkg-name arguments.
* Say which options are already the default in some circumstances.
OK espie@

2 years agodocument the meaning of the -Q option argument;
schwarze [Sun, 29 May 2022 10:58:03 +0000 (10:58 +0000)]
document the meaning of the -Q option argument;
OK espie@

2 years agofinal part of caching for always-update: the new annotation doesn't need
espie [Sun, 29 May 2022 10:48:41 +0000 (10:48 +0000)]
final part of caching for always-update: the new annotation doesn't need
any specific handling.

2 years agoEOF does not result in an error code, as spotted by stsp@
espie [Sat, 28 May 2022 23:20:28 +0000 (23:20 +0000)]
EOF does not result in an error code, as spotted by stsp@

2 years agoSince 'sa' can be freed inside the loop, RB_FOREACH_SAFE is required.
gerhard [Sat, 28 May 2022 18:51:16 +0000 (18:51 +0000)]
Since 'sa' can be freed inside the loop, RB_FOREACH_SAFE is required.

ok tobhe@

2 years ago*** empty log message ***
mbuhl [Sat, 28 May 2022 18:39:39 +0000 (18:39 +0000)]
*** empty log message ***

2 years agorework the power status changes text;
jmc [Sat, 28 May 2022 16:07:54 +0000 (16:07 +0000)]
rework the power status changes text;
original diff from jan stary, adjusted according to sthen

2 years agohave pkg_create generate the hash for always-update
espie [Sat, 28 May 2022 07:46:27 +0000 (07:46 +0000)]
have pkg_create generate the hash for always-update

2 years agokeywords ref ssh_config.5;
jmc [Sat, 28 May 2022 05:57:56 +0000 (05:57 +0000)]
keywords ref ssh_config.5;
from caspar schutijser

2 years agooops, wrong value in previous commit
deraadt [Sat, 28 May 2022 03:47:43 +0000 (03:47 +0000)]
oops, wrong value in previous commit

2 years ago64K of locked memory should be enough for anyone (until we hear a good
deraadt [Sat, 28 May 2022 03:21:17 +0000 (03:21 +0000)]
64K of locked memory should be enough for anyone (until we hear a good
reason why)
discussed with many, ok millert

2 years agoclear cur_membag so that pcap can be used more than once
deraadt [Sat, 28 May 2022 03:20:33 +0000 (03:20 +0000)]
clear cur_membag so that pcap can be used more than once

2 years agoDo not walk off the end of the array performing frees
deraadt [Sat, 28 May 2022 03:20:14 +0000 (03:20 +0000)]
Do not walk off the end of the array performing frees
crash found by daharmasterkor

2 years agoConvert KVA allocation to km_alloc(9).
kettenis [Fri, 27 May 2022 18:55:30 +0000 (18:55 +0000)]
Convert KVA allocation to km_alloc(9).

ok deraadt@, mpi@

2 years agorework the text on mtu and mss, according to some notes from sthen;
jmc [Fri, 27 May 2022 15:45:02 +0000 (15:45 +0000)]
rework the text on mtu and mss, according to some notes from sthen;
ok sthen

2 years agoNormalise markup.
ajacoutot [Fri, 27 May 2022 12:27:39 +0000 (12:27 +0000)]
Normalise markup.

from Raf Czlonka

2 years agoCall uvm_vnp_uncache() before VOP_RENAME().
mpi [Fri, 27 May 2022 11:10:54 +0000 (11:10 +0000)]
Call uvm_vnp_uncache() before VOP_RENAME().

ok kettenis@

2 years agosplit the low-level file handling functions out from auth2-pubkey.c
djm [Fri, 27 May 2022 05:02:46 +0000 (05:02 +0000)]
split the low-level file handling functions out from auth2-pubkey.c

Put them in a new auth2-pubkeyfile.c to make it easier to refer to them
(e.g. in unit/fuzz tests) without having to refer to everything else
pubkey auth brings in.

ok dtucker@

2 years agorefactor authorized_keys/principals handling
djm [Fri, 27 May 2022 05:01:25 +0000 (05:01 +0000)]
refactor authorized_keys/principals handling

remove "struct ssh *" from arguments - this was only used to pass the
remote host/address. These can be passed in instead and the resulting
code is less tightly coupled to ssh_api.[ch]

ok dtucker@

2 years agof sshpkt functions fail, then password is not cleared with freezero.
dtucker [Fri, 27 May 2022 04:29:40 +0000 (04:29 +0000)]
f sshpkt functions fail, then password is not cleared with freezero.
Unconditionally call freezero to guarantee that password is removed
from RAM.

From tobias@ and c3h2_ctf via github PR#286, ok djm@

2 years agoAvoid kill with -1 argument.
dtucker [Fri, 27 May 2022 04:27:49 +0000 (04:27 +0000)]
Avoid kill with -1 argument.
The out_ctx label can be reached before fork has been called. If this
happens, then kill -1 would be called, sending SIGTERM to all processes
reachable by the current process.

From tobias@ and c3h2_ctf via github PR#286, ok djm@

2 years agoNote that ProxyJump also accepts the same tokens as ProxyCommand.
dtucker [Fri, 27 May 2022 04:13:24 +0000 (04:13 +0000)]
Note that ProxyJump also accepts the same tokens as ProxyCommand.
From pallxk via github PR#305.

2 years agoAdjust compatible string to match what has been submitted to mainline Linux.
kettenis [Thu, 26 May 2022 23:32:18 +0000 (23:32 +0000)]
Adjust compatible string to match what has been submitted to mainline Linux.
Keep supporting the old compatible string for a bit longer.
Add frequency sensors that reflect the actual frequencies the CPU clusters
are running at as reported by the hardware.

ok patrick@

2 years agoI'm a doofus, of course I need to use "write_without_variation" for that
espie [Thu, 26 May 2022 21:08:52 +0000 (21:08 +0000)]
I'm a doofus, of course I need to use "write_without_variation" for that

2 years agorecognise Cortex-X1C
jsg [Thu, 26 May 2022 13:54:38 +0000 (13:54 +0000)]
recognise Cortex-X1C

2 years agoIntroduce a new daemon_execdir variable for changing to a specified directory
ajacoutot [Thu, 26 May 2022 11:27:03 +0000 (11:27 +0000)]
Introduce a new daemon_execdir variable for changing to a specified directory
before running rc_rcexec.

Based on an proposal from openbsd.tech at aisha.cc
ok robert@ abieber@

2 years agofirst step in simplifying the always-update case:
espie [Thu, 26 May 2022 06:53:38 +0000 (06:53 +0000)]
first step in simplifying the always-update case:
tweak @option always-update to allow parsing
@option always-update <hash_value_for_the_whole_plist>

once this is safely in snapshots, we can generate it
directly within PkgCreate.pm, compare it directly in
Signature.pm and get rid of the whole special case
of having to keep the whole plist around