OpenBSD/src ySx82Fyusr.sbin/ntpd constraint.c

   ntpd: use the usual error check for timegm(3).

   Straightforward change. The code could use some refactoring to avoid two
   consecutive timegm(3) calls on tm_tls. The layering is a bit strange here.

   ok deraadt henning job
VersionDeltaFile
1.61+9-3usr.sbin/ntpd/constraint.c
+9-31 files

OpenBSD/src 8e07e1busr.bin/tmux screen-write.c

   Do not try to use pane if there isn't one when redrawing wide characters,
   GitHub issues 5145 and 5139.
VersionDeltaFile
1.262+2-2usr.bin/tmux/screen-write.c
+2-21 files

OpenBSD/src ElMdbjsusr.sbin/httpd server_http.c httpd.conf.5

   Fix uploads using chunked transfer-encoding

   The current code is broken so rework server_read_httpchunks() to properly
   implement chunked transfer-encoding. Chunked uploads only matter for
   fastcgi handlers, so adjust them to operate with chunked uploads.

   The problem is that the CGI spec mandates that CONTENT_LENGTH is set
   but for chunked transfers the content-length header is actually not
   allowed. Both fastcgi and cgi don't really need CONTENT_LENGTH since the
   data is passed via FCGI_STDIN messages or a pipe and in both cases EOF
   can be signaled just fine. Still some cgi/fastcgi handlers depend on the
   presence of CONTENT_LENGTH and so those fail to process such chunked
   uploads. For this reason add a config option to opt-in for chunked
   uploads but by default any upload with transfer-encoding chunked will
   result in a HTTP 400 error.

   OK kirill@ rsadowski@
VersionDeltaFile
1.163+35-40usr.sbin/httpd/server_http.c
1.131+11-2usr.sbin/httpd/httpd.conf.5
1.135+11-1usr.sbin/httpd/parse.y
1.101+6-6usr.sbin/httpd/server_fcgi.c
1.173+5-3usr.sbin/httpd/httpd.h
+68-525 files

OpenBSD/src 86rRUSlusr.bin/tmux cmd-run-shell.c tmux.1

   Allow run-shell arguments after a shell command to be expanded as #1, #2
   and so on. From Rasmus Thystrup Karstensen in GitHub issue 5121.
VersionDeltaFile
1.91+15-6usr.bin/tmux/cmd-run-shell.c
1.1059+17-3usr.bin/tmux/tmux.1
1.368+9-2usr.bin/tmux/format.c
+41-113 files

OpenBSD/src 7MAH8Mmusr.bin/ssh session.c

   differentiate between execution failures and subsystem not found when
   logging why a subsystem failed to start; GHPR#637 from cuiweixie
VersionDeltaFile
1.349+27-24usr.bin/ssh/session.c
+27-241 files

OpenBSD/src k6zoAgeusr.bin/ssh sk-usbhid.c

   sk-usbhid: skip unsupported key types in read_rks()

   When enumerating resident keys, encountering a credential with an
   unsupported COSE key type (not ES256 or EdDSA) caused the entire
   enumeration to abort via goto out, discarding all valid keys.

   Move the key type check before the per-credential allocation so
   unsupported types can be skipped with continue instead. This
   preserves all valid resident keys on the token.

   Patch from Akhilesh Arora via GHPR657
VersionDeltaFile
1.49+17-14usr.bin/ssh/sk-usbhid.c
+17-141 files

OpenBSD/src rQVnAYpusr.bin/ssh channels.c

   Actually set pollfd.events correctly for socket type channels;
   previously we were throwing away the events we computed if the
   channel had a c->sock distinct from it's other read and write
   fds. Fortunately, it appears that this case happens rarely, if
   ever.

   Reported by Darafei Praliaskouski via GHPR660
VersionDeltaFile
1.461+2-2usr.bin/ssh/channels.c
+2-21 files

OpenBSD/src DLwaDV6usr.bin/tmux cmd-display-panes.c

   Only draw visible parts of numbers for display-panes.
VersionDeltaFile
1.48+44-15usr.bin/tmux/cmd-display-panes.c
+44-151 files

OpenBSD/src wdDe1wnusr.bin/tmux screen-redraw.c

   When pane-border-indicators is set to "both" or "arrows", only draw
   arrows on the active floating pane and no other floating panes. Also
   there is no need to loop in screen_redraw_cell_border if only checking
   one pane.
VersionDeltaFile
1.128+62-49usr.bin/tmux/screen-redraw.c
+62-491 files

OpenBSD/src fgkxFx9usr.bin/tmux window.c

   Move back to starting position when pane is outside the window at all.
VersionDeltaFile
1.325+12-4usr.bin/tmux/window.c
+12-41 files

