summaryrefslogtreecommitdiff
path: root/usr.bin
AgeCommit message (Collapse)Author
2024-01-16Use imsg_get_fd() instead of direct access to imsg.fdClaudio Jeker
The change in proc.c can be further simplified once imsg_free() takes care of unclaimed file descriptors. OK nicm@
2024-01-16Use imsg_get_fd() and adjust cleanup code accordingly.Claudio Jeker
OK nicm@
2024-01-12Add -force_pubkey -multivalue-rdn -set_issuer -set_subject -utf8 to x509 appJob Snijders
The -set_issuer, -set_subject, and -force_pubkey features can be used to 'rechain' PKIs, for more information see https://labs.apnic.net/nro-ta/ and https://blog.apnic.net/2023/12/14/models-of-trust-for-the-rpki/ OK tb@
2024-01-11ensure key_fd is filled when DSA is disabled; spotted by tb@Damien Miller
2024-01-11make DSA key support compile-time optional, defaulting to onDamien Miller
ok markus@
2024-01-10fix incorrect capitalisation;Jason McIntyre
2024-01-09add a "global" ChannelTimeout type to ssh(1) and sshd(8) that watchesDamien Miller
all open channels and will close all open channels if there is no traffic on any of them for the specified interval. This is in addition to the existing per-channel timeouts added a few releases ago. This supports use-cases like having a session + x11 forwarding channel open where one may be idle for an extended period but the other is actively used. The global timeout would allow closing both channels when both have been idle for too long. ok dtucker@
2024-01-09adapt ssh_api.c code for kex-strictDamien Miller
from markus@ ok me
2024-01-08Remove outdated note from PROTOCOL.muxDamien Miller
Port forward close by control master is already implemented by `mux_master_process_close_fwd` in `mux.c` GHPR442 from bigb4ng
2024-01-08fix missing field in users-groups-by-id@openssh.com reply documentationDamien Miller
GHPR441 from TJ Saunders
2024-01-08make kex-strict section more explicit about its intent: banning allDamien Miller
messages not strictly required in KEX
2024-01-08remove ext-info-* in the kex.c code, not in callers; with/ok markus@Damien Miller
2024-01-08fix typo; spotted by Albert ChinDamien Miller
2024-01-06Ergaenzung der fehlenden Jahreszahlen;Ingo Schwarze
Flicken von Lennart Jablonka <humm bei ljabl Punkt com>
2024-01-04Import regenerated moduli.Darren Tucker
2023-12-29Garbage collect the last users of SSL_set_debug(3)Theo Buehler
This undocumented, incomplete public function has never done anything useful. It will be removed from libssl. Removing it from openssl(1) clears the way for this. ok jsing
2023-12-29s_client: pause hasn't worked in ages. Just ignore itTheo Buehler
ok jsing
2023-12-27Only wrap pattern in *s if using a regular expression.Nicholas Marriott
2023-12-27Remove flags from the prefix before comparing with the received key soNicholas Marriott
that modifier keys with flags work correctly, GitHub issue 3764.
2023-12-27groff apparently generates broken output for some common characters inNicholas Marriott
mdoc, so escaped versions have to be used instead. From Alexis Hildebrandt in GitHub issue 3762.
2023-12-27Always initialize screen mode, GitHub issue 3750 from Ding Fei.Nicholas Marriott
2023-12-27Correctly handle window ops with no pane, GitHub issue 3747.Nicholas Marriott
2023-12-27Fix handling of skipped elements on the very first element transmitted.Claudio Jeker
rsync compares e.g. the first mtime against 0, if the mtime is the epoch then rsync will skip this field and openrsync will choke when receiving it. So if there is no first element but a FLIST_XYZ_SAME flag is use 0 as value. Problem noticed by job@ OK tb@ job@ and yoda@ for fixing the if statements
2023-12-23Relax -C pledge to unbreak shelling out in interactive modeKlemens Nanni
r1.69 introduced -C in 2008 "to continue multiple transfers"; 'ftp -C ftp://ftp.eu.openbsd.org/' lands in "ftp> " and turns "mget" into "reget" by default. r1.139 -C/resume without "proc exec" thusly was too strict. Instead, now after recent cleanups/tweaks, prevent execution with -o. OK millert
2023-12-23Suppress a spurious empty arg at EOF w/ "find -0" caused by the last commit.Todd C. Miller
2023-12-22xargs: fix parsing of empty fields when "xargs -0" is used.Todd C. Miller
Previously, these fields would be skipped. From Hiltjo Posthuma.
2023-12-21Tweak comment, the actual format is "ucom<unit#>:<usb id>"Jeremie Courreges-Anglas
ok krw@
2023-12-20spelling; ok markus@Jonathan Gray
2023-12-19include KTRFAC_PINSYSCALL in the ktrace optionsTheo de Raadt
2023-12-19sort -C, and add to usage(); ok djmJason McIntyre
2023-12-19correct section numbers; from Ed MasteDamien Miller
2023-12-18match flag type (s/int/u_int)Damien Miller
2023-12-18openssh-9.6Damien Miller
2023-12-18ssh-agent: record failed session-bind attemptsDamien Miller
Record failed attempts to session-bind a connection and refuse signing operations on that connection henceforth. Prevents a future situation where we add a new hostkey type that is not recognised by an older ssh-agent, that consequently causes session-bind to fail (this situation is only likely to arise when people mix ssh(1) and ssh-agent(1) of different versions on the same host). Previously, after such a failure the agent socket would be considered unbound and not subject to restriction. Spotted by Jann Horn
2023-12-18ban user/hostnames with most shell metacharactersDamien Miller
This makes ssh(1) refuse user or host names provided on the commandline that contain most shell metacharacters. Some programs that invoke ssh(1) using untrusted data do not filter metacharacters in arguments they supply. This could create interactions with user-specified ProxyCommand and other directives that allow shell injection attacks to occur. It's a mistake to invoke ssh(1) with arbitrary untrusted arguments, but getting this stuff right can be tricky, so this should prevent most obvious ways of creating risky situations. It however is not and cannot be perfect: ssh(1) has no practical way of interpreting what shell quoting rules are in use and how they interact with the user's specified ProxyCommand. To allow configurations that use strange user or hostnames to continue to work, this strictness is applied only to names coming from the commandline. Names specified using User or Hostname directives in ssh_config(5) are not affected. feedback/ok millert@ markus@ dtucker@ deraadt@
2023-12-18stricter handling of channel window limitsDamien Miller
This makes ssh/sshd more strict in handling non-compliant peers that send more data than the advertised channel window allows. Previously the additional data would be silently discarded. This change will cause ssh/sshd to terminate the connection if the channel window is exceeded by more than a small grace allowance. ok markus@
2023-12-18Make it possible to load certs from PKCS#11 tokensDamien Miller
Adds a protocol extension to allow grafting certificates supplied by ssh-add to keys loaded from PKCS#11 tokens in the agent. feedback/ok markus@
2023-12-18apply destination constraints to all p11 keysDamien Miller
Previously applied only to the first key returned from each token. ok markus@
2023-12-18add "ext-info-in-auth@openssh.com" extensionDamien Miller
This adds another transport protocol extension to allow a sshd to send SSH2_MSG_EXT_INFO during user authentication, after the server has learned the username that is being logged in to. This lets sshd to update the acceptable signature algoritms for public key authentication, and allows these to be varied via sshd_config(5) "Match" directives, which are evaluated after the server learns the username being authenticated. Full details in the PROTOCOL file
2023-12-18implement "strict key exchange" in ssh and sshdDamien Miller
This adds a protocol extension to improve the integrity of the SSH transport protocol, particular in and around the initial key exchange (KEX) phase. Full details of the extension are in the PROTOCOL file. with markus@
2023-12-15provide the pieces for ktrace/kdump to observe pinsyscall violations.Theo de Raadt
(not used yet, because the pinsyscall changes are still being worked on) ok kettenis
2023-12-15No interactive shell if -o is givenKlemens Nanni
After r1.140 and r1.144 fixed -o '' and clenaed up option handling, respectively, avoid the "ftp> " shell if any output file was specified. OK millert
2023-12-13when invoking KnownHostsCommand to determine the order of host keyDamien Miller
algorithms to request, ensure that the hostname passed to the command is decorated with the port number for ports other than 22. This matches the behaviour of KnownHostsCommand when invoked to look up the actual host key. bz3643, ok dtucker@
2023-12-12Make -o less special, drop -o '' support, always use last valueKlemens Nanni
ftp(1) says -o is about a single file/URL, but option handling takes the empty string as "reset previous -o value", which makes little sense, is undocumented and counter-intuitively works as if no -o was specified. OK millert
2023-12-12remove support for syscall(2) -- the "indirection system call" becauseTheo de Raadt
it is a dangerous alternative entry point for all system calls, and thus incompatible with the precision system call entry point scheme we are heading towards. This has been a 3-year mission: First perl needed a code-generated wrapper to fake syscall(2) as a giant switch table, then all the ports were cleaned with relatively minor fixes, except for "go". "go" required two fixes -- 1) a framework issue with old library versions, and 2) like perl, a fake syscall(2) wrapper to handle ioctl(2) and sysctl(2) because "syscall(SYS_ioctl" occurs all over the place in the "go" ecosystem because the "go developers" are plan9-loving unix-hating folk who tried to build an ecosystem without allowing "ioctl". ok kettenis, jsing, afresh1, sthen
2023-12-11Report system call pinning violations.Theo de Raadt
2023-12-09Fix wrong call to slot->ops->exit() causing server to abort.Alexandre Ratchov
ok kn@
2023-12-08prevent leak in sshsig_match_principals; ok djm@Markus Friedl
2023-12-06short circuit debug log processing early if we're not going toDamien Miller
log anything. From Kobe Housen
2023-11-30Single file to stdout without "fattr"Klemens Nanni
Regardless of SMALL and other command flags, 'ftp -o - URL [file|URL ...]' only processes the first URL and exists. Only standard output is written to and modifying 'struct stat' properties as per pledge(2) "fattr" don't apply. OK millert