diff --git a/.depend b/.depend
index f1ac246d8d8..dfe28f9b4bf 100644
--- a/.depend
+++ b/.depend
@@ -64,6 +64,8 @@ groupaccess.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-c
gss-genr.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
gss-serv-krb5.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
gss-serv.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
+happyeyeballs-threads.o: log.h ssherr.h
+happyeyeballs.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h happyeyeballs.h sshconnect.h ssh.h misc.h log.h ssherr.h readconf.h
hash.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h crypto_api.h
hmac.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h sshbuf.h digest.h hmac.h
hostfile.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h match.h sshkey.h hostfile.h log.h ssherr.h misc.h pathnames.h digest.h hmac.h sshbuf.h
@@ -86,6 +88,7 @@ logintest.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-com
mac.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h digest.h hmac.h umac.h mac.h misc.h ssherr.h sshbuf.h openbsd-compat/openssl-compat.h
match.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h match.h misc.h
metrics.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h metrics.h binn.h ssherr.h
+misc-agent.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h digest.h log.h ssherr.h misc.h pathnames.h ssh.h xmalloc.h
misc.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h misc.h log.h ssherr.h ssh.h sshbuf.h
moduli.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
monitor.o: chacha.h poly1305.h cipher-aesctr.h rijndael.h kex.h mac.h crypto_api.h dh.h packet.h dispatch.h auth-options.h sshpty.h channels.h session.h sshlogin.h canohost.h log.h ssherr.h misc.h servconf.h monitor.h monitor_wrap.h monitor_fdpass.h compat.h ssh2.h authfd.h match.h sk-api.h srclimit.h
@@ -122,8 +125,8 @@ servconf.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-comp
servconf.o: mac.h crypto_api.h match.h channels.h groupaccess.h canohost.h packet.h dispatch.h hostfile.h auth.h auth-pam.h audit.h loginrec.h myproposal.h digest.h version.h
serverloop.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h packet.h dispatch.h sshbuf.h log.h ssherr.h misc.h servconf.h canohost.h sshpty.h channels.h ssh2.h sshkey.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h
serverloop.o: rijndael.h kex.h mac.h crypto_api.h hostfile.h auth.h auth-pam.h audit.h loginrec.h session.h auth-options.h serverloop.h metrics.h binn.h cipher-switch.h
-session.o: hostfile.h auth.h auth-pam.h audit.h loginrec.h auth-options.h authfd.h pathnames.h log.h misc.h servconf.h sshlogin.h serverloop.h canohost.h session.h kex.h mac.h crypto_api.h monitor_wrap.h sftp.h atomicio.h cipher-switch.h
session.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h sshpty.h packet.h dispatch.h sshbuf.h ssherr.h match.h uidswap.h channels.h sshkey.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h
+session.o: kex.h mac.h crypto_api.h hostfile.h auth.h auth-pam.h audit.h loginrec.h auth-options.h authfd.h pathnames.h log.h misc.h servconf.h sshlogin.h serverloop.h canohost.h session.h monitor_wrap.h sftp.h atomicio.h cipher-switch.h
sftp-client.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h ssherr.h sshbuf.h log.h atomicio.h progressmeter.h misc.h utf8.h sftp.h sftp-common.h sftp-client.h openbsd-compat/glob.h
sftp-common.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h ssherr.h sshbuf.h log.h misc.h sftp.h sftp-common.h
sftp-glob.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h sftp.h sftp-common.h sftp-client.h openbsd-compat/glob.h
@@ -137,24 +140,22 @@ sntrup761.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-com
srclimit.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ./openbsd-compat/sys-tree.h addr.h canohost.h log.h ssherr.h misc.h srclimit.h xmalloc.h servconf.h openbsd-compat/sys-queue.h match.h
ssh-add.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h ssh.h log.h ssherr.h sshkey.h sshbuf.h authfd.h authfile.h pathnames.h misc.h digest.h ssh-sk.h sk-api.h hostfile.h
ssh-agent.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h sshbuf.h sshkey.h authfd.h log.h ssherr.h misc.h digest.h match.h msg.h pathnames.h ssh-pkcs11.h sk-api.h myproposal.h
-ssh-dss.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
ssh-ecdsa-sk.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/openssl-compat.h sshbuf.h ssherr.h digest.h sshkey.h
ssh-ecdsa.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
ssh-ed25519-sk.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h crypto_api.h log.h ssherr.h sshbuf.h sshkey.h ssh.h digest.h
ssh-ed25519.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h crypto_api.h log.h ssherr.h sshbuf.h sshkey.h ssh.h
-ssh-keygen.o: cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h
-ssh-keygen.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h sshkey.h authfile.h sshbuf.h pathnames.h log.h ssherr.h misc.h match.h hostfile.h dns.h ssh.h ssh2.h ssh-pkcs11.h atomicio.h krl.h digest.h utf8.h authfd.h sshsig.h ssh-sk.h sk-api.h cipher.h
+ssh-keygen.o: chacha.h poly1305.h cipher-aesctr.h rijndael.h
+ssh-keygen.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h sshkey.h authfile.h sshbuf.h pathnames.h log.h ssherr.h misc.h match.h hostfile.h dns.h ssh.h ssh2.h atomicio.h krl.h digest.h utf8.h authfd.h sshsig.h ssh-sk.h sk-api.h cipher.h cipher-chachapoly.h
ssh-keyscan.o: dispatch.h log.h ssherr.h atomicio.h misc.h hostfile.h ssh_api.h ssh2.h dns.h addr.h
ssh-keyscan.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h ssh.h sshbuf.h sshkey.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h digest.h kex.h mac.h crypto_api.h compat.h myproposal.h packet.h
ssh-keysign.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h log.h ssherr.h sshkey.h ssh.h ssh2.h misc.h sshbuf.h authfile.h msg.h canohost.h pathnames.h readconf.h uidswap.h
-ssh-pkcs11-client.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-ssh-pkcs11-helper.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h sshbuf.h log.h ssherr.h misc.h sshkey.h authfd.h ssh-pkcs11.h
-ssh-pkcs11.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h log.h ssherr.h sshkey.h
+ssh-pkcs11-client.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h pathnames.h xmalloc.h sshbuf.h log.h ssherr.h misc.h sshkey.h authfd.h atomicio.h ssh-pkcs11.h
+ssh-pkcs11-helper.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h sshbuf.h log.h ssherr.h misc.h sshkey.h authfd.h ssh-pkcs11.h
+ssh-pkcs11.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h log.h ssherr.h sshkey.h ssh-pkcs11.h
ssh-rsa.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
ssh-sk-client.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h log.h ssherr.h sshbuf.h sshkey.h msg.h digest.h pathnames.h ssh-sk.h misc.h
-ssh-sk-helper.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h log.h ssherr.h sshkey.h authfd.h misc.h sshbuf.h msg.h uidswap.h ssh-sk.h
+ssh-sk-helper.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h log.h ssherr.h sshkey.h authfd.h misc.h sshbuf.h msg.h uidswap.h ssh-sk.h ssh-pkcs11.h
ssh-sk.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-ssh-xmss.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
ssh.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/openssl-compat.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h canohost.h compat.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h packet.h dispatch.h sshbuf.h channels.h
ssh.o: sshkey.h authfd.h authfile.h pathnames.h clientloop.h log.h ssherr.h misc.h readconf.h sshconnect.h kex.h mac.h crypto_api.h sshpty.h match.h msg.h version.h myproposal.h utf8.h cipher-switch.h
ssh_api.o: authfile.h dh.h misc.h version.h myproposal.h sshbuf.h openbsd-compat/openssl-compat.h
@@ -164,7 +165,7 @@ sshbuf-getput-crypto.o: includes.h config.h defines.h platform.h openbsd-compat/
sshbuf-io.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ssherr.h sshbuf.h atomicio.h
sshbuf-misc.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ssherr.h sshbuf.h
sshbuf.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ssherr.h sshbuf.h misc.h
-sshconnect.o: authfd.h kex.h mac.h crypto_api.h
+sshconnect.o: authfd.h kex.h mac.h crypto_api.h happyeyeballs.h
sshconnect.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h hostfile.h ssh.h sshbuf.h packet.h openbsd-compat/sys-queue.h dispatch.h sshkey.h sshconnect.h log.h ssherr.h match.h misc.h readconf.h atomicio.h dns.h monitor_fdpass.h ssh2.h version.h authfile.h
sshconnect2.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h sshbuf.h packet.h dispatch.h compat.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h sshkey.h kex.h mac.h crypto_api.h
sshconnect2.o: sshconnect.h authfile.h dh.h authfd.h log.h ssherr.h misc.h readconf.h match.h canohost.h msg.h pathnames.h uidswap.h hostfile.h utf8.h ssh-sk.h sk-api.h cipher-switch.h
@@ -172,11 +173,11 @@ sshd-auth.o: chacha.h poly1305.h cipher-aesctr.h rijndael.h digest.h sshkey.h ke
sshd-auth.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ./openbsd-compat/sys-tree.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h sshpty.h packet.h dispatch.h log.h ssherr.h sshbuf.h misc.h match.h servconf.h uidswap.h compat.h cipher.h cipher-chachapoly.h
sshd-session.o: chacha.h poly1305.h cipher-aesctr.h rijndael.h digest.h sshkey.h kex.h mac.h crypto_api.h authfile.h pathnames.h atomicio.h canohost.h hostfile.h auth.h auth-pam.h audit.h loginrec.h authfd.h msg.h channels.h session.h monitor.h monitor_wrap.h auth-options.h version.h sk-api.h srclimit.h dh.h
sshd-session.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ./openbsd-compat/sys-tree.h openbsd-compat/sys-queue.h xmalloc.h ssh.h ssh2.h sshpty.h packet.h dispatch.h log.h ssherr.h sshbuf.h misc.h match.h servconf.h uidswap.h compat.h cipher.h cipher-chachapoly.h
-sshd.o: audit.h loginrec.h authfd.h msg.h version.h sk-api.h addr.h srclimit.h atomicio.h
+sshd.o: audit.h loginrec.h authfd.h msg.h version.h sk-api.h addr.h srclimit.h atomicio.h monitor_wrap.h
sshd.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h ./openbsd-compat/sys-tree.h openbsd-compat/sys-queue.h xmalloc.h ssh.h sshpty.h log.h ssherr.h sshbuf.h misc.h servconf.h compat.h digest.h sshkey.h authfile.h pathnames.h canohost.h hostfile.h auth.h auth-pam.h
ssherr.o: ssherr.h
sshkey-xmss.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-sshkey.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h crypto_api.h ssh2.h ssherr.h misc.h sshbuf.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h digest.h sshkey.h match.h ssh-sk.h openbsd-compat/openssl-compat.h
+sshkey.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h crypto_api.h ssh2.h ssherr.h misc.h sshbuf.h cipher.h cipher-chachapoly.h chacha.h poly1305.h cipher-aesctr.h rijndael.h digest.h sshkey.h match.h ssh-sk.h ssh-pkcs11.h openbsd-compat/openssl-compat.h
sshlogin.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h sshlogin.h ssherr.h loginrec.h log.h sshbuf.h misc.h servconf.h openbsd-compat/sys-queue.h
sshpty.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h sshpty.h log.h ssherr.h misc.h
sshsig.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h authfd.h authfile.h log.h ssherr.h misc.h sshbuf.h sshsig.h sshkey.h match.h digest.h
@@ -187,8 +188,3 @@ umac.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h
umac128.o: umac.c includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h umac.h misc.h rijndael.h
utf8.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h utf8.h
xmalloc.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h xmalloc.h log.h ssherr.h
-xmss_commons.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-xmss_fast.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-xmss_hash.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-xmss_hash_address.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
-xmss_wots.o: includes.h config.h defines.h platform.h openbsd-compat/openbsd-compat.h openbsd-compat/base64.h openbsd-compat/sigact.h openbsd-compat/readpassphrase.h openbsd-compat/vis.h openbsd-compat/getrrsetbyname.h openbsd-compat/sha1.h openbsd-compat/sha2.h openbsd-compat/md5.h openbsd-compat/blf.h openbsd-compat/fnmatch.h openbsd-compat/getopt.h openbsd-compat/bsd-signal.h openbsd-compat/bsd-misc.h openbsd-compat/bsd-setres_id.h openbsd-compat/bsd-statvfs.h openbsd-compat/bsd-waitpid.h openbsd-compat/bsd-poll.h openbsd-compat/fake-rfc2553.h openbsd-compat/bsd-cygwin_util.h openbsd-compat/port-aix.h openbsd-compat/port-irix.h openbsd-compat/port-linux.h openbsd-compat/port-solaris.h openbsd-compat/port-net.h openbsd-compat/port-uw.h openbsd-compat/bsd-nextstep.h entropy.h
diff --git a/.github/ci-status.md b/.github/ci-status.md
new file mode 100644
index 00000000000..82ea40a840b
--- /dev/null
+++ b/.github/ci-status.md
@@ -0,0 +1,22 @@
+master :
+[](../../../actions/workflows/c-cpp.yml?query=branch:master)
+[](../../../actions/workflows/vm.yml?query=branch:master)
+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:master)
+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/upstream.yml?query=branch:master)
+[](../../../actions/workflows/cifuzz.yml)
+[](https://issues.oss-fuzz.com/issues?q="Project:+openssh"+is:open)
+[](https://scan.coverity.com/projects/openssh-portable)
+
+
+10.1 :
+[](../../../actions/workflows/c-cpp.yml?query=branch:V_10_1)
+[](../../../actions/workflows/vm.yml?query=branch:V_10_1)
+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_10_1)
+
+10.0 :
+[](../../../actions/workflows/c-cpp.yml?query=branch:V_10_0)
+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_10_0)
+
+9.9 :
+[](../../../actions/workflows/c-cpp.yml?query=branch:V_9_9)
+[](https://github.com/openssh/openssh-portable-selfhosted/actions/workflows/selfhosted.yml?query=branch:V_9_9)
diff --git a/.github/install_libcrypto.sh b/.github/install_libcrypto.sh
new file mode 100755
index 00000000000..d1aa2345067
--- /dev/null
+++ b/.github/install_libcrypto.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+#
+# Install specified libcrypto.
+# -a : install version for ABI compatibility test.
+# -n : dry run, don't actually build and install.
+#
+# Usage: $0 [-a] [-n] openssl-$branch/tag destdir [config options]
+
+set -e
+
+bincompat_test=""
+dryrun=""
+while [ "$1" = "-a" ] || [ "$1" = "-n" ]; do
+ if [ "$1" = "-a" ]; then
+ abi_compat_test=y
+ elif [ "$1" = "-n" ]; then
+ dryrun="echo dryrun:"
+ fi
+ shift
+done
+
+ver="$1"
+destdir="$2"
+opts="$3"
+
+if [ -z "${ver}" ] || [ -z "${destdir}" ]; then
+ echo tag/branch and destdir required
+ exit 1
+fi
+
+set -x
+
+if [ ! -d ${HOME}/openssl ]; then
+ cd ${HOME}
+ git clone https://github.com/openssl/openssl.git
+ cd ${HOME}/openssl
+ git fetch --all
+fi
+cd ${HOME}/openssl
+
+if [ "${abi_compat_test}" = "y" ]; then
+ echo selecting ABI test release/branch for ${ver}
+ case "${ver}" in
+ openssl-3.6)
+ ver=openssl-3.0.0
+ echo "selecting older release ${ver}"
+ ;;
+ openssl-3.[012345])
+ major=$(echo ${ver} | cut -f1 -d.)
+ minor=$(echo ${ver} | cut -f2 -d.)
+ ver="${major}.$((${minor} + 1))"
+ echo selecting next release branch ${ver}
+ ;;
+ openssl-3.*.*)
+ major=$(echo ${ver} | cut -f1 -d.)
+ minor=$(echo ${ver} | cut -f2 -d.)
+ patch=$(echo ${ver} | cut -f3 -d.)
+ ver="${major}.${minor}.$((${patch} + 1))"
+ echo checking for release tag ${ver}
+ if git tag | grep -q "^${ver}\$"; then
+ echo selected next patch release ${ver}
+ else
+ ver="${major}.${minor}"
+ echo not found, selecting release branch ${ver}
+ fi
+ ;;
+ esac
+fi
+
+git checkout ${ver}
+make clean >/dev/null 2>&1 || true
+${dryrun} ./config no-threads shared ${opts} --prefix=${destdir} \
+ -Wl,-rpath,${destdir}/lib64
+${dryrun} make -j4
+${dryrun} sudo make install_sw
diff --git a/.github/install_putty.sh b/.github/install_putty.sh
new file mode 100755
index 00000000000..6d6d0ad49f4
--- /dev/null
+++ b/.github/install_putty.sh
@@ -0,0 +1,37 @@
+#!/bin/sh
+
+ver="$1"
+
+echo
+echo --------------------------------------
+echo Installing PuTTY version ${ver}
+echo --------------------------------------
+
+cd /tmp
+
+case "${ver}" in
+snapshot)
+ tarball=putty.tar.gz
+ url=https://tartarus.org/~simon/putty-snapshots/${tarball}
+ ;;
+*)
+ tarball=putty-${ver}.tar.gz
+ url=https://the.earth.li/~sgtatham/putty/${ver}/${tarball}
+ ;;
+esac
+
+if [ ! -f ${tarball} ]; then
+ wget -q ${url}
+fi
+
+mkdir -p /tmp/puttybuild
+cd /tmp/puttybuild
+
+tar xfz /tmp/${tarball} && cd putty-*
+if [ -f CMakeLists.txt ]; then
+ cmake . && cmake --build . -j4 && sudo cmake --build . --target install
+else
+ ./configure && make -j4 && sudo make install
+fi
+sudo rm -rf /tmp/puttybuild
+/usr/local/bin/plink -V
diff --git a/.github/run_test.sh b/.github/run_test.sh
index 1a02537330e..fef8ca49b5c 100755
--- a/.github/run_test.sh
+++ b/.github/run_test.sh
@@ -13,7 +13,6 @@ if [ ! -z "$SUDO" ] && [ ! -z "$TEST_SSH_HOSTBASED_AUTH" ]; then
hostname | $SUDO tee $sshconf/shosts.equiv >/dev/null
echo "EnableSSHKeysign yes" | $SUDO tee $sshconf/ssh_config >/dev/null
$SUDO mkdir -p $sshconf
- $SUDO cp -p /etc/ssh/ssh_host*key* $sshconf
$SUDO make install
for key in $sshconf/ssh_host*key*.pub; do
echo `hostname` `cat $key` | \
@@ -35,6 +34,17 @@ if [ ! -z "${env}" ]; then
env="env${env}"
fi
+if [ "$1" = "putty-versions" ]; then
+ for ver in 0.71 0.72 0.73 0.74 0.75 0.76 0.77 0.78 0.79 0.80 \
+ 0.81 0.82 0.83 snapshot; do
+ .github/install_putty.sh "${ver}"
+ ${env} make ${TEST_TARGET} \
+ SKIP_LTESTS="${SKIP_LTESTS}" LTESTS="${LTESTS}"
+ done
+
+ exit 0
+fi
+
if [ -z "${LTESTS}" ]; then
${env} make ${TEST_TARGET} SKIP_LTESTS="${SKIP_LTESTS}"
else
diff --git a/.github/setup_ci.sh b/.github/setup_ci.sh
index 8ed1d178325..234e0192510 100755
--- a/.github/setup_ci.sh
+++ b/.github/setup_ci.sh
@@ -164,7 +164,7 @@ for TARGET in $TARGETS; do
PACKAGES="${PACKAGES} cmake ninja-build"
;;
putty-*)
- INSTALL_PUTTY=$(echo "${TARGET}" | cut -f2 -d-)
+ INSTALL_PUTTY=0.83
PACKAGES="${PACKAGES} cmake"
;;
valgrind*)
@@ -225,13 +225,8 @@ if [ "${INSTALL_HARDENED_MALLOC}" = "yes" ]; then
fi
if [ ! -z "${INSTALL_OPENSSL}" ]; then
- (cd ${HOME} &&
- git clone https://github.com/openssl/openssl.git &&
- cd ${HOME}/openssl &&
- git checkout ${INSTALL_OPENSSL} &&
- ./config no-threads shared ${SSLCONFOPTS} \
- --prefix=/opt/openssl &&
- make && sudo make install_sw)
+ .github/install_libcrypto.sh \
+ "${INSTALL_OPENSSL}" /opt/openssl "${SSLCONFOPTS}"
fi
if [ ! -z "${INSTALL_LIBRESSL}" ]; then
@@ -278,25 +273,25 @@ if [ ! -z "${INSTALL_ZLIB}" ]; then
fi
if [ ! -z "${INSTALL_PUTTY}" ]; then
- ver="${INSTALL_PUTTY}"
- case "${INSTALL_PUTTY}" in
- snapshot)
- tarball=putty.tar.gz
- (cd /tmp && wget https://tartarus.org/~simon/putty-snapshots/${tarball})
- ;;
- *)
- tarball=putty-${ver}.tar.gz
- (cd /tmp && wget https://the.earth.li/~sgtatham/putty/${ver}/${tarball})
+ .github/install_putty.sh "${INSTALL_PUTTY}"
+fi
+
+# If we're running on an ephemeral VM, set a random password and set
+# up to run the password auth test.
+if [ ! -z "${EPHEMERAL_VM}" ]; then
+
+ # This is the github "target" as specified in the yml file.
+ # In particular, ubuntu-latest sets the password field to the locked
+ # value, so unless we reset it here most of the tests will fail.
+ case "${target}" in
+ ubuntu-*)
+ echo ${target} target: setting random password.
+ openssl rand -base64 9 >regress/password
+ pw=$(tr -d '\n' Settings ->
+# Security -> Actions -> Variables) to restrict the tests that are run.
+# The supported variables are:
+#
+# RUN_ONLY_TARGET_CONFIG: Run only the single matching target and config,
+# separated by spaces, eg "ubuntu-latest default". All other tests will
+# fail immediately.
+#
+# LTESTS: Override the set of tests run.
# For testing, you can set variables in your repo (Repo -> Settings ->
# Security -> Actions -> Variables) to restrict the tests that are run.
@@ -12,11 +22,11 @@ name: C/C++ CI
on:
push:
- branches: [ master, dev_major, dev_minor ]
- paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/workflows/c-cpp.yml' ]
+ branches: [ master, dev_major, dev_minor, DynamicWindow ]
+# paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/*.sh', '.github/workflows/c-cpp.yml' ]
pull_request:
- branches: [ master, dev_major, dev_minor ]
- paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/workflows/c-cpp.yml' ]
+ branches: [ master, dev_major, dev_minor, DynamicWindow ]
+# paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/*.sh', '.github/workflows/c-cpp.yml' ]
jobs:
ci:
@@ -87,41 +97,36 @@ jobs:
# - { target: ubuntu-latest, config: libressl-3.4.3 }
# - { target: ubuntu-latest, config: libressl-3.5.3 }
# - { target: ubuntu-latest, config: libressl-3.6.1 }
- - { target: ubuntu-latest, config: libressl-3.7.2 }
+ - { target: ubuntu-latest, config: libressl-3.7.3 }
- { target: ubuntu-latest, config: libressl-3.8.4 }
- { target: ubuntu-latest, config: libressl-3.9.2 }
- { target: ubuntu-latest, config: libressl-4.0.0 }
+ - { target: ubuntu-latest, config: libressl-4.1.0 }
- { target: ubuntu-latest, config: openssl-master }
- { target: ubuntu-latest, config: openssl-noec }
- { target: ubuntu-latest, config: openssl-1.1.1 }
- { target: ubuntu-latest, config: openssl-1.1.1t }
- { target: ubuntu-latest, config: openssl-1.1.1w }
- { target: ubuntu-latest, config: openssl-3.0.0 }
- - { target: ubuntu-latest, config: openssl-3.0.15 }
+ - { target: ubuntu-latest, config: openssl-3.0.18 }
- { target: ubuntu-latest, config: openssl-3.1.0 }
- - { target: ubuntu-latest, config: openssl-3.1.7 }
- - { target: ubuntu-latest, config: openssl-3.2.3 }
- - { target: ubuntu-latest, config: openssl-3.3.2 }
+ - { target: ubuntu-latest, config: openssl-3.1.8 }
+ - { target: ubuntu-latest, config: openssl-3.2.6 }
+ - { target: ubuntu-latest, config: openssl-3.3.5 }
- { target: ubuntu-latest, config: openssl-3.4.0 }
+ - { target: ubuntu-latest, config: openssl-3.4.3 }
+ - { target: ubuntu-latest, config: openssl-3.5.0 }
+ - { target: ubuntu-latest, config: openssl-3.5.3 } # keep
+ - { target: ubuntu-latest, config: openssl-3.5.4 }
- { target: ubuntu-latest, config: openssl-1.1.1_stable }
- { target: ubuntu-latest, config: openssl-3.0 } # stable branch
- { target: ubuntu-latest, config: openssl-3.1 } # stable branch
- { target: ubuntu-latest, config: openssl-3.2 } # stable branch
- { target: ubuntu-latest, config: openssl-3.3 } # stable branch
- - { target: ubuntu-latest, config: putty-0.71 }
- - { target: ubuntu-latest, config: putty-0.72 }
- - { target: ubuntu-latest, config: putty-0.73 }
- - { target: ubuntu-latest, config: putty-0.74 }
- - { target: ubuntu-latest, config: putty-0.75 }
- - { target: ubuntu-latest, config: putty-0.76 }
- - { target: ubuntu-latest, config: putty-0.77 }
- - { target: ubuntu-latest, config: putty-0.78 }
- - { target: ubuntu-latest, config: putty-0.79 }
- - { target: ubuntu-latest, config: putty-0.80 }
- - { target: ubuntu-latest, config: putty-0.81 }
- - { target: ubuntu-latest, config: putty-0.82 }
- - { target: ubuntu-latest, config: putty-0.83 }
- - { target: ubuntu-latest, config: putty-snapshot }
+ - { target: ubuntu-latest, config: openssl-3.4 } # stable branch
+ - { target: ubuntu-latest, config: openssl-3.5 } # stable branch
+ - { target: ubuntu-latest, config: openssl-3.6 } # stable branch
+ - { target: ubuntu-latest, config: putty-versions }
- { target: ubuntu-latest, config: zlib-develop }
- { target: ubuntu-latest, config: tcmalloc }
#musl doens't know about linux/tcp.h so skip
@@ -173,6 +178,11 @@ jobs:
TEST_SSH_UNSAFE_PERMISSIONS: 1
TEST_SSH_HOSTBASED_AUTH: yes
LTESTS: ${{ vars.LTESTS }}
+ - name: test OpenSSL3 ABI compatibility
+ if: ${{ startsWith(matrix.config, 'openssl-3') }}
+ run: |
+ sh .github/install_libcrypto.sh -a ${{ matrix.config }} /opt/openssl
+ sh .github/run_test.sh ${{ matrix.config }}
- name: show logs
if: failure()
run: for i in regress/failed*.log; do echo ====; echo logfile $i; echo =====; cat $i; done
diff --git a/.github/workflows/selfhosted.yml b/.github/workflows/selfhosted.yml
index 3bc54d64b1e..a46d8a451aa 100644
--- a/.github/workflows/selfhosted.yml
+++ b/.github/workflows/selfhosted.yml
@@ -1,8 +1,8 @@
-name: C/C++ CI self-hosted
+name: CI self-hosted
on:
push:
- paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/workflows/selfhosted.yml' ]
+ paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/run_tests.sh', '.github/workflows/selfhosted.yml' ]
jobs:
selfhosted:
diff --git a/.github/workflows/upstream.yml b/.github/workflows/upstream.yml
new file mode 100644
index 00000000000..6cb08fd4103
--- /dev/null
+++ b/.github/workflows/upstream.yml
@@ -0,0 +1,79 @@
+name: OpenBSD
+
+on:
+ push:
+ branches: [ master ]
+ paths: [ '**.c', '**.h', '**.sh', '.github/configs', '.github/workflows/upstream.yml' ]
+
+jobs:
+ selfhosted:
+ name: "upstream ${{ matrix.target }} ${{ matrix.config }}"
+ if: github.repository == 'openssh/openssh-portable-selfhosted'
+ runs-on: ${{ matrix.host }}
+ env:
+ EPHEMERAL: true
+ HOST: ${{ matrix.host }}
+ TARGET_HOST: ${{ matrix.target }}
+ TARGET_CONFIG: ${{ matrix.config }}
+ TARGET_DOMAIN: ${{ format('{0}-{1}-{2}', matrix.target, matrix.config, github.run_id) || matrix.target }}
+ strategy:
+ fail-fast: false
+ matrix:
+ host:
+ - libvirt
+ target: [ obsdsnap, obsdsnap-i386 ]
+ config: [ default, without-openssl ] # TODO: restore 'ubsan' once fixed
+ include:
+ - { host: libvirt-arm64, target: obsdsnap-arm64, config: default }
+ - { host: libvirt-arm64, target: obsdsnap-arm64, config: without-openssl }
+ # - { host: libvirt-arm64, target: obsdsnap-arm64, config: ubsan }
+ steps:
+ - name: unmount stale workspace
+ run: fusermount -u ${GITHUB_WORKSPACE} || true
+ working-directory: ${{ runner.temp }}
+ - name: shutdown VM if running
+ run: vmshutdown
+ working-directory: ${{ runner.temp }}
+ - uses: actions/checkout@main
+ - name: startup VM
+ run: vmstartup
+ working-directory: ${{ runner.temp }}
+ - name: copy and mount workspace
+ run: sshfs_mount
+ working-directory: ${{ runner.temp }}
+ - name: update source
+ run: vmrun "cd /usr/src && cvs -q up -dPA usr.bin/ssh regress/usr.bin/ssh usr.bin/nc"
+ - name: update netcat
+ run: vmrun "cd /usr/src/usr.bin/nc && make clean all && sudo make install"
+ - name: make clean
+ run: vmrun "cd /usr/src/usr.bin/ssh && make obj && make clean && cd /usr/src/regress/usr.bin/ssh && make obj && make clean && sudo chmod -R g-w /usr/src /usr/obj"
+ - name: make
+ run: vmrun "cd /usr/src/usr.bin/ssh && case ${{ matrix.config }} in without-openssl) make OPENSSL=no;; ubsan) make DEBUG='-fsanitize-minimal-runtime -fsanitize=undefined';; *) make; esac"
+ - name: make install
+ run: vmrun "cd /usr/src/usr.bin/ssh && sudo make install && sudo /etc/rc.d/sshd -f restart"
+ - name: make tests`
+ run: vmrun "cd /usr/src/regress/usr.bin/ssh && case ${{ matrix.config }} in without-openssl) make OPENSSL=no;; ubsan) make DEBUG='-fsanitize-minimal-runtime -fsanitize=undefined';; *) make; esac"
+ env:
+ SUDO: sudo
+ timeout-minutes: 300
+ - name: show logs
+ if: failure()
+ run: vmrun 'for i in /usr/src/regress/usr.bin/ssh/obj/*.log; do echo ====; echo logfile $i; echo =====; cat $i; done'
+ - name: save logs
+ if: failure()
+ uses: actions/upload-artifact@main
+ with:
+ name: ${{ matrix.target }}-${{ matrix.config }}-logs
+ path: |
+ /usr/src/regress/usr.bin/ssh/obj/*.log
+ /usr/src/regress/usr.bin/ssh/obj/log/*
+ - name: unmount workspace
+ if: always()
+ run: |
+ fusermount -u ${GITHUB_WORKSPACE} || true
+ fusermount -z -u ${GITHUB_WORKSPACE} || true
+ working-directory: ${{ runner.temp }}
+ - name: shutdown VM
+ if: always()
+ run: vmshutdown
+ working-directory: ${{ runner.temp }}
diff --git a/.github/workflows/vm.yml b/.github/workflows/vm.yml
new file mode 100644
index 00000000000..9dcf5fcca76
--- /dev/null
+++ b/.github/workflows/vm.yml
@@ -0,0 +1,371 @@
+# For testing, you can set variables in your repo (Repo -> Settings ->
+# Security -> Actions -> Variables) to restrict the tests that are run
+# The supported variables are:
+#
+# RUN_ONLY_TARGET_CONFIG: Run only the single matching target and config,
+# separated by spaces, eg "ubuntu-latest default". All other tests will
+# fail immediately.
+#
+# LTESTS: Override the set of tests run.
+
+name: CI VM
+on:
+ push:
+ paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/workflows/vm.yml' ]
+ pull_request:
+ paths: [ '**.c', '**.h', '**.m4', '**.sh', '**/Makefile.in', 'configure.ac', '.github/configs', '.github/workflows/vm.yml' ]
+
+jobs:
+ dragonflybsd:
+ name: "dragonflybsd-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "6.4.2"
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start DragonFlyBSD ${{ matrix.target }} VM
+ uses: vmactions/dragonflybsd-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ pkg install -y sudo
+ pw useradd builder -m
+ echo "builder ALL=(ALL:ALL) NOPASSWD: ALL" >>/usr/local/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && chown -R builder .
+ - name: configure
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure --with-ssl-dir=/usr/local
+ - name: make clean
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: make tests
+ shell: dragonflybsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo make tests
+
+ - name: "PAM: configure"
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure --with-ssl-dir=/usr/local --with-pam
+ - name: "PAM: make clean"
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: "PAM: make"
+ shell: dragonflybsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: "PAM: make tests"
+ shell: dragonflybsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo SSHD_CONFOPTS="UsePam yes" make tests
+
+ freebsd:
+ name: "freebsd-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "13.5"
+ - "14.3"
+ # - "15.0" # "pkg" breaks with a libutil.so error...
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start FreeBSD ${{ matrix.target }} VM
+ uses: vmactions/freebsd-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ pkg install -y sudo
+ pw useradd builder -m
+ echo "builder ALL=(ALL:ALL) NOPASSWD: ALL" >>/usr/local/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && chown -R builder .
+ - name: configure
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure
+ - name: make clean
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: make tests
+ shell: freebsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo make tests
+
+ - name: "PAM: configure"
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure --with-pam
+ - name: "PAM: make clean"
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: "PAM: make"
+ shell: freebsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: "PAM: make tests"
+ shell: freebsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo SSHD_CONFOPTS="UsePam yes" make tests
+
+
+ netbsd:
+ name: "netbsd-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "9.0"
+ - "9.4"
+ - "10.0"
+ - "10.1"
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start NetBSD ${{ matrix.target }} VM
+ uses: vmactions/netbsd-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ /usr/sbin/pkg_add sudo
+ /usr/sbin/useradd -m builder
+ echo "builder ALL=(ALL:ALL) NOPASSWD: ALL" >>/usr/pkg/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && /sbin/chown -R builder .
+ - name: configure
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure
+ - name: make clean
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: make tests
+ shell: netbsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo make tests
+
+ - name: "PAM: configure"
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure --with-pam
+ - name: "PAM: make clean"
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: "PAM: make"
+ shell: netbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: "PAM: make tests"
+ shell: netbsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo SSHD_CONFOPTS="UsePam yes" make tests
+
+
+ ominios:
+ name: "omnios-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "r151054"
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start OmniOS ${{ matrix.target }} VM
+ uses: vmactions/omnios-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ set -x
+ pfexec pkg refresh
+ pfexec pkg install build-essential
+ useradd -m builder
+ sed -e "s/^root.*ALL$/root ALL=(ALL) NOPASSWD: ALL/" /etc/sudoers >>/tmp/sudoers
+ mv /tmp/sudoers /etc/sudoers
+ echo "builder ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: omnios {0}
+ run: cd $GITHUB_WORKSPACE && chown -R builder .
+ - name: configure
+ shell: omnios {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure
+ - name: make clean
+ shell: omnios {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: omnios {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make
+ - name: make tests
+ shell: omnios {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder make tests
+
+
+ openbsd:
+ name: "openbsd-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "7.3"
+ - "7.5"
+ - "7.6"
+ - "7.7"
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start OpenBSD ${{ matrix.target }} VM
+ uses: vmactions/openbsd-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ env PKG_PATH=https://ftp.openbsd.org/pub/OpenBSD/${{matrix.target}}/packages/amd64 pkg_add sudo--
+ useradd -m builder
+ echo "builder ALL=(ALL:ALL) NOPASSWD: ALL" >>/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: openbsd {0}
+ run: cd $GITHUB_WORKSPACE && chown -R builder .
+ - name: configure
+ shell: openbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure
+ - name: make clean
+ shell: openbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: openbsd {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make -j4
+ - name: make tests
+ shell: openbsd {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder env SUDO=sudo make tests
+
+
+ solaris:
+ name: "solaris-${{ matrix.target }}"
+ if: github.repository != 'openssh/openssh-portable-selfhosted'
+ strategy:
+ fail-fast: false
+ matrix:
+ # First we test all OSes in the default configuration.
+ target:
+ - "11.4-gcc"
+ config: [default]
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@main
+ - name: autoreconf
+ run: sh -c autoreconf
+
+ - name: start Solaris ${{ matrix.target }} VM
+ uses: vmactions/solaris-vm@v1
+ with:
+ release: ${{ matrix.target }}
+ usesh: true
+ prepare: |
+ set -x
+ useradd -m builder
+ sed -e "s/^root.*ALL$/root ALL=(ALL) NOPASSWD: ALL/" /etc/sudoers >>/tmp/sudoers
+ mv /tmp/sudoers /etc/sudoers
+ echo "builder ALL=(ALL) NOPASSWD: ALL" >>/etc/sudoers
+ mkdir -p /var/empty /usr/local/etc
+ cp $GITHUB_WORKSPACE/moduli /usr/local/etc/moduli
+
+ - name: set file perms
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && chown -R builder .
+ - name: configure
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure
+ - name: make clean
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: make
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make
+ - name: make tests
+ shell: solaris {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder make tests
+
+ - name: "PAM: configure"
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder ./configure --with-pam
+ - name: "PAM: make clean"
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make clean
+ - name: "PAM: make"
+ shell: solaris {0}
+ run: cd $GITHUB_WORKSPACE && sudo -u builder make
+ - name: "PAM: make tests"
+ shell: solaris {0}
+ run: |
+ cd $GITHUB_WORKSPACE
+ sudo -u builder make tests
diff --git a/.gitignore b/.gitignore
index 338885ffc5c..562c4a2d7c8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,6 +8,7 @@ config.log
config.status
openbsd-compat/Makefile
openbsd-compat/regress/Makefile
+openbsd-compat/include
openssh.xml
opensshd.init
survey.sh
@@ -55,3 +56,4 @@ hpnsshd-auth
!regress/misc/**/Makefile
!regress/unittests/**/Makefile
tags
+*.0
diff --git a/.skipped-commit-ids b/.skipped-commit-ids
index 7988e25006f..138ca3d019f 100644
--- a/.skipped-commit-ids
+++ b/.skipped-commit-ids
@@ -1,3 +1,5 @@
+747219d54565030ff7c45298b9f5e971801f6cb2 moduli-gen Makefile tweak
+c2eb57285424f819f9520fa33e0d6d3c4a361a5e moduli-gen.sh tweak
509bb19bb9762a4b3b589af98bac2e730541b6d4 clean sshd random relinking kit
5317f294d63a876bfc861e19773b1575f96f027d remove libssh from makefiles
a337e886a49f96701ccbc4832bed086a68abfa85 Makefile changes
@@ -39,6 +41,11 @@ fb39324748824cb0387e9d67c41d1bef945c54ea Makefile change
112aacedd3b61cc5c34b1fa6d9fb759214179172 Makefile change
a959fc45ea3431b36f52eda04faefc58bcde00db groupaccess.c changes
6d07e4606997e36b860621a14dd41975f2902f8f Makefile.inc
+c7246a6b519ac390ca550719f91acfdaef1fa0f0 Makefile relink change
+ef7ecdb6dd2542f42fa7236d17ac0b144851f0b5 ssh-keygen, fixup'ed into 21682417
+da414a364c25b187fc686da7aacec2c35d29238a ssh-keygen, fixup'ed into 21682417
+a05e13a7e2c0b65bb4b47184fef731243431c6ff Makefile.inc
+7e8178786157e863f6ff63c5d55200d7b6b04f9e remove old sandbox files
Old upstream tree:
diff --git a/ChangeLog b/ChangeLog
index 939e6549e56..d8f8b46c6e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,4041 @@
+<<<<<<< HEAD
+commit 8cf3d17ecc7a988c535648133f66392b26beb605
+Merge: 1bed65a80 3957cc291
+Author: Chris Rapier
+Date: Thu Oct 2 14:07:17 2025 -0400
+
+ Merge remote-tracking branch 'openssh-master/master' into port_10.1_18.7.1
+=======
+commit 2d8a388de215d9959d72bb11f03e07a6eb2e4614
+Author: Damien Miller
+Date: Fri Oct 10 13:37:07 2025 +1100
+
+ depend
+
+commit 1d2676f4ffae35e2db37a35c385efaf2932cd639
+Author: Damien Miller
+Date: Thu Oct 9 14:53:04 2025 +1100
+
+ update versions
+
+commit ecd65a492bd0ed3a44a1c07428107b2e148bfee4
+Author: djm@openbsd.org
+Date: Wed Oct 8 00:32:52 2025 +0000
+
+ upstream: openssh-10.2
+
+ The only change since 10.1 is the channels.c fix
+
+ OpenBSD-Commit-ID: 5eebeb0db14c694efd4ee96b5f16112e3e5d5ba9
+
+commit ea9af2921cb6af8e65341531db3a7351917f0a92
+Author: djm@openbsd.org
+Date: Wed Oct 8 21:02:16 2025 +0000
+
+ upstream: fix crash at exit (visible via ssh-keygen -D) when
+
+ multiple keys loaded. ok markus deraadt dtucker
+
+ OpenBSD-Commit-ID: baa9763ec69d162108dafd962792ec5610ff45c9
+
+commit e49013576074ccd2d7ae75fb824170c739ce97a1
+Author: Damien Miller
+Date: Thu Oct 9 10:07:40 2025 +1100
+
+ link ssh-keygen directly against ssh-pkcs11.c
+
+ Matches what OpenBSD does and fixes ssh-keygen regression in
+ certifying keys using a CA key hosted via ssh-agent (bz3877)
+
+commit 684f2ceff8c0eeb775e8653cf32609f8fbfe07b1
+Author: Damien Miller
+Date: Thu Oct 9 13:10:27 2025 +1100
+
+ some fixes to p11_setup
+
+ 1. Use the ssh-keygen under test and not the one in $PATH
+ 2. Include a test PKCS#11 operation to ensure that the P11 stack is
+ working correctly.
+
+ Previously, it was possible for p11_setup to return success on
+ configurations with PKCS#11 support disabled.
+
+commit af17ae64a5cfee42334883d2802f40f779131740
+Author: Damien Miller
+Date: Thu Oct 9 13:12:15 2025 +1100
+
+ complete PKCS#11 stubs and move to ssh-pkcs11.c
+
+ Should unbreak --disable-pkcs11 builds
+
+commit bcf7c05a473f92a35f4f3b561fd7a1e339e0a30f
+Author: Darren Tucker
+Date: Wed Oct 8 11:26:52 2025 +1100
+
+ Fix header name and move return outside of ifdef.
+
+ Fixes from Mike Frysinger via Github PR#597.
+
+commit b937061fe4922caced7b91442b3233c0bd763492
+Author: Darren Tucker
+Date: Tue Oct 7 21:10:33 2025 +1100
+
+ Check HAVE_MMAP too now that configure sets it.
+
+commit 8d57083c062f03098c9f767ec8d6278dc549a2f6
+Author: Darren Tucker
+Date: Tue Oct 7 21:07:05 2025 +1100
+
+ Use calloc for sshkeys if mmap is not supported.
+
+ Based on Github PR#597 from Mike Frysinger, any bugs added by me.
+
+commit c97b931bffa481c72ff4bfddd9d59a2110899289
+Author: Darren Tucker
+Date: Tue Oct 7 20:25:07 2025 +1100
+
+ Add fcntl.h to includes.
+
+ From FreeBSD via bz#3874: "This was previously included due to nested
+ includes in Heimdal's headers. Without this, the build fails with an
+ error due to redefining AT_FDCWD."
+
+commit 8aa13832315e52c4404c993a59c6139b44ac6114
+Author: Daan De Meyer
+Date: Mon Mar 20 20:22:14 2023 +0100
+
+ Only set PAM_RHOST if the remote host is not "UNKNOWN"
+
+ When using sshd's -i option with stdio that is not a AF_INET/AF_INET6
+ socket, auth_get_canonical_hostname() returns "UNKNOWN" which is then
+ set as the value of PAM_RHOST, causing pam to try to do a reverse DNS
+ query of "UNKNOWN", which times out multiple times, causing a
+ substantial slowdown when logging in.
+
+ To fix this, let's only set PAM_RHOST if the hostname is not "UNKNOWN".
+
+commit 0bd6649ea80ead0cd6404dbc25b64937421b556e
+Author: Darren Tucker
+Date: Tue Oct 7 20:10:56 2025 +1100
+
+ Don't copy native host keys for hostbased test.
+
+ Some github runners (notably macos-14) seem to have host keys where
+ public and private do not match, so generate our own keys for testing
+ purposes.
+
+commit 33b63718d40ccc555b8c7a24331a3790b2efc6c5
+Author: Darren Tucker
+Date: Tue Oct 7 20:10:07 2025 +1100
+
+ Add 10.1 branch to ci-status page.
+
+commit 52411f15353257e9ec883fc044b7a56b6fca242d
+Author: Darren Tucker
+Date: Tue Oct 7 20:04:40 2025 +1100
+
+ Add clock_gettime compat shim.
+
+ This fixes the build on macOS prior to 10.12 Sierra, since it does not
+ have it. Found and tested by Sevan Janiyan.
+
+commit beae06f56e0d0a66ca535896149d5fb0b2e8a1b4
+Author: djm@openbsd.org
+Date: Tue Oct 7 08:02:32 2025 +0000
+
+ upstream: don't reuse c->isatty for signalling that the remote channel
+
+ has a tty attached as this causes side effects, e.g. in channel_handle_rfd().
+ bz3872
+
+ ok markus@
+
+ OpenBSD-Commit-ID: 4cd8a9f641498ca6089442e59bad0fd3dcbe85f8
+
+commit 476bab6259d5a6ea0402ec79bc47ed61e2c15e86
+Author: Damien Miller
+Date: Mon Oct 6 12:52:25 2025 +1100
+
+ depend
+
+commit af956575eba6bf6b6d6bc817e1aa6ed73a365984
+Author: Damien Miller
+Date: Mon Oct 6 12:51:13 2025 +1100
+
+ update versions
+
+commit 2fd0945913a30fbbe7c02503347961df03f28e66
+Author: Damien Miller
+Date: Mon Oct 6 12:48:16 2025 +1100
+
+ sync ssh-copy-id to upstream version 527be673f4d
+
+commit 981bb32bc6062fa5d6f11de7ffb732967463bf57
+Author: djm@openbsd.org
+Date: Mon Oct 6 01:45:22 2025 +0000
+
+ upstream: openssh-10.1
+
+ OpenBSD-Commit-ID: 2a232c2d2fc05a23519f69bc29e6d8c076b97d97
+
+commit b9a640a1a0dccfb56be684cc7ade402f57cf7ebd
+Author: dtucker@openbsd.org
+Date: Fri Oct 3 01:03:45 2025 +0000
+
+ upstream: If write() returned short, the subsequent write would restart
+
+ from the beginning of the buffer not the end of what was written. Fix, since
+ we want modpipe to corrupt data for testing purposes deliberately not
+ accidentally. ok djm@
+
+ OpenBSD-Regress-ID: 50ca74d287445c58944f070bb92dc13b1d054b43
+
+commit a0e5446ac85aca5a3ef9844eeedf787300fdb8b3
+Author: naddy@openbsd.org
+Date: Sat Oct 4 21:41:35 2025 +0000
+
+ upstream: typos: a ssh* -> an ssh*
+
+ ok dtucker@
+
+ OpenBSD-Commit-ID: a70fd2e1b23089260e8f5a7921b0debc06b011cb
+
+commit ade92f53c3bd4ad7dcd95334a194add57ec9ff71
+Author: djm@openbsd.org
+Date: Fri Oct 3 00:09:26 2025 +0000
+
+ upstream: stray newline
+
+ OpenBSD-Commit-ID: b47ed4fa93b781c7ec8ae2936526a290f4e17e1f
+
+commit a9cbe10da2be5be76755af0cea029db0f9c1f263
+Author: djm@openbsd.org
+Date: Fri Oct 3 00:08:02 2025 +0000
+
+ upstream: include openssl/bn.h explicitly in files where we use BN_*
+
+ makes things simpler for portable; from Mike Frysinger
+
+ OpenBSD-Commit-ID: 717e93403fd1108e175afd7451b5a4ab46a598fe
+>>>>>>> V_10_2_P1
+
+commit 3957cc2914cdc88932c972413853f8b68c1ffba5
+Author: dtucker@openbsd.org
+Date: Thu Oct 2 08:38:43 2025 +0000
+
+ upstream: Relax array check slightly. Prevents compiler warnings
+
+ in -portable when there are no kbdint devices present. ok djm@
+
+ OpenBSD-Commit-ID: c1c050cecd642d6073c792201908fd225191df93
+
+commit 6a239b057be2897d7a597daaf5394f2e7312dc65
+Author: djm@openbsd.org
+Date: Thu Oct 2 04:23:11 2025 +0000
+
+ upstream: backout r1.243 (fix for fatal during tab-completion with
+
+ some multibyte sequences) as it breaks the common case for tab completion.
+
+ Will deal with it properly after release.
+
+ OpenBSD-Commit-ID: 196d00f5ff19579214de45357f16a1fb2d624be1
+
+commit b9f6a84ea383d811216de38219472214963c10b2
+Author: Darren Tucker
+Date: Thu Oct 2 10:48:04 2025 +1000
+
+ Pass COMPATINCLUDES down to openbsd-compat too.
+
+ Fixes build on Solaris, AIX and probably others.
+
+<<<<<<< HEAD
+commit 1bed65a8062045da543f10c68bcb934f2741e04d
+Merge: 037e1857a 047e0221e
+Author: Chris Rapier
+Date: Wed Oct 1 14:35:47 2025 -0400
+
+ Merge of Oct 1 2025 OpenSSH Master
+
+=======
+>>>>>>> V_10_2_P1
+commit 047e0221eaf9815775e8ea78c6d6add5ab0f68c7
+Author: Darren Tucker
+Date: Wed Oct 1 14:34:02 2025 +1000
+
+ Pass new "compat includes" path via AC_SUBST.
+
+ This fixes the build when the directory path containing a space.
+ Found by Sevan Janiyan, tested by Job Snijders. This doesn't fix
+ "make tests", however that is a different, pre-existing problem
+ that needs to be addressed separately.
+
+commit 5c50ddbe4deac83995edc1d014e9ba0d5efa18a6
+Author: Darren Tucker
+Date: Wed Oct 1 13:37:35 2025 +1000
+
+ Remove compat "include" dir during distclean.
+
+commit aceabd62ce5833716dd2e99d4be4fcb603d263cc
+Author: dtucker@openbsd.org
+Date: Wed Oct 1 00:33:37 2025 +0000
+
+ upstream: Set keys to NULL after freeing in tests where the
+
+ variables will be used again. Should prevent Coverity "potential use after
+ free" warnings.
+
+ OpenBSD-Regress-ID: 24d141657d25977e41dfb0c58e9b74ab093972bf
+
+commit eb30a0d1493a97b5c14728846576dc6af5d442da
+Author: dtucker@openbsd.org
+Date: Wed Oct 1 00:30:19 2025 +0000
+
+ upstream: Get rid of utf8 droppings in commment since it confuses
+
+ older shells. From Sevan Janiyan via openssh-unix-dev.
+
+ OpenBSD-Regress-ID: 67c11a5cff6ef23538c77e9b29d538e175e6cfe3
+
+commit d478e250230e917eeb5032238df0b9af357404ee
+Author: Darren Tucker
+Date: Wed Oct 1 12:17:54 2025 +1000
+
+ Update OpenSSL & LibreSSL versions we test against.
+
+<<<<<<< HEAD
+commit 037e1857a4d9d27c19e39cdcd050c18ae820817b
+Author: Chris Rapier
+Date: Tue Sep 30 15:29:17 2025 -0400
+
+ Typos in readconf.c
+
+commit 9aaf2997f7cb13e8825df1b8f96122de14adebc0
+Merge: 1f58137c7 2c504a74e
+Author: Chris Rapier
+Date: Tue Sep 30 15:25:49 2025 -0400
+
+ Initial pass at porting 10.1 into 18.7.1
+
+commit 1f58137c71178f08392cf710d7de0a6f37158409
+Merge: 27d8b7e9a 7d6d075ac
+Author: Chris Rapier
+Date: Tue Sep 30 11:44:23 2025 -0400
+
+ Merge pull request #137 from rapier1/dev_minor
+
+ HPN-SSH 18.7.1 Release
+
+=======
+>>>>>>> V_10_2_P1
+commit 2c504a74ed81d13c8198a89ed1040d0fc5f73129
+Author: djm@openbsd.org
+Date: Tue Sep 30 00:10:42 2025 +0000
+
+ upstream: during sftp uploads, avoid a condition where a failed write
+
+ could be ignored if a subsequent write succeeded.
+
+ This is unlikely but technically possible because sftp servers are
+ allowed to reorder requests.
+
+ Reported by Graziano Stefani, ok tb@
+
+ OpenBSD-Commit-ID: 03904bce2c7f787223d01d7e1179fde15753eca3
+
+commit 1f7556753869654ba5e2bf61e384c5da2db5ca6a
+Author: djm@openbsd.org
+Date: Tue Sep 30 00:06:06 2025 +0000
+
+ upstream: avoid a fatal() when sftp tab-completes filenames that
+
+ share common utf-8 characters that don't encode to a complete codepoint
+
+ from menthu.zhou via GHPR#587; ok dtucker@
+
+ OpenBSD-Commit-ID: e07e4d8a8cac032ab536570b8214e6ef6839b585
+
+commit 42b14ff1e06fd683c7d15a6b2816c16108873a5a
+Author: djm@openbsd.org
+Date: Tue Sep 30 00:03:09 2025 +0000
+
+ upstream: fix memory leak in mux_client_request_stdio_fwd GHPR#575
+
+ by Boris Tonofa; ok dtucker
+
+ OpenBSD-Commit-ID: 410cdd05242304bd0196b9172ce5fcaf89d2d8ce
+
+commit e5055ef26abcffd3f99669e411ea6b35ca166111
+Author: Allison Karlitskaya
+Date: Wed Sep 3 20:07:55 2025 +0200
+
+ Don't log audit messages with UNKNOWN hostname
+
+ The `host` parameter to audit_log_acct_message() is documented as
+ follows:
+
+ host - The hostname if known. If not available pass a NULL.
+
+ but we pass the string "UNKNOWN" in case we don't know the hostname.
+ Make sure we pass NULL instead.
+
+ This avoids having the audit system attempt to perform a DNS lookup on
+ the hostname "UNKNOWN", which tends to result in long delays when
+ attempting to login.
+
+commit d343df4019b4369ce7f87e9bf6bbc80b81cd263d
+Author: zhangjun
+Date: Fri Aug 22 16:49:07 2025 +0800
+
+ ensure struct passwd fields are non-NULL in pwcopy
+
+ Android libc can return NULL pw_gecos, for example.
+
+commit 893a579e4b37e6bd89d206dc8e7ac2a906ccf114
+Author: dtucker@openbsd.org
+Date: Mon Sep 29 21:37:52 2025 +0000
+
+ upstream: Add explicit check for array overflow.
+
+ The array is bounded by a NULL sentinel which already prevents this,
+ however since we check the bit vector for overflow Coverity assumes that
+ check is for the devices array and flags it as a potential overflow.
+ Adding this additional check on the array placates CID 896018. ok djm@
+ deraadt@
+
+ OpenBSD-Commit-ID: e92fff41341b38e4206a70655cc9acaaa032ebee
+
+commit 90f49a185ac1a786d9f7e9a710b369afb3692a65
+Author: dtucker@openbsd.org
+Date: Mon Sep 29 21:30:15 2025 +0000
+
+ upstream: Move ifdef to start of file. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: 55058ac3d477e4c696575039f5b275522b99ffea
+
+commit 2f71b44d48dc8da7fb743d6ffe609aea5a645edb
+Author: dtucker@openbsd.org
+Date: Mon Sep 29 21:29:22 2025 +0000
+
+ upstream: Include misc.h. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: 8aa48451fe5c37f04a339450c4ed9cfb8f4c288f
+
+commit dfb991bdd826517bbce1cf62ce07bcb3e48a2f27
+Author: dtucker@openbsd.org
+Date: Mon Sep 29 21:28:33 2025 +0000
+
+ upstream: Sort headers as per KNF. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: 55f5b9eaeb826a25cfb506a78136094275a71bcb
+
+commit c82f4dd6b723a8365b4c538d7c99fe8e46985ed0
+Author: dtucker@openbsd.org
+Date: Mon Sep 29 07:40:55 2025 +0000
+
+ upstream: Null out keys after freeing in tests in the case where we
+
+ potentially reuse the variable. Fixes Coverity CID 405057.
+
+ OpenBSD-Regress-ID: c52e86502b33bfa6e448448a74a0217dd519dd58
+
+<<<<<<< HEAD
+commit 7d6d075ac1f1f8d64fcb4cb6f2836e44dd7480ee
+Author: Chris Rapier
+Date: Mon Sep 29 15:48:35 2025 -0400
+
+ Push portable release number to p2 to reflect openssh repo
+
+commit d9af599ae81161f77f1b4dc9f83fef4f850259f1
+Merge: b60b4bb7d 32e2da91c
+Author: Chris Rapier
+Date: Mon Sep 29 15:39:41 2025 -0400
+
+ Merge pull request #136 from rapier1/feature_increment_version
+
+ Increment version number
+
+commit 32e2da91c35b5ab1345bdee1ce0fb0f492e3531d
+Author: Chris Rapier
+Date: Mon Sep 29 15:33:33 2025 -0400
+
+ Increment version number
+
+=======
+>>>>>>> V_10_2_P1
+commit fda31e1e5179b4e70c27094ebb303ee47c11a5a7
+Author: djm@openbsd.org
+Date: Mon Sep 29 03:17:54 2025 +0000
+
+ upstream: avoid spurious error message when loading certificates
+
+ only bz3869
+
+ OpenBSD-Commit-ID: e7848fec50d15cc142fed946aa8f79abef3c5be7
+
+commit bcd88ded2fff97652d4236405a3354ca66f90f7e
+Author: djm@openbsd.org
+Date: Mon Sep 29 02:32:15 2025 +0000
+
+ upstream: kbd-interactive device names should be matched against
+
+ the full device name, not a prefix. Doesn't matter in practice as there is
+ only one kbd-int device supported (PAM xor BSD auth), and an attacker would
+ still need to successfully authenticate against an incorrectly-selected
+ device.
+
+ reported by ashamedbit, NobleMathews; ok deraadt@
+
+ OpenBSD-Commit-ID: cf75d4f99405fbb41354c4ae724a3b39a3b58f82
+
+commit b1c4bf5c2f1c2b30698dbaadc5d823862213f1fc
+Author: jsg@openbsd.org
+Date: Thu Sep 25 12:52:21 2025 +0000
+
+ upstream: avoid use-after-free in update_krl_from_file() found with
+
+ clang scan-build, ok dtucker@
+
+ OpenBSD-Commit-ID: 8ec86eca573740c94d5bc7e252959174555f4eb8
+
+commit b06a150bc903a0cf898406384d5a34059d0f2d8f
+Author: Darren Tucker
+Date: Sat Sep 27 20:20:34 2025 +1000
+
+ Stop testing OpenBSD ubsan until fixed upstream.
+
+commit 97b32fa2af25c16aec4de85c5cbb63fd038b4dfa
+Author: dtucker@openbsd.org
+Date: Fri Sep 26 04:40:45 2025 +0000
+
+ upstream: Use $OBJ for temp file in maxstartups idempotence test.
+
+ Fixes test in -portable when run out-of-tree.
+
+ OpenBSD-Regress-ID: 8578be08238af4abe2dc91af1c199f7f71f1a7a2
+
+commit b4ceca952b85752958d849508294afdc56dfcb9f
+Author: Darren Tucker
+Date: Fri Sep 26 22:28:13 2025 +1000
+
+ Shorten workflow names to fit in a single line.
+
+commit 9824ec515ed6256c1a98d66049471053f965b75e
+Author: Darren Tucker
+Date: Fri Sep 26 22:26:33 2025 +1000
+
+ Update link to oss-fuzz bug tracker.
+
+ Remove 9.8 branch.
+
+commit 37d996bd0537837f15fc540d5aebb1ef2faf2268
+Author: dtucker@openbsd.org
+Date: Thu Sep 25 22:17:29 2025 +0000
+
+ upstream: Check return codes of sshbuf functions.
+
+ Fixes Coverity CIDs 405059 and 405061.
+
+ OpenBSD-Regress-ID: defa55d32892172251bbd5efd15731ce55888247
+
+commit 6c3c9f03c3c2cc4e40decbb49b8486abfb9e57df
+Author: Darren Tucker
+Date: Fri Sep 26 08:23:21 2025 +1000
+
+ Replace hand-rolled modulo with arc4random_uniform.
+
+ Fixes potential modulo-by-zero UB flagged by Coverity CID 405068
+
+commit e914e61eb88e22e5b725c399698256c54589ca32
+Author: Darren Tucker
+Date: Thu Sep 25 17:50:07 2025 +1000
+
+ Remove status bits from OpenSSL >=3 version check.
+
+ OpenSSL traditionally did not guarantee ABI compatibility across release
+ (and development) versions. Because of this, OpenSSH checked the lower 4
+ "status" bits returned by OpenSSL_version_num(), which were originally
+ set to 0 for development versions and 0xf for release versions and, if
+ they did not match, would report the discrepancy and exit.
+
+ OpenSSL (unintentionally) changed these bits in the 3.0.0 and subsequent
+ 3.x releases, setting them to zero in the release versions (which happened
+ to also match the documentation), then changed them back in the 3.5.3
+ release. If OpenSSL was upgraded to (or from) this version without
+ recompiling OpenSSH, it would cause OpenSSH flag it as potentially
+ incompatible and refuse to use it. Ultimately OpenSSL rolled this
+ back, but the check now has no value so is being removed for OpenSSL
+ versions >=3.
+
+ bz#3865 and https://github.com/openssl/openssl/issues/28575, ok djm@
+
+commit 35f3e2a41c2afe7a68a8a4efb3eb385e7f8d247d
+Author: Darren Tucker
+Date: Thu Sep 25 18:06:55 2025 +1000
+
+ Update pledge() interface to match current OpenBSD.
+
+ ok djm@
+
+commit 7ce3823547578a3b083085744c1fea39237197a2
+Author: Darren Tucker
+Date: Tue Sep 23 22:12:19 2025 +1000
+
+ Merge all putty tests into a single test.
+
+ The lets us reuse the built OpenSSH binaries and replaces 12*4min of
+ tests with a single 14min one.
+
+commit 1362f6c0f4ca3306a201a6572bb9ec0d47d8edb3
+Author: Darren Tucker
+Date: Thu Sep 25 18:20:53 2025 +1000
+
+ Add #ifdefs in pwfree to match those in pwcopy.
+
+ Fixes build on many platforms.
+
+commit 8235dc3d82c0ac347a3600df0907c6573720fbaa
+Author: djm@openbsd.org
+Date: Thu Sep 25 07:05:11 2025 +0000
+
+ upstream: fix some one-off leaks in ssh.c; ok dtucker@
+
+ OpenBSD-Commit-ID: bf3c27ffe4b3cccb6553b554ec4c04929065a2bc
+
+commit 846987d1233f24bbe87ebed347e328f45525388a
+Author: djm@openbsd.org
+Date: Thu Sep 25 07:04:38 2025 +0000
+
+ upstream: fix some one-off leaks in ssh-keygen; ok dtucker@
+
+ OpenBSD-Commit-ID: 32f51289c93246474659aa49067926fcab9e02e8
+
+commit a1a7df8b3694fdd7b55ad6bb8fa7b3d5d7f5b89a
+Author: djm@openbsd.org
+Date: Thu Sep 25 07:00:43 2025 +0000
+
+ upstream: fix some leaks in ssh-add; feedback/ok dtucker@
+
+ OpenBSD-Commit-ID: 441302917de31a128c1d6d63acccc67042fcf349
+
+commit a8a2702bcd9e81a086e6d2c278f1b62f9d8bf3a1
+Author: djm@openbsd.org
+Date: Thu Sep 25 06:57:54 2025 +0000
+
+ upstream: fix some leaks; feedback/ok dtucker@
+
+ OpenBSD-Commit-ID: 05bdbc2e494b87a4a79e509020bd8249c86a4ff0
+
+commit a071af0682d686de85cf471f5e04deaee4d90adb
+Author: djm@openbsd.org
+Date: Thu Sep 25 06:45:50 2025 +0000
+
+ upstream: wait for the unprivileged sshd-auth process to exit
+
+ before closing the fd it uses to report log messages
+
+ This avoids a race where the child process notices the
+ fd was closed before exiting and spams the logs.
+
+ ok dtucker@
+
+ OpenBSD-Commit-ID: 7cddaa41be3b955e6bed570900db7ab8817b1e76
+
+commit 4fddebe7f524b3403c876c3b399d5ce7ce3390a6
+Author: djm@openbsd.org
+Date: Thu Sep 25 06:33:19 2025 +0000
+
+ upstream: add some functions to free various structs, including
+
+ channels data and packet state; ok dtucker@ tb@
+
+ OpenBSD-Commit-ID: a8b3705309d632cdae370d4147a03e703087b0d1
+
+commit d0c1e73d408a24b2db18c0aa1a0108bea0f24210
+Author: djm@openbsd.org
+Date: Thu Sep 25 06:31:42 2025 +0000
+
+ upstream: fix leaks of config objects in
+
+ mm_decode_activate_server_options ok dtucker@ tb@
+
+ OpenBSD-Commit-ID: 211f4d7d02e847bd1bcb460f6beb11658809a742
+
+commit b62aa85dcbc8f03bf91d26d14fbf8fd5e172d882
+Author: djm@openbsd.org
+Date: Thu Sep 25 06:25:38 2025 +0000
+
+ upstream: clarify intent and avoid (harmess, defined behaviour)
+
+ unsigned underflow. ok tb@
+
+ OpenBSD-Commit-ID: b73bf5f1f381c3e4561a6cc706fb1cd77c939cd8
+
+commit 6f28a935cc7d073e6647643e81d98b5831df204f
+Author: jsg@openbsd.org
+Date: Thu Sep 25 06:23:19 2025 +0000
+
+ upstream: consistently use NULL for null pointer constants found
+
+ with sparse, ok djm@
+
+ OpenBSD-Commit-ID: 1067504b63732d809d0d57ad4bc626818d112772
+
+commit 0af7e5b690e2cfe8824f04f154b0e543509dbefd
+Author: jsg@openbsd.org
+Date: Thu Sep 25 02:15:39 2025 +0000
+
+ upstream: remove unneeded externs ok djm@
+
+ OpenBSD-Commit-ID: fe553193e910a122505142a4e1db7358cc1ae653
+
+commit ae62a16118bb96a8e449ef25f5e55ef86a52cefb
+Author: jsg@openbsd.org
+Date: Thu Sep 25 02:12:16 2025 +0000
+
+ upstream: remove prototype for removed ssh_packet_set_tos() ok
+
+ djm@
+
+ OpenBSD-Commit-ID: 396f82995074ef4d7b9ce44168266ef4640d9985
+
+commit d8588478850463f8945aa18d0358b2b227f8b57a
+Author: jsg@openbsd.org
+Date: Wed Sep 24 00:51:28 2025 +0000
+
+ upstream: spelling; ok dtucker@
+
+ OpenBSD-Commit-ID: 93870117b0153859dd8baa80b97e44d4558c786b
+
+commit eff358890a7cab1e7c2fec62e5b9914d2c1c8703
+Author: Darren Tucker
+Date: Tue Sep 23 16:51:34 2025 +1000
+
+ Merge VM tests into a single workflow file.
+
+ Should make it easier to manage, although it may cause a few extra runs.
+
+commit d00015d21190517a1f505eb8120f716b1c2e4055
+Author: Darren Tucker
+Date: Tue Sep 23 16:38:45 2025 +1000
+
+ Test openssl-3.6 branch not beta1.
+
+commit 31fce4fc5aaf79b9a4bccf09467e86c56b482bde
+Author: Darren Tucker
+Date: Tue Sep 23 15:51:14 2025 +1000
+
+ Test openssl-3.6.0-beta1.
+
+commit b94e7251a17a497669e825cb70ac79c96bdc3472
+Author: Darren Tucker
+Date: Tue Sep 23 11:32:57 2025 +1000
+
+ Specify rpath when building OpenSSL.
+
+<<<<<<< HEAD
+commit b60b4bb7dd208efa4f22a95738303e8dd5184c39
+Author: Chris Rapier
+Date: Mon Sep 22 17:38:47 2025 -0400
+
+ Typo in servconf.c
+
+commit a45dc2bbaa363447daa839a03336473af286e51e
+Author: Chris Rapier
+Date: Mon Sep 22 16:52:29 2025 -0400
+
+ Screwed up the revert in servconf.
+
+ I used the new DSCP values from the 10.1 branch
+ instead of the 10.0 current. Annoying mistake
+
+commit 7be4edd2b2a1a952a70a0d4f4792e3a583fb1cbd
+Author: Chris Rapier
+Date: Mon Sep 22 16:45:11 2025 -0400
+
+ Needed to update the documentation for IPQoS
+
+commit 3893444c40501f5ab54319aa463f96de308b5496
+Author: Chris Rapier
+Date: Mon Sep 22 16:30:44 2025 -0400
+
+ Reverted change to srevconf.c IPQoS options.
+
+ We should only need to change the IPQoS options for the client
+ side to support RFC 8305.
+
+commit 0929ca44b7296320b085fe5803bbd62a69e30bfd
+Author: Chris Rapier
+Date: Mon Sep 22 14:36:05 2025 -0400
+
+ Make beta
+
+=======
+>>>>>>> V_10_2_P1
+commit 83853aa5e35f3da0690bccd2983764d4e749a670
+Author: Darren Tucker
+Date: Mon Sep 22 15:26:17 2025 +1000
+
+ Factor out OpenSSL install and test more versions.
+
+ Move OpenSSL installation into its own script with a "-a" option to
+ install the "next" version to test for ABI compatibility.
+
+commit 2c1d38f7ffc8b8ec244bfe17ec8a85b3d737dcab
+Author: Darren Tucker
+Date: Mon Sep 22 16:55:49 2025 +1000
+
+ Exclude generated openbsd-compat/include directory.
+
+commit 67b3ed101a18348b564507f55e3ed4b7e0d23ff9
+Author: Darren Tucker
+Date: Sat Sep 20 15:07:36 2025 +1000
+
+ Add OpenSSL 3.x ABI cross-compatibility test.
+
+commit c682c9f45a10ee0dc37fd716cfccd42271f92ddc
+Author: Darren Tucker
+Date: Sat Sep 20 15:05:19 2025 +1000
+
+ Add tests for OpenSSL 3.4 and 3.5 versions.
+
+commit 1659d0ac095608b809fd3173d2c48b7b39d40b02
+Author: Darren Tucker
+Date: Sat Sep 20 15:53:04 2025 +1000
+
+ Build OpenSSL with -j4 to speed it up.
+
+commit ca9ac1109e2c875ea33da6818c1841aa2181e962
+Author: Darren Tucker
+Date: Sat Sep 20 15:16:30 2025 +1000
+
+ Rerun tests if run_tests.sh changes.
+
+<<<<<<< HEAD
+commit 311b5db3d1b69b4a9b61677cf11514254efd4ad0
+Merge: 698575f40 301963eef
+Author: Chris Rapier
+Date: Fri Sep 19 16:48:01 2025 -0400
+
+ Merge pull request #132 from rapier1/feature-fips-mode-check
+
+ Disable the parallel AES-CTR cipher under FIPS mode.
+
+commit 301963eef556ff716fe3f56efbae45d26904f96e
+Author: Chris Rapier
+Date: Fri Sep 19 16:41:59 2025 -0400
+
+ Minor change in HPN-README
+
+commit 3b0ecec676dc7d143fbd6f0a4dc74d80c104831b
+Author: Chris Rapier
+Date: Fri Sep 19 16:39:19 2025 -0400
+
+ Typos in comments for misc.c fips_enabled().
+
+commit 9b80ca074dbcd8e8f1aaf76a814ab5659fce6d97
+Author: Chris Rapier
+Date: Fri Sep 19 16:36:41 2025 -0400
+
+ Fix typoes in HPN-README
+
+commit 2734b16e03b761aac2e72a40cccb70ff12ade32b
+Merge: 20b3f4001 698575f40
+Author: Chris Rapier
+Date: Fri Sep 19 12:36:13 2025 -0400
+
+ Merge branch 'dev_minor' into feature-fips-mode-check
+
+commit 20b3f4001c3cf250f67f94e25c18574111aa0abc
+Author: Chris Rapier
+Date: Fri Sep 19 12:33:05 2025 -0400
+
+ Delete aclocal.m4 and config.h.in
+
+=======
+>>>>>>> V_10_2_P1
+commit bc328144f149af07139a0f2c1329018cd85b86b7
+Author: djm@openbsd.org
+Date: Fri Sep 19 01:32:45 2025 +0000
+
+ upstream: log at level INFO when PerSourcePenalties actually blocks
+
+ access to a source address range. Previously this was logged at level
+ VERBOSE, which hid enforcement actions under default config settings.
+
+ ok dtucker, markus
+
+ OpenBSD-Commit-ID: ea2b0d7c2253ff5205719d74b526cf2870df894d
+
+<<<<<<< HEAD
+commit 698575f40cdf57eadd040361df4dbe6c0289f3e4
+Merge: c5b27f6d6 bdc5dcddf
+Author: Chris Rapier
+Date: Thu Sep 18 15:44:16 2025 -0400
+
+ Merge pull request #131 from rapier1/feature-happy-eyes
+
+ Feature happy eyes
+
+commit c5b27f6d64eeead3120bfa75aae6539062c51bb4
+Merge: 27d8b7e9a bbeeec17f
+Author: Chris Rapier
+Date: Thu Sep 18 15:43:49 2025 -0400
+
+ Merge pull request #133 from rapier1/bug_CI_system
+
+ Bug ci system
+
+commit 8e6d3dae0ecae14f5e703611ed8d4a71da3b6f9d
+Author: Chris Rapier
+Date: Thu Sep 18 14:58:03 2025 -0400
+
+ Updated HPN-README. Changed fips_enabled().
+
+ fips_enabled() in misc.c originally had debug messages that
+ reported if the parallel ciphers were enabled or not. This
+ was the wrong place for those messages. They should be in
+ session.c and ssh.c when we check the FIPS status.
+
+ Also, the function had unclear variable names. These were
+ updated to be more descriptive.
+
+commit bbeeec17fa4f909be5da82f2f4cc04111518a0aa
+Author: Chris Rapier
+Date: Thu Sep 18 14:36:18 2025 -0400
+
+ Pull fix for agent-restrict failures of MacOS15 from OpenSSH
+
+commit cb7bc41b6aacf5b3390804afcfecf4c08087ec49
+Author: Chris Rapier
+Date: Thu Sep 18 12:24:21 2025 -0400
+
+ Neglected to add scp-resume.sh to repo. Other
+ changes requested from review.
+
+commit fe39a907d1419fb011f9ae1cd457012b90b6cfe7
+Author: Chris Rapier
+Date: Wed Sep 17 17:38:17 2025 -0400
+
+ Whitespace error in c-cpp.yml.
+
+ Tabs not allowed in indents.
+
+commit 92189921f7bd139de292f7a6550ac3f08d07c3b8
+Author: Chris Rapier
+Date: Wed Sep 17 16:18:32 2025 -0400
+
+ Remove parallel CC20 from cipher list if not using OpenSSL.
+
+ This came up under CI testing with MacOS.
+
+commit 07f058a70454480aa49947fc6ec39a41e64a2cae
+Author: Chris Rapier
+Date: Wed Sep 17 16:13:40 2025 -0400
+
+ Various fixes to resolve problem with the CI tests
+
+ These fixes include pushing the SCP resume tests to their
+ own test script. They don't work under windows so we now
+ skip them.
+
+ It also includes a change to the XOR function in cipher-ctr-mt.
+ We were trying to do a 64 bit XOR but it was causing UBs in
+ some of the CI tests. Until we have that resolved we need to
+ stick with 32 bit XORs. Which we *really* need to resolve.
+
+ The last major thing was that valgrind was consistently hanging on
+ the rekey test (valgrind-5). Using the --fair-sched=try option
+ for thread serialization in valgrind resolves that issue.
+
+commit 9736a40c836a845591728b64e92356f52e8de8e1
+Author: Chris Rapier
+Date: Wed Sep 17 15:07:30 2025 -0400
+
+ Disable the parallel AES-CTR cipher under FIPS mode.
+
+ While the AES-CTR algorithm is FIPS certified this implementation
+ is not. This causes FIPS to automatically error out when the aes-ctr-mt
+ cipher is loaded. This can be resolved by using the DisableMTAES options but
+ this requires the user to be aware of it and know why FIPS is erroring out.
+ This will automatically detect if FIPS mode is enabled on fedora variants that
+ write to /proc/sys/crypto/fips_enabled. In the event this entry doesn't exist
+ or that we can't read from it we assume that FIPS mode is not enabled and
+ we allow parallel ciphers.
+
+ This does not apply to the ChaCha20 cipher as the algorithm itself is not
+ FIPS validated and it's up to the admin to make sure it's not being
+ offered as an option.
+
+commit bdc5dcddf44323fe8081ac8e449a2d33da230225
+Merge: 18b6d1f6a 27d8b7e9a
+Author: Chris Rapier
+Date: Wed Sep 17 14:06:52 2025 -0400
+
+ Merge branch 'dev_minor' into feature-happy-eyes
+
+commit 18b6d1f6a5544785ad28b00b09306064ec3c5317
+Author: Chris Rapier
+Date: Wed Sep 17 14:04:05 2025 -0400
+
+ Update HPN-README
+
+commit f26be1c90f75d40b28b8f3a3a83be2156b766397
+Author: Chris Rapier
+Date: Wed Sep 17 13:44:04 2025 -0400
+
+ Added logic to handle the IP QoS issue in commit acd4634f.
+
+ We were previously resolving the issue by changing the defaults
+ for all connections. We now only change the QoS defaults if
+ we are using RRFC 8305.
+
+commit 0a878a79785b66275041e771f140af8b23bd2683
+Author: Chris Rapier
+Date: Wed Sep 17 13:28:09 2025 -0400
+
+ Cleanup up of debug statements. Code review.
+
+=======
+>>>>>>> V_10_2_P1
+commit 80993390bed15bbd1c348f3352e55d0db01ca0fd
+Author: Darren Tucker
+Date: Wed Sep 17 17:41:41 2025 +1000
+
+ Whitespace.
+
+commit fc704057ce6b75637645a4b9c917565b3563e21b
+Author: Darren Tucker
+Date: Wed Sep 17 17:33:25 2025 +1000
+
+ Move Gihub VMs to their own status line.
+
+commit 2202e5f9008003044cac01ed70d83deec42ad4e0
+Author: Darren Tucker
+Date: Tue Sep 16 23:00:14 2025 +1000
+
+ Use relative URLs for status
+
+commit 7c32e09ea3e5c7e1fa0b7e2d4ddc83f8beadafed
+Author: Darren Tucker
+Date: Mon Sep 15 17:21:15 2025 +1000
+
+ Add VM test targets via vmaction on Github.
+
+commit a4aa090a3d40dddb07d5ebebc501f6457541a501
+Author: djm@openbsd.org
+Date: Mon Sep 15 03:00:22 2025 +0000
+
+ upstream: memory leaks in unit tests
+
+ OpenBSD-Regress-ID: af11ac7b8034b99ca324af4dae1ef5cd7700b273
+
+commit 6f5942454ad6756355f3b4983ab882cf15e44440
+Author: djm@openbsd.org
+Date: Mon Sep 15 05:17:37 2025 +0000
+
+ upstream: fix leaks of struct sftp_conn in scp; ok dtucker@
+
+ OpenBSD-Commit-ID: 76bea50b5b87b750c3771bf80feb6067d994a9d2
+
+commit 52f38c76fcb38dfe619d8caa3bb4bb782c785026
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:52:41 2025 +0000
+
+ upstream: leak of principals file lines; ok dtucker@
+
+ OpenBSD-Commit-ID: 918bf1b70e5a969059300f3c23d45911690d9015
+
+commit b9464cee0fd084d89d91696a17b3621b4cf512bf
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:52:12 2025 +0000
+
+ upstream: leak of authentication options at exit; ok dtucker@
+
+ OpenBSD-Commit-ID: ba559799c2ff9b10afc3abefb1797c0843a6ff24
+
+commit 0bb37080c86674de7cdfb56c80add3cd316c68a8
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:51:35 2025 +0000
+
+ upstream: memleak of keys not used for authentication; ok
+
+ dtucker@
+
+ OpenBSD-Commit-ID: ddfda79d243150fbd382d8f2cd75a90a072b3669
+
+commit ee99f6e93e0ee90eedbd27ffb9b7f9fef7b98010
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:50:42 2025 +0000
+
+ upstream: memleak of certificate path; ok dtucker@
+
+ OpenBSD-Commit-ID: 90dc5390f2756ba339e2e6df54d4b8651d64c1e7
+
+commit 42fc6b6f9fbf58293b070f4de377c7695c275a8a
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:49:41 2025 +0000
+
+ upstream: memleak of hostkey when downgrading host cert->key; ok
+
+ dtucker
+
+ OpenBSD-Commit-ID: f6f1f38a8ec144fb615434f6877066cf4610b826
+
+commit bc60bd55cbc1f8139c840668733b51475cbefd93
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:49:00 2025 +0000
+
+ upstream: memleak of editline history; ok dtucker@
+
+ OpenBSD-Commit-ID: a244c54eb074cf7fbe28f7ac4f03ace270f7a999
+
+commit ee77ab9b2ca2d70daf8d4352f5daffa8036ece64
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:48:29 2025 +0000
+
+ upstream: memleak of rfwd callback context; ok dtucker@
+
+ OpenBSD-Commit-ID: 70b2aafeaace90703dd16a44a2a0b723d9155f33
+
+commit 0088b3f0ab2c615ae95b9f374963abaa0ab837ec
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:47:49 2025 +0000
+
+ upstream: memleaks of request packet and hostkeys blob; ok
+
+ dtucker@
+
+ OpenBSD-Commit-ID: 313b13a8e36b4ca8e064ee56792e67e0670a386a
+
+commit d68451a25808c4eee74b898873cd4761f73651ed
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:41:20 2025 +0000
+
+ upstream: memleak of KRL revoked certs struct; ok dtucker
+
+ OpenBSD-Commit-ID: f319868e0b2de49c41c735e75b87c403f009f5f9
+
+commit 67940cc2f329427d3acb64d4893faf4527e58d5c
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:40:34 2025 +0000
+
+ upstream: memleak of kex->server_sig_algs; ok dtucker@
+
+ OpenBSD-Commit-ID: 41a3f64edd2c9b8addb2e445514ae25c24819e2c
+
+commit fae8e41741d23298c94a1ea3ef8704a1cc186cb5
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:39:58 2025 +0000
+
+ upstream: fix memleak of channel forwarding permissions; ok
+
+ dtucker@
+
+ OpenBSD-Commit-ID: 069745547109bc8fcc09fab5b19c53599cae99fd
+
+commit 03872018c14ed943bc01a4e88be59195a742f106
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:39:15 2025 +0000
+
+ upstream: when merging auth options into the active set, don't
+
+ leak the old struct sshauthopt; ok dtucker@
+
+ OpenBSD-Commit-ID: c6bfd7bc2932e37f811b3c53272c3b919d33e75b
+
+commit efed5da4ced88170cf474246eff771dd16c7092f
+Author: djm@openbsd.org
+Date: Mon Sep 15 04:38:00 2025 +0000
+
+ upstream: fix memleak when applying certificate options; ok
+
+ dtucker
+
+ OpenBSD-Commit-ID: 36c219dcc05f4df82a0f9c500bdf5dbfea925289
+
+commit edc601707b583a2c900e49621e048c26574edd3a
+Author: djm@openbsd.org
+Date: Thu Sep 11 07:23:32 2025 +0000
+
+ upstream: disable ssh-add autoexpiry of certificates when testing
+
+ expired certificates
+
+ OpenBSD-Regress-ID: 64aadd23d37fd0b3a06498151f2cf83be7ac342c
+
+commit c60153e4878f3a6700af69adbdd1863003e78abf
+Author: djm@openbsd.org
+Date: Thu Sep 11 07:22:37 2025 +0000
+
+ upstream: correct getopt() string
+
+ OpenBSD-Commit-ID: 05ef9581a3dab32ec93aa5b9c3349ed1e7da9ec8
+
+commit 7a4738af45201c115a9e20f830f30ed38ce6be76
+Author: djm@openbsd.org
+Date: Thu Sep 11 03:29:58 2025 +0000
+
+ upstream: need time.h for time(3)
+
+ OpenBSD-Commit-ID: 530964039cccab679432b6c5b28d2b0aa9760b00
+
+commit 0c719c6aabc061f02a907fc96c390d0449b49f26
+Author: djm@openbsd.org
+Date: Thu Sep 11 02:54:42 2025 +0000
+
+ upstream: When adding certificates to an agent, set the expiry to
+
+ the certificate expiry time plus a short (5 min) grace period.
+
+ This will cause the agent to automtically remove certificates shortly
+ after they expire.
+
+ A new ssh-add -N option disables this behaviour.
+
+ Feedback/ok deraadt@
+
+ OpenBSD-Commit-ID: 92fed1bba1025069ad45deebb534be7530e181df
+
+commit e9dcccc3541b0ae1c43581ed26215d5cc82e4be0
+Author: jsg@openbsd.org
+Date: Mon Sep 8 00:31:54 2025 +0000
+
+ upstream: remove unused 0-sized files; ok deraadt@
+
+ OpenBSD-Commit-ID: 7e8178786157e863f6ff63c5d55200d7b6b04f9e
+
+commit d16b1b484a024ee6b35094e7d9d55bf96b96253b
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 10:34:35 2025 +0000
+
+ upstream: Tabs->spaces. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: 06598021a9f08188dab29ac956b2baa002a0ff85
+
+commit 3d8ae7f235b96da604b08c44ae83420e367eeab4
+Author: Tim Rice
+Date: Mon Sep 8 12:53:10 2025 -0700
+
+ modified: regress/rekey.sh
+ Fix for when building out of tree.
+
+commit 54abadd3f286efea0dbbdbfea8011d5e1e30c074
+Author: Darren Tucker
+Date: Sun Sep 7 13:35:22 2025 +1000
+
+ Accept OpenSSL 4.0.0-dev versions.
+
+ They seem to work, at least for now.
+
+commit 67a8bf4e4057597170bfa923fe2ce5bf90c43974
+Author: Maxim Khon
+Date: Mon Aug 18 12:05:42 2025 +0000
+
+ Use SSH_TUN_COMPAT_AF on FreeBSD.
+
+ Otherwise tun forwarding from other OSes fails as soon as the first IPv6
+ message is sent by the other side (which is usually a Router Solicitation
+ ICMPv6 message which is sent as soon as the interface is up): all other
+ OS'es use SSH_TUN_COMPAT_AF or SSH_TUN_PREPEND_AF which effectively uses
+ OpenBSD AF_INET/AF_INET6 values.
+
+commit 3ca274e44cb2c2351376fc14e4c3e92ba4a8f87b
+Author: Darren Tucker
+Date: Fri Sep 5 21:32:30 2025 +1000
+
+ Check for nlist function.
+
+ Check for nlist function presence before attenmpting to use it instead
+ of relying on the presence of the nlist.h header. Mac OS X, in particular
+ has the header, but only has the function in the 32bit libraries.
+
+commit ee32a36c62424f13907023595bfa8b23a528ced1
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 10:23:55 2025 +0000
+
+ upstream: Order includes as per KNF and add time.h. Removes diff
+
+ vs portable.
+
+ OpenBSD-Commit-ID: 38043f0bfa17c48ef6d1a744c2834b4405bc9311
+
+commit 0ac179c9540e2b05b4c1194db69ce01306c253d3
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 10:17:21 2025 +0000
+
+ upstream: Order headers as per KNF. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: 4df519fd9fa13ce9653adf7a3d1076e20591d886
+
+commit e80322284f3ee70b6b760a9f83179470d675e5ba
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 10:01:35 2025 +0000
+
+ upstream: Order headers as per KNF.
+
+ OpenBSD-Commit-ID: 7156b69b0364c68e181e0f6fa17c0f05c72e8670
+
+commit bb8ac0515e68cab63db2d026eb60127185a3d2b8
+Author: Darren Tucker
+Date: Fri Sep 5 20:39:16 2025 +1000
+
+ Resync header order with upstream.
+
+commit 024b694249482698b0c73d24da0eaec696fca8c8
+Author: Darren Tucker
+Date: Fri Sep 5 20:37:04 2025 +1000
+
+ Resync header order with upstream.
+
+commit aed6a958bc108faab64bc2855d6ed93894cfc6ff
+Author: Darren Tucker
+Date: Fri Sep 5 20:30:20 2025 +1000
+
+ Sync includes with upstream.
+
+commit 22cfd2dd32f34f0cea218dd651f3aa9544b6e3b5
+Author: Darren Tucker
+Date: Fri Sep 5 20:26:14 2025 +1000
+
+ Move ssh-pkcs11.h include to match upstream.
+
+commit b34c16bc4cac2962cc6a7517efbc4fed2c8a2d9a
+Author: Darren Tucker
+Date: Fri Sep 5 20:20:27 2025 +1000
+
+ Reorder includes to match upstream.
+
+commit 441a8fa9a0178704bce497bff92ca43fcf04bf7a
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 09:58:08 2025 +0000
+
+ upstream: Order headers as per KNF. Removes diff vs portable.
+
+ OpenBSD-Commit-ID: db72be57429418f6a4319bbe34c98fc103e11ce0
+
+commit 19d6a7afb256c4afc571dbf56a013ef91cd9596f
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 09:49:26 2025 +0000
+
+ upstream: Order headers as per KNF. Also removes diff vs
+
+ -portable.
+
+ OpenBSD-Commit-ID: 2061307dc938712e524bc9da48a52f545e43670e
+
+commit 932e9f200bd48b7568eb21ec456c67ec92d517e2
+Author: dtucker@openbsd.org
+Date: Fri Sep 5 09:31:31 2025 +0000
+
+ upstream: Remove unused rmd160.h header. ripemd160 support was
+
+ removed in 2017.
+
+ OpenBSD-Commit-ID: 937fca21498b921adf6e04bac120f4a2e7975b3c
+
+commit f93de828b9b0f29bff51d38ea92d0759595ec30b
+Author: Darren Tucker
+Date: Fri Sep 5 20:07:16 2025 +1000
+
+ Create replacement nlist.h if needed.
+
+ Remove #ifdef HAVE_NLIST_H wrapper. ok djm@
+
+commit 6aac2beaa53467e83f6a137376b6dcf423ab6f6c
+Author: Darren Tucker
+Date: Fri Sep 5 19:55:20 2025 +1000
+
+ Create replacement endian.h if needed.
+
+ Remove #ifdef HAVE_ENDIAN_H wrapper. ok djm@
+
+commit a60721c894f0a2ce973876d0f55617e187e6fab1
+Author: Darren Tucker
+Date: Fri Sep 5 19:52:48 2025 +1000
+
+ Add /* WITH_OPENSSL */ comments.
+
+ Removes diffs vs upstream.
+
+commit c729a833298d9d55ffb22771cf1400dfdc640164
+Author: Darren Tucker
+Date: Fri Sep 5 19:22:37 2025 +1000
+
+ Move sys/time.h include to match upstream.
+
+commit caa973dd06a7be43c29353b256c9a473f5ad9882
+Author: Darren Tucker
+Date: Fri Sep 5 19:13:52 2025 +1000
+
+ Create replacement netgroup.h if needed.
+
+ Remove #ifdef HAVE_NETGROUP_H wrapper. ok djm@
+
+commit 7d30526b7df14d960a5de63d6af823ffdab86518
+Author: Darren Tucker
+Date: Fri Sep 5 18:24:59 2025 +1000
+
+ Remove stray #endif left from previous.
+
+commit 4911f2600fdbb1959311bb1886bfe51f7dd4a74e
+Author: Darren Tucker
+Date: Fri Sep 5 18:08:51 2025 +1000
+
+ Create replacement libgen.h if needed.
+
+ Remove #ifdef HAVE_LIBGEN_H wrapper. ok djm@
+
+commit 65dcdb56f5daee519ec824ae17e64412d2492f90
+Author: Darren Tucker
+Date: Fri Sep 5 18:05:15 2025 +1000
+
+ Create replacement sys/un.h if needed.
+
+ Remove #ifdef HAVE_SYS_UN_H wrapper. ok djm@
+
+commit 60334af5a908ac3b263d2ec696f9977e20b739cb
+Author: Darren Tucker
+Date: Fri Sep 5 18:03:55 2025 +1000
+
+ Reformat replacement header check one per line.
+
+commit cd9ba068e36b0f37374d2eba2d19dacc7ea9a167
+Author: Darren Tucker
+Date: Fri Sep 5 17:55:33 2025 +1000
+
+ Create replacement time.h if needed.
+
+ Remove #ifdef HAVE_TIME_H wrapper. ok djm@
+
+commit ea586edbcbec7089f768ed682a79a399eaa1e5b1
+Author: Darren Tucker
+Date: Fri Sep 5 17:50:18 2025 +1000
+
+ Create replacement sys/stat.h if needed.
+
+ Remove #ifdef HAVE_SYS_STAT_H wrapper. ok djm@
+
+commit 59b80707c6cf45230597a800e7d2ce6b00ce35b5
+Author: Darren Tucker
+Date: Fri Sep 5 17:44:07 2025 +1000
+
+ Create replacement sys/time.h if needed.
+
+ Remove #ifdef HAVE_SYS_TIME_H wrapper. ok djm@
+
+commit 82fed5110fe09e9af258a8f5a2f92ffb397fff5b
+Author: Darren Tucker
+Date: Fri Sep 5 17:31:15 2025 +1000
+
+ Create replacement ifaddrs.h if needed.
+
+ Remove #ifdef HAVE_IFADDRS_H wrapper. ok djm@
+
+commit 53887d8ebc583b51e996cb2bdeb11e054d36343b
+Author: Darren Tucker
+Date: Fri Sep 5 17:27:43 2025 +1000
+
+ Create replacement util.h if needed.
+
+ Remove #ifdef HAVE_UTIL_H wrapper. ok djm@
+
+commit 5f09983d1e724097bd577097fb0f2c00c2436f21
+Author: Darren Tucker
+Date: Fri Sep 5 17:24:50 2025 +1000
+
+ Create replacement paths.h if needed.
+
+ Remove #ifdef HAVE_PATHS_H wrapper. ok djm@
+
+commit d45b17dc5a0598dda2b11dc89598203408d2d59c
+Author: Darren Tucker
+Date: Fri Sep 5 17:17:52 2025 +1000
+
+ Create replacement poll.h if needed.
+
+ Remove #ifdef HAVE_POLL_H wrapper. ok djm@
+
+commit 9b2c5a2db0650e394597839ef00d797f57568937
+Author: Darren Tucker
+Date: Fri Sep 5 17:06:14 2025 +1000
+
+ Fill in missing system header files.
+
+ Create replacement header files inside openbsd-compat for common headers
+ that are missing on a given platform. Usually these are just empty,
+ but in some cases they'll include the equivalent file. This avoids
+ having to wrap those includes in '#ifdef HAVE_FOO_H' and reduces the
+ diff vs OpenBSD.
+
+ If we create any such headers, add the path to includes.
+
+ Initially just stdint.h, more to follow.
+
+ ok djm@
+
+commit f64701ca25795548a61614d0b13391d6dfa7f38c
+Author: djm@openbsd.org
+Date: Thu Sep 4 03:04:44 2025 +0000
+
+ upstream: repair test after changes to percent expansion of usernames
+
+ on the commandline.
+
+ Test more cases that should/shouldn't expand and lightly test
+ username validity checks.
+
+ OpenBSD-Regress-ID: ad4c12c70bdf1f959abfebd1637ecff1b49a484c
+
+commit 45698669d49949868b1f3d13dfda1b7cb70060ad
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:37:10 2025 +0000
+
+ upstream: unit tests for sshbuf_equals and sshbuf_dtourlb64; ok
+
+ deraadt@
+
+ OpenBSD-Regress-ID: bab54e2d4caa813036a63ee67e92c93e6712a5b9
+
+commit 4be445116f1b56f14254b98d8b132bb25777e160
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:34:17 2025 +0000
+
+ upstream: unit tests for a bunch of misc.c functions; ok deraadt@
+
+ OpenBSD-Regress-ID: 886cf142605405e777ee77a96b48694dc2e9235d
+
+commit e3699ff47df336f57da2e78188d0057f8368af56
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:32:31 2025 +0000
+
+ upstream: fix sshbuf_dtourlb64() to not choke on empty buffers;
+
+ previously it incorrectly returned an error in this situation; ok deraadt
+
+ OpenBSD-Commit-ID: e62773d6e8cb95a19aab54f0af0edbcd47b345c0
+
+commit 8e85ad33cfcc71e03594e53f2e19d8ce2e27dcc6
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:31:49 2025 +0000
+
+ upstream: fix rtrim() function to not attempt to delete whitespace
+
+ inside a string, just at the end. ok deraadt@
+
+ OpenBSD-Commit-ID: d44deaa43580cd88de978dd5509b14e905b67b84
+
+commit 43b3bff47bb029f2299bacb6a36057981b39fdb0
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:30:06 2025 +0000
+
+ upstream: don't allow \0 characters in url-encoded strings.
+
+ Suggested by David Leadbeater, ok deraadt@
+
+ OpenBSD-Commit-ID: c92196cef0f970ceabc1e8007a80b01e9b7cd49c
+
+commit 35d5917652106aede47621bb3f64044604164043
+Author: djm@openbsd.org
+Date: Thu Sep 4 00:29:09 2025 +0000
+
+ upstream: Improve rules for %-expansion of username.
+
+ Usernames passed on the commandline will no longer be subject to
+ % expansion. Some tools invoke ssh with connection information
+ (i.e. usernames and host names) supplied from untrusted sources.
+ These may contain % expansion sequences which could yield
+ unexpected results.
+
+ Since openssh-9.6, all usernames have been subject to validity
+ checking. This change tightens the validity checks by refusing
+ usernames that include control characters (again, these can cause
+ surprises when supplied adversarially).
+
+ This change also relaxes the validity checks in one small way:
+ usernames supplied via the configuration file as literals (i.e.
+ include no % expansion characters) are not subject to these
+ validity checks. This allows usernames that contain arbitrary
+ characters to be used, but only via configuration files. This
+ is done on the basis that ssh's configuration is trusted.
+
+ Pointed out by David Leadbeater, ok deraadt@
+
+ OpenBSD-Commit-ID: e2f0c871fbe664aba30607321575e7c7fc798362
+
+commit f38a552dc71f20df2544338099e3fe2563f1a9ca
+Author: Damien Miller
+Date: Wed Sep 3 09:42:39 2025 +1000
+
+ missing header
+
+commit cc4eb3d6943cb57e08ab3abbcf92644deb429e46
+Author: djm@openbsd.org
+Date: Tue Sep 2 11:08:34 2025 +0000
+
+ upstream: simplify algorithm list functions using xextendf(); ok
+
+ dtucker@
+
+ OpenBSD-Commit-ID: ffc5f8d0c25b95705a8a66c8b634f98d23bd92dc
+
+commit 8866d24cdd1d6e73bb3220b753f94e255c49ff96
+Author: djm@openbsd.org
+Date: Tue Sep 2 11:04:58 2025 +0000
+
+ upstream: unit test for xextendf()
+
+ OpenBSD-Regress-ID: ddb3b4db1a52dda23696b967470882fe2b9c3af7
+
+commit 2f369d3fd0ff3715c2b32dff5cb35c0330272445
+Author: djm@openbsd.org
+Date: Tue Sep 2 09:41:23 2025 +0000
+
+ upstream: fix comment on sshbuf_froms() - it *returns* an error
+
+ code, the allocated buffer is passed via argument
+
+ OpenBSD-Commit-ID: b2b0a76df71328f39c3e2ad941a4d87085d8335d
+
+commit 6fd93060bb2ec35a7f0bf96d1a74104bab49e017
+Author: djm@openbsd.org
+Date: Tue Sep 2 09:40:19 2025 +0000
+
+ upstream: GssStrictAcceptor was missing from sshd -T output; fix
+
+ OpenBSD-Commit-ID: 6014049ccfedc48a208e37d5488ade6bdc2d1c44
+
+commit d94a9a8c54e9036961c1100c6f445c50ab9b6b40
+Author: Damien Miller
+Date: Tue Sep 2 19:38:39 2025 +1000
+
+ portable-specific comment grammer/spelling fixes
+
+commit a0b095fa03d3c08d723a803ce25540fddd955c53
+Author: djm@openbsd.org
+Date: Tue Sep 2 09:34:48 2025 +0000
+
+ upstream: grammar and typos in comments
+
+ OpenBSD-Commit-ID: de954daffcd0147ce142d55e8a374810cd19d7ed
+
+commit 23a2bb750547a9a5251cbc44c5ceb1d05303befe
+Author: Damien Miller
+Date: Tue Sep 2 19:30:07 2025 +1000
+
+ replace remaining manual logging of __func__
+
+ Use the appropriate log macro that prepends the function name
+ (e.g. logit_f/debug2_f/etc).
+
+commit a9b0b69f15e63bc4e8c8b38e24ee85ea076a7e11
+Author: djm@openbsd.org
+Date: Tue Sep 2 09:26:21 2025 +0000
+
+ upstream: replace remaining cases where we manually included __func__
+
+ in a debug or error log with the respective *_f log variant
+
+ OpenBSD-Commit-ID: 46a280d78bcc0bc98f28e65a30b613366600328f
+
+commit 19f7cb39eecb4b8f768f37e8294dc3a9142e022b
+Author: djm@openbsd.org
+Date: Mon Sep 1 23:55:29 2025 +0000
+
+ upstream: test MaxStatups idempotency; ok dtucker@
+
+ OpenBSD-Regress-ID: b5d713c2709000fa5e41d82c0cf8627e13cb43f9
+
+commit c357c4a1e626feba9a968b5f0cb832b989b2d433
+Author: djm@openbsd.org
+Date: Thu Aug 21 05:55:30 2025 +0000
+
+ upstream: benchmark more diffie-hellman-group* KEXs
+
+ use current KEX names, i.e. remove the "@openssh.com" where the KEX
+ has been standardised
+
+ OpenBSD-Regress-ID: a67e9da4efd9a971d39cb2481093f836046f9b7f
+
+commit 9313233a735733821dfd170b70782fb7da492962
+Author: djm@openbsd.org
+Date: Tue Sep 2 01:03:43 2025 +0000
+
+ upstream: fix previous
+
+ OpenBSD-Commit-ID: 09d95dfb5e064a1d0e74afba8d77474cc1d110a4
+
+commit 683d0abe596b069a896f1688f86256f1beeb0cdc
+Author: djm@openbsd.org
+Date: Mon Sep 1 23:53:16 2025 +0000
+
+ upstream: Make MaxStartups and PerSourceNetBlockSize first-match-wins
+
+ as advertised. bz3859 reported by jan.v.hofmann; ok dtucker
+
+ OpenBSD-Commit-ID: 08f7786f1b3b4a05a106cdbd2dc5f1f2d8299447
+
+commit a9a3f025d76f06a6601e6e8d52b468ec467865d9
+Author: djm@openbsd.org
+Date: Fri Aug 29 03:50:38 2025 +0000
+
+ upstream: remove experimental support for XMSS keys;
+
+ ok deraadt markus
+
+ OpenBSD-Commit-ID: 38eaf4df6189acad9e46eddf7cf32d7f6d07df35
+
+commit 908e9d55139bed19ed87d6fec749974eb42702c6
+Author: caspar@openbsd.org
+Date: Mon Aug 18 18:39:33 2025 +0000
+
+ upstream: ssh_config.5: say "post-quantum" instead of "post quantum
+
+ safe", and rephrase the sentence to make it easier to read.
+
+ Input djm@, input and OK deraadt@, OK dtucker@
+
+ OpenBSD-Commit-ID: c3ee4d1cafdcfc20cc0d2f086021efce4b19c075
+
+commit ceca966bde4ab38b2434876416da12fe16747459
+Author: job@openbsd.org
+Date: Mon Aug 18 09:16:36 2025 +0000
+
+ upstream: Delete unused accessor function
+
+ OK dtucker@
+
+ OpenBSD-Commit-ID: 93b59ac088fb254e1189729ece5bb9656d6e810b
+
+commit 3ef1a87d0a29eac94f32371af628e81eb2e2d817
+Author: Damien Miller
+Date: Mon Aug 18 17:00:26 2025 +1000
+
+ Fix pledge(2) special casing
+
+ Unbreaks non-OpenBSD platforms
+
+commit 5e9ca80fe65e407428dc46ed45804724d08b91b7
+Author: Damien Miller
+Date: Mon Aug 18 16:47:23 2025 +1000
+
+ Match version instead of groups in connect-bigconf
+
+ The connect-bigconf makes a giant config file to test config passing
+ between the sshd subprocesses. Previously it used a bunch of "Match
+ group" lines to construct a large file. However checking group
+ membership can be expensive (e.g. if a large groups database is
+ present or if group lookup is remote via NSS). This could be slow
+ enough to exceed LoginGraceTime.
+
+ This switches it to "Match version" which is just a string compare
+ and does just as well for making a giant nonsense config file.
+
+commit 6c84609e5f9ddd49e250d5cf190b2820dbeca178
+Author: Damien Miller
+Date: Mon Aug 18 16:47:00 2025 +1000
+
+ depend
+
+commit 9184fa363687fcb5dac056b093fb3b8e9d327242
+Author: Damien Miller
+Date: Mon Aug 18 16:45:15 2025 +1000
+
+ check for setsockopt IP_TOS in OpenBSD pledge
+
+ OpenBSD has recently relaxed the pledge(2) sandbox to allow some
+ setsockopt options to be changed without the "inet" promise.
+
+ This adds compatibility for OpenBSD that predates this relaxation.
+
+commit ae44cd74f3a4ac711152f50b2712803ccf785593
+Author: djm@openbsd.org
+Date: Mon Aug 18 04:50:35 2025 +0000
+
+ upstream: cast
+
+ OpenBSD-Commit-ID: d69bd2328513c2dcd99f4f346b77e2bd90cf1964
+
+commit c2c8bae39380392449ac3297061cbfc486126ad5
+Author: djm@openbsd.org
+Date: Mon Aug 18 04:38:21 2025 +0000
+
+ upstream: missing set_log_handler() call in ssh-auth.c, exposed after
+
+ last commit
+
+ OpenBSD-Commit-ID: 09f5c3cf33c18b8ad321edbf96c30ae3deada2b0
+
+commit 056022261e6cf7eb65bbacac72afe5f4d5945f2c
+Author: Damien Miller
+Date: Mon Aug 18 14:22:32 2025 +1000
+
+ depend
+
+commit b7ee13fbbb4ebafcf71f29685f053ecb97d1bcef
+Author: Damien Miller
+Date: Mon Aug 18 14:22:18 2025 +1000
+
+ wrap SIGINFO in ifdef
+
+commit 289239046b2c4b0076c14394ae9703a879e78706
+Author: djm@openbsd.org
+Date: Mon Aug 18 03:43:01 2025 +0000
+
+ upstream: Make ssh(1) and sshd(8) set IP QoS (aka IP_TOS, IPV6_TCLASS)
+
+ continually at runtime based on what sessions/channels are open.
+
+ Previously, ssh(1) and sshd(8) would pick a QoS value when they
+ were started and use it for the whole connection. This could
+ produce suboptimal choices for the QoS value, e.g. for multiplexed
+ sessions that started interactive but picked up a sftp client,
+ or sessions that moved large amounts of data via port forwarding.
+
+ Now the QoS value will change to the non-interactive IPQoS whenever
+ a "non-interactive" channel is open; basically any channel that lacks
+ a tty other than agent forwarding.
+
+ This is important now that the default interactive IPQoS is EF
+ (Expedited Forwarding), as many networks are configured to allow
+ only relatively small amounts of traffic of this class and they will
+ aggressively deprioritise the entire connection if this is exceeded.
+
+ NB. because ssh(1) and sshd(8) now change IP_TOS/IPV6_TCLASS
+ continually via setsockopt(), this commit requires a recent pledge(2)
+ change that landed recently in the OpenBSD kernel. Please ensure
+ you have updated to a kernel from within the last two weeks before
+ updating OpenSSH.
+
+ with job@ deraadt@
+
+ OpenBSD-Commit-ID: 325fc41717eecdf5e4b534bfa8d66817425b840f
+
+commit dc5147028ff19213a32281dad07bba02e58da3fa
+Author: djm@openbsd.org
+Date: Mon Aug 18 03:29:11 2025 +0000
+
+ upstream: SIGINFO handler for sshd(8) to dump active
+
+ channels/sessions ok deraadt@
+
+ OpenBSD-Commit-ID: 9955cb6d157c6d7aa23a819e8ef61b1edabc8b7d
+
+commit f807a598c96be683d97810481e954ec9db6b0027
+Author: djm@openbsd.org
+Date: Mon Aug 18 03:28:36 2025 +0000
+
+ upstream: SIGINFO handler for ssh(1) to dump active
+
+ channels/sessions ok deraadt@
+
+ OpenBSD-Commit-ID: 12f88a5044bca40ef5f41ff61b1755d0e25df901
+
+commit 9b61679d73a8a001c25ab308db8a3162456010cf
+Author: djm@openbsd.org
+Date: Mon Aug 18 03:28:02 2025 +0000
+
+ upstream: add channel_report_open() to report (to logs) open
+
+ channels; ok deraadt@ (as part of bigger diff)
+
+ OpenBSD-Commit-ID: 7f691e25366c5621d7ed6f7f9018d868f7511c0d
+
+commit 80b5ffd22abd4093201939e31d1ea6dc8cc7913a
+Author: djm@openbsd.org
+Date: Mon Aug 18 01:59:53 2025 +0000
+
+ upstream: make -E a no-op in sshd-auth. Redirecting logging to a
+
+ file doesn't work in this program as logging already goes via the parent
+ sshd-session process. ok dtucker@
+
+ OpenBSD-Commit-ID: 73325b9e69364117c18305f896c620a3abcf4f87
+
+commit 3a039108bd25ff10047d7fa64750ed7df10c717c
+Author: Damien Miller
+Date: Mon Aug 18 13:46:37 2025 +1000
+
+ allow some socket syscalls in seccomp sandbox
+
+ Allow getsockname(2), getpeername(2) and getsockopt(2).
+
+ Also allow setsockopt(2) but only IP_TOS and IPV6_TCLASS.
+
+ Note that systems that use the older socketcall(2) mux syscall will
+ not have IP_TOS and IPV6_TCLASS allowlisted. On these platforms,
+ these calls will be soft-blocked (i.e. will fail rather than
+ terminate the whole process with a sandbox violation).
+
+ Needed for upcoming IPQoS change; ok dtucker@
+
+commit a00f5b02e171bc6d6fb130050afb7a08f5ece1d8
+Author: Damien Miller
+Date: Mon Aug 18 13:44:53 2025 +1000
+
+ handle futex_time64 properly in seccomp sandbox
+
+ Previously we only allowed __NR_futex, but some 32-bit systems
+ apparently support __NR_futex_time64. We had support for this
+ in the sandbox, but because of a macro error only __NR_futex was
+ allowlisted.
+
+ ok dtucker@
+
+commit 32deb00b38b4ee2b3302f261ea1e68c04e020a08
+Author: dtucker@openbsd.org
+Date: Thu Aug 14 10:03:44 2025 +0000
+
+ upstream: Cast serial no for %lld to prevent compiler warnings on some
+
+ platforms.
+
+ OpenBSD-Commit-ID: afadd741622f16c6733d461c0d6053ed52868a57
+
+commit 883886c959ecab152650e231335857eb3193c662
+Author: dtucker@openbsd.org
+Date: Thu Aug 14 09:44:39 2025 +0000
+
+ upstream: Cast serial no for %lld to prevent compiler warnings on some
+
+ platforms.
+
+ OpenBSD-Commit-ID: 46c6063284d318f7e4dc922479a3e394c94b0588
+
+commit fde5a4d2cd01bea700439fa6d5bbad88e65c99bd
+Author: dtucker@openbsd.org
+Date: Thu Aug 14 09:26:53 2025 +0000
+
+ upstream: Cast serial no for %lld to prevent compiler warnings on some
+
+ platforms.
+
+ OpenBSD-Commit-ID: 15644234b58abc9c6da2994f0422a5aa344a9e89
+
+<<<<<<< HEAD
+commit 27d8b7e9a5500ff36fad33f1aa60dfecb5af73e2
+Merge: 7351c8c41 e3d333cda
+Author: Chris Rapier
+Date: Wed Aug 13 12:47:45 2025 -0400
+
+ Merge pull request #128 from rapier1/dev_minor
+
+ Fixes to CI system
+
+commit e3d333cda1e557bf8b02dd1ba1b329bc98f63ee7
+Author: Chris Rapier
+Date: Wed Aug 13 11:07:06 2025 -0400
+
+ Remove AWS-LC and Boringssl tests.
+
+=======
+>>>>>>> V_10_2_P1
+commit ab5074dfb614e3801fecbd376d8ed4cea613c629
+Author: sthen@openbsd.org
+Date: Tue Aug 12 11:09:48 2025 +0000
+
+ upstream: fix typo, ok markus dtucker
+
+ OpenBSD-Commit-ID: 8f223da7633752162c64a659c6cf55202703d870
+
+commit 8b6c1f402feb9eb6438003a312d7ffe8d5669896
+Author: deraadt@openbsd.org
+Date: Mon Aug 11 14:37:43 2025 +0000
+
+ upstream: Handle localtime_r() failure by return "UNKNOWN-TIME"
+
+ which is only used in user-visible contexts. freebsd 288773 shows their
+ localtime_r() has failed at least once for unknown reason. discussed with djm
+
+ OpenBSD-Commit-ID: 68f4c92d46b2578d4594b0ed940958d597fd61ac
+
+<<<<<<< HEAD
+commit a06d2d823ec1fa3784b0e17d4c4f37c26f723fd0
+Author: Chris Rapier
+Date: Tue Aug 12 17:29:55 2025 -0400
+
+ Whitespace typo on line 19 in c-cpp.yml
+
+commit 3e6d0b6fec1a43830c1a2c4593d8b56e6c86ce54
+Author: Chris Rapier
+Date: Tue Aug 12 17:27:57 2025 -0400
+
+ Neglected to update cifuzz.yml, github-repo-stats.yml, and FUNDING.yml
+
+commit 40b5261926c31e1c78fca582b4bb6497597868b1
+Author: Chris Rapier
+Date: Tue Aug 12 17:24:46 2025 -0400
+
+ Revised CI files resolve prior failures.
+
+ Something changed in the CI system and a lot of tests run against
+ Ubuntu 24.04/latest were failing. This turned out to be an issue
+ with the CI files. I pulled a new copy from OpenSSH and they seem to
+ work now,
+
+commit 314144316a46cff915826ad7b4121f9c419045fd
+Author: Chris Rapier
+Date: Tue Aug 12 16:12:28 2025 -0400
+
+ Starting over from scratch with the latest CI tests from OpenSSH
+
+commit 2ffc4d7bcbdb071a4cc616c784bcd968436eee9e
+Author: Chris Rapier
+Date: Tue Aug 12 15:57:48 2025 -0400
+
+ Might have been a whitespace error on line 168
+
+commit b541cccaff68175525a172235b344cf7efe772e7
+Author: Chris Rapier
+Date: Tue Aug 12 15:55:33 2025 -0400
+
+ Hunting down a typo on line 21.
+ Not sure what the issue is.
+
+commit e021e230756858f55030290192d2818c4be810b0
+Author: Chris Rapier
+Date: Tue Aug 12 15:51:00 2025 -0400
+
+ Had tabs in the workflow file. That's not allowed
+
+commit 6bca5a385e3e9535e789107bbda49cca6330c565
+Author: Chris Rapier
+Date: Tue Aug 12 15:41:59 2025 -0400
+
+ Trying to update the CI system.
+
+=======
+>>>>>>> V_10_2_P1
+commit 0e1b8aa27f7c86d412c9e54ad9e2cae30d9ddab4
+Author: djm@openbsd.org
+Date: Mon Aug 11 10:55:38 2025 +0000
+
+ upstream: ssh(1): add a warning when the connection negotiates a
+
+ non-post quantum safe key agreement algorithm.
+
+ Controlled via a new WarnWeakCrypto ssh_config option, defaulting
+ to on. This option might grow additional weak crypto warnings in
+ the future.
+
+ More details at https://openssh.com/pq.html
+
+ mostly by deraadt@ feedback dtucker@ ok deraadt@
+
+ OpenBSD-Commit-ID: 974ff243a1eccceac6a1a9d8fab3bcc89d74a2a4
+
+commit 2ebc6384258b58ace0ad2adb2593744f62749235
+Author: djm@openbsd.org
+Date: Wed Aug 6 23:44:09 2025 +0000
+
+ upstream: all state related to the ssh connection should live in
+
+ struct ssh or struct packet_state; one static int escaped this rule, so move
+ it to struct packet_state now.
+
+ ok millert tb
+
+ OpenBSD-Commit-ID: bd6737168bf61a836ffbdc99ee4803468db90a53
+
+commit 60b909fb110f77c1ffd15cceb5d09b8e3f79b27e
+Author: dtucker@openbsd.org
+Date: Wed Aug 6 11:22:53 2025 +0000
+
+ upstream: Improve sentence. ok djm@
+
+ OpenBSD-Commit-ID: 9c481ddd6bad110af7e530ba90db41f6d5fe2273
+
+commit 9ffa98111dbe53bf86d07da8e01ded8c5c25456b
+Author: djm@openbsd.org
+Date: Wed Aug 6 04:53:04 2025 +0000
+
+ upstream: when refusing a certificate for user authentication, log
+
+ enough information to identify the certificate in addition to the reason why
+ it was being denied. Makes debugging certificate authz problems a bit easier.
+
+ ok dlg@
+
+ OpenBSD-Commit-ID: 4c4621b2e70412754b3fe7540af8f4bf02b722b1
+
+commit 2a31009c36eb2da412c2784fe131fcb6ba800978
+Author: job@openbsd.org
+Date: Tue Aug 5 09:08:16 2025 +0000
+
+ upstream: Use the operating system default DSCP marking for
+
+ non-interactive traffic
+
+ It seems the CS1 traffic class mark is considered ambiguous and therefore
+ somewhat unhelpful (see RFC 8622 for more considerations). But, the new
+ 'LE' scavenger class (also proposed in RFC 8622) offers high probability
+ of excessive delays & high packet loss, which would be inappropriate
+ for use with, for example, X11 forwardings. In fact, it is not known to
+ SSH what's appropriate because SSH is not aware of the content of what
+ passing through session forwardings. Therefore, no marking is appropriate.
+ Non-interactive traffic simply is best effort.
+
+ OK djm@ deraadt@
+
+ OpenBSD-Commit-ID: db1da1a432ecd53fc28feb84287aedb6bec80b01
+
+commit 6ebd472c391a73574abe02771712d407c48e130d
+Author: djm@openbsd.org
+Date: Tue Aug 5 04:00:15 2025 +0000
+
+ upstream: a bunch of the protocol extensions we support now have RFCs
+
+ and I-Ds that are more complete and detailed than what we have in the
+ PROTOCOL.* files. Refer to these when possible instead of documenting them
+ here.
+
+ OpenBSD-Commit-ID: 4fa5b0fcf5d5f24093d33d9e82c7ca4850d50d70
+
+commit ec3465f59c651405e395092f3ad606f8992328d8
+Author: job@openbsd.org
+Date: Thu Jul 31 11:23:39 2025 +0000
+
+ upstream: Deprecate support for IPv4 type-of-service (TOS) IPQoS
+
+ keywords
+
+ Type of Service (ToS) was deprecated in the late nineties and replaced
+ with the Differentiated Services architecture. Diffserv has significant
+ advantages for operators because this mechanism offers more granularity.
+
+ OpenSSH switched its default IPQoS from ToS to DSCP values in 2018.
+
+ IPQoS configurations with 'lowdelay', 'reliability', or 'throughput' will be
+ ignored and instead the system default QoS settings apply. Additionally, a
+ debug message is logged about the deprecation with a suggestion to use DSCP.
+
+ with/OK deraadt@ sthen@ djm@
+
+ OpenBSD-Commit-ID: 40c8c0c5cb20151a348728703536af2ec1c754ba
+
+commit 65909fa114e7dd7511800db2b7bacb8774afe887
+Author: job@openbsd.org
+Date: Thu Jul 31 09:38:41 2025 +0000
+
+ upstream: Set default IPQoS for interactive sessions to Expedited
+
+ Forwarding (EF)
+
+ Marking interactive session data with DSCP value EF (RFC3246, RFC3247)
+ helps inform the network on relative priority compared to other traffic.
+ This is especially useful for differentiated treatment over wireless media.
+
+ Following the reconciled IETF Diffserv to IEEE 802.11 mappings (RFC 8325),
+ traffic marked with DSCP value EF maps to User Priority 6 in QoS Control,
+ in turn mapping to the high priority WMM AC_VO access category.
+
+ OK djm@
+
+ OpenBSD-Commit-ID: aadda7b9da794d70d7c6b381a861a0610afce1b3
+
+<<<<<<< HEAD
+commit 8ea78abd81e8eb2be94c522a8258f4d44b58b6da
+Author: Chris Rapier
+Date: Mon Aug 4 16:30:57 2025 -0400
+
+ Test
+
+commit cb988e646e0f5edac307732721ae74c755b72334
+Author: Chris Rapier
+Date: Mon Aug 4 16:29:20 2025 -0400
+
+ Test
+
+=======
+>>>>>>> V_10_2_P1
+commit d1c6c67a50fc957010fa027c6ab970424e9b9142
+Author: Darren Tucker
+Date: Sat Aug 2 14:49:00 2025 +1000
+
+ Disable security key tests for bigendian interop
+
+commit e85248df3f1073343da87a6b00512e6a1e4a863d
+Author: Darren Tucker
+Date: Sat Aug 2 12:51:42 2025 +1000
+
+ Comment out atime restore test.
+
+ This works on filesystems mounted 'noatime', but on others the stat()
+ resets atime causing the test to fail.
+
+commit b1c4cedbee107dc611ce091f27ea9f1de28ee378
+Author: Darren Tucker
+Date: Fri Aug 1 19:29:00 2025 +1000
+
+ Replace fbsd64ppc VM with physical host.
+
+ Run 64bit bigendian interop test on NetBSD arm64be instead.
+
+commit 284abbed9a8d815b1ec5e96aff885d77e26537e7
+Author: dtucker@openbsd.org
+Date: Wed Jul 30 10:17:13 2025 +0000
+
+ upstream: Plug leak in case where sigp is passed as NULL. Coverity CID
+
+ 483725, ok djm@
+
+ OpenBSD-Commit-ID: 47cf7b399c84e102b670b9f97ab6926c9a7256b5
+
+commit dc630e6d81be8aa495254839731e4f3521cf9e31
+Author: djm@openbsd.org
+Date: Wed Jul 30 04:27:42 2025 +0000
+
+ upstream: unbreak WITH_OPENSSL=no builds, also allowing ed25519
+
+ keys to be used via PKCS#11 when OpenSSH is built without libcrypto.
+
+ OpenBSD-Commit-ID: ecf26fdf7591bf2c98bac5136fbc36e0b59c3fc2
+
+commit a5bec2cdfc4f38ddb6211809851aae29ba99a35a
+Author: djm@openbsd.org
+Date: Wed Jul 30 04:19:17 2025 +0000
+
+ upstream: fix variable name in disabled code
+
+ OpenBSD-Commit-ID: 5612e979575d5da933c8b720d296423fd84392f5
+
+<<<<<<< HEAD
+commit af892368c8d61109303f23019550fbc5a4517b48
+Merge: acd4634fa e97b21de4
+Author: Chris Rapier
+Date: Tue Jul 29 15:54:35 2025 -0400
+
+ Added HappyDelay option.
+
+ This is a runtime option to specify the delay between
+ starting the IPv6 connection and the IPv4 connection.
+ The default is 250ms as per RFC 8305. This must be a
+ positive integer. 0 or negative values will be rewritten
+ to a value of 1ms.
+
+ Updated documentation to include HappyEye options.
+
+commit acd4634fabc8431e31b0630ea0c8b29ca230eefd
+Author: Chris Rapier
+Date: Tue Jul 29 13:57:54 2025 -0400
+
+ Happy Eyeballs was being hammered by IPQoS defaults
+
+ The default IPQoS for SSH had changed from
+ interactive = lowdelay
+ bulk = throughput
+ to
+ interactive = af21
+ bulk = cs1
+
+ The result of this being that in test scenarios, where we used
+ tc qdisc to insert delay on IPv6, the IPv4 connections ended up
+ having the same effective delay as the IPv6. This meant that we'd
+ always end up using the IPv6 connection even though IPv4 was
+ not being delayed. I don't really understand DSCP enough to undertand
+ why this is happening but this might be a test artifact. In any case,
+ being that both IPv4 and IPv6 had the same effective delay the IPv6
+ connection would always end up winning the race because of the
+ 250ms pause between the IPv6 and IPv4 attempts.
+
+ This commit stil lhas too many debug statements in it but
+ it works for testing.
+
+=======
+>>>>>>> V_10_2_P1
+commit 5e4bfe6c16924b1c21a733f3e218cfcba98e301e
+Author: Damien Miller
+Date: Sat Jul 26 19:19:46 2025 +1000
+
+ more ec/ed25519 fixing
+
+commit 2603098959eff55cbe188c3dfcbe5302808a80fc
+Author: Damien Miller
+Date: Sat Jul 26 14:27:53 2025 +1000
+
+ repair build for libcrypto without ed25519 support
+
+commit a729163c56ecc002c0cb04db56e7d86ceec2e8b0
+Author: djm@openbsd.org
+Date: Sat Jul 26 01:53:31 2025 +0000
+
+ upstream: regression tests for Ed25519 keys in PKCS#11 tokens
+
+ OpenBSD-Regress-ID: 50067c0716abfea3a526b4a0c8f1fe15e7665c0f
+
+commit 361ff0ca308ac02449e71689fc5ea72114db43db
+Author: djm@openbsd.org
+Date: Sat Jul 26 01:51:44 2025 +0000
+
+ upstream: Support ed25519 keys hosted on PKCS#11 tokens.
+
+ Tested on Yubikeys and against SoftHSM2.
+
+ feedback/ok tb@
+
+ OpenBSD-Commit-ID: 90ddb6529f2e12e98e8bba21d8592e60579ce2e4
+
+commit 2b530cc3005a71c5ba6b712978872fc9c147439c
+Author: djm@openbsd.org
+Date: Fri Jul 25 13:06:07 2025 +0000
+
+ upstream: update our PKCS#11 API header to v3.0;
+
+ feedback/ok tb@
+
+ OpenBSD-Commit-ID: e67fa6a26e515c2b1fb7b0d1519d138aafb3e017
+
+<<<<<<< HEAD
+commit e97b21de4a46b644c8bf81fe2f3dcbe3b76d3d6f
+Author: Chris Rapier
+Date: Fri Jul 25 16:03:59 2025 -0400
+
+ checkpoint
+
+commit dad70e503a51f1511576bcc05e419dea989696f1
+Author: Chris Rapier
+Date: Fri Jul 25 13:24:37 2025 -0400
+
+ Checkpoint
+
+=======
+>>>>>>> V_10_2_P1
+commit 550d2a4a66c50f7641563a63b900761d99efb24a
+Author: Damien Miller
+Date: Fri Jul 25 23:04:33 2025 +1000
+
+ another attempt at fixing !EC builds
+
+commit ed1e370d84e9dc39bc31c19cca12222d991fdc6f
+Author: dtucker@openbsd.org
+Date: Fri Jul 25 11:50:45 2025 +0000
+
+ upstream: Don't snprintf a NULL since not all platforms support it.
+
+ OpenBSD-Commit-ID: 6e0c268e40047e96fab6bc56dc340580b537183b
+
+commit eedab8db12d57c4f4583f6b60e48a4ce25b47b9c
+Author: Damien Miller
+Date: Fri Jul 25 16:21:43 2025 +1000
+
+ unbreak !EC builds
+
+commit 203f5ac6cfa0e257db7509d4bb830e8a4bba6211
+Author: djm@openbsd.org
+Date: Thu Jul 24 06:04:47 2025 +0000
+
+ upstream: test code now needs to link ssh-pkcs11-client.c any time
+
+ sshkey.c is included
+
+ OpenBSD-Regress-ID: 9d07188eae9a96801c3150b3433bb220626d4443
+
+commit 33b4f05c8ddab24aa6c47afb313b8cbd0d4b77f4
+Author: Damien Miller
+Date: Fri Jul 25 12:47:17 2025 +1000
+
+ update clang-16 -> clang-19
+
+commit 03e9e993ef1ef5accc6457152278cab5988f9b3d
+Author: Damien Miller
+Date: Fri Jul 25 12:46:59 2025 +1000
+
+ include ssh-pkcs11-client.o as common dep
+
+commit 2f5269938a8e4769f484c9d45419a86529078ede
+Author: Damien Miller
+Date: Fri Jul 25 12:46:10 2025 +1000
+
+ remove vestigial stub
+
+commit bf33a73c40522ce60961d4fff316a7187fb06ca0
+Author: djm@openbsd.org
+Date: Thu Jul 24 23:27:04 2025 +0000
+
+ upstream: this should include stdlib.h explicitly
+
+ OpenBSD-Commit-ID: 1c0cc5c3838344b33ae4ab7aa62c01530357bf29
+
+commit 9f8ccc3b81b53324cc489f3fe00f03c329c0acb2
+Author: djm@openbsd.org