OpenBSD/src 0wRh2sMusr.sbin/vmd virtio.c

   Fix vmd(8) emulation for Linux guests.

   The memory safety checks introduced in previous commit were too
   strict and broke Linux guests running on top of vmd.  Adapt the
   checks to the variation of virtio 1.x that vmd implements.
   virtio 1.x doesn't need page alignment.  The used area offset needs
   to just be 4 byte aligned for some sanity, but not really critical.
   The descriptor table, available area, and used areas must be in
   guest memory ranges and not spill out allowing guest access to host
   memory by using hvaddr_mem() to check.

   from dv@; OK mlarkin@; tested by jmatthew@ and Remi Bougard
VersionDeltaFile
1.140+22-8usr.sbin/vmd/virtio.c
+22-81 files

OpenBSD/src bvupeSClib/libc/time ctime.3

   ctime.3: remove warning about tm_zone and tm_gmtoff

   These are standardized in posix 2024 via Austin Group Defect 1533. So they
   won't go away or change anytime soon.

   ok job millert
VersionDeltaFile
1.54+4-8lib/libc/time/ctime.3
+4-81 files

OpenBSD/src K4RQNcWlib/libssl ssl_srvr.c ssl_clnt.c

   Clean up signature algorithm handling.

   Now that we no longer support TLSv1.0 and TLSv1.1, SSL_USE_SIGALGS()
   is always true - remove all of the code that handles the non-sigalgs
   path, along with SSL_USE_SIGALGS() and the related flags.

   Also remove SIGALG_RSA_PKCS1_MD5_SHA1 and references to it, since this
   is also now unused.

   ok kenjiro@ tb@
VersionDeltaFile
1.169+38-110lib/libssl/ssl_srvr.c
1.172+23-117lib/libssl/ssl_clnt.c
1.54+1-18lib/libssl/ssl_sigalgs.c
1.39+3-12lib/libssl/ssl_local.h
1.28+1-4lib/libssl/ssl_sigalgs.h
+66-2615 files

OpenBSD/src ACYinRasys/dev/ic qwx.c

   in the qwx newstate task, only attempt to reset the device if RUNNING

   If we are not RUNNING then we are being called from qwx_stop(), and any
   error recovery the init task would try to perform would at best be
   pointless and might even cause problems.
VersionDeltaFile
1.124+3-2sys/dev/ic/qwx.c
+3-21 files

OpenBSD/src cg79SBCsys/dev/ic qwx.c

   do not schedule a qwx_newstate task if the interface is not RUNNING
VersionDeltaFile
1.123+3-2sys/dev/ic/qwx.c
+3-21 files

OpenBSD/src zNWNXyAsys/dev/ic qwx.c

   do not set IFF_RUNNING if qwx_init() fails to start the MAC
VersionDeltaFile
1.122+2-2sys/dev/ic/qwx.c
+2-21 files

OpenBSD/src P0bBfyAsys/dev/ic qwx.c qwxvar.h

   Implement qwx_dp_rx_h_null_q_desc()

   test + ok kevlo@
VersionDeltaFile
1.121+125-45sys/dev/ic/qwx.c
1.36+2-6sys/dev/ic/qwxvar.h
+127-512 files

OpenBSD/src 6Aw156ysys/dev/ic qwx.c

   Fix use of wrong tailq pointers in qwx.

   Fortunately, this was a non-issue on devices with single radios and
   there are no multi-radio devices known to us so far.

   With help from kevlo@ who spotted a case I had missed.
VersionDeltaFile
1.120+6-6sys/dev/ic/qwx.c
+6-61 files

OpenBSD/src EcW1huIusr.bin/ssh servconf.c servconf.h

   handle compiled-time unsupported options in servconf.h better; leave
   a zero placeholder variable so we don't have #ifdef around their
   absence elsehwere in the tree
VersionDeltaFile
1.448+67-19usr.bin/ssh/servconf.c
1.178+36-33usr.bin/ssh/servconf.h
+103-522 files

OpenBSD/src AJC1uylusr.sbin/relayd parse.y

   Add missing OCSP token

   Spotted and OK kirill
VersionDeltaFile
1.265+5-5usr.sbin/relayd/parse.y
+5-51 files

OpenBSD/src X0y5fNmregress/usr.bin/ssh/unittests Makefile, regress/usr.bin/ssh/unittests/servconf tests.c Makefile

   unit test for new servconf.[ch] code, including a basic fuzz
   test for deserialisation
VersionDeltaFile
1.1+362-0regress/usr.bin/ssh/unittests/servconf/tests.c
1.1+25-0regress/usr.bin/ssh/unittests/servconf/Makefile
1.14+2-2regress/usr.bin/ssh/unittests/Makefile
+389-23 files

OpenBSD/src QeN1DFPregress/usr.bin/ssh addrmatch.sh cfgmatch.sh

   the new configuration dump code emits configuration directives with
   capitalisation (previously they were all lowercase), so make the tests
   that consume them insensitive to case
VersionDeltaFile
1.7+2-2regress/usr.bin/ssh/addrmatch.sh
1.18+2-2regress/usr.bin/ssh/cfgmatch.sh
+4-42 files

OpenBSD/src X3P20Rbusr.bin/ssh servconf.c servconf.h

   big refactor of sshd config management code.

   This generates much of the initialisation, defaults and keyword table
   code from a set of macros rather than hand coding them. These same
   macros are also used to generate serialisation and deserialisation
   code.

   The macros are admittedly ugly but have the advantage of forcing a
   good degree of consistency across places that need to stay in sync
   with each other.

   The new de/serialisation code is used to pass configurations across
   the various sshd-* process boundaries. This removes the need to pass
   around raw text configurations that need to be re-parsed as well as
   eliminating some raw pointer leakage across the processes where
   structures were previously clumsily serialised.

   feedback/ok markus@
VersionDeltaFile
1.447+1,392-492usr.bin/ssh/servconf.c
1.177+267-182usr.bin/ssh/servconf.h
1.147+16-68usr.bin/ssh/monitor_wrap.c
1.256+16-42usr.bin/ssh/monitor.c
1.15+14-43usr.bin/ssh/sshd-auth.c
1.55+3-3usr.bin/ssh/monitor_wrap.h
+1,708-8306 files

OpenBSD/src cnrawoCusr.sbin/slowcgi slowcgi.c

   Don't fail hard on version mismatch and ignore extra end-of-params messages.

   Replace the lerrx on version mismatch with a lwarnx and error return.
   Switch to ssize_t return for that so that slowcgi_request() can properly
   fail when this happens.

   Also do not execute multiple commands when extra end-of-params messages
   are received. Once a command is executed fail to start a 2nd one.

   Same diff as bgplgd rev. 1.9
   Reported by Frank Denis
   OK florian@ tb@
VersionDeltaFile
1.65+14-7usr.sbin/slowcgi/slowcgi.c
+14-71 files

OpenBSD/src cYqx8ZJusr.bin/ssh channels.c

   avoid strlen(NULL) crash if an X11 channel was created before the
   x11-req SSH_MSG_CHANNEL_REQUEST was sent. Reported by Ben Perry via
   GHPR679
VersionDeltaFile
1.460+6-1usr.bin/ssh/channels.c
+6-11 files

OpenBSD/src LtsVaucusr.bin/ssh ssh.c

   DNS0x20[1] can randomise the case of domain names returned by lookup
   to force some more uniqueness in queries to reduce the likelihood
   of spoofing attacks succeeding.

   Normally this should be hidden from the user by the resolver, but
   in some cases it can leak through. When it does, it can mess up
   ssh's CanonicalizePermittedCNAMEs.

   Fix this by forcing the name we received from the system resolver to
   lowercase.

   bz3966, report and fix by Martin D Kealey

   [1] https://datatracker.ietf.org/doc/html/draft-vixie-dnsext-dns0x20-00
VersionDeltaFile
1.632+2-1usr.bin/ssh/ssh.c
+2-11 files

OpenBSD/src QYwYpvbusr.bin/ssh sftp-server.c

   disallow use of the copy-data extension to read and write to
   the same inode simultaneously; reported by Qifan Zhang of Palo
   Alto Networks; ok markus@
VersionDeltaFile
1.154+23-4usr.bin/ssh/sftp-server.c
+23-41 files

OpenBSD/src S00iz5Musr.bin/ssh sftp.c

   Fix two separate one-byte out-of-cound reads

   1) if a server sent an empty reply to a SSH2_FXP_REALPATH request
   2) if a batch command used the full 2048 byte buffer but ended in a
      literal backslash character

   Both reported by Zhenpeng (Leo) Lin from depthfirst

   ok markus@
VersionDeltaFile
1.251+5-3usr.bin/ssh/sftp.c
+5-31 files

OpenBSD/src iqoIWsDusr.bin/ssh serverloop.c

   DisableForwarding=yes didn't override PermitTunnel=yes

   Reported independently by Huzaifa Sidhpurwala of Redhat and Marko
   Jevtic; ok markus@
VersionDeltaFile
1.247+2-2usr.bin/ssh/serverloop.c
+2-21 files

OpenBSD/src zHIUyZEusr.bin/ssh kex.c packet.c

   make the transport protocol stricter by disconnecting if the peer
   sends non-KEX messages during a key re-exchange.

   Previously an evil peer could continue sending non-KEX messages
   without penalty, causing memory to be wasted up until the
   connection terminated or the server/client hit a OOM limit.

   reported by Marko Jevtic; ok markus@
VersionDeltaFile
1.194+7-2usr.bin/ssh/kex.c
1.338+8-1usr.bin/ssh/packet.c
1.130+2-1usr.bin/ssh/kex.h
+17-43 files