Index: crypto/openssh/ChangeLog =================================================================== --- /dev/null +++ crypto/openssh/ChangeLog @@ -0,0 +1,10342 @@ +commit fd0fa130ecf06d7d092932adcd5d77f1549bfc8d +Author: Damien Miller +Date: Thu Apr 18 08:52:57 2019 +1000 + + makedepend + +commit 5de397a876b587ba05a9169237deffdc71f273b0 +Author: Damien Miller +Date: Fri Apr 5 11:29:51 2019 -0700 + + second thoughts: leave README in place + + A number of contrib/* files refer to the existing README so let's leave + it in place for release and add the new markdown version in parallel. + + I'll get rid of README after release. + +commit 5d3127d9274519b25ed10e320f45045ba8d7f3be +Author: Damien Miller +Date: Fri Apr 5 11:29:31 2019 -0700 + + Revert "rewrite README" + + This reverts commit 9444d82678cb7781820da4d1c23b3c2b9fb1e12f. + +commit 9444d82678cb7781820da4d1c23b3c2b9fb1e12f +Author: Damien Miller +Date: Fri Apr 5 11:21:48 2019 -0700 + + rewrite README + + Include basic build instructions and comments on commonly-used build- + time flags, links to the manual pages and other resources. + + Now in Markdown format for better viewing on github, etc. + +commit a924de0c4908902433813ba205bee1446bd1a157 +Author: Damien Miller +Date: Fri Apr 5 03:41:52 2019 +1100 + + update versions + +commit 312dcee739bca5d6878c536537b2a8a497314b75 +Author: djm@openbsd.org +Date: Wed Apr 3 15:48:45 2019 +0000 + + upstream: openssh-8.0 + + OpenBSD-Commit-ID: 5aafdf218679dab982fea20771afd643be9a127b + +commit 885bc114692046d55e2a170b932bdc0092fa3456 +Author: Damien Miller +Date: Thu Apr 4 02:47:40 2019 +1100 + + session: Do not use removed API + + from Jakub Jelen + +commit 9d7b2882b0c9a5e9bf8312ce4075bf178e2b98be +Author: djm@openbsd.org +Date: Fri Mar 29 11:31:40 2019 +0000 + + upstream: when logging/fataling on error, include a bit more detail + + than just the function name and the error message + + OpenBSD-Commit-ID: dd72d7eba2215fcb89be516c378f633ea5bcca9f + +commit 79a87d32783d6c9db40af8f35e091d9d30365ae7 +Author: Darren Tucker +Date: Wed Apr 3 06:27:45 2019 +1100 + + Remove "struct ssh" from sys_auth_record_login. + + It's not needed, and is not available from the call site in loginrec.c + Should only affect AIX, spotted by Kevin Brott. + +commit 138c0d52cdc90f9895333b82fc57d81cce7a3d90 +Author: Darren Tucker +Date: Tue Apr 2 18:21:35 2019 +1100 + + Adapt custom_failed_login to new prototype. + + Spotted by Kevin Brott. + +commit a0ca4009ab2f0b1007ec8ab6864dbf9b760a8ed5 +Author: Darren Tucker +Date: Mon Apr 1 20:07:23 2019 +1100 + + Add includes.h for compat layer. + + Should fix build on AIX 7.2. + +commit 00991151786ce9b1d577bdad1f83a81d19c8236d +Author: Tim Rice +Date: Sun Mar 31 22:14:22 2019 -0700 + + Stop USL compilers for erroring with "integral constant expression expected" + +commit 43f47ebbdd4037b569c23b8f4f7981f53b567f1d +Author: Tim Rice +Date: Sun Mar 31 19:22:19 2019 -0700 + + Only use O_NOFOLLOW in fchownat and fchmodat if defined + +commit 342d6e51589b184c337cccfc4c788b60ff8b3765 +Author: Jakub Jelen +Date: Fri Mar 29 12:29:41 2019 +0100 + + Adjust softhsm2 path on Fedora Linux for regress + + The SoftHSM lives in Fedora in /usr/lib64/pkcs11/libsofthsm2.so + +commit f5abb05f8c7358dacdcb866fe2813f6d8efd5830 +Author: Darren Tucker +Date: Thu Mar 28 09:26:14 2019 +1100 + + Only use O_NOFOLLOW in utimensat if defined. + + Fixes build on systems that don't have it (Solaris <=9) Found by + Tom G. Christensen. + +commit 786cd4c1837fdc3fe7b4befe54a3f37db7df8715 +Author: Corinna Vinschen +Date: Wed Mar 27 18:18:21 2019 +0100 + + drop old Cygwin considerations + + - Cygwin supports non-DOS characters in filenames + - Cygwin does not support Windows XP anymore + + Signed-off-by: Corinna Vinschen + +commit 21da87f439b48a85b951ef1518fe85ac0273e719 +Author: djm@openbsd.org +Date: Wed Mar 27 09:29:14 2019 +0000 + + upstream: fix interaction between ClientAliveInterval and RekeyLimit + + that could cause connection to close incorrectly; Report and patch from Jakub + Jelen in bz#2757; ok dtucker@ markus@ + + OpenBSD-Commit-ID: 17229a8a65bd8e6c2080318ec2b7a61e1aede3fb + +commit 4f0019a9afdb4a94d83b75e82dbbbe0cbe826c56 +Author: djm@openbsd.org +Date: Mon Mar 25 22:34:52 2019 +0000 + + upstream: Fix authentication failures when "AuthenticationMethods + + any" in a Match block overrides a more restrictive global default. + + Spotted by jmc@, ok markus@ + + OpenBSD-Commit-ID: a90a4fe2ab81d0eeeb8fdfc21af81f7eabda6666 + +commit d6e5def308610f194c0ec3ef97a34a3e9630e190 +Author: djm@openbsd.org +Date: Mon Mar 25 22:33:44 2019 +0000 + + upstream: whitespace + + OpenBSD-Commit-ID: 106e853ae8a477e8385bc53824d3884a8159db07 + +commit 26e0cef07b04479537c971dec898741df1290fe5 +Author: dtucker@openbsd.org +Date: Mon Mar 25 16:19:44 2019 +0000 + + upstream: Expand comment to document rationale for default key + + sizes. "seems worthwhile" deraadt. + + OpenBSD-Commit-ID: 72e5c0983d7da1fb72f191870f36cb58263a2456 + +commit f47269ea67eb4ff87454bf0d2a03e55532786482 +Author: dtucker@openbsd.org +Date: Mon Mar 25 15:49:00 2019 +0000 + + upstream: Increase the default RSA key size to 3072 bits. Based on + + the estimates from NIST Special Publication 800-57, 3k bits provides security + equivalent to 128 bits which is the smallest symmetric cipher we enable by + default. ok markus@ deraadt@ + + OpenBSD-Commit-ID: 461dd32ebe808f88f4fc3ec74749b0e6bef2276b + +commit 62949c5b37af28d8490d94866e314a76be683a5e +Author: jmc@openbsd.org +Date: Fri Mar 22 20:58:34 2019 +0000 + + upstream: full stop in the wrong place; + + OpenBSD-Commit-ID: 478a0567c83553a2aebf95d0f1bd67ac1b1253e4 + +commit 1b1332b5bb975d759a50b37f0e8bc8cfb07a0bb0 +Author: jmc@openbsd.org +Date: Sat Mar 16 19:14:21 2019 +0000 + + upstream: benno helped me clean up the tcp forwarding section; + + OpenBSD-Commit-ID: d4bec27edefde636fb632b7f0b7c656b9c7b7f08 + +commit 2aee9a49f668092ac5c9d34e904ef7a9722e541d +Author: markus@openbsd.org +Date: Fri Mar 8 17:24:43 2019 +0000 + + upstream: fix use-after-free in ssh-pkcs11; found by hshoexer w/AFL + + OpenBSD-Commit-ID: febce81cca72b71f70513fbee4ff52ca050f675c + +commit 9edbd7821e6837e98e7e95546cede804dac96754 +Author: Darren Tucker +Date: Thu Mar 14 10:17:28 2019 +1100 + + Fix build when configured --without-openssl. + + ok djm@ + +commit 825ab32f0d04a791e9d19d743c61ff8ed9b4d8e5 +Author: Darren Tucker +Date: Thu Mar 14 08:51:17 2019 +1100 + + On Cygwin run sshd as SYSTEM where possible. + + Seteuid now creates user token using S4U. We don't create a token + from scratch anymore, so we don't need the "Create a process token" + privilege. The service can run under SYSTEM again... + + ...unless Cygwin is running on Windows Vista or Windows 7 in the + WOW64 32 bit emulation layer. It turns out that WOW64 on these systems + didn't implement MsV1_0 S4U Logon so we still need the fallback + to NtCreateToken for these systems. + + Signed-off-by: Corinna Vinschen + +commit a212107bfdf4d3e870ab7a443e4d906e5b9578c3 +Author: Darren Tucker +Date: Wed Mar 13 10:49:16 2019 +1100 + + Replace alloca with xcalloc. + + The latter checks for memory exhaustion and integer overflow and may be + at a less predictable place. Sanity check by vinschen at redhat.com, ok + djm@ + +commit daa7505aadca68ba1a2c70cbdfce423208eb91ee +Author: Darren Tucker +Date: Tue Mar 12 09:19:19 2019 +1100 + + Use Cygwin-specific matching only for users+groups. + + Patch from vinschen at redhat.com, updated a little by me. + +commit fd10cf027b56f9aaa80c9e3844626a05066589a4 +Author: dtucker@openbsd.org +Date: Wed Mar 6 22:14:23 2019 +0000 + + upstream: Move checks for lists of users or groups into their own + + function. This is a no-op on OpenBSD but will make things easier in + -portable, eg on systems where these checks should be case-insensitive. ok + djm@ + + OpenBSD-Commit-ID: 8bc9c8d98670e23f8eaaaefe29c1f98e7ba0487e + +commit ab5fee8eb6a011002fd9e32b1597f02aa8804a25 +Author: dtucker@openbsd.org +Date: Wed Mar 6 21:06:59 2019 +0000 + + upstream: Reset last-seen time when sending a keepalive. Prevents + + sending two keepalives successively and prematurely terminating connection + when ClientAliveCount=1. While there, collapse two similar tests into one. + ok markus@ + + OpenBSD-Commit-ID: 043670d201dfe222537a2a4bed16ce1087de5ddd + +commit c13b74530f9f1d9df7aeae012004b31b2de4438e +Author: naddy@openbsd.org +Date: Tue Mar 5 16:17:12 2019 +0000 + + upstream: PKCS#11 support is no longer limited to RSA; ok benno@ + + kn@ + + OpenBSD-Commit-ID: 1a9bec64d530aed5f434a960e7515a3e80cbc826 + +commit e9552d6043db7cd170ac6ba1b4d2c7a5eb2c3201 +Author: djm@openbsd.org +Date: Fri Mar 1 03:29:32 2019 +0000 + + upstream: in ssh_set_newkeys(), mention the direction that we're + + keying in debug messages. Previously it would be difficult to tell which + direction it was talking about + + OpenBSD-Commit-ID: c2b71bfcceb2a7389b9d0b497fb2122a406a522d + +commit 76a24b3fa193a9ca3e47a8779d497cb06500798b +Author: djm@openbsd.org +Date: Fri Mar 1 02:32:39 2019 +0000 + + upstream: Fix two race conditions in sshd relating to SIGHUP: + + 1. Recently-forked child processes will briefly remain listening to + listen_socks. If the main server sshd process completes its restart + via execv() before these sockets are closed by the child processes + then it can fail to listen at the desired addresses/ports and/or + fail to restart. + + 2. When a SIGHUP is received, there may be forked child processes that + are awaiting their reexecution state. If the main server sshd + process restarts before passing this state, these child processes + will yield errors and use a fallback path of reading the current + sshd_config from the filesystem rather than use the one that sshd + was started with. + + To fix both of these cases, we reuse the startup_pipes that are shared + between the main server sshd and forked children. Previously this was + used solely to implement tracking of pre-auth child processes for + MaxStartups, but this extends the messaging over these pipes to include + a child->parent message that the parent process is safe to restart. This + message is sent from the child after it has completed its preliminaries: + closing listen_socks and receiving its reexec state. + + bz#2953, reported by Michal Koutný; ok markus@ dtucker@ + + OpenBSD-Commit-ID: 7df09eacfa3ce13e9a7b1e9f17276ecc924d65ab + +commit de817e9dfab99473017d28cdf69e60397d00ea21 +Author: djm@openbsd.org +Date: Fri Mar 1 02:16:47 2019 +0000 + + upstream: mention PKCS11Provide=none, reword a little and remove + + mention of RSA keys only (since we support ECDSA now and might support others + in the future). Inspired by Jakub Jelen via bz#2974 + + OpenBSD-Commit-ID: a92e3686561bf624ccc64ab320c96c9e9a263aa5 + +commit 95a8058c1a90a27acbb91392ba206854abc85226 +Author: djm@openbsd.org +Date: Fri Mar 1 02:08:50 2019 +0000 + + upstream: let PKCS11Provider=none do what users expect + + print PKCS11Provider instead of obsolete SmartcardDevice in config dump. + + bz#2974 ok dtucker@ + + OpenBSD-Commit-ID: c303d6f0230a33aa2dd92dc9b68843d56a64f846 + +commit 8e7bac35aa576d2fd7560836da83733e864ce649 +Author: markus@openbsd.org +Date: Wed Feb 27 19:37:01 2019 +0000 + + upstream: dup stdout/in for proxycommand=-, otherwise stdout might + + be redirected to /dev/null; ok djm@ + + OpenBSD-Commit-ID: 97dfce4c47ed4055042de8ebde85b7d88793e595 + +commit 9b61130fbd95d196bce81ebeca94a4cb7c0d5ba0 +Author: djm@openbsd.org +Date: Sat Feb 23 08:20:43 2019 +0000 + + upstream: openssh-7.9 accidentally reused the server's algorithm lists + + in the client for KEX, ciphers and MACs. The ciphers and MACs were identical + between the client and server, but the error accidentially disabled the + diffie-hellman-group-exchange-sha1 KEX method. + + This fixes the client code to use the correct method list, but + because nobody complained, it also disables the + diffie-hellman-group-exchange-sha1 KEX method. + + Reported by nuxi AT vault24.org via bz#2697; ok dtucker + + OpenBSD-Commit-ID: e30c33a23c10fd536fefa120e86af1842e33fd57 + +commit 37638c752041d591371900df820f070037878a2d +Author: Corinna Vinschen +Date: Wed Feb 20 13:41:25 2019 +0100 + + Cygwin: implement case-insensitive Unicode user and group name matching + + The previous revert enabled case-insensitive user names again. This + patch implements the case-insensitive user and group name matching. + To allow Unicode chars, implement the matcher using wchar_t chars in + Cygwin-specific code. Keep the generic code changes as small as possible. + Cygwin: implement case-insensitive Unicode user and group name matching + + Signed-off-by: Corinna Vinschen + +commit bed1d43698807a07bb4ddb93a46b0bd84b9970b3 +Author: Darren Tucker +Date: Fri Feb 22 15:21:21 2019 +1100 + + Revert unintended parts of previous commit. + +commit f02afa350afac1b2f2d1413259a27a4ba1e2ca24 +Author: Corinna Vinschen +Date: Wed Feb 20 13:41:24 2019 +0100 + + Revert "[auth.c] On Cygwin, refuse usernames that have differences in case" + + This reverts commit acc9b29486dfd649dfda474e5c1a03b317449f1c. + + Signed-off-by: Corinna Vinschen + +commit 4c55b674835478eb80a1a7aeae588aa654e2a433 +Author: Corinna Vinschen +Date: Sat Feb 16 14:13:43 2019 +0100 + + Add tags to .gitignore + + Signed-off-by: Corinna Vinschen + +commit 625b62634c33eaef4b80d07529954fe5c6435fe5 +Author: djm@openbsd.org +Date: Fri Feb 22 03:37:11 2019 +0000 + + upstream: perform removal of agent-forwarding directory in forward + + setup error path with user's privileged. This is a no-op as this code always + runs with user privilege now that we no longer support running sshd with + privilege separation disabled, but as long as the privsep skeleton is there + we should follow the rules. + MIME-Version: 1.0 + Content-Type: text/plain; charset=UTF-8 + Content-Transfer-Encoding: 8bit + + bz#2969 with patch from Erik Sjölund + + OpenBSD-Commit-ID: 2b708401a5a8d6133c865d7698d9852210dca846 + +commit d9ecfaba0b2f1887d20e4368230632e709ca83be +Author: jmc@openbsd.org +Date: Mon Feb 18 07:02:34 2019 +0000 + + upstream: sync the description of ~/.ssh/config with djm's updated + + description in ssh.1; issue pointed out by andreas kahari + + ok dtucker djm + + OpenBSD-Commit-ID: 1b01ef0ae2c6328165150badae317ec92e52b01c + +commit 38e83e4f219c752ebb1560633b73f06f0392018b +Author: djm@openbsd.org +Date: Tue Feb 12 23:53:10 2019 +0000 + + upstream: fix regression in r1.302 reported by naddy@ - only the first + + public key from the agent was being attempted for use. + + OpenBSD-Commit-ID: 07116aea521a04888718b2157f1ca723b2f46c8d + +commit 5c68ea8da790d711e6dd5f4c30d089c54032c59a +Author: djm@openbsd.org +Date: Mon Feb 11 09:44:42 2019 +0000 + + upstream: cleanup GSSAPI authentication context after completion of the + + authmethod. Move function-static GSSAPI state to the client Authctxt + structure. Make static a bunch of functions that aren't used outside this + file. + + Based on patch from Markus Schmidt ; ok markus@ + + OpenBSD-Commit-ID: 497fb792c0ddb4f1ba631b6eed526861f115dbe5 + +commit a8c807f1956f81a92a758d3d0237d0ff06d0be5d +Author: benno@openbsd.org +Date: Sun Feb 10 16:35:41 2019 +0000 + + upstream: ssh-keygen -D pkcs11.so needs to initialize pkcs11 + + interactive, so it can ask for the smartcards PIN. ok markus@ + + OpenBSD-Commit-ID: 1be7ccf88f1876e0fc4d7c9b3f96019ac5655bab + +commit 3d896c157c722bc47adca51a58dca859225b5874 +Author: djm@openbsd.org +Date: Sun Feb 10 11:15:52 2019 +0000 + + upstream: when checking that filenames sent by the server side + + match what the client requested, be prepared to handle shell-style brace + alternations, e.g. "{foo,bar}". + + "looks good to me" millert@ + in snaps for the last week courtesy + deraadt@ + + OpenBSD-Commit-ID: 3b1ce7639b0b25b2248e3a30f561a548f6815f3e + +commit 318e4f8548a4f5c0c913f61e27d4fc21ffb1eaae +Author: djm@openbsd.org +Date: Sun Feb 10 11:10:57 2019 +0000 + + upstream: syslog when connection is dropped for attempting to run a + + command when ForceCommand=internal-sftp is in effect; bz2960; ok dtucker@ + + OpenBSD-Commit-ID: 8c87fa66d7fc6c0fffa3a3c28e8ab5e8dde234b8 + +commit 2ff2e19653b8c0798b8b8eff209651bdb1be2761 +Author: Damien Miller +Date: Fri Feb 8 14:53:35 2019 +1100 + + don't set $MAIL if UsePam=yes + + PAM typically specifies the user environment if it's enabled, so don't + second guess. bz#2937; ok dtucker@ + +commit 03e92dd27d491fe6d1a54e7b2f44ef1b0a916e52 +Author: Damien Miller +Date: Fri Feb 8 14:50:36 2019 +1100 + + use same close logic for stderr as stdout + + Avoids sending SIGPIPE to child processes after their parent exits + if they attempt to write to stderr. + + Analysis and patch from JD Paul; patch reworked by Jakub Jelen and + myself. bz#2071; ok dtucker@ + +commit 8c53d409baeeaf652c0c125a9b164edc9dbeb6de +Author: dtucker@openbsd.org +Date: Tue Feb 5 11:35:56 2019 +0000 + + upstream: Adapt code in the non-USE_PIPES codepath to the new packet + + API. This code is not normally reachable since USE_PIPES is always defined. + bz#2961, patch from adrian.fita at gmail com. + + OpenBSD-Commit-ID: 8d8428d678d1d5eb4bb21921df34e8173e6d238a + +commit 7a7fdca78de4b4774950be056099e579ef595414 +Author: djm@openbsd.org +Date: Mon Feb 4 23:37:54 2019 +0000 + + upstream: fix NULL-deref crash in PKCS#11 code when attempting + + login to a token requiring a PIN; reported by benno@ fix mostly by markus@ + + OpenBSD-Commit-ID: 438d0b114b1b4ba25a9869733db1921209aa9a31 + +commit cac302a4b42a988e54d32eb254b29b79b648dbf5 +Author: dtucker@openbsd.org +Date: Mon Feb 4 02:39:42 2019 +0000 + + upstream: Remove obsolete "Protocol" from commented out examples. Patch + + from samy.mahmoudi at gmail com. + + OpenBSD-Commit-ID: 16aede33dae299725a03abdac5dcb4d73f5d0cbf + +commit 483b3b638500fd498b4b529356e5a0e18cf76891 +Author: dtucker@openbsd.org +Date: Fri Feb 1 03:52:23 2019 +0000 + + upstream: Save connection timeout and restore for 2nd and + + subsequent attempts, preventing them from having no timeout. bz#2918, ok + djm@ + + OpenBSD-Commit-ID: 4977f1d0521d9b6bba0c9a20d3d226cefac48292 + +commit 5f004620fdc1b2108139300ee12f4014530fb559 +Author: markus@openbsd.org +Date: Wed Jan 30 19:51:15 2019 +0000 + + upstream: Add authors for public domain sntrup4591761 code; + + confirmed by Daniel J. Bernstein + + OpenBSD-Commit-ID: b4621f22b8b8ef13e063c852af5e54dbbfa413c1 + +commit 2c21b75a7be6ebdcbceaebb43157c48dbb36f3d8 +Author: jmc@openbsd.org +Date: Sun Jan 27 07:14:11 2019 +0000 + + upstream: add -T to usage(); + + OpenBSD-Commit-ID: a7ae14d9436c64e1bd05022329187ea3a0ce1899 + +commit 19a0f0529d3df04118da829528cac7ceff380b24 +Author: dtucker@openbsd.org +Date: Mon Jan 28 03:50:39 2019 +0000 + + upstream: The test sshd_config in in $OBJ. + + OpenBSD-Regress-ID: 1e5d908a286d8e7de3a15a0020c8857f3a7c9172 + +commit 8fe25440206319d15b52d12b948a5dfdec14dca3 +Author: dtucker@openbsd.org +Date: Mon Jan 28 03:28:10 2019 +0000 + + upstream: Remove leftover debugging. + + OpenBSD-Regress-ID: 3d86c3d4867e46b35af3fd2ac8c96df0ffdcfeb9 + +commit e30d32364d12c351eec9e14be6c61116f9d6cc90 +Author: dtucker@openbsd.org +Date: Mon Jan 28 00:12:36 2019 +0000 + + upstream: Enable ssh-dss for the agent test. Disable it for the + + certificate test. + + OpenBSD-Regress-ID: 388c1e03e1def539d350f139b37d69f12334668d + +commit ffdde469ed56249f5dc8af98da468dde35531398 +Author: dtucker@openbsd.org +Date: Mon Jan 28 00:08:26 2019 +0000 + + upstream: Count the number of key types instead of assuming there + + are only two. + + OpenBSD-Regress-ID: 0998702c41235782cf0beee396ec49b5056eaed9 + +commit 1d05b4adcba08ab068466e5c08dee2f5417ec53a +Author: Corinna Vinschen +Date: Sat Jan 26 23:42:40 2019 +0100 + + Cygwin: only tweak sshd_config file if it's new, drop creating sshd user + + The sshd_config tweaks were executed even if the old file was + still in place. Fix that. Also disable sshd user creation. + It's not used on Cygwin. + +commit 89843de0c4c733501f6b4f988098e6e06963df37 +Author: Corinna Vinschen +Date: Sat Jan 26 23:03:12 2019 +0100 + + Cygwin: Change service name to cygsshd + + Microsoft hijacked the sshd service name without asking. + +commit 2a9b3a2ce411d16cda9c79ab713c55f65b0ec257 +Author: dtucker@openbsd.org +Date: Sun Jan 27 06:30:53 2019 +0000 + + upstream: Generate all key supported key types and enable for keyscan + + test. + + OpenBSD-Regress-ID: 72f72ff49946c61bc949e1692dd9e3d71370891b + +commit 391ffc4b9d31fa1f4ad566499fef9176ff8a07dc +Author: djm@openbsd.org +Date: Sat Jan 26 22:41:28 2019 +0000 + + upstream: check in scp client that filenames sent during + + remote->local directory copies satisfy the wildcard specified by the user. + + This checking provides some protection against a malicious server + sending unexpected filenames, but it comes at a risk of rejecting wanted + files due to differences between client and server wildcard expansion rules. + + For this reason, this also adds a new -T flag to disable the check. + + reported by Harry Sintonen + fix approach suggested by markus@; + has been in snaps for ~1wk courtesy deraadt@ + + OpenBSD-Commit-ID: 00f44b50d2be8e321973f3c6d014260f8f7a8eda + +commit c2c18a39683db382a15b438632afab3f551d50ce +Author: djm@openbsd.org +Date: Sat Jan 26 22:35:01 2019 +0000 + + upstream: make ssh-keyscan return a non-zero exit status if it + + finds no keys. bz#2903 + + OpenBSD-Commit-ID: 89f1081fb81d950ebb48e6e73d21807b2723d488 + +commit 05b9a466700b44d49492edc2aa415fc2e8913dfe +Author: dtucker@openbsd.org +Date: Thu Jan 24 17:00:29 2019 +0000 + + upstream: Accept the host key fingerprint as a synonym for "yes" + + when accepting an unknown host key. This allows you to paste a fingerprint + obtained out of band into the yes/no prompt and have the client do the + comparison for you. ok markus@ djm@ + + OpenBSD-Commit-ID: 3c47d10b9f43d3d345e044fd9ec09709583a2767 + +commit bdc6c63c80b55bcbaa66b5fde31c1cb1d09a41eb +Author: dtucker@openbsd.org +Date: Thu Jan 24 16:52:17 2019 +0000 + + upstream: Have progressmeter force an update at the beginning and + + end of each transfer. Fixes the problem recently introduces where very quick + transfers do not display the progressmeter at all. Spotted by naddy@ + + OpenBSD-Commit-ID: 68dc46c259e8fdd4f5db3ec2a130f8e4590a7a9a + +commit 258e6ca003e47f944688ad8b8de087b58a7d966c +Author: dtucker@openbsd.org +Date: Thu Jan 24 02:42:23 2019 +0000 + + upstream: Check for both EAGAIN and EWOULDBLOCK. This is a no-op + + in OpenBSD (they are the same value) but makes things easier in -portable + where they may be distinct values. "sigh ok" deraadt@ + + (ID sync only, portable already had this change). + + OpenBSD-Commit-ID: 91f2bc7c0ecec905915ed59fa37feb9cc90e17d7 + +commit 281ce042579b834cdc1e74314f1fb2eeb75d2612 +Author: dtucker@openbsd.org +Date: Thu Jan 24 02:34:52 2019 +0000 + + upstream: Always initialize 2nd arg to hpdelim2. It populates that + + *ONLY IF* there's a delimiter. If there's not (the common case) it checked + uninitialized memory, which usually passed, but if not would cause spurious + failures when the uninitialized memory happens to contain "/". ok deraadt. + + OpenBSD-Commit-ID: 4291611eaf2a53d4c92f4a57c7f267c9f944e0d3 + +commit d05ea255678d9402beda4416cd0360f3e5dfe938 +Author: dtucker@openbsd.org +Date: Wed Jan 23 21:50:56 2019 +0000 + + upstream: Remove support for obsolete host/port syntax. + + host/port was added in 2001 as an alternative to host:port syntax for + the benefit of IPv6 users. These days there are establised standards + for this like [::1]:22 and the slash syntax is easily mistaken for CIDR + notation, which OpenSSH now supports for some things. Remove the slash + notation from ListenAddress and PermitOpen. bz#2335, patch from jjelen + at redhat.com, ok markus@ + + OpenBSD-Commit-ID: fae5f4e23c51a368d6b2d98376069ac2b10ad4b7 + +commit 177d6c80c557a5e060cd343a0c116a2f1a7f43db +Author: dtucker@openbsd.org +Date: Wed Jan 23 20:48:52 2019 +0000 + + upstream: Remove duplicate word. bz#2958, patch from jjelen at + + redhat.com + + OpenBSD-Commit-ID: cca3965a8333f2b6aae48b79ec1d72f7a830dd2c + +commit be3e6cba95dffe5fcf190c713525b48c837e7875 +Author: dtucker@openbsd.org +Date: Wed Jan 23 09:49:00 2019 +0000 + + upstream: Remove 3 as a guess for possible generator during moduli + + generation. It's not mentioned in RFC4419 and it's not possible for + Sophie-Germain primes greater than 5. bz#2330, from Christian Wittenhorst , + ok djm@ tb@ + + OpenBSD-Commit-ID: 1467652e6802ad3333b0959282d8d49dfe22c8cd + +commit 8976f1c4b2721c26e878151f52bdf346dfe2d54c +Author: dtucker@openbsd.org +Date: Wed Jan 23 08:01:46 2019 +0000 + + upstream: Sanitize scp filenames via snmprintf. To do this we move + + the progressmeter formatting outside of signal handler context and have the + atomicio callback called for EINTR too. bz#2434 with contributions from djm + and jjelen at redhat.com, ok djm@ + + OpenBSD-Commit-ID: 1af61c1f70e4f3bd8ab140b9f1fa699481db57d8 + +commit 6249451f381755f792c6b9e2c2f80cdc699c14e2 +Author: Darren Tucker +Date: Thu Jan 24 10:00:20 2019 +1100 + + For broken read/readv comparisons, poll(RW). + + In the cases where we can't compare to read or readv function pointers + for some reason we currently ifdef out the poll() used to block while + waiting for reads or writes, falling back to busy waiting. This restores + the poll() in this case, but has it always check for read or write, + removing an inline ifdef in the process. + +commit 5cb503dff4db251520e8bf7d23b9c97c06eee031 +Author: Darren Tucker +Date: Thu Jan 24 09:55:16 2019 +1100 + + Include unistd.h for strmode(). + +commit f236ca2741f29b5c443c0b2db3aa9afb9ad9befe +Author: Darren Tucker +Date: Thu Jan 24 09:50:58 2019 +1100 + + Also undef SIMPLEQ_FOREACH_SAFE. + + Prevents macro redefinition warning on at least NetBSD 6.1. + +commit be063945e4e7d46b1734d973bf244c350fae172a +Author: djm@openbsd.org +Date: Wed Jan 23 04:51:02 2019 +0000 + + upstream: allow auto-incrementing certificate serial number for certs + + signed in a single commandline. + + OpenBSD-Commit-ID: 39881087641efb8cd83c7ec13b9c98280633f45b + +commit 851f80328931975fe68f71af363c4537cb896da2 +Author: djm@openbsd.org +Date: Wed Jan 23 04:16:22 2019 +0000 + + upstream: move a bunch of global flag variables to main(); make the + + rest static + + OpenBSD-Commit-ID: fa431d92584e81fe99f95882f4c56b43fe3242dc + +commit 2265402dc7d701a9aca9f8a7b7b0fd45b65c479f +Author: Damien Miller +Date: Wed Jan 23 13:03:16 2019 +1100 + + depend + +commit 2c223878e53cc46def760add459f5f7c4fb43e35 +Author: djm@openbsd.org +Date: Wed Jan 23 02:01:10 2019 +0000 + + upstream: switch mainloop from select(2) to poll(2); ok deraadt@ + + OpenBSD-Commit-ID: 37645419a330037d297f6f0adc3b3663e7ae7b2e + +commit bb956eaa94757ad058ff43631c3a7d6c94d38c2f +Author: djm@openbsd.org +Date: Wed Jan 23 00:30:41 2019 +0000 + + upstream: pass most arguments to the KEX hash functions as sshbuf + + rather than pointer+length; ok markus@ + + OpenBSD-Commit-ID: ef0c89c52ccc89817a13a5205725148a28492bf7 + +commit d691588b8e29622c66abf8932362b522cf7f4051 +Author: djm@openbsd.org +Date: Tue Jan 22 22:58:50 2019 +0000 + + upstream: backoff reading messages from active connections when the + + input buffer is too full to read one, or if the output buffer is too full to + enqueue a response; feedback & ok dtucker@ + + OpenBSD-Commit-ID: df3c5b6d57c968975875de40d8955cbfed05a6c8 + +commit f99ef8de967949a1fc25a5c28263ea32736e5943 +Author: djm@openbsd.org +Date: Tue Jan 22 20:48:01 2019 +0000 + + upstream: add -m to usage(); reminded by jmc@ + + OpenBSD-Commit-ID: bca476a5236e8f94210290b3e6a507af0434613e + +commit 41923ce06ac149453debe472238e0cca7d5a2e5f +Author: djm@openbsd.org +Date: Tue Jan 22 12:03:58 2019 +0000 + + upstream: Correct some bugs in PKCS#11 token PIN handling at + + initial login, the attempt at reading the PIN could be skipped in some cases + especially on devices with integrated PIN readers. + + based on patch from Daniel Kucera in bz#2652; ok markus@ + + OpenBSD-Commit-ID: fad70a61c60610afe8bb0db538c90e343e75e58e + +commit 2162171ad517501ba511fa9f8191945d01857bb4 +Author: djm@openbsd.org +Date: Tue Jan 22 12:00:50 2019 +0000 + + upstream: Support keys that set the CKA_ALWAYS_AUTHENTICATE by + + requring a fresh login after the C_SignInit operation. + + based on patch from Jakub Jelen in bz#2638; ok markus + + OpenBSD-Commit-ID: a76e66996ba7c0923b46b74d46d499b811786661 + +commit 7a2cb18a215b2cb335da3dc99489c52a91f4925b +Author: djm@openbsd.org +Date: Tue Jan 22 11:51:25 2019 +0000 + + upstream: Mention that configuration for the destination host is + + not applied to any ProxyJump/-J hosts. This has confused a few people... + + OpenBSD-Commit-ID: 03f4f641df6ca236c1bfc69836a256b873db868b + +commit ecd2f33cb772db4fa76776543599f1c1ab6f9fa0 +Author: djm@openbsd.org +Date: Tue Jan 22 11:40:42 2019 +0000 + + upstream: Include -m in the synopsis for a few more commands that + + support it + + Be more explicit in the description of -m about where it may be used + + Prompted by Jakub Jelen in bz2904 + + OpenBSD-Commit-ID: 3b398ac5e05d8a6356710d0ff114536c9d71046c + +commit ff5d2cf4ca373bb4002eef395ed2cbe2ff0826c1 +Author: djm@openbsd.org +Date: Tue Jan 22 11:26:16 2019 +0000 + + upstream: print the full pubkey being attempted at loglevel >= + + debug2; bz2939 + + OpenBSD-Commit-ID: ac0fe5ca1429ebf4d460bad602adc96de0d7e290 + +commit 180b520e2bab33b566b4b0cbac7d5f9940935011 +Author: djm@openbsd.org +Date: Tue Jan 22 11:19:42 2019 +0000 + + upstream: clarify: ssh-keygen -e only writes public keys, never + + private + + OpenBSD-Commit-ID: 7de7ff6d274d82febf9feb641e2415ffd6a30bfb + +commit c45616a199c322ca674315de88e788f1d2596e26 +Author: djm@openbsd.org +Date: Tue Jan 22 11:00:15 2019 +0000 + + upstream: mention the new vs. old key formats in the introduction + + and give some hints on how keys may be converted or written in the old + format. + + OpenBSD-Commit-ID: 9c90a9f92eddc249e07fad1204d0e15c8aa13823 + +commit fd8eb1383a34c986a00ef13d745ae9bd3ea21760 +Author: jmc@openbsd.org +Date: Tue Jan 22 06:58:31 2019 +0000 + + upstream: tweak previous; + + OpenBSD-Commit-ID: d2a80e389da8e7ed71978643d8cbaa8605b597a8 + +commit 68e924d5473c00057f8532af57741d258c478223 +Author: tb@openbsd.org +Date: Mon Jan 21 23:55:12 2019 +0000 + + upstream: Forgot to add -J to the synopsis. + + OpenBSD-Commit-ID: 26d95e409a0b72526526fc56ca1caca5cc3d3c5e + +commit 622dedf1a884f2927a9121e672bd9955e12ba108 +Author: tb@openbsd.org +Date: Mon Jan 21 22:50:42 2019 +0000 + + upstream: Add a -J option as a shortcut for -o Proxyjump= to scp(1) + + and sftp(1) to match ssh(1)'s interface. + + ok djm + + OpenBSD-Commit-ID: a75bc2d5f329caa7229a7e9fe346c4f41c2663fc + +commit c882d74652800150d538e22c80dd2bd3cdd5fae2 +Author: Darren Tucker +Date: Tue Jan 22 20:38:40 2019 +1100 + + Allow building against OpenSSL dev (3.x) version. + +commit d5520393572eb24aa0e001a1c61f49b104396e45 +Author: Damien Miller +Date: Tue Jan 22 10:50:40 2019 +1100 + + typo + +commit 2de9cec54230998ab10161576f77860a2559ccb7 +Author: Damien Miller +Date: Tue Jan 22 10:49:52 2019 +1100 + + add missing header + +commit 533cfb01e49a2a30354e191669dc3159e03e99a7 +Author: djm@openbsd.org +Date: Mon Jan 21 22:18:24 2019 +0000 + + upstream: switch sntrup implementation source from supercop to + + libpqcrypto; the latter is almost identical but doesn't rely on signed + underflow to implement an optimised integer sort; from markus@ + + OpenBSD-Commit-ID: cd09bbf0e0fcef1bedca69fdf7990dc360567cf8 + +commit d50ab3cd6fb859888a26b4d4e333239b4f6bf573 +Author: Damien Miller +Date: Tue Jan 22 00:02:23 2019 +1100 + + new files need includes.h + +commit c7670b091a7174760d619ef6738b4f26b2093301 +Author: djm@openbsd.org +Date: Mon Jan 21 12:53:35 2019 +0000 + + upstream: add "-v" flags to ssh-add and ssh-pkcs11-helper to turn up + + debug verbosity. + + Make ssh-agent turn on ssh-pkcs11-helper's verbosity when it is run + in debug mode ("ssh-agent -d"), so we get to see errors from the + PKCS#11 code. + + ok markus@ + + OpenBSD-Commit-ID: 0a798643c6a92a508df6bd121253ba1c8bee659d + +commit 49d8c8e214d39acf752903566b105d06c565442a +Author: djm@openbsd.org +Date: Mon Jan 21 12:50:12 2019 +0000 + + upstream: adapt to changes in KEX APIs and file removals + + OpenBSD-Regress-ID: 54d6857e7c58999c7a6d40942ab0fed3529f43ca + +commit 35ecc53a83f8e8baab2e37549addfd05c73c30f1 +Author: djm@openbsd.org +Date: Mon Jan 21 12:35:20 2019 +0000 + + upstream: adapt to changes in KEX API and file removals + + OpenBSD-Regress-ID: 92cad022d3b0d11e08f3e0055d6a14b8f994c0d7 + +commit 7d69aae64c35868cc4f644583ab973113a79480e +Author: djm@openbsd.org +Date: Mon Jan 21 12:29:35 2019 +0000 + + upstream: adapt to bignum1 API removal and bignum2 API change + + OpenBSD-Regress-ID: cea6ff270f3d560de86b355a87a2c95b55a5ca63 + +commit beab553f0a9578ef9bffe28b2c779725e77b39ec +Author: djm@openbsd.org +Date: Mon Jan 21 09:13:41 2019 +0000 + + upstream: remove hack to use non-system libcrypto + + OpenBSD-Regress-ID: ce72487327eee4dfae1ab0212a1f33871fe0809f + +commit 4dc06bd57996f1a46b4c3bababe0d09bc89098f7 +Author: Damien Miller +Date: Mon Jan 21 23:14:04 2019 +1100 + + depend + +commit 70edd73edc4df54e5eee50cd27c25427b34612f8 +Author: djm@openbsd.org +Date: Mon Jan 21 12:08:13 2019 +0000 + + upstream: fix reversed arguments to kex_load_hostkey(); manifested as + + errors in cert-hostkey.sh regress failures. + + OpenBSD-Commit-ID: 12dab63850b844f84d5a67e86d9e21a42fba93ba + +commit f1185abbf0c9108e639297addc77f8757ee00eb3 +Author: djm@openbsd.org +Date: Mon Jan 21 11:22:00 2019 +0000 + + upstream: forgot to cvs add this file in previous series of commits; + + grrr + + OpenBSD-Commit-ID: bcff316c3e7da8fd15333e05d244442c3aaa66b0 + +commit 7bef390b625bdc080f0fd4499ef03cef60fca4fa +Author: djm@openbsd.org +Date: Mon Jan 21 10:44:21 2019 +0000 + + upstream: nothing shall escape this purge + + OpenBSD-Commit-ID: 4795b0ff142b45448f7e15f3c2f77a947191b217 + +commit aaca72d6f1279b842066e07bff797019efeb2c23 +Author: djm@openbsd.org +Date: Mon Jan 21 10:40:11 2019 +0000 + + upstream: rename kex->kem_client_pub -> kex->client_pub now that + + KEM has been renamed to kexgen + + from markus@ ok djm@ + + OpenBSD-Commit-ID: fac6da5dc63530ad0da537db022a9a4cfbe8bed8 + +commit 70867e1ca2eb08bbd494fe9c568df4fd3b35b867 +Author: djm@openbsd.org +Date: Mon Jan 21 10:38:54 2019 +0000 + + upstream: merge kexkem[cs] into kexgen + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 87d886b7f1812ff9355fda1435f6ea9b71a0ac89 + +commit 71e67fff946396caa110a7964da23480757258ff +Author: djm@openbsd.org +Date: Mon Jan 21 10:35:09 2019 +0000 + + upstream: pass values used in KEX hash computation as sshbuf + + rather than pointer+len + + suggested by me; implemented by markus@ ok me + + OpenBSD-Commit-ID: 994f33c464f4a9e0f1d21909fa3e379f5a0910f0 + +commit 4b83e2a2cc0c12e671a77eaba1c1245894f4e884 +Author: djm@openbsd.org +Date: Mon Jan 21 10:33:49 2019 +0000 + + upstream: remove kex_derive_keys_bn wrapper; no unused since the + + DH-like KEX methods have moved to KEM + + from markus@ ok djm@ + + OpenBSD-Commit-ID: bde9809103832f349545e4f5bb733d316db9a060 + +commit 92dda34e373832f34a1944e5d9ebbebb184dedc1 +Author: djm@openbsd.org +Date: Mon Jan 21 10:29:56 2019 +0000 + + upstream: use KEM API for vanilla ECDH + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 6fbff96339a929835536b5730585d1d6057a352c + +commit b72357217cbe510a3ae155307a7be6b9181f1d1b +Author: Damien Miller +Date: Mon Jan 21 23:11:21 2019 +1100 + + fixup missing ssherr.h + +commit 9c9c97e14fe190931f341876ad98213e1e1dc19f +Author: djm@openbsd.org +Date: Mon Jan 21 10:28:01 2019 +0000 + + upstream: use KEM API for vanilla DH KEX + + from markus@ ok djm@ + + OpenBSD-Commit-ID: af56466426b08a8be275412ae2743319e3d277c9 + +commit 2f6a9ddbbf6ca8623c53c323ff17fb6d68d66970 +Author: djm@openbsd.org +Date: Mon Jan 21 10:24:09 2019 +0000 + + upstream: use KEM API for vanilla c25519 KEX + + OpenBSD-Commit-ID: 38d937b85ff770886379dd66a8f32ab0c1c35c1f + +commit dfd591618cdf2c96727ac0eb65f89cf54af0d97e +Author: djm@openbsd.org +Date: Mon Jan 21 10:20:12 2019 +0000 + + upstream: Add support for a PQC KEX/KEM: + + sntrup4591761x25519-sha512@tinyssh.org using the Streamlined NTRU Prime + 4591^761 implementation from SUPERCOP coupled with X25519 as a stop-loss. Not + enabled by default. + + introduce KEM API; a simplified framework for DH-ish KEX methods. + + from markus@ feedback & ok djm@ + + OpenBSD-Commit-ID: d687f76cffd3561dd73eb302d17a1c3bf321d1a7 + +commit b1b2ff4ed559051d1035419f8f236275fa66d5d6 +Author: djm@openbsd.org +Date: Mon Jan 21 10:07:22 2019 +0000 + + upstream: factor out kex_verify_hostkey() - again, duplicated + + almost exactly across client and server for several KEX methods. + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 4e4a16d949dadde002a0aacf6d280a684e20829c + +commit bb39bafb6dc520cc097780f4611a52da7f19c3e2 +Author: djm@openbsd.org +Date: Mon Jan 21 10:05:09 2019 +0000 + + upstream: factor out kex_load_hostkey() - this is duplicated in + + both the client and server implementations for most KEX methods. + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 8232fa7c21fbfbcaf838313b0c166dc6c8762f3c + +commit dec5e9d33891e3bc3f1395d7db0e56fdc7f86dfc +Author: djm@openbsd.org +Date: Mon Jan 21 10:03:37 2019 +0000 + + upstream: factor out kex_dh_compute_key() - it's shared between + + plain DH KEX and DH GEX in both the client and server implementations + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 12186e18791fffcd4642c82e7e0cfdd7ea37e2ec + +commit e93bd98eab79b9a78f64ee8dd4dffc4d3979c7ae +Author: djm@openbsd.org +Date: Mon Jan 21 10:00:23 2019 +0000 + + upstream: factor out DH keygen; it's identical between the client + + and the server + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 2be57f6a0d44f1ab2c8de2b1b5d6f530c387fae9 + +commit 5ae3f6d314465026d028af82609c1d49ad197655 +Author: djm@openbsd.org +Date: Mon Jan 21 09:55:52 2019 +0000 + + upstream: save the derived session id in kex_derive_keys() rather + + than making each kex method implementation do it. + + from markus@ ok djm@ + + OpenBSD-Commit-ID: d61ade9c8d1e13f665f8663c552abff8c8a30673 + +commit 7be8572b32a15d5c3dba897f252e2e04e991c307 +Author: djm@openbsd.org +Date: Mon Jan 21 09:54:11 2019 +0000 + + upstream: Make sshpkt_get_bignum2() allocate the bignum it is + + parsing rather than make the caller do it. Saves a lot of boilerplate code. + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 576bf784f9a240f5a1401f7005364e59aed3bce9 + +commit 803178bd5da7e72be94ba5b4c4c196d4b542da4d +Author: djm@openbsd.org +Date: Mon Jan 21 09:52:25 2019 +0000 + + upstream: remove obsolete (SSH v.1) sshbuf_get/put_bignum1 + + functions + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 0380b1b2d9de063de3c5a097481a622e6a04943e + +commit f3ebaffd8714be31d4345f90af64992de4b3bba2 +Author: djm@openbsd.org +Date: Mon Jan 21 09:49:37 2019 +0000 + + upstream: fix all-zero check in kexc25519_shared_key + + from markus@ ok djm@ + + OpenBSD-Commit-ID: 60b1d364e0d9d34d1d1ef1620cb92e36cf06712d + +commit 9d1a9771d0ad3a83af733bf3d2650b53f43c269f +Author: jmc@openbsd.org +Date: Mon Jan 21 07:09:10 2019 +0000 + + upstream: - -T was added to the first synopsis by mistake - since + + "..." denotes optional, no need to surround it in [] + + ok djm + + OpenBSD-Commit-ID: 918f6d8eed4e0d8d9ef5eadae1b8983d796f0e25 + +commit 2f0bad2bf85391dbb41315ab55032ec522660617 +Author: Darren Tucker +Date: Mon Jan 21 21:28:27 2019 +1100 + + Make --with-rpath take a flag instead of yes/no. + + Linkers need various flags for -rpath and similar, so make --with-rpath + take an optional flag argument which is passed to the linker. ok djm@ + +commit 23490a6c970ea1d03581a3b4208f2eb7a675f453 +Author: Damien Miller +Date: Mon Jan 21 15:05:43 2019 +1100 + + fix previous test + +commit b6dd3277f2c49f9584a2097bc792e8f480397e87 +Author: Darren Tucker +Date: Mon Jan 21 13:50:17 2019 +1100 + + Wrap ECC static globals in EC_KEY_METHOD_NEW too. + +commit b2eb9db35b7191613f2f4b934d57b25938bb34b3 +Author: Damien Miller +Date: Mon Jan 21 12:53:40 2019 +1100 + + pass TEST_SSH_SSHPKCS11HELPER to regress tests + +commit ba58a529f45b3dae2db68607d8c54ae96e90e705 +Author: Damien Miller +Date: Mon Jan 21 12:31:29 2019 +1100 + + make agent-pkcs11 search harder for softhsm2.so + +commit 662be40c62339ab645113c930ce689466f028938 +Author: djm@openbsd.org +Date: Mon Jan 21 02:05:38 2019 +0000 + + upstream: always print the caller's error message in ossl_error(), + + even when there are no libcrypto errors to report. + + OpenBSD-Commit-ID: 09ebaa8f706e0eccedd209775baa1eee2ada806a + +commit ce46c3a077dfb4c531ccffcfff03f37775725b75 +Author: djm@openbsd.org +Date: Mon Jan 21 02:01:03 2019 +0000 + + upstream: get the ex_data (pkcs11_key object) back from the keys at + + the index at which it was inserted, rather than assuming index 0 + + OpenBSD-Commit-ID: 1f3a6ce0346c8014e895e50423bef16401510aa8 + +commit 0a5f2ea35626022299ece3c8817a1abe8cf37b3e +Author: djm@openbsd.org +Date: Mon Jan 21 01:05:00 2019 +0000 + + upstream: GSSAPI code got missed when converting to new packet API + + OpenBSD-Commit-ID: 37e4f06ab4a0f4214430ff462ba91acba28b7851 + +commit 2efcf812b4c1555ca3aff744820a3b3bccd68298 +Author: Damien Miller +Date: Mon Jan 21 11:57:21 2019 +1100 + + Fix -Wunused when compiling PKCS#11 without ECDSA + +commit 3c0c657ed7cd335fc05c0852d88232ca7e92a5d9 +Author: djm@openbsd.org +Date: Sun Jan 20 23:26:44 2019 +0000 + + upstream: allow override of ssh-pkcs11-helper binary via + + $TEST_SSH_SSHPKCS11HELPER from markus@ + + OpenBSD-Regress-ID: 7382a3d76746f5a792d106912a5819fd5e49e469 + +commit 760ae37b4505453c6fa4faf1aa39a8671ab053af +Author: djm@openbsd.org +Date: Sun Jan 20 23:25:25 2019 +0000 + + upstream: adapt agent-pkcs11.sh test to softhsm2 and add support + + for ECDSA keys + + work by markus@, ok djm@ + + OpenBSD-Regress-ID: 1ebc2be0e88eff1b6d8be2f9c00cdc60723509fe + +commit b2ce8b31a1f974a13e6d12e0a0c132b50bc45115 +Author: djm@openbsd.org +Date: Sun Jan 20 23:24:19 2019 +0000 + + upstream: add "extra:" target to run some extra tests that are not + + enabled by default (currently includes agent-pkcs11.sh); from markus@ + + OpenBSD-Regress-ID: 9a969e1adcd117fea174d368dcb9c61eb50a2a3c + +commit 632976418d60b7193597bbc6ac7ca33981a41aab +Author: djm@openbsd.org +Date: Mon Jan 21 00:47:34 2019 +0000 + + upstream: use ECDSA_SIG_set0() instead of poking signature values into + + structure directly; the latter works on LibreSSL but not on OpenSSL. From + portable. + + OpenBSD-Commit-ID: 5b22a1919d9cee907d3f8a029167f70a481891c6 + +commit 5de6ac2bad11175135d9b819b3546db0ca0b4878 +Author: Damien Miller +Date: Mon Jan 21 11:44:19 2019 +1100 + + remove HAVE_DLOPEN that snuck in + + portable doesn't use this + +commit e2cb445d786f7572da2af93e3433308eaed1093a +Author: Damien Miller +Date: Mon Jan 21 11:32:28 2019 +1100 + + conditionalise ECDSA PKCS#11 support + + Require EC_KEY_METHOD support in libcrypto, evidenced by presence + of EC_KEY_METHOD_new() function. + +commit fcb1b0937182d0137a3c357c89735d0dc5869d54 +Author: djm@openbsd.org +Date: Sun Jan 20 23:12:35 2019 +0000 + + upstream: we use singleton pkcs#11 RSA_METHOD and EC_KEY_METHOD + + now, so there is no need to keep a copy of each in the pkcs11_key object. + + work by markus@, ok djm@ + + OpenBSD-Commit-ID: 43b4856516e45c0595f17a8e95b2daee05f12faa + +commit 6529409e85890cd6df7e5e81d04e393b1d2e4b0b +Author: djm@openbsd.org +Date: Sun Jan 20 23:11:11 2019 +0000 + + upstream: KNF previous; from markus@ + + OpenBSD-Commit-ID: 3dfe35e25b310c3968b1e4e53a0cb1d03bda5395 + +commit 58622a8c82f4e2aad630580543f51ba537c1f39e +Author: djm@openbsd.org +Date: Sun Jan 20 23:10:33 2019 +0000 + + upstream: use OpenSSL's RSA reference counting hooks to + + implicitly clean up pkcs11_key objects when their owning RSA object's + reference count drops to zero. Simplifies the cleanup path and makes it more + like ECDSA's + + work by markus@, ok djm@ + + OpenBSD-Commit-ID: 74b9c98f405cd78f7148e9e4a4982336cd3df25c + +commit f118542fc82a3b3ab0360955b33bc5a271ea709f +Author: djm@openbsd.org +Date: Sun Jan 20 23:08:24 2019 +0000 + + upstream: make the PKCS#11 RSA code more like the new PKCS#11 + + ECDSA code: use a single custom RSA_METHOD instead of a method per key + + suggested by me, but markus@ did all the work. + ok djm@ + + OpenBSD-Commit-ID: 8aafcebe923dc742fc5537a995cee549d07e4b2e + +commit 445cfce49dfc904c6b8ab25afa2f43130296c1a5 +Author: djm@openbsd.org +Date: Sun Jan 20 23:05:52 2019 +0000 + + upstream: fix leak of ECDSA pkcs11_key objects + + work by markus, ok djm@ + + OpenBSD-Commit-ID: 9fc0c4f1d640aaa5f19b8d70f37ea19b8ad284a1 + +commit 8a2467583f0b5760787273796ec929190c3f16ee +Author: djm@openbsd.org +Date: Sun Jan 20 23:03:26 2019 +0000 + + upstream: use EVP_PKEY_get0_EC_KEY() instead of direct access of + + EC_KEY internals as that won't work on OpenSSL + + work by markus@, feedback and ok djm@ + + OpenBSD-Commit-ID: 4a99cdb89fbd6f5155ef8c521c99dc66e2612700 + +commit 24757c1ae309324e98d50e5935478655be04e549 +Author: djm@openbsd.org +Date: Sun Jan 20 23:01:59 2019 +0000 + + upstream: cleanup PKCS#11 ECDSA pubkey loading: the returned + + object should never have a DER header + + work by markus; feedback and ok djm@ + + OpenBSD-Commit-ID: b617fa585eddbbf0b1245b58b7a3c4b8d613db17 + +commit 749aef30321595435ddacef2f31d7a8f2b289309 +Author: djm@openbsd.org +Date: Sun Jan 20 23:00:12 2019 +0000 + + upstream: cleanup unnecessary code in ECDSA pkcs#11 signature + + work by markus@, feedback and ok djm@ + + OpenBSD-Commit-ID: affa5ca7d58d59fbd16169f77771dcdbd2b0306d + +commit 0c50992af49b562970dd0ba3f8f151f1119e260e +Author: djm@openbsd.org +Date: Sun Jan 20 22:57:45 2019 +0000 + + upstream: cleanup pkcs#11 client code: use sshkey_new in instead + + of stack- allocating a sshkey + + work by markus@, ok djm@ + + OpenBSD-Commit-ID: a048eb6ec8aa7fa97330af927022c0da77521f91 + +commit 854bd8674ee5074a239f7cadf757d55454802e41 +Author: djm@openbsd.org +Date: Sun Jan 20 22:54:30 2019 +0000 + + upstream: allow override of the pkcs#11 helper binary via + + $SSH_PKCS11_HELPER; needed for regress tests. + + work by markus@, ok me + + OpenBSD-Commit-ID: f78d8185500bd7c37aeaf7bd27336db62f0f7a83 + +commit 93f02107f44d63a016d8c23ebd2ca9205c495c48 +Author: djm@openbsd.org +Date: Sun Jan 20 22:51:37 2019 +0000 + + upstream: add support for ECDSA keys in PKCS#11 tokens + + Work by markus@ and Pedro Martelletto, feedback and ok me@ + + OpenBSD-Commit-ID: a37d651e221341376636056512bddfc16efb4424 + +commit aa22c20e0c36c2fc610cfcc793b0d14079c38814 +Author: djm@openbsd.org +Date: Sun Jan 20 22:03:29 2019 +0000 + + upstream: add option to test whether keys in an agent are usable, + + by performing a signature and a verification using each key "ssh-add -T + pubkey [...]" + + work by markus@, ok djm@ + + OpenBSD-Commit-ID: 931b888a600b6a883f65375bd5f73a4776c6d19b + +commit a36b0b14a12971086034d53c0c3dfbad07665abe +Author: tb@openbsd.org +Date: Sun Jan 20 02:01:59 2019 +0000 + + upstream: Fix BN_is_prime_* calls in SSH, the API returns -1 on + + error. + + Found thanks to BoringSSL's commit 53409ee3d7595ed37da472bc73b010cd2c8a5ffd + by David Benjamin. + + ok djm, dtucker + + OpenBSD-Commit-ID: 1ee832be3c44b1337f76b8562ec6d203f3b072f8 + +commit ec4776bb01dd8d61fddc7d2a31ab10bf3d3d829a +Author: dtucker@openbsd.org +Date: Sun Jan 20 01:12:40 2019 +0000 + + upstream: DH-GEX min value is now specified in RFC8270. ok djm@ + + OpenBSD-Commit-ID: 1229d0feb1d0ecefe05bf67a17578b263e991acc + +commit c90a7928c4191303e76a8c58b9008d464287ae1b +Author: Darren Tucker +Date: Mon Jan 21 09:22:36 2019 +1100 + + Check for cc before gcc. + + If cc is something other than gcc and is the system compiler prefer using + that, unless otherwise told via $CC. ok djm@ + +commit 9b655dc9c9a353f0a527f0c6c43a5e35653c9503 +Author: Damien Miller +Date: Sun Jan 20 14:55:27 2019 +1100 + + last bits of old packet API / active_state global + +commit 3f0786bbe73609ac96e5a0d91425ee21129f8e04 +Author: Damien Miller +Date: Sun Jan 20 10:22:18 2019 +1100 + + remove PAM dependencies on old packet API + + Requires some caching of values, because the PAM code isn't + always called with packet context. + +commit 08f66d9f17e12c1140d1f1cf5c4dce67e915d3cc +Author: Damien Miller +Date: Sun Jan 20 09:58:45 2019 +1100 + + remove vestiges of old packet API from loginrec.c + +commit c327813ea1d740e3e367109c17873815aba1328e +Author: Damien Miller +Date: Sun Jan 20 09:45:38 2019 +1100 + + depend + +commit 135e302cfdbe91817294317c337cc38c3ff01cba +Author: djm@openbsd.org +Date: Sat Jan 19 22:30:52 2019 +0000 + + upstream: fix error in refactor: use ssh_packet_disconnect() instead of + + sshpkt_error(). The first one logs the error and exits (what we want) instead + of just logging and blundering on. + + OpenBSD-Commit-ID: 39f51b43641dce9ce0f408ea6c0e6e077e2e91ae + +commit 245c6a0b220b58686ee35bc5fc1c359e9be2faaa +Author: djm@openbsd.org +Date: Sat Jan 19 21:45:31 2019 +0000 + + upstream: remove last traces of old packet API! + + with & ok markus@ + + OpenBSD-Commit-ID: 9bd10437026423eb8245636ad34797a20fbafd7d + +commit 04c091fc199f17dacf8921df0a06634b454e2722 +Author: djm@openbsd.org +Date: Sat Jan 19 21:43:56 2019 +0000 + + upstream: remove last references to active_state + + with & ok markus@ + + OpenBSD-Commit-ID: 78619a50ea7e4ca2f3b54d4658b3227277490ba2 + +commit ec00f918b8ad90295044266c433340a8adc93452 +Author: djm@openbsd.org +Date: Sat Jan 19 21:43:07 2019 +0000 + + upstream: convert monitor.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 61ecd154bd9804461a0cf5f495a29d919e0014d5 + +commit 6350e0316981489d4205952d6904d6fedba5bfe0 +Author: djm@openbsd.org +Date: Sat Jan 19 21:42:30 2019 +0000 + + upstream: convert sshd.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: ea569d3eaf9b5cf1bad52779fbfa5fa0b28af891 + +commit a5e2ad88acff2b7d131ee6d5dc5d339b0f8c6a6d +Author: djm@openbsd.org +Date: Sat Jan 19 21:41:53 2019 +0000 + + upstream: convert session.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: fae817207e23099ddd248960c984f7b7f26ea68e + +commit 3a00a921590d4c4b7e96df11bb10e6f9253ad45e +Author: djm@openbsd.org +Date: Sat Jan 19 21:41:18 2019 +0000 + + upstream: convert auth.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 7e10359f614ff522b52a3f05eec576257794e8e4 + +commit 7ec5cb4d15ed2f2c5c9f5d00e6b361d136fc1e2d +Author: djm@openbsd.org +Date: Sat Jan 19 21:40:48 2019 +0000 + + upstream: convert serverloop.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: c92dd19b55457541478f95c0d6b318426d86d885 + +commit 64c9598ac05332d1327cbf55334dee4172d216c4 +Author: djm@openbsd.org +Date: Sat Jan 19 21:40:21 2019 +0000 + + upstream: convert the remainder of sshconnect2.c to new packet + + API + + with & ok markus@ + + OpenBSD-Commit-ID: 0986d324f2ceb5e8a12ac21c1bb10b3b4b1e0f71 + +commit bc5e1169d101d16e3a5962a928db2bc49a8ef5a3 +Author: djm@openbsd.org +Date: Sat Jan 19 21:39:12 2019 +0000 + + upstream: convert the remainder of clientloop.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: ce2fbbacb86a290f31da1e7bf04cddf2bdae3d1e + +commit 5ebce136a6105f084db8f0d7ee41981d42daec40 +Author: Damien Miller +Date: Sun Jan 20 09:44:53 2019 +1100 + + upstream: convert auth2.c to new packet API + + OpenBSD-Commit-ID: ed831bb95ad228c6791bc18b60ce7a2edef2c999 + +commit 172a592a53ebe8649c4ac0d7946e6c08eb151af6 +Author: djm@openbsd.org +Date: Sat Jan 19 21:37:48 2019 +0000 + + upstream: convert servconf.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 126553aecca302c9e02fd77e333b9cb217e623b4 + +commit 8cc7a679d29cf6ecccfa08191e688c7f81ef95c2 +Author: djm@openbsd.org +Date: Sat Jan 19 21:37:13 2019 +0000 + + upstream: convert channels.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 0b8279b56113cbd4011fc91315c0796b63dc862c + +commit 06232038c794c7dfcb087be0ab0b3e65b09fd396 +Author: djm@openbsd.org +Date: Sat Jan 19 21:36:38 2019 +0000 + + upstream: convert sshconnect.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 222337cf6c96c347f1022d976fac74b4257c061f + +commit 25b2ed667216314471bb66752442c55b95792dc3 +Author: djm@openbsd.org +Date: Sat Jan 19 21:36:06 2019 +0000 + + upstream: convert ssh.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: eb146878b24e85c2a09ee171afa6797c166a2e21 + +commit e3128b38623eef2fa8d6e7ae934d3bd08c7e973e +Author: djm@openbsd.org +Date: Sat Jan 19 21:35:25 2019 +0000 + + upstream: convert mux.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 4e3893937bae66416e984b282d8f0f800aafd802 + +commit ed1df7226caf3a943a36d580d4d4e9275f8a61ee +Author: djm@openbsd.org +Date: Sat Jan 19 21:34:45 2019 +0000 + + upstream: convert sshconnect2.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 1cb869e0d6e03539f943235641ea070cae2ebc58 + +commit 23f22a4aaa923c61ec49a99ebaa383656e87fa40 +Author: djm@openbsd.org +Date: Sat Jan 19 21:33:57 2019 +0000 + + upstream: convert clientloop.c to new packet API + + with & ok markus@ + + OpenBSD-Commit-ID: 497b36500191f452a22abf283aa8d4a9abaee7fa + +commit ad60b1179c9682ca5aef0b346f99ef68cbbbc4e5 +Author: djm@openbsd.org +Date: Sat Jan 19 21:33:13 2019 +0000 + + upstream: allow sshpkt_fatal() to take a varargs format; we'll + + use this to give packet-related fatal error messages more context (esp. the + remote endpoint) ok markus@ + + OpenBSD-Commit-ID: de57211f9543426b515a8a10a4f481666b2b2a50 + +commit 0fa174ebe129f3d0aeaf4e2d1dd8de745870d0ff +Author: djm@openbsd.org +Date: Sat Jan 19 21:31:32 2019 +0000 + + upstream: begin landing remaining refactoring of packet parsing + + API, started almost exactly six years ago. + + This change stops including the old packet_* API by default and makes + each file that requires the old API include it explicitly. We will + commit file-by-file refactoring to remove the old API in consistent + steps. + + with & ok markus@ + + OpenBSD-Commit-ID: 93c98a6b38f6911fd1ae025a1ec57807fb4d4ef4 + +commit 4ae7f80dfd02f2bde912a67c9f338f61e90fa79f +Author: tb@openbsd.org +Date: Sat Jan 19 04:15:56 2019 +0000 + + upstream: Print an \r in front of the password prompt so parts of + + a password that was entered too early are likely clobbered by the prompt. + Idea from doas. + + from and ok djm + "i like it" deraadt + + OpenBSD-Commit-ID: 5fb97c68df6d8b09ab37f77bca1d84d799c4084e + +commit a6258e5dc314c7d504ac9f0fbc3be96475581dbe +Author: Darren Tucker +Date: Fri Jan 18 11:09:01 2019 +1100 + + Add minimal fchownat and fchmodat implementations. + + Fixes builds on at least OS X Lion, NetBSD 6 and Solaris 10. + +commit 091093d25802b87d3b2b09f2c88d9f33e1ae5562 +Author: Darren Tucker +Date: Fri Jan 18 12:11:42 2019 +1300 + + Add a minimal implementation of utimensat(). + + Some systems (eg older OS X) do not have utimensat, so provide minimal + implementation in compat layer. Fixes build on at least El Capitan. + +commit 609644027dde1f82213699cb6599e584c7efcb75 +Author: djm@openbsd.org +Date: Tue Jan 1 22:20:16 2019 +0000 + + upstream: regress bits for banner processing refactor (this test was + + depending on ssh returning a particular error message for banner parsing + failure) + + reminded by bluhm@ + + OpenBSD-Regress-ID: f24fc303d40931157431df589b386abf5e1be575 + +commit f47d72ddad75b93d3cbc781718b0fa9046c03df8 +Author: djm@openbsd.org +Date: Thu Jan 17 04:45:09 2019 +0000 + + upstream: tun_fwd_ifnames variable should b + + =?UTF-8?q?e=20extern;=20from=20Hanno=20B=C3=B6ck?= + MIME-Version: 1.0 + Content-Type: text/plain; charset=UTF-8 + Content-Transfer-Encoding: 8bit + + OpenBSD-Commit-ID: d53dede6e521161bf04d39d09947db6253a38271 + +commit 943d0965263cae1c080ce5a9d0b5aa341885e55d +Author: djm@openbsd.org +Date: Thu Jan 17 04:20:53 2019 +0000 + + upstream: include time.h for time(3)/nanosleep(2); from Ian + + McKellar + + OpenBSD-Commit-ID: 6412ccd06a88f65b207a1089345f51fa1244ea51 + +commit dbb4dec6d5d671b5e9d67ef02162a610ad052068 +Author: djm@openbsd.org +Date: Thu Jan 17 01:50:24 2019 +0000 + + upstream: many of the global variables in this file can be made static; + + patch from Markus Schmidt + + OpenBSD-Commit-ID: f3db619f67beb53257b21bac0e92b4fb7d5d5737 + +commit 60d8c84e0887514c99c9ce071965fafaa1c3d34a +Author: djm@openbsd.org +Date: Wed Jan 16 23:23:45 2019 +0000 + + upstream: Add "-h" flag to sftp chown/chgrp/chmod commands to + + request they do not follow symlinks. Requires recently-committed + lsetstat@openssh.com extension on the server side. + + ok markus@ dtucker@ + + OpenBSD-Commit-ID: f93bb3f6f7eb2fb7ef1e59126e72714f1626d604 + +commit dbbc7e0eab7262f34b8e0cd6efecd1c77b905ed0 +Author: djm@openbsd.org +Date: Wed Jan 16 23:22:10 2019 +0000 + + upstream: add support for a "lsetstat@openssh.com" extension. This + + replicates the functionality of the existing SSH2_FXP_SETSTAT operation but + does not follow symlinks. Based on a patch from Bert Haverkamp in bz#2067 but + with more attribute modifications supported. + + ok markus@ dtucker@ + + OpenBSD-Commit-ID: f7234f6e90db19655d55d936a115ee4ccb6aaf80 + +commit 4a526941d328fc3d97068c6a4cbd9b71b70fe5e1 +Author: djm@openbsd.org +Date: Fri Jan 4 03:27:50 2019 +0000 + + upstream: eliminate function-static attempt counters for + + passwd/kbdint authmethods by moving them to the client authctxt; Patch from + Markus Schmidt, ok markus@ + + OpenBSD-Commit-ID: 4df4404a5d5416eb056f68e0e2f4fa91ba3b3f7f + +commit 8a8183474c41bd6cebaa917346b549af2239ba2f +Author: djm@openbsd.org +Date: Fri Jan 4 03:23:00 2019 +0000 + + upstream: fix memory leak of ciphercontext when rekeying; bz#2942 + + Patch from Markus Schmidt; ok markus@ + + OpenBSD-Commit-ID: 7877f1b82e249986f1ef98d0ae76ce987d332bdd + +commit 5bed70afce0907b6217418d0655724c99b683d93 +Author: djm@openbsd.org +Date: Tue Jan 1 23:10:53 2019 +0000 + + upstream: static on global vars, const on handler tables that contain + + function pointers; from Mike Frysinger + + OpenBSD-Commit-ID: 7ef2305e50d3caa6326286db43cf2cfaf03960e0 + +commit 007a88b48c97d092ed2f501bbdcb70d9925277be +Author: djm@openbsd.org +Date: Thu Dec 27 23:02:11 2018 +0000 + + upstream: Request RSA-SHA2 signatures for + + rsa-sha2-{256|512}-cert-v01@openssh.com cert algorithms; ok markus@ + + OpenBSD-Commit-ID: afc6f7ca216ccd821656d1c911d2a3deed685033 + +commit eb347d086c35428c47fe52b34588cbbc9b49d9a6 +Author: djm@openbsd.org +Date: Thu Dec 27 03:37:49 2018 +0000 + + upstream: ssh_packet_set_state() now frees ssh->kex implicitly, so + + don't do explicit kex_free() beforehand + + OpenBSD-Regress-ID: f2f73bad47f62a2040ccba0a72cadcb12eda49cf + +commit bb542f0cf6f7511a22a08c492861e256a82376a9 +Author: tedu@openbsd.org +Date: Sat Dec 15 00:50:21 2018 +0000 + + upstream: remove unused and problematic sudo clean. ok espie + + OpenBSD-Regress-ID: ca90c20a15a85b661e13e98b80c10e65cd662f7b + +commit 0a843d9a0e805f14653a555f5c7a8ba99d62c12d +Author: djm@openbsd.org +Date: Thu Dec 27 03:25:24 2018 +0000 + + upstream: move client/server SSH-* banners to buffers under + + ssh->kex and factor out the banner exchange. This eliminates some common code + from the client and server. + + Also be more strict about handling \r characters - these should only + be accepted immediately before \n (pointed out by Jann Horn). + + Inspired by a patch from Markus Schmidt. + (lots of) feedback and ok markus@ + + OpenBSD-Commit-ID: 1cc7885487a6754f63641d7d3279b0941890275b + +commit 434b587afe41c19391821e7392005068fda76248 +Author: dtucker@openbsd.org +Date: Fri Dec 7 04:36:09 2018 +0000 + + upstream: Fix calculation of initial bandwidth limits. Account for + + written bytes before the initial timer check so that the first buffer written + is accounted. Set the threshold after which the timer is checked such that + the limit starts being computed as soon as possible, ie after the second + buffer is written. This prevents an initial burst of traffic and provides a + more accurate bandwidth limit. bz#2927, ok djm. + + OpenBSD-Commit-ID: ff3ef76e4e43040ec198c2718d5682c36b255cb6 + +commit a6a0788cbbe8dfce2819ee43b09c80725742e21c +Author: djm@openbsd.org +Date: Fri Dec 7 03:39:40 2018 +0000 + + upstream: only consider the ext-info-c extension during the initial + + KEX. It shouldn't be sent in subsequent ones, but if it is present we should + ignore it. + + This prevents sshd from sending a SSH_MSG_EXT_INFO for REKEX for buggy + these clients. Reported by Jakub Jelen via bz2929; ok dtucker@ + + OpenBSD-Commit-ID: 91564118547f7807030ec537480303e2371902f9 + +commit 63bba57a32c5bb6158d57cf4c47022daf89c14a0 +Author: djm@openbsd.org +Date: Fri Dec 7 03:33:18 2018 +0000 + + upstream: fix option letter pasto in previous + + OpenBSD-Commit-ID: e26c8bf2f2a808f3c47960e1e490d2990167ec39 + +commit 737e4edd82406595815efadc28ed5161b8b0c01a +Author: djm@openbsd.org +Date: Fri Dec 7 03:32:26 2018 +0000 + + upstream: mention that the ssh-keygen -F (find host in + + authorized_keys) and -R (remove host from authorized_keys) options may accept + either a bare hostname or a [hostname]:port combo. bz#2935 + + OpenBSD-Commit-ID: 5535cf4ce78375968b0d2cd7aa316fa3eb176780 + +commit 8a22ffaa13391cfe5b40316d938fe0fb931e9296 +Author: Damien Miller +Date: Fri Dec 7 15:41:16 2018 +1100 + + expose $SSH_CONNECTION in the PAM environment + + This makes the connection 4-tuple available to PAM modules that + wish to use it in decision-making. bz#2741 + +commit a784fa8c7a7b084d63bae82ccfea902131bb45c5 +Author: Kevin Adler +Date: Wed Dec 12 22:12:45 2018 -0600 + + Don't pass loginmsg by address now that it's an sshbuf* + + In 120a1ec74, loginmsg was changed from the legacy Buffer type + to struct sshbuf*, but it missed changing calls to + sys_auth_allowed_user and sys_auth_record_login which passed + loginmsg by address. Now that it's a pointer, just pass it directly. + + This only affects AIX, unless there are out of tree users. + +commit 285310b897969a63ef224d39e7cc2b7316d86940 +Author: djm@openbsd.org +Date: Fri Dec 7 02:31:20 2018 +0000 + + upstream: no need to allocate channels_pre/channels_post in + + channel_init_channels() as we do it anyway in channel_handler_init() that we + call at the end of the function. Fix from Markus Schmidt via bz#2938 + + OpenBSD-Commit-ID: 74893638af49e3734f1e33a54af1b7ea533373ed + +commit 87d6cf1cbc91df6815db8fe0acc7c910bc3d18e4 +Author: djm@openbsd.org +Date: Fri Nov 30 02:24:52 2018 +0000 + + upstream: don't attempt to connect to empty SSH_AUTH_SOCK; bz#293 + + OpenBSD-Commit-ID: 0e8fc8f19f14b21adef7109e0faa583d87c0e929 + +commit 91b19198c3f604f5eef2c56dbe36f29478243141 +Author: djm@openbsd.org +Date: Wed Nov 28 06:00:38 2018 +0000 + + upstream: don't truncate user or host name in "user@host's + + OpenBSD-Commit-ID: e6ca01a8d58004b7f2cac0b1b7ce8f87e425e360 + +commit dd0cf6318d9b4b3533bda1e3bc021b2cd7246b7a +Author: jmc@openbsd.org +Date: Fri Nov 23 06:58:28 2018 +0000 + + upstream: tweak previous; + + OpenBSD-Commit-ID: 08f096922eb00c98251501c193ff9e83fbb5de4f + +commit 8a85f5458d1c802471ca899c97f89946f6666e61 +Author: Darren Tucker +Date: Sun Nov 25 21:44:05 2018 +1100 + + Include stdio.h for FILE if needed. + +commit 16fb23f25454991272bfe4598cc05d20fcd25116 +Author: Darren Tucker +Date: Sun Nov 25 14:05:57 2018 +1100 + + Reverse order of OpenSSL init functions. + + Try the new init function (OPENSSL_init_crypto) before falling back to + the old one (OpenSSL_add_all_algorithms). + +commit 98f878d2272bf8dff21f2a0265d963c29e33fed2 +Author: Darren Tucker +Date: Sun Nov 25 14:05:08 2018 +1100 + + Improve OpenSSL_add_all_algorithms check. + + OpenSSL_add_all_algorithms() may be a macro so check for that too. + +commit 9e34e0c59ab04514f9de9934a772283f7f372afe +Author: djm@openbsd.org +Date: Fri Nov 23 05:08:07 2018 +0000 + + upstream: add a ssh_config "Match final" predicate + + Matches in same pass as "Match canonical" but doesn't require + hostname canonicalisation be enabled. bz#2906 ok markus + + OpenBSD-Commit-ID: fba1dfe9f6e0cabcd0e2b3be13f7a434199beffa + +commit 4da58d58736b065b1182b563d10ad6765d811c6d +Author: dtucker@openbsd.org +Date: Fri Nov 23 02:53:57 2018 +0000 + + upstream: Remove now-unneeded ifdef SIGINFO around handler since it is + + now always used for SIGUSR1 even when SIGINFO is not defined. This will make + things simpler in -portable. + + OpenBSD-Regress-ID: 4ff0265b335820b0646d37beb93f036ded0dc43f + +commit c721d5877509875c8515df0215fa1dab862013bc +Author: Darren Tucker +Date: Fri Nov 23 14:11:20 2018 +1100 + + Move RANDOM_SEED_SIZE outside ifdef. + + RANDOM_SEED_SIZE is used by both the OpenSSL and non-OpenSSL code + This fixes the build with configureed --without-openssl. + +commit deb51552c3ce7ce72c8d0232e4f36f2e7c118c7d +Author: Darren Tucker +Date: Thu Nov 22 19:59:28 2018 +1100 + + Resync with OpenBSD by pulling in an ifdef SIGINFO. + +commit 28c7b2cd050f4416bfcf3869a20e3ea138aa52fe +Author: Damien Miller +Date: Fri Nov 23 10:45:20 2018 +1100 + + fix configure test for OpenSSL version + + square brackets in case statements may be eaten by autoconf. + + Report and fix from Filipp Gunbin; tweaked by naddy@ + +commit 42c5ec4b97b6a1bae70f323952d0646af16ce710 +Author: Damien Miller +Date: Fri Nov 23 10:40:06 2018 +1100 + + refactor libcrypto initialisation + + Don't call OpenSSL_add_all_algorithms() unless OpenSSL actually + supports it. + + Move all libcrypto initialisation to a single function, and call that + from seed_rng() that is called early in each tool's main(). + + Prompted by patch from Rosen Penev + +commit 5b60b6c02009547a3e2a99d4886965de2a4719da +Author: dtucker@openbsd.org +Date: Thu Nov 22 08:59:11 2018 +0000 + + upstream: Output info on SIGUSR1 as well as + + SIGINFO to resync with portable. (ID sync only). + + OpenBSD-Regress-ID: 699d153e2de22dce51a1b270c40a98472d1a1b16 + +commit e4ae345dc75b34fd870c2e8690d831d2c1088eb7 +Author: dtucker@openbsd.org +Date: Thu Nov 22 08:48:32 2018 +0000 + + upstream: Append pid to temp files in /var/run and set a cleanup + + trap for them. This allows multiple instances of tests to run without + colliding. + + OpenBSD-Regress-ID: 57add105ecdfc54752d8003acdd99eb68c3e0b4c + +commit f72d0f52effca5aa20a193217346615ecd3eed53 +Author: dtucker@openbsd.org +Date: Wed Oct 31 11:09:27 2018 +0000 + + upstream: UsePrivilegeSeparation no is deprecated + + test "yes" and "sandbox". + + OpenBSD-Regress-ID: 80e685ed8990766527dc629b1affc09a75bfe2da + +commit 35d0e5fefc419bddcbe09d7fc163d8cd3417125b +Author: djm@openbsd.org +Date: Wed Oct 17 23:28:05 2018 +0000 + + upstream: add some knobs: + + UNITTEST_FAST?= no # Skip slow tests (e.g. less intensive fuzzing). + UNITTEST_SLOW?= no # Include slower tests (e.g. more intensive fuzzing). + UNITTEST_VERBOSE?= no # Verbose test output (inc. per-test names). + + useful if you want to run the tests as a smoke test to exercise the + functionality without waiting for all the fuzzers to run. + + OpenBSD-Regress-ID: e04d82ebec86068198cd903acf1c67563c57315e + +commit c1941293d9422a14dda372b4c21895e72aa7a063 +Author: Darren Tucker +Date: Thu Nov 22 15:52:26 2018 +1100 + + Resync Makefile.inc with upstream. + + It's unused in -portable, but having it out of sync makes other syncs + fail to apply. + +commit 928f1231f65f88cd4c73e6e0edd63d2cf6295d77 +Author: djm@openbsd.org +Date: Mon Nov 19 04:12:32 2018 +0000 + + upstream: silence (to log level debug2) failure messages when + + loading the default hostkeys. Hostkeys explicitly specified in the + configuration or on the command-line are still reported as errors, and + failure to load at least one host key remains a fatal error. + MIME-Version: 1.0 + Content-Type: text/plain; charset=UTF-8 + Content-Transfer-Encoding: 8bit + + Based on patch from Dag-Erling Smørgrav via + https://github.com/openssh/openssh-portable/pull/103 + + ok markus@ + + OpenBSD-Commit-ID: ffc2e35a75d1008effaf05a5e27425041c27b684 + +commit 7fca94edbe8ca9f879da9fdd2afd959c4180f4c7 +Author: dtucker@openbsd.org +Date: Sun Nov 18 22:43:29 2018 +0000 + + upstream: Fix inverted logic for redirecting ProxyCommand stderr to + + /dev/null. Fixes mosh in proxycommand mode that was broken by the previous + ProxyCommand change that was reported by matthieu@. ok djm@ danj@ + + OpenBSD-Commit-ID: c6fc9641bc250221a0a81c6beb2e72d603f8add6 + +commit ccef7c4faf914993b53035cd2b25ce02ab039c9d +Author: djm@openbsd.org +Date: Fri Nov 16 06:17:38 2018 +0000 + + upstream: redirect stderr of ProxyCommands to /dev/null when ssh is + + started with ControlPersist; based on patch from Steffen Prohaska + + OpenBSD-Commit-ID: 1bcaa14a03ae80369d31021271ec75dce2597957 + +commit 15182fd96845a03216d7ac5a2cf31c4e77e406e3 +Author: djm@openbsd.org +Date: Fri Nov 16 06:10:29 2018 +0000 + + upstream: make grandparent-parent-child sshbuf chains robust to + + use-after-free faults if the ancestors are freed before the descendents. + Nothing in OpenSSH uses this deallocation pattern. Reported by Jann Horn + + OpenBSD-Commit-ID: d93501d1d2734245aac802a252b9bb2eccdba0f2 + +commit 2a35862e664afde774d4a72497d394fe7306ccb5 +Author: djm@openbsd.org +Date: Fri Nov 16 03:26:01 2018 +0000 + + upstream: use path_absolute() for pathname checks; from Manoj Ampalam + + OpenBSD-Commit-ID: 482ce71a5ea5c5f3bc4d00fd719481a6a584d925 + +commit d0d1dfa55be1c5c0d77ab3096b198a64235f936d +Author: Darren Tucker +Date: Fri Nov 16 14:11:44 2018 +1100 + + Test for OPENSSL_init_crypto before using. + + Check for the presence of OPENSSL_init_crypto and all the flags we want + before trying to use it (bz#2931). + +commit 6010c0303a422a9c5fa8860c061bf7105eb7f8b2 +Author: djm@openbsd.org +Date: Fri Nov 16 03:03:10 2018 +0000 + + upstream: disallow empty incoming filename or ones that refer to the + + current directory; based on report/patch from Harry Sintonen + + OpenBSD-Commit-ID: f27651b30eaee2df49540ab68d030865c04f6de9 + +commit aaed635e3a401cfcc4cc97f33788179c458901c3 +Author: djm@openbsd.org +Date: Fri Nov 16 02:46:20 2018 +0000 + + upstream: fix bug in client that was keeping a redundant ssh-agent + + socket around for the life of the connection; bz#2912; reported by Simon + Tatham; ok dtucker@ + + OpenBSD-Commit-ID: 4ded588301183d343dce3e8c5fc1398e35058478 + +commit e76135e3007f1564427b2956c628923d8dc2f75a +Author: djm@openbsd.org +Date: Fri Nov 16 02:43:56 2018 +0000 + + upstream: fix bug in HostbasedAcceptedKeyTypes and + + PubkeyAcceptedKeyTypes options. If only RSA-SHA2 siganture types were + specified, then authentication would always fail for RSA keys as the monitor + checks only the base key (not the signature algorithm) type against + *AcceptedKeyTypes. bz#2746; reported by Jakub Jelen; ok dtucker + + OpenBSD-Commit-ID: 117bc3dc54578dbdb515a1d3732988cb5b00461b + +commit 5c1a63562cac0574c226224075b0829a50b48c9d +Author: djm@openbsd.org +Date: Fri Nov 16 02:30:20 2018 +0000 + + upstream: support a prefix of '@' to suppress echo of sftp batch + + commands; bz#2926; ok dtucker@ + + OpenBSD-Commit-ID: 9d635636bc84aeae796467e059f7634de990a79d + +commit 90ef45f7aac33eaf55ec344e101548a01e570f29 +Author: schwarze@openbsd.org +Date: Tue Nov 13 07:22:45 2018 +0000 + + upstream: fix markup error (missing blank before delimiter); from + + Mike Frysinger + + OpenBSD-Commit-ID: 1bc5392f795ca86318d695e0947eaf71a5a4f6d9 + +commit 960e7c672dc106f3b759c081de3edb4d1138b36e +Author: djm@openbsd.org +Date: Fri Nov 9 02:57:58 2018 +0000 + + upstream: typo in error message; caught by Debian lintian, via + + Colin Watson + + OpenBSD-Commit-ID: bff614c7bd1f4ca491a84e9b5999f848d0d66758 + +commit 81f1620c836e6c79c0823ba44acca605226a80f1 +Author: djm@openbsd.org +Date: Fri Nov 9 02:56:22 2018 +0000 + + upstream: correct local variable name; from yawang AT microsoft.com + + OpenBSD-Commit-ID: a0c228390856a215bb66319c89cb3959d3af8c87 + +commit 1293740e800fa2e5ccd38842a2e4970c6f3b9831 +Author: dtucker@openbsd.org +Date: Wed Oct 31 11:20:05 2018 +0000 + + upstream: Import new moduli. + + OpenBSD-Commit-ID: c07772f58028fda683ee6abd41c73da3ff70d403 + +commit 46925ae28e53fc9add336a4fcdb7ed4b86c3591c +Author: djm@openbsd.org +Date: Fri Oct 26 01:23:03 2018 +0000 + + upstream: mention ssh-ed25519-cert-v01@openssh.com in list of cert + + key type at start of doc + + OpenBSD-Commit-ID: b46b0149256d67f05f2d5d01e160634ed1a67324 + +commit 8d8340e2c215155637fe19cb1a837f71b2d55f7b +Author: Darren Tucker +Date: Fri Nov 16 13:32:13 2018 +1100 + + Remove fallback check for /usr/local/ssl. + + If configure could not find a working OpenSSL installation it would + fall back to checking in /usr/local/ssl. This made sense back when + systems did not ship with OpenSSL, but most do and OpenSSL 1.1 doesn't + use that as a default any more. The fallback behaviour also meant + that if you pointed --with-ssl-dir at a specific directory and it + didn't work, it would silently use either the system libs or the ones + in /usr/local/ssl. If you want to use /usr/local/ssl you'll need to + pass configure --with-ssl-dir=/usr/local/ssl. ok djm@ + +commit ce93472134fb22eff73edbcd173a21ae38889331 +Author: Darren Tucker +Date: Fri Nov 16 12:44:01 2018 +1100 + + Fix check for OpenSSL 1.0.1 exactly. + + Both INSTALL and configure.ac claim OpenSSL >= 1.0.1 is supported; fix + compile-time check for 1.0.1 to match. + +commit f2970868f86161a22b2c377057fa3891863a692a +Author: Darren Tucker +Date: Sun Nov 11 15:58:20 2018 +1100 + + Improve warnings in cygwin service setup. + + bz#2922, patch from vinschen at redhat.com. + +commit bd2d54fc1eee84bf87158a1277a50e6c8a303339 +Author: Darren Tucker +Date: Sun Nov 11 15:54:54 2018 +1100 + + Remove hardcoded service name in cygwin setup. + + bz#2922, patch from Christian.Lupien at USherbrooke.ca, sanity check + by vinschen at redhat.com. + +commit d0153c77bf7964e694f1d26c56c41a571b8e9466 +Author: Dag-Erling Smørgrav +Date: Tue Oct 9 23:03:40 2018 +0200 + + AC_CHECK_SIZEOF() no longer needs a second argument. + +commit 9b47b083ca9d866249ada9f02dbd57c87b13806e +Author: Manoj Ampalam +Date: Thu Nov 8 22:41:59 2018 -0800 + + Fix error message w/out nistp521. + + Correct error message when OpenSSL doesn't support certain ECDSA key + lengths. + +commit 624d19ac2d56fa86a22417c35536caceb3be346f +Author: Eneas U de Queiroz +Date: Tue Oct 9 16:17:42 2018 -0300 + + fix compilation with openssl built without ECC + + ECDSA code in openssh-compat.h and libressl-api-compat.c needs to be + guarded by OPENSSL_HAS_ECC + + Signed-off-by: Eneas U de Queiroz + +commit 1801cd11d99d05a66ab5248c0555f55909a355ce +Author: Darren Tucker +Date: Thu Nov 8 15:03:11 2018 +1100 + + Simplify OpenSSL 1.1 function checks. + + Replace AC_SEARCH_LIBS checks for OpenSSL 1.1 functions with a single + AC_CHECK_FUNCS. ok djm@ + +commit bc32f118d484e4d71d2a0828fd4eab7e4176c9af +Author: Darren Tucker +Date: Mon Nov 5 17:31:24 2018 +1100 + + Fix pasto for HAVE_EVP_CIPHER_CTX_SET_IV. + + Prevents unnecessary redefinition. Patch from mforney at mforney.org. + +commit 3719df60c66abc4b47200d41f571d67772f293ba +Author: Darren Tucker +Date: Wed Oct 31 22:21:03 2018 +1100 + + Import new moduli. + +commit 595605d4abede475339d6a1f07a8cc674c11d1c3 +Author: Darren Tucker +Date: Sun Oct 28 15:18:13 2018 +1100 + + Update check for minimum OpenSSL version. + +commit 6ab75aba340d827140d7ba719787aabaf39a0355 +Author: Darren Tucker +Date: Sun Oct 28 15:16:31 2018 +1100 + + Update required OpenSSL versions to match current. + +commit c801b0e38eae99427f37869370151b78f8e15c5d +Author: Darren Tucker +Date: Sun Oct 28 14:34:12 2018 +1100 + + Use detected version functions in openssl compat. + + Use detected functions in compat layer instead of guessing based on + versions. Really fixes builds with LibreSSL, not just configure. + +commit 262d81a259d4aa1507c709ec9d5caa21c7740722 +Author: Darren Tucker +Date: Sat Oct 27 16:45:59 2018 +1100 + + Check for the existence of openssl version funcs. + + Check for the existence of openssl version functions and use the ones + detected instead of trying to guess based on the int32 version + identifier. Fixes builds with LibreSSL. + +commit 406a24b25d6a2bdd70cacd16de7e899dcb2a8829 +Author: Damien Miller +Date: Fri Oct 26 13:43:28 2018 +1100 + + fix builds on OpenSSL <= 1.0.x + + I thought OpenSSL 1.0.x offered the new-style OpenSSL_version_num() API + to obtain version number, but they don't. + +commit 859754bdeb41373d372e36b5dc89c547453addb3 +Author: Damien Miller +Date: Tue Oct 23 17:10:41 2018 +1100 + + remove remaining references to SSLeay + + Prompted by Rosen Penev + +commit b9fea45a68946c8dfeace72ad1f6657c18f2a98a +Author: Damien Miller +Date: Tue Oct 23 17:10:35 2018 +1100 + + regen depend + +commit a65784c9f9c5d00cf1a0e235090170abc8d07c73 +Author: djm@openbsd.org +Date: Tue Oct 23 05:56:35 2018 +0000 + + upstream: refer to OpenSSL not SSLeay; + + we're old, but we don't have to act it + + OpenBSD-Commit-ID: 9ca38d11f8ed19e61a55108d1e892d696cee08ec + +commit c0a35265907533be10ca151ac797f34ae0d68969 +Author: Damien Miller +Date: Mon Oct 22 11:22:50 2018 +1100 + + fix compile for openssl 1.0.x w/ --with-ssl-engine + + bz#2921, patch from cotequeiroz + +commit 31b49525168245abe16ad49d7b7f519786b53a38 +Author: Darren Tucker +Date: Mon Oct 22 20:05:18 2018 +1100 + + Include openssl compatibility. + + Patch from rosenp at gmail.com via openssh-unix-dev. + +commit a4fc253f5f44f0e4c47aafe2a17d2c46481d3c04 +Author: djm@openbsd.org +Date: Fri Oct 19 03:12:42 2018 +0000 + + upstream: when printing certificate contents "ssh-keygen -Lf + + /path/certificate", include the algorithm that the CA used to sign the cert. + + OpenBSD-Commit-ID: 1ea20b5048a851a7a0758dcb9777a211a2c0dddd + +commit 83b3d99d2b47321b7ebb8db6f6ea04f3808bc069 +Author: florian@openbsd.org +Date: Mon Oct 15 11:28:50 2018 +0000 + + upstream: struct sockaddr_storage is guaranteed to be large enough, + + no need to check the size. OK kn, deraadt + + OpenBSD-Commit-ID: 0aa56e92eb49c79f495b31a5093109ec5841f439 + +commit aede1c34243a6f7feae2fb2cb686ade5f9be6f3d +Author: Damien Miller +Date: Wed Oct 17 11:01:20 2018 +1100 + + Require OpenSSL 1.1.x series 1.1.0g or greater + + Previous versions have a bug with EVP_CipherInit() when passed a + NULL EVP_CIPHER, per https://github.com/openssl/openssl/pull/4613 + + ok dtucker@ + +commit 08300c211409c212e010fe2e2f2883e573a04ce2 +Author: Damien Miller +Date: Wed Oct 17 08:12:02 2018 +1100 + + unbreak compilation with --with-ssl-engine + + Missing last argument to OPENSSL_init_crypto() + +commit 1673274aee67ce0eb6f00578b6f3d2bcbd58f937 +Author: Darren Tucker +Date: Tue Oct 16 14:45:57 2018 +1100 + + Remove gcc spectre mitigation flags. + + Current impementions of the gcc spectre mitigation flags cause + miscompilations when combined with other flags and do not provide much + protection. Found by fweimer at redhat.com, ok djm@ + +commit 4e23deefd7959ef83c73ed9cce574423438f6133 +Author: Damien Miller +Date: Tue Oct 16 10:51:52 2018 +1100 + + Avoid deprecated OPENSSL_config when using 1.1.x + + OpenSSL 1.1.x soft-deprecated OPENSSL_config in favour of + OPENSSL_init_crypto; pointed out by Jakub Jelen + +commit 797cdd9c8468ed1125ce60d590ae3f1397866af4 +Author: Darren Tucker +Date: Fri Oct 12 16:58:47 2018 +1100 + + Don't avoid our *sprintf replacements. + + Don't let systems with broken printf(3) avoid our replacements + via asprintf(3)/vasprintf(3) calling libc internally. From djm@ + +commit e526127cbd2f8ad88fb41229df0c9b850c722830 +Author: Darren Tucker +Date: Fri Oct 12 16:43:35 2018 +1100 + + Check if snprintf understands %zu. + + If the platforms snprintf and friends don't understand %zu, use the + compat replacement. Prevents segfaults on those platforms. + +commit cf39f875191708c5f2f1a3c1c9019f106e74aea3 +Author: Damien Miller +Date: Fri Oct 12 09:48:05 2018 +1100 + + remove stale link, tweak + +commit a7205e68decf7de2005810853b4ce6b222b65e2a +Author: Damien Miller +Date: Fri Oct 12 09:47:20 2018 +1100 + + update version numbers ahead of release + +commit 1a4a9cf80f5b92b9d1dadd0bfa8867c04d195391 +Author: djm@openbsd.org +Date: Thu Oct 11 03:48:04 2018 +0000 + + upstream: don't send new-style rsa-sha2-*-cert-v01@openssh.com names to + + older OpenSSH that can't handle them. spotted by Adam Eijdenberg; ok dtucker + + OpenBSD-Commit-ID: 662bbc402e3d7c9b6c322806269698106a6ae631 + +commit dc8ddcdf1a95e011c263486c25869bb5bf4e30ec +Author: Damien Miller +Date: Thu Oct 11 13:08:59 2018 +1100 + + update depends + +commit 26841ac265603fd2253e6832e03602823dbb4022 +Author: Damien Miller +Date: Thu Oct 11 13:02:11 2018 +1100 + + some more duplicated key algorithm lines + + From Adam Eijdenberg + +commit 5d9d17603bfbb620195a4581025052832b4c4adc +Author: Damien Miller +Date: Thu Oct 11 11:56:36 2018 +1100 + + fix duplicated algorithm specification lines + + Spotted by Adam Eijdenberg + +commit ebfafd9c7a5b2a7fb515ee95dbe0e44e11d0a663 +Author: djm@openbsd.org +Date: Thu Oct 11 00:52:46 2018 +0000 + + upstream: typo in plain RSA algorithm counterpart names for + + certificates; spotted by Adam Eijdenberg; ok dtucker@ + + OpenBSD-Commit-ID: bfcdeb6f4fc9e7607f5096574c8f118f2e709e00 + +commit c29b111e7d87c2324ff71c80653dd8da168c13b9 +Author: Damien Miller +Date: Thu Oct 11 11:29:35 2018 +1100 + + check pw_passwd != NULL here too + + Again, for systems with broken NIS implementations. + + Prompted by coolbugcheckers AT gmail.com + +commit fe8e8f349a553ef4c567acd418aac769a82b7729 +Author: Damien Miller +Date: Thu Oct 11 11:03:15 2018 +1100 + + check for NULL return from shadow_pw() + + probably unreachable on this platform; pointed out by + coolbugcheckers AT gmail.com + +commit acc59cbe7a1fb169e1c3caba65a39bd74d6e030d +Author: deraadt@openbsd.org +Date: Wed Oct 10 16:43:49 2018 +0000 + + upstream: introducing openssh 7.9 + + OpenBSD-Commit-ID: 42d526a9fe01a40dd299ac58014d3349adf40e25 + +commit 12731158c75c8760a8bea06350eeb3e763fe1a07 +Author: Damien Miller +Date: Thu Oct 11 10:29:29 2018 +1100 + + supply callback to PEM_read_bio_PrivateKey + + OpenSSL 1.1.0i has changed the behaviour of their PEM APIs, + so that empty passphrases are interpreted differently. This + probabalistically breaks loading some keys, because the PEM format + is terrible and doesn't include a proper MAC. + + Avoid this by providing a basic callback to avoid passing empty + passphrases to OpenSSL in cases where one is required. + + Based on patch from Jakub Jelen in bz#2913; ok dtucker@ + +commit d1d301a1dd5d6cc3a9ed93ab7ab09dda4cb456e0 +Author: Damien Miller +Date: Wed Oct 10 14:57:00 2018 +1100 + + in pick_salt() avoid dereference of NULL passwords + + Apparently some NIS implementations can leave pw->pw_passwd (or the + shadow equivalent) NULL. + + bz#2909; based on patch from Todd Eigenschink + +commit edbb6febccee084d212fdc0cb05b40cb1c646ab1 +Author: djm@openbsd.org +Date: Tue Oct 9 05:42:23 2018 +0000 + + upstream: Treat all PEM_read_bio_PrivateKey() errors when a passphrase + + is specified as "incorrect passphrase" instead of trying to choose between + that and "invalid format". + + libcrypto can return ASN1 parsing errors rather than the expected + decrypt error in certain infrequent cases when trying to decrypt/parse + PEM private keys when supplied with an invalid passphrase. + + Report and repro recipe from Thomas Deutschmann in bz#2901 + + ok markus@ + + OpenBSD-Commit-ID: b1d4cd92395f9743f81c0d23aab2524109580870 + +commit 2581333d564d8697837729b3d07d45738eaf5a54 +Author: naddy@openbsd.org +Date: Fri Oct 5 14:26:09 2018 +0000 + + upstream: Support using service names for port numbers. + + * Try to resolve a port specification with getservbyname(3) if a + numeric conversion fails. + * Make the "Port" option in ssh_config handle its argument as a + port rather than a plain integer. + + ok dtucker@ deraadt@ + + OpenBSD-Commit-ID: e7f03633133205ab3dfbc67f9df7475fabae660d + +commit e0d6501e86734c48c8c503f81e1c0926e98c5c4c +Author: djm@openbsd.org +Date: Thu Oct 4 07:47:35 2018 +0000 + + upstream: when the peer sends a channel-close message, make sure we + + close the local extended read fd (stderr) along with the regular read fd + (stdout). Avoids weird stuck processed in multiplexing mode. + + Report and analysis by Nelson Elhage and Geoffrey Thomas in bz#2863 + + ok dtucker@ markus@ + + OpenBSD-Commit-ID: a48a2467fe938de4de69d2e7193d5fa701f12ae9 + +commit 6f1aabb128246f445e33b8844fad3de9cb1d18cb +Author: djm@openbsd.org +Date: Thu Oct 4 01:04:52 2018 +0000 + + upstream: factor out channel status formatting from + + channel_open_message() so we can use it in other debug messages + + OpenBSD-Commit-ID: 9c3903ca28fcabad57f566c9d0045b41ab7d52ba + +commit f1dd179e122bdfdb7ca3072d9603607740efda05 +Author: djm@openbsd.org +Date: Thu Oct 4 00:10:11 2018 +0000 + + upstream: include a little more information about the status and + + disposition of channel's extended (stderr) fd; makes debugging some things a + bit easier. No behaviour change. + + OpenBSD-Commit-ID: 483eb6467dc7d5dbca8eb109c453e7a43075f7ce + +commit 2d1428b11c8b6f616f070f2ecedce12328526944 +Author: djm@openbsd.org +Date: Thu Oct 4 00:04:41 2018 +0000 + + upstream: explicit_bzero here to be consistent with other kex*.c; + + report from coolbugcheckers AT gmail.com + + OpenBSD-Commit-ID: a90f146c5b5f5b1408700395e394f70b440856cb + +commit 5eff5b858e717e901e6af6596306a114de9f79f2 +Author: djm@openbsd.org +Date: Wed Oct 3 06:38:35 2018 +0000 + + upstream: Allow ssh_config IdentityAgent directive to accept + + environment variable names as well as explicit paths. ok dtucker@ + + OpenBSD-Commit-ID: 2f0996e103876c53d8c9dd51dcce9889d700767b + +commit a46ac4d86b25414d78b632e8173578b37e5f8a83 +Author: djm@openbsd.org +Date: Tue Oct 2 12:51:58 2018 +0000 + + upstream: mention INFO@openssh.com for sending SIGINFO + + OpenBSD-Commit-ID: 132471eeb0df658210afd27852fe65131b26e900 + +commit ff3a411cae0b484274b7900ef52ff4dad3e12876 +Author: Damien Miller +Date: Tue Oct 2 22:49:40 2018 +1000 + + only support SIGINFO on systems with SIGINFO + +commit cd98925c6405e972dc9f211afc7e75e838abe81c +Author: djm@openbsd.org +Date: Tue Oct 2 12:40:07 2018 +0000 + + upstream: Add server support for signalling sessions via the SSH + + channel/ session protocol. Signalling is only supported to sesssions that are + not subsystems and were not started with a forced command. + + Long requested in bz#1424 + + Based on a patch from markus@ and reworked by dtucker@; + ok markus@ dtucker@ + + OpenBSD-Commit-ID: 4bea826f575862eaac569c4bedd1056a268be1c3 + +commit dba50258333f2604a87848762af07ba2cc40407a +Author: djm@openbsd.org +Date: Wed Sep 26 07:32:44 2018 +0000 + + upstream: remove big ugly TODO comment from start of file. Some of + + the mentioned tasks are obsolete and, of the remainder, most are already + captured in PROTOCOL.mux where they better belong + + OpenBSD-Commit-ID: 16d9d76dee42a5bb651c9d6740f7f0ef68aeb407 + +commit 92b61a38ee9b765f5049f03cd1143e13f3878905 +Author: djm@openbsd.org +Date: Wed Sep 26 07:30:05 2018 +0000 + + upstream: Document mux proxy mode; added by Markus in openssh-7.4 + + Also add a little bit of information about the overall packet format + + OpenBSD-Commit-ID: bdb6f6ea8580ef96792e270cae7857786ad84a95 + +commit 9d883a1ce4f89b175fd77405ff32674620703fb2 +Author: djm@openbsd.org +Date: Wed Sep 26 01:48:57 2018 +0000 + + upstream: s/process_mux_master/mux_master_process/ in mux master + + function names, + + Gives better symmetry with the existing mux_client_*() names and makes + it more obvious when a message comes from the master vs client (they + are interleved in ControlMaster=auto mode). + + no functional change beyond prefixing a could of log messages with + __func__ where they were previously lacking. + + OpenBSD-Commit-ID: b01f7c3fdf92692e1713a822a89dc499333daf75 + +commit c2fa53cd6462da82d3a851dc3a4a3f6b920337c8 +Author: Darren Tucker +Date: Sat Sep 22 14:41:24 2018 +1000 + + Remove unused variable in _ssh_compat_fflush. + +commit d1b3540c21212624af907488960d703c7d987b42 +Author: Darren Tucker +Date: Thu Sep 20 18:08:43 2018 +1000 + + Import updated moduli. + +commit b5e412a8993ad17b9e1141c78408df15d3d987e1 +Author: djm@openbsd.org +Date: Fri Sep 21 12:46:22 2018 +0000 + + upstream: Allow ssh_config ForwardX11Timeout=0 to disable the + + timeout and allow X11 connections in untrusted mode indefinitely. ok dtucker@ + + OpenBSD-Commit-ID: ea1ceed3f540b48e5803f933e59a03b20db10c69 + +commit cb24d9fcc901429d77211f274031653476864ec6 +Author: djm@openbsd.org +Date: Fri Sep 21 12:23:17 2018 +0000 + + upstream: when compiled with GSSAPI support, cache supported method + + OIDs by calling ssh_gssapi_prepare_supported_oids() regardless of whether + GSSAPI authentication is enabled in the main config. + + This avoids sandbox violations for configurations that enable GSSAPI + auth later, e.g. + + Match user djm + GSSAPIAuthentication yes + + bz#2107; ok dtucker@ + + OpenBSD-Commit-ID: a5dd42d87c74e27cfb712b15b0f97ab20e0afd1d + +commit bbc8af72ba68da014d4de6e21a85eb5123384226 +Author: djm@openbsd.org +Date: Fri Sep 21 12:20:12 2018 +0000 + + upstream: In sshkey_in_file(), ignore keys that are considered for + + being too short (i.e. SSH_ERR_KEY_LENGTH). These keys will not be considered + to be "in the file". This allows key revocation lists to contain short keys + without the entire revocation list being considered invalid. + + bz#2897; ok dtucker + + OpenBSD-Commit-ID: d9f3d857d07194a42ad7e62889a74dc3f9d9924b + +commit 383a33d160cefbfd1b40fef81f72eadbf9303a66 +Author: djm@openbsd.org +Date: Fri Sep 21 03:11:36 2018 +0000 + + upstream: Treat connections with ProxyJump specified the same as ones + + with a ProxyCommand set with regards to hostname canonicalisation (i.e. don't + try to canonicalise the hostname unless CanonicalizeHostname is set to + 'always'). + + Patch from Sven Wegener via bz#2896 + + OpenBSD-Commit-ID: 527ff501cf98bf65fb4b29ed0cb847dda10f4d37 + +commit 0cbed248ed81584129b67c348dbb801660f25a6a +Author: djm@openbsd.org +Date: Thu Sep 20 23:40:16 2018 +0000 + + upstream: actually make CASignatureAlgorithms available as a config + + option + + OpenBSD-Commit-ID: 93fa7ff58314ed7b1ab7744090a6a91232e6ae52 + +commit 62528870c0ec48cd86a37dd7320fb85886c3e6ee +Author: dtucker@openbsd.org +Date: Thu Sep 20 08:07:03 2018 +0000 + + upstream: Import updated moduli. + + OpenBSD-Commit-ID: 04431e8e7872f49a2129bf080a6b73c19d576d40 + +commit e6933a2ffa0659d57f3c7b7c457b2c62b2a84613 +Author: jmc@openbsd.org +Date: Thu Sep 20 06:58:48 2018 +0000 + + upstream: reorder CASignatureAlgorithms, and add them to the + + various -o lists; ok djm + + OpenBSD-Commit-ID: ecb88baecc3c54988b4d1654446ea033da359288 + +commit aa083aa9624ea7b764d5a81c4c676719a1a3e42b +Author: djm@openbsd.org +Date: Thu Sep 20 03:31:49 2018 +0000 + + upstream: fix "ssh -Q sig" to show correct signature algorithm list + + (it was erroneously showing certificate algorithms); prompted by markus@ + + OpenBSD-Commit-ID: 1cdee002f2f0c21456979deeb887fc889afb154d + +commit ecac7e1f7add6b28874959a11f2238d149dc2c07 +Author: djm@openbsd.org +Date: Thu Sep 20 03:30:44 2018 +0000 + + upstream: add CASignatureAlgorithms option for the client, allowing + + it to specify which signature algorithms may be used by CAs when signing + certificates. Useful if you want to ban RSA/SHA1; ok markus@ + + OpenBSD-Commit-ID: 9159e5e9f67504829bf53ff222057307a6e3230f + +commit 86e5737c39153af134158f24d0cab5827cbd5852 +Author: djm@openbsd.org +Date: Thu Sep 20 03:28:06 2018 +0000 + + upstream: Add sshd_config CASignatureAlgorithms option to allow + + control over which signature algorithms a CA may use when signing + certificates. In particular, this allows a sshd to ban certificates signed + with RSA/SHA1. + + ok markus@ + + OpenBSD-Commit-ID: b05c86ef8b52b913ed48d54a9b9c1a7714d96bac + +commit f80e68ea7d62e2dfafc12f1a60ab544ae4033a0f +Author: djm@openbsd.org +Date: Wed Sep 19 02:03:02 2018 +0000 + + upstream: Make "ssh-add -q" do what it says on the tin: silence + + output from successful operations. + + Based on patch from Thijs van Dijk; ok dtucker@ deraadt@ + + OpenBSD-Commit-ID: c4f754ecc055c10af166116ce7515104aa8522e1 + +commit 5e532320e9e51de720d5f3cc2596e95d29f6e98f +Author: millert@openbsd.org +Date: Mon Sep 17 15:40:14 2018 +0000 + + upstream: When choosing a prime from the moduli file, avoid + + re-using the linenum variable for something that is not a line number to + avoid the confusion that resulted in the bug in rev. 1.64. This also lets us + pass the actual linenum to parse_prime() so the error messages include the + correct line number. OK markus@ some time ago. + + OpenBSD-Commit-ID: 4d8e5d3e924d6e8eb70053e3defa23c151a00084 + +commit cce8cbe0ed7d1ba3a575310e0b63c193326ae616 +Author: Darren Tucker +Date: Sat Sep 15 19:44:06 2018 +1000 + + Fix openssl-1.1 fallout for --without-openssl. + + ok djm@ + +commit 149519b9f201dac755f3cba4789f4d76fecf0ee1 +Author: Damien Miller +Date: Sat Sep 15 19:37:48 2018 +1000 + + add futex(2) syscall to seccomp sandbox + + Apparently needed for some glibc/openssl combinations. + + Patch from Arkadiusz Miśkiewicz + +commit 4488ae1a6940af704c4dbf70f55bf2f756a16536 +Author: Damien Miller +Date: Sat Sep 15 19:36:55 2018 +1000 + + really add source for authopt_fuzz this time + +commit 9201784b4a257c8345fbd740bcbdd70054885707 +Author: Damien Miller +Date: Sat Sep 15 19:35:40 2018 +1000 + + remove accidentally checked-in authopt_fuzz binary + +commit beb9e522dc7717df08179f9e59f36b361bfa14ab +Author: djm@openbsd.org +Date: Fri Sep 14 05:26:27 2018 +0000 + + upstream: second try, deals properly with missing and private-only + + Use consistent format in debug log for keys readied, offered and + received during public key authentication. + + This makes it a little easier to see what is going on, as each message + now contains (where available) the key filename, its type and fingerprint, + and whether the key is hosted in an agent or a token. + + OpenBSD-Commit-ID: f1c6a8e9cfc4e108c359db77f24f9a40e1e25ea7 + +commit 6bc5a24ac867bfdc3ed615589d69ac640f51674b +Author: Damien Miller +Date: Fri Sep 14 15:16:34 2018 +1000 + + fuzzer harness for authorized_keys option parsing + +commit 6c8b82fc6929b6a9a3f645151b6ec26c5507d9ef +Author: djm@openbsd.org +Date: Fri Sep 14 04:44:04 2018 +0000 + + upstream: revert following; deals badly with agent keys + + revision 1.285 + date: 2018/09/14 04:17:12; author: djm; state: Exp; lines: +47 -26; commitid: lflGFcNb2X2HebaK; + Use consistent format in debug log for keys readied, offered and + received during public key authentication. + + This makes it a little easier to see what is going on, as each message + now contains the key filename, its type and fingerprint, and whether + the key is hosted in an agent or a token. + + OpenBSD-Commit-ID: e496bd004e452d4b051f33ed9ae6a54ab918f56d + +commit 6da046f9c3374ce7e269ded15d8ff8bc45017301 +Author: djm@openbsd.org +Date: Fri Sep 14 04:17:44 2018 +0000 + + upstream: garbage-collect moribund ssh_new_private() API. + + OpenBSD-Commit-ID: 7c05bf13b094093dfa01848a9306c82eb6e95f6c + +commit 1f24ac5fc05252ceb1c1d0e8cab6a283b883c780 +Author: djm@openbsd.org +Date: Fri Sep 14 04:17:12 2018 +0000 + + upstream: Use consistent format in debug log for keys readied, + + offered and received during public key authentication. + + This makes it a little easier to see what is going on, as each message + now contains the key filename, its type and fingerprint, and whether + the key is hosted in an agent or a token. + + OpenBSD-Commit-ID: 2a01d59285a8a7e01185bb0a43316084b4f06a1f + +commit 488c9325bb7233e975dbfbf89fa055edc3d3eddc +Author: millert@openbsd.org +Date: Thu Sep 13 15:23:32 2018 +0000 + + upstream: Fix warnings caused by user_from_uid() and group_from_gid() + + now returning const char *. + + OpenBSD-Commit-ID: b5fe571ea77cfa7b9035062829ab05eb87d7cc6f + +commit 0aa1f230846ebce698e52051a107f3127024a05a +Author: Damien Miller +Date: Fri Sep 14 10:31:47 2018 +1000 + + allow SIGUSR1 as synonym for SIGINFO + + Lets users on those unfortunate operating systems that lack SIGINFO + still be able to obtain progress information from unit tests :) + +commit d64e78526596f098096113fcf148216798c327ff +Author: Damien Miller +Date: Thu Sep 13 19:05:48 2018 +1000 + + add compat header + +commit a3fd8074e2e2f06602e25618721f9556c731312c +Author: djm@openbsd.org +Date: Thu Sep 13 09:03:20 2018 +0000 + + upstream: missed a bit of openssl-1.0.x API in this unittest + + OpenBSD-Regress-ID: a73a54d7f7381856a3f3a2d25947bee7a9a5dbc9 + +commit 86e0a9f3d249d5580390daf58e015e68b01cef10 +Author: djm@openbsd.org +Date: Thu Sep 13 05:06:51 2018 +0000 + + upstream: use only openssl-1.1.x API here too + + OpenBSD-Regress-ID: ae877064597c349954b1b443769723563cecbc8f + +commit 48f54b9d12c1c79fba333bc86d455d8f4cda8cfc +Author: Damien Miller +Date: Thu Sep 13 12:13:50 2018 +1000 + + adapt -portable to OpenSSL 1.1x API + + Polyfill missing API with replacement functions extracted from LibreSSL + +commit 86112951d63d48839f035b5795be62635a463f99 +Author: Damien Miller +Date: Thu Sep 13 12:12:42 2018 +1000 + + forgot to stage these test files in commit d70d061 + +commit 482d23bcacdd3664f21cc82a5135f66fc598275f +Author: djm@openbsd.org +Date: Thu Sep 13 02:08:33 2018 +0000 + + upstream: hold our collective noses and use the openssl-1.1.x API in + + OpenSSH; feedback and ok tb@ jsing@ markus@ + + OpenBSD-Commit-ID: cacbcac87ce5da0d3ca7ef1b38a6f7fb349e4417 + +commit d70d061828730a56636ab6f1f24fe4a8ccefcfc1 +Author: djm@openbsd.org +Date: Wed Sep 12 01:36:45 2018 +0000 + + upstream: Include certs with multiple RSA signature variants in + + test data Ensure that cert->signature_key is populated correctly + + OpenBSD-Regress-ID: 56e68f70fe46cb3a193ca207385bdb301fd6603a + +commit f803b2682992cfededd40c91818b653b5d923ef5 +Author: djm@openbsd.org +Date: Wed Sep 12 01:23:48 2018 +0000 + + upstream: test revocation by explicit hash and by fingerprint + + OpenBSD-Regress-ID: 079c18a9ab9663f4af419327c759fc1e2bc78fd8 + +commit 2de78bc7da70e1338b32feeefcc6045cf49efcd4 +Author: djm@openbsd.org +Date: Wed Sep 12 01:22:43 2018 +0000 + + upstream: s/sshkey_demote/sshkey_from_private/g + + OpenBSD-Regress-ID: 782bde7407d94a87aa8d1db7c23750e09d4443c4 + +commit 41c115a5ea1cb79a6a3182773c58a23f760e8076 +Author: Damien Miller +Date: Wed Sep 12 16:50:01 2018 +1000 + + delete the correct thing; kexfuzz binary + +commit f0fcd7e65087db8c2496f13ed39d772f8e38b088 +Author: djm@openbsd.org +Date: Wed Sep 12 06:18:59 2018 +0000 + + upstream: fix edit mistake; spotted by jmc@ + + OpenBSD-Commit-ID: dd724e1c52c9d6084f4cd260ec7e1b2b138261c6 + +commit 4cc259bac699f4d2a5c52b92230f9e488c88a223 +Author: djm@openbsd.org +Date: Wed Sep 12 01:34:02 2018 +0000 + + upstream: add SSH_ALLOWED_CA_SIGALGS - the default list of + + signature algorithms that are allowed for CA signatures. Notably excludes + ssh-dsa. + + ok markus@ + + OpenBSD-Commit-ID: 1628e4181dc8ab71909378eafe5d06159a22deb4 + +commit ba9e788315b1f6a350f910cb2a9e95b2ce584e89 +Author: djm@openbsd.org +Date: Wed Sep 12 01:32:54 2018 +0000 + + upstream: add sshkey_check_cert_sigtype() that checks a + + cert->signature_type against a supplied whitelist; ok markus + + OpenBSD-Commit-ID: caadb8073292ed7a9535e5adc067d11d356d9302 + +commit a70fd4ad7bd9f2ed223ff635a3d41e483057f23b +Author: djm@openbsd.org +Date: Wed Sep 12 01:31:30 2018 +0000 + + upstream: add cert->signature_type field and keep it in sync with + + certificate signature wrt loading and certification operations; ok markus@ + + OpenBSD-Commit-ID: e8b8b9f76b66707a0cd926109c4383db8f664df3 + +commit 357128ac48630a9970e3af0e6ff820300a28da47 +Author: djm@openbsd.org +Date: Wed Sep 12 01:30:10 2018 +0000 + + upstream: Add "ssh -Q sig" to allow listing supported signature + + algorithms ok markus@ + + OpenBSD-Commit-ID: 7a8c6eb6c249dc37823ba5081fce64876d10fe2b + +commit 9405c6214f667be604a820c6823b27d0ea77937d +Author: djm@openbsd.org +Date: Wed Sep 12 01:21:34 2018 +0000 + + upstream: allow key revocation by SHA256 hash and allow ssh-keygen + + to create KRLs using SHA256/base64 key fingerprints; ok markus@ + + OpenBSD-Commit-ID: a0590fd34e7f1141f2873ab3acc57442560e6a94 + +commit 50e2687ee0941c0ea216d6ffea370ffd2c1f14b9 +Author: djm@openbsd.org +Date: Wed Sep 12 01:19:12 2018 +0000 + + upstream: log certificate fingerprint in authentication + + success/failure message (previously we logged only key ID and CA key + fingerprint). + + ok markus@ + + OpenBSD-Commit-ID: a8ef2d172b7f1ddbcce26d6434b2de6d94f6c05d + +commit de37ca909487d23e5844aca289b3f5e75d3f1e1f +Author: dtucker@openbsd.org +Date: Fri Sep 7 04:26:56 2018 +0000 + + upstream: Add FALLTHROUGH comments where appropriate. Patch from + + jjelen at redhat via bz#2687. + + OpenBSD-Commit-ID: c48eb457be697a19d6d2950c6d0879f3ccc851d3 + +commit 247766cd3111d5d8c6ea39833a3257ca8fb820f2 +Author: djm@openbsd.org +Date: Fri Sep 7 01:42:54 2018 +0000 + + upstream: ssh -MM requires confirmation for all operations that + + change the multiplexing state, not just new sessions. + + mention that confirmation is checked via ssh-askpass + + OpenBSD-Commit-ID: 0f1b45551ebb9cc5c9a4fe54ad3b23ce90f1f5c2 + +commit db8bb80e3ac1bcb3e1305d846cd98c6b869bf03f +Author: mestre@openbsd.org +Date: Tue Aug 28 12:25:53 2018 +0000 + + upstream: fix misplaced parenthesis inside if-clause. it's harmless + + and the only issue is showing an unknown error (since it's not defined) + during fatal(), if it ever an error occurs inside that condition. + + OK deraadt@ markus@ djm@ + + OpenBSD-Commit-ID: acb0a8e6936bfbe590504752d01d1d251a7101d8 + +commit 086cc614f550b7d4f100c95e472a6b6b823938ab +Author: mestre@openbsd.org +Date: Tue Aug 28 12:17:45 2018 +0000 + + upstream: fix build with DEBUG_PK enabled + + OK dtucker@ + + OpenBSD-Commit-ID: ec1568cf27726e9638a0415481c20c406e7b441c + +commit 2678833013e97f8b18f09779b7f70bcbf5eb2ab2 +Author: Darren Tucker +Date: Fri Sep 7 14:41:53 2018 +1000 + + Handle ngroups>_SC_NGROUPS_MAX. + + Based on github pull request #99 from Darren Maffat at Oracle: Solaris' + getgrouplist considers _SC_NGROUPS_MAX more of a guideline and can return + a larger number of groups. In this case, retry getgrouplist with a + larger array and defer allocating groups_byname. ok djm@ + +commit 039bf2a81797b8f3af6058d34005a4896a363221 +Author: Darren Tucker +Date: Fri Sep 7 14:06:57 2018 +1000 + + Initial len for the fmt=NULL case. + + Patch from jjelen at redhat via bz#2687. (OpenSSH never calls + setproctitle with a null format so len is always initialized). + +commit ea9c06e11d2e8fb2f4d5e02f8a41e23d2bd31ca9 +Author: Darren Tucker +Date: Fri Sep 7 14:01:39 2018 +1000 + + Include stdlib.h. + + Patch from jjelen at redhat via bz#2687. + +commit 9617816dbe73ec4d65075f4d897443f63a97c87f +Author: Damien Miller +Date: Mon Aug 27 13:08:01 2018 +1000 + + document some more regress control env variables + + Specifically SKIP_UNIT, USE_VALGRING and LTESTS. Sort the list of + environment variables. + + Based on patch from Jakub Jelen + +commit 71508e06fab14bc415a79a08f5535ad7bffa93d9 +Author: Damien Miller +Date: Thu Aug 23 15:41:42 2018 +1000 + + shorten temporary SSH_REGRESS_TMP path + + Previous path was exceeding max socket length on at least one platform (OSX) + +commit 26739cf5bdc9030a583b41ae5261dedd862060f0 +Author: Damien Miller +Date: Thu Aug 23 13:06:02 2018 +1000 + + rebuild dependencies + +commit ff729025c7463cf5d0a8d1ca1823306e48c6d4cf +Author: Damien Miller +Date: Thu Aug 23 13:03:32 2018 +1000 + + fix path in distclean target + + Patch from Jakub Jelen + +commit 7fef173c28f7462dcd8ee017fdf12b5073f54c02 +Author: djm@openbsd.org +Date: Thu Aug 23 03:01:08 2018 +0000 + + upstream: memleak introduced in r1.83; from Colin Watson + + OpenBSD-Commit-ID: 5c019104c280cbd549a264a7217b67665e5732dc + +commit b8ae02a2896778b8984c7f51566c7f0f56fa8b56 +Author: schwarze@openbsd.org +Date: Tue Aug 21 13:56:27 2018 +0000 + + upstream: AIX reports the CODESET as "ISO8859-1" in the POSIX locale. + + Treating that as a safe encoding is OK because even when other systems return + that string for real ISO8859-1, it is still safe in the sense that it is + ASCII-compatible and stateless. + + Issue reported by Val dot Baranov at duke dot edu. Additional + information provided by Michael dot Felt at felt dot demon dot nl. + Tested by Michael Felt on AIX 6.1 and by Val Baranov on AIX 7.1. + Tweak and OK djm@. + + OpenBSD-Commit-ID: 36f1210e0b229817d10eb490d6038f507b8256a7 + +commit bc44ee088ad269d232e514f037c87ada4c2fd3f0 +Author: Tim Rice +Date: Tue Aug 21 08:57:24 2018 -0700 + + modified: openbsd-compat/port-uw.c + remove obsolete and un-needed include + +commit 829fc28a9c54e3f812ee7248c7a3e31eeb4f0b3a +Author: Damien Miller +Date: Mon Aug 20 15:57:29 2018 +1000 + + Missing unistd.h for regress/mkdtemp.c + +commit c8313e492355a368a91799131520d92743d8d16c +Author: Damien Miller +Date: Fri Aug 17 05:45:20 2018 +1000 + + update version numbers in anticipation of release + +commit 477b49a34b89f506f4794b35e3c70b3e2e83cd38 +Author: Corinna Vinschen +Date: Mon Aug 13 17:08:51 2018 +0200 + + configure: work around GCC shortcoming on Cygwin + + Cygwin's latest 7.x GCC allows to specify -mfunction-return=thunk + as well as -mindirect-branch=thunk on the command line, albeit + producing invalid code, leading to an error at link stage. + + The check in configure.ac only checks if the option is present, + but not if it produces valid code. + + This patch fixes it by special-casing Cygwin. Another solution + may be to change these to linker checks. + + Signed-off-by: Corinna Vinschen + +commit b0917945efa374be7648d67dbbaaff323ab39edc +Author: Corinna Vinschen +Date: Mon Aug 13 17:05:05 2018 +0200 + + cygwin: add missing stdarg.h include + + Further header file standarization in Cygwin uncovered a lazy + indirect include in bsd-cygwin_util.c + + Signed-off-by: Corinna Vinschen + +commit c3903c38b0fd168ab3d925c2b129d1a599593426 +Author: djm@openbsd.org +Date: Mon Aug 13 02:41:05 2018 +0000 + + upstream: revert compat.[ch] section of the following change. It + + causes double-free under some circumstances. + + -- + + date: 2018/07/31 03:07:24; author: djm; state: Exp; lines: +33 -18; commitid: f7g4UI8eeOXReTPh; + fix some memory leaks spotted by Coverity via Jakub Jelen in bz#2366 + feedback and ok dtucker@ + + OpenBSD-Commit-ID: 1e77547f60fdb5e2ffe23e2e4733c54d8d2d1137 + +commit 1b9dd4aa15208100fbc3650f33ea052255578282 +Author: djm@openbsd.org +Date: Sun Aug 12 20:19:13 2018 +0000 + + upstream: better diagnosics on alg list assembly errors; ok + + deraadt@ markus@ + + OpenBSD-Commit-ID: 5a557e74b839daf13cc105924d2af06a1560faee + +commit e36a5f61b0f5bebf6d49c215d228cd99dfe86e28 +Author: Damien Miller +Date: Sat Aug 11 18:08:45 2018 -0700 + + Some AIX fixes; report from Michael Felt + +commit 2f4766ceefe6657c5ad5fe92d13c411872acae0e +Author: dtucker@openbsd.org +Date: Fri Aug 10 01:35:49 2018 +0000 + + upstream: The script that cooks up PuTTY format host keys does not + + understand the new key format so convert back to old format to create the + PuTTY key and remove it once done. + + OpenBSD-Regress-ID: 2a449a18846c3a144bc645135b551ba6177e38d3 + +commit e1b26ce504662a5d5b991091228984ccfd25f280 +Author: djm@openbsd.org +Date: Fri Aug 10 00:44:01 2018 +0000 + + upstream: improve + + OpenBSD-Commit-ID: 40d839db0977b4e7ac8b647b16d5411d4faf2f60 + +commit 7c712966a3139622f7fb55045368d05de4e6782c +Author: djm@openbsd.org +Date: Fri Aug 10 00:42:29 2018 +0000 + + upstream: Describe pubkey format, prompted by bz#2853 + + While I'm here, describe and link to the remaining local PROTOCOL.* + docs that weren't already mentioned (PROTOCOL.key, PROTOCOL.krl and + PROTOCOL.mux) + + OpenBSD-Commit-ID: 2a900f9b994ba4d53e7aeb467d44d75829fd1231 + +commit ef100a2c5a8ed83afac0b8f36520815803da227a +Author: djm@openbsd.org +Date: Fri Aug 10 00:27:15 2018 +0000 + + upstream: fix numbering + + OpenBSD-Commit-ID: bc7a1764dff23fa4c5ff0e3379c9c4d5b63c9596 + +commit ed7bd5d93fe14c7bd90febd29b858ea985d14d45 +Author: djm@openbsd.org +Date: Wed Aug 8 01:16:01 2018 +0000 + + upstream: Use new private key format by default. This format is + + suported by OpenSSH >= 6.5 (released January 2014), so it should be supported + by most OpenSSH versions in active use. + + It is possible to convert new-format private keys to the older + format using "ssh-keygen -f /path/key -pm PEM". + + ok deraadt dtucker + + OpenBSD-Commit-ID: e3bd4f2509a2103bfa2f710733426af3ad6d8ab8 + +commit 967226a1bdde59ea137e8f0df871854ff7b91366 +Author: djm@openbsd.org +Date: Sat Aug 4 00:55:06 2018 +0000 + + upstream: invalidate dh->priv_key after freeing it in error path; + + avoids unlikely double-free later. Reported by Viktor Dukhovni via + https://github.com/openssh/openssh-portable/pull/96 feedback jsing@ tb@ + + OpenBSD-Commit-ID: e317eb17c3e05500ae851f279ef6486f0457c805 + +commit 74287f5df9966a0648b4a68417451dd18f079ab8 +Author: djm@openbsd.org +Date: Tue Jul 31 03:10:27 2018 +0000 + + upstream: delay bailout for invalid authentic + + =?UTF-8?q?ating=20user=20until=20after=20the=20packet=20containing=20the?= + =?UTF-8?q?=20request=20has=20been=20fully=20parsed.=20Reported=20by=20Dar?= + =?UTF-8?q?iusz=20Tytko=20and=20Micha=C5=82=20Sajdak;=20ok=20deraadt?= + MIME-Version: 1.0 + Content-Type: text/plain; charset=UTF-8 + Content-Transfer-Encoding: 8bit + + OpenBSD-Commit-ID: b4891882fbe413f230fe8ac8a37349b03bd0b70d + +commit 1a66079c0669813306cc69e5776a4acd9fb49015 +Author: djm@openbsd.org +Date: Tue Jul 31 03:07:24 2018 +0000 + + upstream: fix some memory leaks spotted by Coverity via Jakub Jelen + + in bz#2366 feedback and ok dtucker@ + + OpenBSD-Commit-ID: 8402bbae67d578bedbadb0ce68ff7c5a136ef563 + +commit 87f08be054b7eeadbb9cdeb3fb4872be79ccf218 +Author: Damien Miller +Date: Fri Jul 20 13:18:28 2018 +1000 + + Remove support for S/Key + + Most people will 1) be using modern multi-factor authentication methods + like TOTP/OATH etc and 2) be getting support for multi-factor + authentication via PAM or BSD Auth. + +commit 5d14019ba2ff54acbfd20a6b9b96bb860a8c7c31 +Author: markus@openbsd.org +Date: Fri Jul 27 12:03:17 2018 +0000 + + upstream: avoid expensive channel_open_message() calls; ok djm@ + + OpenBSD-Commit-ID: aea3b5512ad681cd8710367d743e8a753d4425d9 + +commit e655ee04a3cb7999dbf9641b25192353e2b69418 +Author: dtucker@openbsd.org +Date: Fri Jul 27 05:34:42 2018 +0000 + + upstream: Now that ssh can't be setuid, remove the + + original_real_uid and original_effective_uid globals and replace with calls + to plain getuid(). ok djm@ + + OpenBSD-Commit-ID: 92561c0cd418d34e6841e20ba09160583e27b68c + +commit 73ddb25bae4c33a0db361ac13f2e3a60d7c6c4a5 +Author: dtucker@openbsd.org +Date: Fri Jul 27 05:13:02 2018 +0000 + + upstream: Remove uid checks from low port binds. Now that ssh + + cannot be setuid and sshd always has privsep on, we can remove the uid checks + for low port binds and just let the system do the check. We leave a sanity + check for the !privsep case so long as the code is stil there. with & ok + djm@ + + OpenBSD-Commit-ID: 9535cfdbd1cd54486fdbedfaee44ce4367ec7ca0 + +commit c12033e102760d043bc5c98e6c8180e4d331b0df +Author: dtucker@openbsd.org +Date: Fri Jul 27 03:55:22 2018 +0000 + + upstream: ssh(1) no longer supports being setuid root. Remove reference + + to crc32 which went with protocol 1. Pointed out by deraadt@. + + OpenBSD-Commit-ID: f8763c25fd96ed91dd1abdab5667fd2e27e377b6 + +commit 4492e2ec4e1956a277ef507f51d66e5c2aafaaf8 +Author: Damien Miller +Date: Fri Jul 27 14:15:28 2018 +1000 + + correct snprintf truncation check in closefrom() + + Truncation cannot happen unless the system has set PATH_MAX to some + nonsensically low value. + + bz#2862, patch from Daniel Le + +commit 149cab325a8599a003364ed833f878449c15f259 +Author: Darren Tucker +Date: Fri Jul 27 13:46:06 2018 +1000 + + Include stdarg.h in mkdtemp for va_list. + +commit 6728f31bdfdc864d192773c32465b1860e23f556 +Author: deraadt@openbsd.org +Date: Wed Jul 25 17:12:35 2018 +0000 + + upstream: Don't redefine Makefile choices which come correct from + + bsd.*.mk ok markus + + OpenBSD-Commit-ID: 814b2f670df75759e1581ecef530980b2b3d7e0f + +commit 21fd477a855753c1a8e450963669e28e39c3b5d2 +Author: deraadt@openbsd.org +Date: Wed Jul 25 13:56:23 2018 +0000 + + upstream: fix indent; Clemens Goessnitzer + + OpenBSD-Commit-ID: b5149a6d92b264d35f879d24608087b254857a83 + +commit 8e433c2083db8664c41499ee146448ea7ebe7dbf +Author: beck@openbsd.org +Date: Wed Jul 25 13:10:56 2018 +0000 + + upstream: Use the caller provided (copied) pwent struct in + + load_public_identity_files instead of calling getpwuid() again and discarding + the argument. This prevents a client crash where tilde_expand_filename calls + getpwuid() again before the pwent pointer is used. Issue noticed and reported + by Pierre-Olivier Martel ok djm@ deraadt@ + + OpenBSD-Commit-ID: a067d74b5b098763736c94cc1368de8ea3f0b157 + +commit e2127abb105ae72b6fda64fff150e6b24b3f1317 +Author: jmc@openbsd.org +Date: Mon Jul 23 19:53:55 2018 +0000 + + upstream: oops, failed to notice that SEE ALSO got messed up; + + OpenBSD-Commit-ID: 61c1306542cefdc6e59ac331751afe961557427d + +commit ddf1b797c2d26bbbc9d410aa4f484cbe94673587 +Author: kn@openbsd.org +Date: Mon Jul 23 19:02:49 2018 +0000 + + upstream: Point to glob in section 7 for the actual list of special + + characters instead the C API in section 3. + + OK millert jmc nicm, "the right idea" deraadt + + OpenBSD-Commit-ID: a74fd215488c382809e4d041613aeba4a4b1ffc6 + +commit 01c98d9661d0ed6156e8602b650f72eed9fc4d12 +Author: dtucker@openbsd.org +Date: Sun Jul 22 12:16:59 2018 +0000 + + upstream: Switch authorized_keys example from ssh-dss to ssh-rsa + + since the former is no longer enabled by default. Pointed out by Daniel A. + Maierhofer, ok jmc + + OpenBSD-Commit-ID: 6a196cef53d7524e0c9b58cdbc1b5609debaf8c7 + +commit 472269f8fe19343971c2d08f504ab5cbb8234b33 +Author: djm@openbsd.org +Date: Fri Jul 20 05:01:10 2018 +0000 + + upstream: slightly-clearer description for AuthenticationMethods - the + + lists have comma-separated elements; bz#2663 from Hans Meier + + OpenBSD-Commit-ID: 931c983d0fde4764d0942fb2c2b5017635993b5a + +commit c59aca8adbdf7f5597084ad360a19bedb3f80970 +Author: Damien Miller +Date: Fri Jul 20 14:53:42 2018 +1000 + + Create control sockets in clean temp directories + + Adds a regress/mkdtemp tool and uses it to create empty temp + directories for tests needing control sockets. + + Patch from Colin Watson via bz#2660; ok dtucker + +commit 6ad8648e83e4f4ace37b742a05c2a6b6b872514e +Author: djm@openbsd.org +Date: Fri Jul 20 03:46:34 2018 +0000 + + upstream: remove unused zlib.h + + OpenBSD-Commit-ID: 8d274a9b467c7958df12668b49144056819f79f1 + +commit 3ba6e6883527fe517b6e4a824876e2fe62af22fc +Author: dtucker@openbsd.org +Date: Thu Jul 19 23:03:16 2018 +0000 + + upstream: Fix typo in comment. From Alexandru Iacob via github. + + OpenBSD-Commit-ID: eff4ec07c6c8c5483533da43a4dda37d72ef7f1d + +commit c77bc73c91bc656e343a1961756e09dd1b170820 +Author: Darren Tucker +Date: Fri Jul 20 13:48:51 2018 +1000 + + Explicitly include openssl before zlib. + + Some versions of OpenSSL have "free_func" in their headers, which zlib + typedefs. Including openssl after zlib (eg via sshkey.h) results in + "syntax error before `free_func'", which this fixes. + +commit 95d41e90eafcd1286a901e8e361e4a37b98aeb52 +Author: dtucker@openbsd.org +Date: Thu Jul 19 10:28:47 2018 +0000 + + upstream: Deprecate UsePrivilegedPort now that support for running + + ssh(1) setuid has been removed, remove supporting code and clean up + references to it in the man pages + + We have not shipped ssh(1) the setuid bit since 2002. If ayone + really needs to make connections from a low port number this can + be implemented via a small setuid ProxyCommand. + + ok markus@ jmc@ djm@ + + OpenBSD-Commit-ID: d03364610b7123ae4c6792f5274bd147b6de717e + +commit 258dc8bb07dfb35a46e52b0822a2c5b7027df60a +Author: dtucker@openbsd.org +Date: Wed Jul 18 11:34:04 2018 +0000 + + upstream: Remove support for running ssh(1) setuid and fatal if + + attempted. Do not link uidwap.c into ssh any more. Neuters + UsePrivilegedPort, which will be marked as deprecated shortly. ok markus@ + djm@ + + OpenBSD-Commit-ID: c4ba5bf9c096f57a6ed15b713a1d7e9e2e373c42 + +commit ac590760b251506b0a152551abbf8e8d6dc2f527 +Author: dtucker@openbsd.org +Date: Mon Jul 16 22:25:01 2018 +0000 + + upstream: Slot 0 in the hostbased key array was previously RSA1, + + but that is now gone and the slot is unused so remove it. Remove two + now-unused macros, and add an array bounds check to the two remaining ones + (array is statically sized, so mostly a safety check on future changes). ok + markus@ + + OpenBSD-Commit-ID: 2e4c0ca6cc1d8daeccead2aa56192a3f9d5e1e7a + +commit 26efc2f5df0e3bcf6a6bbdd0506fd682d60c2145 +Author: dtucker@openbsd.org +Date: Mon Jul 16 11:05:41 2018 +0000 + + upstream: Remove support for loading HostBasedAuthentication keys + + directly in ssh(1) and always use ssh-keysign. This removes one of the few + remaining reasons why ssh(1) might be setuid. ok markus@ + + OpenBSD-Commit-ID: 97f01e1448707129a20d75f86bad5d27c3cf0b7d + +commit 3eb7f1038d17af7aea3c2c62d1e30cd545607640 +Author: djm@openbsd.org +Date: Mon Jul 16 07:06:50 2018 +0000 + + upstream: keep options.identity_file_userprovided array in sync when we + + load keys, fixing some spurious error messages; ok markus + + OpenBSD-Commit-ID: c63e3d5200ee2cf9e35bda98de847302566c6a00 + +commit 2f131e1b34502aa19f345e89cabf6fa3fc097f09 +Author: djm@openbsd.org +Date: Mon Jul 16 03:09:59 2018 +0000 + + upstream: memleak in unittest; found by valgrind + + OpenBSD-Regress-ID: 168c23b0fb09fc3d0b438628990d3fd9260a8a5e + +commit de2997a4cf22ca0a524f0e5b451693c583e2fd89 +Author: djm@openbsd.org +Date: Mon Jul 16 03:09:13 2018 +0000 + + upstream: memleaks; found by valgrind + + OpenBSD-Commit-ID: 6c3ba22be53e753c899545f771e8399fc93cd844 + +commit 61cc0003eb37fa07603c969c12b7c795caa498f3 +Author: Darren Tucker +Date: Sat Jul 14 16:49:01 2018 +1000 + + Undef a few new macros in sys-queue.h. + + Prevents macro redefinition warnings on OSX. + +commit 30a2c213877a54a44dfdffb6ca8db70be5b457e0 +Author: Darren Tucker +Date: Fri Jul 13 13:40:20 2018 +1000 + + Include unistd.h for geteuid declaration. + +commit 1dd32c23f2a85714dfafe2a9cc516971d187caa4 +Author: Darren Tucker +Date: Fri Jul 13 13:38:10 2018 +1000 + + Fallout from buffer conversion in AUDIT_EVENTS. + + Supply missing "int r" and fix error path for sshbuf_new(). + +commit 7449c178e943e5c4f6c8416a4e41d93b70c11c9e +Author: djm@openbsd.org +Date: Fri Jul 13 02:13:50 2018 +0000 + + upstream: make this use ssh_proxy rather than starting/stopping a + + daemon for each testcase + + OpenBSD-Regress-ID: 608b7655ea65b1ba8fff5a13ce9caa60ef0c8166 + +commit dbab02f9208d9baa134cec1d007054ec82b96ca9 +Author: djm@openbsd.org +Date: Fri Jul 13 02:13:19 2018 +0000 + + upstream: fix leaks in unit test; with this, all unit tests are + + leak free (as far as valgrind can spot anyway) + + OpenBSD-Regress-ID: b824d8b27998365379963440e5d18b95ca03aa17 + +commit 2f6accff5085eb79b0dbe262d8b85ed017d1a51c +Author: Damien Miller +Date: Fri Jul 13 11:39:25 2018 +1000 + + Enable leak checks for unit tests with valgrind + + Leave the leak checking on unconditionally when running with valgrind. + The unit tests are leak-free and I want them to stay that way. + +commit e46cfbd9db5e907b821bf4fd0184d4dab99815ee +Author: Damien Miller +Date: Fri Jul 13 11:38:59 2018 +1000 + + increase timeout to match cfgmatch.sh + + lets test pass under valgrind (on my workstation at least) + +commit 6aa1bf475cf3e7a2149acc5a1e80e904749f064c +Author: Damien Miller +Date: Thu Jul 12 14:54:18 2018 +1000 + + rm regress/misc/kexfuzz/*.o in distclean target + +commit eef1447ddb559c03725a23d4aa6d03f40e8b0049 +Author: Damien Miller +Date: Thu Jul 12 14:49:26 2018 +1000 + + repair !WITH_OPENSSL build + +commit 4d3b2f36fd831941d1627ac587faae37b6d3570f +Author: Damien Miller +Date: Thu Jul 12 14:49:14 2018 +1000 + + missing headers + +commit 3f420a692b293921216549c1099c2e46ff284eae +Author: Darren Tucker +Date: Thu Jul 12 14:57:46 2018 +1000 + + Remove key.h from portable files too. + + Commit 5467fbcb removed key.h so stop including it in portable files + too. Fixes builds on lots of platforms. + +commit e2c4af311543093f16005c10044f7e06af0426f0 +Author: djm@openbsd.org +Date: Thu Jul 12 04:35:25 2018 +0000 + + upstream: remove prototype to long-gone function + + OpenBSD-Commit-ID: 0414642ac7ce01d176b9f359091a66a8bbb640bd + +commit 394a842e60674bf8ee5130b9f15b01452a0b0285 +Author: markus@openbsd.org +Date: Wed Jul 11 18:55:11 2018 +0000 + + upstream: treat ssh_packet_write_wait() errors as fatal; ok djm@ + + OpenBSD-Commit-ID: f88ba43c9d54ed2d911218aa8d3f6285430629c3 + +commit 5467fbcb09528ecdcb914f4f2452216c24796790 +Author: markus@openbsd.org +Date: Wed Jul 11 18:53:29 2018 +0000 + + upstream: remove legacy key emulation layer; ok djm@ + + OpenBSD-Commit-ID: 2b1f9619259e222bbd4fe9a8d3a0973eafb9dd8d + +commit 5dc4c59d5441a19c99e7945779f7ec9051126c25 +Author: martijn@openbsd.org +Date: Wed Jul 11 08:19:35 2018 +0000 + + upstream: s/wuth/with/ in comment + + OpenBSD-Commit-ID: 9de41468afd75f54a7f47809d2ad664aa577902c + +commit 1c688801e9dd7f9889fb2a29bc2b6fbfbc35a11f +Author: Darren Tucker +Date: Wed Jul 11 12:12:38 2018 +1000 + + Include stdlib.h for declaration of free. + + Fixes build with -Werror on at least Fedora and probably others. + +commit fccfa239def497615f92ed28acc57cfe63da3666 +Author: Damien Miller +Date: Wed Jul 11 10:19:56 2018 +1000 + + VALGRIND_CHECK_LEAKS logic was backwards :( + +commit 416287d45fcde0a8e66eee8b99aa73bd58607588 +Author: Darren Tucker +Date: Wed Jul 11 10:10:26 2018 +1000 + + Fix sshbuf_new error path in skey. + +commit 7aab109b8b90a353c1af780524f1ac0d3af47bab +Author: Darren Tucker +Date: Wed Jul 11 10:06:18 2018 +1000 + + Supply missing third arg in skey. + + During the change to the new buffer api the third arg to + sshbuf_get_cstring was ommitted. Fixes build when configured with skey. + +commit 380320bb72cc353a901790ab04b6287fd335dc4a +Author: Darren Tucker +Date: Wed Jul 11 10:03:34 2018 +1000 + + Supply some more missing "int r" in skey + +commit d20720d373d8563ee737d1a45dc5e0804d622dbc +Author: Damien Miller +Date: Wed Jul 11 09:56:36 2018 +1000 + + disable valgrind memleak checking by default + + Add VALGRIND_CHECK_LEAKS knob to turn it back on. + +commit 79c9d35018f3a5e30ae437880b669aa8636cd3cd +Author: Darren Tucker +Date: Wed Jul 11 09:54:00 2018 +1000 + + Supply missing "int r" in skey code. + +commit 984bacfaacbbe31c35191b828fb5b5b2f0362c36 +Author: sf@openbsd.org +Date: Tue Jul 10 09:36:58 2018 +0000 + + upstream: re-remove some pre-auth compression bits + + This time, make sure to not remove things that are necessary for + pre-auth compression on the client. Add a comment that pre-auth + compression is still supported in the client. + + ok markus@ + + OpenBSD-Commit-ID: 282c6fec7201f18a5c333bbb68d9339734d2f784 + +commit 120a1ec74e8d9d29f4eb9a27972ddd22351ddef9 +Author: Damien Miller +Date: Tue Jul 10 19:39:52 2018 +1000 + + Adapt portable to legacy buffer API removal + +commit 0f3958c1e6ffb8ea4ba27e2a97a00326fce23246 +Author: djm@openbsd.org +Date: Tue Jul 10 09:13:30 2018 +0000 + + upstream: kerberos/gssapi fixes for buffer removal + + OpenBSD-Commit-ID: 1cdf56fec95801e4563c47f21696f04cd8b60c4c + +commit c74ae8e7c45f325f3387abd48fa7dfef07a08069 +Author: djm@openbsd.org +Date: Tue Jul 10 06:45:29 2018 +0000 + + upstream: buffer.[ch] and bufaux.c are no more + + OpenBSD-Commit-ID: d1a1852284e554f39525eb4d4891b207cfb3d3a0 + +commit a881e5a133d661eca923fb0633a03152ab2b70b2 +Author: djm@openbsd.org +Date: Tue Jul 10 06:43:52 2018 +0000 + + upstream: one mention of Buffer that almost got away :) + + OpenBSD-Commit-ID: 30d7c27a90b4544ad5dfacf654595710cd499f02 + +commit 49f47e656b60bcd1d1db98d88105295f4b4e600d +Author: markus@openbsd.org +Date: Mon Jul 9 21:59:10 2018 +0000 + + upstream: replace cast with call to sshbuf_mutable_ptr(); ok djm@ + + OpenBSD-Commit-ID: 4dfe9d29fa93d9231645c89084f7217304f7ba29 + +commit cb30cd47041edb03476be1c8ef7bc1f4b69d1555 +Author: markus@openbsd.org +Date: Mon Jul 9 21:56:06 2018 +0000 + + upstream: remove legacy buffer API emulation layer; ok djm@ + + OpenBSD-Commit-ID: 2dd5dc17cbc23195be4299fa93be2707a0e08ad9 + +commit 235c7c4e3bf046982c2d8242f30aacffa01073d1 +Author: markus@openbsd.org +Date: Mon Jul 9 21:53:45 2018 +0000 + + upstream: sshd: switch monitor to sshbuf API; lots of help & ok + + djm@ + + OpenBSD-Commit-ID: d89bd02d33974fd35ca0b8940d88572227b34a48 + +commit b8d9214d969775e409e1408ecdf0d58fad99b344 +Author: markus@openbsd.org +Date: Mon Jul 9 21:37:55 2018 +0000 + + upstream: sshd: switch GSSAPI to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: e48449ab4be3f006f7ba33c66241b7d652973e30 + +commit c7d39ac8dc3587c5f05bdd5bcd098eb5c201c0c8 +Author: markus@openbsd.org +Date: Mon Jul 9 21:35:50 2018 +0000 + + upstream: sshd: switch authentication to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: 880aa06bce4b140781e836bb56bec34873290641 + +commit c3cb7790e9efb14ba74b2d9f543ad593b3d55b31 +Author: markus@openbsd.org +Date: Mon Jul 9 21:29:36 2018 +0000 + + upstream: sshd: switch config to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: 72b02017bac7feac48c9dceff8355056bea300bd + +commit 2808d18ca47ad3d251836c555f0e22aaca03d15c +Author: markus@openbsd.org +Date: Mon Jul 9 21:26:02 2018 +0000 + + upstream: sshd: switch loginmsg to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: f3cb4e54bff15c593602d95cc43e32ee1a4bac42 + +commit 89dd615b8b531979be63f05f9d5624367c9b28e6 +Author: markus@openbsd.org +Date: Mon Jul 9 21:20:26 2018 +0000 + + upstream: ttymodes: switch to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: 5df340c5965e822c9da21e19579d08dea3cbe429 + +commit f4608a7065480516ab46214f554e5f853fb7870f +Author: markus@openbsd.org +Date: Mon Jul 9 21:18:10 2018 +0000 + + upstream: client: switch mux to sshbuf API; with & ok djm@ + + OpenBSD-Commit-ID: 5948fb98d704f9c4e075b92edda64e0290b5feb2 + +commit cecee2d607099a7bba0a84803e2325d15be4277b +Author: markus@openbsd.org +Date: Mon Jul 9 21:03:30 2018 +0000 + + upstream: client: switch to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: 60cb0356114acc7625ab85105f6f6a7cd44a8d05 + +commit ff55f4ad898137d4703e7a2bcc81167dfe8e9324 +Author: markus@openbsd.org +Date: Mon Jul 9 20:39:28 2018 +0000 + + upstream: pkcs11: switch to sshbuf API; ok djm@ + + OpenBSD-Commit-ID: 98cc4e800f1617c51caf59a6cb3006f14492db79 + +commit 168b46f405d6736960ba7930389eecb9b6710b7e +Author: sf@openbsd.org +Date: Mon Jul 9 13:37:10 2018 +0000 + + upstream: Revert previous two commits + + It turns out we still support pre-auth compression on the client. + Therefore revert the previous two commits: + + date: 2018/07/06 09:06:14; author: sf; commitid: yZVYKIRtUZWD9CmE; + Rename COMP_DELAYED to COMP_ZLIB + + Only delayed compression is supported nowadays. + + ok markus@ + + date: 2018/07/06 09:05:01; author: sf; commitid: rEGuT5UgI9f6kddP; + Remove leftovers from pre-authentication compression + + Support for this has been removed in 2016. + COMP_DELAYED will be renamed in a later commit. + + ok markus@ + + OpenBSD-Commit-ID: cdfef526357e4e1483c86cf599491b2dafb77772 + +commit ab39267fa1243d02b6c330615539fc4b21e17dc4 +Author: sf@openbsd.org +Date: Fri Jul 6 09:06:14 2018 +0000 + + upstream: Rename COMP_DELAYED to COMP_ZLIB + + Only delayed compression is supported nowadays. + + ok markus@ + + OpenBSD-Commit-ID: 5b1dbaf3d9a4085aaa10fec0b7a4364396561821 + +commit 95db395d2e56a6f868193aead6cadb2493f036c6 +Author: sf@openbsd.org +Date: Fri Jul 6 09:05:01 2018 +0000 + + upstream: Remove leftovers from pre-authentication compression + + Support for this has been removed in 2016. + COMP_DELAYED will be renamed in a later commit. + + ok markus@ + + OpenBSD-Commit-ID: 6a99616c832627157113fcb0cf5a752daf2e6b58 + +commit f28a4d5cd24c4aa177e96b4f96957991e552cb70 +Author: sf@openbsd.org +Date: Fri Jul 6 09:03:02 2018 +0000 + + upstream: Remove unused ssh_packet_start_compression() + + ok markus@ + + OpenBSD-Commit-ID: 9d34cf2f59aca5422021ae2857190578187dc2b4 + +commit 872517ddbb72deaff31d4760f28f2b0a1c16358f +Author: Darren Tucker +Date: Fri Jul 6 13:32:02 2018 +1000 + + Defer setting bufsiz in getdelim. + + Do not write to bufsiz until we are sure the malloc has succeeded, + in case any callers rely on it (which they shouldn't). ok djm@ + +commit 3deb56f7190a414dc264e21e087a934fa1847283 +Author: Darren Tucker +Date: Thu Jul 5 13:32:01 2018 +1000 + + Fix other callers of read_environment_file. + + read_environment_file recently gained an extra argument Some platform + specific code also calls it so add the argument to those too. Fixes + build on Solaris and AIX. + +commit 314908f451e6b2d4ccf6212ad246fa4619c721d3 +Author: djm@openbsd.org +Date: Wed Jul 4 13:51:45 2018 +0000 + + upstream: deal with API rename: match_filter_list() => + + match_filter_blacklist() + + OpenBSD-Regress-ID: 2da342be913efeb51806351af906fab01ba4367f + +commit 89f54cdf6b9cf1cf5528fd33897f1443913ddfb4 +Author: djm@openbsd.org +Date: Wed Jul 4 13:51:12 2018 +0000 + + upstream: exercise new expansion behaviour of + + PubkeyAcceptedKeyTypes and, by proxy, test kex_assemble_names() + + ok markus@ + + OpenBSD-Regress-ID: 292978902e14d5729aa87e492dd166c842f72736 + +commit 187633f24c71564e970681c8906df5a6017dcccf +Author: djm@openbsd.org +Date: Tue Jul 3 13:53:26 2018 +0000 + + upstream: add a comment that could have saved me 45 minutes of wild + + goose chasing + + OpenBSD-Regress-ID: d469b29ffadd3402c090e21b792d627d46fa5297 + +commit 312d2f2861a2598ed08587cb6c45c0e98a85408f +Author: djm@openbsd.org +Date: Wed Jul 4 13:49:31 2018 +0000 + + upstream: repair PubkeyAcceptedKeyTypes (and friends) after RSA + + signature work - returns ability to add/remove/specify algorithms by + wildcard. + + Algorithm lists are now fully expanded when the server/client configs + are finalised, so errors are reported early and the config dumps + (e.g. "ssh -G ...") now list the actual algorithms selected. + + Clarify that, while wildcards are accepted in algorithm lists, they + aren't full pattern-lists that support negation. + + (lots of) feedback, ok markus@ + + OpenBSD-Commit-ID: a8894c5c81f399a002f02ff4fe6b4fa46b1f3207 + +commit 303af5803bd74bf05d375c04e1a83b40c30b2be5 +Author: djm@openbsd.org +Date: Tue Jul 3 11:43:49 2018 +0000 + + upstream: some magic for RSA-SHA2 checks + + OpenBSD-Regress-ID: e5a9b11368ff6d86e7b25ad10ebe43359b471cd4 + +commit 7d68e262944c1fff1574600fe0e5e92ec8b398f5 +Author: Damien Miller +Date: Tue Jul 3 23:27:11 2018 +1000 + + depend + +commit b4d4eda633af433d20232cbf7e855ceac8b83fe5 +Author: djm@openbsd.org +Date: Tue Jul 3 13:20:25 2018 +0000 + + upstream: some finesse to fix RSA-SHA2 certificate authentication + + for certs hosted in ssh-agent + + OpenBSD-Commit-ID: e5fd5edd726137dda2d020e1cdebc464110a010f + +commit d78b75df4a57e0f92295f24298e5f2930e71c172 +Author: djm@openbsd.org +Date: Tue Jul 3 13:07:58 2018 +0000 + + upstream: check correct variable; unbreak agent keys + + OpenBSD-Commit-ID: c36981fdf1f3ce04966d3310826a3e1e6233d93e + +commit 2f30300c5e15929d0e34013f38d73e857f445e12 +Author: djm@openbsd.org +Date: Tue Jul 3 11:42:12 2018 +0000 + + upstream: crank version number to 7.8; needed for new compat flag + + for prior version; part of RSA-SHA2 strictification, ok markus@ + + OpenBSD-Commit-ID: 84a11fc0efd2674c050712336b5093f5d408e32b + +commit 4ba0d54794814ec0de1ec87987d0c3b89379b436 +Author: djm@openbsd.org +Date: Tue Jul 3 11:39:54 2018 +0000 + + upstream: Improve strictness and control over RSA-SHA2 signature + + In ssh, when an agent fails to return a RSA-SHA2 signature when + requested and falls back to RSA-SHA1 instead, retry the signature to + ensure that the public key algorithm sent in the SSH_MSG_USERAUTH + matches the one in the signature itself. + + In sshd, strictly enforce that the public key algorithm sent in the + SSH_MSG_USERAUTH message matches what appears in the signature. + + Make the sshd_config PubkeyAcceptedKeyTypes and + HostbasedAcceptedKeyTypes options control accepted signature algorithms + (previously they selected supported key types). This allows these + options to ban RSA-SHA1 in favour of RSA-SHA2. + + Add new signature algorithms "rsa-sha2-256-cert-v01@openssh.com" and + "rsa-sha2-512-cert-v01@openssh.com" to force use of RSA-SHA2 signatures + with certificate keys. + + feedback and ok markus@ + + OpenBSD-Commit-ID: c6e9f6d45eed8962ad502d315d7eaef32c419dde + +commit 95344c257412b51199ead18d54eaed5bafb75617 +Author: djm@openbsd.org +Date: Tue Jul 3 10:59:35 2018 +0000 + + upstream: allow sshd_config PermitUserEnvironment to accept a + + pattern-list of whitelisted environment variable names in addition to yes|no. + + bz#1800, feedback and ok markus@ + + OpenBSD-Commit-ID: 77dc2b468e0bf04b53f333434ba257008a1fdf24 + +commit 6f56fe4b9578b0627667f8bce69d4d938a88324c +Author: millert@openbsd.org +Date: Tue Jun 26 11:23:59 2018 +0000 + + upstream: Fix "WARNING: line 6 disappeared in /etc/moduli, giving up" + + when choosing a prime. An extra increment of linenum snuck in as part of the + conversion to getline(). OK djm@ markus@ + + OpenBSD-Commit-ID: 0019225cb52ed621b71cd9f19ee2e78e57e3dd38 + +commit 1eee79a11c1b3594f055b01e387c49c9a6e80005 +Author: dtucker@openbsd.org +Date: Mon Jul 2 14:13:30 2018 +0000 + + upstream: One ampersand is enough to backgroud an process. OpenBSD + + doesn't seem to mind, but some platforms in -portable object to the second. + + OpenBSD-Regress-ID: d6c3e404871764343761dc25c3bbe29c2621ff74 + +commit 6301e6c787d4e26bfae1119ab4f747bbcaa94e44 +Author: Darren Tucker +Date: Mon Jul 2 21:16:58 2018 +1000 + + Add implementation of getline. + + Add getline for the benefit of platforms that don't have it. Sourced + from NetBSD (OpenBSD's implementation is a little too chummy with the + internals of FILE). + +commit 84623e0037628f9992839063151f7a9f5f13099a +Author: djm@openbsd.org +Date: Tue Jun 26 02:02:36 2018 +0000 + + upstream: whitespace + + OpenBSD-Commit-ID: 9276951caf4daf555f6d262e95720e7f79244572 + +commit 90e51d672711c19a36573be1785caf35019ae7a8 +Author: djm@openbsd.org +Date: Mon Jun 25 22:28:33 2018 +0000 + + upstream: fix NULL dereference in open_listen_match_tcpip() + + OpenBSD-Commit-ID: c968c1d29e392352383c0f9681fcc1e93620c4a9 + +commit f535ff922a67d9fcc5ee69d060d1b21c8bb01d14 +Author: jmc@openbsd.org +Date: Tue Jun 19 05:36:57 2018 +0000 + + upstream: spelling; + + OpenBSD-Commit-ID: db542918185243bea17202383a581851736553cc + +commit 80e199d6175904152aafc5c297096c3e18297691 +Author: djm@openbsd.org +Date: Tue Jun 19 03:02:17 2018 +0000 + + upstream: test PermitListen with bare port numbers + + OpenBSD-Regress-ID: 4b50a02dfb0ccaca08247f3877c444126ba901b3 + +commit 87ddd676da0f3abd08b778b12b53b91b670dc93c +Author: djm@openbsd.org +Date: Tue Jun 19 02:59:41 2018 +0000 + + upstream: allow bare port numbers to appear in PermitListen directives, + + e.g. + + PermitListen 2222 8080 + + is equivalent to: + + PermitListen *:2222 *:8080 + + Some bonus manpage improvements, mostly from markus@ + + "looks fine" markus@ + + OpenBSD-Commit-ID: 6546b0cc5aab7f53d65ad0a348ca0ae591d6dd24 + +commit 26f96ca10ad0ec5da9b05b99de1e1ccea15a11be +Author: djm@openbsd.org +Date: Fri Jun 15 07:01:11 2018 +0000 + + upstream: invalidate supplemental group cache used by + + temporarily_use_uid() when the target uid differs; could cause failure to + read authorized_keys under some configurations. patch by Jakub Jelen via + bz2873; ok dtucker, markus + + OpenBSD-Commit-ID: 48a345f0ee90f6c465a078eb5e89566b23abd8a1 + +commit 89a85d724765b6b82e0135ee5a1181fdcccea9c6 +Author: djm@openbsd.org +Date: Sun Jun 10 23:45:41 2018 +0000 + + upstream: unbreak SendEnv; patch from tb@ + + OpenBSD-Commit-ID: fc808daced813242563b80976e1478de95940056 + +commit acf4260f0951f89c64e1ebbc4c92f451768871ad +Author: jmc@openbsd.org +Date: Sat Jun 9 06:36:31 2018 +0000 + + upstream: sort previous; + + OpenBSD-Commit-ID: 27d80d8b8ca99bc33971dee905e8ffd0053ec411 + +commit 1678d4236451060b735cb242d2e26e1ac99f0947 +Author: djm@openbsd.org +Date: Sat Jun 9 03:18:11 2018 +0000 + + upstream: slightly better wording re handing of $TERM, from Jakub + + Jelen via bz2386 + + OpenBSD-Commit-ID: 14bea3f069a93c8be66a7b97794255a91fece964 + +commit 28013759f09ed3ebf7e8335e83a62936bd7a7f47 +Author: djm@openbsd.org +Date: Sat Jun 9 03:03:10 2018 +0000 + + upstream: add a SetEnv directive for sshd_config to allow an + + administrator to explicitly specify environment variables set in sessions + started by sshd. These override the default environment and any variables set + by user configuration (PermitUserEnvironment, etc), but not the SSH_* + variables set by sshd itself. + + ok markus@ + + OpenBSD-Commit-ID: b6a96c0001ccd7dd211df6cae9e961c20fd718c0 + +commit 7082bb58a2eb878d23ec674587c742e5e9673c36 +Author: djm@openbsd.org +Date: Sat Jun 9 03:01:12 2018 +0000 + + upstream: add a SetEnv directive to ssh_config that allows setting + + environment variables for the remote session (subject to the server accepting + them) + + refactor SendEnv to remove the arbitrary limit of variable names. + + ok markus@ + + OpenBSD-Commit-ID: cfbb00d9b0e10c1ffff1d83424351fd961d1f2be + +commit 3b9798bda15bd3f598f5ef07595d64e23504da91 +Author: djm@openbsd.org +Date: Sat Jun 9 02:58:02 2018 +0000 + + upstream: reorder child environment preparation so that variables + + read from ~/.ssh/environment (if enabled) do not override SSH_* variables set + by the server. + + OpenBSD-Commit-ID: 59f9d4c213cdcef2ef21f4b4ae006594dcf2aa7a + +commit 0368889f82f63c82ff8db9f8c944d89e7c657db4 +Author: djm@openbsd.org +Date: Fri Jun 8 03:35:36 2018 +0000 + + upstream: fix incorrect expansion of %i in + + load_public_identity_files(); reported by Roumen Petrov + + OpenBSD-Commit-ID: a827289e77149b5e0850d72a350c8b0300e7ef25 + +commit 027607fc2db6a0475a3380f8d95c635482714cb0 +Author: djm@openbsd.org +Date: Fri Jun 8 01:55:40 2018 +0000 + + upstream: fix some over-long lines and __func__ up some debug + + messages + + OpenBSD-Commit-ID: c70a60b4c8207d9f242fc2351941ba50916bb267 + +commit 6ff6fda705bc204456a5fa12518dde6e8790bb02 +Author: jmc@openbsd.org +Date: Thu Jun 7 11:26:14 2018 +0000 + + upstream: tweak previous; + + OpenBSD-Commit-ID: f98f16af10b28e24bcecb806cb71ea994b648fd6 + +commit f2c06ab8dd90582030991f631a2715216bf45e5a +Author: Darren Tucker +Date: Fri Jun 8 17:43:36 2018 +1000 + + Remove ability to override $LD. + + Since autoconf always uses $CC to link C programs, allowing users to + override LD caused mismatches between what LD_LINK_IFELSE thought worked + and what ld thought worked. If you do need to do this kind of thing you + need to set a compiler flag such as gcc's -fuse-ld in LDFLAGS. + +commit e1542a80797b4ea40a91d2896efdcc76a57056d2 +Author: Darren Tucker +Date: Fri Jun 8 13:55:59 2018 +1000 + + Better detection of unsupported compiler options. + + Should prevent "unsupported -Wl,-z,retpoline" warnings during linking. + ok djm@ + +commit 57379dbd013ad32ee3f9989bf5f5741065428360 +Author: djm@openbsd.org +Date: Thu Jun 7 14:29:43 2018 +0000 + + upstream: test the correct configuration option name + + OpenBSD-Regress-ID: 492279ea9f65657f97a970e0e7c7fd0b339fee23 + +commit 6d41815e202fbd6182c79780b6cc90e1ec1c9981 +Author: djm@openbsd.org +Date: Thu Jun 7 09:26:42 2018 +0000 + + upstream: some permitlisten fixes from markus@ that I missed in my + + insomnia-fueled commits last night + + OpenBSD-Commit-ID: 26f23622e928996086e85b1419cc1c0f136e359c + +commit 4319f7a868d86d435fa07112fcb6153895d03a7f +Author: djm@openbsd.org +Date: Thu Jun 7 04:46:34 2018 +0000 + + upstream: permitlisten/PermitListen unit test from Markus + + OpenBSD-Regress-ID: ab12eb42f0e14926980441cf7c058a6d1d832ea5 + +commit fa09076410ffc2d34d454145af23c790d728921e +Author: djm@openbsd.org +Date: Thu Jun 7 04:31:51 2018 +0000 + + upstream: fix regression caused by recent permitlisten option commit: + + authorized_keys lines that contained permitopen/permitlisten were being + treated as invalid. + + OpenBSD-Commit-ID: 7ef41d63a5a477b405d142dc925b67d9e7aaa31b + +commit 7f90635216851f6cb4bf3999e98b825f85d604f8 +Author: markus@openbsd.org +Date: Wed Jun 6 18:29:18 2018 +0000 + + upstream: switch config file parsing to getline(3) as this avoids + + static limits noted by gerhard@; ok dtucker@, djm@ + + OpenBSD-Commit-ID: 6d702eabef0fa12e5a1d75c334a8c8b325298b5c + +commit 392db2bc83215986a91c0b65feb0e40e7619ce7e +Author: djm@openbsd.org +Date: Wed Jun 6 18:25:33 2018 +0000 + + upstream: regress test for PermitOpen + + OpenBSD-Regress-ID: ce8b5f28fc039f09bb297fc4a92319e65982ddaf + +commit 803d896ef30758135e2f438bdd1a0be27989e018 +Author: djm@openbsd.org +Date: Wed Jun 6 18:24:15 2018 +0000 + + upstream: man bits for permitlisten authorized_keys option + + OpenBSD-Commit-ID: 86910af8f781a4ac5980fea125442eb25466dd78 + +commit 04df43208b5b460d7360e1598f876b92a32f5922 +Author: djm@openbsd.org +Date: Wed Jun 6 18:24:00 2018 +0000 + + upstream: man bits for PermitListen + + OpenBSD-Commit-ID: 35b200cba4e46a16a4db6a80ef11838ab0fad67c + +commit 93c06ab6b77514e0447fe4f1d822afcbb2a9be08 +Author: djm@openbsd.org +Date: Wed Jun 6 18:23:32 2018 +0000 + + upstream: permitlisten option for authorized_keys; ok markus@ + + OpenBSD-Commit-ID: 8650883018d7aa893173d703379e4456a222c672 + +commit 115063a6647007286cc8ca70abfd2a7585f26ccc +Author: djm@openbsd.org +Date: Wed Jun 6 18:22:41 2018 +0000 + + upstream: Add a PermitListen directive to control which server-side + + addresses may be listened on when the client requests remote forwarding (ssh + -R). + + This is the converse of the existing PermitOpen directive and this + includes some refactoring to share much of its implementation. + + feedback and ok markus@ + + OpenBSD-Commit-ID: 15a931238c61a3f2ac74ea18a98c933e358e277f + +commit 7703ae5f5d42eb302ded51705166ff6e19c92892 +Author: Darren Tucker +Date: Wed Jun 6 16:04:29 2018 +1000 + + Use ssh-keygen -A to generate missing host keys. + + Instead of testing for each specific key type, use ssh-keygen -A to + generate any missing host key types. + +commit e8d59fef1098e24f408248dc64e5c8efa5d01f3c +Author: jmc@openbsd.org +Date: Fri Jun 1 06:23:10 2018 +0000 + + upstream: add missing punctuation after %i in ssh_config.5, and + + make the grammatical format in sshd_config.5 match that in ssh_config.5; + + OpenBSD-Commit-ID: e325663b9342f3d556e223e5306e0d5fa1a74fa0 + +commit a1f737d6a99314e291a87856122cb4dbaf64c641 +Author: jmc@openbsd.org +Date: Fri Jun 1 05:52:26 2018 +0000 + + upstream: oops - further adjustment to text neccessary; + + OpenBSD-Commit-ID: 23585576c807743112ab956be0fb3c786bdef025 + +commit 294028493471e0bd0c7ffe55dc0c0a67cba6ec41 +Author: jmc@openbsd.org +Date: Fri Jun 1 05:50:18 2018 +0000 + + upstream: %U needs to be escaped; tweak text; + + OpenBSD-Commit-ID: 30887b73ece257273fb619ab6f4e86dc92ddc15e + +commit e5019da3c5a31e6e729a565f2b886a80c4be96cc +Author: dtucker@openbsd.org +Date: Fri Jun 1 04:31:48 2018 +0000 + + upstream: Apply umask to all incoming files and directories not + + just files. This makes sure it gets applied to directories too, and prevents + a race where files get chmodded after creation. bz#2839, ok djm@ + + OpenBSD-Commit-ID: 3168ee6c7c39093adac4fd71039600cfa296203b + +commit a1dcafc41c376332493b9385ee39f9754dc145ec +Author: djm@openbsd.org +Date: Fri Jun 1 03:52:37 2018 +0000 + + upstream: Adapt to extra default verboisity from ssh-keygen when + + searching for and hashing known_hosts entries in a single operation + (ssh-keygen -HF ...) Patch from Anton Kremenetsky + + OpenBSD-Regress-ID: 519585a4de35c4611285bd6a7272766c229b19dd + +commit 76f314c75dffd4a55839d50ee23622edad52c168 +Author: djm@openbsd.org +Date: Tue May 22 00:22:49 2018 +0000 + + upstream: Add TEST_SSH_FAIL_FATAL variable, to force all failures + + to instantly abort the test. Useful in capturing clean logs for individual + failure cases. + + OpenBSD-Regress-ID: feba18cf338c2328b9601bd4093cabdd9baa3af1 + +commit 065c8c055df8d83ae7c92e5e524a579d87668aab +Author: dtucker@openbsd.org +Date: Fri May 11 03:51:06 2018 +0000 + + upstream: Clean up comment. + + OpenBSD-Regress-ID: 6adb35f384d447e7dcb9f170d4f0d546d3973e10 + +commit 01b048c8eba3b021701bd0ab26257fc82903cba8 +Author: djm@openbsd.org +Date: Fri Jun 1 04:21:29 2018 +0000 + + upstream: whitespace + + OpenBSD-Commit-ID: e5edb5e843ddc9b73a8e46518899be41d5709add + +commit 854ae209f992465a276de0b5f10ef770510c2418 +Author: djm@openbsd.org +Date: Fri Jun 1 04:05:29 2018 +0000 + + upstream: make ssh_remote_ipaddr() capable of being called after + + the ssh->state has been torn down; bz#2773 + + OpenBSD-Commit-ID: 167f12523613ca3d16d7716a690e7afa307dc7eb + +commit 3e088aaf236ef35beeef3c9be93fd53700df5861 +Author: djm@openbsd.org +Date: Fri Jun 1 03:51:34 2018 +0000 + + upstream: return correct exit code when searching for and hashing + + known_hosts entries in a single operation (ssh-keygen -HF hostname); bz2772 + Report and fix from Anton Kremenetsky + + OpenBSD-Commit-ID: ac10ca13eb9bb0bc50fcd42ad11c56c317437b58 + +commit 9c935dd9bf05628826ad2495d3e8bdf3d3271c21 +Author: djm@openbsd.org +Date: Fri Jun 1 03:33:53 2018 +0000 + + upstream: make UID available as a %-expansion everywhere that the + + username is available currently. In the client this is via %i, in the server + %U (since %i was already used in the client in some places for this, but used + for something different in the server); bz#2870, ok dtucker@ + + OpenBSD-Commit-ID: c7e912b0213713316cb55db194b3a6415b3d4b95 + +commit d8748b91d1d6c108c0c260ed41fa55f37b9ef34b +Author: djm@openbsd.org +Date: Fri Jun 1 03:11:49 2018 +0000 + + upstream: prefer argv0 to "ssh" when re-executing ssh for ProxyJump + + directive; bz2831, feedback and ok dtucker@ + + OpenBSD-Commit-ID: 3cec709a131499fbb0c1ea8a0a9e0b0915ce769e + +commit fbb4b5fd4f8e0bb89732670a01954e18b69e15ba +Author: djm@openbsd.org +Date: Fri May 25 07:11:01 2018 +0000 + + upstream: Do not ban PTY allocation when a sshd session is restricted + + because the user password is expired as it breaks password change dialog. + + regression in openssh-7.7 reported by Daniel Wagner + + OpenBSD-Commit-ID: 9fc09c584c6f1964b00595e3abe7f83db4d90d73 + +commit f6a59a22b0c157c4c4e5fd7232f868138223be64 +Author: djm@openbsd.org +Date: Fri May 25 04:25:46 2018 +0000 + + upstream: Fix return value confusion in several functions (readdir, + + download and fsync). These should return -1 on error, not a sftp status code. + + patch from Petr Cerny in bz#2871 + + OpenBSD-Commit-ID: 651aa0220ad23c9167d9297a436162d741f97a09 + +commit 1da5934b860ac0378d52d3035b22b6670f6a967e +Author: dtucker@openbsd.org +Date: Fri May 25 03:20:59 2018 +0000 + + upstream: If select() fails in ssh_packet_read_seqnr go directly to + + the error path instead of trying to read from the socket on the way out, + which resets errno and causes the true error to be misreported. ok djm@ + + OpenBSD-Commit-ID: 2614edaadbd05a957aa977728aa7a030af7c6f0a + +commit 4ef75926ef517d539f2c7aac3188b09f315c86a7 +Author: Damien Miller +Date: Fri May 25 13:36:58 2018 +1000 + + Permit getuid()/geteuid() syscalls. + + Requested for Linux/s390; patch from Eduardo Barretto via bz#2752; + ok dtucker + +commit 4b22fd8ecefd059a66140be67f352eb6145a9d88 +Author: djm@openbsd.org +Date: Tue May 22 00:13:26 2018 +0000 + + upstream: support ProxyJump=none to disable ProxyJump + + functionality; bz#2869 ok dtucker@ + + OpenBSD-Commit-ID: 1c06ee08eb78451b5837fcfd8cbebc5ff3a67a01 + +commit f41bcd70f55b4f0fc4d8e1039cb361ac922b23fb +Author: jmc@openbsd.org +Date: Tue May 15 05:40:11 2018 +0000 + + upstream: correct keyowrd name (permitemptypasswords); from brendan + + macdonell + + OpenBSD-Commit-ID: ef1bdbc936b2ea693ee37a4c20a94d4d43f5fda3 + +commit f18bc97151340127859634d20d79fd39ec8a7f39 +Author: djm@openbsd.org +Date: Fri May 11 04:01:11 2018 +0000 + + upstream: Emphasise that -w implicitly sets Tunnel=point-to-point + + and that users should specify an explicit Tunnel directive if they don't want + this. bz#2365. + + OpenBSD-Commit-ID: 1a8d9c67ae213ead180481900dbbb3e04864560d + +commit 32e4e94e1511fe0020fbfbb62399d31b2d22a801 +Author: Damien Miller +Date: Mon May 14 14:40:08 2018 +1000 + + sync fmt_scaled.c + + revision 1.17 + date: 2018/05/14 04:39:04; author: djm; state: Exp; lines: +5 -2; + commitid: 53zY8GjViUBnWo8Z; + constrain fractional part to [0-9] (less confusing to static analysis); ok ian@ + +commit 54268d589e85ecc43d3eba8d83f327bdada9d696 +Author: Damien Miller +Date: Fri May 11 14:04:40 2018 +1000 + + fix key-options.sh on platforms without openpty(3) + + Skip the pty tests if the platform lacks openpty(3) and has to chown(2) + the pty device explicitly. This typically requires root permissions that + this test lacks. + + bz#2856 ok dtucker@ + +commit b2140a739be4c3b43cc1dc08322dca39a1e39d20 +Author: djm@openbsd.org +Date: Fri May 11 03:38:51 2018 +0000 + + upstream: implement EMFILE mitigation for ssh-agent: remember the + + fd rlimit and stop accepting new connections when it is exceeded (with some + grace). Accept is resumed when enough connections are closed. + + bz#2576. feedback deraadt; ok dtucker@ + + OpenBSD-Commit-ID: 6a85d9cec7b85741961e7116a49f8dae777911ea + +commit fdba503fdfc647ee8a244002f1581e869c1f3d90 +Author: dtucker@openbsd.org +Date: Fri May 11 03:22:55 2018 +0000 + + upstream: Explicit cast when snprintf'ing an uint64. Prevents + + warnings on platforms where int64 is long not long long. ok djm@ + + OpenBSD-Commit-ID: 9c5359e2fbfce11dea2d93f7bc257e84419bd001 + +commit e7751aa4094d51a9bc00778aa8d07e22934c55ee +Author: bluhm@openbsd.org +Date: Thu Apr 26 14:47:03 2018 +0000 + + upstream: Since the previous commit, ssh regress test sftp-chroot was + + failing. The sftp program terminated with the wrong exit code as sftp called + fatal() instad of exit(0). So when the sigchld handler waits for the child, + remember that it was found. Then don't expect that main() can wait again. OK + dtucker@ + + OpenBSD-Commit-ID: bfafd940c0de5297940c71ddf362053db0232266 + +commit 7c15301841e2e9d37cae732400de63ae9c0961d6 +Author: Darren Tucker +Date: Sun Apr 29 17:54:12 2018 +1000 + + Use includes.h instead of config.h. + + This ensures it picks up the definition of DEF_WEAK, the lack of which + can cause compile errors in some cases (eg modern AIX). From + michael at felt.demon.nl. + +commit cec338967a666b7c8ad8b88175f2faeddf268116 +Author: Darren Tucker +Date: Thu Apr 19 09:53:14 2018 +1000 + + Omit 3des-cbc if OpenSSL built without DES. + + Patch from hongxu.jia at windriver.com, ok djm@ + +commit a575ddd58835759393d2dddd16ebe5abdb56485e +Author: djm@openbsd.org +Date: Mon Apr 16 22:50:44 2018 +0000 + + upstream: Disable SSH2_MSG_DEBUG messages for Twisted Conch clients + + without version numbers since they choke on them under some circumstances. + https://twistedmatrix.com/trac/ticket/9422 via Colin Watson + + Newer Conch versions have a version number in their ident string and + handle debug messages okay. https://twistedmatrix.com/trac/ticket/9424 + + OpenBSD-Commit-ID: 6cf7be262af0419c58ddae11324d9c0dc1577539 + +commit 390c7000a8946db565b66eab9e52fb11948711fa +Author: djm@openbsd.org +Date: Sat Apr 14 21:50:41 2018 +0000 + + upstream: don't free the %C expansion, it's used later for + + LocalCommand + + OpenBSD-Commit-ID: 857b5cb37b2d856bfdfce61289a415257a487fb1 + +commit 3455f1e7c48e2e549192998d330214975b9b1dc7 +Author: djm@openbsd.org +Date: Fri Apr 13 05:04:12 2018 +0000 + + upstream: notify user immediately when underlying ssh process dies; + + patch from Thomas Kuthan in bz2719; ok dtucker@ + + OpenBSD-Commit-ID: 78fac88c2f08054d1fc5162c43c24162b131cf78 + +commit 1c5b4bc827f4abc3e65888cda061ad5edf1b8c7c +Author: Darren Tucker +Date: Fri Apr 13 16:23:57 2018 +1000 + + Allow nanosleep in preauth privsep child. + + The new timing attack mitigation code uses nanosleep in the preauth + codepath, allow in systrace andbox too. + +commit 0e73428038d5ecfa5d2a28cff26661502a7aff4e +Author: Darren Tucker +Date: Fri Apr 13 16:06:29 2018 +1000 + + Allow nanosleep in preauth privsep child. + + The new timing attack mitigation code uses nanosleep in the preauth + codepath, allow in sandbox. + +commit e9d910b0289c820852f7afa67f584cef1c05fe95 +Author: dtucker@openbsd.org +Date: Fri Apr 13 03:57:26 2018 +0000 + + upstream: Defend against user enumeration timing attacks. This + + establishes a minimum time for each failed authentication attempt (5ms) and + adds a per-user constant derived from a host secret (0-4ms). Based on work + by joona.kannisto at tut.fi, ok markus@ djm@. + + OpenBSD-Commit-ID: b7845b355bb7381703339c8fb0e57e81a20ae5ca + +commit d97874cbd909eb706886cd0cdd418f812c119ef9 +Author: Darren Tucker +Date: Fri Apr 13 13:43:55 2018 +1000 + + Using "==" in shell tests is not portable. + + Patch from rsbecker at nexbridge.com. + +commit cfb1d9bc76734681e3dea532a1504fcd466fbe91 +Author: Damien Miller +Date: Fri Apr 13 13:38:06 2018 +1000 + + Fix tunnel forwarding broken in 7.7p1 + + bz2855, ok dtucker@ + +commit afa6e79b76fb52a0c09a29688b5c0d125eb08302 +Author: Damien Miller +Date: Fri Apr 13 13:31:42 2018 +1000 + + prefer to use getrandom() for PRNG seeding + + Only applies when built --without-openssl. Thanks Jann Horn for + reminder. + +commit 575fac34a97f69bc217b235f81de9f8f433eceed +Author: Darren Tucker +Date: Fri Apr 13 13:13:33 2018 +1000 + + Revert $REGRESSTMP changes. + + Revert 3fd2d229 and subsequent changes as they turned out to be a + portability hassle. + +commit 10479cc2a4acd6faaf643eb305233b49d70c31c1 +Author: Damien Miller +Date: Tue Apr 10 10:19:02 2018 +1000 + + Many typo fixes from Karsten Weiss + + Spotted using https://github.com/lucasdemarchi/codespell + +commit 907da2f88519b34189fd03fac96de0c52d448233 +Author: djm@openbsd.org +Date: Tue Apr 10 00:14:10 2018 +0000 + + upstream: more typos spotted by Karsten Weiss using codespell + + OpenBSD-Regress-ID: d906a2aea0663810a658b7d0bc61a1d2907d4d69 + +commit 37e5f4a7ab9a8026e5fc2f47dafb0f1b123d39e9 +Author: djm@openbsd.org +Date: Tue Apr 10 00:13:27 2018 +0000 + + upstream: make this a bit more portable-friendly + + OpenBSD-Regress-ID: 62f7b9e055e8dfaab92b3825f158beeb4ca3f963 + +commit 001aa55484852370488786bd40e9fdad4b465811 +Author: djm@openbsd.org +Date: Tue Apr 10 00:10:49 2018 +0000 + + upstream: lots of typos in comments/docs. Patch from Karsten Weiss + + after checking with codespell tool + (https://github.com/lucasdemarchi/codespell) + + OpenBSD-Commit-ID: 373222f12d7ab606598a2d36840c60be93568528 + +commit 260ede2787fe80b18b8d5920455b4fb268519c7d +Author: djm@openbsd.org +Date: Mon Apr 9 23:54:49 2018 +0000 + + upstream: don't kill ssh-agent's listening socket entriely if we + + fail to accept a connection; bz#2837, patch from Lukas Kuster + + OpenBSD-Commit-ID: 52413f5069179bebf30d38f524afe1a2133c738f + +commit ebc8b4656f9b0f834a642a9fb3c9fbca86a61838 +Author: tj@openbsd.org +Date: Mon Apr 9 20:41:22 2018 +0000 + + upstream: the UseLogin option was removed, so remove it here too. + + ok dtucker + + OpenBSD-Commit-ID: 7080be73a64d68e21f22f5408a67a0ba8b1b6b06 + +commit 3e36f281851fc8e9c996b33f108b2ae167314fbe +Author: jmc@openbsd.org +Date: Sun Apr 8 07:36:02 2018 +0000 + + upstream: tweak previous; + + OpenBSD-Commit-ID: 2b9c23022ea7b9dddb62864de4e906000f9d7474 + +commit 8368571efd6693c5c57f850e23a2372acf3f865f +Author: jmc@openbsd.org +Date: Sat Apr 7 13:50:10 2018 +0000 + + upstream: tweak previous; + + OpenBSD-Commit-ID: 38e347b6f8e888f5e0700d01abb1eba7caa154f9 + +commit 555294a7279914ae6795b71bedf4e6011b7636df +Author: djm@openbsd.org +Date: Fri Apr 6 13:02:39 2018 +0000 + + upstream: Allow "SendEnv -PATTERN" to clear environment variables + + previously labeled for sendind. bz#1285 ok dtucker@ + + OpenBSD-Commit-ID: f6fec9e3d0f366f15903094fbe1754cb359a0df9 + +commit 40f5f03544a07ebd2003b443d42e85cb51d94d59 +Author: djm@openbsd.org +Date: Fri Apr 6 04:15:45 2018 +0000 + + upstream: relax checking of authorized_keys environment="..." + + options to allow underscores in variable names (regression introduced in + 7.7). bz2851, ok deraadt@ + + OpenBSD-Commit-ID: 69690ffe0c97ff393f2c76d25b4b3d2ed4e4ac9c + +commit 30fd7f9af0f553aaa2eeda5a1f53f26cfc222b5e +Author: djm@openbsd.org +Date: Fri Apr 6 03:51:27 2018 +0000 + + upstream: add a couple of missed options to the config dump; patch + + from Jakub Jelen via bz2835 + + OpenBSD-Commit-ID: 5970adadf6ef206bee0dddfc75d24c2019861446 + +commit 8d6829be324452d2acd282d5f8ceb0adaa89a4de +Author: djm@openbsd.org +Date: Fri Apr 6 03:34:27 2018 +0000 + + upstream: ssh does not accept -oInclude=... on the commandline, the + + Include keyword is for configuration files only. bz#2840, patch from Jakub + Jelen + + OpenBSD-Commit-ID: 32d052b4a7a7f22df35fe3f71c368c02b02cacb0 + +commit 00c5222ddc0c8edcaa4ea45ac03befdc8013d137 +Author: djm@openbsd.org +Date: Thu Apr 5 22:54:28 2018 +0000 + + upstream: We don't offer CBC cipher by default any more. Spotted by + + Renaud Allard (via otto@) + + OpenBSD-Commit-ID: a559b1eef741557dd959ae378b665a2977d92dca + +commit 5ee8448ad7c306f05a9f56769f95336a8269f379 +Author: job@openbsd.org +Date: Wed Apr 4 15:12:17 2018 +0000 + + upstream: Update default IPQoS in ssh(1), sshd(8) to DSCP AF21 for + + interactive and CS1 for bulk + + AF21 was selected as this is the highest priority within the low-latency + service class (and it is higher than what we have today). SSH is elastic + and time-sensitive data, where a user is waiting for a response via the + network in order to continue with a task at hand. As such, these flows + should be considered foreground traffic, with delays or drops to such + traffic directly impacting user-productivity. + + For bulk SSH traffic, the CS1 "Lower Effort" marker was chosen to enable + networks implementing a scavanger/lower-than-best effort class to + discriminate scp(1) below normal activities, such as web surfing. In + general this type of bulk SSH traffic is a background activity. + + An advantage of using "AF21" for interactive SSH and "CS1" for bulk SSH + is that they are recognisable values on all common platforms (IANA + https://www.iana.org/assignments/dscp-registry/dscp-registry.xml), and + for AF21 specifically a definition of the intended behavior exists + https://tools.ietf.org/html/rfc4594#section-4.7 in addition to the definition + of the Assured Forwarding PHB group https://tools.ietf.org/html/rfc2597, and + for CS1 (Lower Effort) there is https://tools.ietf.org/html/rfc3662 + + The first three bits of "AF21" map to the equivalent IEEEE 802.1D PCP, IEEE + 802.11e, MPLS EXP/CoS and IP Precedence value of 2 (also known as "Immediate", + or "AC_BE"), and CS1's first 3 bits map to IEEEE 802.1D PCP, IEEE 802.11e, + MPLS/CoS and IP Precedence value 1 ("Background" or "AC_BK"). + + OK deraadt@, "no objection" djm@ + + OpenBSD-Commit-ID: d11d2a4484f461524ef0c20870523dfcdeb52181 + +commit 424b544fbda963f973da80f884717c3e0a513288 +Author: dtucker@openbsd.org +Date: Tue Apr 3 02:14:08 2018 +0000 + + upstream: Import regenerated moduli file. + + OpenBSD-Commit-ID: 1de0e85522051eb2ffa00437e1885e9d7b3e0c2e + +commit 323f66ce934df2da551f256f37d69822428e1ca1 +Author: dtucker@openbsd.org +Date: Fri Apr 6 04:18:35 2018 +0000 + + upstream: Add test for username options parsing order, prompted by + + bz#2849. + + OpenBSD-Regress-ID: 6985cd32f38596882a3ac172ff8c510693b65283 + +commit e8f474554e3bda102a797a2fbab0594ccc66f097 +Author: Damien Miller +Date: Fri Apr 6 14:11:44 2018 +1000 + + Expose SSH_AUTH_INFO_0 to PAM auth modules + + bz#2408, patch from Radoslaw Ejsmont; ok dtucker@ + +commit 014ba209cf4c6a159baa30ecebbaddfa97da7100 +Author: Darren Tucker +Date: Tue Apr 3 12:18:00 2018 +1000 + + Import regenerated moduli file. + +commit a0349a1cc4a18967ad1dbff5389bcdf9da098814 +Author: Damien Miller +Date: Mon Apr 2 15:38:28 2018 +1000 + + update versions in .spec files + +commit 816ad38f79792f5617e3913be306ddb27e91091c +Author: Damien Miller +Date: Mon Apr 2 15:38:20 2018 +1000 + + update version number + +commit 2c71ca1dd1efe458cb7dee3f8a1a566f913182c2 +Author: Darren Tucker +Date: Fri Mar 30 18:23:07 2018 +1100 + + Disable native strndup and strnlen on AIX. + + On at least some revisions of AIX, strndup returns unterminated strings + under some conditions, apparently because strnlen returns incorrect + values in those cases. Disable both on AIX and use the replacements + from openbsd-compat. Fixes problem with ECDSA keys there, ok djm. + +commit 6b5a17bc14e896e3904dc58d889b58934cfacd24 +Author: Darren Tucker +Date: Mon Mar 26 13:12:44 2018 +1100 + + Include ssh_api.h for struct ssh. + + struct ssh is needed by implementations of sys_auth_passwd() that were + converted in commit bba02a50. Needed to fix build on AIX, I assume for + the other platforms too (although it should be harmless if not needed). + +commit bc3f80e4d191b8e48650045dfa8a682cd3aabd4d +Author: Darren Tucker +Date: Mon Mar 26 12:58:09 2018 +1100 + + Remove UNICOS code missed during removal. + + Fixes compile error on AIX. + +commit 9d57762c24882e2f000a21a0ffc8c5908a1fa738 +Author: markus@openbsd.org +Date: Sat Mar 24 19:29:03 2018 +0000 + + upstream: openssh-7.7 + + OpenBSD-Commit-ID: 274e614352460b9802c905f38fb5ea7ed5db3d41 + +commit 4b7d8acdbbceef247dc035e611e577174ed8a87e +Author: Damien Miller +Date: Mon Mar 26 09:37:02 2018 +1100 + + Remove authinfo.sh test dependency on printenv + + Some platforms lack printenv in the default $PATH. + Reported by Tom G. Christensen + +commit 4afeaf3dcb7dc70efd98fcfcb0ed28a6b40b820e +Author: Tim Rice +Date: Sun Mar 25 10:00:21 2018 -0700 + + Use libiaf on all sysv5 systems + +commit bba02a5094b3db228ceac41cb4bfca165d0735f3 +Author: Tim Rice +Date: Sun Mar 25 09:17:33 2018 -0700 + + modified: auth-sia.c + modified: openbsd-compat/port-aix.c + modified: openbsd-compat/port-uw.c + + propogate changes to auth-passwd.c in commit + 7c856857607112a3dfe6414696bf4c7ab7fb0cb3 to other providers + of sys_auth_passwd() + +commit d7a7a39168bdfe273587bf85d779d60569100a3f +Author: markus@openbsd.org +Date: Sat Mar 24 19:29:03 2018 +0000 + + upstream: openssh-7.7 + + OpenBSD-Commit-ID: 274e614352460b9802c905f38fb5ea7ed5db3d41 + +commit 9efcaaac314c611c6c0326e8bac5b486c424bbd2 +Author: markus@openbsd.org +Date: Sat Mar 24 19:28:43 2018 +0000 + + upstream: fix bogus warning when signing cert keys using agent; + + from djm; ok deraadt dtucker + + OpenBSD-Commit-ID: 12e50836ba2040042383a8b71e12d7ea06e9633d + +commit 393436024d2e4b4c7a01f9cfa5854e7437896d11 +Author: Darren Tucker +Date: Sun Mar 25 09:40:46 2018 +1100 + + Replace /dev/stdin with "-". + + For some reason sftp -b doesn't work with /dev/stdin on Cygwin, as noted + and suggested by vinschen at redhat.com. + +commit b5974de1a1d419e316ffb6524b1b277dda2f3b49 +Author: Darren Tucker +Date: Fri Mar 23 13:21:14 2018 +1100 + + Provide $OBJ to paths in PuTTY interop tests. + +commit dc31e79454e9b9140b33ad380565fdb59b9c4f33 +Author: dtucker@openbsd.org +Date: Fri Mar 16 09:06:31 2018 +0000 + + upstream: Tell puttygen to use /dev/urandom instead of /dev/random. On + + OpenBSD they are both non-blocking, but on many other -portable platforms it + blocks, stalling tests. + + OpenBSD-Regress-ID: 397d0d4c719c353f24d79f5b14775e0cfdf0e1cc + +commit cb1f94431ef319cd48618b8b771b58739a8210cf +Author: markus@openbsd.org +Date: Thu Mar 22 07:06:11 2018 +0000 + + upstream: ssh/xmss: fix build; ok djm@ + + OpenBSD-Commit-ID: c9374ca41d4497f1c673ab681cc33f6e7c5dd186 + +commit 27979da9e4074322611355598f69175b9ff10d39 +Author: markus@openbsd.org +Date: Thu Mar 22 07:05:48 2018 +0000 + + upstream: ssh/xmss: fix deserialize for certs; ok djm@ + + OpenBSD-Commit-ID: f44c41636c16ec83502039828beaf521c057dddc + +commit c6cb2565c9285eb54fa9dfbb3890f5464aff410f +Author: Darren Tucker +Date: Thu Mar 22 17:00:28 2018 +1100 + + Save $? before case statement. + + In some shells (FreeBSD 9, ash) the case statement resets $?, so save + for later testing. + +commit 4c4e7f783b43b264c247233acb887ee10ed4ce4d +Author: djm@openbsd.org +Date: Wed Mar 14 05:35:40 2018 +0000 + + upstream: rename recently-added "valid-before" key restriction to + + "expiry-time" as the former is confusing wrt similar terminology in X.509; + pointed out by jsing@ + + OpenBSD-Regress-ID: ac8b41dbfd90cffd525d58350c327195b0937793 + +commit 500396b204c58e78ad9d081516a365a9f28dc3fd +Author: djm@openbsd.org +Date: Mon Mar 12 00:56:03 2018 +0000 + + upstream: check valid-before option in authorized_keys + + OpenBSD-Regress-ID: 7e1e4a84f7f099a290e5a4cbf4196f90ff2d7e11 + +commit a76b5d26c2a51d7dd7a5164e683ab3f4419be215 +Author: djm@openbsd.org +Date: Mon Mar 12 00:54:04 2018 +0000 + + upstream: explicitly specify RSA/SHA-2 keytype here too + + OpenBSD-Regress-ID: 74d7b24e8c72c27af6b481198344eb077e993a62 + +commit 3a43297ce29d37c64e37c7e21282cb219e28d3d1 +Author: djm@openbsd.org +Date: Mon Mar 12 00:52:57 2018 +0000 + + upstream: exlicitly include RSA/SHA-2 keytypes in + + PubkeyAcceptedKeyTypes here + + OpenBSD-Regress-ID: 954d19e0032a74e31697fb1dc7e7d3d1b2d65fe9 + +commit 037fdc1dc2d68e1d43f9c9e2586c02cabc8f7cc8 +Author: jmc@openbsd.org +Date: Wed Mar 14 06:56:20 2018 +0000 + + upstream: sort expiry-time; + + OpenBSD-Commit-ID: 8c7d82ee1e63e26ceb2b3d3a16514019f984f6bf + +commit abc0fa38c9bc136871f28e452c3465c3051fc785 +Author: djm@openbsd.org +Date: Wed Mar 14 05:35:40 2018 +0000 + + upstream: rename recently-added "valid-before" key restriction to + + "expiry-time" as the former is confusing wrt similar terminology in X.509; + pointed out by jsing@ + + OpenBSD-Commit-ID: 376939466a1f562f3950a22314bc6505733aaae6 + +commit bf0fbf2b11a44f06a64b620af7d01ff171c28e13 +Author: djm@openbsd.org +Date: Mon Mar 12 00:52:01 2018 +0000 + + upstream: add valid-before="[time]" authorized_keys option. A + + simple way of giving a key an expiry date. ok markus@ + + OpenBSD-Commit-ID: 1793b4dd5184fa87f42ed33c7b0f4f02bc877947 + +commit fbd733ab7adc907118a6cf56c08ed90c7000043f +Author: Darren Tucker +Date: Mon Mar 12 19:17:26 2018 +1100 + + Add AC_LANG_PROGRAM to AC_COMPILE_IFELSE. + + The recently added MIPS ABI tests need AC_LANG_PROGRAM to prevent + warnings from autoconf. Pointed out by klausz at haus-gisela.de. + +commit c7c458e8261b04d161763cd333d74e7a5842e917 +Author: djm@openbsd.org +Date: Wed Mar 7 23:53:08 2018 +0000 + + upstream: revert recent strdelim() change, it causes problems with + + some configs. + + revision 1.124 + date: 2018/03/02 03:02:11; author: djm; state: Exp; lines: +19 -8; commitid: nNRsCijZiGG6SUTT; + Allow escaped quotes \" and \' in ssh_config and sshd_config quotes + option strings. bz#1596 ok markus@ + + OpenBSD-Commit-ID: 59c40b1b81206d713c06b49d8477402c86babda5 + +commit 0bcd871ccdf3baf2b642509ba4773d5be067cfa2 +Author: jmc@openbsd.org +Date: Mon Mar 5 07:03:18 2018 +0000 + + upstream: move the input format details to -f; remove the output + + format details and point to sshd(8), where it is documented; + + ok dtucker + + OpenBSD-Commit-ID: 95f17e47dae02a6ac7329708c8c893d4cad0004a + +commit 45011511a09e03493568506ce32f4891a174a3bd +Author: Vicente Olivert Riera +Date: Tue Jun 20 16:42:28 2017 +0100 + + configure.ac: properly set seccomp_audit_arch for MIPS64 + + Currently seccomp_audit_arch is set to AUDIT_ARCH_MIPS64 or + AUDIT_ARCH_MIPSEL64 (depending on the endinness) when openssh is built + for MIPS64. However, that's only valid for n64 ABI. The right macros for + n32 ABI defined in seccomp.h are AUDIT_ARCH_MIPS64N32 and + AUDIT_ARCH_MIPSEL64N32, for big and little endian respectively. + + Because of that an sshd built for MIPS64 n32 rejects connection attempts + and the output of strace reveals that the problem is related to seccomp + audit: + + [pid 194] prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, {len=57, + filter=0x555d5da0}) = 0 + [pid 194] write(7, "\0\0\0]\0\0\0\5\0\0\0Ulist_hostkey_types: "..., 97) = ? + [pid 193] <... poll resumed> ) = 2 ([{fd=5, revents=POLLIN|POLLHUP}, + {fd=6, revents=POLLHUP}]) + [pid 194] +++ killed by SIGSYS +++ + + This patch fixes that problem by setting the right value to + seccomp_audit_arch taking into account the MIPS64 ABI. + + Signed-off-by: Vicente Olivert Riera + +commit 580086704c31de91dc7ba040a28e416bf1fefbca +Author: Vicente Olivert Riera +Date: Tue Jun 20 16:42:11 2017 +0100 + + configure.ac: detect MIPS ABI + + Signed-off-by: Vicente Olivert Riera + +commit cd4e937aa701f70366cd5b5969af525dff6fdf15 +Author: Alan Yee +Date: Wed Mar 7 15:12:14 2018 -0800 + + Use https URLs for links that support it. + +commit c0a0c3fc4a76b682db22146b28ddc46566db1ce9 +Author: Darren Tucker +Date: Mon Mar 5 20:03:07 2018 +1100 + + Disable UTMPX on SunOS4. + +commit 58fd4c5c0140f6636227ca7acbb149ab0c2509b9 +Author: Darren Tucker +Date: Mon Mar 5 19:28:08 2018 +1100 + + Check for and work around buggy fflush(NULL). + + Some really old platforms (eg SunOS4) segfault on fflush(NULL) so check + for and work around. With klausz at haus-gisela.de. + +commit 71e48bc7945f867029e50e06c665c66aed6d3c64 +Author: Darren Tucker +Date: Mon Mar 5 10:22:32 2018 +1100 + + Remove extra XMSS #endif + + Extra #endif breaks compile with -DWITH_XMSS. Pointed out by Jack + Schmidt via github. + +commit 055e09e2212ff52067786bf6d794ca9512ff7f0c +Author: dtucker@openbsd.org +Date: Sat Mar 3 06:37:53 2018 +0000 + + upstream: Update RSA minimum modulus size to 1024. sshkey.h rev 1.18 + + bumped the minimum from 768 to 1024, update man page accordingly. + + OpenBSD-Commit-ID: 27563ab4e866cd2aac40a5247876f6787c08a338 + +commit 7e4fadd3248d6bb7d39d6688c76a613d35d2efc1 +Author: djm@openbsd.org +Date: Sun Mar 4 01:46:48 2018 +0000 + + upstream: for the pty control tests, just check that the PTY path + + points to something in /dev (rather than checking the device node itself); + makes life easier for portable, where systems with dynamic ptys can delete + nodes before we get around to testing their existence. + + OpenBSD-Regress-ID: b1e455b821e62572bccd98102f8dd9d09bb94994 + +commit 13ef4cf53f24753fe920832b990b25c9c9cd0530 +Author: Darren Tucker +Date: Sat Mar 3 16:21:20 2018 +1100 + + Update PAM password change to new opts API. + +commit 33561e68e0b27366cb769295a077aabc6a49d2a1 +Author: Darren Tucker +Date: Sat Mar 3 14:56:09 2018 +1100 + + Add strndup for platforms that need it. + + Some platforms don't have strndup, which includes Solaris 10, NetBSD 3 + and FreeBSD 6. + +commit e8a17feba95eef424303fb94441008f6c5347aaf +Author: Darren Tucker +Date: Sat Mar 3 14:49:07 2018 +1100 + + Flatten and alphabetize object file lists. + + This will make maintenance and changes easier. "no objection" tim@ + +commit de1920d743d295f50e6905e5957c4172c038e8eb +Author: djm@openbsd.org +Date: Sat Mar 3 03:16:17 2018 +0000 + + upstream: unit tests for new authorized_keys options API + + OpenBSD-Regress-ID: 820f9ec9c6301f6ca330ad4052d85f0e67d0bdc1 + +commit dc3e92df17556dc5b0ab19cee8dcb2a6ba348717 +Author: djm@openbsd.org +Date: Fri Mar 2 02:53:27 2018 +0000 + + upstream: fix testing of pty option, include positive test and + + testing of restrict keyword + + OpenBSD-Regress-ID: 4268f27c2706a0a95e725d9518c5bcbec9814c6d + +commit 3d1edd1ebbc0aabea8bbe61903060f37137f7c61 +Author: djm@openbsd.org +Date: Fri Mar 2 02:51:55 2018 +0000 + + upstream: better testing for port-forwarding and restrict flags in + + authorized_keys + + OpenBSD-Regress-ID: ee771df8955f2735df54746872c6228aff381daa + +commit 7c856857607112a3dfe6414696bf4c7ab7fb0cb3 +Author: djm@openbsd.org +Date: Sat Mar 3 03:15:51 2018 +0000 + + upstream: switch over to the new authorized_keys options API and + + remove the legacy one. + + Includes a fairly big refactor of auth2-pubkey.c to retain less state + between key file lines. + + feedback and ok markus@ + + OpenBSD-Commit-ID: dece6cae0f47751b9892080eb13d6625599573df + +commit 90c4bec8b5f9ec4c003ae4abdf13fc7766f00c8b +Author: djm@openbsd.org +Date: Sat Mar 3 03:06:02 2018 +0000 + + upstream: Introduce a new API for handling authorized_keys options. + + This API parses options to a dedicated structure rather than the old API's + approach of setting global state. It also includes support for merging + options, e.g. from authorized_keys, authorized_principals and/or + certificates. + + feedback and ok markus@ + + OpenBSD-Commit-ID: 98badda102cd575210d7802943e93a34232c80a2 + +commit 26074380767e639ef89321610e146ae11016b385 +Author: djm@openbsd.org +Date: Sat Mar 3 03:01:50 2018 +0000 + + upstream: warn when the agent returns a signature type that was + + different to what was requested. This might happen when an old/non-OpenSSH + agent is asked to make a rsa-sha2-256/512 signature but only supports + ssh-rsa. bz#2799 feedback and ok markus@ + + OpenBSD-Commit-ID: 760c0f9438c5c58abc16b5f98008ff2d95cb13ce + +commit f493d2b0b66fb003ed29f31dd66ff1aeb64be1fc +Author: jmc@openbsd.org +Date: Fri Mar 2 21:40:15 2018 +0000 + + upstream: apply a lick of paint; tweaks/ok dtucker + + OpenBSD-Commit-ID: 518a6736338045e0037f503c21027d958d05e703 + +commit 713d9cb510e0e7759398716cbe6dcf43e574be71 +Author: djm@openbsd.org +Date: Fri Mar 2 03:02:11 2018 +0000 + + upstream: Allow escaped quotes \" and \' in ssh_config and + + sshd_config quotes option strings. bz#1596 ok markus@ + + OpenBSD-Commit-ID: dd3a29fc2dc905e8780198e5a6a30b096de1a1cb + +commit 94b4e2d29afaaaef89a95289b16c18bf5627f7cd +Author: djm@openbsd.org +Date: Fri Mar 2 02:08:03 2018 +0000 + + upstream: refactor sshkey_read() to make it a little more, err, + + readable. ok markus + + OpenBSD-Commit-ID: 2e9247b5762fdac3b6335dc606d3822121714c28 + +commit 5886b92968b360623491699247caddfb77a74d80 +Author: markus@openbsd.org +Date: Thu Mar 1 20:32:16 2018 +0000 + + upstream: missing #ifdef for _PATH_HOST_XMSS_KEY_FILE; report by + + jmc@ + + OpenBSD-Commit-ID: 9039cb69a3f9886bfef096891a9e7fcbd620280b + +commit 3b36bed3d26f17f6a2b7e036e01777770fe1bcd4 +Author: dtucker@openbsd.org +Date: Mon Feb 26 12:14:53 2018 +0000 + + upstream: Remove unneeded (local) include. ok markus@ + + OpenBSD-Commit-ID: 132812dd2296b1caa8cb07d2408afc28e4e60f93 + +commit 27b9f3950e0289e225b57b7b880a8f1859dcd70b +Author: dtucker@openbsd.org +Date: Mon Feb 26 03:56:44 2018 +0000 + + upstream: Add $OpenBSD$ markers to xmss files to help keep synced + + with portable. ok djm@. + + OpenBSD-Commit-ID: 5233a27aafd1dfadad4b957225f95ae51eb365c1 + +commit afd830847a82ebbd5aeab05bad6d2c8ce74df1cd +Author: dtucker@openbsd.org +Date: Mon Feb 26 03:03:05 2018 +0000 + + upstream: Add newline at end of file to prevent compiler warnings. + + OpenBSD-Commit-ID: 52f247d4eafe840c7c14c8befa71a760a8eeb063 + +commit 941e0d3e9bb8d5e4eb70cc694441445faf037c84 +Author: Darren Tucker +Date: Wed Feb 28 19:59:35 2018 +1100 + + Add WITH_XMSS, move to prevent conflicts. + + Add #ifdef WITH_XMSS to ssh-xmss.c, move it in the other files to after + includes.h so it's less likely to conflict and will pick up WITH_XMSS if + added to config.h. + +commit a10d8552d0d2438da4ed539275abcbf557d1e7a8 +Author: Darren Tucker +Date: Tue Feb 27 14:45:17 2018 +1100 + + Conditionally compile XMSS code. + + The XMSS code is currently experimental and, unlike the rest of OpenSSH + cannot currently be compiled with a c89 compiler. + +commit 146c3bd28c8dbee9c4b06465d9c9facab96b1e9b +Author: Darren Tucker +Date: Mon Feb 26 12:51:29 2018 +1100 + + Check dlopen has RTLD_NOW before enabling pkcs11. + +commit 1323f120d06a26074c4d154fcbe7f49bcad3d741 +Author: Darren Tucker +Date: Tue Feb 27 08:41:25 2018 +1100 + + Check for attributes on prototype args. + + Some compilers (gcc 2.9.53, 3.0 and probably others, see gcc bug #3481) + do not accept __attribute__ on function pointer prototype args. Check for + this and hide them if they're not accepted. + +commit f0b245b0439e600fab782d19e97980e9f2c2533c +Author: Darren Tucker +Date: Mon Feb 26 11:43:48 2018 +1100 + + Check if HAVE_DECL_BZERO correctly. + +commit c7ef4a399155e1621a532cc5e08e6fa773658dd4 +Author: Darren Tucker +Date: Mon Feb 26 17:42:56 2018 +1100 + + Wrap in #ifdef HAVE_STDINT_H. + +commit ac53ce46cf8165cbda7f57ee045f9f32e1e92b31 +Author: Darren Tucker +Date: Mon Feb 26 16:24:23 2018 +1100 + + Replace $(CURDIR) with $(PWD). + + The former doesn't work on Solaris or BSDs. + +commit 534b2680a15d14e7e60274d5b29b812d44cc5a44 +Author: Darren Tucker +Date: Mon Feb 26 14:51:59 2018 +1100 + + Comment out hexdump(). + + Nothing currently uses them but they cause conflicts on at least + FreeBSD, possibly others. ok djm@ + +commit 5aea4aa522f61bb2f34c3055a7de203909dfae77 +Author: Darren Tucker +Date: Mon Feb 26 14:39:14 2018 +1100 + + typo: missing ; + +commit cd3ab57f9b388f8b1abf601dc4d78ff82d83b75e +Author: Darren Tucker +Date: Mon Feb 26 14:37:06 2018 +1100 + + Hook up flock() compat code. + + Also a couple of minor changes: fail if we can't lock instead of + silently succeeding, and apply a couple of minor style fixes. + +commit b087998d1ba90dd1ddb6bfdb17873dc3e7392798 +Author: Darren Tucker +Date: Mon Feb 26 14:27:02 2018 +1100 + + Import flock() compat from NetBSD. + + From NetBSD's src/trunk/tools/compat/flock.c, no OpenSSH changes yet. + +commit 89212533dde6798324e835b1499084658df4579e +Author: Darren Tucker +Date: Mon Feb 26 12:32:14 2018 +1100 + + Fix breakage when REGRESSTMP not set. + + BUILDDIR is not set where used for REGRESSTMP, use make's CURDIR + instead. Pointed out by djm@. + +commit f885474137df4b89498c0b8834c2ac72c47aa4bd +Author: Damien Miller +Date: Mon Feb 26 12:18:14 2018 +1100 + + XMSS-related files get includes.h + +commit 612faa34c72e421cdc9e63f624526bae62d557cc +Author: Damien Miller +Date: Mon Feb 26 12:17:55 2018 +1100 + + object files end with .o - not .c + +commit bda709b8e13d3eef19e69c2d1684139e3af728f5 +Author: Damien Miller +Date: Mon Feb 26 12:17:22 2018 +1100 + + avoid inclusion of deprecated selinux/flask.h + + Use string_to_security_class() instead. + +commit 2e396439365c4ca352cac222717d09b14f8a0dfd +Author: Damien Miller +Date: Mon Feb 26 11:48:27 2018 +1100 + + updatedepend + +commit 1b11ea7c58cd5c59838b5fa574cd456d6047b2d4 +Author: markus@openbsd.org +Date: Fri Feb 23 15:58:37 2018 +0000 + + upstream: Add experimental support for PQC XMSS keys (Extended + + Hash-Based Signatures) The code is not compiled in by default (see WITH_XMSS + in Makefile.inc) Joint work with stefan-lukas_gazdag at genua.eu See + https://tools.ietf.org/html/draft-irtf-cfrg-xmss-hash-based-signatures-12 ok + djm@ + + OpenBSD-Commit-ID: ef3eccb96762a5d6f135d7daeef608df7776a7ac + +commit 7d330a1ac02076de98cfc8fda05353d57b603755 +Author: jmc@openbsd.org +Date: Fri Feb 23 07:38:09 2018 +0000 + + upstream: some cleanup for BindInterface and ssh-keyscan; + + OpenBSD-Commit-ID: 1a719ebeae22a166adf05bea5009add7075acc8c + +commit c7b5a47e3b9db9a0f0198f9c90c705f6307afc2b +Author: Darren Tucker +Date: Sun Feb 25 23:55:41 2018 +1100 + + Invert sense of getpgrp test. + + AC_FUNC_GETPGRP tests if getpgrp(0) works, which it does if it's not + declared. Instead, test if the zero-arg version we want to use works. + +commit b39593a6de5290650a01adf8699c6460570403c2 +Author: Darren Tucker +Date: Sun Feb 25 13:25:15 2018 +1100 + + Add no-op getsid implmentation. + +commit 11057564eb6ab8fd987de50c3d7f394c6f6632b7 +Author: Darren Tucker +Date: Sun Feb 25 11:22:57 2018 +1100 + + bsd-statvfs: include sys/vfs.h, check for f_flags. + +commit e9dede06e5bc582a4aeb5b1cd5a7a640d7de3609 +Author: Darren Tucker +Date: Sun Feb 25 10:20:31 2018 +1100 + + Handle calloc(0,x) where different from malloc. + + Configure assumes that if malloc(0) returns null then calloc(0,n) + also does. On some old platforms (SunOS4) malloc behaves as expected + (as determined by AC_FUNC_MALLOC) but calloc doesn't. Test for this + at configure time and activate the replacement function if found, plus + handle this case in rpl_calloc. + +commit 2eb4041493fd2635ffdc64a852d02b38c4955e0b +Author: Darren Tucker +Date: Sat Feb 24 21:06:48 2018 +1100 + + Add prototype for readv if needed. + +commit 6c8c9a615b6d31db8a87bc25033f053d5b0a831e +Author: Darren Tucker +Date: Sat Feb 24 20:46:37 2018 +1100 + + Check for raise and supply if needed. + +commit a9004425a032d7a7141a5437cfabfd02431e2a74 +Author: Darren Tucker +Date: Sat Feb 24 20:25:22 2018 +1100 + + Check for bzero and supply if needed. + + Since explicit_bzero uses it via an indirect it needs to be a function + not just a macro. + +commit 1a348359e4d2876203b5255941bae348557f4f54 +Author: djm@openbsd.org +Date: Fri Feb 23 05:14:05 2018 +0000 + + upstream: Add ssh-keyscan -D option to make it print its results in + + SSHFP format bz#2821, ok dtucker@ + + OpenBSD-Commit-ID: 831446b582e0f298ca15c9d99c415c899e392221 + +commit 3e19fb976a47b44b3d7c4f8355269f7f2c5dd82c +Author: dtucker@openbsd.org +Date: Fri Feb 23 04:18:46 2018 +0000 + + upstream: Add missing braces. + + Caught by the tinderbox's -Werror=misleading-indentation, ok djm@ + + OpenBSD-Commit-ID: d44656af594c3b2366eb87d6abcef83e1c88a6ca + +commit b59162da99399d89bd57f71c170c0003c55b1583 +Author: Darren Tucker +Date: Fri Feb 23 15:20:42 2018 +1100 + + Check for ifaddrs.h for BindInterface. + + BindInterface required getifaddr and friends so disable if not available + (eg Solaris 10). We should be able to add support for some systems with + a bit more work but this gets the building again. + +commit a8dd6fe0aa10b6866830b4688a73ef966f0aed88 +Author: Damien Miller +Date: Fri Feb 23 14:19:11 2018 +1100 + + space before tab in previous + +commit b5e9263c7704247f9624c8f5c458e9181fcdbc09 +Author: dtucker@openbsd.org +Date: Fri Feb 9 03:40:22 2018 +0000 + + upstream: Replace fatal with exit in the case that we do not have + + $SUDO set. Prevents test failures when neither sudo nor doas are configured. + + OpenBSD-Regress-ID: 6a0464decc4f8ac7d6eded556a032b0fc521bc7b + +commit 3e9d3192ad43758ef761c5b0aa3ac5ccf8121ef2 +Author: Darren Tucker +Date: Fri Feb 23 14:10:53 2018 +1100 + + Use portable syntax for REGRESSTMP. + +commit 73282b61187883a2b2bb48e087fdda1d751d6059 +Author: djm@openbsd.org +Date: Fri Feb 23 03:03:00 2018 +0000 + + upstream: unbreak interop test after SSHv1 purge; patch from Colin + + Watson via bz#2823 + + OpenBSD-Regress-ID: 807d30a597756ed6612bdf46dfebca74f49cb31a + +commit f8985dde5f46aedade0373365cbf86ed3f1aead2 +Author: dtucker@openbsd.org +Date: Fri Feb 9 03:42:57 2018 +0000 + + upstream: Skip sftp-chroot test when SUDO not set instead of + + fatal(). + + OpenBSD-Regress-ID: cd4b5f1109b0dc09af4e5ea7d4968c43fbcbde88 + +commit df88551c02d4e3445c44ff67ba8757cff718609a +Author: dtucker@openbsd.org +Date: Fri Feb 9 03:40:22 2018 +0000 + + upstream: Replace fatal with exit in the case that we do not have + + $SUDO set. Prevents test failures when neither sudo nor doas are configured. + + OpenBSD-Regress-ID: 6a0464decc4f8ac7d6eded556a032b0fc521bc7b + +commit 3b252c20b19f093e87363de197f1100b79705dd3 +Author: djm@openbsd.org +Date: Thu Feb 8 08:46:20 2018 +0000 + + upstream: some helpers to check verbose/quiet mode + + OpenBSD-Regress-ID: e736aac39e563f5360a0935080a71d5fdcb976de + +commit ac2e3026bbee1367e4cda34765d1106099be3287 +Author: djm@openbsd.org +Date: Fri Feb 23 02:34:33 2018 +0000 + + upstream: Add BindInterface ssh_config directive and -B + + command-line argument to ssh(1) that directs it to bind its outgoing + connection to the address of the specified network interface. + + BindInterface prefers to use addresses that aren't loopback or link- + local, but will fall back to those if no other addresses of the + required family are available on that interface. + + Based on patch by Mike Manning in bz#2820, ok dtucker@ + + OpenBSD-Commit-ID: c5064d285c2851f773dd736a2c342aa384fbf713 + +commit fcdb9d777839a3fa034b3bc3067ba8c1f6886679 +Author: djm@openbsd.org +Date: Mon Feb 19 00:55:02 2018 +0000 + + upstream: emphasise that the hostkey rotation may send key types + + that the client may not support, and that the client should simply disregard + such keys (this is what ssh does already). + + OpenBSD-Commit-ID: 65f8ffbc32ac8d12be8f913d7c0ea55bef8622bf + +commit ce066f688dc166506c082dac41ca686066e3de5f +Author: Darren Tucker +Date: Thu Feb 22 20:45:09 2018 +1100 + + Add headers for sys/audit.h. + + On some older platforms (at least sunos4, probably others) sys/audit.h + requires some other headers. Patch from klausz at haus-gisela.de. + +commit 3fd2d2291a695c96a54269deae079bacce6e3fb9 +Author: Darren Tucker +Date: Mon Feb 19 18:37:40 2018 +1100 + + Add REGRESSTMP make var override. + + Defaults to original location ($srcdir/regress) but allows overriding + if desired, eg a directory in /tmp. + +commit f8338428588f3ecb5243c86336eccaa28809f97e +Author: Darren Tucker +Date: Sun Feb 18 15:53:15 2018 +1100 + + Remove now-unused check for getrusage. + + getrusage was used in ssh-rand-helper but that's now long gone. + Patch from klauszh at haus-gisela.de. + +commit 8570177195f6a4b3173c0a25484a83641ee3faa6 +Author: dtucker@openbsd.org +Date: Fri Feb 16 04:43:11 2018 +0000 + + upstream: Don't send IUTF8 to servers that don't like them. + + Some SSH servers eg "ConfD" drop the connection if the client sends the + new IUTF8 (RFC8160) terminal mode even if it's not set. Add a bug bit + for such servers and avoid sending IUTF8 to them. ok djm@ + + OpenBSD-Commit-ID: 26425855402d870c3c0a90491e72e2a8a342ceda + +commit f6dc2ba3c9d12be53057b9371f5109ec553a399f +Author: Darren Tucker +Date: Fri Feb 16 17:32:28 2018 +1100 + + freezero should check for NULL. + +commit 680321f3eb46773883111e234b3c262142ff7c5b +Author: djm@openbsd.org +Date: Fri Feb 16 02:40:45 2018 +0000 + + upstream: Mention recent DH KEX methods: + + diffie-hellman-group14-sha256 + diffie-hellman-group16-sha512 + diffie-hellman-group18-sha512 + + From Jakub Jelen via bz#2826 + + OpenBSD-Commit-ID: 51bf769f06e55447f4bfa7306949e62d2401907a + +commit 88c50a5ae20902715f0fca306bb9c38514f71679 +Author: djm@openbsd.org +Date: Fri Feb 16 02:32:40 2018 +0000 + + upstream: stop loading DSA keys by default, remove sshd_config + + stanza and manpage bits; from Colin Watson via bz#2662, ok dtucker@ + + OpenBSD-Commit-ID: d33a849f481684ff655c140f5eb1b4acda8c5c09 + +commit d2b3db2860c962927def39a52f67f1c23f7b201a +Author: jsing@openbsd.org +Date: Wed Feb 14 16:27:24 2018 +0000 + + upstream: Ensure that D mod (P-1) and D mod (Q-1) are calculated in + + constant time. + + This avoids a potential side channel timing leak. + + ok djm@ markus@ + + OpenBSD-Commit-ID: 71ff3c16be03290e63d8edab8fac053d8a82968c + +commit 4270efad7048535b4f250f493d70f9acfb201593 +Author: jsing@openbsd.org +Date: Wed Feb 14 16:03:32 2018 +0000 + + upstream: Some obvious freezero() conversions. + + This also zeros an ed25519_pk when it was not being zeroed previously. + + ok djm@ dtucker@ + + OpenBSD-Commit-ID: 5c196a3c85c23ac0bd9b11bcadaedd90b7a2ce82 + +commit affa6ba67ffccc30b85d6e98f36eb5afd9386882 +Author: Darren Tucker +Date: Thu Feb 15 22:32:04 2018 +1100 + + Remove execute bit from modpipe.c. + +commit 9879dca438526ae6dfd656fecb26b0558c29c731 +Author: Darren Tucker +Date: Thu Feb 15 22:26:16 2018 +1100 + + Update prngd link to point to sourceforge. + +commit b6973fa5152b1a0bafd2417b7c3ad96f6e87d014 +Author: Darren Tucker +Date: Thu Feb 15 22:22:38 2018 +1100 + + Remove references to UNICOS. + +commit f1ca487940449f0b64f38f1da575078257609966 +Author: Darren Tucker +Date: Thu Feb 15 22:18:37 2018 +1100 + + Remove extra newline. + +commit 6d4e980f3cf27f409489cf89cd46c21501b13731 +Author: Darren Tucker +Date: Thu Feb 15 22:16:54 2018 +1100 + + OpenSSH's builtin entropy gathering is long gone. + +commit 389125b25d1a1d7f22e907463b7e8eca74af79ea +Author: Darren Tucker +Date: Thu Feb 15 21:43:01 2018 +1100 + + Replace remaining mysignal() with signal(). + + These seem to have been missed during the replacement of mysignal + with #define signal in commit 5ade9ab. Both include the requisite + headers to pick up the #define. + +commit 265d88d4e61e352de6791733c8b29fa3d7d0c26d +Author: Darren Tucker +Date: Thu Feb 15 20:06:19 2018 +1100 + + Remove remaining now-obsolete cvs $Ids. + +commit 015749e9b1d2f6e14733466d19ba72f014d0845c +Author: Darren Tucker +Date: Thu Feb 15 17:01:54 2018 +1100 + + Regenerate dependencies after UNICOS removal. + +commit ddc0f3814881ea279a6b6d4d98e03afc60ae1ed7 +Author: Darren Tucker +Date: Tue Feb 13 09:10:46 2018 +1100 + + Remove UNICOS support. + + The code required to support it is quite invasive to the mainline + code that is synced with upstream and is an ongoing maintenance burden. + Both the hardware and software are literal museum pieces these days and + we could not find anyone still running OpenSSH on one. + +commit 174bed686968494723e6db881208cc4dac0d020f +Author: Darren Tucker +Date: Tue Feb 13 18:12:47 2018 +1100 + + Retpoline linker flag only needed for linking. + +commit 075e258c2cc41e1d7f3ea2d292c5342091728d40 +Author: Darren Tucker +Date: Tue Feb 13 17:36:43 2018 +1100 + + Default PidFile is sshd.pid not ssh.pid. + +commit 49f3c0ec47730ea264e2bd1e6ece11167d6384df +Author: Darren Tucker +Date: Tue Feb 13 16:27:09 2018 +1100 + + Remove assigned-to-but-never-used variable. + + 'p' was removed in previous change but I neglected to remove the + otherwise-unused assignment to it. + +commit b8bbff3b3fc823bf80c5ab226c94f13cb887d5b1 +Author: djm@openbsd.org +Date: Tue Feb 13 03:36:56 2018 +0000 + + upstream: remove space before tab + + OpenBSD-Commit-ID: 674edd214d0a7332dd4623c9cf8117301b012890 + +commit 05046d907c211cb9b4cd21b8eff9e7a46cd6c5ab +Author: dtucker@openbsd.org +Date: Sun Feb 11 21:16:56 2018 +0000 + + upstream Don't reset signal handlers inside handlers. + + The signal handlers from the original ssh1 code on which OpenSSH + is based assume unreliable signals and reinstall their handlers. + Since OpenBSD (and pretty much every current system) has reliable + signals this is not needed. In the unlikely even that -portable + is still being used on such systems we will deal with it in the + compat layer. ok deraadt@ + + OpenBSD-Commit-ID: f53a1015cb6908431b92116130d285d71589612c + +commit 3c51143c639ac686687c7acf9b373b8c08195ffb +Author: Darren Tucker +Date: Tue Feb 13 09:07:29 2018 +1100 + + Whitespace sync with upstream. + +commit 19edfd4af746bedf0df17f01953ba8c6d3186eb7 +Author: Darren Tucker +Date: Tue Feb 13 08:25:46 2018 +1100 + + Whitespace sync with upstream. + +commit fbfa6f980d7460b3e12b0ce88ed3b6018edf4711 +Author: Darren Tucker +Date: Sun Feb 11 21:25:11 2018 +1300 + + Move signal compat code into bsd-signal.{c,h} + +commit 24d2a33bd3bf5170700bfdd8675498aa09a79eab +Author: Darren Tucker +Date: Sun Feb 11 21:20:39 2018 +1300 + + Include headers for linux/if.h. + + Prevents configure-time "present but cannot be compiled" warning. + +commit bc02181c24fc551aab85eb2cff0f90380928ef43 +Author: Darren Tucker +Date: Sun Feb 11 19:45:47 2018 +1300 + + Fix test for -z,retpolineplt linker flag. + +commit 3377df00ea3fece5293db85fe63baef33bf5152e +Author: Darren Tucker +Date: Sun Feb 11 09:32:37 2018 +1100 + + Add checks for Spectre v2 mitigation (retpoline) + + This adds checks for gcc and clang flags for mitigations for Spectre + variant 2, ie "retpoline". It'll automatically enabled if the compiler + supports it as part of toolchain hardening flag. ok djm@ + +commit d9e5cf078ea5380da6df767bb1773802ec557ef0 +Author: djm@openbsd.org +Date: Sat Feb 10 09:25:34 2018 +0000 + + upstream commit + + constify some private key-related functions; based on + https://github.com/openssh/openssh-portable/pull/56 by Vincent Brillault + + OpenBSD-Commit-ID: dcb94a41834a15f4d00275cb5051616fdc4c988c + +commit a7c38215d564bf98e8e9eb40c1079e3adf686f15 +Author: djm@openbsd.org +Date: Sat Feb 10 09:03:54 2018 +0000 + + upstream commit + + Mention ServerAliveTimeout in context of TCPKeepAlives; + prompted by Christoph Anton Mitterer via github + + OpenBSD-Commit-ID: f0cf1b5bd3f1fbf41d71c88d75d93afc1c880ca2 + +commit 62562ceae61e4f7cf896566592bb840216e71061 +Author: djm@openbsd.org +Date: Sat Feb 10 06:54:38 2018 +0000 + + upstream commit + + clarify IgnoreUserKnownHosts; based on github PR from + Christoph Anton Mitterer. + + OpenBSD-Commit-ID: 4fff2c17620c342fb2f1f9c2d2e679aab3e589c3 + +commit 4f011daa4cada6450fa810f7563b8968639bb562 +Author: djm@openbsd.org +Date: Sat Feb 10 06:40:28 2018 +0000 + + upstream commit + + Shorter, more accurate explanation of + NoHostAuthenticationForLocalhost without the confusing example. Prompted by + Christoph Anton Mitterer via github and bz#2293. + + OpenBSD-Commit-ID: 19dc96bea25b80d78d416b581fb8506f1e7b76df + +commit 77e05394af21d3f5faa0c09ed3855e4505a5cf9f +Author: djm@openbsd.org +Date: Sat Feb 10 06:15:12 2018 +0000 + + upstream commit + + Disable RemoteCommand and RequestTTY in the ssh session + started by scp. sftp is already doing this. From Camden Narzt via github; ok + dtucker + + OpenBSD-Commit-ID: 59e2611141c0b2ee579c6866e8eb9d7d8217bc6b + +commit ca613249a00b64b2eea9f52d3834b55c28cf2862 +Author: djm@openbsd.org +Date: Sat Feb 10 05:48:46 2018 +0000 + + upstream commit + + Refuse to create a certificate with an unusable number of + principals; Prompted by gdestuynder via github + + OpenBSD-Commit-ID: 8cfae2451e8f07810e3e2546dfdcce66984cbd29 + +commit b56ac069d46b6f800de34e1e935f98d050731d14 +Author: djm@openbsd.org +Date: Sat Feb 10 05:43:26 2018 +0000 + + upstream commit + + fatal if we're unable to write all the public key; previously + we would silently ignore errors writing the comment and terminating newline. + Prompted by github PR from WillerZ; ok dtucker + + OpenBSD-Commit-ID: 18fbfcfd4e8c6adbc84820039b64d70906e49831 + +commit cdb10bd431f9f6833475c27e9a82ebb36fdb12db +Author: Darren Tucker +Date: Sat Feb 10 11:18:38 2018 +1100 + + Add changelog entry for binary strip change. + +commit fbddd91897cfaf456bfc2081f39fb4a2208a0ebf +Author: Darren Tucker +Date: Sat Feb 10 11:14:54 2018 +1100 + + Remove unused variables. + +commit 937d96587df99c16c611d828cded292fa474a32b +Author: Darren Tucker +Date: Sat Feb 10 11:12:45 2018 +1100 + + Don't strip binaries so debuginfo gets built. + + Tell install not to strip binaries during package creation so that the + debuginfo package can be built. + +commit eb0865f330f59c889ec92696b97bd397090e720c +Author: Darren Tucker +Date: Sat Feb 10 10:33:11 2018 +1100 + + Fix bogus dates in changelog. + +commit 7fbde1b34c1f6c9ca9e9d10805ba1e5e4538e165 +Author: Darren Tucker +Date: Sat Feb 10 10:25:15 2018 +1100 + + Remove SSH1 from description. + +commit 9c34a76f099c4e0634bf6ecc2f40ce93925402c4 +Author: Darren Tucker +Date: Sat Feb 10 10:19:16 2018 +1100 + + Add support for compat-openssl10 build dep. + +commit 04f4e8193cb5a5a751fcc356bd6656291fec539e +Author: Darren Tucker +Date: Sat Feb 10 09:57:04 2018 +1100 + + Add leading zero so it'll work when rhel not set. + + When rhel is not set it will error out with "bad if". Add leading zero + as per https://fedoraproject.org/wiki/Packaging:DistTag so it'll work + on non-RHEL. + +commit 12abd67a6af28476550807a443b38def2076bb92 +Author: Darren Tucker +Date: Sat Feb 10 09:56:34 2018 +1100 + + Update openssl-devel dependency. + +commit b33e7645f8813719d7f9173fef24463c8833ebb3 +Author: nkadel +Date: Sun Nov 16 18:19:58 2014 -0500 + + Add mandir with-mandir' for RHEL 5 compatibility. + + Activate '--mandir' and '--with-mandir' settings in setup for RHEL + 5 compatibility. + +commit 94f8bf360eb0162e39ddf39d69925c2e93511e40 +Author: nkadel +Date: Sun Nov 16 18:18:51 2014 -0500 + + Discard 'K5DIR' reporting. + + It does not work inside 'mock' build environment. + +commit bb7e54dbaf34b70b3e57acf7982f3a2136c94ee5 +Author: nkadel +Date: Sun Nov 16 18:17:15 2014 -0500 + + Add 'dist' to 'rel' for OS specific RPM names. + +commit 87346f1f57f71150a9b8c7029d8c210e27027716 +Author: nkadel +Date: Sun Nov 16 14:17:38 2014 -0500 + + Add openssh-devel >= 0.9.8f for redhat spec file. + +commit bec1478d710866d3c1b119343a35567a8fc71ec3 +Author: nkadel +Date: Sun Nov 16 13:10:24 2014 -0500 + + Enhance BuildRequires for openssh-x11-askpass. + +commit 3104fcbdd3c70aefcb0cdc3ee24948907db8dc8f +Author: nkadel +Date: Sun Nov 16 13:04:14 2014 -0500 + + Always include x11-ssh-askpass SRPM. + + Always include x11-ssh-askpass tarball in redhat SRPM, even if unused. + +commit c61d0d038d58eebc365f31830be6e04ce373ad1b +Author: Damien Miller +Date: Sat Feb 10 09:43:12 2018 +1100 + + this is long unused; prompted by dtucker@ + +commit 745771fb788e41bb7cdad34e5555bf82da3af7ed +Author: dtucker@openbsd.org +Date: Fri Feb 9 02:37:36 2018 +0000 + + upstream commit + + Remove unused sKerberosTgtPassing from enum. From + calestyo via github pull req #11, ok djm@ + + OpenBSD-Commit-ID: 1008f8870865a7c4968b7aed402a0a9e3e5b9540 + +commit 1f385f55332db830b0ae22a7663b98279ca2d657 +Author: dtucker@openbsd.org +Date: Thu Feb 8 04:12:32 2018 +0000 + + upstream commit + + Rename struct umac_ctx to umac128_ctx too. In portable + some linkers complain about two symbols with the same name having differing + sizes. ok djm@ + + OpenBSD-Commit-ID: cbebf8bdd3310a9795b4939a1e112cfe24061ca3 + +commit f1f047fb031c0081dbc8738f05bf5d4cc47acadf +Author: dtucker@openbsd.org +Date: Wed Feb 7 22:52:45 2018 +0000 + + upstream commit + + ssh_free checks for and handles NULL args, remove NULL + checks from remaining callers. ok djm@ + + OpenBSD-Commit-ID: bb926825c53724c069df68a93a2597f9192f7e7b + +commit aee49b2a89b6b323c80dd3b431bd486e51f94c8c +Author: Darren Tucker +Date: Thu Feb 8 12:36:22 2018 +1100 + + Set SO_REUSEADDR in regression test netcat. + + Sometimes multiplex tests fail on Solaris with "netcat: local_listen: + Address already in use" which is likely due to previous invocations + leaving the port in TIME_WAIT. Set SO_REUSEADDR (in addition to + SO_REUSEPORT which is alread set on platforms that support it). ok djm@ + +commit 1749991c55bab716877b7c687cbfbf19189ac6f1 +Author: jsing@openbsd.org +Date: Wed Feb 7 05:17:56 2018 +0000 + + upstream commit + + Convert some explicit_bzero()/free() calls to freezero(). + + ok deraadt@ dtucker@ + + OpenBSD-Commit-ID: f566ab99149650ebe58b1d4b946ea726c3829609 + +commit 94ec2b69d403f4318b7a0d9b17f8bc3efbf4d0d2 +Author: jsing@openbsd.org +Date: Wed Feb 7 05:15:49 2018 +0000 + + upstream commit + + Remove some #ifdef notyet code from OpenSSL 0.9.8 days. + + These functions have never appeared in OpenSSL and are likely never to do + so. + + "kill it with fire" djm@ + + OpenBSD-Commit-ID: fee9560e283fd836efc2631ef381658cc673d23e + +commit 7cd31632e3a6607170ed0c9ed413a7ded5b9b377 +Author: jsing@openbsd.org +Date: Wed Feb 7 02:06:50 2018 +0000 + + upstream commit + + Remove all guards for calls to OpenSSL free functions - + all of these functions handle NULL, from at least OpenSSL 1.0.1g onwards. + + Prompted by dtucker@ asking about guards for RSA_free(), when looking at + openssh-portable pr#84 on github. + + ok deraadt@ dtucker@ + + OpenBSD-Commit-ID: 954f1c51b94297d0ae1f749271e184141e0cadae + +commit 3c000d57d46882eb736c6563edfc4995915c24a2 +Author: Darren Tucker +Date: Wed Feb 7 09:19:38 2018 +1100 + + Remove obsolete "Smartcard support" message + + The configure checks that populated $SCARD_MSG were removed in commits + 7ea845e4 and d8f60022 when the smartcard support was replaced with + PKCS#11. + +commit 3e615090de0ce36a833d811e01c28aec531247c4 +Author: dtucker@openbsd.org +Date: Tue Feb 6 06:01:54 2018 +0000 + + upstream commit + + Replace "trojan horse" with the correct term (MITM). + From maikel at predikkta.com via bz#2822, ok markus@ + + OpenBSD-Commit-ID: e86ac64c512057c89edfadb43302ac0aa81a6c53 + +commit 3484380110d437c50e17f87d18544286328c75cb +Author: tb@openbsd.org +Date: Mon Feb 5 05:37:46 2018 +0000 + + upstream commit + + Add a couple of non-negativity checks to avoid close(-1). + + ok djm + + OpenBSD-Commit-ID: 4701ce0b37161c891c838d0931305f1d37a50880 + +commit 5069320be93c8b2a6584b9f944c86f60c2b04e48 +Author: tb@openbsd.org +Date: Mon Feb 5 05:36:49 2018 +0000 + + upstream commit + + The file descriptors for socket, stdin, stdout and stderr + aren't necessarily distinct, so check if they are the same to avoid closing + the same fd several times. + + ok djm + + OpenBSD-Commit-ID: 60d71fd22e9a32f5639d4ba6e25a2f417fc36ac1 + +commit 2b428f90ea1b21d7a7c68ec1ee334253b3f9324d +Author: djm@openbsd.org +Date: Mon Feb 5 04:02:53 2018 +0000 + + upstream commit + + I accidentially a word + + OpenBSD-Commit-ID: 4547ee713fa941da861e83ae7a3e6432f915e14a + +commit 130283d5c2545ff017c2162dc1258c5354e29399 +Author: djm@openbsd.org +Date: Thu Jan 25 03:34:43 2018 +0000 + + upstream commit + + certificate options are case-sensitive; fix case on one + that had it wrong. + + move a badly-place sentence to a less bad place + + OpenBSD-Commit-ID: 231e516bba860699a1eece6d48532d825f5f747b + +commit 89f09ee68730337015bf0c3f138504494a34e9a6 +Author: Damien Miller +Date: Wed Jan 24 12:20:44 2018 +1100 + + crypto_api.h needs includes.h + +commit c9c1bba06ad1c7cad8548549a68c071bd807af60 +Author: stsp@openbsd.org +Date: Tue Jan 23 20:00:58 2018 +0000 + + upstream commit + + Fix a logic bug in sshd_exchange_identification which + prevented clients using major protocol version 2 from connecting to the + server. ok millert@ + + OpenBSD-Commit-ID: 8668dec04586e27f1c0eb039ef1feb93d80a5ee9 + +commit a60c5dcfa2538ffc94dc5b5adb3db5b6ed905bdb +Author: stsp@openbsd.org +Date: Tue Jan 23 18:33:49 2018 +0000 + + upstream commit + + Add missing braces; fixes 'write: Socket is not + connected' error in ssh. ok deraadt@ + + OpenBSD-Commit-ID: db73a3a9e147722d410866cac34d43ed52e1ad24 + +commit 20d53ac283e1c60245ea464bdedd015ed9b38f4a +Author: Damien Miller +Date: Tue Jan 23 16:49:43 2018 +1100 + + rebuild depends + +commit 552ea155be44f9c439c1f9f0c38f9e593428f838 +Author: Damien Miller +Date: Tue Jan 23 16:49:22 2018 +1100 + + one SSH_BUG_BANNER instance that got away + +commit 14b5c635d1190633b23ac3372379517fb645b0c2 +Author: djm@openbsd.org +Date: Tue Jan 23 05:27:21 2018 +0000 + + upstream commit + + Drop compatibility hacks for some ancient SSH + implementations, including ssh.com <=2.* and OpenSSH <= 3.*. + + These versions were all released in or before 2001 and predate the + final SSH RFCs. The hacks in question aren't necessary for RFC- + compliant SSH implementations. + + ok markus@ + + OpenBSD-Commit-ID: 4be81c67db57647f907f4e881fb9341448606138 + +commit 7c77991f5de5d8475cbeb7cbb06d0c7d1611d7bb +Author: djm@openbsd.org +Date: Tue Jan 23 05:17:04 2018 +0000 + + upstream commit + + try harder to preserve errno during + ssh_connect_direct() to make the final error message possibly accurate; + bz#2814, ok dtucker@ + + OpenBSD-Commit-ID: 57de882cb47381c319b04499fef845dd0c2b46ca + +commit 9e9c4a7e57b96ab29fe6d7545ed09d2e5bddbdec +Author: djm@openbsd.org +Date: Tue Jan 23 05:12:12 2018 +0000 + + upstream commit + + unbreak support for clients that advertise a protocol + version of "1.99" (indicating both v2 and v1 support). Busted by me during + SSHv1 purge in r1.358; bz2810, ok dtucker + + OpenBSD-Commit-ID: e8f9c2bee11afc16c872bb79d6abe9c555bd0e4b + +commit fc21ea97968264ad9bb86b13fedaaec8fd3bf97d +Author: djm@openbsd.org +Date: Tue Jan 23 05:06:25 2018 +0000 + + upstream commit + + don't attempt to force hostnames that are addresses to + lowercase, but instead canonicalise them through getnameinfo/getaddrinfo to + remove ambiguities (e.g. ::0001 => ::1) before they are matched against + known_hosts; bz#2763, ok dtucker@ + + OpenBSD-Commit-ID: ba0863ff087e61e5c65efdbe53be3cb92c9aefa0 + +commit d6364f6fb1a3d753d7ca9bf15b2adce961324513 +Author: djm@openbsd.org +Date: Tue Jan 23 05:01:15 2018 +0000 + + upstream commit + + avoid modifying pw->pw_passwd; let endpwent() clean up + for us, but keep a scrubbed copy; bz2777, ok dtucker@ + + OpenBSD-Commit-ID: 715afc0f59c6b82c4929a73279199ed241ce0752 + +commit a69bbb07cd6fb4dfb9bdcacd370ab26d0a2b4215 +Author: naddy@openbsd.org +Date: Sat Jan 13 00:24:09 2018 +0000 + + upstream commit + + clarify authorship; prodded by and ok markus@ + + OpenBSD-Commit-ID: e1938eee58c89b064befdabe232835fa83bb378c + +commit 04214b30be3d3e73a01584db4e040d5ccbaaddd4 +Author: markus@openbsd.org +Date: Mon Jan 8 15:37:21 2018 +0000 + + upstream commit + + group shared source files (e.g. SRCS_KEX) and allow + compilation w/o OPENSSL ok djm@ + + OpenBSD-Commit-ID: fa728823ba21c4b45212750e1d3a4b2086fd1a62 + +commit 25cf9105b849932fc3b141590c009e704f2eeba6 +Author: markus@openbsd.org +Date: Mon Jan 8 15:21:49 2018 +0000 + + upstream commit + + move subprocess() so scp/sftp do not need uidswap.o; ok + djm@ + + OpenBSD-Commit-ID: 6601b8360388542c2e5fef0f4085f8e54750bea8 + +commit b0d34132b3ca26fe94013f01d7b92101e70b68bb +Author: markus@openbsd.org +Date: Mon Jan 8 15:18:46 2018 +0000 + + upstream commit + + switch ssh-pkcs11-helper to new API; ok djm@ + + OpenBSD-Commit-ID: e0c0ed2a568e25b1d2024f3e630f3fea837c2a42 + +commit ec4a9831184c0c6ed5f7f0cfff01ede5455465a3 +Author: markus@openbsd.org +Date: Mon Jan 8 15:15:36 2018 +0000 + + upstream commit + + split client/server kex; only ssh-keygen needs + uuencode.o; only scp/sftp use progressmeter.o; ok djm@ + + OpenBSD-Commit-ID: f2c9feb26963615c4fece921906cf72e248b61ee + +commit ec77efeea06ac62ee1d76fe0b3225f3000775a9e +Author: markus@openbsd.org +Date: Mon Jan 8 15:15:17 2018 +0000 + + upstream commit + + only ssh-keygen needs uuencode.o; only scp/sftp use + progressmeter.o + + OpenBSD-Commit-ID: a337e886a49f96701ccbc4832bed086a68abfa85 + +commit 25aae35d3d6ee86a8c4c0b1896acafc1eab30172 +Author: markus@openbsd.org +Date: Mon Jan 8 15:14:44 2018 +0000 + + upstream commit + + uuencode.h is not used + + OpenBSD-Commit-ID: 238eb4659f3c119904326b9e94a5e507a912796c + +commit 4f29309c4cb19bcb1774931db84cacc414f17d29 +Author: Damien Miller +Date: Wed Jan 3 19:50:43 2018 +1100 + + unbreak fuzz harness + +commit f6b50bf84dc0b61f22c887c00423e0ea7644e844 +Author: djm@openbsd.org +Date: Thu Dec 21 05:46:35 2017 +0000 + + upstream commit + + another libssh casualty + + OpenBSD-Regress-ID: 839b970560246de23e7c50215095fb527a5a83ec + +commit 5fb4fb5a0158318fb8ed7dbb32f3869bbf221f13 +Author: djm@openbsd.org +Date: Thu Dec 21 03:01:49 2017 +0000 + + upstream commit + + missed one (unbreak after ssh/lib removal) + + OpenBSD-Regress-ID: cfdd132143131769e2d2455e7892b5d55854c322 + +commit e6c4134165d05447009437a96e7201276688807f +Author: djm@openbsd.org +Date: Thu Dec 21 00:41:22 2017 +0000 + + upstream commit + + unbreak unit tests after removal of src/usr.bin/ssh/lib + + OpenBSD-Regress-ID: 3a79760494147b20761cbd2bd5c20e86c63dc8f9 + +commit d45d69f2a937cea215c7f0424e5a4677b6d8c7fe +Author: djm@openbsd.org +Date: Thu Dec 21 00:00:28 2017 +0000 + + upstream commit + + revert stricter key type / signature type checking in + userauth path; too much software generates inconsistent messages, so we need + a better plan. + + OpenBSD-Commit-ID: 4a44ddc991c803c4ecc8f1ad40e0ab4d22e1c519 + +commit c5a6cbdb79752f7e761074abdb487953ea6db671 +Author: djm@openbsd.org +Date: Tue Dec 19 00:49:30 2017 +0000 + + upstream commit + + explicitly test all key types and their certificate + counterparts + + refactor a little + + OpenBSD-Regress-ID: e9ecd5580821b9ef8b7106919c6980d8e45ca8c4 + +commit f689adb7a370b5572612d88be9837ca9aea75447 +Author: dtucker@openbsd.org +Date: Mon Dec 11 11:41:56 2017 +0000 + + upstream commit + + use cmp in a loop instead of diff -N to compare + directories. The former works on more platforms for Portable. + + OpenBSD-Regress-ID: c3aa72807f9c488e8829a26ae50fe5bcc5b57099 + +commit 748dd8e5de332b24c40f4b3bbedb902acb048c98 +Author: Damien Miller +Date: Tue Dec 19 16:17:59 2017 +1100 + + remove blocks.c from Makefile + +commit 278856320520e851063b06cef6ef1c60d4c5d652 +Author: djm@openbsd.org +Date: Tue Dec 19 00:24:34 2017 +0000 + + upstream commit + + include signature type and CA key (if applicable) in some + debug messages + + OpenBSD-Commit-ID: b71615cc20e78cec7105bb6e940c03ce9ae414a5 + +commit 7860731ef190b52119fa480f8064ab03c44a120a +Author: djm@openbsd.org +Date: Mon Dec 18 23:16:23 2017 +0000 + + upstream commit + + unbreak hostkey rotation; attempting to sign with a + desired signature algorithm of kex->hostkey_alg is incorrect when the key + type isn't capable of making those signatures. ok markus@ + + OpenBSD-Commit-ID: 35ae46864e1f5859831ec0d115ee5ea50953a906 + +commit 966ef478339ad5e631fb684d2a8effe846ce3fd4 +Author: djm@openbsd.org +Date: Mon Dec 18 23:14:34 2017 +0000 + + upstream commit + + log mismatched RSA signature types; ok markus@ + + OpenBSD-Commit-ID: 381bddfcc1e297a42292222f3bcb5ac2b7ea2418 + +commit 349ecd4da3a985359694a74635748009be6baca6 +Author: djm@openbsd.org +Date: Mon Dec 18 23:13:42 2017 +0000 + + upstream commit + + pass kex->hostkey_alg and kex->hostkey_nid from pre-auth + to post-auth unpriviledged child processes; ok markus@ + + OpenBSD-Commit-ID: 4a35bc7af0a5f8a232d1361f79f4ebc376137302 + +commit c9e37a8725c083441dd34a8a53768aa45c3c53fe +Author: millert@openbsd.org +Date: Mon Dec 18 17:28:54 2017 +0000 + + upstream commit + + Add helper function for uri handing in scp where a + missing path simply means ".". Also fix exit code and add warnings when an + invalid uri is encountered. OK otto@ + + OpenBSD-Commit-ID: 47dcf872380586dabf7fcc6e7baf5f8ad508ae1a + +commit 04c7e28f83062dc42f2380d1bb3a6bf0190852c0 +Author: djm@openbsd.org +Date: Mon Dec 18 02:25:15 2017 +0000 + + upstream commit + + pass negotiated signing algorithm though to + sshkey_verify() and check that the negotiated algorithm matches the type in + the signature (only matters for RSA SHA1/SHA2 sigs). ok markus@ + + OpenBSD-Commit-ID: 735fb15bf4adc060d3bee9d047a4bcaaa81b1af9 + +commit 931c78dfd7fe30669681a59e536bbe66535f3ee9 +Author: djm@openbsd.org +Date: Mon Dec 18 02:22:29 2017 +0000 + + upstream commit + + sshkey_sigtype() function to return the type of a + signature; ok markus@ + + OpenBSD-Commit-ID: d3772b065ad6eed97285589bfb544befed9032e8 + +commit 4cdc5956f2fcc9e9078938db833142dc07d8f523 +Author: naddy@openbsd.org +Date: Thu Dec 14 21:07:39 2017 +0000 + + upstream commit + + Replace ED25519's private SHA-512 implementation with a + call to the regular digest code. This speeds up compilation considerably. ok + markus@ + + OpenBSD-Commit-ID: fcce8c3bcfe7389462a28228f63c823e80ade41c + +commit 012e5cb839faf76549e3b6101b192fe1a74d367e +Author: naddy@openbsd.org +Date: Tue Dec 12 15:06:12 2017 +0000 + + upstream commit + + Create a persistent umac128.c source file: #define the + output size and the name of the entry points for UMAC-128 before including + umac.c. Idea from FreeBSD. ok dtucker@ + + OpenBSD-Commit-ID: 463cfacfa07cb8060a4d4961e63dca307bf3f4b1 + +commit b35addfb4cd3b5cdb56a2a489d38e940ada926c7 +Author: Darren Tucker +Date: Mon Dec 11 16:23:28 2017 +1100 + + Update .depend with empty config.h + +commit 2d96f28246938e0ca474a939d8ac82ecd0de27e3 +Author: Darren Tucker +Date: Mon Dec 11 16:21:55 2017 +1100 + + Ensure config.h is always in dependencies. + + Put an empty config.h into the dependency list to ensure that it's + always listed and consistent. + +commit ac4987a55ee5d4dcc8e87f7ae7c1f87be7257d71 +Author: deraadt@openbsd.org +Date: Sun Dec 10 19:37:57 2017 +0000 + + upstream commit + + ssh/lib hasn't worked towards our code-sharing goals for + a quit while, perhaps it is too verbose? Change each */Makefile to + specifying exactly what sources that program requires, compiling it seperate. + Maybe we'll iterate by sorting those into seperatable chunks, splitting up + files which contain common code + server/client specific code, or whatnot. + But this isn't one step, or we'd have done it a long time ago.. ok dtucker + markus djm + + OpenBSD-Commit-ID: 5317f294d63a876bfc861e19773b1575f96f027d + +commit 48c23a39a8f1069a57264dd826f6c90aa12778d5 +Author: dtucker@openbsd.org +Date: Sun Dec 10 05:55:29 2017 +0000 + + upstream commit + + Put remote client info back into the ClientAlive + connection termination message. Based in part on diff from lars.nooden at + gmail, ok djm + + OpenBSD-Commit-ID: 80a0f619a29bbf2f32eb5297a69978a0e05d0ee0 + +commit aabd75ec76575c1b17232e6526a644097cd798e5 +Author: deraadt@openbsd.org +Date: Fri Dec 8 03:45:52 2017 +0000 + + upstream commit + + time_t printing needs %lld and (long long) casts ok djm + + OpenBSD-Commit-ID: 4a93bc2b0d42a39b8f8de8bb74d07ad2e5e83ef7 + +commit fd4eeeec16537870bd40d04836c7906ec141c17d +Author: djm@openbsd.org +Date: Fri Dec 8 02:14:33 2017 +0000 + + upstream commit + + fix ordering in previous to ensure errno isn't clobbered + before logging. + + OpenBSD-Commit-ID: e260bc1e145a9690dcb0d5aa9460c7b96a0c8ab2 + +commit 155072fdb0d938015df828836beb2f18a294ab8a +Author: djm@openbsd.org +Date: Fri Dec 8 02:13:02 2017 +0000 + + upstream commit + + for some reason unix_listener() logged most errors twice + with each message containing only some of the useful information; merge these + + OpenBSD-Commit-ID: 1978a7594a9470c0dddcd719586066311b7c9a4a + +commit 79c0e1d29959304e5a49af1dbc58b144628c09f3 +Author: Darren Tucker +Date: Mon Dec 11 14:38:33 2017 +1100 + + Add autogenerated dependency info to Makefile. + + Adds a .depend file containing dependency information generated by + makedepend, which is appended to the generated Makefile by configure. + + You can regen the file with "make -f Makefile.in depend" if necessary, + but we'll be looking at some way to automatically keep this up to date. + + "no objection" djm@ + +commit f001de8fbf7f3faddddd8efd03df18e57601f7eb +Author: Darren Tucker +Date: Mon Dec 11 13:42:51 2017 +1100 + + Fix pasto in ldns handling. + + When ldns-config is not found, configure would check the wrong variable. + ok djm@ + +commit c5bfe83f67cb64e71cf2fe0d1500f6904b0099ee +Author: Darren Tucker +Date: Sat Dec 9 10:12:23 2017 +1100 + + Portable switched to git so s/CVS/git/. + +commit bb82e61a40a4ee52e4eb904caaee2c27b763ab5b +Author: Darren Tucker +Date: Sat Dec 9 08:06:00 2017 +1100 + + Remove now-used check for perl. + +commit e0ce54c0b9ca3a9388f9c50f4fa6cc25c28a3240 +Author: djm@openbsd.org +Date: Wed Dec 6 05:06:21 2017 +0000 + + upstream commit + + don't accept junk after "yes" or "no" responses to + hostkey prompts. bz#2803 reported by Maksim Derbasov; ok dtucker@ + + OpenBSD-Commit-ID: e1b159fb2253be973ce25eb7a7be26e6f967717c + +commit 609d96b3d58475a15b2eb6b3d463f2c5d8e510c0 +Author: dtucker@openbsd.org +Date: Tue Dec 5 23:59:47 2017 +0000 + + upstream commit + + Replace atoi and strtol conversions for integer arguments + to config keywords with a checking wrapper around strtonum. This will + prevent and flag invalid and negative arguments to these keywords. ok djm@ + + OpenBSD-Commit-ID: 99ae3981f3d608a219ccb8d2fff635ae52c17998 + +commit 168ecec13f9d7cb80c07df3bf7d414f4e4165e84 +Author: dtucker@openbsd.org +Date: Tue Dec 5 23:56:07 2017 +0000 + + upstream commit + + Add missing break for rdomain. Prevents spurious + "Deprecated option" warnings. ok djm@ + + OpenBSD-Commit-ID: ba28a675d39bb04a974586241c3cba71a9c6099a + +commit 927f8514ceffb1af380a5f63ab4d3f7709b1b198 +Author: djm@openbsd.org +Date: Tue Dec 5 01:30:19 2017 +0000 + + upstream commit + + include the addr:port in bind/listen failure messages + + OpenBSD-Commit-ID: fdadb69fe1b38692608809cf0376b71c2c28e58e + +commit a8c89499543e2d889629c4e5e8dcf47a655cf889 +Author: dtucker@openbsd.org +Date: Wed Nov 29 05:49:54 2017 +0000 + + upstream commit + + Import updated moduli. + + OpenBSD-Commit-ID: 524d210f982af6007aa936ca7f4c977f4d32f38a + +commit 3dde09ab38c8e1cfc28252be473541a81bc57097 +Author: dtucker@openbsd.org +Date: Tue Nov 28 21:10:22 2017 +0000 + + upstream commit + + Have sftp print a warning about shell cleanliness when + decoding the first packet fails, which is usually caused by shells polluting + stdout of non-interactive starups. bz#2800, ok markus@ deraadt@. + + OpenBSD-Commit-ID: 88d6a9bf3470f9324b76ba1cbd53e50120f685b5 + +commit 6c8a246437f612ada8541076be2414846d767319 +Author: Darren Tucker +Date: Fri Dec 1 17:11:47 2017 +1100 + + Replace mkinstalldirs with mkdir -p. + + Check for MIKDIR_P and use it instead of mkinstalldirs. Should fix "mkdir: + cannot create directory:... File exists" during "make install". + Patch from eb at emlix.com. + +commit 3058dd78d2e43ed0f82ad8eab8bb04b043a72023 +Author: Darren Tucker +Date: Fri Dec 1 17:07:08 2017 +1100 + + Pull in newer install-sh from autoconf-2.69. + + Suggested by eb at emlix.com + +commit 79226e5413c5b0fda3511351a8511ff457e306d8 +Author: Darren Tucker +Date: Fri Dec 1 16:55:35 2017 +1100 + + Remove RSA1 host key generation. + + SSH1 support is now gone, remove SSH1 key generation. + Patch from eb at emlix.com. + +commit 2937dd02c572a12f33d5c334d518f6cbe0b645eb +Author: djm@openbsd.org +Date: Tue Nov 28 06:09:38 2017 +0000 + + upstream commit + + more whitespace errors + + OpenBSD-Commit-ID: 5e11c125378327b648940b90145e0d98beb05abb + +commit 7f257bf3fd3a759f31098960cbbd1453fafc4164 +Author: djm@openbsd.org@openbsd.org +Date: Tue Nov 28 06:04:51 2017 +0000 + + upstream commit + + whitespace at EOL + + OpenBSD-Commit-ID: 76d3965202b22d59c2784a8df3a8bfa5ee67b96a + +commit 5db6fbf1438b108e5df3e79a1b4de544373bc2d4 +Author: dtucker@openbsd.org@openbsd.org +Date: Sat Nov 25 06:46:22 2017 +0000 + + upstream commit + + Add monotime_ts and monotime_tv that return monotonic + timespec and timeval respectively. Replace calls to gettimeofday() in packet + timing with monotime_tv so that the callers will work over a clock step. + Should prevent integer overflow during clock steps reported by wangle6 at + huawei.com. "I like" markus@ + + OpenBSD-Commit-ID: 74d684264814ff806f197948b87aa732cb1b0b8a + +commit 2d638e986085bdf1a40310ed6e2307463db96ea0 +Author: dtucker@openbsd.org@openbsd.org +Date: Sat Nov 25 05:58:47 2017 +0000 + + upstream commit + + Remove get_current_time() and replace with calls to + monotime_double() which uses CLOCK_MONOTONIC and works over clock steps. "I + like" markus@ + + OpenBSD-Commit-ID: 3ad2f7d2414e2cfcaef99877a7a5b0baf2242952 + +commit ba460acae48a36ef749cb23068f968f4d5d90a24 +Author: Darren Tucker +Date: Fri Nov 24 16:24:31 2017 +1100 + + Include string.h for explicit_bzero. + +commit a65655fb1a12b77fb22f9e71559b9d73030ec8ff +Author: Damien Miller +Date: Fri Nov 24 10:23:47 2017 +1100 + + fix incorrect range of OpenSSL versions supported + + Pointed out by Solar Designer + +commit 83a1e5dbec52d05775174f368e0c44b08619a308 +Author: djm@openbsd.org@openbsd.org +Date: Wed Nov 15 02:10:16 2017 +0000 + + upstream commit + + downgrade a couple more request parsing errors from + process-fatal to just returning failure, making them consistent with the + others that were already like that. + + OpenBSD-Commit-ID: c111461f7a626690a2d53018ef26557b34652918 + +commit 93c68a8f3da8e5e6acdc3396f54d73919165e242 +Author: djm@openbsd.org@openbsd.org +Date: Wed Nov 15 00:13:40 2017 +0000 + + upstream commit + + fix regression in 7.6: failure to parse a signature request + message shouldn't be fatal to the process, just the request. Reported by Ron + Frederick + + OpenBSD-Commit-ID: e5d01b3819caa1a2ad51fc57d6ded43f48bbcc05 + +commit 548d3a66feb64c405733932a6b1abeaf7198fa71 +Author: djm@openbsd.org@openbsd.org +Date: Tue Nov 14 00:45:29 2017 +0000 + + upstream commit + + fix problem in configuration parsing when in config dump mode + (sshd -T) without providing a full connection specification (sshd -T -C ...) + + spotted by bluhm@ + + OpenBSD-Commit-ID: 7125faf5740eaa9d3a2f25400a0bc85e94e28b8f + +commit 33edb6ebdc2f81ebed1bceadacdfb8910b64fb88 +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 05:18:44 2017 +0000 + + upstream commit + + reuse parse_multistate for parse_flag (yes/no arguments). + Saves a few lines of code and makes the parser more consistent wrt case- + sensitivity. bz#2664 ok dtucker@ + + OpenBSD-Commit-ID: b2ad1b6086858d5db71c7b11e5a74dba6d60efef + +commit d52131a98316e76c0caa348f09bf6f7b9b01a1b9 +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 05:14:04 2017 +0000 + + upstream commit + + allow certificate validity intervals that specify only a + start or stop time (we already support specifying both or neither) + + OpenBSD-Commit-ID: 9be486545603c003030bdb5c467d1318b46b4e42 + +commit fbe8e7ac94c2fa380421a9205a8bc966549c2f91 +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 03:46:52 2017 +0000 + + upstream commit + + allow "cd" and "lcd" commands with no explicit path + argument. lcd will change to the local user's home directory as usual. cd + will change to the starting directory for session (because the protocol + offers no way to obtain the remote user's home directory). bz#2760 ok + dtucker@ + + OpenBSD-Commit-ID: 15333f5087cee8c1ed1330cac1bd0a3e6a767393 + +commit 0208a48517b5e8e8b091f32fa4addcd67c31ca9e +Author: dtucker@openbsd.org@openbsd.org +Date: Fri Nov 3 03:18:53 2017 +0000 + + upstream commit + + When doing a config test with sshd -T, only require the + attributes that are actually used in Match criteria rather than (an + incomplete list of) all criteria. ok djm@, man page help jmc@ + + OpenBSD-Commit-ID: b4e773c4212d3dea486d0259ae977551aab2c1fc + +commit c357eed5a52cd2f4ff358b17e30e3f9a800644da +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 02:32:19 2017 +0000 + + upstream commit + + typos in ECDSA certificate names; bz#2787 reported by + Mike Gerow + + OpenBSD-Commit-ID: 824938b6aba1b31321324ba1f56c05f84834b163 + +commit ecbf005b8fd80b81d0c61dfc1e96fe3da6099395 +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 02:29:17 2017 +0000 + + upstream commit + + Private keys in PEM format have been encrypted by AES-128 for + a while (not 3DES). bz#2788 reported by Calum Mackay + + OpenBSD-Commit-ID: bd33da7acbbb3c882f0a0ee56007a35ce0d8a11a + +commit 81c9ccdbf6ddbf9bfbd6f1f775a5a7c13e47e185 +Author: Darren Tucker +Date: Fri Nov 3 14:52:51 2017 +1100 + + Check for linux/if.h when enabling rdomain. + + musl libc doesn't seem to have linux/if.h, so check for its presence + before enabling rdomain support on Linux. + +commit fa1b834cce41a1ce3e6a8d57fb67ef18c9dd803f +Author: Darren Tucker +Date: Fri Nov 3 14:09:45 2017 +1100 + + Add headers for sys/sysctl.h and net/route.h + + On at least older OpenBSDs, sys/sysctl.h and net/route.h require + sys/types and, in the case of sys/sysctl.h, sys/param.h for MAXLOGNAME. + +commit 41bff4da21fcd8a7c6a83a7e0f92b018f904f6fb +Author: djm@openbsd.org@openbsd.org +Date: Fri Nov 3 02:22:41 2017 +0000 + + upstream commit + + avoid unused variable warnings for !WITH_OPENSSL; patch from + Marcus Folkesson + + OpenBSD-Commit-ID: c01d27a3f907acdc3dd4ea48170fac3ba236d229 + +commit 6b373e4635a7470baa94253dd1dc8953663da9e8 +Author: Marcus Folkesson +Date: Sat Oct 28 19:48:39 2017 +0200 + + only enable functions in dh.c when openssl is used + + Signed-off-by: Marcus Folkesson + +commit 939b30ba23848b572e15bf92f0f1a3d9cf3acc2b +Author: djm@openbsd.org@openbsd.org +Date: Wed Nov 1 00:04:15 2017 +0000 + + upstream commit + + fix broken stdout in ControlPersist mode, introduced by me in + r1.467 and reported by Alf Schlichting + + OpenBSD-Commit-ID: 3750a16e02108fc25f747e4ebcedb7123c1ef509 + +commit f21455a084f9cc3942cf1bde64055a4916849fed +Author: Darren Tucker +Date: Tue Oct 31 10:09:33 2017 +1100 + + Include includes.h for HAVE_GETPAGESIZE. + + The configure script checks for getpagesize() and sets HAVE_GETPAGESIZE in + config.h, but bsd-getpagesize.c forgot to include includes.h (which + indirectly includes config.h) so the checks always fails, causing linker + issues when linking statically on systems with getpagesize(). + + Patch from Peter Korsgaard + +commit f2ad63c0718b93ac1d1e85f53fee33b06eef86b5 +Author: djm@openbsd.org@openbsd.org +Date: Mon Oct 30 22:01:52 2017 +0000 + + upstream commit + + whitespace at EOL + + OpenBSD-Regress-ID: f4b5df99b28c6f63478deb916c6ed0e794685f07 + +commit c6415b1f8f1d0c2735564371647fd6a177fb9a3e +Author: djm@openbsd.org@openbsd.org +Date: Mon Oct 30 21:59:43 2017 +0000 + + upstream commit + + whitespace at EOL + + OpenBSD-Regress-ID: 19b1394393deee4c8a2114a3b7d18189f27a15cd + +commit e4d4ddbbba0e585ca3ec3a455430750b4622a6d3 +Author: millert@openbsd.org@openbsd.org +Date: Wed Oct 25 20:08:36 2017 +0000 + + upstream commit + + Use printenv to test whether an SSH_USER_AUTH is set + instead of using $SSH_USER_AUTH. The latter won't work with csh which treats + unknown variables as an error when expanding them. OK markus@ + + OpenBSD-Regress-ID: f601e878dd8b71aa40381573dde3a8f567e6f2d1 + +commit 116b1b439413a724ebb3320633a64dd0f3ee1fe7 +Author: millert@openbsd.org@openbsd.org +Date: Tue Oct 24 19:33:32 2017 +0000 + + upstream commit + + Add tests for URI parsing. OK markus@ + + OpenBSD-Regress-ID: 5d1df19874f3b916d1a2256a905526e17a98bd3b + +commit dbe0662e9cd482593a4a8bf58c6481bfe8a747a4 +Author: djm@openbsd.org@openbsd.org +Date: Fri Oct 27 01:57:06 2017 +0000 + + upstream commit + + whitespace at EOL + + OpenBSD-Commit-ID: c95549cf5a07d56ea11aaff818415118720214f6 + +commit d2135474344335a7c6ee643b6ade6db400fa76ee +Author: djm@openbsd.org@openbsd.org +Date: Fri Oct 27 01:01:17 2017 +0000 + + upstream commit + + whitespace at EOL (lots) + + OpenBSD-Commit-ID: 757257dd44116794ee1b5a45c6724973de181747 + +commit b77c29a07f5a02c7c1998701c73d92bde7ae1608 +Author: djm@openbsd.org@openbsd.org +Date: Fri Oct 27 00:18:41 2017 +0000 + + upstream commit + + improve printing of rdomain on accept() a little + + OpenBSD-Commit-ID: 5da58db2243606899cedaa646c70201b2d12247a + +commit 68d3bbb2e6dfbf117c46e942142795b2cdd0274b +Author: jmc@openbsd.org@openbsd.org +Date: Thu Oct 26 06:44:01 2017 +0000 + + upstream commit + + mark up the rdomain keyword; + + OpenBSD-Commit-ID: 1b597d0ad0ad20e94dbd61ca066057e6f6313b8a + +commit 0b2e2896b9d0d6cfb59e9ec8271085296bd4e99b +Author: jmc@openbsd.org@openbsd.org +Date: Wed Oct 25 06:19:46 2017 +0000 + + upstream commit + + tweak the uri text, specifically removing some markup to + make it a bit more readable; + + issue reported by - and diff ok - millert + + OpenBSD-Commit-ID: 8b56a20208040b2d0633536fd926e992de37ef3f + +commit 7530e77bdc9415386d2a8ea3d086e8b611b2ba40 +Author: jmc@openbsd.org@openbsd.org +Date: Wed Oct 25 06:18:06 2017 +0000 + + upstream commit + + simplify macros in previous, and some minor tweaks; + + OpenBSD-Commit-ID: 6efeca3d8b095b76e21b484607d9cc67ac9a11ca + +commit eb9c582b710dc48976b48eb2204218f6863bae9a +Author: Damien Miller +Date: Tue Oct 31 00:46:29 2017 +1100 + + Switch upstream git repository. + + Previously portable OpenSSH has synced against a conversion of OpenBSD's + CVS repository made using the git cvsimport tool, but this has become + increasingly unreliable. + + As of this commit, portable OpenSSH now tracks a conversion of the + OpenBSD CVS upstream made using the excellent cvs2gitdump tool from + YASUOKA Masahiko: https://github.com/yasuoka/cvs2gitdump + + cvs2gitdump is considerably more reliable than gitcvsimport and the old + version of cvsps that it uses under the hood, and is the same tool used + to export the entire OpenBSD repository to git (so we know it can cope + with future growth). + + These new conversions are mirrored at github, so interested parties can + match portable OpenSSH commits to their upstream counterparts. + + https://github.com/djmdjm/openbsd-openssh-src + https://github.com/djmdjm/openbsd-openssh-regress + + An unfortunate side effect of switching upstreams is that we must have + a flag day, across which the upstream commit IDs will be inconsistent. + The old commit IDs are recorded with the tags "Upstream-ID" for main + directory commits and "Upstream-Regress-ID" for regress commits. + + To make it clear that the commit IDs do not refer to the same + things, the new repository will instead use "OpenBSD-ID" and + "OpenBSD-Regress-ID" tags instead. + + Apart from being a longwinded explanation of what is going on, this + commit message also serves to synchronise our tools with the state of + the tree, which happens to be: + + OpenBSD-ID: 9c43a9968c7929613284ea18e9fb92e4e2a8e4c1 + OpenBSD-Regress-ID: b33b385719420bf3bc57d664feda6f699c147fef + +commit 2de5c6b53bf063ac698596ef4e23d8e3099656ea +Author: Damien Miller +Date: Fri Oct 27 08:42:33 2017 +1100 + + fix rdomain compilation errors + +commit 6bd5b569fd6dfd5e8c8af20bbc41e45c2d6462ab +Author: Damien Miller +Date: Wed Oct 25 14:15:42 2017 +1100 + + autoconf glue to enable Linux VRF + +commit 97c5aaf925d61641d599071abb56012cde265978 +Author: Damien Miller +Date: Wed Oct 25 14:09:56 2017 +1100 + + basic valid_rdomain() implementation for Linux + +commit ce1cca39d7935dd394080ce2df62f5ce5b51f485 +Author: Damien Miller +Date: Wed Oct 25 13:47:59 2017 +1100 + + implement get/set_rdomain() for Linux + + Not enabled, pending implementation of valid_rdomain() and autoconf glue + +commit 6eee79f9b8d4a3b113b698383948a119acb82415 +Author: Damien Miller +Date: Wed Oct 25 13:22:29 2017 +1100 + + stubs for rdomain replacement functions + +commit f5594f939f844bbb688313697d6676238da355b3 +Author: Damien Miller +Date: Wed Oct 25 13:13:57 2017 +1100 + + rename port-tun.[ch] => port-net.[ch] + + Ahead of adding rdomain support + +commit d685e5a31feea35fb99e1a31a70b3c60a7f2a0eb +Author: djm@openbsd.org +Date: Wed Oct 25 02:10:39 2017 +0000 + + upstream commit + + uninitialised variable in PermitTunnel printing code + + Upstream-ID: f04dc33e42855704e116b8da61095ecc71bc9e9a + +commit 43c29bb7cfd46bbbc61e0ffa61a11e74d49a712f +Author: Damien Miller +Date: Wed Oct 25 13:10:59 2017 +1100 + + provide hooks and fallbacks for rdomain support + +commit 3235473bc8e075fad7216b7cd62fcd2b0320ea04 +Author: Damien Miller +Date: Wed Oct 25 11:25:43 2017 +1100 + + check for net/route.h and sys/sysctl.h + +commit 4d5456c7de108e17603a0920c4d15bca87244921 +Author: djm@openbsd.org +Date: Wed Oct 25 00:21:37 2017 +0000 + + upstream commit + + transfer ownership of stdout to the session channel by + dup2'ing /dev/null to fd 1. This allows propagation of remote stdout close to + the local side; reported by David Newall, ok markus@ + + Upstream-ID: 8d9ac18a11d89e6b0415f0cbf67b928ac67f0e79 + +commit 68af80e6fdeaeb79432209db614386ff0f37e75f +Author: djm@openbsd.org +Date: Wed Oct 25 00:19:47 2017 +0000 + + upstream commit + + add a "rdomain" criteria for the sshd_config Match + keyword to allow conditional configuration that depends on which rdomain(4) a + connection was recevied on. ok markus@ + + Upstream-ID: 27d8fd5a3f1bae18c9c6e533afdf99bff887a4fb + +commit 35eb33fb957979e3fcbe6ea0eaee8bf4a217421a +Author: djm@openbsd.org +Date: Wed Oct 25 00:17:08 2017 +0000 + + upstream commit + + add sshd_config RDomain keyword to place sshd and the + subsequent user session (including the shell and any TCP/IP forwardings) into + the specified rdomain(4) + + ok markus@ + + Upstream-ID: be2358e86346b5cacf20d90f59f980b87d1af0f5 + +commit acf559e1cffbd1d6167cc1742729fc381069f06b +Author: djm@openbsd.org +Date: Wed Oct 25 00:15:35 2017 +0000 + + upstream commit + + Add optional rdomain qualifier to sshd_config's + ListenAddress option to allow listening on a different rdomain(4), e.g. + + ListenAddress 0.0.0.0 rdomain 4 + + Upstream-ID: 24b6622c376feeed9e9be8b9605e593695ac9091 + +commit b9903ee8ee8671b447fc260c2bee3761e26c7227 +Author: millert@openbsd.org +Date: Tue Oct 24 19:41:45 2017 +0000 + + upstream commit + + Kill dead store and some spaces vs. tabs indent in + parse_user_host_path(). Noticed by markus@ + + Upstream-ID: 114fec91dadf9af46c7c94fd40fc630ea2de8200 + +commit 0869627e00f4ee2a038cb62d7bd9ffad405e1800 +Author: jmc@openbsd.org +Date: Tue Oct 24 06:27:42 2017 +0000 + + upstream commit + + tweak previous; ok djm + + Upstream-ID: 7d913981ab315296be1f759c67b6e17aea38fca9 + +commit e3fa20e2e58fdc88a0e842358778f2de448b771b +Author: Damien Miller +Date: Mon Oct 23 16:25:24 2017 +1100 + + avoid -Wsign-compare warning in argv copying + +commit b7548b12a6b2b4abf4d057192c353147e0abba08 +Author: djm@openbsd.org +Date: Mon Oct 23 05:08:00 2017 +0000 + + upstream commit + + Expose devices allocated for tun/tap forwarding. + + At the client, the device may be obtained from a new %T expansion + for LocalCommand. + + At the server, the allocated devices will be listed in a + SSH_TUNNEL variable exposed to the environment of any user sessions + started after the tunnel forwarding was established. + + ok markus + + Upstream-ID: e61e53f8ae80566e9ddc0d67a5df5bdf2f3c9f9e + +commit 887669ef032d63cf07f53cada216fa8a0c9a7d72 +Author: millert@openbsd.org +Date: Sat Oct 21 23:06:24 2017 +0000 + + upstream commit + + Add URI support to ssh, sftp and scp. For example + ssh://user@host or sftp://user@host/path. The connection parameters + described in draft-ietf-secsh-scp-sftp-ssh-uri-04 are not implemented since + the ssh fingerprint format in the draft uses md5 with no way to specify the + hash function type. OK djm@ + + Upstream-ID: 4ba3768b662d6722de59e6ecb00abf2d4bf9cacc + +commit d27bff293cfeb2252f4c7a58babe5ad3262c6c98 +Author: Damien Miller +Date: Fri Oct 20 13:22:00 2017 +1100 + + Fix missed RCSID merges + +commit d3b6aeb546242c9e61721225ac4387d416dd3d5e +Author: djm@openbsd.org +Date: Fri Oct 20 02:13:41 2017 +0000 + + upstream commit + + more RCSIDs + + Upstream-Regress-ID: 1aecbe3f8224793f0ec56741a86d619830eb33be + +commit b011edbb32e41aaab01386ce4c0efcc9ff681c4a +Author: djm@openbsd.org +Date: Fri Oct 20 01:56:39 2017 +0000 + + upstream commit + + add RCSIDs to these; they make syncing portable a bit + easier + + Upstream-ID: 56cb7021faea599736dd7e7f09c2e714425b1e68 + +commit 6eb27597781dccaf0ec2b80107a9f0592a0cb464 +Author: Damien Miller +Date: Fri Oct 20 12:54:15 2017 +1100 + + upstream commit + + Apply missing commit 1.11 to kexc25519s.c + + Upstream-ID: 5f020e23a1ee6c3597af1f91511e68552cdf15e8 + +commit 6f72280553cb6918859ebcacc717f2d2fafc1a27 +Author: Damien Miller +Date: Fri Oct 20 12:52:50 2017 +1100 + + upstream commit + + Apply missing commit 1.127 to servconf.h + + Upstream-ID: f14c4bac74a2b7cf1e3cff6bea5c447f192a7d15 + +commit bb3e16ab25cb911238c2eb7455f9cf490cb143cc +Author: jmc@openbsd.org +Date: Wed Oct 18 05:36:59 2017 +0000 + + upstream commit + + remove unused Pp; + + Upstream-ID: 8ad26467f1f6a40be887234085a8e01a61a00550 + +commit 05b69e99570553c8e1eafb895b1fbf1d098d2e14 +Author: djm@openbsd.org +Date: Wed Oct 18 02:49:44 2017 +0000 + + upstream commit + + In the description of pattern-lists, clarify negated + matches by explicitly stating that a negated match will never yield a + positive result, and that at least one positive term in the pattern-list must + match. bz#1918 + + Upstream-ID: 652d2f9d993f158fc5f83cef4a95cd9d95ae6a14 + +commit eb80e26a15c10bc65fed8b8cdb476819a713c0fd +Author: djm@openbsd.org +Date: Fri Oct 13 21:13:54 2017 +0000 + + upstream commit + + log debug messages sent to peer; ok deraadt markus + + Upstream-ID: 3b4fdc0a06ea5083f61d96e20043000f477103d9 + +commit 071325f458d615d7740da5c1c1d5a8b68a0b4605 +Author: jmc@openbsd.org +Date: Fri Oct 13 16:50:45 2017 +0000 + + upstream commit + + trim permitrootlogin description somewhat, to avoid + ambiguity; original diff from walter alejandro iglesias, tweaked by sthen and + myself + + ok sthen schwarze deraadt + + Upstream-ID: 1749418b2bc073f3fdd25fe21f8263c3637fe5d2 + +commit 10727487becb897a15f658e0cb2d05466236e622 +Author: djm@openbsd.org +Date: Fri Oct 13 06:45:18 2017 +0000 + + upstream commit + + mention SSH_USER_AUTH in the list of environment + variables + + Upstream-ID: 1083397c3ee54b4933121ab058c70a0fc6383691 + +commit 224f193d6a4b57e7a0cb2b9ecd3b6c54d721d8c2 +Author: djm@openbsd.org +Date: Fri Oct 13 06:24:51 2017 +0000 + + upstream commit + + BIO_get_mem_data() is supposed to take a char* as pointer + argument, so don't pass it a const char* + + Upstream-ID: 1ccd91eb7f4dd4f0fa812d4f956987cd00b5f6ec + +commit cfa46825b5ef7097373ed8e31b01a4538a8db565 +Author: benno@openbsd.org +Date: Mon Oct 9 20:12:51 2017 +0000 + + upstream commit + + clarify the order in which config statements are used. ok + jmc@ djm@ + + Upstream-ID: e37e27bb6bbac71315e22cb9690fd8a556a501ed + +commit dceabc7ad7ebc7769c8214a1647af64c9a1d92e5 +Author: djm@openbsd.org +Date: Thu Oct 5 15:52:03 2017 +0000 + + upstream commit + + replace statically-sized arrays in ServerOptions with + dynamic ones managed by xrecallocarray, removing some arbitrary (though + large) limits and saving a bit of memory; "much nicer" markus@ + + Upstream-ID: 1732720b2f478fe929d6687ac7b0a97ff2efe9d2 + +commit 2b4f3ab050c2aaf6977604dd037041372615178d +Author: jmc@openbsd.org +Date: Thu Oct 5 12:56:50 2017 +0000 + + upstream commit + + %C is hashed; from klemens nanni ok markus + + Upstream-ID: 6ebed7b2e1b6ee5402a67875d74f5e2859d8f998 + +commit a66714508b86d6814e9055fefe362d9fe4d49ab3 +Author: djm@openbsd.org +Date: Wed Oct 4 18:50:23 2017 +0000 + + upstream commit + + exercise PermitOpen a little more thoroughly + + Upstream-Regress-ID: f41592334e227a4c1f9a983044522de4502d5eac + +commit 609ecc8e57eb88e2eac976bd3cae7f7889aaeff6 +Author: dtucker@openbsd.org +Date: Tue Sep 26 22:39:25 2017 +0000 + + upstream commit + + UsePrivilegeSeparation is gone, stop trying to test it. + + Upstream-Regress-ID: 796a5057cfd79456a20ea935cc53f6eb80ace191 + +commit 69bda0228861f3dacd4fb3d28b60ce9d103d254b +Author: djm@openbsd.org +Date: Wed Oct 4 18:49:30 2017 +0000 + + upstream commit + + fix (another) problem in PermitOpen introduced during the + channels.c refactor: the third and subsequent arguments to PermitOpen were + being silently ignored; ok markus@ + + Upstream-ID: 067c89f1f53cbc381628012ba776d6861e6782fd + +commit 66bf74a92131b7effe49fb0eefe5225151869dc5 +Author: djm@openbsd.org +Date: Mon Oct 2 19:33:20 2017 +0000 + + upstream commit + + Fix PermitOpen crash; spotted by benno@, ok dtucker@ deraadt@ + + Upstream-ID: c2cc84ffac070d2e1ff76182c70ca230a387983c + +commit d63b38160a59039708fd952adc75a0b3da141560 +Author: Damien Miller +Date: Sun Oct 1 10:32:25 2017 +1100 + + update URL again + + I spotted a typo in the draft so uploaded a new version... + +commit 6f64f596430cd3576c529f07acaaf2800aa17d58 +Author: Damien Miller +Date: Sun Oct 1 10:01:56 2017 +1100 + + sync release notes URL + +commit 35ff70a04dd71663a5ac1e73b90d16d270a06e0d +Author: Damien Miller +Date: Sun Oct 1 10:01:25 2017 +1100 + + sync contrib/ssh-copy-id with upstream + +commit 290843b8ede85f8b30bf29cd7dceb805c3ea5b66 +Author: Damien Miller +Date: Sun Oct 1 09:59:19 2017 +1100 + + update version in RPM spec files + +commit 4e4e0bb223c5be88d87d5798c75cc6b0d4fef31d +Author: Damien Miller +Date: Sun Oct 1 09:58:24 2017 +1100 + + update agent draft URL + +commit e4a798f001d2ecd8bf025c1d07658079f27cc604 +Author: djm@openbsd.org +Date: Sat Sep 30 22:26:33 2017 +0000 + + upstream commit + + openssh-7.6; ok deraadt@ + + Upstream-ID: a39c3a5b63a1baae109ae1ae4c7c34c2a59acde0 + +commit 5fa1407e16e7e5fda9769d53b626ce39d5588d4d +Author: jmc@openbsd.org +Date: Wed Sep 27 06:45:53 2017 +0000 + + upstream commit + + tweak EposeAuthinfo; diff from lars nooden + + tweaked by sthen; ok djm dtucker + + Upstream-ID: 8f2ea5d2065184363e8be7a0ba24d98a3b259748 + +commit bba69c246f0331f657fd6ec97724df99fc1ad174 +Author: Damien Miller +Date: Thu Sep 28 16:06:21 2017 -0700 + + don't fatal ./configure for LibreSSL + +commit 04dc070e8b4507d9d829f910b29be7e3b2414913 +Author: Damien Miller +Date: Thu Sep 28 14:54:34 2017 -0700 + + abort in configure when only openssl-1.1.x found + + We don't support openssl-1.1.x yet (see multiple threads on the + openssh-unix-dev@ mailing list for the reason), but previously + ./configure would accept it and the compilation would subsequently + fail. This makes ./configure display an explicit error message and + abort. + + ok dtucker@ + +commit 74c1c3660acf996d9dc329e819179418dc115f2c +Author: Darren Tucker +Date: Wed Sep 27 07:44:41 2017 +1000 + + Check for and handle calloc(p, 0) = NULL. + + On some platforms (AIX, maybe others) allocating zero bytes of memory + via the various *alloc functions returns NULL, which is permitted + by the standards. Autoconf has some macros for detecting this (with + the exception of calloc for some reason) so use these and if necessary + activate shims for them. ok djm@ + +commit 6a9481258a77b0b54b2a313d1761c87360c5f1f5 +Author: markus@openbsd.org +Date: Thu Sep 21 19:18:12 2017 +0000 + + upstream commit + + test reverse dynamic forwarding with SOCKS + + Upstream-Regress-ID: 95cf290470f7e5e2f691e4bc6ba19b91eced2f79 + +commit 1b9f321605733754df60fac8c1d3283c89b74455 +Author: Damien Miller +Date: Tue Sep 26 16:55:55 2017 +1000 + + sync missing changes in dynamic-forward.sh + +commit 44fc334c7a9ebdd08addb6d5fa005369897fddeb +Author: Darren Tucker +Date: Mon Sep 25 09:48:10 2017 +1000 + + Add minimal strsignal for platforms without it. + +commit 218e6f98df566fb9bd363f6aa47018cb65ede196 +Author: djm@openbsd.org +Date: Sun Sep 24 13:45:34 2017 +0000 + + upstream commit + + fix inverted test on channel open failure path that + "upgraded" a transient failure into a fatal error; reported by sthen and also + seen by benno@; ok sthen@ + + Upstream-ID: b58b3fbb79ba224599c6cd6b60c934fc46c68472 + +commit c704f641f7b8777497dc82e81f2ac89afec7e401 +Author: djm@openbsd.org +Date: Sun Sep 24 09:50:01 2017 +0000 + + upstream commit + + write the correct buffer when tunnel forwarding; doesn't + matter on OpenBSD (they are the same) but does matter on portable where we + use an output filter to translate os-specific tun/tap headers + + Upstream-ID: f1ca94eff48404827b12e1d12f6139ee99a72284 + +commit 55486f5cef117354f0c64f991895835077b7c7f7 +Author: djm@openbsd.org +Date: Sat Sep 23 22:04:07 2017 +0000 + + upstream commit + + fix tunnel forwarding problem introduced in refactor; + reported by stsp@ ok markus@ + + Upstream-ID: 81a731cdae1122c8522134095d1a8b60fa9dcd04 + +commit 609d7a66ce578abf259da2d5f6f68795c2bda731 +Author: markus@openbsd.org +Date: Thu Sep 21 19:16:53 2017 +0000 + + upstream commit + + Add 'reverse' dynamic forwarding which combines dynamic + forwarding (-D) with remote forwarding (-R) where the remote-forwarded port + expects SOCKS-requests. + + The SSH server code is unchanged and the parsing happens at the SSH + clients side. Thus the full SOCKS-request is sent over the forwarded + channel and the client parses c->output. Parsing happens in + channel_before_prepare_select(), _before_ the select bitmask is + computed in the pre[] handlers, but after network input processing + in the post[] handlers. + + help and ok djm@ + + Upstream-ID: aa25a6a3851064f34fe719e0bf15656ad5a64b89 + +commit 36945fa103176c00b39731e1fc1919a0d0808b81 +Author: dtucker@openbsd.org +Date: Wed Sep 20 05:19:00 2017 +0000 + + upstream commit + + Use strsignal in debug message instead of casting for the + benefit of portable where sig_atomic_t might not be int. "much nicer" + deraadt@ + + Upstream-ID: 2dac6c1e40511c700bd90664cd263ed2299dcf79 + +commit 3e8d185af326bf183b6f78597d5e3d2eeb2dc40e +Author: millert@openbsd.org +Date: Tue Sep 19 12:10:30 2017 +0000 + + upstream commit + + Use explicit_bzero() instead of bzero() before free() to + prevent the compiler from optimizing away the bzero() call. OK djm@ + + Upstream-ID: cdc6197e64c9684c7250e23d60863ee1b53cef1d + +commit 5b8da1f53854c0923ec6e927e86709e4d72737b6 +Author: djm@openbsd.org +Date: Tue Sep 19 04:24:22 2017 +0000 + + upstream commit + + fix use-after-free in ~^Z escape handler path, introduced + in channels.c refactor; spotted by millert@ "makes sense" deraadt@ + + Upstream-ID: 8fa2cdc65c23ad6420c1e59444b0c955b0589b22 + +commit a3839d8d2b89ff1a80cadd4dd654336710de2c9e +Author: dtucker@openbsd.org +Date: Mon Sep 18 12:03:24 2017 +0000 + + upstream commit + + Prevent type mismatch warning in debug on platforms where + sig_atomic_t != int. ok djm@ + + Upstream-ID: 306e2375eb0364a4c68e48f091739bea4f4892ed + +commit 30484e5e5f0b63d2c6ba32c6b85f06b6c6fa55fc +Author: dtucker@openbsd.org +Date: Mon Sep 18 09:41:52 2017 +0000 + + upstream commit + + Add braces missing after channels refactor. ok markus@ + + Upstream-ID: 72ab325c84e010680dbc88f226e2aa96b11a3980 + +commit b79569190b9b76dfacc6d996faa482f16e8fc026 +Author: Damien Miller +Date: Tue Sep 19 12:29:23 2017 +1000 + + add freezero(3) replacement + + ok dtucker@ + +commit 161af8f5ec0961b10cc032efb5cc1b44ced5a92e +Author: Damien Miller +Date: Tue Sep 19 10:18:56 2017 +1000 + + move FORTIFY_SOURCE into hardening options group + + It's still on by default, but now it's possible to turn it off using + --without-hardening. This is useful since it's known to cause problems + with some -fsanitize options. ok dtucker@ + +commit 09eacf856e0fe1a6e3fe597ec8032b7046292914 +Author: bluhm@openbsd.org +Date: Wed Sep 13 14:58:26 2017 +0000 + + upstream commit + + Print SKIPPED if sudo and doas configuration is missing. + Prevents that running the regression test with wrong environment is reported + as failure. Keep the fatal there to avoid interfering with other setups for + portable ssh. OK dtucker@ + + Upstream-Regress-ID: f0dc60023caef496ded341ac5aade2a606fa234e + +commit cdede10899892f25f1ccdccd7a3fe5e5ef0aa49a +Author: dtucker@openbsd.org +Date: Mon Aug 7 03:52:55 2017 +0000 + + upstream commit + + Remove obsolete privsep=no fallback test. + + Upstream-Regress-ID: 7d6e1baa1678ac6be50c2a1555662eb1047638df + +commit ec218c105daa9f5b192f7aa890fdb2d4fdc4e9d8 +Author: dtucker@openbsd.org +Date: Mon Aug 7 00:53:51 2017 +0000 + + upstream commit + + Remove non-privsep test since disabling privsep is now + deprecated. + + Upstream-Regress-ID: 77ad3f3d8d52e87f514a80f285c6c1229b108ce8 + +commit 239c57d5bc2253e27e3e6ad7ac52ec8c377ee24e +Author: dtucker@openbsd.org +Date: Fri Jul 28 10:32:08 2017 +0000 + + upstream commit + + Don't call fatal from stop_sshd since it calls cleanup + which calls stop_sshd which will probably fail in the same way. Instead, + just bail. Differentiate between sshd dying without cleanup and not shutting + down. + + Upstream-Regress-ID: f97315f538618b349e2b0bea02d6b0c9196c6bc4 + +commit aea59a0d9f120f2a87c7f494a0d9c51eaa79b8ba +Author: djm@openbsd.org +Date: Thu Sep 14 04:32:21 2017 +0000 + + upstream commit + + Revert commitid: gJtIN6rRTS3CHy9b. + + ------------- + identify the case where SSHFP records are missing but other DNS RR + types are present and display a more useful error message for this + case; patch by Thordur Bjornsson; bz#2501; ok dtucker@ + ------------- + + This caused unexpected failures when VerifyHostKeyDNS=yes, SSHFP results + are missing but the user already has the key in known_hosts + + Spotted by dtucker@ + + Upstream-ID: 97e31742fddaf72046f6ffef091ec0d823299920 + +commit 871f1e4374420b07550041b329627c474abc3010 +Author: Damien Miller +Date: Tue Sep 12 18:01:35 2017 +1000 + + adapt portable to channels API changes + +commit 4ec0bb9f9ad7b4eb0af110fa8eddf8fa199e46bb +Author: djm@openbsd.org +Date: Tue Sep 12 07:55:48 2017 +0000 + + upstream commit + + unused variable + + Upstream-ID: 2f9ba09f2708993d35eac5aa71df910dcc52bac1 + +commit 9145a73ce2ba30c82bbf91d7205bfd112529449f +Author: djm@openbsd.org +Date: Tue Sep 12 07:32:04 2017 +0000 + + upstream commit + + fix tun/tap forwarding case in previous + + Upstream-ID: 43ebe37a930320e24bca6900dccc39857840bc53 + +commit 9f53229c2ac97dbc6f5a03657de08a1150a9ac7e +Author: djm@openbsd.org +Date: Tue Sep 12 06:35:31 2017 +0000 + + upstream commit + + Make remote channel ID a u_int + + Previously we tracked the remote channel IDs in an int, but this is + strictly incorrect: the wire protocol uses uint32 and there is nothing + in-principle stopping a SSH implementation from sending, say, 0xffff0000. + + In practice everyone numbers their channels sequentially, so this has + never been a problem. + + ok markus@ + + Upstream-ID: b9f4cd3dc53155b4a5c995c0adba7da760d03e73 + +commit dbee4119b502e3f8b6cd3282c69c537fd01d8e16 +Author: djm@openbsd.org +Date: Tue Sep 12 06:32:07 2017 +0000 + + upstream commit + + refactor channels.c + + Move static state to a "struct ssh_channels" that is allocated at + runtime and tracked as a member of struct ssh. + + Explicitly pass "struct ssh" to all channels functions. + + Replace use of the legacy packet APIs in channels.c. + + Rework sshd_config PermitOpen handling: previously the configuration + parser would call directly into the channels layer. After the refactor + this is not possible, as the channels structures are allocated at + connection time and aren't available when the configuration is parsed. + The server config parser now tracks PermitOpen itself and explicitly + configures the channels code later. + + ok markus@ + + Upstream-ID: 11828f161656b965cc306576422613614bea2d8f + +commit abd59663df37a42152e37980113ccaa405b9a282 +Author: djm@openbsd.org +Date: Thu Sep 7 23:48:09 2017 +0000 + + upstream commit + + typo in comment + + Upstream-ID: a93b1e6f30f1f9b854b5b964b9fd092d0c422c47 + +commit 149a8cd24ce9dd47c36f571738681df5f31a326c +Author: jmc@openbsd.org +Date: Mon Sep 4 06:34:43 2017 +0000 + + upstream commit + + tweak previous; + + Upstream-ID: bb8cc40b61b15f6a13d81da465ac5bfc65cbfc4b + +commit ec9d22cc251cc5acfe7b2bcef9cc7a1fe0e949d8 +Author: Damien Miller +Date: Fri Sep 8 12:44:13 2017 +1000 + + Fuzzer harnesses for sig verify and pubkey parsing + + These are some basic clang libfuzzer harnesses for signature + verification and public key parsing. Some assembly (metaphorical) + required. + +commit de35c382894964a896a63ecd5607d3a3b93af75d +Author: Damien Miller +Date: Fri Sep 8 12:38:31 2017 +1000 + + Give configure ability to set CFLAGS/LDFLAGS later + + Some CFLAGS/LDFLAGS may disrupt the configure script's operation, + in particular santization and fuzzer options that break assumptions + about memory and file descriptor dispositions. + + This adds two flags to configure --with-cflags-after and + --with-ldflags-after that allow specifying additional compiler and + linker options that are added to the resultant Makefiles but not + used in the configure run itself. + + E.g. + + env CC=clang-3.9 ./configure \ + --with-cflags-after=-fsantize=address \ + --with-ldflags-after="-g -fsanitize=address" + +commit 22376d27a349f62c502fec3396dfe0fdcb2a40b7 +Author: djm@openbsd.org +Date: Sun Sep 3 23:33:13 2017 +0000 + + upstream commit + + Expand ssh_config's StrictModes option with two new + settings: + + StrictModes=accept-new will automatically accept hitherto-unseen keys + but will refuse connections for changed or invalid hostkeys. + + StrictModes=off is the same as StrictModes=no + + Motivation: + + StrictModes=no combines two behaviours for host key processing: + automatically learning new hostkeys and continuing to connect to hosts + with invalid/changed hostkeys. The latter behaviour is quite dangerous + since it removes most of the protections the SSH protocol is supposed to + provide. + + Quite a few users want to automatically learn hostkeys however, so + this makes that feature available with less danger. + + At some point in the future, StrictModes=no will change to be a synonym + for accept-new, with its current behaviour remaining available via + StrictModes=off. + + bz#2400, suggested by Michael Samuel; ok markus + + Upstream-ID: 0f55502bf75fc93a74fb9853264a8276b9680b64 + +commit ff3c42384033514e248ba5d7376aa033f4a2b99a +Author: jmc@openbsd.org +Date: Fri Sep 1 15:41:26 2017 +0000 + + upstream commit + + remove blank line; + + Upstream-ID: 2f46b51a0ddb3730020791719e94d3e418e9f423 + +commit b828605d51f57851316d7ba402b4ae06cf37c55d +Author: djm@openbsd.org +Date: Fri Sep 1 05:53:56 2017 +0000 + + upstream commit + + identify the case where SSHFP records are missing but + other DNS RR types are present and display a more useful error message for + this case; patch by Thordur Bjornsson; bz#2501; ok dtucker@ + + Upstream-ID: 8f7a5a8344f684823d8317a9708b63e75be2c244 + +commit 8042bad97e2789a50e8f742c3bcd665ebf0add32 +Author: djm@openbsd.org +Date: Fri Sep 1 05:50:48 2017 +0000 + + upstream commit + + document available AuthenticationMethods; bz#2453 ok + dtucker@ + + Upstream-ID: 2c70576f237bb699aff59889dbf2acba4276d3d0 + +commit 71e5a536ec815d542b199f2ae6d646c0db9f1b58 +Author: djm@openbsd.org +Date: Wed Aug 30 03:59:08 2017 +0000 + + upstream commit + + pass packet state down to some of the channels function + (more to come...); ok markus@ + + Upstream-ID: d8ce7a94f4059d7ac1e01fb0eb01de0c4b36c81b + +commit 6227fe5b362239c872b91bbdee4bf63cf85aebc5 +Author: jmc@openbsd.org +Date: Tue Aug 29 13:05:58 2017 +0000 + + upstream commit + + sort options; + + Upstream-ID: cf21d68cf54e81968bca629aaeddc87f0c684f3c + +commit 530591a5795a02d01c78877d58604723918aac87 +Author: dlg@openbsd.org +Date: Tue Aug 29 09:42:29 2017 +0000 + + upstream commit + + add a -q option to ssh-add to make it quiet on success. + + if you want to silence ssh-add without this you generally redirect + the output to /dev/null, but that can hide error output which you + should see. + + ok djm@ + + Upstream-ID: 2f31b9b13f99dcf587e9a8ba443458e6c0d8997c + +commit a54eb27dd64b5eca3ba94e15cec3535124bd5029 +Author: dtucker@openbsd.org +Date: Sun Aug 27 00:38:41 2017 +0000 + + upstream commit + + Increase the buffer sizes for user prompts to ensure that + they won't be truncated by snprintf. Based on patch from cjwatson at + debian.org via bz#2768, ok djm@ + + Upstream-ID: 6ffacf1abec8f40b469de5b94bfb29997d96af3e + +commit dd9d9b3381a4597b840d480b043823112039327e +Author: Darren Tucker +Date: Mon Aug 28 16:48:27 2017 +1000 + + Switch Capsicum header to sys/capsicum.h. + + FreeBSD's was renamed to in 2014 to + avoid future conflicts with POSIX capabilities (the last release that + didn't have it was 9.3) so switch to that. Patch from des at des.no. + +commit f5e917ab105af5dd6429348d9bc463e52b263f92 +Author: Darren Tucker +Date: Sun Aug 27 08:55:40 2017 +1000 + + Add missing includes for bsd-err.c. + + Patch from cjwatson at debian.org via bz#2767. + +commit 878e029797cfc9754771d6f6ea17f8c89e11d225 +Author: Damien Miller +Date: Fri Aug 25 13:25:01 2017 +1000 + + Split platform_sys_dir_uid into its own file + + platform.o is too heavy for libssh.a use; it calls into the server on + many platforms. Move just the function needed by misc.c into its own + file. + +commit 07949bfe9133234eddd01715592aa0dde67745f0 +Author: Damien Miller +Date: Wed Aug 23 20:13:18 2017 +1000 + + misc.c needs functions from platform.c now + +commit b074c3c3f820000a21953441cea7699c4b17d72f +Author: djm@openbsd.org +Date: Fri Aug 18 05:48:04 2017 +0000 + + upstream commit + + add a "quiet" flag to exited_cleanly() that supresses + errors about exit status (failure due to signal is still reported) + + Upstream-ID: db85c39c3aa08e6ff67fc1fb4ffa89f807a9d2f0 + +commit de4ae07f12dabf8815ecede54235fce5d22e3f63 +Author: djm@openbsd.org +Date: Fri Aug 18 05:36:45 2017 +0000 + + upstream commit + + Move several subprocess-related functions from various + locations to misc.c. Extend subprocess() to offer a little more control over + stdio disposition. + + feedback & ok dtucker@ + + Upstream-ID: 3573dd7109d13ef9bd3bed93a3deb170fbfce049 + +commit 643c2ad82910691b2240551ea8b14472f60b5078 +Author: djm@openbsd.org +Date: Sat Aug 12 06:46:01 2017 +0000 + + upstream commit + + make "--" before the hostname terminate command-line + option processing completely; previous behaviour would not prevent further + options appearing after the hostname (ssh has a supported options after the + hostname for >20 years, so that's too late to change). + + ok deraadt@ + + Upstream-ID: ef5ee50571b98ad94dcdf8282204e877ec88ad89 + +commit 0f3455356bc284d7c6f4d3c1614d31161bd5dcc2 +Author: djm@openbsd.org +Date: Sat Aug 12 06:42:52 2017 +0000 + + upstream commit + + Switch from aes256-cbc to aes256-ctr for encrypting + new-style private keys. The latter having the advantage of being supported + for no-OpenSSL builds; bz#2754 ok markus@ + + Upstream-ID: 54179a2afd28f93470471030567ac40431e56909 + +commit c4972d0a9bd6f898462906b4827e09b7caea2d9b +Author: djm@openbsd.org +Date: Fri Aug 11 04:47:12 2017 +0000 + + upstream commit + + refuse to a private keys when its corresponding .pub key + does not match. bz#2737 ok dtucker@ + + Upstream-ID: 54ff5e2db00037f9db8d61690f26ef8f16e0d913 + +commit 4b3ecbb663c919132dddb3758e17a23089413519 +Author: djm@openbsd.org +Date: Fri Aug 11 04:41:08 2017 +0000 + + upstream commit + + don't print verbose error message when ssh disconnects + under sftp; bz#2750; ok dtucker@ + + Upstream-ID: 6d83708aed77b933c47cf155a87dc753ec01f370 + +commit 42a8f8bc288ef8cac504c5c73f09ed610bc74a34 +Author: dtucker@openbsd.org +Date: Fri Aug 11 04:16:35 2017 +0000 + + upstream commit + + Tweak previous keepalive commit: if last_time + keepalive + <= now instead of just "<" so client_alive_check will fire if the select + happens to return on exact second of the timeout. ok djm@ + + Upstream-ID: e02756bd6038d11bb8522bfd75a4761c3a684fcc + +commit b60ff20051ef96dfb207b6bfa45c0ad6c34a542a +Author: dtucker@openbsd.org +Date: Fri Aug 11 03:58:36 2017 +0000 + + upstream commit + + Keep track of the last time we actually heard from the + client and use this to also schedule a client_alive_check(). Prevents + activity on a forwarded port from indefinitely preventing the select timeout + so that client_alive_check() will eventually (although not optimally) be + called. + + Analysis by willchan at google com via bz#2756, feedback & ok djm@ + + Upstream-ID: c08721e0bbda55c6d18e2760f3fe1b17fb71169e + +commit 94bc1e7ffba3cbdea8c7dcdab8376bf29283128f +Author: Damien Miller +Date: Fri Jul 28 14:50:59 2017 +1000 + + Expose list of completed auth methods to PAM + + bz#2408; ok dtucker@ + +commit c78e6eec78c88acf8d51db90ae05a3e39458603d +Author: Damien Miller +Date: Fri Jul 21 14:38:16 2017 +1000 + + fix problems in tunnel forwarding portability code + + This fixes a few problems in the tun forwarding code, mostly to do + with host/network byte order confusion. + + Based on a report and patch by stepe AT centaurus.uberspace.de; + bz#2735; ok dtucker@ + +commit 2985d4062ebf4204bbd373456a810d558698f9f5 +Author: dtucker@openbsd.org +Date: Tue Jul 25 09:22:25 2017 +0000 + + upstream commit + + Make WinSCP patterns for SSH_OLD_DHGEX more specific to + exclude WinSCP 5.10.x and up. bz#2748, from martin at winscp.net, ok djm@ + + Upstream-ID: 6fd7c32e99af3952db007aa180e73142ddbc741a + +commit 9f0e44e1a0439ff4646495d5735baa61138930a9 +Author: djm@openbsd.org +Date: Mon Jul 24 04:34:28 2017 +0000 + + upstream commit + + g/c unused variable; make a little more portable + + Upstream-ID: 3f5980481551cb823c6fb2858900f93fa9217dea + +commit 51676ec61491ec6d7cbd06082034e29b377b3bf6 +Author: djm@openbsd.org +Date: Sun Jul 23 23:37:02 2017 +0000 + + upstream commit + + Allow IPQoS=none in ssh/sshd to not set an explicit + ToS/DSCP value and just use the operating system default; ok dtucker@ + + Upstream-ID: 77906ff8c7b660b02ba7cb1e47b17d66f54f1f7e + +commit 6c1fbd5a50d8d2415f06c920dd3b1279b741072d +Author: Damien Miller +Date: Fri Jul 21 14:24:26 2017 +1000 + + mention libedit + +commit dc2bd308768386b02c7337120203ca477e67ba62 +Author: markus@openbsd.org +Date: Wed Jul 19 08:30:41 2017 +0000 + + upstream commit + + fix support for unknown key types; ok djm@ + + Upstream-ID: 53fb29394ed04d616d65b3748dee5aa06b07ab48 + +commit fd0e8fa5f89d21290b1fb5f9d110ca4f113d81d9 +Author: djm@openbsd.org +Date: Wed Jul 19 01:15:02 2017 +0000 + + upstream commit + + switch from select() to poll() for the ssh-agent + mainloop; ok markus + + Upstream-ID: 4a94888ee67b3fd948fd10693973beb12f802448 + +commit b1e72df2b813ecc15bd0152167bf4af5f91c36d3 +Author: dtucker@openbsd.org +Date: Fri Jul 14 03:18:21 2017 +0000 + + upstream commit + + Make ""Killed by signal 1" LogLevel verbose so it's not + shown at the default level. Prevents it from appearing during ssh -J and + equivalent ProxyCommand configs. bz#1906, bz#2744, feedback&ok markus@ + + Upstream-ID: debfaa7e859b272246c2f2633335d288d2e2ae28 + +commit 1f3d202770a08ee6752ed2a234b7ca6f180eb498 +Author: jmc@openbsd.org +Date: Thu Jul 13 19:16:33 2017 +0000 + + upstream commit + + man pages with pseudo synopses which list filenames end + up creating very ugly output in man -k; after some discussion with ingo, we + feel the simplest fix is to remove such SYNOPSIS sections: the info is hardly + helpful at page top, is contained already in FILES, and there are + sufficiently few that just zapping them is simple; + + ok schwarze, who also helpfully ran things through a build to check + output; + + Upstream-ID: 3e211b99457e2f4c925c5927d608e6f97431336c + +commit 7f13a4827fb28957161de4249bd6d71954f1f2ed +Author: espie@openbsd.org +Date: Mon Jul 10 14:09:59 2017 +0000 + + upstream commit + + zap redundant Makefile variables. okay djm@ + + Upstream-ID: e39b3902fe1d6c4a7ba6a3c58e072219f3c1e604 + +commit dc44dd3a9e2c9795394e6a7e1e71c929cbc70ce0 +Author: jmc@openbsd.org +Date: Sat Jul 8 18:32:54 2017 +0000 + + upstream commit + + slightly rework previous, to avoid an article issue; + + Upstream-ID: 15a315f0460ddd3d4e2ade1f16d6c640a8c41b30 + +commit 853edbe057a84ebd0024c8003e4da21bf2b469f7 +Author: djm@openbsd.org +Date: Fri Jul 7 03:53:12 2017 +0000 + + upstream commit + + When generating all hostkeys (ssh-keygen -A), clobber + existing keys if they exist but are zero length. zero-length keys could + previously be made if ssh-keygen failed part way through generating them, so + avoid that case too. bz#2561 reported by Krzysztof Cieplucha; ok dtucker@ + + Upstream-ID: f662201c28ab8e1f086b5d43c59cddab5ade4044 + +commit 43616876ba68a2ffaece6a6c792def4b039f2d6e +Author: djm@openbsd.org +Date: Sat Jul 1 22:55:44 2017 +0000 + + upstream commit + + actually remove these files + + Upstream-ID: 1bd41cba06a7752de4df304305a8153ebfb6b0ac + +commit 83fa3a044891887369ce8b487ce88d713a04df48 +Author: djm@openbsd.org +Date: Sat Jul 1 13:50:45 2017 +0000 + + upstream commit + + remove post-SSHv1 removal dead code from rsa.c and merge + the remaining bit that it still used into ssh-rsa.c; ok markus + + Upstream-ID: ac8a048d24dcd89594b0052ea5e3404b473bfa2f + +commit 738c73dca2c99ee78c531b4cbeefc2008fe438f0 +Author: Damien Miller +Date: Fri Jul 14 14:26:36 2017 +1000 + + make explicit_bzero/memset safe for sz=0 + +commit 8433d51e067e0829f5521c0c646b6fd3fe17e732 +Author: Tim Rice +Date: Tue Jul 11 18:47:56 2017 -0700 + + modified: configure.ac + UnixWare needs BROKEN_TCGETATTR_ICANON like Solaris + Analysis by Robbie Zhang + +commit ff3507aea9c7d30cd098e7801e156c68faff7cc7 +Author: Damien Miller +Date: Fri Jul 7 11:21:27 2017 +1000 + + typo + +commit d79bceb9311a9c137d268f5bc481705db4151810 +Author: dtucker@openbsd.org +Date: Fri Jun 30 04:17:23 2017 +0000 + + upstream commit + + Only call close once in confree(). ssh_packet_close will + close the FD so only explicitly close non-SSH channels. bz#2734, from + bagajjal at microsoft.com, ok djm@ + + Upstream-ID: a81ce0c8b023527167739fccf1732b154718ab02 + +commit 197dc9728f062e23ce374f44c95a2b5f9ffa4075 +Author: Darren Tucker +Date: Thu Jun 29 15:40:25 2017 +1000 + + Update link for my patches. + +commit a98339edbc1fc21342a390f345179a9c3031bef7 +Author: djm@openbsd.org +Date: Wed Jun 28 01:09:22 2017 +0000 + + upstream commit + + Allow ssh-keygen to use a key held in ssh-agent as a CA when + signing certificates. bz#2377 ok markus + + Upstream-ID: fb42e920b592edcbb5b50465739a867c09329c8f + +commit c9cdef35524bd59007e17d5bd2502dade69e2dfb +Author: djm@openbsd.org +Date: Sat Jun 24 06:35:24 2017 +0000 + + upstream commit + + regress test for ExposeAuthInfo + + Upstream-Regress-ID: 190e5b6866376f4061c411ab157ca4d4e7ae86fd + +commit f17ee61cad25d210edab69d04ed447ad55fe80c1 +Author: djm@openbsd.org +Date: Sat Jun 24 07:08:57 2017 +0000 + + upstream commit + + correct env var name + + Upstream-ID: 721e761c2b1d6a4dcf700179f16fd53a1dadb313 + +commit 40962198e3b132cecdb32e9350acd4294e6a1082 +Author: jmc@openbsd.org +Date: Sat Jun 24 06:57:04 2017 +0000 + + upstream commit + + spelling; + + Upstream-ID: 606f933c8e2d0be902ea663946bc15e3eee40b25 + +commit 33f86265d7e8a0e88d3a81745d746efbdd397370 +Author: djm@openbsd.org +Date: Sat Jun 24 06:38:11 2017 +0000 + + upstream commit + + don't pass pointer to struct sshcipher between privsep + processes, just redo the lookup in each using the already-passed cipher name. + bz#2704 based on patch from Brooks Davis; ok markus dtucker + + Upstream-ID: 2eab434c09bdf549dafd7da3e32a0d2d540adbe0 + +commit 8f574959272ac7fe9239c4f5d10fd913f8920ab0 +Author: djm@openbsd.org +Date: Sat Jun 24 06:34:38 2017 +0000 + + upstream commit + + refactor authentication logging + + optionally record successful auth methods and public credentials + used in a file accessible to user sessions + + feedback and ok markus@ + + Upstream-ID: 090b93036967015717b9a54fd0467875ae9d32fb + +commit e2004d4bb7eb01c663dd3a3e7eb224f1ccdc9bba +Author: jmc@openbsd.org +Date: Sat Jun 24 06:28:50 2017 +0000 + + upstream commit + + word fix; + + Upstream-ID: 8539bdaf2366603a34a9b2f034527ca13bb795c5 + +commit 4540428cd0adf039bcf5a8a27f2d5cdf09191513 +Author: djm@openbsd.org +Date: Sat Jun 24 05:37:44 2017 +0000 + + upstream commit + + switch sshconnect.c from (slightly abused) select() to + poll(); ok deraadt@ a while back + + Upstream-ID: efc1937fc591bbe70ac9e9542bb984f354c8c175 + +commit 6f8ca3b92540fa1a9b91670edc98d15448e3d765 +Author: djm@openbsd.org +Date: Sat Jun 24 05:35:05 2017 +0000 + + upstream commit + + use HostKeyAlias if specified instead of hostname for + matching host certificate principal names; bz#2728; ok dtucker@ + + Upstream-ID: dc2e11c83ae9201bbe74872a0c895ae9725536dd + +commit 8904ffce057b80a7472955f1ec00d7d5c250076c +Author: djm@openbsd.org +Date: Sat Jun 24 05:24:11 2017 +0000 + + upstream commit + + no need to call log_init to reinitialise logged PID in + child sessions, since we haven't called openlog() in log_init() since 1999; + ok markus@ + + Upstream-ID: 0906e4002af5d83d3d544df75e1187c932a3cf2e + +commit e238645d789cd7eb47541b66aea2a887ea122c9b +Author: mestre@openbsd.org +Date: Fri Jun 23 07:24:48 2017 +0000 + + upstream commit + + When using the escape sequence &~ the code path is + client_loop() -> client_simple_escape_filter() -> process_escapes() -> fork() + and the pledge for this path lacks the proc promise and therefore aborts the + process. The solution is to just add proc the promise to this specific + pledge. + + Reported by Gregoire Jadi gjadi ! omecha.info + Insight with tb@, OK jca@ + + Upstream-ID: 63c05e30c28209519f476023b65b0b1b0387a05b + +commit 5abbb31c4e7a6caa922cc1cbb14e87a77f9d19d3 +Author: dtucker@openbsd.org +Date: Fri Jun 23 03:30:42 2017 +0000 + + upstream commit + + Import regenerated moduli. + + Upstream-ID: b25bf747544265b39af74fe0716dc8d9f5b63b95 + +commit 849c5468b6d9b4365784c5dd88e3f1fb568ba38f +Author: dtucker@openbsd.org +Date: Fri Jun 23 03:25:53 2017 +0000 + + upstream commit + + Run the screen twice so we end up with more candidate + groups. ok djm@ + + Upstream-ID: b92c93266d8234d493857bb822260dacf4366157 + +commit 4626e39c7053c6486c1c8b708ec757e464623f5f +Author: dtucker@openbsd.org +Date: Wed Jun 14 00:31:38 2017 +0000 + + upstream commit + + Add user@host prefix to client's "Permisison denied" + messages, useful in particular when using "stacked" connections where it's + not clear which host is denying. bz#2720, ok djm@ markus@ + + Upstream-ID: de88e1e9dcb050c98e85377482d1287a9fe0d2be + +commit c948030d54911b2d3cddb96a7a8e9269e15d11cd +Author: djm@openbsd.org +Date: Tue Jun 13 12:13:59 2017 +0000 + + upstream commit + + Do not require that unknown EXT_INFO extension values not + contain \0 characters. This would cause fatal connection errors if an + implementation sent e.g. string-encoded sub-values inside a value. + + Reported by Denis Bider; ok markus@ + + Upstream-ID: 030e10fdc605563c040244c4b4f1d8ae75811a5c + +commit 6026f48dfca78b713e4a7f681ffa42a0afe0929e +Author: djm@openbsd.org +Date: Tue Jun 13 11:22:15 2017 +0000 + + upstream commit + + missing prototype. + + Upstream-ID: f443d2be9910fd2165a0667956d03343c46f66c9 + +commit bcd1485075aa72ba9418003f5cc27af2b049c51b +Author: Damien Miller +Date: Sat Jun 10 23:41:25 2017 +1000 + + portability for sftp globbed ls sort by mtime + + Include replacement timespeccmp() for systems that lack it. + Support time_t struct stat->st_mtime in addition to + timespec stat->st_mtim, as well as unsorted fallback. + +commit 072e172f1d302d2a2c6043ecbfb4004406717b96 +Author: djm@openbsd.org +Date: Sat Jun 10 06:36:46 2017 +0000 + + upstream commit + + print '?' instead of incorrect link count (that the + protocol doesn't provide) for remote listings. bz#2710 ok dtucker@ + + Upstream-ID: c611f98a66302cea452ef10f13fff8cf0385242e + +commit 72be5b2f8e7dc37235e8c4b8d0bc7b5ee1301505 +Author: djm@openbsd.org +Date: Sat Jun 10 06:33:34 2017 +0000 + + upstream commit + + implement sorting for globbed ls; bz#2649 ok dtucker@ + + Upstream-ID: ed3110f351cc9703411bf847ba864041fb7216a8 + +commit 5b2f34a74aa6a524cd57e856b23e1b7b25007721 +Author: djm@openbsd.org +Date: Fri Jun 9 06:47:13 2017 +0000 + + upstream commit + + return failure rather than fatal() for more cases during + mux negotiations. Causes the session to fall back to a non-mux connection if + they occur. bz#2707 ok dtucker@ + + Upstream-ID: d2a7892f464d434e1f615334a1c9d0cdb83b29ab + +commit 7f5637c4a67a49ef256cb4eedf14e8590ac30976 +Author: djm@openbsd.org +Date: Fri Jun 9 06:43:01 2017 +0000 + + upstream commit + + in description of public key authentication, mention that + the server will send debug messages to the client for some error conditions + after authentication has completed. bz#2709 ok dtucker + + Upstream-ID: 750127dbd58c5a2672c2d28bc35fe221fcc8d1dd + +commit 2076e4adb986512ce8c415dd194fd4e52136c4b4 +Author: djm@openbsd.org +Date: Fri Jun 9 06:40:24 2017 +0000 + + upstream commit + + better translate libcrypto errors by looking deeper in + the accursed error stack for codes that indicate the wrong passphrase was + supplied for a PEM key. bz#2699 ok dtucker@ + + Upstream-ID: 4da4286326d570f4f0489459bb71f6297e54b681 + +commit ad0531614cbe8ec424af3c0fa90c34a8e1ebee4c +Author: dtucker@openbsd.org +Date: Fri Jun 9 04:40:04 2017 +0000 + + upstream commit + + Add comments referring to the relevant RFC sections for + rekeying behaviour. + + Upstream-ID: 6fc8e82485757a27633f9175ad00468f49a07d40 + +commit ce9134260b9b1247e2385a1afed00c26112ba479 +Author: Damien Miller +Date: Fri Jun 9 14:43:47 2017 +1000 + + drop two more privileges in the Solaris sandbox + + Drop PRIV_DAX_ACCESS and PRIV_SYS_IB_INFO. + Patch from huieying.lee AT oracle.com via bz#2723 + +commit e0f609c8a2ab940374689ab8c854199c3c285a76 +Author: Darren Tucker +Date: Fri Jun 9 13:36:29 2017 +1000 + + Wrap stdint.h include in #ifdef. + +commit 1de5e47a85850526a4fdaf77185134046c050f75 +Author: djm@openbsd.org +Date: Wed Jun 7 01:48:15 2017 +0000 + + upstream commit + + unbreak after sshv1 purge + + Upstream-Regress-ID: 8ea01a92d5f571b9fba88c1463a4254a7552d51b + +commit 550c053168123fcc0791f9952abad684704b5760 +Author: dtucker@openbsd.org +Date: Tue Jun 6 09:12:17 2017 +0000 + + upstream commit + + Fix compression output stats broken in rev 1.201. Patch + originally by Russell Coker via Debian bug #797964 and Christoph Biedl. ok + djm@ + + Upstream-ID: 83a1903b95ec2e4ed100703debb4b4a313b01016 + +commit 55d06c6e72a9abf1c06a7ac2749ba733134a1f39 +Author: djm@openbsd.org +Date: Fri Jun 2 06:06:10 2017 +0000 + + upstream commit + + rationalise the long list of manual CDIAGFLAGS that we + add; most of these were redundant to -Wall -Wextra + + Upstream-ID: ea80f445e819719ccdcb237022cacfac990fdc5c + +commit 1527d9f61e6d50f6c2b4a3fa5b45829034b1b0b1 +Author: djm@openbsd.org +Date: Thu Jun 1 06:59:21 2017 +0000 + + upstream commit + + no need to bzero allocated space now that we use use + recallocarray; ok deraadt@ + + Upstream-ID: 53333c62ccf97de60b8cb570608c1ba5ca5803c8 + +commit cc812baf39b93d5355565da98648d8c31f955990 +Author: djm@openbsd.org +Date: Thu Jun 1 06:58:25 2017 +0000 + + upstream commit + + unconditionally zero init size of buffer; ok markus@ + deraadt@ + + Upstream-ID: 218963e846d8f26763ba25afe79294547b99da29 + +commit 65eb8fae0d7ba45ef4483a3cf0ae7fd0dbc7c226 +Author: Damien Miller +Date: Thu Jun 1 16:25:09 2017 +1000 + + avoid compiler warning + +commit 2d75d74272dc2a0521fce13cfe6388800c9a2406 +Author: djm@openbsd.org +Date: Thu Jun 1 06:16:43 2017 +0000 + + upstream commit + + some warnings spotted by clang; ok markus@ + + Upstream-ID: 24381d68ca249c5cee4388ceb0f383fa5b43991b + +commit 151c6e433a5f5af761c78de87d7b5d30a453cf5e +Author: Damien Miller +Date: Thu Jun 1 15:25:13 2017 +1000 + + add recallocarray replacement and dependency + + recallocarray() needs getpagesize() so add a tiny replacement for that. + +commit 01e6f78924da308447e71e9a32c8a6104ef4e888 +Author: Damien Miller +Date: Thu Jun 1 15:16:24 2017 +1000 + + add *.0 manpage droppings + +commit 4b2e2d3fd9dccff357e1e26ce9a5f2e103837a36 +Author: djm@openbsd.org +Date: Thu Jun 1 04:51:58 2017 +0000 + + upstream commit + + fix casts re constness + + Upstream-ID: e38f2bac162b37dbaf784d349c8327a6626fa266 + +commit 75b8af8de805c0694b37fcf80ce82783b2acc86f +Author: markus@openbsd.org +Date: Wed May 31 10:54:00 2017 +0000 + + upstream commit + + make sure we don't pass a NULL string to vfprintf + (triggered by the principals-command regress test); ok bluhm + + Upstream-ID: eb49854f274ab37a0b57056a6af379a0b7111990 + +commit 84008608c9ee944d9f72f5100f31ccff743b10f2 +Author: markus@openbsd.org +Date: Wed May 31 10:04:29 2017 +0000 + + upstream commit + + use SO_ZEROIZE for privsep communication (if available) + + Upstream-ID: abcbb6d2f8039fc4367a6a78096e5d5c39de4a62 + +commit 9e509d4ec97cb3d71696f1a2f1fdad254cbbce11 +Author: deraadt@openbsd.org +Date: Wed May 31 09:15:42 2017 +0000 + + upstream commit + + Switch to recallocarray() for a few operations. Both + growth and shrinkage are handled safely, and there also is no need for + preallocation dances. Future changes in this area will be less error prone. + Review and one bug found by markus + + Upstream-ID: 822d664d6a5a1d10eccb23acdd53578a679d5065 + +commit dc5dc45662773c0f7745c29cf77ae2d52723e55e +Author: deraadt@openbsd.org +Date: Wed May 31 08:58:52 2017 +0000 + + upstream commit + + These shutdown() SHUT_RDWR are not needed before close() + ok djm markus claudio + + Upstream-ID: 36f13ae4ba10f5618cb9347933101eb4a98dbcb5 + +commit 1e0cdf8efb745d0d1116e1aa22bdc99ee731695e +Author: markus@openbsd.org +Date: Wed May 31 08:09:45 2017 +0000 + + upstream commit + + clear session keys from memory; ok djm@ + + Upstream-ID: ecd178819868975affd5fd6637458b7c712b6a0f + +commit 92e9fe633130376a95dd533df6e5e6a578c1e6b8 +Author: markus@openbsd.org +Date: Wed May 31 07:00:13 2017 +0000 + + upstream commit + + remove now obsolete ctx from ssh_dispatch_run; ok djm@ + + Upstream-ID: 9870aabf7f4d71660c31fda91b942b19a8e68d29 + +commit 17ad5b346043c5bbc5befa864d0dbeb76be39390 +Author: markus@openbsd.org +Date: Wed May 31 05:34:14 2017 +0000 + + upstream commit + + use the ssh_dispatch_run_fatal variant + + Upstream-ID: 28c5b364e37c755d1b22652b8cd6735a05c625d8 + +commit 39896b777320a6574dd06707aebac5fb98e666da +Author: djm@openbsd.org +Date: Wed May 31 05:08:46 2017 +0000 + + upstream commit + + another ctx => ssh conversion (in GSSAPI code) + + Upstream-ID: 4d6574c3948075c60608d8e045af42fe5b5d8ae0 + +commit 6116bd4ed354a71a733c8fd0f0467ce612f12911 +Author: Damien Miller +Date: Wed May 31 14:56:07 2017 +1000 + + fix conversion of kexc25519s.c to struct ssh too + + git cvsimport missed this commit for some reason + +commit d40dbdc85b6fb2fd78485ba02225511b8cbf20d7 +Author: djm@openbsd.org +Date: Wed May 31 04:29:44 2017 +0000 + + upstream commit + + spell out that custom options/extensions should follow the + usual SSH naming rules, e.g. "extension@example.com" + + Upstream-ID: ab326666d2fad40769ec96b5a6de4015ffd97b8d + +commit 2a108277f976e8d0955c8b29d1dfde04dcbb3d5b +Author: djm@openbsd.org +Date: Wed May 31 04:17:12 2017 +0000 + + upstream commit + + one more void *ctx => struct ssh *ssh conversion + + Upstream-ID: d299d043471c10214cf52c03daa10f1c232759e2 + +commit c04e979503e97f52b750d3b98caa6fe004ab2ab9 +Author: djm@openbsd.org +Date: Wed May 31 00:43:04 2017 +0000 + + upstream commit + + fix possible OOB strlen() in SOCKS4A hostname parsing; + ok markus@ + + Upstream-ID: c67297cbeb0e5a19d81752aa18ec44d31270cd11 + +commit a3bb250c93bfe556838c46ed965066afce61cffa +Author: jmc@openbsd.org +Date: Tue May 30 19:38:17 2017 +0000 + + upstream commit + + tweak previous; + + Upstream-ID: 66987651046c42d142f7318c9695fb81a6d14031 + +commit 1112b534a6a7a07190e497e6bf86b0d5c5fb02dc +Author: bluhm@openbsd.org +Date: Tue May 30 18:58:37 2017 +0000 + + upstream commit + + Add RemoteCommand option to specify a command in the + ssh config file instead of giving it on the client's command line. This + command will be executed on the remote host. The feature allows to automate + tasks using ssh config. OK markus@ + + Upstream-ID: 5d982fc17adea373a9c68cae1021ce0a0904a5ee + +commit eb272ea4099fd6157846f15c129ac5727933aa69 +Author: markus@openbsd.org +Date: Tue May 30 14:29:59 2017 +0000 + + upstream commit + + switch auth2 to ssh_dispatch API; ok djm@ + + Upstream-ID: a752ca19e2782900dd83060b5c6344008106215f + +commit 5a146bbd4fdf5c571f9fb438e5210d28cead76d9 +Author: markus@openbsd.org +Date: Tue May 30 14:27:22 2017 +0000 + + upstream commit + + switch auth2-none.c to modern APIs; ok djm@ + + Upstream-ID: 07252b58e064d332214bcabbeae8e08c44b2001b + +commit 60306b2d2f029f91927c6aa7c8e08068519a0fa2 +Author: markus@openbsd.org +Date: Tue May 30 14:26:49 2017 +0000 + + upstream commit + + switch auth2-passwd.c to modern APIs; ok djm@ + + Upstream-ID: cba0a8b72b4f97adfb7e3b3fd2f8ba3159981fc7 + +commit eb76698b91338bd798c978d4db2d6af624d185e4 +Author: markus@openbsd.org +Date: Tue May 30 14:25:42 2017 +0000 + + upstream commit + + switch auth2-hostbased.c to modern APIs; ok djm@ + + Upstream-ID: 146af25c36daeeb83d5dbbb8ca52b5d25de88f4e + +commit 2ae666a8fc20b3b871b2f1b90ad65cc027336ccd +Author: markus@openbsd.org +Date: Tue May 30 14:23:52 2017 +0000 + + upstream commit + + protocol handlers all get struct ssh passed; ok djm@ + + Upstream-ID: 0ca9ea2a5d01a6d2ded94c5024456a930c5bfb5d + +commit 94583beb24a6c5fd19cedb9104ab2d2d5cd052b6 +Author: markus@openbsd.org +Date: Tue May 30 14:19:15 2017 +0000 + + upstream commit + + ssh: pass struct ssh to auth functions, too; ok djm@ + + Upstream-ID: d13c509cc782f8f19728fbea47ac7cf36f6e85dd + +commit 5f4082d886c6173b9e90b9768c9a38a3bfd92c2b +Author: markus@openbsd.org +Date: Tue May 30 14:18:15 2017 +0000 + + upstream commit + + sshd: pass struct ssh to auth functions; ok djm@ + + Upstream-ID: b00a80c3460884ebcdd14ef550154c761aebe488 + +commit 7da5df11ac788bc1133d8d598d298e33500524cc +Author: markus@openbsd.org +Date: Tue May 30 14:16:41 2017 +0000 + + upstream commit + + remove unused wrapper functions from key.[ch]; ok djm@ + + Upstream-ID: ea0f4016666a6817fc11f439dd4be06bab69707e + +commit ff7371afd08ac0bbd957d90451d4dcd0da087ef5 +Author: markus@openbsd.org +Date: Tue May 30 14:15:17 2017 +0000 + + upstream commit + + sshkey_new() might return NULL (pkcs#11 code only); ok + djm@ + + Upstream-ID: de9f2ad4a42c0b430caaa7d08dea7bac943075dd + +commit beb965bbc5a984fa69fb1e2b45ebe766ae09d1ef +Author: markus@openbsd.org +Date: Tue May 30 14:13:40 2017 +0000 + + upstream commit + + switch sshconnect.c to modern APIs; ok djm@ + + Upstream-ID: 27be17f84b950d5e139b7a9b281aa487187945ad + +commit 00ed75c92d1f95fe50032835106c368fa22f0f02 +Author: markus@openbsd.org +Date: Tue May 30 14:10:53 2017 +0000 + + upstream commit + + switch auth2-pubkey.c to modern APIs; with & ok djm@ + + Upstream-ID: 8f08d4316eb1b0c4ffe4a206c05cdd45ed1daf07 + +commit 54d90ace1d3535b44d92a8611952dc109a74a031 +Author: markus@openbsd.org +Date: Tue May 30 08:52:19 2017 +0000 + + upstream commit + + switch from Key typedef with struct sshkey; ok djm@ + + Upstream-ID: 3067d33e04efbe5131ce8f70668c47a58e5b7a1f + +commit c221219b1fbee47028dcaf66613f4f8d6b7640e9 +Author: markus@openbsd.org +Date: Tue May 30 08:49:58 2017 +0000 + + upstream commit + + remove ssh1 references; ok djm@ + + Upstream-ID: fc23b7578e7b0a8daaec72946d7f5e58ffff5a3d + +commit afbfa68fa18081ef05a9cd294958509a5d3cda8b +Author: markus@openbsd.org +Date: Tue May 30 08:49:32 2017 +0000 + + upstream commit + + revise sshkey_load_public(): remove ssh1 related + comments, remove extra open()/close() on keyfile, prevent leak of 'pub' if + 'keyp' is NULL, replace strlcpy+cat with asprintf; ok djm@ + + Upstream-ID: 6175e47cab5b4794dcd99c1175549a483ec673ca + +commit 813f55336a24fdfc45e7ed655fccc7d792e8f859 +Author: markus@openbsd.org +Date: Fri May 26 20:34:49 2017 +0000 + + upstream commit + + sshbuf_consume: reset empty buffer; ok djm@ + + Upstream-ID: 0d4583ba57f69e369d38bbd7843d85cac37fa821 + +commit 6cf711752cc2a7ffaad1fb4de18cae65715ed8bb +Author: markus@openbsd.org +Date: Fri May 26 19:35:50 2017 +0000 + + upstream commit + + remove SSH_CHANNEL_XXX_DRAINING (ssh1 only); ok djm@ + + Upstream-ID: e2e225b6ac67b84dd024f38819afff2554fafe42 + +commit 364f0d5edea27767fb0f915ea7fc61aded88d3e8 +Author: markus@openbsd.org +Date: Fri May 26 19:34:12 2017 +0000 + + upstream commit + + remove channel_input_close_confirmation (ssh1 only); ok + djm@ + + Upstream-ID: 8e7c8c38f322d255bb0294a5c0ebef53fdf576f1 + +commit 8ba0fd40082751dbbc23a830433488bbfb1abdca +Author: djm@openbsd.org +Date: Fri May 26 01:40:07 2017 +0000 + + upstream commit + + fix references to obsolete v00 cert format; spotted by + Jakub Jelen + + Upstream-ID: 7600ce193ab8fd19451acfe24fc2eb39d46b2c4f + +commit dcc714c65cfb81eb6903095b4590719e8690f3da +Author: Mike Frysinger +Date: Wed May 24 23:21:19 2017 -0400 + + configure: actually set cache vars when cross-compiling + + The cross-compiling fallback message says it's assuming the test + passed, but it didn't actually set the cache var which causes + later tests to fail. + +commit 947a3e829a5b8832a4768fd764283709a4ca7955 +Author: djm@openbsd.org +Date: Sat May 20 02:35:47 2017 +0000 + + upstream commit + + there's no reason to artificially limit the key path + here, just check that it fits PATH_MAX; spotted by Matthew Patton + + Upstream-ID: 858addaf2009c9cf04d80164a41b2088edb30b58 + +commit 773224802d7cb250bb8b461546fcce10567b4b2e +Author: djm@openbsd.org +Date: Fri May 19 21:07:17 2017 +0000 + + upstream commit + + Now that we no longer support SSHv1, replace the contents + of this file with a pointer to + https://tools.ietf.org/html/draft-miller-ssh-agent-00 It's better edited, + doesn't need to document stuff we no longer implement and does document stuff + that we do implement (RSA SHA256/512 signature flags) + + Upstream-ID: da8cdc46bbcc266efabd565ddddd0d8e556f846e + +commit 54cd41a4663fad66406dd3c8fe0e4760ccd8a899 +Author: djm@openbsd.org +Date: Wed May 17 01:24:17 2017 +0000 + + upstream commit + + allow LogLevel in sshd_config Match blocks; ok dtucker + bz#2717 + + Upstream-ID: 662e303be63148f47db1aa78ab81c5c2e732baa8 + +commit 277abcda3f1b08d2376686f0ef20320160d4c8ab +Author: djm@openbsd.org +Date: Tue May 16 16:56:15 2017 +0000 + + upstream commit + + remove duplicate check; spotted by Jakub Jelen + + Upstream-ID: 30c2996c1767616a8fdc49d4cee088efac69c3b0 + +commit adb47ce839c977fa197e770c1be8f852508d65aa +Author: djm@openbsd.org +Date: Tue May 16 16:54:05 2017 +0000 + + upstream commit + + mention that Ed25519 keys are valid as CA keys; spotted + by Jakub Jelen + + Upstream-ID: d3f6db58b30418cb1c3058211b893a1ffed3dfd4 + +commit 6bdf70f01e700348bb4d8c064c31a0ab90896df6 +Author: Damien Miller +Date: Tue May 9 14:35:03 2017 +1000 + + clean up regress files and add a .gitignore + +commit 7bdb2eeb1d3c26acdc409bd94532eefa252e440b +Author: djm@openbsd.org +Date: Mon May 8 22:57:38 2017 +0000 + + upstream commit + + remove hmac-ripemd160; ok dtucker + + Upstream-ID: 896e737ea0bad6e23327d1c127e02d5e9e9c654d + +commit 5f02bb1f99f70bb422be8a5c2b77ef853f1db554 +Author: djm@openbsd.org +Date: Mon May 8 06:11:06 2017 +0000 + + upstream commit + + make requesting bad ECDSA bits yield the same error + (SSH_ERR_KEY_LENGTH) as the same mistake for RSA/DSA + + Upstream-ID: bf40d3fee567c271e33f05ef8e4e0fa0b6f0ece6 + +commit d757a4b633e8874629a1442c7c2e7b1b55d28c19 +Author: djm@openbsd.org +Date: Mon May 8 06:08:42 2017 +0000 + + upstream commit + + fix for new SSH_ERR_KEY_LENGTH error value + + Upstream-Regress-ID: c38a6e6174d4c3feca3518df150d4fbae0dca8dc + +commit 2e58a69508ac49c02d1bb6057300fa6a76db1045 +Author: djm@openbsd.org +Date: Mon May 8 06:03:39 2017 +0000 + + upstream commit + + helps if I commit the correct version of the file. fix + missing return statement. + + Upstream-ID: c86394a3beeb1ec6611e659bfa830254f325546c + +commit effaf526bfa57c0ac9056ca236becf52385ce8af +Author: djm@openbsd.org +Date: Mon May 8 01:52:49 2017 +0000 + + upstream commit + + remove arcfour, blowfish and CAST here too + + Upstream-Regress-ID: c613b3bcbef75df1fe84ca4dc2d3ef253dc5e920 + +commit 7461a5bc571696273252df28a1f1578968cae506 +Author: djm@openbsd.org +Date: Mon May 8 00:21:36 2017 +0000 + + upstream commit + + I was too aggressive with the scalpel in the last commit; + unbreak sshd, spotted quickly by naddy@ + + Upstream-ID: fb7e75d2b2c7e6ca57dee00ca645e322dd49adbf + +commit bd636f40911094a39c2920bf87d2ec340533c152 +Author: djm@openbsd.org +Date: Sun May 7 23:15:59 2017 +0000 + + upstream commit + + Refuse RSA keys <1024 bits in length. Improve reporting + for keys that do not meet this requirement. ok markus@ + + Upstream-ID: b385e2a7b13b1484792ee681daaf79e1e203df6c + +commit 70c1218fc45757a030285051eb4d209403f54785 +Author: djm@openbsd.org +Date: Sun May 7 23:13:42 2017 +0000 + + upstream commit + + Don't offer CBC ciphers by default in the client. ok + markus@ + + Upstream-ID: 94c9ce8d0d1a085052e11c7f3307950fdc0901ef + +commit acaf34fd823235d549c633c0146ee03ac5956e82 +Author: djm@openbsd.org +Date: Sun May 7 23:12:57 2017 +0000 + + upstream commit + + As promised in last release announcement: remove + support for Blowfish, RC4 and CAST ciphers. ok markus@ deraadt@ + + Upstream-ID: 21f8facdba3fd8da248df6417000867cec6ba222 + +commit 3e371bd2124427403971db853fb2e36ce789b6fd +Author: naddy@openbsd.org +Date: Fri May 5 10:42:49 2017 +0000 + + upstream commit + + more simplification and removal of SSHv1-related code; + ok djm@ + + Upstream-ID: d2f041aa0b79c0ebd98c68a01e5a0bfab2cf3b55 + +commit 2e9c324b3a7f15c092d118c2ac9490939f6228fd +Author: naddy@openbsd.org +Date: Fri May 5 10:41:58 2017 +0000 + + upstream commit + + remove superfluous protocol 2 mentions; ok jmc@ + + Upstream-ID: 0aaf7567c9f2e50fac5906b6a500a39c33c4664d + +commit 744bde79c3361e2153cb395a2ecdcee6c713585d +Author: djm@openbsd.org +Date: Thu May 4 06:10:57 2017 +0000 + + upstream commit + + since a couple of people have asked, leave a comment + explaining why we retain SSH v.1 support in the "delete all keys from agent" + path. + + Upstream-ID: 4b42dcfa339813c15fe9248a2c1b7ed41c21bbb4 + +commit 0c378ff6d98d80bc465a4a6a787670fb9cc701ee +Author: djm@openbsd.org +Date: Thu May 4 01:33:21 2017 +0000 + + upstream commit + + another tentacle: cipher_set_key_string() was only ever + used for SSHv1 + + Upstream-ID: 7fd31eb6c48946f7e7cc12af0699fe8eb637e94a + +commit 9a82e24b986e3e0dc70849dbb2c19aa6c707b37f +Author: naddy@openbsd.org +Date: Wed May 3 21:49:18 2017 +0000 + + upstream commit + + restore mistakenly deleted description of the + ConnectionAttempts option ok markus@ + + Upstream-ID: 943002b1b7c470caea3253ba7b7348c359de0348 + +commit 768405fddf64ff83aa6ef701ebb3c1f82d98a2f3 +Author: naddy@openbsd.org +Date: Wed May 3 21:08:09 2017 +0000 + + upstream commit + + remove miscellaneous SSH1 leftovers; ok markus@ + + Upstream-ID: af23696022ae4d45a1abc2fb8b490d8d9dd63b7c + +commit 1a1b24f8229bf7a21f89df21987433283265527a +Author: jmc@openbsd.org +Date: Wed May 3 10:01:44 2017 +0000 + + upstream commit + + more protocol 1 bits removed; ok djm + + Upstream-ID: b5b977eaf756915acb56aef3604a650e27f7c2b9 + +commit 2b6f799e9b230cf13a7eefc05ecead7d8569d6b5 +Author: jmc@openbsd.org +Date: Wed May 3 06:32:02 2017 +0000 + + upstream commit + + more protocol 1 stuff to go; ok djm + + Upstream-ID: 307a30441d2edda480fd1661d998d36665671e47 + +commit f10c0d32cde2084d2a0b19bc47d80cb93e85a093 +Author: jmc@openbsd.org +Date: Tue May 2 17:04:09 2017 +0000 + + upstream commit + + rsa1 is no longer valid; + + Upstream-ID: 9953d09ed9841c44b7dcf7019fa874783a709d89 + +commit 42b690b4fd0faef78c4d68225948b6e5c46c5163 +Author: jmc@openbsd.org +Date: Tue May 2 14:06:37 2017 +0000 + + upstream commit + + add PubKeyAcceptedKeyTypes to the -o list: scp(1) has + it, so i guess this should too; + + Upstream-ID: 7fab32e869ca5831d09ab0c40d210b461d527a2c + +commit d852603214defd93e054de2877b20cc79c19d0c6 +Author: jmc@openbsd.org +Date: Tue May 2 13:44:51 2017 +0000 + + upstream commit + + remove now obsolete protocol1 options from the -o + lists; + + Upstream-ID: 828e478a440bc5f9947672c392420510a362b3dd + +commit 8b60ce8d8111e604c711c4cdd9579ffe0edced74 +Author: jmc@openbsd.org +Date: Tue May 2 09:05:58 2017 +0000 + + upstream commit + + more -O shuffle; ok djm + + Upstream-ID: c239991a3a025cdbb030b73e990188dd9bfbeceb + +commit 3575f0b12afe6b561681582fd3c34067d1196231 +Author: djm@openbsd.org +Date: Tue May 2 08:54:19 2017 +0000 + + upstream commit + + remove -1 / -2 options; pointed out by jmc@ + + Upstream-ID: 65d2a816000741a95df1c7cfdb5fa8469fcc7daa + +commit 4f1ca823bad12e4f9614895eefe0d0073b84a28f +Author: jmc@openbsd.org +Date: Tue May 2 08:06:33 2017 +0000 + + upstream commit + + remove options -12 from usage(); + + Upstream-ID: db7ceef25132e63b50ed05289bf447fece1d1270 + +commit 6b84897f7fd39956b849eac7810319d8a9958568 +Author: jmc@openbsd.org +Date: Tue May 2 07:13:31 2017 +0000 + + upstream commit + + tidy up -O somewhat; ok djm + + Upstream-ID: 804405f716bf7ef15c1f36ab48581ca16aeb4d52 + +commit d1c6b7fdbdfe4a7a37ecd48a97f0796b061c2868 +Author: djm@openbsd.org +Date: Mon May 1 22:09:48 2017 +0000 + + upstream commit + + when freeing a bitmap, zero all it bytes; spotted by Ilya + Kaliman + + Upstream-ID: 834ac024f2c82389d6ea6b1c7d6701b3836e28e4 + +commit 0f163983016c2988a92e039d18a7569f9ea8e071 +Author: djm@openbsd.org +Date: Mon May 1 14:08:26 2017 +0000 + + upstream commit + + this one I did forget to "cvs rm" + + Upstream-ID: 5781670c0578fe89663c9085ed3ba477cf7e7913 + +commit 21ed00a8e26fe8a772bcca782175fafc2b0890ed +Author: djm@openbsd.org +Date: Mon May 1 09:27:45 2017 +0000 + + upstream commit + + don't know why cvs didn't exterminate these the first + time around, I use rm -f and everuthing... + + pointed out by sobrado@ + + Upstream-ID: a6c44a0c2885330d322ee01fcfd7f6f209b1e15d + +commit d29ba6f45086703fdcb894532848ada3427dfde6 +Author: Darren Tucker +Date: Mon May 1 13:53:07 2017 +1000 + + Define INT32_MAX and INT64_MAX if needed. + +commit 329037e389f02ec95c8e16bf93ffede94d3d44ce +Author: Darren Tucker +Date: Mon May 1 13:19:41 2017 +1000 + + Wrap stdint.h in HAVE_STDINT_H + +commit f382362e8dfb6b277f16779ab1936399d7f2af78 +Author: djm@openbsd.org +Date: Mon May 1 02:27:11 2017 +0000 + + upstream commit + + remove unused variable + + Upstream-ID: 66011f00819d0e71b14700449a98414033284516 + +commit dd369320d2435b630a5974ab270d686dcd92d024 +Author: djm@openbsd.org +Date: Sun Apr 30 23:34:55 2017 +0000 + + upstream commit + + eliminate explicit specification of protocol in tests and + loops over protocol. We only support SSHv2 now. + + Upstream-Regress-ID: 0082838a9b8a382b7ee9cbf0c1b9db727784fadd + +commit 557f921aad004be15805e09fd9572969eb3d9321 +Author: djm@openbsd.org +Date: Sun Apr 30 23:33:48 2017 +0000 + + upstream commit + + remove SSHv1 support from unit tests + + Upstream-Regress-ID: 395ca2aa48f1f7d23eefff6cb849ea733ca8bbfe + +commit e77e1562716fb3da413e4c2397811017b762f5e3 +Author: djm@openbsd.org +Date: Mon May 1 00:03:18 2017 +0000 + + upstream commit + + fixup setting ciphercontext->plaintext (lost in SSHv1 purge), + though it isn't really used for much anymore. + + Upstream-ID: 859b8bce84ff4865b32097db5430349d04b9b747 + +commit f7849e6c83a4e0f602dea6c834a24091c622d68e +Author: Damien Miller +Date: Mon May 1 09:55:56 2017 +1000 + + remove configure --with-ssh1 + +commit f4a6a88ddb6dba6d2f7bfb9e2c9879fcc9633043 +Author: djm@openbsd.org +Date: Sun Apr 30 23:29:10 2017 +0000 + + upstream commit + + flense SSHv1 support from ssh-agent, considerably + simplifying it + + ok markus + + Upstream-ID: 71d772cdcefcb29f76e01252e8361e6fc2dfc365 + +commit 930e8d2827853bc2e196c20c3e000263cc87fb75 +Author: djm@openbsd.org +Date: Sun Apr 30 23:28:41 2017 +0000 + + upstream commit + + obliterate ssh1.h and some dead code that used it + + ok markus@ + + Upstream-ID: 1ca9159a9fb95618f9d51e069ac8e1131a087343 + +commit a3710d5d529a34b8f56aa62db798c70e85d576a0 +Author: djm@openbsd.org +Date: Sun Apr 30 23:28:12 2017 +0000 + + upstream commit + + exterminate the -1 flag from scp + + ok markus@ + + Upstream-ID: 26d247f7065da15056b209cef5f594ff591b89db + +commit aebd0abfaa8a41e75d50f9f7934267b0a2d9acb4 +Author: djm@openbsd.org +Date: Sun Apr 30 23:26:54 2017 +0000 + + upstream commit + + purge the last traces of SSHv1 from the TTY modes + handling code + + ok markus + + Upstream-ID: 963a19f1e06577377c38a3b7ce468f121b966195 + +commit dfa641f758d4b8b2608ab1b00abaf88df0a8e36a +Author: djm@openbsd.org +Date: Sun Apr 30 23:26:16 2017 +0000 + + upstream commit + + remove the (in)famous SSHv1 CRC compensation attack + detector. + + Despite your cameo in The Matrix movies, you will not be missed. + + ok markus + + Upstream-ID: 44261fce51a56d93cdb2af7b6e184be629f667e0 + +commit e5d3bd36ef67d82092861f39b5bf422cb12b31a6 +Author: djm@openbsd.org +Date: Sun Apr 30 23:25:03 2017 +0000 + + upstream commit + + undo some local debugging stuff that I committed by + accident + + Upstream-ID: fe5b31f69a60d47171836911f144acff77810217 + +commit 3d6d09f2e90f4ad650ebda6520bf2da446f37f14 +Author: djm@openbsd.org +Date: Sun Apr 30 23:23:54 2017 +0000 + + upstream commit + + remove SSHv1 support from packet and buffer APIs + + ok markus@ + + Upstream-ID: bfc290053d40b806ecac46317d300677d80e1dc9 + +commit 05164358577c82de18ed7373196bc7dbd8a3f79c +Author: djm@openbsd.org +Date: Sun Apr 30 23:21:54 2017 +0000 + + upstream commit + + remove SSHv1-related buffers from client code + + Upstream-ID: dca5d01108f891861ceaf7ba1c0f2eb274e0c7dd + +commit 873d3e7d9a4707d0934fb4c4299354418f91b541 +Author: djm@openbsd.org +Date: Sun Apr 30 23:18:44 2017 +0000 + + upstream commit + + remove KEY_RSA1 + + ok markus@ + + Upstream-ID: 7408517b077c892a86b581e19f82a163069bf133 + +commit 788ac799a6efa40517f2ac0d895a610394298ffc +Author: djm@openbsd.org +Date: Sun Apr 30 23:18:22 2017 +0000 + + upstream commit + + remove SSHv1 configuration options and man pages bits + + ok markus@ + + Upstream-ID: 84638c23546c056727b7a7d653c72574e0f19424 + +commit e6882463a8ae0594aacb6d6575a6318a41973d84 +Author: djm@openbsd.org +Date: Sun Apr 30 23:17:37 2017 +0000 + + upstream commit + + remove SSH1 make flag and associated files ok markus@ + + Upstream-ID: ba9feacc5787337c413db7cf26ea3d53f854cfef + +commit cdccebdf85204bf7542b7fcc1aa2ea3f36661833 +Author: djm@openbsd.org +Date: Sun Apr 30 23:15:04 2017 +0000 + + upstream commit + + remove SSHv1 ciphers; ok markus@ + + Upstream-ID: e5ebc5e540d7f23a8c1266db1839794d4d177890 + +commit 97f4d3083b036ce3e68d6346a6140a22123d5864 +Author: djm@openbsd.org +Date: Sun Apr 30 23:13:25 2017 +0000 + + upstream commit + + remove compat20/compat13/compat15 variables + + ok markus@ + + Upstream-ID: 43802c035ceb3fef6c50c400e4ecabf12354691c + +commit 99f95ba82673d33215dce17bfa1512b57f54ec09 +Author: djm@openbsd.org +Date: Sun Apr 30 23:11:45 2017 +0000 + + upstream commit + + remove options.protocol and client Protocol + configuration knob + + ok markus@ + + Upstream-ID: 5a967f5d06e2d004b0235457b6de3a9a314e9366 + +commit 56912dea6ef63dae4eb1194e5d88973a7c6c5740 +Author: djm@openbsd.org +Date: Sun Apr 30 23:10:43 2017 +0000 + + upstream commit + + unifdef WITH_SSH1 ok markus@ + + Upstream-ID: 9716e62a883ef8826c57f4d33b4a81a9cc7755c7 + +commit d4084cd230f7319056559b00db8b99296dad49d5 +Author: jmc@openbsd.org +Date: Sat Apr 29 06:06:01 2017 +0000 + + upstream commit + + tweak previous; + + Upstream-ID: a3abc6857455299aa42a046d232b7984568bceb9 + +commit 249516e428e8461b46340a5df5d5ed1fbad2ccce +Author: djm@openbsd.org +Date: Sat Apr 29 04:12:25 2017 +0000 + + upstream commit + + allow ssh-keygen to include arbitrary string or flag + certificate extensions and critical options. ok markus@ dtucker@ + + Upstream-ID: 2cf28dd6c5489eb9fc136e0b667ac3ea10241646 + +commit 47a287bb6ac936c26b4f3ae63279c02902ded3b9 +Author: jmc@openbsd.org +Date: Fri Apr 28 06:15:03 2017 +0000 + + upstream commit + + sort; + + Upstream-ID: 7e6b56e52b039cf44d0418e9de9aca20a2d2d15a + +commit 36465a76a79ad5040800711b41cf5f32249d5120 +Author: Darren Tucker +Date: Fri Apr 28 14:44:28 2017 +1000 + + Typo. + + Upstream-Regress-ID: 1e6b51ddf767cbad0a4e63eb08026c127e654308 + +commit 9d18cb7bdeb00b20205fd13d412aae8c0e0457ed +Author: Darren Tucker +Date: Fri Apr 28 14:41:17 2017 +1000 + + Add 2 regress commits I applied by hand. + + Upstream-Regress-ID: 30c20180c87cbc99fa1020489fe7fd8245b6420c + Upstream-Regress-ID: 1e6b51ddf767cbad0a4e63eb08026c127e654308 + +commit 9504ea6b27f9f0ece64e88582ebb9235e664a100 +Author: Darren Tucker +Date: Fri Apr 28 14:33:43 2017 +1000 + + Merge integrity.sh rev 1.22. + + Merge missing bits from Colin Watson's patch in bz#2658 which make integrity + tests more robust against timeouts. ok djm@ + +commit 06ec837a34542627e2183a412d6a9d2236f22140 +Author: Darren Tucker +Date: Fri Apr 28 14:30:03 2017 +1000 + + Id sync for integrity.sh rev 1.21 which pulls in some shell portability fixes + +commit e0194b471efe7d3daedc9cc66686cb1ab69d3be8 +Author: jsg@openbsd.org +Date: Mon Apr 17 11:02:31 2017 +0000 + + upstream commit + + Change COMPILER_VERSION tests which limited additional + warnings to gcc4 to instead skip them on gcc3 as clang can handle + -Wpointer-sign and -Wold-style-definition. + + Upstream-Regress-ID: e48d7dc13e48d9334b8195ef884dfbc51316012f + +commit 6830be90e71f46bcd182a9202b151eaf2b299434 +Author: djm@openbsd.org +Date: Fri Apr 28 03:24:53 2017 +0000 + + upstream commit + + include key fingerprint in "Offering public key" debug + message + + Upstream-ID: 964749f820c2ed4cf6a866268b1a05e907315c52 + +commit 066437187e16dcafcbc19f9402ef0e6575899b1d +Author: millert@openbsd.org +Date: Fri Apr 28 03:21:12 2017 +0000 + + upstream commit + + Avoid relying on implementation-specific behavior when + detecting whether the timestamp or file size overflowed. If time_t and off_t + are not either 32-bit or 64-bit scp will exit with an error. OK djm@ + + Upstream-ID: f31caae73ddab6df496b7bbbf7da431e267ad135 + +commit 68d3a2a059183ebd83b15e54984ffaced04d2742 +Author: dtucker@openbsd.org +Date: Fri Apr 28 03:20:27 2017 +0000 + + upstream commit + + Add SyslogFacility option to ssh(1) matching the + equivalent option in sshd(8). bz#2705, patch from erahn at arista.com, ok + djm@ + + Upstream-ID: d5115c2c0193ceb056ed857813b2a7222abda9ed + +commit e13aad66e73a14b062d13aee4e98f1e21a3f6a14 +Author: jsg@openbsd.org +Date: Thu Apr 27 13:40:05 2017 +0000 + + upstream commit + + remove a static array unused since rev 1.306 spotted by + clang ok djm@ + + Upstream-ID: 249b3eed2446f6074ba2219ccc46919dd235a7b8 + +commit 91bd2181866659f00714903e78e1c3edd4c45f3d +Author: millert@openbsd.org +Date: Thu Apr 27 11:53:12 2017 +0000 + + upstream commit + + Avoid potential signed int overflow when parsing the file + size. Use strtoul() instead of parsing manually. OK djm@ + + Upstream-ID: 1f82640861c7d905bbb05e7d935d46b0419ced02 + +commit 17a54a03f5a1d35e33cc24e22cd7a9d0f6865dc4 +Author: Darren Tucker +Date: Tue Apr 25 08:32:27 2017 +1000 + + Fix typo in "socketcall". + + Pointed out by jjelen at redhat.com. + +commit 8b0eee148f7cf8b248c30d1bae57300f2cc5aafd +Author: Darren Tucker +Date: Mon Apr 24 19:40:31 2017 +1000 + + Deny socketcall in seccomp filter on ppc64le. + + OpenSSL is using socket() calls (in FIPS mode) when handling ECDSA keys + in privsep child. The socket() syscall is already denied in the seccomp + filter, but in ppc64le kernel, it is implemented using socketcall() + syscall, which is not denied yet (only SYS_SHUTDOWN is allowed) and + therefore fails hard. + + Patch from jjelen at redhat.com. + +commit f8500b2be599053daa05248a86a743232ec6a536 +Author: schwarze@openbsd.org +Date: Mon Apr 17 14:31:23 2017 +0000 + + upstream commit + + Recognize nl_langinfo(CODESET) return values "646" and "" + as aliases for "US-ASCII", useful for different versions of NetBSD and + Solaris. Found by dtucker@ and by Tom G. Christensen . OK dtucker@ deraadt@ + + Upstream-ID: 38c2133817cbcae75c88c63599ac54228f0fa384 + +commit 7480dfedf8c5c93baaabef444b3def9331e86ad5 +Author: jsg@openbsd.org +Date: Mon Apr 17 11:02:31 2017 +0000 + + upstream commit + + Change COMPILER_VERSION tests which limited additional + warnings to gcc4 to instead skip them on gcc3 as clang can handle + -Wpointer-sign and -Wold-style-definition. + + Upstream-ID: 5cbe348aa76dc1adf55be6c0e388fafaa945439a Index: crypto/openssh/FREEBSD-upgrade =================================================================== --- /dev/null +++ crypto/openssh/FREEBSD-upgrade @@ -0,0 +1,186 @@ + FreeBSD maintainer's guide to OpenSSH-portable + ============================================== + +00) Make sure your mail spool has plenty of free space. It'll fill up + pretty fast once you're done with this checklist. + +01) Download the latest OpenSSH-portable tarball and signature from + OpenBSD (https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/). + +02) Verify the signature: + + $ gpg --verify openssh-X.YpZ.tar.gz.asc + +03) Unpack the tarball in a suitable directory: + + $ tar xf openssh-X.YpZ.tar.gz + +04) Copy to the vendor directory: + + $ svn co svn+ssh://repo.freebsd.org/base/vendor-crypto/openssh/dist + $ rsync --archive --delete openssh-X.YpZ/ dist/ + +05) Take care of added / deleted files: + + $ svn rm $(svn stat dist | awk '$1 == "!" { print $2 }') + $ svn add --no-auto-props $(svn stat dist | awk '$1 == "?" { print $2 }') + +06) Commit: + + $ svn commit -m "Vendor import of OpenSSH X.YpZ." dist + +07) Tag: + + $ svn copy -m "Tag OpenSSH X.YpZ." \ + svn+ssh://repo.freebsd.org/base/vendor-crypto/openssh/dist \ + svn+ssh://repo.freebsd.org/base/vendor-crypto/openssh/X.YpZ + +08) Check out head and run the pre-merge script, which strips our RCS + tags from files that have them: + + $ svn co svn+ssh://repo.freebsd.org/base/head + $ cd head/crypto/openssh + $ sh freebsd-pre-merge.sh + +09) Merge from the vendor branch: + + $ svn merge -cNNNNNN \^/vendor-crypto/openssh/dist . + + A number of files have been deleted from FreeBSD's copy of ssh, + including rendered man pages (which have a .0 extension). When + svn prompts for these deleted files during the merge, choose 'r' + (leaving them deleted). + +0A) Resolve conflicts. Remember to bump the version addendum in + version.h, and update the default value in ssh{,d}_config and + ssh{,d}_config.5. + +0B) Diff against the vendor branch: + + $ svn diff --no-diff-deleted --no-diff-added \ + --ignore-properties \^/vendor-crypto/openssh/X.YpZ . + + Files that have modifications relative to the vendor code, and + only those files, must have the svn:keywords property set to + FreeBSD=%H and be listed in the 'keywords' file created by the + pre-merge script. + +0C) Run the post-merge script, which re-adds RCS tags to files that + need them: + + $ sh freebsd-post-merge.sh + +0D) Run the configure script: + + $ sh freebsd-configure.sh + +0E) Review changes to config.h very carefully. + + Note that libwrap should not be defined in config.h; as of + r311585 it is conditional on MK_TCP_WRAPPERS. + +0F) If source files have been added or removed, update the appropriate + makefiles to reflect changes in the vendor's Makefile.in. + +10) Update ssh_namespace.h: + + $ sh freebsd-namespace.sh + +11) Build and install world, reboot, test. Pay particular attention + to pam_ssh(8), which gropes inside libssh and will break if + something significant changes or if ssh_namespace.h is out of + whack. + +12) Commit, and hunker down for the inevitable storm of complaints. + + + + An overview of FreeBSD changes to OpenSSH-portable + ================================================== + +0) VersionAddendum + + The SSH protocol allows for a human-readable version string of up + to 40 characters to be appended to the protocol version string. + FreeBSD takes advantage of this to include a date indicating the + "patch level", so people can easily determine whether their system + is vulnerable when an OpenSSH advisory goes out. Some people, + however, dislike advertising their patch level in the protocol + handshake, so we've added a VersionAddendum configuration variable + to allow them to change or disable it. Upstream added support for + VersionAddendum on the server side, but we also support it on the + client side. + +1) Modified server-side defaults + + We've modified some configuration defaults in sshd: + + - UsePAM defaults to "yes". + - PermitRootLogin defaults to "no". + - X11Forwarding defaults to "yes". + - PasswordAuthentication defaults to "no". + - VersionAddendum defaults to "FreeBSD-YYYYMMDD". + - PrivilegeSeparation defaults to "sandbox". + - UseDNS defaults to "yes". + +2) Modified client-side defaults + + We've modified some configuration defaults in ssh: + + - CheckHostIP defaults to "no". + - VerifyHostKeyDNS defaults to "yes" if built with LDNS. + - VersionAddendum defaults to "FreeBSD-YYYYMMDD". + +3) Canonic host names + + We've added code to ssh.c to canonicize the target host name after + reading options but before trying to connect. This eliminates the + usual problem with duplicate known_hosts entries. + +4) setusercontext() environment + + Our setusercontext(3) can set environment variables, which we must + take care to transfer to the child's environment. + +5) TCP wrappers + + Support for TCP wrappers was removed in upstream 6.7p1. We've + added it back by porting the 6.6p1 code forward. + + TCP wrappers support in sshd will be disabled in HEAD and will + be removed from FreeBSD in the future. + +6) Agent client reference counting + + We've added code to ssh-agent.c to implement client reference + counting; the agent will automatically exit when the last client + disconnects. + +7) Class-based login restrictions + + We've added code to auth2.c to enforce the host.allow, host.deny, + times.allow and times.deny login class capabilities. + +8) HPN + + We no longer have the HPN patches (adaptive buffer size for + increased throughput on high-BxD links), but we recognize and + ignore HPN-related configuration options to avoid breaking existing + configurations. + +9) AES-CBC + + The AES-CBC ciphers were removed from the server-side proposal list + in 6.7p1 due to theoretical weaknesses and the availability of + superior ciphers (including AES-CTR and AES-GCM). We have re-added + them for compatibility with third-party clients. + + + +This port was brought to you by (in no particular order) DARPA, NAI +Labs, ThinkSec, Nescafé, the Aberlour Glenlivet Distillery Co., +Suzanne Vega, and a Sanford's #69 Deluxe Marker. + + -- des@FreeBSD.org + +$FreeBSD$ Index: crypto/openssh/FREEBSD-vendor =================================================================== --- /dev/null +++ crypto/openssh/FREEBSD-vendor @@ -0,0 +1,6 @@ +# $FreeBSD$ +Project: Portable OpenSSH +ProjectURL: http://www.openssh.com/portable.html +Version: 7.9p1 +License: BSD +Maintainer: des Index: crypto/openssh/INSTALL =================================================================== --- crypto/openssh/INSTALL +++ crypto/openssh/INSTALL @@ -66,6 +66,15 @@ http://www.jmknoble.net/software/x11-ssh-askpass/ +TCP Wrappers: + +If you wish to use the TCP wrappers functionality you will need at least +tcpd.h and libwrap.a, either in the standard include and library paths, +or in the directory specified by --with-tcp-wrappers. Version 7.6 is +known to work. + +http://ftp.porcupine.org/pub/security/index.html + LibEdit: sftp supports command-line editing via NetBSD's libedit. If your platform @@ -177,6 +186,9 @@ --with-osfsia, --without-osfsia will enable or disable OSF1's Security Integration Architecture. The default for OSF1 machines is enable. +--with-tcp-wrappers will enable TCP Wrappers (/etc/hosts.allow|deny) +support. + --with-md5-passwords will enable the use of MD5 passwords. Enable this if your operating system uses MD5 passwords and the system crypt() does not support them directly (see the crypt(3/3c) man page). If enabled, the Index: crypto/openssh/auth-pam.c =================================================================== --- crypto/openssh/auth-pam.c +++ crypto/openssh/auth-pam.c @@ -103,6 +103,7 @@ #include "ssh-gss.h" #endif #include "monitor_wrap.h" +#include "blacklist_client.h" extern ServerOptions options; extern struct sshbuf *loginmsg; @@ -900,6 +901,8 @@ free(msg); return (0); } +// BLACKLIST_NOTIFY(ssh, BLACKLIST_BAD_USER, +// sshpam_authctxt->user); error("PAM: %s for %s%.100s from %.100s", msg, sshpam_authctxt->valid ? "" : "illegal user ", sshpam_authctxt->user, sshpam_rhost); Index: crypto/openssh/auth.c =================================================================== --- crypto/openssh/auth.c +++ crypto/openssh/auth.c @@ -24,6 +24,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -76,6 +77,7 @@ #include "ssherr.h" #include "compat.h" #include "channels.h" +#include "blacklist_client.h" /* import */ extern ServerOptions options; @@ -330,8 +332,11 @@ authmsg = "Postponed"; else if (partial) authmsg = "Partial"; - else + else { authmsg = authenticated ? "Accepted" : "Failed"; + if (authenticated) + BLACKLIST_NOTIFY(ssh, BLACKLIST_AUTH_OK, "ssh"); + } if ((extra = format_method_key(authctxt)) == NULL) { if (authctxt->auth_method_info != NULL) @@ -585,6 +590,7 @@ aix_restoreauthdb(); #endif if (pw == NULL) { + BLACKLIST_NOTIFY(ssh, BLACKLIST_BAD_USER, user); logit("Invalid user %.100s from %.100s port %d", user, ssh_remote_ipaddr(ssh), ssh_remote_port(ssh)); #ifdef CUSTOM_FAILED_LOGIN @@ -599,7 +605,7 @@ if (!allowed_user(ssh, pw)) return (NULL); #ifdef HAVE_LOGIN_CAP - if ((lc = login_getclass(pw->pw_class)) == NULL) { + if ((lc = login_getpwclass(pw)) == NULL) { debug("unable to get login class: %s", user); return (NULL); } Index: crypto/openssh/auth2.c =================================================================== --- crypto/openssh/auth2.c +++ crypto/openssh/auth2.c @@ -24,6 +24,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -53,6 +54,7 @@ #include "pathnames.h" #include "sshbuf.h" #include "ssherr.h" +#include "blacklist_client.h" #ifdef GSSAPI #include "ssh-gss.h" @@ -268,6 +270,10 @@ char *user = NULL, *service = NULL, *method = NULL, *style = NULL; int r, authenticated = 0; double tstart = monotime_double(); +#ifdef HAVE_LOGIN_CAP + login_cap_t *lc; + const char *from_host, *from_ip; +#endif if (authctxt == NULL) fatal("input_userauth_request: no authctxt"); @@ -319,6 +325,26 @@ "not allowed: (%s,%s) -> (%s,%s)", authctxt->user, authctxt->service, user, service); } + +#ifdef HAVE_LOGIN_CAP + if (authctxt->pw != NULL && + (lc = PRIVSEP(login_getpwclass(authctxt->pw))) != NULL) { + from_host = auth_get_canonical_hostname(ssh, options.use_dns); + from_ip = ssh_remote_ipaddr(ssh); + if (!auth_hostok(lc, from_host, from_ip)) { + logit("Denied connection for %.200s from %.200s [%.200s].", + authctxt->pw->pw_name, from_host, from_ip); + ssh_packet_disconnect(ssh, "Sorry, you are not allowed to connect."); + } + if (!auth_timeok(lc, time(NULL))) { + logit("LOGIN %.200s REFUSED (TIME) FROM %.200s", + authctxt->pw->pw_name, from_host); + ssh_packet_disconnect(ssh, "Logins not available right now."); + } + PRIVSEP(login_close(lc)); + } +#endif /* HAVE_LOGIN_CAP */ + /* reset state */ auth2_challenge_stop(ssh); @@ -426,8 +452,10 @@ } else { /* Allow initial try of "none" auth without failure penalty */ if (!partial && !authctxt->server_caused_failure && - (authctxt->attempt > 1 || strcmp(method, "none") != 0)) + (authctxt->attempt > 1 || strcmp(method, "none") != 0)) { authctxt->failures++; + BLACKLIST_NOTIFY(ssh, BLACKLIST_AUTH_FAIL, "ssh"); + } if (authctxt->failures >= options.max_authtries) { #ifdef SSH_AUDIT_EVENTS PRIVSEP(audit_event(ssh, SSH_LOGIN_EXCEED_MAXTRIES)); Index: crypto/openssh/blacklist.c =================================================================== --- /dev/null +++ crypto/openssh/blacklist.c @@ -0,0 +1,97 @@ +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * Copyright (c) 2016 The FreeBSD Foundation, Inc. + * All rights reserved. + * + * Portions of this software were developed by Kurt Lidl + * under sponsorship from the FreeBSD Foundation. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include "includes.h" + +#include +#include +#include +#include +#include +#include +#include + +#include "ssh.h" +#include "packet.h" +#include "log.h" +#include "misc.h" +#include "servconf.h" +#include +#include "blacklist_client.h" + +static struct blacklist *blstate = NULL; + +/* import */ +extern ServerOptions options; + +/* internal definition from bl.h */ +struct blacklist *bl_create(bool, char *, void (*)(int, const char *, va_list)); + +/* impedence match vsyslog() to sshd's internal logging levels */ +void +im_log(int priority, const char *message, va_list args) +{ + LogLevel imlevel; + + switch (priority) { + case LOG_ERR: + imlevel = SYSLOG_LEVEL_ERROR; + break; + case LOG_DEBUG: + imlevel = SYSLOG_LEVEL_DEBUG1; + break; + case LOG_INFO: + imlevel = SYSLOG_LEVEL_INFO; + break; + default: + imlevel = SYSLOG_LEVEL_DEBUG2; + } + do_log(imlevel, message, args); +} + +void +blacklist_init(void) +{ + + if (options.use_blacklist) + blstate = bl_create(false, NULL, im_log); +} + +void +blacklist_notify(struct ssh *ssh, int action, const char *msg) +{ + + if (blstate != NULL && ssh_packet_connection_is_on_socket(ssh)) + (void)blacklist_r(blstate, action, + ssh_packet_get_connection_in(ssh), msg); +} Index: crypto/openssh/blacklist_client.h =================================================================== --- crypto/openssh/blacklist_client.h +++ crypto/openssh/blacklist_client.h @@ -0,0 +1,61 @@ +/*- + * Copyright (c) 2015 The NetBSD Foundation, Inc. + * Copyright (c) 2016 The FreeBSD Foundation, Inc. + * All rights reserved. + * + * Portions of this software were developed by Kurt Lidl + * under sponsorship from the FreeBSD Foundation. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Christos Zoulas. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef BLACKLIST_CLIENT_H +#define BLACKLIST_CLIENT_H + +#ifndef BLACKLIST_API_ENUM +enum { + BLACKLIST_AUTH_OK = 0, + BLACKLIST_AUTH_FAIL, + BLACKLIST_ABUSIVE_BEHAVIOR, + BLACKLIST_BAD_USER +}; +#endif + +#ifdef USE_BLACKLIST +void blacklist_init(void); +void blacklist_notify(struct ssh *, int, const char *); + +#define BLACKLIST_INIT() blacklist_init() +#define BLACKLIST_NOTIFY(ssh,x,msg) blacklist_notify(ssh,x,msg) + +#else + +#define BLACKLIST_INIT() +#define BLACKLIST_NOTIFY(ssh,x,msg) + +#endif + + +#endif /* BLACKLIST_CLIENT_H */ Index: crypto/openssh/config.h =================================================================== --- /dev/null +++ crypto/openssh/config.h @@ -0,0 +1,1979 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define if you have a getaddrinfo that fails for the all-zeros IPv6 address + */ +/* #undef AIX_GETNAMEINFO_HACK */ + +/* Define if your AIX loginfailed() function takes 4 arguments (AIX >= 5.2) */ +/* #undef AIX_LOGINFAILED_4ARG */ + +/* System only supports IPv4 audit records */ +/* #undef AU_IPv4 */ + +/* Define if your resolver libs need this for getrrsetbyname */ +/* #undef BIND_8_COMPAT */ + +/* The system has incomplete BSM API */ +/* #undef BROKEN_BSM_API */ + +/* Define if cmsg_type is not passed correctly */ +/* #undef BROKEN_CMSG_TYPE */ + +/* getaddrinfo is broken (if present) */ +/* #undef BROKEN_GETADDRINFO */ + +/* getgroups(0,NULL) will return -1 */ +/* #undef BROKEN_GETGROUPS */ + +/* FreeBSD glob does not do what we need */ +#define BROKEN_GLOB 1 + +/* Define if you system's inet_ntoa is busted (e.g. Irix gcc issue) */ +/* #undef BROKEN_INET_NTOA */ + +/* Define if your struct dirent expects you to allocate extra space for d_name + */ +/* #undef BROKEN_ONE_BYTE_DIRENT_D_NAME */ + +/* Can't do comparisons on readv */ +/* #undef BROKEN_READV_COMPARISON */ + +/* NetBSD read function is sometimes redirected, breaking atomicio comparisons + against it */ +/* #undef BROKEN_READ_COMPARISON */ + +/* realpath does not work with nonexistent files */ +#define BROKEN_REALPATH 1 + +/* Needed for NeXT */ +/* #undef BROKEN_SAVED_UIDS */ + +/* Define if your setregid() is broken */ +/* #undef BROKEN_SETREGID */ + +/* Define if your setresgid() is broken */ +/* #undef BROKEN_SETRESGID */ + +/* Define if your setresuid() is broken */ +/* #undef BROKEN_SETRESUID */ + +/* Define if your setreuid() is broken */ +/* #undef BROKEN_SETREUID */ + +/* LynxOS has broken setvbuf() implementation */ +/* #undef BROKEN_SETVBUF */ + +/* QNX shadow support is broken */ +/* #undef BROKEN_SHADOW_EXPIRE */ + +/* Define if your snprintf is busted */ +/* #undef BROKEN_SNPRINTF */ + +/* strndup broken, see APAR IY61211 */ +/* #undef BROKEN_STRNDUP */ + +/* strnlen broken, see APAR IY62551 */ +/* #undef BROKEN_STRNLEN */ + +/* strnvis detected broken */ +#define BROKEN_STRNVIS 1 + +/* tcgetattr with ICANON may hang */ +/* #undef BROKEN_TCGETATTR_ICANON */ + +/* updwtmpx is broken (if present) */ +/* #undef BROKEN_UPDWTMPX */ + +/* Define if you have BSD auth support */ +/* #undef BSD_AUTH */ + +/* Define if you want to specify the path to your lastlog file */ +/* #undef CONF_LASTLOG_FILE */ + +/* Define if you want to specify the path to your utmp file */ +/* #undef CONF_UTMP_FILE */ + +/* Define if you want to specify the path to your wtmpx file */ +/* #undef CONF_WTMPX_FILE */ + +/* Define if you want to specify the path to your wtmp file */ +/* #undef CONF_WTMP_FILE */ + +/* Define if your platform needs to skip post auth file descriptor passing */ +/* #undef DISABLE_FD_PASSING */ + +/* Define if you don't want to use lastlog */ +#define DISABLE_LASTLOG 1 + +/* Define if you don't want to use your system's login() call */ +/* #undef DISABLE_LOGIN */ + +/* Define if you don't want to use pututline() etc. to write [uw]tmp */ +/* #undef DISABLE_PUTUTLINE */ + +/* Define if you don't want to use pututxline() etc. to write [uw]tmpx */ +/* #undef DISABLE_PUTUTXLINE */ + +/* Define if you want to disable shadow passwords */ +/* #undef DISABLE_SHADOW */ + +/* Define if you don't want to use utmp */ +#define DISABLE_UTMP 1 + +/* Define if you don't want to use utmpx */ +/* #undef DISABLE_UTMPX */ + +/* Define if you don't want to use wtmp */ +#define DISABLE_WTMP 1 + +/* Define if you don't want to use wtmpx */ +#define DISABLE_WTMPX 1 + +/* Enable for PKCS#11 support */ +#define ENABLE_PKCS11 /**/ + +/* define if fflush(NULL) does not work */ +/* #undef FFLUSH_NULL_BUG */ + +/* File names may not contain backslash characters */ +/* #undef FILESYSTEM_NO_BACKSLASH */ + +/* fsid_t has member val */ +/* #undef FSID_HAS_VAL */ + +/* fsid_t has member __val */ +/* #undef FSID_HAS___VAL */ + +/* getpgrp takes one arg */ +#define GETPGRP_VOID 1 + +/* Conflicting defs for getspnam */ +/* #undef GETSPNAM_CONFLICTING_DEFS */ + +/* Define if your system glob() function has the GLOB_ALTDIRFUNC extension */ +#define GLOB_HAS_ALTDIRFUNC 1 + +/* Define if your system glob() function has gl_matchc options in glob_t */ +#define GLOB_HAS_GL_MATCHC 1 + +/* Define if your system glob() function has gl_statv options in glob_t */ +/* #undef GLOB_HAS_GL_STATV */ + +/* Define this if you want GSSAPI support in the version 2 protocol */ +/* #undef GSSAPI */ + +/* Define if you want to use shadow password expire field */ +/* #undef HAS_SHADOW_EXPIRE */ + +/* Define if your system uses access rights style file descriptor passing */ +/* #undef HAVE_ACCRIGHTS_IN_MSGHDR */ + +/* Define if you have ut_addr in utmp.h */ +/* #undef HAVE_ADDR_IN_UTMP */ + +/* Define if you have ut_addr in utmpx.h */ +/* #undef HAVE_ADDR_IN_UTMPX */ + +/* Define if you have ut_addr_v6 in utmp.h */ +/* #undef HAVE_ADDR_V6_IN_UTMP */ + +/* Define if you have ut_addr_v6 in utmpx.h */ +/* #undef HAVE_ADDR_V6_IN_UTMPX */ + +/* Define to 1 if you have the `arc4random' function. */ +#define HAVE_ARC4RANDOM 1 + +/* Define to 1 if you have the `arc4random_buf' function. */ +#define HAVE_ARC4RANDOM_BUF 1 + +/* Define to 1 if you have the `arc4random_stir' function. */ +/* #undef HAVE_ARC4RANDOM_STIR */ + +/* Define to 1 if you have the `arc4random_uniform' function. */ +#define HAVE_ARC4RANDOM_UNIFORM 1 + +/* Define to 1 if you have the `asprintf' function. */ +#define HAVE_ASPRINTF 1 + +/* OpenBSD's gcc has bounded */ +/* #undef HAVE_ATTRIBUTE__BOUNDED__ */ + +/* Have attribute nonnull */ +#define HAVE_ATTRIBUTE__NONNULL__ 1 + +/* OpenBSD's gcc has sentinel */ +/* #undef HAVE_ATTRIBUTE__SENTINEL__ */ + +/* Define to 1 if you have the `aug_get_machine' function. */ +/* #undef HAVE_AUG_GET_MACHINE */ + +/* Define to 1 if you have the `b64_ntop' function. */ +/* #undef HAVE_B64_NTOP */ + +/* Define to 1 if you have the `b64_pton' function. */ +/* #undef HAVE_B64_PTON */ + +/* Define if you have the basename function. */ +#define HAVE_BASENAME 1 + +/* Define to 1 if you have the `bcopy' function. */ +#define HAVE_BCOPY 1 + +/* Define to 1 if you have the `bcrypt_pbkdf' function. */ +/* #undef HAVE_BCRYPT_PBKDF */ + +/* Define to 1 if you have the `bindresvport_sa' function. */ +#define HAVE_BINDRESVPORT_SA 1 + +/* Define to 1 if you have the `blf_enc' function. */ +/* #undef HAVE_BLF_ENC */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BLF_H */ + +/* Define to 1 if you have the `Blowfish_expand0state' function. */ +/* #undef HAVE_BLOWFISH_EXPAND0STATE */ + +/* Define to 1 if you have the `Blowfish_expandstate' function. */ +/* #undef HAVE_BLOWFISH_EXPANDSTATE */ + +/* Define to 1 if you have the `Blowfish_initstate' function. */ +/* #undef HAVE_BLOWFISH_INITSTATE */ + +/* Define to 1 if you have the `Blowfish_stream2word' function. */ +/* #undef HAVE_BLOWFISH_STREAM2WORD */ + +/* Define to 1 if you have the `BN_is_prime_ex' function. */ +#define HAVE_BN_IS_PRIME_EX 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BSD_LIBUTIL_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BSM_AUDIT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BSTRING_H */ + +/* Define to 1 if you have the `bzero' function. */ +#define HAVE_BZERO 1 + +/* calloc(0, x) returns NULL */ +#define HAVE_CALLOC 1 + +/* Define to 1 if you have the `cap_rights_limit' function. */ +#define HAVE_CAP_RIGHTS_LIMIT 1 + +/* Define to 1 if you have the `clock' function. */ +#define HAVE_CLOCK 1 + +/* Have clock_gettime */ +#define HAVE_CLOCK_GETTIME 1 + +/* define if you have clock_t data type */ +#define HAVE_CLOCK_T 1 + +/* Define to 1 if you have the `closefrom' function. */ +#define HAVE_CLOSEFROM 1 + +/* Define if gai_strerror() returns const char * */ +#define HAVE_CONST_GAI_STRERROR_PROTO 1 + +/* Define if your system uses ancillary data style file descriptor passing */ +#define HAVE_CONTROL_IN_MSGHDR 1 + +/* Define to 1 if you have the `crypt' function. */ +#define HAVE_CRYPT 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_CRYPTO_SHA2_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_CRYPT_H */ + +/* Define if you are on Cygwin */ +/* #undef HAVE_CYGWIN */ + +/* Define if your libraries define daemon() */ +#define HAVE_DAEMON 1 + +/* Define to 1 if you have the declaration of `AI_NUMERICSERV', and to 0 if + you don't. */ +#define HAVE_DECL_AI_NUMERICSERV 1 + +/* Define to 1 if you have the declaration of `authenticate', and to 0 if you + don't. */ +/* #undef HAVE_DECL_AUTHENTICATE */ + +/* Define to 1 if you have the declaration of `bzero', and to 0 if you don't. + */ +#define HAVE_DECL_BZERO 1 + +/* Define to 1 if you have the declaration of `GLOB_NOMATCH', and to 0 if you + don't. */ +#define HAVE_DECL_GLOB_NOMATCH 1 + +/* Define to 1 if you have the declaration of `GSS_C_NT_HOSTBASED_SERVICE', + and to 0 if you don't. */ +/* #undef HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE */ + +/* Define to 1 if you have the declaration of `howmany', and to 0 if you + don't. */ +#define HAVE_DECL_HOWMANY 1 + +/* Define to 1 if you have the declaration of `h_errno', and to 0 if you + don't. */ +#define HAVE_DECL_H_ERRNO 1 + +/* Define to 1 if you have the declaration of `loginfailed', and to 0 if you + don't. */ +/* #undef HAVE_DECL_LOGINFAILED */ + +/* Define to 1 if you have the declaration of `loginrestrictions', and to 0 if + you don't. */ +/* #undef HAVE_DECL_LOGINRESTRICTIONS */ + +/* Define to 1 if you have the declaration of `loginsuccess', and to 0 if you + don't. */ +/* #undef HAVE_DECL_LOGINSUCCESS */ + +/* Define to 1 if you have the declaration of `MAXSYMLINKS', and to 0 if you + don't. */ +#define HAVE_DECL_MAXSYMLINKS 1 + +/* Define to 1 if you have the declaration of `NFDBITS', and to 0 if you + don't. */ +#define HAVE_DECL_NFDBITS 1 + +/* Define to 1 if you have the declaration of `offsetof', and to 0 if you + don't. */ +#define HAVE_DECL_OFFSETOF 1 + +/* Define to 1 if you have the declaration of `O_NONBLOCK', and to 0 if you + don't. */ +#define HAVE_DECL_O_NONBLOCK 1 + +/* Define to 1 if you have the declaration of `passwdexpired', and to 0 if you + don't. */ +/* #undef HAVE_DECL_PASSWDEXPIRED */ + +/* Define to 1 if you have the declaration of `readv', and to 0 if you don't. + */ +#define HAVE_DECL_READV 1 + +/* Define to 1 if you have the declaration of `setauthdb', and to 0 if you + don't. */ +/* #undef HAVE_DECL_SETAUTHDB */ + +/* Define to 1 if you have the declaration of `SHUT_RD', and to 0 if you + don't. */ +#define HAVE_DECL_SHUT_RD 1 + +/* Define to 1 if you have the declaration of `writev', and to 0 if you don't. + */ +#define HAVE_DECL_WRITEV 1 + +/* Define to 1 if you have the declaration of `_getlong', and to 0 if you + don't. */ +#define HAVE_DECL__GETLONG 0 + +/* Define to 1 if you have the declaration of `_getshort', and to 0 if you + don't. */ +#define HAVE_DECL__GETSHORT 0 + +/* Define to 1 if you have the `DES_crypt' function. */ +#define HAVE_DES_CRYPT 1 + +/* Define if you have /dev/ptmx */ +/* #undef HAVE_DEV_PTMX */ + +/* Define if you have /dev/ptc */ +/* #undef HAVE_DEV_PTS_AND_PTC */ + +/* Define to 1 if you have the `DH_get0_key' function. */ +#define HAVE_DH_GET0_KEY 1 + +/* Define to 1 if you have the `DH_get0_pqg' function. */ +#define HAVE_DH_GET0_PQG 1 + +/* Define to 1 if you have the `DH_set0_key' function. */ +#define HAVE_DH_SET0_KEY 1 + +/* Define to 1 if you have the `DH_set0_pqg' function. */ +#define HAVE_DH_SET0_PQG 1 + +/* Define to 1 if you have the `DH_set_length' function. */ +#define HAVE_DH_SET_LENGTH 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `dirfd' function. */ +#define HAVE_DIRFD 1 + +/* Define to 1 if you have the `dirname' function. */ +#define HAVE_DIRNAME 1 + +/* Define to 1 if you have the `DSA_generate_parameters_ex' function. */ +#define HAVE_DSA_GENERATE_PARAMETERS_EX 1 + +/* Define to 1 if you have the `DSA_get0_key' function. */ +#define HAVE_DSA_GET0_KEY 1 + +/* Define to 1 if you have the `DSA_get0_pqg' function. */ +#define HAVE_DSA_GET0_PQG 1 + +/* Define to 1 if you have the `DSA_set0_key' function. */ +#define HAVE_DSA_SET0_KEY 1 + +/* Define to 1 if you have the `DSA_set0_pqg' function. */ +#define HAVE_DSA_SET0_PQG 1 + +/* Define to 1 if you have the `DSA_SIG_get0' function. */ +#define HAVE_DSA_SIG_GET0 1 + +/* Define to 1 if you have the `DSA_SIG_set0' function. */ +#define HAVE_DSA_SIG_SET0 1 + +/* Define to 1 if you have the `ECDSA_SIG_get0' function. */ +#define HAVE_ECDSA_SIG_GET0 1 + +/* Define to 1 if you have the `ECDSA_SIG_set0' function. */ +#define HAVE_ECDSA_SIG_SET0 1 + +/* Define to 1 if you have the `EC_KEY_METHOD_new' function. */ +#define HAVE_EC_KEY_METHOD_NEW 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_ELF_H 1 + +/* Define to 1 if you have the `endgrent' function. */ +#define HAVE_ENDGRENT 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ENDIAN_H */ + +/* Define to 1 if you have the `endutent' function. */ +/* #undef HAVE_ENDUTENT */ + +/* Define to 1 if you have the `endutxent' function. */ +#define HAVE_ENDUTXENT 1 + +/* Define to 1 if you have the `err' function. */ +#define HAVE_ERR 1 + +/* Define to 1 if you have the `errx' function. */ +#define HAVE_ERRX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_ERR_H 1 + +/* Define if your system has /etc/default/login */ +/* #undef HAVE_ETC_DEFAULT_LOGIN */ + +/* Define to 1 if you have the `EVP_CIPHER_CTX_ctrl' function. */ +#define HAVE_EVP_CIPHER_CTX_CTRL 1 + +/* Define to 1 if you have the `EVP_CIPHER_CTX_get_iv' function. */ +/* #undef HAVE_EVP_CIPHER_CTX_GET_IV */ + +/* Define to 1 if you have the `EVP_CIPHER_CTX_iv' function. */ +#define HAVE_EVP_CIPHER_CTX_IV 1 + +/* Define to 1 if you have the `EVP_CIPHER_CTX_iv_noconst' function. */ +#define HAVE_EVP_CIPHER_CTX_IV_NOCONST 1 + +/* Define to 1 if you have the `EVP_CIPHER_CTX_set_iv' function. */ +/* #undef HAVE_EVP_CIPHER_CTX_SET_IV */ + +/* Define to 1 if you have the `EVP_DigestFinal_ex' function. */ +#define HAVE_EVP_DIGESTFINAL_EX 1 + +/* Define to 1 if you have the `EVP_DigestInit_ex' function. */ +#define HAVE_EVP_DIGESTINIT_EX 1 + +/* Define to 1 if you have the `EVP_MD_CTX_cleanup' function. */ +/* #undef HAVE_EVP_MD_CTX_CLEANUP */ + +/* Define to 1 if you have the `EVP_MD_CTX_copy_ex' function. */ +#define HAVE_EVP_MD_CTX_COPY_EX 1 + +/* Define to 1 if you have the `EVP_MD_CTX_free' function. */ +#define HAVE_EVP_MD_CTX_FREE 1 + +/* Define to 1 if you have the `EVP_MD_CTX_init' function. */ +/* #undef HAVE_EVP_MD_CTX_INIT */ + +/* Define to 1 if you have the `EVP_MD_CTX_new' function. */ +#define HAVE_EVP_MD_CTX_NEW 1 + +/* Define to 1 if you have the `EVP_PKEY_get0_RSA' function. */ +#define HAVE_EVP_PKEY_GET0_RSA 1 + +/* Define to 1 if you have the `EVP_ripemd160' function. */ +#define HAVE_EVP_RIPEMD160 1 + +/* Define to 1 if you have the `EVP_sha256' function. */ +#define HAVE_EVP_SHA256 1 + +/* Define if you have ut_exit in utmp.h */ +/* #undef HAVE_EXIT_IN_UTMP */ + +/* Define to 1 if you have the `explicit_bzero' function. */ +#define HAVE_EXPLICIT_BZERO 1 + +/* Define to 1 if you have the `fchmod' function. */ +#define HAVE_FCHMOD 1 + +/* Define to 1 if you have the `fchmodat' function. */ +#define HAVE_FCHMODAT 1 + +/* Define to 1 if you have the `fchown' function. */ +#define HAVE_FCHOWN 1 + +/* Define to 1 if you have the `fchownat' function. */ +#define HAVE_FCHOWNAT 1 + +/* Use F_CLOSEM fcntl for closefrom */ +/* #undef HAVE_FCNTL_CLOSEM */ + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if the system has the type `fd_mask'. */ +#define HAVE_FD_MASK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_FEATURES_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_FLOATINGPOINT_H 1 + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fmt_scaled' function. */ +/* #undef HAVE_FMT_SCALED */ + +/* Define to 1 if you have the `freeaddrinfo' function. */ +#define HAVE_FREEADDRINFO 1 + +/* Define to 1 if you have the `freezero' function. */ +/* #undef HAVE_FREEZERO */ + +/* Define to 1 if the system has the type `fsblkcnt_t'. */ +#define HAVE_FSBLKCNT_T 1 + +/* Define to 1 if the system has the type `fsfilcnt_t'. */ +#define HAVE_FSFILCNT_T 1 + +/* Define to 1 if you have the `fstatfs' function. */ +#define HAVE_FSTATFS 1 + +/* Define to 1 if you have the `fstatvfs' function. */ +#define HAVE_FSTATVFS 1 + +/* Define to 1 if you have the `futimes' function. */ +#define HAVE_FUTIMES 1 + +/* Define to 1 if you have the `gai_strerror' function. */ +#define HAVE_GAI_STRERROR 1 + +/* Define to 1 if you have the `getaddrinfo' function. */ +#define HAVE_GETADDRINFO 1 + +/* Define to 1 if you have the `getaudit' function. */ +/* #undef HAVE_GETAUDIT */ + +/* Define to 1 if you have the `getaudit_addr' function. */ +/* #undef HAVE_GETAUDIT_ADDR */ + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getgrouplist' function. */ +#define HAVE_GETGROUPLIST 1 + +/* Define to 1 if you have the `getgrset' function. */ +/* #undef HAVE_GETGRSET */ + +/* Define to 1 if you have the `getlastlogxbyname' function. */ +/* #undef HAVE_GETLASTLOGXBYNAME */ + +/* Define to 1 if you have the `getline' function. */ +#define HAVE_GETLINE 1 + +/* Define to 1 if you have the `getluid' function. */ +/* #undef HAVE_GETLUID */ + +/* Define to 1 if you have the `getnameinfo' function. */ +#define HAVE_GETNAMEINFO 1 + +/* Define to 1 if you have the `getopt' function. */ +#define HAVE_GETOPT 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_GETOPT_H 1 + +/* Define if your getopt(3) defines and uses optreset */ +#define HAVE_GETOPT_OPTRESET 1 + +/* Define if your libraries define getpagesize() */ +#define HAVE_GETPAGESIZE 1 + +/* Define to 1 if you have the `getpeereid' function. */ +#define HAVE_GETPEEREID 1 + +/* Define to 1 if you have the `getpeerucred' function. */ +/* #undef HAVE_GETPEERUCRED */ + +/* Define to 1 if you have the `getpgid' function. */ +#define HAVE_GETPGID 1 + +/* Define to 1 if you have the `getpgrp' function. */ +#define HAVE_GETPGRP 1 + +/* Define to 1 if you have the `getpwanam' function. */ +/* #undef HAVE_GETPWANAM */ + +/* Define to 1 if you have the `getrandom' function. */ +#define HAVE_GETRANDOM 1 + +/* Define to 1 if you have the `getrlimit' function. */ +#define HAVE_GETRLIMIT 1 + +/* Define if getrrsetbyname() exists */ +/* #undef HAVE_GETRRSETBYNAME */ + +/* Define to 1 if you have the `getseuserbyname' function. */ +/* #undef HAVE_GETSEUSERBYNAME */ + +/* Define to 1 if you have the `getsid' function. */ +#define HAVE_GETSID 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +#define HAVE_GETTIMEOFDAY 1 + +/* Define to 1 if you have the `getttyent' function. */ +#define HAVE_GETTTYENT 1 + +/* Define to 1 if you have the `getutent' function. */ +/* #undef HAVE_GETUTENT */ + +/* Define to 1 if you have the `getutid' function. */ +/* #undef HAVE_GETUTID */ + +/* Define to 1 if you have the `getutline' function. */ +/* #undef HAVE_GETUTLINE */ + +/* Define to 1 if you have the `getutxent' function. */ +#define HAVE_GETUTXENT 1 + +/* Define to 1 if you have the `getutxid' function. */ +#define HAVE_GETUTXID 1 + +/* Define to 1 if you have the `getutxline' function. */ +#define HAVE_GETUTXLINE 1 + +/* Define to 1 if you have the `getutxuser' function. */ +#define HAVE_GETUTXUSER 1 + +/* Define to 1 if you have the `get_default_context_with_level' function. */ +/* #undef HAVE_GET_DEFAULT_CONTEXT_WITH_LEVEL */ + +/* Define to 1 if you have the `glob' function. */ +#define HAVE_GLOB 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_GLOB_H 1 + +/* Define to 1 if you have the `group_from_gid' function. */ +#define HAVE_GROUP_FROM_GID 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_GENERIC_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_GSSAPI_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GSSAPI_KRB5_H */ + +/* Define if HEADER.ad exists in arpa/nameser.h */ +#define HAVE_HEADER_AD 1 + +/* Define to 1 if you have the `HMAC_CTX_init' function. */ +/* #undef HAVE_HMAC_CTX_INIT */ + +/* Define if you have ut_host in utmp.h */ +/* #undef HAVE_HOST_IN_UTMP */ + +/* Define if you have ut_host in utmpx.h */ +#define HAVE_HOST_IN_UTMPX 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_IAF_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_IA_H */ + +/* Define if you have ut_id in utmp.h */ +/* #undef HAVE_ID_IN_UTMP */ + +/* Define if you have ut_id in utmpx.h */ +#define HAVE_ID_IN_UTMPX 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_IFADDRS_H 1 + +/* Define to 1 if you have the `inet_aton' function. */ +#define HAVE_INET_ATON 1 + +/* Define to 1 if you have the `inet_ntoa' function. */ +#define HAVE_INET_NTOA 1 + +/* Define to 1 if you have the `inet_ntop' function. */ +#define HAVE_INET_NTOP 1 + +/* Define to 1 if you have the `innetgr' function. */ +#define HAVE_INNETGR 1 + +/* define if you have int64_t data type */ +#define HAVE_INT64_T 1 + +/* Define to 1 if the system has the type `intmax_t'. */ +#define HAVE_INTMAX_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* define if you have intxx_t data type */ +#define HAVE_INTXX_T 1 + +/* Define to 1 if the system has the type `in_addr_t'. */ +#define HAVE_IN_ADDR_T 1 + +/* Define to 1 if the system has the type `in_port_t'. */ +#define HAVE_IN_PORT_T 1 + +/* Define if you have isblank(3C). */ +#define HAVE_ISBLANK 1 + +/* Define to 1 if you have the `krb5_cc_new_unique' function. */ +/* #undef HAVE_KRB5_CC_NEW_UNIQUE */ + +/* Define to 1 if you have the `krb5_free_error_message' function. */ +/* #undef HAVE_KRB5_FREE_ERROR_MESSAGE */ + +/* Define to 1 if you have the `krb5_get_error_message' function. */ +/* #undef HAVE_KRB5_GET_ERROR_MESSAGE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LANGINFO_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LASTLOG_H */ + +/* Define if you want ldns support */ +/* #undef HAVE_LDNS */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LIBAUDIT_H */ + +/* Define to 1 if you have the `bsm' library (-lbsm). */ +/* #undef HAVE_LIBBSM */ + +/* Define to 1 if you have the `crypt' library (-lcrypt). */ +/* #undef HAVE_LIBCRYPT */ + +/* Define to 1 if you have the `dl' library (-ldl). */ +#define HAVE_LIBDL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBGEN_H 1 + +/* Define if system has libiaf that supports set_id */ +/* #undef HAVE_LIBIAF */ + +/* Define to 1 if you have the `network' library (-lnetwork). */ +/* #undef HAVE_LIBNETWORK */ + +/* Define to 1 if you have the `pam' library (-lpam). */ +#define HAVE_LIBPAM 1 + +/* Define to 1 if you have the `socket' library (-lsocket). */ +/* #undef HAVE_LIBSOCKET */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIBUTIL_H 1 + +/* Define to 1 if you have the `xnet' library (-lxnet). */ +/* #undef HAVE_LIBXNET */ + +/* Define to 1 if you have the `z' library (-lz). */ +#define HAVE_LIBZ 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LINUX_AUDIT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LINUX_FILTER_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LINUX_IF_TUN_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LINUX_SECCOMP_H */ + +/* Define to 1 if you have the `llabs' function. */ +#define HAVE_LLABS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LOCALE_H 1 + +/* Define to 1 if you have the `login' function. */ +/* #undef HAVE_LOGIN */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LOGIN_CAP_H 1 + +/* Define to 1 if you have the `login_getcapbool' function. */ +#define HAVE_LOGIN_GETCAPBOOL 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_LOGIN_H */ + +/* Define to 1 if you have the `logout' function. */ +/* #undef HAVE_LOGOUT */ + +/* Define to 1 if you have the `logwtmp' function. */ +/* #undef HAVE_LOGWTMP */ + +/* Define to 1 if the system has the type `long double'. */ +#define HAVE_LONG_DOUBLE 1 + +/* Define to 1 if the system has the type `long long'. */ +#define HAVE_LONG_LONG 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MAILLOCK_H */ + +/* Define to 1 if your system has a GNU libc compatible `malloc' function, and + to 0 otherwise. */ +#define HAVE_MALLOC 1 + +/* Define to 1 if you have the `mblen' function. */ +#define HAVE_MBLEN 1 + +/* Define to 1 if you have the `mbtowc' function. */ +#define HAVE_MBTOWC 1 + +/* Define to 1 if you have the `md5_crypt' function. */ +/* #undef HAVE_MD5_CRYPT */ + +/* Define if you want to allow MD5 passwords */ +/* #undef HAVE_MD5_PASSWORDS */ + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `memset_s' function. */ +#define HAVE_MEMSET_S 1 + +/* Define to 1 if you have the `mkdtemp' function. */ +#define HAVE_MKDTEMP 1 + +/* define if you have mode_t data type */ +#define HAVE_MODE_T 1 + +/* Some systems put nanosleep outside of libc */ +#define HAVE_NANOSLEEP 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_NETDB_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_NETGROUP_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_NET_IF_TUN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_NET_ROUTE_H 1 + +/* Define if you are on NeXT */ +/* #undef HAVE_NEXT */ + +/* Define to 1 if you have the `ngetaddrinfo' function. */ +/* #undef HAVE_NGETADDRINFO */ + +/* Define to 1 if you have the `nl_langinfo' function. */ +#define HAVE_NL_LANGINFO 1 + +/* Define to 1 if you have the `nsleep' function. */ +/* #undef HAVE_NSLEEP */ + +/* Define to 1 if you have the `ogetaddrinfo' function. */ +/* #undef HAVE_OGETADDRINFO */ + +/* Define if you have an old version of PAM which takes only one argument to + pam_strerror */ +/* #undef HAVE_OLD_PAM */ + +/* Define to 1 if you have the `openlog_r' function. */ +/* #undef HAVE_OPENLOG_R */ + +/* Define to 1 if you have the `openpty' function. */ +#define HAVE_OPENPTY 1 + +/* as a macro */ +#define HAVE_OPENSSL_ADD_ALL_ALGORITHMS 1 + +/* Define to 1 if you have the `OPENSSL_init_crypto' function. */ +#define HAVE_OPENSSL_INIT_CRYPTO 1 + +/* Define to 1 if you have the `OpenSSL_version' function. */ +#define HAVE_OPENSSL_VERSION 1 + +/* Define to 1 if you have the `OpenSSL_version_num' function. */ +#define HAVE_OPENSSL_VERSION_NUM 1 + +/* Define if you have Digital Unix Security Integration Architecture */ +/* #undef HAVE_OSF_SIA */ + +/* Define to 1 if you have the `pam_getenvlist' function. */ +#define HAVE_PAM_GETENVLIST 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_PAM_PAM_APPL_H */ + +/* Define to 1 if you have the `pam_putenv' function. */ +#define HAVE_PAM_PUTENV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_PATHS_H 1 + +/* Define if you have ut_pid in utmp.h */ +/* #undef HAVE_PID_IN_UTMP */ + +/* define if you have pid_t data type */ +#define HAVE_PID_T 1 + +/* Define to 1 if you have the `pledge' function. */ +/* #undef HAVE_PLEDGE */ + +/* Define to 1 if you have the `poll' function. */ +#define HAVE_POLL 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_POLL_H 1 + +/* Define to 1 if you have the `prctl' function. */ +/* #undef HAVE_PRCTL */ + +/* Define to 1 if you have the `priv_basicset' function. */ +/* #undef HAVE_PRIV_BASICSET */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_PRIV_H */ + +/* Define if you have /proc/$pid/fd */ +/* #undef HAVE_PROC_PID */ + +/* Define to 1 if you have the `pstat' function. */ +/* #undef HAVE_PSTAT */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_PTY_H */ + +/* Define to 1 if you have the `pututline' function. */ +/* #undef HAVE_PUTUTLINE */ + +/* Define to 1 if you have the `pututxline' function. */ +#define HAVE_PUTUTXLINE 1 + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `readpassphrase' function. */ +#define HAVE_READPASSPHRASE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_READPASSPHRASE_H 1 + +/* Define to 1 if your system has a GNU libc compatible `realloc' function, + and to 0 otherwise. */ +#define HAVE_REALLOC 1 + +/* Define to 1 if you have the `reallocarray' function. */ +#define HAVE_REALLOCARRAY 1 + +/* Define to 1 if you have the `realpath' function. */ +#define HAVE_REALPATH 1 + +/* Define to 1 if you have the `recallocarray' function. */ +/* #undef HAVE_RECALLOCARRAY */ + +/* Define to 1 if you have the `recvmsg' function. */ +#define HAVE_RECVMSG 1 + +/* sys/resource.h has RLIMIT_NPROC */ +#define HAVE_RLIMIT_NPROC /**/ + +/* Define to 1 if you have the header file. */ +#define HAVE_RPC_TYPES_H 1 + +/* Define to 1 if you have the `rresvport_af' function. */ +#define HAVE_RRESVPORT_AF 1 + +/* Define to 1 if you have the `RSA_generate_key_ex' function. */ +#define HAVE_RSA_GENERATE_KEY_EX 1 + +/* Define to 1 if you have the `RSA_get0_crt_params' function. */ +#define HAVE_RSA_GET0_CRT_PARAMS 1 + +/* Define to 1 if you have the `RSA_get0_factors' function. */ +#define HAVE_RSA_GET0_FACTORS 1 + +/* Define to 1 if you have the `RSA_get0_key' function. */ +#define HAVE_RSA_GET0_KEY 1 + +/* Define to 1 if you have the `RSA_get_default_method' function. */ +#define HAVE_RSA_GET_DEFAULT_METHOD 1 + +/* Define to 1 if you have the `RSA_meth_dup' function. */ +#define HAVE_RSA_METH_DUP 1 + +/* Define to 1 if you have the `RSA_meth_free' function. */ +#define HAVE_RSA_METH_FREE 1 + +/* Define to 1 if you have the `RSA_meth_get_finish' function. */ +#define HAVE_RSA_METH_GET_FINISH 1 + +/* Define to 1 if you have the `RSA_meth_set1_name' function. */ +#define HAVE_RSA_METH_SET1_NAME 1 + +/* Define to 1 if you have the `RSA_meth_set_finish' function. */ +#define HAVE_RSA_METH_SET_FINISH 1 + +/* Define to 1 if you have the `RSA_meth_set_priv_dec' function. */ +#define HAVE_RSA_METH_SET_PRIV_DEC 1 + +/* Define to 1 if you have the `RSA_meth_set_priv_enc' function. */ +#define HAVE_RSA_METH_SET_PRIV_ENC 1 + +/* Define to 1 if you have the `RSA_set0_crt_params' function. */ +#define HAVE_RSA_SET0_CRT_PARAMS 1 + +/* Define to 1 if you have the `RSA_set0_factors' function. */ +#define HAVE_RSA_SET0_FACTORS 1 + +/* Define to 1 if you have the `RSA_set0_key' function. */ +#define HAVE_RSA_SET0_KEY 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SANDBOX_H */ + +/* Define to 1 if you have the `sandbox_init' function. */ +/* #undef HAVE_SANDBOX_INIT */ + +/* define if you have sa_family_t data type */ +#define HAVE_SA_FAMILY_T 1 + +/* Define to 1 if you have the `scan_scaled' function. */ +/* #undef HAVE_SCAN_SCALED */ + +/* Define if you have SecureWare-based protected password database */ +/* #undef HAVE_SECUREWARE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SECURITY_PAM_APPL_H 1 + +/* Define to 1 if you have the `sendmsg' function. */ +#define HAVE_SENDMSG 1 + +/* Define to 1 if you have the `setauthdb' function. */ +/* #undef HAVE_SETAUTHDB */ + +/* Define to 1 if you have the `setdtablesize' function. */ +/* #undef HAVE_SETDTABLESIZE */ + +/* Define to 1 if you have the `setegid' function. */ +#define HAVE_SETEGID 1 + +/* Define to 1 if you have the `setenv' function. */ +#define HAVE_SETENV 1 + +/* Define to 1 if you have the `seteuid' function. */ +#define HAVE_SETEUID 1 + +/* Define to 1 if you have the `setgroupent' function. */ +#define HAVE_SETGROUPENT 1 + +/* Define to 1 if you have the `setgroups' function. */ +#define HAVE_SETGROUPS 1 + +/* Define to 1 if you have the `setlinebuf' function. */ +#define HAVE_SETLINEBUF 1 + +/* Define to 1 if you have the `setlogin' function. */ +#define HAVE_SETLOGIN 1 + +/* Define to 1 if you have the `setluid' function. */ +/* #undef HAVE_SETLUID */ + +/* Define to 1 if you have the `setpassent' function. */ +#define HAVE_SETPASSENT 1 + +/* Define to 1 if you have the `setpcred' function. */ +/* #undef HAVE_SETPCRED */ + +/* Define to 1 if you have the `setpflags' function. */ +/* #undef HAVE_SETPFLAGS */ + +/* Define to 1 if you have the `setppriv' function. */ +/* #undef HAVE_SETPPRIV */ + +/* Define to 1 if you have the `setproctitle' function. */ +#define HAVE_SETPROCTITLE 1 + +/* Define to 1 if you have the `setregid' function. */ +#define HAVE_SETREGID 1 + +/* Define to 1 if you have the `setresgid' function. */ +#define HAVE_SETRESGID 1 + +/* Define to 1 if you have the `setresuid' function. */ +#define HAVE_SETRESUID 1 + +/* Define to 1 if you have the `setreuid' function. */ +#define HAVE_SETREUID 1 + +/* Define to 1 if you have the `setrlimit' function. */ +#define HAVE_SETRLIMIT 1 + +/* Define to 1 if you have the `setsid' function. */ +#define HAVE_SETSID 1 + +/* Define to 1 if you have the `setutent' function. */ +/* #undef HAVE_SETUTENT */ + +/* Define to 1 if you have the `setutxdb' function. */ +#define HAVE_SETUTXDB 1 + +/* Define to 1 if you have the `setutxent' function. */ +#define HAVE_SETUTXENT 1 + +/* Define to 1 if you have the `setvbuf' function. */ +#define HAVE_SETVBUF 1 + +/* Define to 1 if you have the `set_id' function. */ +/* #undef HAVE_SET_ID */ + +/* Define to 1 if you have the `SHA256_Update' function. */ +#define HAVE_SHA256_UPDATE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SHA2_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SHADOW_H */ + +/* Define to 1 if you have the `sigaction' function. */ +#define HAVE_SIGACTION 1 + +/* Define to 1 if you have the `sigvec' function. */ +#define HAVE_SIGVEC 1 + +/* Define to 1 if the system has the type `sig_atomic_t'. */ +#define HAVE_SIG_ATOMIC_T 1 + +/* define if you have size_t data type */ +#define HAVE_SIZE_T 1 + +/* Define to 1 if you have the `snprintf' function. */ +#define HAVE_SNPRINTF 1 + +/* Define to 1 if you have the `socketpair' function. */ +#define HAVE_SOCKETPAIR 1 + +/* Have PEERCRED socket option */ +/* #undef HAVE_SO_PEERCRED */ + +/* define if you have ssize_t data type */ +#define HAVE_SSIZE_T 1 + +/* Fields in struct sockaddr_storage */ +#define HAVE_SS_FAMILY_IN_SS 1 + +/* Define to 1 if you have the `statfs' function. */ +#define HAVE_STATFS 1 + +/* Define to 1 if you have the `statvfs' function. */ +#define HAVE_STATVFS 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDDEF_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `strcasestr' function. */ +#define HAVE_STRCASESTR 1 + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror' function. */ +#define HAVE_STRERROR 1 + +/* Define to 1 if you have the `strftime' function. */ +#define HAVE_STRFTIME 1 + +/* Silly mkstemp() */ +/* #undef HAVE_STRICT_MKSTEMP */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strlcat' function. */ +#define HAVE_STRLCAT 1 + +/* Define to 1 if you have the `strlcpy' function. */ +#define HAVE_STRLCPY 1 + +/* Define to 1 if you have the `strmode' function. */ +#define HAVE_STRMODE 1 + +/* Define to 1 if you have the `strndup' function. */ +#define HAVE_STRNDUP 1 + +/* Define to 1 if you have the `strnlen' function. */ +#define HAVE_STRNLEN 1 + +/* Define to 1 if you have the `strnvis' function. */ +#define HAVE_STRNVIS 1 + +/* Define to 1 if you have the `strptime' function. */ +#define HAVE_STRPTIME 1 + +/* Define to 1 if you have the `strsep' function. */ +#define HAVE_STRSEP 1 + +/* Define to 1 if you have the `strsignal' function. */ +#define HAVE_STRSIGNAL 1 + +/* Define to 1 if you have the `strtoll' function. */ +#define HAVE_STRTOLL 1 + +/* Define to 1 if you have the `strtonum' function. */ +#define HAVE_STRTONUM 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if you have the `strtoull' function. */ +#define HAVE_STRTOULL 1 + +/* define if you have struct addrinfo data type */ +#define HAVE_STRUCT_ADDRINFO 1 + +/* define if you have struct in6_addr data type */ +#define HAVE_STRUCT_IN6_ADDR 1 + +/* Define to 1 if `pw_change' is a member of `struct passwd'. */ +#define HAVE_STRUCT_PASSWD_PW_CHANGE 1 + +/* Define to 1 if `pw_class' is a member of `struct passwd'. */ +#define HAVE_STRUCT_PASSWD_PW_CLASS 1 + +/* Define to 1 if `pw_expire' is a member of `struct passwd'. */ +#define HAVE_STRUCT_PASSWD_PW_EXPIRE 1 + +/* Define to 1 if `pw_gecos' is a member of `struct passwd'. */ +#define HAVE_STRUCT_PASSWD_PW_GECOS 1 + +/* define if you have struct sockaddr_in6 data type */ +#define HAVE_STRUCT_SOCKADDR_IN6 1 + +/* Define to 1 if `sin6_scope_id' is a member of `struct sockaddr_in6'. */ +#define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1 + +/* define if you have struct sockaddr_storage data type */ +#define HAVE_STRUCT_SOCKADDR_STORAGE 1 + +/* Define to 1 if `f_flags' is a member of `struct statfs'. */ +/* #undef HAVE_STRUCT_STATFS_F_FLAGS */ + +/* Define to 1 if `st_blksize' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 + +/* Define to 1 if `st_mtim' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_MTIM 1 + +/* Define to 1 if `st_mtime' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_MTIME 1 + +/* Define to 1 if the system has the type `struct timespec'. */ +#define HAVE_STRUCT_TIMESPEC 1 + +/* define if you have struct timeval */ +#define HAVE_STRUCT_TIMEVAL 1 + +/* Define to 1 if you have the `swap32' function. */ +/* #undef HAVE_SWAP32 */ + +/* Define to 1 if you have the `sysconf' function. */ +#define HAVE_SYSCONF 1 + +/* Define if you have syslen in utmpx.h */ +/* #undef HAVE_SYSLEN_IN_UTMPX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_AUDIT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BITYPES_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BSDTTY_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_CAPSICUM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_CDEFS_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define if your system defines sys_errlist[] */ +#define HAVE_SYS_ERRLIST 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_FILE_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_LABEL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MMAN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_MOUNT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define if your system defines sys_nerr */ +#define HAVE_SYS_NERR 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_POLL_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_PRCTL_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_PSTAT_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_PTMS_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PTRACE_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_RANDOM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SELECT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STATVFS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STREAM_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STROPTS_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_STRTIO_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SYSCTL_H 1 + +/* Force use of sys/syslog.h on Ultrix */ +/* #undef HAVE_SYS_SYSLOG_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_SYSMACROS_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIMERS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_UN_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_VFS_H */ + +/* Define to 1 if you have the `tcgetpgrp' function. */ +#define HAVE_TCGETPGRP 1 + +/* Define to 1 if you have the `tcsendbreak' function. */ +#define HAVE_TCSENDBREAK 1 + +/* Define to 1 if you have the `time' function. */ +#define HAVE_TIME 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TIME_H 1 + +/* Define if you have ut_time in utmp.h */ +/* #undef HAVE_TIME_IN_UTMP */ + +/* Define if you have ut_time in utmpx.h */ +/* #undef HAVE_TIME_IN_UTMPX */ + +/* Define to 1 if you have the `timingsafe_bcmp' function. */ +#define HAVE_TIMINGSAFE_BCMP 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_TMPDIR_H */ + +/* Define to 1 if you have the `truncate' function. */ +#define HAVE_TRUNCATE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_TTYENT_H 1 + +/* Define if you have ut_tv in utmp.h */ +/* #undef HAVE_TV_IN_UTMP */ + +/* Define if you have ut_tv in utmpx.h */ +#define HAVE_TV_IN_UTMPX 1 + +/* Define if you have ut_type in utmp.h */ +/* #undef HAVE_TYPE_IN_UTMP */ + +/* Define if you have ut_type in utmpx.h */ +#define HAVE_TYPE_IN_UTMPX 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UCRED_H */ + +/* Define to 1 if the system has the type `uintmax_t'. */ +#define HAVE_UINTMAX_T 1 + +/* define if you have uintxx_t data type */ +#define HAVE_UINTXX_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the `unsetenv' function. */ +#define HAVE_UNSETENV 1 + +/* Define to 1 if the system has the type `unsigned long long'. */ +#define HAVE_UNSIGNED_LONG_LONG 1 + +/* Define to 1 if you have the `updwtmp' function. */ +/* #undef HAVE_UPDWTMP */ + +/* Define to 1 if you have the `updwtmpx' function. */ +/* #undef HAVE_UPDWTMPX */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_USERSEC_H */ + +/* Define to 1 if you have the `user_from_uid' function. */ +#define HAVE_USER_FROM_UID 1 + +/* Define to 1 if you have the `usleep' function. */ +#define HAVE_USLEEP 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UTIL_H */ + +/* Define to 1 if you have the `utimensat' function. */ +#define HAVE_UTIMENSAT 1 + +/* Define to 1 if you have the `utimes' function. */ +#define HAVE_UTIMES 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UTIME_H 1 + +/* Define to 1 if you have the `utmpname' function. */ +/* #undef HAVE_UTMPNAME */ + +/* Define to 1 if you have the `utmpxname' function. */ +/* #undef HAVE_UTMPXNAME */ + +/* Define to 1 if you have the header file. */ +#define HAVE_UTMPX_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UTMP_H */ + +/* define if you have u_char data type */ +#define HAVE_U_CHAR 1 + +/* define if you have u_int data type */ +#define HAVE_U_INT 1 + +/* define if you have u_int64_t data type */ +#define HAVE_U_INT64_T 1 + +/* define if you have u_intxx_t data type */ +#define HAVE_U_INTXX_T 1 + +/* Define to 1 if you have the `vasprintf' function. */ +#define HAVE_VASPRINTF 1 + +/* Define if va_copy exists */ +#define HAVE_VA_COPY 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_VIS_H 1 + +/* Define to 1 if you have the `vsnprintf' function. */ +#define HAVE_VSNPRINTF 1 + +/* Define to 1 if you have the `waitpid' function. */ +#define HAVE_WAITPID 1 + +/* Define to 1 if you have the `warn' function. */ +#define HAVE_WARN 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define to 1 if you have the `wcwidth' function. */ +#define HAVE_WCWIDTH 1 + +/* Define to 1 if you have the `_getlong' function. */ +#define HAVE__GETLONG 1 + +/* Define to 1 if you have the `_getpty' function. */ +/* #undef HAVE__GETPTY */ + +/* Define to 1 if you have the `_getshort' function. */ +#define HAVE__GETSHORT 1 + +/* Define if you have struct __res_state _res as an extern */ +#define HAVE__RES_EXTERN 1 + +/* Define to 1 if you have the `__b64_ntop' function. */ +#define HAVE___B64_NTOP 1 + +/* Define to 1 if you have the `__b64_pton' function. */ +#define HAVE___B64_PTON 1 + +/* Define if compiler implements __FUNCTION__ */ +#define HAVE___FUNCTION__ 1 + +/* Define if libc defines __progname */ +#define HAVE___PROGNAME 1 + +/* Fields in struct sockaddr_storage */ +/* #undef HAVE___SS_FAMILY_IN_SS */ + +/* Define if __va_copy exists */ +#define HAVE___VA_COPY 1 + +/* Define if compiler implements __func__ */ +#define HAVE___func__ 1 + +/* Define this if you are using the Heimdal version of Kerberos V5 */ +/* #undef HEIMDAL */ + +/* Define if you need to use IP address instead of hostname in $DISPLAY */ +/* #undef IPADDR_IN_DISPLAY */ + +/* Detect IPv4 in IPv6 mapped addresses and treat as IPv4 */ +/* #undef IPV4_IN_IPV6 */ + +/* Define if your system choked on IP TOS setting */ +/* #undef IP_TOS_IS_BROKEN */ + +/* Define if you want Kerberos 5 support */ +/* #undef KRB5 */ + +/* Define if pututxline updates lastlog too */ +/* #undef LASTLOG_WRITE_PUTUTXLINE */ + +/* Define if you want TCP Wrappers support */ +#define LIBWRAP 1 + +/* Define to whatever link() returns for "not supported" if it doesn't return + EOPNOTSUPP. */ +/* #undef LINK_OPNOTSUPP_ERRNO */ + +/* Adjust Linux out-of-memory killer */ +/* #undef LINUX_OOM_ADJUST */ + +/* max value of long long calculated by configure */ +/* #undef LLONG_MAX */ + +/* min value of long long calculated by configure */ +/* #undef LLONG_MIN */ + +/* Account locked with pw(1) */ +#define LOCKED_PASSWD_PREFIX "*LOCKED*" + +/* String used in /etc/passwd to denote locked account */ +/* #undef LOCKED_PASSWD_STRING */ + +/* String used in /etc/passwd to denote locked account */ +/* #undef LOCKED_PASSWD_SUBSTR */ + +/* Some systems need a utmpx entry for /bin/login to work */ +/* #undef LOGIN_NEEDS_UTMPX */ + +/* Set this to your mail directory if you do not have _PATH_MAILDIR */ +/* #undef MAIL_DIRECTORY */ + +/* Need setpgrp to acquire controlling tty */ +/* #undef NEED_SETPGRP */ + +/* compiler does not accept __attribute__ on prototype args */ +/* #undef NO_ATTRIBUTE_ON_PROTOTYPE_ARGS */ + +/* compiler does not accept __attribute__ on return types */ +/* #undef NO_ATTRIBUTE_ON_RETURN_TYPE */ + +/* Define to disable UID restoration test */ +/* #undef NO_UID_RESTORATION_TEST */ + +/* Define if X11 doesn't support AF_UNIX sockets on that system */ +/* #undef NO_X11_UNIX_SOCKETS */ + +/* Define if EVP_DigestUpdate returns void */ +/* #undef OPENSSL_EVP_DIGESTUPDATE_VOID */ + +/* OpenSSL has ECC */ +#define OPENSSL_HAS_ECC 1 + +/* libcrypto has NID_X9_62_prime256v1 */ +#define OPENSSL_HAS_NISTP256 1 + +/* libcrypto has NID_secp384r1 */ +#define OPENSSL_HAS_NISTP384 1 + +/* libcrypto has NID_secp521r1 */ +#define OPENSSL_HAS_NISTP521 1 + +/* libcrypto has EVP AES CTR */ +#define OPENSSL_HAVE_EVPCTR 1 + +/* libcrypto has EVP AES GCM */ +#define OPENSSL_HAVE_EVPGCM 1 + +/* libcrypto is missing AES 192 and 256 bit functions */ +/* #undef OPENSSL_LOBOTOMISED_AES */ + +/* Define if you want the OpenSSL internally seeded PRNG only */ +#define OPENSSL_PRNG_ONLY 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "openssh-unix-dev@mindrot.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "OpenSSH" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "OpenSSH Portable" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "openssh" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "Portable" + +/* Define if you are using Solaris-derived PAM which passes pam_messages to + the conversation function with an extra level of indirection */ +/* #undef PAM_SUN_CODEBASE */ + +/* Work around problematic Linux PAM modules handling of PAM_TTY */ +/* #undef PAM_TTY_KLUDGE */ + +/* must supply username to passwd */ +/* #undef PASSWD_NEEDS_USERNAME */ + +/* System dirs owned by bin (uid 2) */ +/* #undef PLATFORM_SYS_DIR_UID */ + +/* Port number of PRNGD/EGD random number socket */ +/* #undef PRNGD_PORT */ + +/* Location of PRNGD/EGD random number socket */ +/* #undef PRNGD_SOCKET */ + +/* read(1) can return 0 for a non-closed fd */ +/* #undef PTY_ZEROREAD */ + +/* Sandbox using capsicum */ +#define SANDBOX_CAPSICUM 1 + +/* Sandbox using Darwin sandbox_init(3) */ +/* #undef SANDBOX_DARWIN */ + +/* no privsep sandboxing */ +/* #undef SANDBOX_NULL */ + +/* Sandbox using pledge(2) */ +/* #undef SANDBOX_PLEDGE */ + +/* Sandbox using setrlimit(2) */ +/* #undef SANDBOX_RLIMIT */ + +/* Sandbox using seccomp filter */ +/* #undef SANDBOX_SECCOMP_FILTER */ + +/* setrlimit RLIMIT_FSIZE works */ +/* #undef SANDBOX_SKIP_RLIMIT_FSIZE */ + +/* define if setrlimit RLIMIT_NOFILE breaks things */ +#define SANDBOX_SKIP_RLIMIT_NOFILE 1 + +/* Sandbox using Solaris/Illumos privileges */ +/* #undef SANDBOX_SOLARIS */ + +/* Sandbox using systrace(4) */ +/* #undef SANDBOX_SYSTRACE */ + +/* Specify the system call convention in use */ +/* #undef SECCOMP_AUDIT_ARCH */ + +/* Define if your platform breaks doing a seteuid before a setuid */ +/* #undef SETEUID_BREAKS_SETUID */ + +/* The size of `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of `long int', as computed by sizeof. */ +#define SIZEOF_LONG_INT 8 + +/* The size of `long long int', as computed by sizeof. */ +#define SIZEOF_LONG_LONG_INT 8 + +/* The size of `short int', as computed by sizeof. */ +#define SIZEOF_SHORT_INT 2 + +/* Define as const if snprintf() can declare const char *fmt */ +#define SNPRINTF_CONST const + +/* Define to a Set Process Title type if your system is supported by + bsd-setproctitle.c */ +/* #undef SPT_TYPE */ + +/* Define if sshd somehow reacquires a controlling TTY after setsid() */ +/* #undef SSHD_ACQUIRES_CTTY */ + +/* sshd PAM service name */ +/* #undef SSHD_PAM_SERVICE */ + +/* Define if pam_chauthtok wants real uid set to the unpriv'ed user */ +/* #undef SSHPAM_CHAUTHTOK_NEEDS_RUID */ + +/* Use audit debugging module */ +/* #undef SSH_AUDIT_EVENTS */ + +/* Windows is sensitive to read buffer size */ +/* #undef SSH_IOBUFSZ */ + +/* non-privileged user for privilege separation */ +#define SSH_PRIVSEP_USER "sshd" + +/* Use tunnel device compatibility to OpenBSD */ +/* #undef SSH_TUN_COMPAT_AF */ + +/* Open tunnel devices the FreeBSD way */ +#define SSH_TUN_FREEBSD 1 + +/* Open tunnel devices the Linux tun/tap way */ +/* #undef SSH_TUN_LINUX */ + +/* No layer 2 tunnel support */ +/* #undef SSH_TUN_NO_L2 */ + +/* Open tunnel devices the OpenBSD way */ +/* #undef SSH_TUN_OPENBSD */ + +/* Prepend the address family to IP tunnel traffic */ +/* #undef SSH_TUN_PREPEND_AF */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define if you want a different $PATH for the superuser */ +/* #undef SUPERUSER_PATH */ + +/* syslog_r function is safe to use in in a signal handler */ +/* #undef SYSLOG_R_SAFE_IN_SIGHAND */ + +/* Support routing domains using Linux VRF */ +/* #undef SYS_RDOMAIN_LINUX */ + +/* Support passwords > 8 chars */ +/* #undef UNIXWARE_LONG_PASSWORDS */ + +/* Specify default $PATH */ +/* #undef USER_PATH */ + +/* Define this if you want to use libkafs' AFS support */ +/* #undef USE_AFS */ + +/* Use BSM audit module */ +/* #undef USE_BSM_AUDIT */ + +/* Use btmp to log bad logins */ +/* #undef USE_BTMP */ + +/* Use libedit for sftp */ +#define USE_LIBEDIT 1 + +/* Use Linux audit module */ +/* #undef USE_LINUX_AUDIT */ + +/* Enable OpenSSL engine support */ +#define USE_OPENSSL_ENGINE 1 + +/* Define if you want to enable PAM support */ +#define USE_PAM 1 + +/* Use PIPES instead of a socketpair() */ +/* #undef USE_PIPES */ + +/* Define if you have Solaris privileges */ +/* #undef USE_SOLARIS_PRIVS */ + +/* Define if you have Solaris process contracts */ +/* #undef USE_SOLARIS_PROCESS_CONTRACTS */ + +/* Define if you have Solaris projects */ +/* #undef USE_SOLARIS_PROJECTS */ + +/* Define if you shouldn't strip 'tty' from your ttyname in [uw]tmp */ +/* #undef WITH_ABBREV_NO_TTY */ + +/* Define if you want to enable AIX4's authenticate function */ +/* #undef WITH_AIXAUTHENTICATE */ + +/* Define if you have/want arrays (cluster-wide session management, not C + arrays) */ +/* #undef WITH_IRIX_ARRAY */ + +/* Define if you want IRIX audit trails */ +/* #undef WITH_IRIX_AUDIT */ + +/* Define if you want IRIX kernel jobs */ +/* #undef WITH_IRIX_JOBS */ + +/* Define if you want IRIX project management */ +/* #undef WITH_IRIX_PROJECT */ + +/* use libcrypto for cryptography */ +#define WITH_OPENSSL 1 + +/* Define if you want SELinux support. */ +/* #undef WITH_SELINUX */ + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define if xauth is found in your path */ +/* #undef XAUTH_PATH */ + +/* Enable large inode numbers on Mac OS X 10.5. */ +#ifndef _DARWIN_USE_64_BIT_INODE +# define _DARWIN_USE_64_BIT_INODE 1 +#endif + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* log for bad login attempts */ +/* #undef _PATH_BTMP */ + +/* Full path of your "passwd" program */ +#define _PATH_PASSWD_PROG "/usr/bin/passwd" + +/* Specify location of ssh.pid */ +#define _PATH_SSH_PIDDIR "/var/run" + +/* Define if we don't have struct __res_state in resolv.h */ +/* #undef __res_state */ + +/* Define to rpl_calloc if the replacement function should be used. */ +/* #undef calloc */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to rpl_malloc if the replacement function should be used. */ +/* #undef malloc */ + +/* Define to rpl_realloc if the replacement function should be used. */ +/* #undef realloc */ + +/* type to use in place of socklen_t if not defined */ +/* #undef socklen_t */ Index: crypto/openssh/configure.ac =================================================================== --- crypto/openssh/configure.ac +++ crypto/openssh/configure.ac @@ -1494,6 +1494,61 @@ AC_MSG_RESULT([no]) fi +# Check whether user wants TCP wrappers support +TCPW_MSG="no" +AC_ARG_WITH([tcp-wrappers], + [ --with-tcp-wrappers[[=PATH]] Enable tcpwrappers support (optionally in PATH)], + [ + if test "x$withval" != "xno" ; then + saved_LIBS="$LIBS" + saved_LDFLAGS="$LDFLAGS" + saved_CPPFLAGS="$CPPFLAGS" + if test -n "${withval}" && \ + test "x${withval}" != "xyes"; then + if test -d "${withval}/lib"; then + if test -n "${need_dash_r}"; then + LDFLAGS="-L${withval}/lib -R${withval}/lib ${LDFLAGS}" + else + LDFLAGS="-L${withval}/lib ${LDFLAGS}" + fi + else + if test -n "${need_dash_r}"; then + LDFLAGS="-L${withval} -R${withval} ${LDFLAGS}" + else + LDFLAGS="-L${withval} ${LDFLAGS}" + fi + fi + if test -d "${withval}/include"; then + CPPFLAGS="-I${withval}/include ${CPPFLAGS}" + else + CPPFLAGS="-I${withval} ${CPPFLAGS}" + fi + fi + LIBS="-lwrap $LIBS" + AC_MSG_CHECKING([for libwrap]) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ +#include +#include +#include +#include +int deny_severity = 0, allow_severity = 0; + ]], [[ + hosts_access(0); + ]])], [ + AC_MSG_RESULT([yes]) + AC_DEFINE([LIBWRAP], [1], + [Define if you want + TCP Wrappers support]) + SSHDLIBS="$SSHDLIBS -lwrap" + TCPW_MSG="yes" + ], [ + AC_MSG_ERROR([*** libwrap missing]) + ]) + LIBS="$saved_LIBS" + fi + ] +) + # Check whether user wants to use ldns LDNS_MSG="no" AC_ARG_WITH(ldns, @@ -5245,6 +5300,7 @@ echo " OSF SIA support: $SIA_MSG" echo " KerberosV support: $KRB5_MSG" echo " SELinux support: $SELINUX_MSG" +echo " TCP Wrappers support: $TCPW_MSG" echo " MD5 password support: $MD5_MSG" echo " libedit support: $LIBEDIT_MSG" echo " libldns support: $LDNS_MSG" Index: crypto/openssh/freebsd-configure.sh =================================================================== --- /dev/null +++ crypto/openssh/freebsd-configure.sh @@ -0,0 +1,43 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +configure_args=" + --prefix=/usr + --sysconfdir=/etc/ssh + --with-pam + --with-ssl-dir=/usr + --with-tcp-wrappers + --with-libedit + --with-ssl-engine + --without-xauth +" + +set -e + +openssh=$(dirname $(realpath $0)) +cd $openssh + +# Run autotools before we drop LOCALBASE out of PATH +(cd $openssh && libtoolize --copy && autoheader && autoconf) + +# Ensure we use the correct toolchain and clean our environment +export CC=$(echo ".include " | make -f /dev/stdin -VCC) +export CPP=$(echo ".include " | make -f /dev/stdin -VCPP) +unset CFLAGS CPPFLAGS LDFLAGS LD_LIBRARY_PATH LIBS +export PATH=/bin:/sbin:/usr/bin:/usr/sbin + +# Generate config.h with krb5 and stash it +sh configure $configure_args --with-kerberos5=/usr +mv config.log config.log.orig +mv config.h config.h.orig + +# Generate config.h without krb5 +sh configure $configure_args --without-kerberos5 + +# Extract the difference +echo '/* $Free''BSD$ */' > krb5_config.h +diff -u config.h.orig config.h | + sed -n '/^-#define/s/^-//p' | + grep -Ff /dev/stdin config.h.orig >> krb5_config.h Index: crypto/openssh/freebsd-namespace.sh =================================================================== --- /dev/null +++ crypto/openssh/freebsd-namespace.sh @@ -0,0 +1,84 @@ +#!/bin/sh +# +# Namespace munging inspired by an equivalent hack in NetBSD's tree: add +# the "Fssh_" prefix to every symbol in libssh which doesn't already have +# it. This prevents collisions between symbols in libssh and symbols in +# other libraries or applications which link with libssh, either directly +# or indirectly (e.g. through PAM loading pam_ssh). +# +# $FreeBSD$ +# + +set -e + +eval "unset $(env | sed -nE 's/^(LC_[A-Z]+)=.*$/\1/p')" +export LANG=C + +error() { + echo "$@" >&2 + exit 1 +} + +# Locate the source directories +self=$(realpath ${0}) +srcdir=${self%/*} +header=${srcdir}/ssh_namespace.h +top_srcdir=${srcdir%/crypto/openssh} +libssh_srcdir=${top_srcdir}/secure/lib/libssh + +if [ ! -d ${srcdir} -o \ + ! -f ${header} -o \ + ! -d ${libssh_srcdir} -o \ + ! -f ${libssh_srcdir}/Makefile ] ; then + error "Where is the libssh Makefile?" +fi + +ncpu=$(sysctl -n hw.ncpu) +ssh_make() { + make -C${libssh_srcdir} -j$((ncpu + 1)) "$@" +} + +# Clear out, recreate and locate the libssh build directory +ssh_make cleandir +ssh_make cleandir +ssh_make obj +libssh_builddir=$(realpath $(ssh_make -V.OBJDIR)) +libssh=libprivatessh.a + +# Clear the existing header +cat >${header} <>${header} + +# Clean and rebuild the library +ssh_make clean +ssh_make ${libssh} + +# Double-check +nm ${libssh_builddir}/${libssh} | awk ' + /^[0-9a-z]+ [Tt] [A-Za-z_][0-9A-Za-z_]*$/ && $3 !~ /^Fssh_/ { + printf("ERROR: %s was not renamed!\n", $3); + err++; + } + END { + if (err > 0) + exit(1); + } +' Index: crypto/openssh/freebsd-post-merge.sh =================================================================== --- /dev/null +++ crypto/openssh/freebsd-post-merge.sh @@ -0,0 +1,14 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +xargs perl -n -i -e ' + print; + s/\$(Id|OpenBSD): [^\$]*/\$FreeBSD/ && print; +' keywords +:>rcsid +svn list -R | grep -v '/$' | \ +while read f ; do + svn proplist -v $f | grep -q 'FreeBSD=%H' || continue + egrep -l '^(#|\.\\"|/\*)[[:space:]]+\$FreeBSD[:\$]' $f >>keywords + egrep -l '__RCSID\("\$FreeBSD[:\$]' $f >>rcsid +done +sort -u keywords rcsid | xargs perl -n -i -e ' + $strip = $ARGV if /\$(Id|OpenBSD):.*\$/; + print unless (($strip eq $ARGV || /__RCSID/) && /\$FreeBSD[:\$]/); +' Index: crypto/openssh/krb5_config.h =================================================================== --- /dev/null +++ crypto/openssh/krb5_config.h @@ -0,0 +1,11 @@ +/* $FreeBSD$ */ +#define GSSAPI 1 +#define HAVE_DECL_GSS_C_NT_HOSTBASED_SERVICE 1 +#define HAVE_GSSAPI_GSSAPI_H 1 +#define HAVE_GSSAPI_GSSAPI_KRB5_H 1 +#define HAVE_GSSAPI_H 1 +#define HAVE_KRB5_CC_NEW_UNIQUE 1 +#define HAVE_KRB5_FREE_ERROR_MESSAGE 1 +#define HAVE_KRB5_GET_ERROR_MESSAGE 1 +#define HEIMDAL 1 +#define KRB5 1 Index: crypto/openssh/misc.c =================================================================== --- crypto/openssh/misc.c +++ crypto/openssh/misc.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include Index: crypto/openssh/monitor.h =================================================================== --- crypto/openssh/monitor.h +++ crypto/openssh/monitor.h @@ -53,7 +53,8 @@ MONITOR_REQ_GSSSTEP = 44, MONITOR_ANS_GSSSTEP = 45, MONITOR_REQ_GSSUSEROK = 46, MONITOR_ANS_GSSUSEROK = 47, MONITOR_REQ_GSSCHECKMIC = 48, MONITOR_ANS_GSSCHECKMIC = 49, - MONITOR_REQ_TERM = 50, + MONITOR_REQ_GETPWCLASS = 50, MONITOR_ANS_GETPWCLASS = 51, + MONITOR_REQ_TERM = 52, MONITOR_REQ_PAM_START = 100, MONITOR_REQ_PAM_ACCOUNT = 102, MONITOR_ANS_PAM_ACCOUNT = 103, Index: crypto/openssh/monitor.c =================================================================== --- crypto/openssh/monitor.c +++ crypto/openssh/monitor.c @@ -114,6 +114,9 @@ int mm_answer_moduli(struct ssh *, int, struct sshbuf *); int mm_answer_sign(struct ssh *, int, struct sshbuf *); +#ifdef HAVE_LOGIN_CAP +int mm_answer_login_getpwclass(int, struct sshbuf *); +#endif int mm_answer_pwnamallow(struct ssh *, int, struct sshbuf *); int mm_answer_auth2_read_banner(struct ssh *, int, struct sshbuf *); int mm_answer_authserv(struct ssh *, int, struct sshbuf *); @@ -193,6 +196,9 @@ {MONITOR_REQ_MODULI, MON_ONCE, mm_answer_moduli}, #endif {MONITOR_REQ_SIGN, MON_ONCE, mm_answer_sign}, +#ifdef HAVE_LOGIN_CAP + {MONITOR_REQ_GETPWCLASS, MON_ISAUTH, mm_answer_login_getpwclass}, +#endif {MONITOR_REQ_PWNAM, MON_ONCE, mm_answer_pwnamallow}, {MONITOR_REQ_AUTHSERV, MON_ONCE, mm_answer_authserv}, {MONITOR_REQ_AUTH2_READ_BANNER, MON_ONCE, mm_answer_auth2_read_banner}, @@ -710,6 +716,48 @@ return (0); } +#ifdef HAVE_LOGIN_CAP +int +mm_answer_login_getpwclass(int sock, struct sshbuf *m) +{ + login_cap_t *lc; + struct passwd *pw; + int r; + u_int len; + + debug3("%s", __func__); + + pw = sshbuf_get_passwd(m); + if (pw == NULL) + fatal("%s: receive get struct passwd failed", __func__); + + lc = login_getpwclass(pw); + + sshbuf_reset(m); + + if (lc == NULL) { + if (r = sshbuf_put_u8(m, 0) != 0) + fatal("%s: buffer error: %s", __func__, ssh_err(r)); + goto out; + } + + if ((r = sshbuf_put_u8(m, 1)) != 0 || + (r = sshbuf_put_cstring(m, lc->lc_class)) != 0 || + (r = sshbuf_put_cstring(m, lc->lc_cap)) != 0 || + (r = sshbuf_put_cstring(m, lc->lc_style)) != 0) + fatal("%s: buffer error: %s", __func__, ssh_err(r)); + + login_close(lc); + out: + debug3("%s: sending MONITOR_ANS_GETPWCLASS", __func__); + mm_request_send(sock, MONITOR_ANS_GETPWCLASS, m); + + sshbuf_free_passwd(pw); + + return (0); +} +#endif + /* Retrieves the password entry and also checks if the user is permitted */ int @@ -747,19 +795,8 @@ authctxt->pw = pwent; authctxt->valid = 1; - /* XXX don't sent pwent to unpriv; send fake class/dir/shell too */ if ((r = sshbuf_put_u8(m, 1)) != 0 || - (r = sshbuf_put_string(m, pwent, sizeof(*pwent))) != 0 || - (r = sshbuf_put_cstring(m, pwent->pw_name)) != 0 || - (r = sshbuf_put_cstring(m, "*")) != 0 || -#ifdef HAVE_STRUCT_PASSWD_PW_GECOS - (r = sshbuf_put_cstring(m, pwent->pw_gecos)) != 0 || -#endif -#ifdef HAVE_STRUCT_PASSWD_PW_CLASS - (r = sshbuf_put_cstring(m, pwent->pw_class)) != 0 || -#endif - (r = sshbuf_put_cstring(m, pwent->pw_dir)) != 0 || - (r = sshbuf_put_cstring(m, pwent->pw_shell)) != 0) + (r = sshbuf_put_passwd(m, pwent)) != 0) fatal("%s: buffer error: %s", __func__, ssh_err(r)); out: Index: crypto/openssh/monitor_wrap.h =================================================================== --- crypto/openssh/monitor_wrap.h +++ crypto/openssh/monitor_wrap.h @@ -46,6 +46,10 @@ const u_char *, size_t, const char *, u_int compat); void mm_inform_authserv(char *, char *); struct passwd *mm_getpwnamallow(struct ssh *, const char *); +#ifdef HAVE_LOGIN_CAP +struct login_cap *mm_login_getpwclass(const struct passwd *pwd); +void mm_login_close(struct login_cap *lc); +#endif char *mm_auth2_read_banner(void); int mm_auth_password(struct ssh *, char *); int mm_key_allowed(enum mm_keytype, const char *, const char *, struct sshkey *, Index: crypto/openssh/monitor_wrap.c =================================================================== --- crypto/openssh/monitor_wrap.c +++ crypto/openssh/monitor_wrap.c @@ -243,6 +243,61 @@ return (0); } +#ifdef HAVE_LOGIN_CAP +login_cap_t * +mm_login_getpwclass(const struct passwd *pwent) +{ + int r; + struct sshbuf *m; + char rc; + login_cap_t *lc; + + debug3("%s entering", __func__); + + if ((m = sshbuf_new()) == NULL) + fatal("%s: sshbuf_new failed", __func__); + if ((r = sshbuf_put_passwd(m, pwent)) != 0) + fatal("%s: buffer error: %s", __func__, ssh_err(r)); + + mm_request_send(pmonitor->m_recvfd, MONITOR_REQ_GETPWCLASS, m); + + debug3("%s: waiting for MONITOR_ANS_GETPWCLASS", __func__); + mm_request_receive_expect(pmonitor->m_recvfd, MONITOR_ANS_GETPWCLASS, m); + + if ((r = sshbuf_get_u8(m, &rc)) != 0) + fatal("%s: buffer error: %s", __func__, ssh_err(r)); + + if (rc == 0) { + lc = NULL; + goto out; + } + + lc = xmalloc(sizeof(*lc)); + if ((r = sshbuf_get_cstring(m, &lc->lc_class, NULL)) != 0 || + (r = sshbuf_get_cstring(m, &lc->lc_cap, NULL)) != 0 || + (r = sshbuf_get_cstring(m, &lc->lc_style, NULL)) != 0) + fatal("%s: buffer error: %s", __func__, ssh_err(r)); + + out: + sshbuf_free(m); + + return (lc); +} +#endif + +#ifdef HAVE_LOGIN_CAP +void +mm_login_close(login_cap_t *lc) +{ + if (lc == NULL) + return; + free(lc->lc_style); + free(lc->lc_class); + free(lc->lc_cap); + free(lc); +} +#endif + struct passwd * mm_getpwnamallow(struct ssh *ssh, const char *username) { @@ -274,25 +329,9 @@ goto out; } - /* XXX don't like passing struct passwd like this */ - pw = xcalloc(sizeof(*pw), 1); - if ((r = sshbuf_get_string_direct(m, &p, &len)) != 0) - fatal("%s: buffer error: %s", __func__, ssh_err(r)); - if (len != sizeof(*pw)) - fatal("%s: struct passwd size mismatch", __func__); - memcpy(pw, p, sizeof(*pw)); - - if ((r = sshbuf_get_cstring(m, &pw->pw_name, NULL)) != 0 || - (r = sshbuf_get_cstring(m, &pw->pw_passwd, NULL)) != 0 || -#ifdef HAVE_STRUCT_PASSWD_PW_GECOS - (r = sshbuf_get_cstring(m, &pw->pw_gecos, NULL)) != 0 || -#endif -#ifdef HAVE_STRUCT_PASSWD_PW_CLASS - (r = sshbuf_get_cstring(m, &pw->pw_class, NULL)) != 0 || -#endif - (r = sshbuf_get_cstring(m, &pw->pw_dir, NULL)) != 0 || - (r = sshbuf_get_cstring(m, &pw->pw_shell, NULL)) != 0) - fatal("%s: buffer error: %s", __func__, ssh_err(r)); + pw = sshbuf_get_passwd(m); + if (pw == NULL) + fatal("%s: receive get struct passwd failed", __func__); out: /* copy options block as a Match directive may have changed some */ Index: crypto/openssh/mux.c =================================================================== --- crypto/openssh/mux.c +++ crypto/openssh/mux.c @@ -18,6 +18,7 @@ /* ssh session multiplexing support */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include Index: crypto/openssh/myproposal.h =================================================================== --- crypto/openssh/myproposal.h +++ crypto/openssh/myproposal.h @@ -1,4 +1,5 @@ /* $OpenBSD: myproposal.h,v 1.58 2019/02/23 08:20:43 djm Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. @@ -116,7 +117,8 @@ #define KEX_SERVER_ENCRYPT \ "chacha20-poly1305@openssh.com," \ "aes128-ctr,aes192-ctr,aes256-ctr" \ - AESGCM_CIPHER_MODES + AESGCM_CIPHER_MODES \ + ",aes128-cbc,aes192-cbc,aes256-cbc" #define KEX_CLIENT_ENCRYPT KEX_SERVER_ENCRYPT Index: crypto/openssh/packet.c =================================================================== --- crypto/openssh/packet.c +++ crypto/openssh/packet.c @@ -38,6 +38,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include "openbsd-compat/sys-queue.h" @@ -93,6 +94,7 @@ #include "packet.h" #include "ssherr.h" #include "sshbuf.h" +#include "blacklist_client.h" #ifdef PACKET_DEBUG #define DBG(x) x @@ -1841,6 +1843,7 @@ case SSH_ERR_NO_KEX_ALG_MATCH: case SSH_ERR_NO_HOSTKEY_ALG_MATCH: if (ssh && ssh->kex && ssh->kex->failed_choice) { + BLACKLIST_NOTIFY(ssh, BLACKLIST_AUTH_FAIL, "ssh"); ssh_packet_clear_keys(ssh); logdie("Unable to negotiate with %s: %s. " "Their offer: %s", remote_id, ssh_err(r), Index: crypto/openssh/pathnames.h =================================================================== --- crypto/openssh/pathnames.h +++ crypto/openssh/pathnames.h @@ -1,4 +1,5 @@ /* $OpenBSD: pathnames.h,v 1.28 2018/02/23 15:58:37 markus Exp $ */ +/* $FreeBSD$ */ /* * Author: Tatu Ylonen @@ -119,7 +120,7 @@ * Default location of askpass */ #ifndef _PATH_SSH_ASKPASS_DEFAULT -#define _PATH_SSH_ASKPASS_DEFAULT "/usr/X11R6/bin/ssh-askpass" +#define _PATH_SSH_ASKPASS_DEFAULT "/usr/local/bin/ssh-askpass" #endif /* Location of ssh-keysign for hostbased authentication */ @@ -134,7 +135,7 @@ /* xauth for X11 forwarding */ #ifndef _PATH_XAUTH -#define _PATH_XAUTH "/usr/X11R6/bin/xauth" +#define _PATH_XAUTH "/usr/local/bin/xauth" #endif /* UNIX domain socket for X11 server; displaynum will replace %u */ Index: crypto/openssh/readconf.h =================================================================== --- crypto/openssh/readconf.h +++ crypto/openssh/readconf.h @@ -1,4 +1,5 @@ /* $OpenBSD: readconf.h,v 1.129 2018/11/23 05:08:07 djm Exp $ */ +/* $FreeBSD$ */ /* * Author: Tatu Ylonen @@ -160,6 +161,8 @@ char *hostbased_key_types; char *pubkey_key_types; + char *version_addendum; /* Appended to SSH banner */ + char *jump_user; char *jump_host; int jump_port; Index: crypto/openssh/readconf.c =================================================================== --- crypto/openssh/readconf.c +++ crypto/openssh/readconf.c @@ -13,8 +13,12 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include +#ifdef VMWARE_GUEST_WORKAROUND +#include +#endif #include #include #include @@ -67,6 +71,7 @@ #include "uidswap.h" #include "myproposal.h" #include "digest.h" +#include "version.h" /* Format of the configuration file: @@ -143,6 +148,7 @@ typedef enum { oBadOption, + oVersionAddendum, oHost, oMatch, oInclude, oForwardAgent, oForwardX11, oForwardX11Trusted, oForwardX11Timeout, oGatewayPorts, oExitOnForwardFailure, @@ -311,6 +317,14 @@ { "ignoreunknown", oIgnoreUnknown }, { "proxyjump", oProxyJump }, + { "hpndisabled", oDeprecated }, + { "hpnbuffersize", oDeprecated }, + { "tcprcvbufpoll", oDeprecated }, + { "tcprcvbuf", oDeprecated }, + { "noneenabled", oUnsupported }, + { "noneswitch", oUnsupported }, + { "versionaddendum", oVersionAddendum }, + { NULL, oBadOption } }; @@ -323,7 +337,7 @@ add_local_forward(Options *options, const struct Forward *newfwd) { struct Forward *fwd; - int i; + int i, ipport_reserved; /* Don't add duplicates */ for (i = 0; i < options->num_local_forwards; i++) { @@ -1600,6 +1614,22 @@ multistate_ptr = multistate_requesttty; goto parse_multistate; + case oVersionAddendum: + if (s == NULL) + fatal("%.200s line %d: Missing argument.", filename, + linenum); + len = strspn(s, WHITESPACE); + if (*activep && options->version_addendum == NULL) { + if (strcasecmp(s + len, "none") == 0) + options->version_addendum = xstrdup(""); + else if (strchr(s + len, '\r') != NULL) + fatal("%.200s line %d: Invalid argument", + filename, linenum); + else + options->version_addendum = xstrdup(s + len); + } + return 0; + case oIgnoreUnknown: charptr = &options->ignored_unknown; goto parse_string; @@ -1839,6 +1869,7 @@ initialize_options(Options * options) { memset(options, 'X', sizeof(*options)); + options->version_addendum = NULL; options->forward_agent = -1; options->forward_x11 = -1; options->forward_x11_trusted = -1; @@ -1964,6 +1995,15 @@ { char *all_cipher, *all_mac, *all_kex, *all_key, *all_sig; int r; +#ifdef VMWARE_GUEST_WORKAROUND + char scval[7]; /* "vmware\0" */ + size_t scsiz = sizeof(scval); + int vmwguest = 0; + + if (sysctlbyname("kern.vm_guest", scval, &scsiz, NULL, 0) == 0 && + strcmp(scval, "vmware") == 0) + vmwguest = 1; +#endif if (options->forward_agent == -1) options->forward_agent = 0; @@ -2011,7 +2051,7 @@ if (options->batch_mode == -1) options->batch_mode = 0; if (options->check_host_ip == -1) - options->check_host_ip = 1; + options->check_host_ip = 0; if (options->strict_host_key_checking == -1) options->strict_host_key_checking = SSH_STRICT_HOSTKEY_ASK; if (options->compression == -1) @@ -2067,8 +2107,14 @@ options->rekey_limit = 0; if (options->rekey_interval == -1) options->rekey_interval = 0; +#if HAVE_LDNS + if (options->verify_host_key_dns == -1) + /* automatically trust a verified SSHFP record */ + options->verify_host_key_dns = 1; +#else if (options->verify_host_key_dns == -1) options->verify_host_key_dns = 0; +#endif if (options->server_alive_interval == -1) options->server_alive_interval = 0; if (options->server_alive_count_max == -1) @@ -2092,8 +2138,18 @@ if (options->visual_host_key == -1) options->visual_host_key = 0; if (options->ip_qos_interactive == -1) +#ifdef VMWARE_GUEST_WORKAROUND + if (vmwguest) + options->ip_qos_interactive = IPTOS_LOWDELAY; + else +#endif options->ip_qos_interactive = IPTOS_DSCP_AF21; if (options->ip_qos_bulk == -1) +#ifdef VMWARE_GUEST_WORKAROUND + if (vmwguest) + options->ip_qos_bulk = IPTOS_THROUGHPUT; + else +#endif options->ip_qos_bulk = IPTOS_DSCP_CS1; if (options->request_tty == -1) options->request_tty = REQUEST_TTY_AUTO; @@ -2159,6 +2215,8 @@ /* options->hostname will be set in the main program if appropriate */ /* options->host_key_alias should not be set by default */ /* options->preferred_authentications will be set in ssh */ + if (options->version_addendum == NULL) + options->version_addendum = xstrdup(SSH_VERSION_FREEBSD); } struct fwdarg { Index: crypto/openssh/sandbox-capsicum.c =================================================================== --- crypto/openssh/sandbox-capsicum.c +++ crypto/openssh/sandbox-capsicum.c @@ -15,6 +15,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #ifdef SANDBOX_CAPSICUM @@ -30,6 +31,7 @@ #include #include #include +#include #include "log.h" #include "monitor.h" @@ -70,6 +72,8 @@ struct rlimit rl_zero; cap_rights_t rights; + caph_cache_tzdata(); + rl_zero.rlim_cur = rl_zero.rlim_max = 0; if (setrlimit(RLIMIT_FSIZE, &rl_zero) == -1) Index: crypto/openssh/servconf.h =================================================================== --- crypto/openssh/servconf.h +++ crypto/openssh/servconf.h @@ -211,6 +211,7 @@ int fingerprint_hash; int expose_userauth_info; u_int64_t timing_secret; + int use_blacklist; } ServerOptions; /* Information about the incoming connection as used by Match */ Index: crypto/openssh/servconf.c =================================================================== --- crypto/openssh/servconf.c +++ crypto/openssh/servconf.c @@ -12,6 +12,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -64,6 +65,7 @@ #include "auth.h" #include "myproposal.h" #include "digest.h" +#include "version.h" static void add_listen_addr(ServerOptions *, const char *, const char *, int); @@ -180,6 +182,7 @@ options->fingerprint_hash = -1; options->disable_forwarding = -1; options->expose_userauth_info = -1; + options->use_blacklist = -1; } /* Returns 1 if a string option is unset or set to "none" or 0 otherwise. */ @@ -246,12 +249,16 @@ array_append2(file, line, directive, array, NULL, lp, s, 0); } +static const char *defaultkey = "[default]"; + void servconf_add_hostkey(const char *file, const int line, ServerOptions *options, const char *path, int userprovided) { char *apath = derelativise_path(path); + if (file == defaultkey && access(path, R_OK) != 0) + return; array_append2(file, line, "HostKey", &options->host_key_files, &options->host_key_file_userprovided, &options->num_host_key_files, apath, userprovided); @@ -276,24 +283,28 @@ /* Portable-specific options */ if (options->use_pam == -1) - options->use_pam = 0; + options->use_pam = 1; /* Standard Options */ if (options->num_host_key_files == 0) { /* fill default hostkeys for protocols */ - servconf_add_hostkey("[default]", 0, options, + servconf_add_hostkey(defaultkey, 0, options, _PATH_HOST_RSA_KEY_FILE, 0); + servconf_add_hostkey(defaultkey, 0, options, + _PATH_HOST_DSA_KEY_FILE, 0); #ifdef OPENSSL_HAS_ECC - servconf_add_hostkey("[default]", 0, options, + servconf_add_hostkey(defaultkey, 0, options, _PATH_HOST_ECDSA_KEY_FILE, 0); #endif - servconf_add_hostkey("[default]", 0, options, + servconf_add_hostkey(defaultkey, 0, options, _PATH_HOST_ED25519_KEY_FILE, 0); #ifdef WITH_XMSS - servconf_add_hostkey("[default]", 0, options, + servconf_add_hostkey(defaultkey, 0, options, _PATH_HOST_XMSS_KEY_FILE, 0); #endif /* WITH_XMSS */ } + if (options->num_host_key_files == 0) + fatal("No host key files found"); /* No certificates by default */ if (options->num_ports == 0) options->ports[options->num_ports++] = SSH_DEFAULT_PORT; @@ -306,7 +317,7 @@ if (options->login_grace_time == -1) options->login_grace_time = 120; if (options->permit_root_login == PERMIT_NOT_SET) - options->permit_root_login = PERMIT_NO_PASSWD; + options->permit_root_login = PERMIT_NO; if (options->ignore_rhosts == -1) options->ignore_rhosts = 1; if (options->ignore_user_known_hosts == -1) @@ -316,7 +327,7 @@ if (options->print_lastlog == -1) options->print_lastlog = 1; if (options->x11_forwarding == -1) - options->x11_forwarding = 0; + options->x11_forwarding = 1; if (options->x11_display_offset == -1) options->x11_display_offset = 10; if (options->x11_use_localhost == -1) @@ -356,7 +367,7 @@ if (options->gss_strict_acceptor == -1) options->gss_strict_acceptor = 1; if (options->password_authentication == -1) - options->password_authentication = 1; + options->password_authentication = 0; if (options->kbd_interactive_authentication == -1) options->kbd_interactive_authentication = 0; if (options->challenge_response_authentication == -1) @@ -392,17 +403,17 @@ if (options->max_sessions == -1) options->max_sessions = DEFAULT_SESSIONS_MAX; if (options->use_dns == -1) - options->use_dns = 0; + options->use_dns = 1; if (options->client_alive_interval == -1) options->client_alive_interval = 0; if (options->client_alive_count_max == -1) options->client_alive_count_max = 3; if (options->num_authkeys_files == 0) { - array_append("[default]", 0, "AuthorizedKeysFiles", + array_append(defaultkey, 0, "AuthorizedKeysFiles", &options->authorized_keys_files, &options->num_authkeys_files, _PATH_SSH_USER_PERMITTED_KEYS); - array_append("[default]", 0, "AuthorizedKeysFiles", + array_append(defaultkey, 0, "AuthorizedKeysFiles", &options->authorized_keys_files, &options->num_authkeys_files, _PATH_SSH_USER_PERMITTED_KEYS2); @@ -414,7 +425,7 @@ if (options->ip_qos_bulk == -1) options->ip_qos_bulk = IPTOS_DSCP_CS1; if (options->version_addendum == NULL) - options->version_addendum = xstrdup(""); + options->version_addendum = xstrdup(SSH_VERSION_FREEBSD); if (options->fwd_opts.streamlocal_bind_mask == (mode_t)-1) options->fwd_opts.streamlocal_bind_mask = 0177; if (options->fwd_opts.streamlocal_bind_unlink == -1) @@ -425,6 +436,8 @@ options->disable_forwarding = 0; if (options->expose_userauth_info == -1) options->expose_userauth_info = 0; + if (options->use_blacklist == -1) + options->use_blacklist = 0; assemble_algorithms(options); @@ -510,6 +523,7 @@ sStreamLocalBindMask, sStreamLocalBindUnlink, sAllowStreamLocalForwarding, sFingerprintHash, sDisableForwarding, sExposeAuthInfo, sRDomain, + sUseBlacklist, sDeprecated, sIgnore, sUnsupported } ServerOpCodes; @@ -658,6 +672,11 @@ { "exposeauthinfo", sExposeAuthInfo, SSHCFG_ALL }, { "rdomain", sRDomain, SSHCFG_ALL }, { "casignaturealgorithms", sCASignatureAlgorithms, SSHCFG_ALL }, + { "useblacklist", sUseBlacklist, SSHCFG_GLOBAL }, + { "noneenabled", sUnsupported, SSHCFG_ALL }, + { "hpndisabled", sDeprecated, SSHCFG_ALL }, + { "hpnbuffersize", sDeprecated, SSHCFG_ALL }, + { "tcprcvbufpoll", sDeprecated, SSHCFG_ALL }, { NULL, sBadOption, 0 } }; @@ -2167,6 +2186,10 @@ *charptr = xstrdup(arg); break; + case sUseBlacklist: + intptr = &options->use_blacklist; + goto parse_flag; + case sDeprecated: case sIgnore: case sUnsupported: @@ -2606,6 +2629,7 @@ dump_cfg_fmtint(sStreamLocalBindUnlink, o->fwd_opts.streamlocal_bind_unlink); dump_cfg_fmtint(sFingerprintHash, o->fingerprint_hash); dump_cfg_fmtint(sExposeAuthInfo, o->expose_userauth_info); + dump_cfg_fmtint(sUseBlacklist, o->use_blacklist); /* string arguments */ dump_cfg_string(sPidFile, o->pid_file); Index: crypto/openssh/session.c =================================================================== --- crypto/openssh/session.c +++ crypto/openssh/session.c @@ -34,6 +34,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -990,6 +991,9 @@ struct passwd *pw = s->pw; #if !defined (HAVE_LOGIN_CAP) && !defined (HAVE_CYGWIN) char *path = NULL; +#else + extern char **environ; + char **senv, **var, *val; #endif /* Initialize the environment. */ @@ -1011,6 +1015,9 @@ } #endif + if (getenv("TZ")) + child_set_env(&env, &envsize, "TZ", getenv("TZ")); + #ifdef GSSAPI /* Allow any GSSAPI methods that we've used to alter * the childs environment as they see fit @@ -1028,11 +1035,30 @@ child_set_env(&env, &envsize, "LOGIN", pw->pw_name); #endif child_set_env(&env, &envsize, "HOME", pw->pw_dir); + snprintf(buf, sizeof buf, "%.200s/%.50s", _PATH_MAILDIR, pw->pw_name); + child_set_env(&env, &envsize, "MAIL", buf); #ifdef HAVE_LOGIN_CAP - if (setusercontext(lc, pw, pw->pw_uid, LOGIN_SETPATH) < 0) - child_set_env(&env, &envsize, "PATH", _PATH_STDPATH); - else - child_set_env(&env, &envsize, "PATH", getenv("PATH")); + child_set_env(&env, &envsize, "PATH", _PATH_STDPATH); + child_set_env(&env, &envsize, "TERM", "su"); + /* + * Temporarily swap out our real environment with an empty one, + * let setusercontext() apply any environment variables defined + * for the user's login class, copy those variables to the child, + * free the temporary environment, and restore the original. + */ + senv = environ; + environ = xmalloc(sizeof(*environ)); + *environ = NULL; + (void)setusercontext(lc, pw, pw->pw_uid, LOGIN_SETENV|LOGIN_SETPATH); + for (var = environ; *var != NULL; ++var) { + if ((val = strchr(*var, '=')) != NULL) { + *val++ = '\0'; + child_set_env(&env, &envsize, *var, val); + } + free(*var); + } + free(environ); + environ = senv; #else /* HAVE_LOGIN_CAP */ # ifndef HAVE_CYGWIN /* @@ -1057,12 +1083,9 @@ _PATH_MAILDIR, pw->pw_name); child_set_env(&env, &envsize, "MAIL", buf); } - /* Normal systems set SHELL by default. */ child_set_env(&env, &envsize, "SHELL", shell); - if (getenv("TZ")) - child_set_env(&env, &envsize, "TZ", getenv("TZ")); if (s->term) child_set_env(&env, &envsize, "TERM", s->term); if (s->display) @@ -1271,7 +1294,8 @@ do_nologin(struct passwd *pw) { FILE *f = NULL; - char buf[1024], *nl, *def_nl = _PATH_NOLOGIN; + const char *nl; + char buf[1024], *def_nl = _PATH_NOLOGIN; struct stat sb; #ifdef HAVE_LOGIN_CAP @@ -1283,11 +1307,8 @@ return; nl = def_nl; #endif - if (stat(nl, &sb) == -1) { - if (nl != def_nl) - free(nl); + if (stat(nl, &sb) == -1) return; - } /* /etc/nologin exists. Print its contents if we can and exit. */ logit("User %.100s not allowed because %s exists", pw->pw_name, nl); @@ -1365,7 +1386,7 @@ if (platform_privileged_uidswap()) { #ifdef HAVE_LOGIN_CAP if (setusercontext(lc, pw, pw->pw_uid, - (LOGIN_SETALL & ~(LOGIN_SETPATH|LOGIN_SETUSER))) < 0) { + (LOGIN_SETALL & ~(LOGIN_SETENV|LOGIN_SETPATH|LOGIN_SETUSER))) < 0) { perror("unable to set user context"); exit(1); } Index: crypto/openssh/sftp-common.c =================================================================== --- crypto/openssh/sftp-common.c +++ crypto/openssh/sftp-common.c @@ -25,6 +25,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include Index: crypto/openssh/ssh-agent.1 =================================================================== --- crypto/openssh/ssh-agent.1 +++ crypto/openssh/ssh-agent.1 @@ -1,4 +1,5 @@ .\" $OpenBSD: ssh-agent.1,v 1.64 2016/11/30 06:54:26 jmc Exp $ +.\" $FreeBSD$ .\" .\" Author: Tatu Ylonen .\" Copyright (c) 1995 Tatu Ylonen , Espoo, Finland @@ -43,7 +44,7 @@ .Sh SYNOPSIS .Nm ssh-agent .Op Fl c | s -.Op Fl \&Dd +.Op Fl \&Ddx .Op Fl a Ar bind_address .Op Fl E Ar fingerprint_hash .Op Fl P Ar pkcs11_whitelist @@ -148,6 +149,8 @@ .Xr ssh-add 1 overrides this value. Without this option the default maximum lifetime is forever. +.It Fl x +Exit after the last client has disconnected. .El .Pp If a command line is given, this is executed as a subprocess of the agent. Index: crypto/openssh/ssh-agent.c =================================================================== --- crypto/openssh/ssh-agent.c +++ crypto/openssh/ssh-agent.c @@ -35,6 +35,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -164,15 +165,34 @@ static int fingerprint_hash = SSH_FP_HASH_DEFAULT; +/* + * Client connection count; incremented in new_socket() and decremented in + * close_socket(). When it reaches 0, ssh-agent will exit. Since it is + * normally initialized to 1, it will never reach 0. However, if the -x + * option is specified, it is initialized to 0 in main(); in that case, + * ssh-agent will exit as soon as it has had at least one client but no + * longer has any. + */ +static int xcount = 1; + static void close_socket(SocketEntry *e) { + int last = 0; + + if (e->type == AUTH_CONNECTION) { + debug("xcount %d -> %d", xcount, xcount - 1); + if (--xcount == 0) + last = 1; + } close(e->fd); e->fd = -1; e->type = AUTH_UNUSED; sshbuf_free(e->input); sshbuf_free(e->output); sshbuf_free(e->request); + if (last) + cleanup_exit(0); } static void @@ -775,6 +795,10 @@ { u_int i, old_alloc, new_alloc; + if (type == AUTH_CONNECTION) { + debug("xcount %d -> %d", xcount, xcount + 1); + ++xcount; + } set_nonblock(fd); if (fd > max_fd) @@ -1070,7 +1094,7 @@ usage(void) { fprintf(stderr, - "usage: ssh-agent [-c | -s] [-Dd] [-a bind_address] [-E fingerprint_hash]\n" + "usage: ssh-agent [-c | -s] [-Ddx] [-a bind_address] [-E fingerprint_hash]\n" " [-P pkcs11_whitelist] [-t life] [command [arg ...]]\n" " ssh-agent [-c | -s] -k\n"); exit(1); @@ -1103,6 +1127,7 @@ /* drop */ setegid(getgid()); setgid(getgid()); + setuid(geteuid()); platform_disable_tracing(0); /* strict=no */ @@ -1112,7 +1137,7 @@ __progname = ssh_get_progname(av[0]); seed_rng(); - while ((ch = getopt(ac, av, "cDdksE:a:P:t:")) != -1) { + while ((ch = getopt(ac, av, "cDdksE:a:P:t:x")) != -1) { switch (ch) { case 'E': fingerprint_hash = ssh_digest_alg_by_name(optarg); @@ -1156,6 +1181,9 @@ usage(); } break; + case 'x': + xcount = 0; + break; default: usage(); } Index: crypto/openssh/ssh-gss.h =================================================================== --- crypto/openssh/ssh-gss.h +++ crypto/openssh/ssh-gss.h @@ -1,4 +1,5 @@ /* $OpenBSD: ssh-gss.h,v 1.14 2018/07/10 09:13:30 djm Exp $ */ +/* $FreeBSD$ */ /* * Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved. * @@ -28,10 +29,10 @@ #ifdef GSSAPI -#ifdef HAVE_GSSAPI_H -#include -#elif defined(HAVE_GSSAPI_GSSAPI_H) +#if defined(HAVE_GSSAPI_GSSAPI_H) #include +#elif defined(HAVE_GSSAPI_H) +#include #endif #ifdef KRB5 Index: crypto/openssh/ssh.1 =================================================================== --- crypto/openssh/ssh.1 +++ crypto/openssh/ssh.1 @@ -34,6 +34,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: ssh.1,v 1.402 2019/03/16 19:14:21 jmc Exp $ +.\" $FreeBSD$ .Dd $Mdocdate: March 16 2019 $ .Dt SSH 1 .Os @@ -547,6 +548,7 @@ .It User .It UserKnownHostsFile .It VerifyHostKeyDNS +.It VersionAddendum .It VisualHostKey .It XAuthLocation .El Index: crypto/openssh/ssh.c =================================================================== --- crypto/openssh/ssh.c +++ crypto/openssh/ssh.c @@ -41,6 +41,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #ifdef HAVE_SYS_STAT_H @@ -816,14 +817,14 @@ } break; case 'V': - fprintf(stderr, "%s, %s\n", - SSH_RELEASE, -#ifdef WITH_OPENSSL - OpenSSL_version(OPENSSL_VERSION) -#else - "without OpenSSL" -#endif - ); + if (options.version_addendum && + *options.version_addendum != '\0') + fprintf(stderr, "%s %s, %s\n", SSH_RELEASE, + options.version_addendum, + OPENSSL_VERSION_STRING); + else + fprintf(stderr, "%s, %s\n", SSH_RELEASE, + OPENSSL_VERSION_STRING); if (opt == 'V') exit(0); break; @@ -1081,13 +1082,8 @@ !use_syslog); if (debug_flag) - logit("%s, %s", SSH_RELEASE, -#ifdef WITH_OPENSSL - OpenSSL_version(OPENSSL_VERSION) -#else - "without OpenSSL" -#endif - ); + /* version_addendum is always NULL at this point */ + logit("%s, %s", SSH_RELEASE, OPENSSL_VERSION_STRING); /* Parse the configuration files */ process_config_files(host_arg, pw, 0, &want_final_pass); @@ -1281,6 +1277,23 @@ snprintf(uidstr, sizeof(uidstr), "%llu", (unsigned long long)pw->pw_uid); + /* Find canonic host name. */ + if (strchr(host, '.') == 0) { + struct addrinfo hints; + struct addrinfo *ai = NULL; + int errgai; + memset(&hints, 0, sizeof(hints)); + hints.ai_family = options.address_family; + hints.ai_flags = AI_CANONNAME; + hints.ai_socktype = SOCK_STREAM; + errgai = getaddrinfo(host, NULL, &hints, &ai); + if (errgai == 0) { + if (ai->ai_canonname != NULL) + host = xstrdup(ai->ai_canonname); + freeaddrinfo(ai); + } + } + if ((md = ssh_digest_start(SSH_DIGEST_SHA1)) == NULL || ssh_digest_update(md, thishost, strlen(thishost)) < 0 || ssh_digest_update(md, host, strlen(host)) < 0 || Index: crypto/openssh/ssh_config =================================================================== --- crypto/openssh/ssh_config +++ crypto/openssh/ssh_config @@ -1,4 +1,5 @@ # $OpenBSD: ssh_config,v 1.34 2019/02/04 02:39:42 dtucker Exp $ +# $FreeBSD$ # This is the ssh client system-wide configuration file. See # ssh_config(5) for more information. This file provides defaults for @@ -25,7 +26,7 @@ # GSSAPIAuthentication no # GSSAPIDelegateCredentials no # BatchMode no -# CheckHostIP yes +# CheckHostIP no # AddressFamily any # ConnectTimeout 0 # StrictHostKeyChecking ask @@ -43,3 +44,5 @@ # VisualHostKey no # ProxyCommand ssh -q -W %h:%p gateway.example.com # RekeyLimit 1G 1h +# VerifyHostKeyDNS yes +# VersionAddendum FreeBSD-20200214 Index: crypto/openssh/ssh_config.5 =================================================================== --- crypto/openssh/ssh_config.5 +++ crypto/openssh/ssh_config.5 @@ -34,6 +34,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: ssh_config.5,v 1.292 2019/03/01 02:16:47 djm Exp $ +.\" $FreeBSD$ .Dd $Mdocdate: March 1 2019 $ .Dt SSH_CONFIG 5 .Os @@ -405,8 +406,7 @@ .Cm no . .It Cm CheckHostIP If set to -.Cm yes -(the default), +.Cm yes , .Xr ssh 1 will additionally check the host IP address in the .Pa known_hosts @@ -419,6 +419,8 @@ If the option is set to .Cm no , the check will not be executed. +The default is +.Cm no . .It Cm Ciphers Specifies the ciphers allowed and their order of preference. Multiple ciphers must be comma-separated. @@ -1668,12 +1670,23 @@ .Cm StrictHostKeyChecking option. The default is -.Cm no . +.Cm yes +if compiled with LDNS and +.Cm no +otherwise. .Pp See also .Sx VERIFYING HOST KEYS in .Xr ssh 1 . +.It Cm VersionAddendum +Specifies a string to append to the regular version string to identify +OS- or site-specific modifications. +The default is +.Dq FreeBSD-20180909 . +The value +.Cm none +may be used to disable this. .It Cm VisualHostKey If this flag is set to .Cm yes , @@ -1690,7 +1703,7 @@ .Xr xauth 1 program. The default is -.Pa /usr/X11R6/bin/xauth . +.Pa /usr/local/bin/xauth . .El .Sh PATTERNS A Index: crypto/openssh/ssh_namespace.h =================================================================== --- /dev/null +++ crypto/openssh/ssh_namespace.h @@ -0,0 +1,864 @@ +/* + * This file was machine-generated. Do not edit manually. + * Run crypto/openssh/freebsd-namespace.sh to regenerate. + */ +#define Blowfish_decipher Fssh_Blowfish_decipher +#define Blowfish_encipher Fssh_Blowfish_encipher +#define Blowfish_expand0state Fssh_Blowfish_expand0state +#define Blowfish_expandstate Fssh_Blowfish_expandstate +#define Blowfish_initstate Fssh_Blowfish_initstate +#define Blowfish_stream2word Fssh_Blowfish_stream2word +#define EVP_CIPHER_CTX_get_iv Fssh_EVP_CIPHER_CTX_get_iv +#define EVP_CIPHER_CTX_set_iv Fssh_EVP_CIPHER_CTX_set_iv +#define _ssh__compat_glob Fssh__ssh__compat_glob +#define _ssh__compat_globfree Fssh__ssh__compat_globfree +#define _ssh_compat_realpath Fssh__ssh_compat_realpath +#define _ssh_exchange_banner Fssh__ssh_exchange_banner +#define _ssh_host_key_sign Fssh__ssh_host_key_sign +#define _ssh_host_private_key Fssh__ssh_host_private_key +#define _ssh_host_public_key Fssh__ssh_host_public_key +#define _ssh_order_hostkeyalgs Fssh__ssh_order_hostkeyalgs +#define _ssh_read_banner Fssh__ssh_read_banner +#define _ssh_send_banner Fssh__ssh_send_banner +#define _ssh_verify_host_key Fssh__ssh_verify_host_key +#define a2port Fssh_a2port +#define a2tun Fssh_a2tun +#define add_host_to_hostfile Fssh_add_host_to_hostfile +#define add_p1p1 Fssh_add_p1p1 +#define addargs Fssh_addargs +#define addr_match_cidr_list Fssh_addr_match_cidr_list +#define addr_match_list Fssh_addr_match_list +#define addr_netmask Fssh_addr_netmask +#define addr_netmatch Fssh_addr_netmatch +#define addr_pton_cidr Fssh_addr_pton_cidr +#define argv_assemble Fssh_argv_assemble +#define argv_split Fssh_argv_split +#define ask_permission Fssh_ask_permission +#define atoi_err Fssh_atoi_err +#define atomicio Fssh_atomicio +#define atomicio6 Fssh_atomicio6 +#define atomiciov Fssh_atomiciov +#define atomiciov6 Fssh_atomiciov6 +#define bandwidth_limit Fssh_bandwidth_limit +#define bandwidth_limit_init Fssh_bandwidth_limit_init +#define barrett_reduce Fssh_barrett_reduce +#define baud_to_speed Fssh_baud_to_speed +#define bcrypt_hash Fssh_bcrypt_hash +#define bcrypt_pbkdf Fssh_bcrypt_pbkdf +#define bitmap_clear_bit Fssh_bitmap_clear_bit +#define bitmap_free Fssh_bitmap_free +#define bitmap_from_string Fssh_bitmap_from_string +#define bitmap_nbits Fssh_bitmap_nbits +#define bitmap_nbytes Fssh_bitmap_nbytes +#define bitmap_new Fssh_bitmap_new +#define bitmap_set_bit Fssh_bitmap_set_bit +#define bitmap_test_bit Fssh_bitmap_test_bit +#define bitmap_to_string Fssh_bitmap_to_string +#define bitmap_zero Fssh_bitmap_zero +#define blf_cbc_decrypt Fssh_blf_cbc_decrypt +#define blf_cbc_encrypt Fssh_blf_cbc_encrypt +#define blf_dec Fssh_blf_dec +#define blf_ecb_decrypt Fssh_blf_ecb_decrypt +#define blf_ecb_encrypt Fssh_blf_ecb_encrypt +#define blf_enc Fssh_blf_enc +#define blf_key Fssh_blf_key +#define blob_section Fssh_blob_section +#define cert_free Fssh_cert_free +#define chacha_encrypt_bytes Fssh_chacha_encrypt_bytes +#define chacha_ivsetup Fssh_chacha_ivsetup +#define chacha_keysetup Fssh_chacha_keysetup +#define chachapoly_crypt Fssh_chachapoly_crypt +#define chachapoly_get_length Fssh_chachapoly_get_length +#define chachapoly_init Fssh_chachapoly_init +#define chan_ibuf_empty Fssh_chan_ibuf_empty +#define chan_is_dead Fssh_chan_is_dead +#define chan_mark_dead Fssh_chan_mark_dead +#define chan_obuf_empty Fssh_chan_obuf_empty +#define chan_rcvd_eow Fssh_chan_rcvd_eow +#define chan_rcvd_ieof Fssh_chan_rcvd_ieof +#define chan_rcvd_oclose Fssh_chan_rcvd_oclose +#define chan_read_failed Fssh_chan_read_failed +#define chan_send_eof2 Fssh_chan_send_eof2 +#define chan_shutdown_extended_read Fssh_chan_shutdown_extended_read +#define chan_shutdown_read Fssh_chan_shutdown_read +#define chan_shutdown_write Fssh_chan_shutdown_write +#define chan_write_failed Fssh_chan_write_failed +#define channel_add_permission Fssh_channel_add_permission +#define channel_after_select Fssh_channel_after_select +#define channel_by_id Fssh_channel_by_id +#define channel_by_remote_id Fssh_channel_by_remote_id +#define channel_cancel_cleanup Fssh_channel_cancel_cleanup +#define channel_cancel_lport_listener Fssh_channel_cancel_lport_listener +#define channel_cancel_rport_listener Fssh_channel_cancel_rport_listener +#define channel_clear_permission Fssh_channel_clear_permission +#define channel_close_all Fssh_channel_close_all +#define channel_close_fd Fssh_channel_close_fd +#define channel_connect_by_listen_address Fssh_channel_connect_by_listen_address +#define channel_connect_by_listen_path Fssh_channel_connect_by_listen_path +#define channel_connect_stdio_fwd Fssh_channel_connect_stdio_fwd +#define channel_connect_to_path Fssh_channel_connect_to_path +#define channel_connect_to_port Fssh_channel_connect_to_port +#define channel_decode_socks4 Fssh_channel_decode_socks4 +#define channel_decode_socks5 Fssh_channel_decode_socks5 +#define channel_disable_admin Fssh_channel_disable_admin +#define channel_find_open Fssh_channel_find_open +#define channel_format_extended_usage Fssh_channel_format_extended_usage +#define channel_free Fssh_channel_free +#define channel_free_all Fssh_channel_free_all +#define channel_fwd_bind_addr Fssh_channel_fwd_bind_addr +#define channel_handler Fssh_channel_handler +#define channel_init_channels Fssh_channel_init_channels +#define channel_input_data Fssh_channel_input_data +#define channel_input_extended_data Fssh_channel_input_extended_data +#define channel_input_ieof Fssh_channel_input_ieof +#define channel_input_oclose Fssh_channel_input_oclose +#define channel_input_open_confirmation Fssh_channel_input_open_confirmation +#define channel_input_open_failure Fssh_channel_input_open_failure +#define channel_input_status_confirm Fssh_channel_input_status_confirm +#define channel_input_window_adjust Fssh_channel_input_window_adjust +#define channel_lookup Fssh_channel_lookup +#define channel_new Fssh_channel_new +#define channel_not_very_much_buffered_data Fssh_channel_not_very_much_buffered_data +#define channel_open_message Fssh_channel_open_message +#define channel_output_poll Fssh_channel_output_poll +#define channel_parse_id Fssh_channel_parse_id +#define channel_permit_all Fssh_channel_permit_all +#define channel_post_auth_listener Fssh_channel_post_auth_listener +#define channel_post_connecting Fssh_channel_post_connecting +#define channel_post_mux_client Fssh_channel_post_mux_client +#define channel_post_mux_listener Fssh_channel_post_mux_listener +#define channel_post_open Fssh_channel_post_open +#define channel_post_port_listener Fssh_channel_post_port_listener +#define channel_post_x11_listener Fssh_channel_post_x11_listener +#define channel_pre_connecting Fssh_channel_pre_connecting +#define channel_pre_dynamic Fssh_channel_pre_dynamic +#define channel_pre_listener Fssh_channel_pre_listener +#define channel_pre_mux_client Fssh_channel_pre_mux_client +#define channel_pre_open Fssh_channel_pre_open +#define channel_pre_x11_open Fssh_channel_pre_x11_open +#define channel_prepare_select Fssh_channel_prepare_select +#define channel_proxy_downstream Fssh_channel_proxy_downstream +#define channel_proxy_upstream Fssh_channel_proxy_upstream +#define channel_register_cleanup Fssh_channel_register_cleanup +#define channel_register_fds Fssh_channel_register_fds +#define channel_register_filter Fssh_channel_register_filter +#define channel_register_open_confirm Fssh_channel_register_open_confirm +#define channel_register_status_confirm Fssh_channel_register_status_confirm +#define channel_request_remote_forwarding Fssh_channel_request_remote_forwarding +#define channel_request_rforward_cancel Fssh_channel_request_rforward_cancel +#define channel_request_start Fssh_channel_request_start +#define channel_send_open Fssh_channel_send_open +#define channel_send_window_changes Fssh_channel_send_window_changes +#define channel_set_af Fssh_channel_set_af +#define channel_set_fds Fssh_channel_set_fds +#define channel_set_x11_refuse_time Fssh_channel_set_x11_refuse_time +#define channel_setup_fwd_listener_streamlocal Fssh_channel_setup_fwd_listener_streamlocal +#define channel_setup_fwd_listener_tcpip Fssh_channel_setup_fwd_listener_tcpip +#define channel_setup_local_fwd_listener Fssh_channel_setup_local_fwd_listener +#define channel_setup_remote_fwd_listener Fssh_channel_setup_remote_fwd_listener +#define channel_still_open Fssh_channel_still_open +#define channel_stop_listening Fssh_channel_stop_listening +#define channel_update_permission Fssh_channel_update_permission +#define check_hostkeys_by_key_or_type Fssh_check_hostkeys_by_key_or_type +#define check_key_in_hostkeys Fssh_check_key_in_hostkeys +#define child_set_env Fssh_child_set_env +#define choose_dh Fssh_choose_dh +#define choose_t Fssh_choose_t +#define chop Fssh_chop +#define cipher_alg_list Fssh_cipher_alg_list +#define cipher_authlen Fssh_cipher_authlen +#define cipher_blocksize Fssh_cipher_blocksize +#define cipher_by_name Fssh_cipher_by_name +#define cipher_crypt Fssh_cipher_crypt +#define cipher_ctx_is_plaintext Fssh_cipher_ctx_is_plaintext +#define cipher_free Fssh_cipher_free +#define cipher_get_keyiv Fssh_cipher_get_keyiv +#define cipher_get_keyiv_len Fssh_cipher_get_keyiv_len +#define cipher_get_length Fssh_cipher_get_length +#define cipher_init Fssh_cipher_init +#define cipher_is_cbc Fssh_cipher_is_cbc +#define cipher_ivlen Fssh_cipher_ivlen +#define cipher_keylen Fssh_cipher_keylen +#define cipher_seclen Fssh_cipher_seclen +#define cipher_set_keyiv Fssh_cipher_set_keyiv +#define cipher_warning_message Fssh_cipher_warning_message +#define ciphers_valid Fssh_ciphers_valid +#define cleanhostname Fssh_cleanhostname +#define cleanup_exit Fssh_cleanup_exit +#define colon Fssh_colon +#define compare Fssh_compare +#define compare_gps Fssh_compare_gps +#define compat_cipher_proposal Fssh_compat_cipher_proposal +#define compat_datafellows Fssh_compat_datafellows +#define compat_kex_proposal Fssh_compat_kex_proposal +#define compat_pkalg_proposal Fssh_compat_pkalg_proposal +#define connect_next Fssh_connect_next +#define connect_to_helper Fssh_connect_to_helper +#define convtime Fssh_convtime +#define crypto_hash_sha512 Fssh_crypto_hash_sha512 +#define crypto_scalarmult_curve25519 Fssh_crypto_scalarmult_curve25519 +#define crypto_sign_ed25519 Fssh_crypto_sign_ed25519 +#define crypto_sign_ed25519_keypair Fssh_crypto_sign_ed25519_keypair +#define crypto_sign_ed25519_open Fssh_crypto_sign_ed25519_open +#define crypto_sign_ed25519_ref_double_scalarmult_vartime Fssh_crypto_sign_ed25519_ref_double_scalarmult_vartime +#define crypto_sign_ed25519_ref_fe25519_add Fssh_crypto_sign_ed25519_ref_fe25519_add +#define crypto_sign_ed25519_ref_fe25519_cmov Fssh_crypto_sign_ed25519_ref_fe25519_cmov +#define crypto_sign_ed25519_ref_fe25519_freeze Fssh_crypto_sign_ed25519_ref_fe25519_freeze +#define crypto_sign_ed25519_ref_fe25519_getparity Fssh_crypto_sign_ed25519_ref_fe25519_getparity +#define crypto_sign_ed25519_ref_fe25519_invert Fssh_crypto_sign_ed25519_ref_fe25519_invert +#define crypto_sign_ed25519_ref_fe25519_iseq_vartime Fssh_crypto_sign_ed25519_ref_fe25519_iseq_vartime +#define crypto_sign_ed25519_ref_fe25519_iszero Fssh_crypto_sign_ed25519_ref_fe25519_iszero +#define crypto_sign_ed25519_ref_fe25519_mul Fssh_crypto_sign_ed25519_ref_fe25519_mul +#define crypto_sign_ed25519_ref_fe25519_neg Fssh_crypto_sign_ed25519_ref_fe25519_neg +#define crypto_sign_ed25519_ref_fe25519_pack Fssh_crypto_sign_ed25519_ref_fe25519_pack +#define crypto_sign_ed25519_ref_fe25519_pow2523 Fssh_crypto_sign_ed25519_ref_fe25519_pow2523 +#define crypto_sign_ed25519_ref_fe25519_setone Fssh_crypto_sign_ed25519_ref_fe25519_setone +#define crypto_sign_ed25519_ref_fe25519_setzero Fssh_crypto_sign_ed25519_ref_fe25519_setzero +#define crypto_sign_ed25519_ref_fe25519_square Fssh_crypto_sign_ed25519_ref_fe25519_square +#define crypto_sign_ed25519_ref_fe25519_sub Fssh_crypto_sign_ed25519_ref_fe25519_sub +#define crypto_sign_ed25519_ref_fe25519_unpack Fssh_crypto_sign_ed25519_ref_fe25519_unpack +#define crypto_sign_ed25519_ref_isneutral_vartime Fssh_crypto_sign_ed25519_ref_isneutral_vartime +#define crypto_sign_ed25519_ref_pack Fssh_crypto_sign_ed25519_ref_pack +#define crypto_sign_ed25519_ref_sc25519_2interleave2 Fssh_crypto_sign_ed25519_ref_sc25519_2interleave2 +#define crypto_sign_ed25519_ref_sc25519_add Fssh_crypto_sign_ed25519_ref_sc25519_add +#define crypto_sign_ed25519_ref_sc25519_from32bytes Fssh_crypto_sign_ed25519_ref_sc25519_from32bytes +#define crypto_sign_ed25519_ref_sc25519_from64bytes Fssh_crypto_sign_ed25519_ref_sc25519_from64bytes +#define crypto_sign_ed25519_ref_sc25519_from_shortsc Fssh_crypto_sign_ed25519_ref_sc25519_from_shortsc +#define crypto_sign_ed25519_ref_sc25519_isshort_vartime Fssh_crypto_sign_ed25519_ref_sc25519_isshort_vartime +#define crypto_sign_ed25519_ref_sc25519_iszero_vartime Fssh_crypto_sign_ed25519_ref_sc25519_iszero_vartime +#define crypto_sign_ed25519_ref_sc25519_lt_vartime Fssh_crypto_sign_ed25519_ref_sc25519_lt_vartime +#define crypto_sign_ed25519_ref_sc25519_mul Fssh_crypto_sign_ed25519_ref_sc25519_mul +#define crypto_sign_ed25519_ref_sc25519_mul_shortsc Fssh_crypto_sign_ed25519_ref_sc25519_mul_shortsc +#define crypto_sign_ed25519_ref_sc25519_sub_nored Fssh_crypto_sign_ed25519_ref_sc25519_sub_nored +#define crypto_sign_ed25519_ref_sc25519_to32bytes Fssh_crypto_sign_ed25519_ref_sc25519_to32bytes +#define crypto_sign_ed25519_ref_sc25519_window3 Fssh_crypto_sign_ed25519_ref_sc25519_window3 +#define crypto_sign_ed25519_ref_sc25519_window5 Fssh_crypto_sign_ed25519_ref_sc25519_window5 +#define crypto_sign_ed25519_ref_scalarmult_base Fssh_crypto_sign_ed25519_ref_scalarmult_base +#define crypto_sign_ed25519_ref_shortsc25519_from16bytes Fssh_crypto_sign_ed25519_ref_shortsc25519_from16bytes +#define crypto_sign_ed25519_ref_unpackneg_vartime Fssh_crypto_sign_ed25519_ref_unpackneg_vartime +#define crypto_verify_32 Fssh_crypto_verify_32 +#define daemonized Fssh_daemonized +#define dangerous_locale Fssh_dangerous_locale +#define dbl_p1p1 Fssh_dbl_p1p1 +#define debug Fssh_debug +#define debug2 Fssh_debug2 +#define debug3 Fssh_debug3 +#define default_key_sign Fssh_default_key_sign +#define dh_estimate Fssh_dh_estimate +#define dh_gen_key Fssh_dh_gen_key +#define dh_new_group Fssh_dh_new_group +#define dh_new_group1 Fssh_dh_new_group1 +#define dh_new_group14 Fssh_dh_new_group14 +#define dh_new_group16 Fssh_dh_new_group16 +#define dh_new_group18 Fssh_dh_new_group18 +#define dh_new_group_asc Fssh_dh_new_group_asc +#define dh_new_group_fallback Fssh_dh_new_group_fallback +#define dh_pub_is_valid Fssh_dh_pub_is_valid +#define dispatch_protocol_error Fssh_dispatch_protocol_error +#define dispatch_protocol_ignore Fssh_dispatch_protocol_ignore +#define dns_read_key Fssh_dns_read_key +#define do_log Fssh_do_log +#define do_log2 Fssh_do_log2 +#define dump_base64 Fssh_dump_base64 +#define encode_constraints Fssh_encode_constraints +#define error Fssh_error +#define exited_cleanly Fssh_exited_cleanly +#define export_dns_rr Fssh_export_dns_rr +#define fatal Fssh_fatal +#define filter_list Fssh_filter_list +#define fingerprint_b64 Fssh_fingerprint_b64 +#define fingerprint_hex Fssh_fingerprint_hex +#define fmprintf Fssh_fmprintf +#define fmt_scaled Fssh_fmt_scaled +#define format_absolute_time Fssh_format_absolute_time +#define forward_equals Fssh_forward_equals +#define free_hostkeys Fssh_free_hostkeys +#define freeargs Fssh_freeargs +#define freerrset Fssh_freerrset +#define freezero Fssh_freezero +#define fwd_ident Fssh_fwd_ident +#define gen_candidates Fssh_gen_candidates +#define get_hram Fssh_get_hram +#define get_local_ipaddr Fssh_get_local_ipaddr +#define get_local_name Fssh_get_local_name +#define get_local_port Fssh_get_local_port +#define get_peer_ipaddr Fssh_get_peer_ipaddr +#define get_peer_port Fssh_get_peer_port +#define get_rdomain Fssh_get_rdomain +#define get_sock_port Fssh_get_sock_port +#define get_socket_address Fssh_get_socket_address +#define get_u16 Fssh_get_u16 +#define get_u32 Fssh_get_u32 +#define get_u32_le Fssh_get_u32_le +#define get_u64 Fssh_get_u64 +#define getrrsetbyname Fssh_getrrsetbyname +#define glob0 Fssh_glob0 +#define glob2 Fssh_glob2 +#define globexp1 Fssh_globexp1 +#define globextend Fssh_globextend +#define host_delete Fssh_host_delete +#define host_hash Fssh_host_hash +#define hostfile_read_key Fssh_hostfile_read_key +#define hostfile_replace_entries Fssh_hostfile_replace_entries +#define hostkeys_foreach Fssh_hostkeys_foreach +#define hpdelim Fssh_hpdelim +#define init_hostkeys Fssh_init_hostkeys +#define input_kex_c25519_init Fssh_input_kex_c25519_init +#define input_kex_c25519_reply Fssh_input_kex_c25519_reply +#define input_kex_dh Fssh_input_kex_dh +#define input_kex_dh_gex_group Fssh_input_kex_dh_gex_group +#define input_kex_dh_gex_init Fssh_input_kex_dh_gex_init +#define input_kex_dh_gex_reply Fssh_input_kex_dh_gex_reply +#define input_kex_dh_gex_request Fssh_input_kex_dh_gex_request +#define input_kex_dh_init Fssh_input_kex_dh_init +#define input_kex_ecdh_init Fssh_input_kex_ecdh_init +#define input_kex_ecdh_reply Fssh_input_kex_ecdh_reply +#define iptos2str Fssh_iptos2str +#define ipv64_normalise_mapped Fssh_ipv64_normalise_mapped +#define is_key_revoked Fssh_is_key_revoked +#define kex_alg_by_name Fssh_kex_alg_by_name +#define kex_alg_list Fssh_kex_alg_list +#define kex_assemble_names Fssh_kex_assemble_names +#define kex_buf2prop Fssh_kex_buf2prop +#define kex_c25519_hash Fssh_kex_c25519_hash +#define kex_derive_keys Fssh_kex_derive_keys +#define kex_derive_keys_bn Fssh_kex_derive_keys_bn +#define kex_dh_hash Fssh_kex_dh_hash +#define kex_ecdh_hash Fssh_kex_ecdh_hash +#define kex_free Fssh_kex_free +#define kex_free_newkeys Fssh_kex_free_newkeys +#define kex_input_ext_info Fssh_kex_input_ext_info +#define kex_input_kexinit Fssh_kex_input_kexinit +#define kex_input_newkeys Fssh_kex_input_newkeys +#define kex_names_cat Fssh_kex_names_cat +#define kex_names_valid Fssh_kex_names_valid +#define kex_new Fssh_kex_new +#define kex_prop2buf Fssh_kex_prop2buf +#define kex_prop_free Fssh_kex_prop_free +#define kex_protocol_error Fssh_kex_protocol_error +#define kex_send_kexinit Fssh_kex_send_kexinit +#define kex_send_newkeys Fssh_kex_send_newkeys +#define kex_setup Fssh_kex_setup +#define kex_start_rekex Fssh_kex_start_rekex +#define kexc25519_client Fssh_kexc25519_client +#define kexc25519_keygen Fssh_kexc25519_keygen +#define kexc25519_server Fssh_kexc25519_server +#define kexc25519_shared_key Fssh_kexc25519_shared_key +#define kexdh_client Fssh_kexdh_client +#define kexdh_server Fssh_kexdh_server +#define kexecdh_client Fssh_kexecdh_client +#define kexecdh_server Fssh_kexecdh_server +#define kexgex_client Fssh_kexgex_client +#define kexgex_hash Fssh_kexgex_hash +#define kexgex_server Fssh_kexgex_server +#define load_hostkeys Fssh_load_hostkeys +#define log_change_level Fssh_log_change_level +#define log_facility_name Fssh_log_facility_name +#define log_facility_number Fssh_log_facility_number +#define log_init Fssh_log_init +#define log_is_on_stderr Fssh_log_is_on_stderr +#define log_level_get Fssh_log_level_get +#define log_level_name Fssh_log_level_name +#define log_level_number Fssh_log_level_number +#define log_redirect_stderr_to Fssh_log_redirect_stderr_to +#define logdie Fssh_logdie +#define logit Fssh_logit +#define lookup_key_in_hostkeys_by_type Fssh_lookup_key_in_hostkeys_by_type +#define lowercase Fssh_lowercase +#define mac_alg_list Fssh_mac_alg_list +#define mac_check Fssh_mac_check +#define mac_clear Fssh_mac_clear +#define mac_compute Fssh_mac_compute +#define mac_init Fssh_mac_init +#define mac_setup Fssh_mac_setup +#define mac_valid Fssh_mac_valid +#define match Fssh_match +#define match_filter_blacklist Fssh_match_filter_blacklist +#define match_filter_whitelist Fssh_match_filter_whitelist +#define match_host_and_ip Fssh_match_host_and_ip +#define match_hostname Fssh_match_hostname +#define match_list Fssh_match_list +#define match_pattern Fssh_match_pattern +#define match_pattern_list Fssh_match_pattern_list +#define match_user Fssh_match_user +#define mktemp_proto Fssh_mktemp_proto +#define mm_choose_dh Fssh_mm_choose_dh +#define mm_receive_fd Fssh_mm_receive_fd +#define mm_send_fd Fssh_mm_send_fd +#define mm_sshkey_sign Fssh_mm_sshkey_sign +#define monotime Fssh_monotime +#define monotime_double Fssh_monotime_double +#define monotime_ts Fssh_monotime_ts +#define monotime_tv Fssh_monotime_tv +#define mprintf Fssh_mprintf +#define ms_subtract_diff Fssh_ms_subtract_diff +#define ms_to_timeval Fssh_ms_to_timeval +#define msetlocale Fssh_msetlocale +#define mysignal Fssh_mysignal +#define newkeys_from_blob Fssh_newkeys_from_blob +#define newkeys_to_blob Fssh_newkeys_to_blob +#define nh_aux Fssh_nh_aux +#define nh_final Fssh_nh_final +#define open_preamble Fssh_open_preamble +#define packet_close Fssh_packet_close +#define packet_disconnect Fssh_packet_disconnect +#define packet_get_char Fssh_packet_get_char +#define packet_get_int Fssh_packet_get_int +#define packet_process_incoming Fssh_packet_process_incoming +#define packet_read_expect Fssh_packet_read_expect +#define packet_read_poll_seqnr Fssh_packet_read_poll_seqnr +#define packet_read_seqnr Fssh_packet_read_seqnr +#define packet_send_debug Fssh_packet_send_debug +#define packet_set_connection Fssh_packet_set_connection +#define packet_write_poll Fssh_packet_write_poll +#define packet_write_wait Fssh_packet_write_wait +#define parse_absolute_time Fssh_parse_absolute_time +#define parse_ipqos Fssh_parse_ipqos +#define parse_prime Fssh_parse_prime +#define parse_uri Fssh_parse_uri +#define parse_user_host_path Fssh_parse_user_host_path +#define parse_user_host_port Fssh_parse_user_host_port +#define pem_passphrase_cb Fssh_pem_passphrase_cb +#define percent_expand Fssh_percent_expand +#define permission_set_add Fssh_permission_set_add +#define permitopen_port Fssh_permitopen_port +#define pkcs11_add_provider Fssh_pkcs11_add_provider +#define pkcs11_del_provider Fssh_pkcs11_del_provider +#define pkcs11_fetch_keys_filter Fssh_pkcs11_fetch_keys_filter +#define pkcs11_find Fssh_pkcs11_find +#define pkcs11_init Fssh_pkcs11_init +#define pkcs11_provider_finalize Fssh_pkcs11_provider_finalize +#define pkcs11_rsa_finish Fssh_pkcs11_rsa_finish +#define pkcs11_rsa_private_decrypt Fssh_pkcs11_rsa_private_decrypt +#define pkcs11_rsa_private_encrypt Fssh_pkcs11_rsa_private_encrypt +#define pkcs11_terminate Fssh_pkcs11_terminate +#define plain_key_blob Fssh_plain_key_blob +#define platform_disable_tracing Fssh_platform_disable_tracing +#define platform_pledge_agent Fssh_platform_pledge_agent +#define platform_pledge_mux Fssh_platform_pledge_mux +#define platform_pledge_sftp_server Fssh_platform_pledge_sftp_server +#define platform_sys_dir_uid Fssh_platform_sys_dir_uid +#define pledge Fssh_pledge +#define poly1305_auth Fssh_poly1305_auth +#define poly_hash Fssh_poly_hash +#define port_open_helper Fssh_port_open_helper +#define prime_test Fssh_prime_test +#define proto_spec Fssh_proto_spec +#define put_host_port Fssh_put_host_port +#define put_u16 Fssh_put_u16 +#define put_u32 Fssh_put_u32 +#define put_u32_le Fssh_put_u32_le +#define put_u64 Fssh_put_u64 +#define pwcopy Fssh_pwcopy +#define qfileout Fssh_qfileout +#define read_mux Fssh_read_mux +#define read_passphrase Fssh_read_passphrase +#define recallocarray Fssh_recallocarray +#define record_hostkey Fssh_record_hostkey +#define reduce_add_sub Fssh_reduce_add_sub +#define refresh_progress_meter Fssh_refresh_progress_meter +#define replacearg Fssh_replacearg +#define revoke_blob Fssh_revoke_blob +#define revoked_blob_tree_RB_REMOVE Fssh_revoked_blob_tree_RB_REMOVE +#define revoked_certs_for_ca_key Fssh_revoked_certs_for_ca_key +#define revoked_serial_tree_RB_REMOVE Fssh_revoked_serial_tree_RB_REMOVE +#define rijndaelEncrypt Fssh_rijndaelEncrypt +#define rijndaelKeySetupEnc Fssh_rijndaelKeySetupEnc +#define safe_path Fssh_safe_path +#define safe_path_fd Fssh_safe_path_fd +#define sanitise_stdfd Fssh_sanitise_stdfd +#define scan_scaled Fssh_scan_scaled +#define seed_rng Fssh_seed_rng +#define set_log_handler Fssh_set_log_handler +#define set_nodelay Fssh_set_nodelay +#define set_nonblock Fssh_set_nonblock +#define set_rdomain Fssh_set_rdomain +#define set_reuseaddr Fssh_set_reuseaddr +#define shadow_pw Fssh_shadow_pw +#define sieve_large Fssh_sieve_large +#define sig_winch Fssh_sig_winch +#define sigdie Fssh_sigdie +#define snmprintf Fssh_snmprintf +#define sock_set_v6only Fssh_sock_set_v6only +#define speed_to_baud Fssh_speed_to_baud +#define ssh_OpenSSL_add_all_algorithms Fssh_ssh_OpenSSL_add_all_algorithms +#define ssh_add_hostkey Fssh_ssh_add_hostkey +#define ssh_add_identity_constrained Fssh_ssh_add_identity_constrained +#define ssh_agent_sign Fssh_ssh_agent_sign +#define ssh_alloc_session_state Fssh_ssh_alloc_session_state +#define ssh_clear_newkeys Fssh_ssh_clear_newkeys +#define ssh_close_authentication_socket Fssh_ssh_close_authentication_socket +#define ssh_compatible_openssl Fssh_ssh_compatible_openssl +#define ssh_crc32 Fssh_ssh_crc32 +#define ssh_digest_alg_by_name Fssh_ssh_digest_alg_by_name +#define ssh_digest_alg_name Fssh_ssh_digest_alg_name +#define ssh_digest_blocksize Fssh_ssh_digest_blocksize +#define ssh_digest_buffer Fssh_ssh_digest_buffer +#define ssh_digest_bytes Fssh_ssh_digest_bytes +#define ssh_digest_copy_state Fssh_ssh_digest_copy_state +#define ssh_digest_final Fssh_ssh_digest_final +#define ssh_digest_free Fssh_ssh_digest_free +#define ssh_digest_memory Fssh_ssh_digest_memory +#define ssh_digest_start Fssh_ssh_digest_start +#define ssh_digest_update Fssh_ssh_digest_update +#define ssh_digest_update_buffer Fssh_ssh_digest_update_buffer +#define ssh_dispatch_init Fssh_ssh_dispatch_init +#define ssh_dispatch_range Fssh_ssh_dispatch_range +#define ssh_dispatch_run Fssh_ssh_dispatch_run +#define ssh_dispatch_run_fatal Fssh_ssh_dispatch_run_fatal +#define ssh_dispatch_set Fssh_ssh_dispatch_set +#define ssh_dss_sign Fssh_ssh_dss_sign +#define ssh_dss_verify Fssh_ssh_dss_verify +#define ssh_ecdsa_sign Fssh_ssh_ecdsa_sign +#define ssh_ecdsa_verify Fssh_ssh_ecdsa_verify +#define ssh_ed25519_sign Fssh_ssh_ed25519_sign +#define ssh_ed25519_verify Fssh_ssh_ed25519_verify +#define ssh_err Fssh_ssh_err +#define ssh_fetch_identitylist Fssh_ssh_fetch_identitylist +#define ssh_free Fssh_ssh_free +#define ssh_free_identitylist Fssh_ssh_free_identitylist +#define ssh_gai_strerror Fssh_ssh_gai_strerror +#define ssh_get_app_data Fssh_ssh_get_app_data +#define ssh_get_authentication_socket Fssh_ssh_get_authentication_socket +#define ssh_get_progname Fssh_ssh_get_progname +#define ssh_hmac_bytes Fssh_ssh_hmac_bytes +#define ssh_hmac_final Fssh_ssh_hmac_final +#define ssh_hmac_free Fssh_ssh_hmac_free +#define ssh_hmac_init Fssh_ssh_hmac_init +#define ssh_hmac_start Fssh_ssh_hmac_start +#define ssh_hmac_update Fssh_ssh_hmac_update +#define ssh_hmac_update_buffer Fssh_ssh_hmac_update_buffer +#define ssh_init Fssh_ssh_init +#define ssh_input_append Fssh_ssh_input_append +#define ssh_input_space Fssh_ssh_input_space +#define ssh_krl_check_key Fssh_ssh_krl_check_key +#define ssh_krl_file_contains_key Fssh_ssh_krl_file_contains_key +#define ssh_krl_free Fssh_ssh_krl_free +#define ssh_krl_from_blob Fssh_ssh_krl_from_blob +#define ssh_krl_init Fssh_ssh_krl_init +#define ssh_krl_revoke_cert_by_key_id Fssh_ssh_krl_revoke_cert_by_key_id +#define ssh_krl_revoke_cert_by_serial Fssh_ssh_krl_revoke_cert_by_serial +#define ssh_krl_revoke_cert_by_serial_range Fssh_ssh_krl_revoke_cert_by_serial_range +#define ssh_krl_revoke_key Fssh_ssh_krl_revoke_key +#define ssh_krl_revoke_key_explicit Fssh_ssh_krl_revoke_key_explicit +#define ssh_krl_revoke_key_sha1 Fssh_ssh_krl_revoke_key_sha1 +#define ssh_krl_revoke_key_sha256 Fssh_ssh_krl_revoke_key_sha256 +#define ssh_krl_set_comment Fssh_ssh_krl_set_comment +#define ssh_krl_set_version Fssh_ssh_krl_set_version +#define ssh_krl_to_blob Fssh_ssh_krl_to_blob +#define ssh_local_ipaddr Fssh_ssh_local_ipaddr +#define ssh_local_port Fssh_ssh_local_port +#define ssh_lock_agent Fssh_ssh_lock_agent +#define ssh_malloc_init Fssh_ssh_malloc_init +#define ssh_msg_recv Fssh_ssh_msg_recv +#define ssh_msg_send Fssh_ssh_msg_send +#define ssh_output_consume Fssh_ssh_output_consume +#define ssh_output_ptr Fssh_ssh_output_ptr +#define ssh_output_space Fssh_ssh_output_space +#define ssh_packet_clear_keys Fssh_ssh_packet_clear_keys +#define ssh_packet_close Fssh_ssh_packet_close +#define ssh_packet_close_internal Fssh_ssh_packet_close_internal +#define ssh_packet_connection_af Fssh_ssh_packet_connection_af +#define ssh_packet_connection_is_on_socket Fssh_ssh_packet_connection_is_on_socket +#define ssh_packet_disconnect Fssh_ssh_packet_disconnect +#define ssh_packet_enable_delayed_compress Fssh_ssh_packet_enable_delayed_compress +#define ssh_packet_get_bignum2 Fssh_ssh_packet_get_bignum2 +#define ssh_packet_get_bytes Fssh_ssh_packet_get_bytes +#define ssh_packet_get_char Fssh_ssh_packet_get_char +#define ssh_packet_get_connection_in Fssh_ssh_packet_get_connection_in +#define ssh_packet_get_connection_out Fssh_ssh_packet_get_connection_out +#define ssh_packet_get_cstring Fssh_ssh_packet_get_cstring +#define ssh_packet_get_ecpoint Fssh_ssh_packet_get_ecpoint +#define ssh_packet_get_input Fssh_ssh_packet_get_input +#define ssh_packet_get_int Fssh_ssh_packet_get_int +#define ssh_packet_get_int64 Fssh_ssh_packet_get_int64 +#define ssh_packet_get_maxsize Fssh_ssh_packet_get_maxsize +#define ssh_packet_get_mux Fssh_ssh_packet_get_mux +#define ssh_packet_get_output Fssh_ssh_packet_get_output +#define ssh_packet_get_protocol_flags Fssh_ssh_packet_get_protocol_flags +#define ssh_packet_get_rekey_timeout Fssh_ssh_packet_get_rekey_timeout +#define ssh_packet_get_state Fssh_ssh_packet_get_state +#define ssh_packet_get_string Fssh_ssh_packet_get_string +#define ssh_packet_get_string_ptr Fssh_ssh_packet_get_string_ptr +#define ssh_packet_have_data_to_write Fssh_ssh_packet_have_data_to_write +#define ssh_packet_inc_alive_timeouts Fssh_ssh_packet_inc_alive_timeouts +#define ssh_packet_is_interactive Fssh_ssh_packet_is_interactive +#define ssh_packet_is_rekeying Fssh_ssh_packet_is_rekeying +#define ssh_packet_log_type Fssh_ssh_packet_log_type +#define ssh_packet_need_rekeying Fssh_ssh_packet_need_rekeying +#define ssh_packet_next Fssh_ssh_packet_next +#define ssh_packet_not_very_much_data_to_write Fssh_ssh_packet_not_very_much_data_to_write +#define ssh_packet_payload Fssh_ssh_packet_payload +#define ssh_packet_process_incoming Fssh_ssh_packet_process_incoming +#define ssh_packet_put Fssh_ssh_packet_put +#define ssh_packet_put_bignum2 Fssh_ssh_packet_put_bignum2 +#define ssh_packet_put_char Fssh_ssh_packet_put_char +#define ssh_packet_put_cstring Fssh_ssh_packet_put_cstring +#define ssh_packet_put_ecpoint Fssh_ssh_packet_put_ecpoint +#define ssh_packet_put_int Fssh_ssh_packet_put_int +#define ssh_packet_put_int64 Fssh_ssh_packet_put_int64 +#define ssh_packet_put_raw Fssh_ssh_packet_put_raw +#define ssh_packet_put_string Fssh_ssh_packet_put_string +#define ssh_packet_rdomain_in Fssh_ssh_packet_rdomain_in +#define ssh_packet_read Fssh_ssh_packet_read +#define ssh_packet_read_expect Fssh_ssh_packet_read_expect +#define ssh_packet_read_poll2 Fssh_ssh_packet_read_poll2 +#define ssh_packet_read_poll_seqnr Fssh_ssh_packet_read_poll_seqnr +#define ssh_packet_read_seqnr Fssh_ssh_packet_read_seqnr +#define ssh_packet_remaining Fssh_ssh_packet_remaining +#define ssh_packet_send Fssh_ssh_packet_send +#define ssh_packet_send2 Fssh_ssh_packet_send2 +#define ssh_packet_send2_wrapped Fssh_ssh_packet_send2_wrapped +#define ssh_packet_send_debug Fssh_ssh_packet_send_debug +#define ssh_packet_set_alive_timeouts Fssh_ssh_packet_set_alive_timeouts +#define ssh_packet_set_authenticated Fssh_ssh_packet_set_authenticated +#define ssh_packet_set_connection Fssh_ssh_packet_set_connection +#define ssh_packet_set_input_hook Fssh_ssh_packet_set_input_hook +#define ssh_packet_set_interactive Fssh_ssh_packet_set_interactive +#define ssh_packet_set_log_preamble Fssh_ssh_packet_set_log_preamble +#define ssh_packet_set_maxsize Fssh_ssh_packet_set_maxsize +#define ssh_packet_set_mux Fssh_ssh_packet_set_mux +#define ssh_packet_set_nonblocking Fssh_ssh_packet_set_nonblocking +#define ssh_packet_set_protocol_flags Fssh_ssh_packet_set_protocol_flags +#define ssh_packet_set_rekey_limits Fssh_ssh_packet_set_rekey_limits +#define ssh_packet_set_server Fssh_ssh_packet_set_server +#define ssh_packet_set_state Fssh_ssh_packet_set_state +#define ssh_packet_set_timeout Fssh_ssh_packet_set_timeout +#define ssh_packet_set_tos Fssh_ssh_packet_set_tos +#define ssh_packet_start Fssh_ssh_packet_start +#define ssh_packet_start_discard Fssh_ssh_packet_start_discard +#define ssh_packet_stop_discard Fssh_ssh_packet_stop_discard +#define ssh_packet_write_poll Fssh_ssh_packet_write_poll +#define ssh_packet_write_wait Fssh_ssh_packet_write_wait +#define ssh_remote_ipaddr Fssh_ssh_remote_ipaddr +#define ssh_remote_port Fssh_ssh_remote_port +#define ssh_remove_all_identities Fssh_ssh_remove_all_identities +#define ssh_remove_identity Fssh_ssh_remove_identity +#define ssh_request_reply Fssh_ssh_request_reply +#define ssh_rsa_complete_crt_parameters Fssh_ssh_rsa_complete_crt_parameters +#define ssh_rsa_sign Fssh_ssh_rsa_sign +#define ssh_rsa_verify Fssh_ssh_rsa_verify +#define ssh_set_app_data Fssh_ssh_set_app_data +#define ssh_set_newkeys Fssh_ssh_set_newkeys +#define ssh_set_verify_host_key_callback Fssh_ssh_set_verify_host_key_callback +#define ssh_tty_make_modes Fssh_ssh_tty_make_modes +#define ssh_tty_parse_modes Fssh_ssh_tty_parse_modes +#define ssh_update_card Fssh_ssh_update_card +#define sshbuf_alloc Fssh_sshbuf_alloc +#define sshbuf_allocate Fssh_sshbuf_allocate +#define sshbuf_avail Fssh_sshbuf_avail +#define sshbuf_b64tod Fssh_sshbuf_b64tod +#define sshbuf_check_reserve Fssh_sshbuf_check_reserve +#define sshbuf_consume Fssh_sshbuf_consume +#define sshbuf_consume_end Fssh_sshbuf_consume_end +#define sshbuf_dtob16 Fssh_sshbuf_dtob16 +#define sshbuf_dtob64 Fssh_sshbuf_dtob64 +#define sshbuf_dump Fssh_sshbuf_dump +#define sshbuf_dump_data Fssh_sshbuf_dump_data +#define sshbuf_dup_string Fssh_sshbuf_dup_string +#define sshbuf_free Fssh_sshbuf_free +#define sshbuf_free_passwd Fssh_sshbuf_free_passwd +#define sshbuf_from Fssh_sshbuf_from +#define sshbuf_fromb Fssh_sshbuf_fromb +#define sshbuf_froms Fssh_sshbuf_froms +#define sshbuf_get Fssh_sshbuf_get +#define sshbuf_get_bignum1 Fssh_sshbuf_get_bignum1 +#define sshbuf_get_bignum2 Fssh_sshbuf_get_bignum2 +#define sshbuf_get_bignum2_bytes_direct Fssh_sshbuf_get_bignum2_bytes_direct +#define sshbuf_get_cstring Fssh_sshbuf_get_cstring +#define sshbuf_get_ec Fssh_sshbuf_get_ec +#define sshbuf_get_eckey Fssh_sshbuf_get_eckey +#define sshbuf_get_passwd Fssh_sshbuf_get_passwd +#define sshbuf_get_string Fssh_sshbuf_get_string +#define sshbuf_get_string_direct Fssh_sshbuf_get_string_direct +#define sshbuf_get_stringb Fssh_sshbuf_get_stringb +#define sshbuf_get_u16 Fssh_sshbuf_get_u16 +#define sshbuf_get_u32 Fssh_sshbuf_get_u32 +#define sshbuf_get_u64 Fssh_sshbuf_get_u64 +#define sshbuf_get_u8 Fssh_sshbuf_get_u8 +#define sshbuf_len Fssh_sshbuf_len +#define sshbuf_max_size Fssh_sshbuf_max_size +#define sshbuf_mutable_ptr Fssh_sshbuf_mutable_ptr +#define sshbuf_new Fssh_sshbuf_new +#define sshbuf_parent Fssh_sshbuf_parent +#define sshbuf_peek_string_direct Fssh_sshbuf_peek_string_direct +#define sshbuf_ptr Fssh_sshbuf_ptr +#define sshbuf_put Fssh_sshbuf_put +#define sshbuf_put_bignum1 Fssh_sshbuf_put_bignum1 +#define sshbuf_put_bignum2 Fssh_sshbuf_put_bignum2 +#define sshbuf_put_bignum2_bytes Fssh_sshbuf_put_bignum2_bytes +#define sshbuf_put_cstring Fssh_sshbuf_put_cstring +#define sshbuf_put_ec Fssh_sshbuf_put_ec +#define sshbuf_put_eckey Fssh_sshbuf_put_eckey +#define sshbuf_put_passwd Fssh_sshbuf_put_passwd +#define sshbuf_put_string Fssh_sshbuf_put_string +#define sshbuf_put_stringb Fssh_sshbuf_put_stringb +#define sshbuf_put_u16 Fssh_sshbuf_put_u16 +#define sshbuf_put_u32 Fssh_sshbuf_put_u32 +#define sshbuf_put_u64 Fssh_sshbuf_put_u64 +#define sshbuf_put_u8 Fssh_sshbuf_put_u8 +#define sshbuf_putb Fssh_sshbuf_putb +#define sshbuf_putf Fssh_sshbuf_putf +#define sshbuf_putfv Fssh_sshbuf_putfv +#define sshbuf_refcount Fssh_sshbuf_refcount +#define sshbuf_reserve Fssh_sshbuf_reserve +#define sshbuf_reset Fssh_sshbuf_reset +#define sshbuf_set_max_size Fssh_sshbuf_set_max_size +#define sshbuf_set_parent Fssh_sshbuf_set_parent +#define sshkey_alg_list Fssh_sshkey_alg_list +#define sshkey_cert_check_authority Fssh_sshkey_cert_check_authority +#define sshkey_cert_copy Fssh_sshkey_cert_copy +#define sshkey_cert_type Fssh_sshkey_cert_type +#define sshkey_certify Fssh_sshkey_certify +#define sshkey_certify_custom Fssh_sshkey_certify_custom +#define sshkey_check_cert_sigtype Fssh_sshkey_check_cert_sigtype +#define sshkey_check_revoked Fssh_sshkey_check_revoked +#define sshkey_check_sigtype Fssh_sshkey_check_sigtype +#define sshkey_curve_name_to_nid Fssh_sshkey_curve_name_to_nid +#define sshkey_curve_nid_to_bits Fssh_sshkey_curve_nid_to_bits +#define sshkey_curve_nid_to_name Fssh_sshkey_curve_nid_to_name +#define sshkey_drop_cert Fssh_sshkey_drop_cert +#define sshkey_dump_ec_key Fssh_sshkey_dump_ec_key +#define sshkey_dump_ec_point Fssh_sshkey_dump_ec_point +#define sshkey_ec_nid_to_hash_alg Fssh_sshkey_ec_nid_to_hash_alg +#define sshkey_ec_validate_private Fssh_sshkey_ec_validate_private +#define sshkey_ec_validate_public Fssh_sshkey_ec_validate_public +#define sshkey_ecdsa_bits_to_nid Fssh_sshkey_ecdsa_bits_to_nid +#define sshkey_ecdsa_key_to_nid Fssh_sshkey_ecdsa_key_to_nid +#define sshkey_ecdsa_nid_from_name Fssh_sshkey_ecdsa_nid_from_name +#define sshkey_enable_maxsign Fssh_sshkey_enable_maxsign +#define sshkey_equal Fssh_sshkey_equal +#define sshkey_equal_public Fssh_sshkey_equal_public +#define sshkey_fingerprint Fssh_sshkey_fingerprint +#define sshkey_fingerprint_raw Fssh_sshkey_fingerprint_raw +#define sshkey_format_cert_validity Fssh_sshkey_format_cert_validity +#define sshkey_format_text Fssh_sshkey_format_text +#define sshkey_free Fssh_sshkey_free +#define sshkey_from_blob Fssh_sshkey_from_blob +#define sshkey_from_blob_internal Fssh_sshkey_from_blob_internal +#define sshkey_from_private Fssh_sshkey_from_private +#define sshkey_fromb Fssh_sshkey_fromb +#define sshkey_froms Fssh_sshkey_froms +#define sshkey_generate Fssh_sshkey_generate +#define sshkey_in_file Fssh_sshkey_in_file +#define sshkey_is_cert Fssh_sshkey_is_cert +#define sshkey_load_cert Fssh_sshkey_load_cert +#define sshkey_load_file Fssh_sshkey_load_file +#define sshkey_load_private Fssh_sshkey_load_private +#define sshkey_load_private_cert Fssh_sshkey_load_private_cert +#define sshkey_load_private_type Fssh_sshkey_load_private_type +#define sshkey_load_private_type_fd Fssh_sshkey_load_private_type_fd +#define sshkey_load_public Fssh_sshkey_load_public +#define sshkey_names_valid2 Fssh_sshkey_names_valid2 +#define sshkey_new Fssh_sshkey_new +#define sshkey_parse_private2 Fssh_sshkey_parse_private2 +#define sshkey_parse_private_fileblob Fssh_sshkey_parse_private_fileblob +#define sshkey_parse_private_fileblob_type Fssh_sshkey_parse_private_fileblob_type +#define sshkey_parse_private_pem_fileblob Fssh_sshkey_parse_private_pem_fileblob +#define sshkey_perm_ok Fssh_sshkey_perm_ok +#define sshkey_plain_to_blob Fssh_sshkey_plain_to_blob +#define sshkey_private_deserialize Fssh_sshkey_private_deserialize +#define sshkey_private_serialize Fssh_sshkey_private_serialize +#define sshkey_private_serialize_maxsign Fssh_sshkey_private_serialize_maxsign +#define sshkey_private_serialize_opt Fssh_sshkey_private_serialize_opt +#define sshkey_private_to_blob2 Fssh_sshkey_private_to_blob2 +#define sshkey_private_to_fileblob Fssh_sshkey_private_to_fileblob +#define sshkey_putb Fssh_sshkey_putb +#define sshkey_putb_plain Fssh_sshkey_putb_plain +#define sshkey_puts Fssh_sshkey_puts +#define sshkey_puts_opts Fssh_sshkey_puts_opts +#define sshkey_read Fssh_sshkey_read +#define sshkey_save_private Fssh_sshkey_save_private +#define sshkey_set_filename Fssh_sshkey_set_filename +#define sshkey_sigalg_by_name Fssh_sshkey_sigalg_by_name +#define sshkey_sign Fssh_sshkey_sign +#define sshkey_signatures_left Fssh_sshkey_signatures_left +#define sshkey_size Fssh_sshkey_size +#define sshkey_ssh_name Fssh_sshkey_ssh_name +#define sshkey_ssh_name_plain Fssh_sshkey_ssh_name_plain +#define sshkey_to_base64 Fssh_sshkey_to_base64 +#define sshkey_to_blob Fssh_sshkey_to_blob +#define sshkey_to_certified Fssh_sshkey_to_certified +#define sshkey_try_load_public Fssh_sshkey_try_load_public +#define sshkey_type Fssh_sshkey_type +#define sshkey_type_from_name Fssh_sshkey_type_from_name +#define sshkey_type_is_cert Fssh_sshkey_type_is_cert +#define sshkey_type_plain Fssh_sshkey_type_plain +#define sshkey_verify Fssh_sshkey_verify +#define sshkey_write Fssh_sshkey_write +#define sshpkt_add_padding Fssh_sshpkt_add_padding +#define sshpkt_disconnect Fssh_sshpkt_disconnect +#define sshpkt_fatal Fssh_sshpkt_fatal +#define sshpkt_fmt_connection_id Fssh_sshpkt_fmt_connection_id +#define sshpkt_get Fssh_sshpkt_get +#define sshpkt_get_bignum2 Fssh_sshpkt_get_bignum2 +#define sshpkt_get_cstring Fssh_sshpkt_get_cstring +#define sshpkt_get_ec Fssh_sshpkt_get_ec +#define sshpkt_get_end Fssh_sshpkt_get_end +#define sshpkt_get_string Fssh_sshpkt_get_string +#define sshpkt_get_string_direct Fssh_sshpkt_get_string_direct +#define sshpkt_get_u32 Fssh_sshpkt_get_u32 +#define sshpkt_get_u64 Fssh_sshpkt_get_u64 +#define sshpkt_get_u8 Fssh_sshpkt_get_u8 +#define sshpkt_msg_ignore Fssh_sshpkt_msg_ignore +#define sshpkt_peek_string_direct Fssh_sshpkt_peek_string_direct +#define sshpkt_ptr Fssh_sshpkt_ptr +#define sshpkt_put Fssh_sshpkt_put +#define sshpkt_put_bignum2 Fssh_sshpkt_put_bignum2 +#define sshpkt_put_cstring Fssh_sshpkt_put_cstring +#define sshpkt_put_ec Fssh_sshpkt_put_ec +#define sshpkt_put_string Fssh_sshpkt_put_string +#define sshpkt_put_stringb Fssh_sshpkt_put_stringb +#define sshpkt_put_u32 Fssh_sshpkt_put_u32 +#define sshpkt_put_u64 Fssh_sshpkt_put_u64 +#define sshpkt_put_u8 Fssh_sshpkt_put_u8 +#define sshpkt_putb Fssh_sshpkt_putb +#define sshpkt_send Fssh_sshpkt_send +#define sshpkt_start Fssh_sshpkt_start +#define start_progress_meter Fssh_start_progress_meter +#define stop_progress_meter Fssh_stop_progress_meter +#define stravis Fssh_stravis +#define strdelim Fssh_strdelim +#define strdelim_internal Fssh_strdelim_internal +#define strdelimw Fssh_strdelimw +#define strnvis Fssh_strnvis +#define strvis Fssh_strvis +#define strvisx Fssh_strvisx +#define sys_tun_open Fssh_sys_tun_open +#define tilde_expand_filename Fssh_tilde_expand_filename +#define to_blob Fssh_to_blob +#define to_blob_buf Fssh_to_blob_buf +#define tohex Fssh_tohex +#define tun_open Fssh_tun_open +#define umac128_delete Fssh_umac128_delete +#define umac128_final Fssh_umac128_final +#define umac128_new Fssh_umac128_new +#define umac128_update Fssh_umac128_update +#define umac_delete Fssh_umac_delete +#define umac_final Fssh_umac_final +#define umac_new Fssh_umac_new +#define umac_update Fssh_umac_update +#define unix_listener Fssh_unix_listener +#define unset_nonblock Fssh_unset_nonblock +#define update_progress_meter Fssh_update_progress_meter +#define urldecode Fssh_urldecode +#define uudecode Fssh_uudecode +#define uuencode Fssh_uuencode +#define valid_domain Fssh_valid_domain +#define valid_env_name Fssh_valid_env_name +#define vasnmprintf Fssh_vasnmprintf +#define verbose Fssh_verbose +#define verify_host_key_dns Fssh_verify_host_key_dns +#define vfmprintf Fssh_vfmprintf +#define vis Fssh_vis +#define write_host_entry Fssh_write_host_entry +#define x11_connect_display Fssh_x11_connect_display +#define x11_create_display_inet Fssh_x11_create_display_inet +#define x11_request_forwarding_with_spoofing Fssh_x11_request_forwarding_with_spoofing +#define xasprintf Fssh_xasprintf +#define xcalloc Fssh_xcalloc +#define xcrypt Fssh_xcrypt +#define xmalloc Fssh_xmalloc +#define xreallocarray Fssh_xreallocarray +#define xrecallocarray Fssh_xrecallocarray +#define xstrdup Fssh_xstrdup Index: crypto/openssh/sshbuf-getput-basic.c =================================================================== --- crypto/openssh/sshbuf-getput-basic.c +++ crypto/openssh/sshbuf-getput-basic.c @@ -25,6 +25,7 @@ #include #include +#include "xmalloc.h" #include "ssherr.h" #include "sshbuf.h" @@ -462,3 +463,103 @@ } return 0; } + +/* + * store struct pwd + */ +int +sshbuf_put_passwd(struct sshbuf *buf, const struct passwd *pwent) +{ + int r; + + /* + * We never send pointer values of struct passwd. + * It is safe from wild pointer even if a new pointer member is added. + */ + + if ((r = sshbuf_put_u64(buf, sizeof(*pwent)) != 0) || + (r = sshbuf_put_cstring(buf, pwent->pw_name)) != 0 || + (r = sshbuf_put_cstring(buf, "*")) != 0 || + (r = sshbuf_put_u32(buf, pwent->pw_uid)) != 0 || + (r = sshbuf_put_u32(buf, pwent->pw_gid)) != 0 || +#ifdef HAVE_STRUCT_PASSWD_PW_CHANGE + (r = sshbuf_put_time(buf, pwent->pw_change)) != 0 || +#endif +#ifdef HAVE_STRUCT_PASSWD_PW_GECOS + (r = sshbuf_put_cstring(buf, pwent->pw_gecos)) != 0 || +#endif +#ifdef HAVE_STRUCT_PASSWD_PW_CLASS + (r = sshbuf_put_cstring(buf, pwent->pw_class)) != 0 || +#endif + (r = sshbuf_put_cstring(buf, pwent->pw_dir)) != 0 || + (r = sshbuf_put_cstring(buf, pwent->pw_shell)) != 0 || +#ifdef HAVE_STRUCT_PASSWD_PW_EXPIRE + (r = sshbuf_put_time(buf, pwent->pw_expire)) != 0 || +#endif + (r = sshbuf_put_u32(buf, pwent->pw_fields)) != 0) { + return r; + } + return 0; +} + +/* + * extract struct pwd + */ +struct passwd * +sshbuf_get_passwd(struct sshbuf *buf) +{ + struct passwd *pw; + u_int64_t len; + int r; + + /* check if size of struct passwd is as same as sender's size */ + r = sshbuf_get_u64(buf, &len); + if (r != 0 || len != sizeof(*pw)) + return NULL; + + pw = xcalloc(1, sizeof(*pw)); + if (sshbuf_get_cstring(buf, &pw->pw_name, NULL) != 0 || + sshbuf_get_cstring(buf, &pw->pw_passwd, NULL) != 0 || + sshbuf_get_u32(buf, &pw->pw_uid) != 0 || + sshbuf_get_u32(buf, &pw->pw_gid) != 0 || +#ifdef HAVE_STRUCT_PASSWD_PW_CHANGE + sshbuf_get_time(buf, &pw->pw_change) != 0 || +#endif +#ifdef HAVE_STRUCT_PASSWD_PW_GECOS + sshbuf_get_cstring(buf, &pw->pw_gecos, NULL) != 0 || +#endif +#ifdef HAVE_STRUCT_PASSWD_PW_CLASS + sshbuf_get_cstring(buf, &pw->pw_class, NULL) != 0 || +#endif + sshbuf_get_cstring(buf, &pw->pw_dir, NULL) != 0 || + sshbuf_get_cstring(buf, &pw->pw_shell, NULL) != 0 || +#ifdef HAVE_STRUCT_PASSWD_PW_EXPIRE + sshbuf_get_time(buf, &pw->pw_expire) != 0 || +#endif + sshbuf_get_u32(buf, &pw->pw_fields) != 0) { + sshbuf_free_passwd(pw); + return NULL; + } + return pw; +} + +/* + * free struct passwd obtained from sshbuf_get_passwd. + */ +void +sshbuf_free_passwd(struct passwd *pwent) +{ + if (pwent == NULL) + return; + free(pwent->pw_shell); + free(pwent->pw_dir); +#ifdef HAVE_STRUCT_PASSWD_PW_CLASS + free(pwent->pw_class); +#endif +#ifdef HAVE_STRUCT_PASSWD_PW_GECOS + free(pwent->pw_gecos); +#endif + free(pwent->pw_passwd); + free(pwent->pw_name); + free(pwent); +} Index: crypto/openssh/sshbuf.h =================================================================== --- crypto/openssh/sshbuf.h +++ crypto/openssh/sshbuf.h @@ -176,6 +176,14 @@ int sshbuf_put_u16(struct sshbuf *buf, u_int16_t val); int sshbuf_put_u8(struct sshbuf *buf, u_char val); +#if defined(__FreeBSD__) && defined(__i386__) +#define sshbuf_get_time(b, vp) sshbuf_get_u32((b), (u_int32_t *)(vp)) +#define sshbuf_put_time(b, v) sshbuf_put_u32((b), (u_int32_t)(v)) +#else +#define sshbuf_get_time(b, vp) sshbuf_get_u64((b), (u_int64_t *)(vp)) +#define sshbuf_put_time(b, v) sshbuf_put_u64((b), (u_int64_t)(v)) +#endif + /* * Functions to extract or store SSH wire encoded strings (u32 len || data) * The "cstring" variants admit no \0 characters in the string contents. @@ -244,6 +252,21 @@ */ char *sshbuf_dup_string(struct sshbuf *buf); +/* + * store struct pwd + */ +int sshbuf_put_passwd(struct sshbuf *buf, const struct passwd *pwent); + +/* + * extract struct pwd + */ +struct passwd *sshbuf_get_passwd(struct sshbuf *buf); + +/* + * free struct passwd obtained from sshbuf_get_passwd. + */ +void sshbuf_free_passwd(struct passwd *pwent); + /* Macros for decoding/encoding integers */ #define PEEK_U64(p) \ (((u_int64_t)(((const u_char *)(p))[0]) << 56) | \ Index: crypto/openssh/sshconnect.c =================================================================== --- crypto/openssh/sshconnect.c +++ crypto/openssh/sshconnect.c @@ -14,6 +14,7 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include @@ -26,6 +27,7 @@ #include #include #include +#include #include #include Index: crypto/openssh/sshd.8 =================================================================== --- crypto/openssh/sshd.8 +++ crypto/openssh/sshd.8 @@ -34,6 +34,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: sshd.8,v 1.304 2018/07/22 12:16:59 dtucker Exp $ +.\" $FreeBSD$ .Dd $Mdocdate: July 22 2018 $ .Dt SSHD 8 .Os @@ -65,7 +66,7 @@ .Nm listens for connections from clients. It is normally started at boot from -.Pa /etc/rc . +.Pa /etc/rc.d/sshd . It forks a new daemon for each incoming connection. The forked daemons handle @@ -332,8 +333,9 @@ If the login is on a tty, records login time. .It Checks -.Pa /etc/nologin ; -if it exists, prints contents and quits +.Pa /etc/nologin and +.Pa /var/run/nologin ; +if one exists, it prints the contents and quits (unless root). .It Changes to run with normal user privileges. @@ -358,7 +360,8 @@ option is set, runs it; else if .Pa /etc/ssh/sshrc exists, runs -it; otherwise runs xauth. +it; otherwise runs +.Xr xauth 1 . The .Dq rc files are given the X11 @@ -873,6 +876,12 @@ This file should be writable only by the user, and need not be readable by anyone else. .Pp +.It Pa /etc/hosts.allow +.It Pa /etc/hosts.deny +Access controls that should be enforced by tcp-wrappers are defined here. +Further details are described in +.Xr hosts_access 5 . +.Pp .It Pa /etc/hosts.equiv This file is for host-based authentication (see .Xr ssh 1 ) . @@ -975,6 +984,7 @@ .Xr ssh-keygen 1 , .Xr ssh-keyscan 1 , .Xr chroot 2 , +.Xr hosts_access 5 , .Xr login.conf 5 , .Xr moduli 5 , .Xr sshd_config 5 , Index: crypto/openssh/sshd.c =================================================================== --- crypto/openssh/sshd.c +++ crypto/openssh/sshd.c @@ -43,9 +43,11 @@ */ #include "includes.h" +__RCSID("$FreeBSD$"); #include #include +#include #include #ifdef HAVE_SYS_STAT_H # include @@ -85,6 +87,15 @@ #include #endif +#ifdef __FreeBSD__ +#include +#if defined(GSSAPI) && defined(HAVE_GSSAPI_GSSAPI_H) +#include +#elif defined(GSSAPI) && defined(HAVE_GSSAPI_H) +#include +#endif +#endif + #include "xmalloc.h" #include "ssh.h" #include "ssh2.h" @@ -122,6 +133,14 @@ #include "auth-options.h" #include "version.h" #include "ssherr.h" +#include "blacklist_client.h" + +#ifdef LIBWRAP +#include +#include +int allow_severity; +int deny_severity; +#endif /* LIBWRAP */ /* Re-exec fds */ #define REEXEC_DEVCRYPTO_RESERVED_FD (STDERR_FILENO + 1) @@ -369,7 +388,9 @@ kill(0, SIGTERM); } + BLACKLIST_NOTIFY(the_active_state, BLACKLIST_AUTH_FAIL, "ssh"); /* XXX pre-format ipaddr/port so we don't need to access active_state */ + /* Log error and exit. */ sigdie("Timeout before authentication for %s port %d", ssh_remote_ipaddr(the_active_state), @@ -833,14 +854,13 @@ static void usage(void) { - fprintf(stderr, "%s, %s\n", - SSH_RELEASE, -#ifdef WITH_OPENSSL - OpenSSL_version(OPENSSL_VERSION) -#else - "without OpenSSL" -#endif - ); + if (options.version_addendum && *options.version_addendum != '\0') + fprintf(stderr, "%s %s, %s\n", + SSH_RELEASE, + options.version_addendum, OPENSSL_VERSION_STRING); + else + fprintf(stderr, "%s, %s\n", + SSH_RELEASE, OPENSSL_VERSION_STRING); fprintf(stderr, "usage: sshd [-46DdeiqTt] [-C connection_spec] [-c host_cert_file]\n" " [-E log_file] [-f config_file] [-g login_grace_time]\n" @@ -950,6 +970,8 @@ int ret, listen_sock; struct addrinfo *ai; char ntop[NI_MAXHOST], strport[NI_MAXSERV]; + int socksize; + socklen_t len; for (ai = la->addrs; ai; ai = ai->ai_next) { if (ai->ai_family != AF_INET && ai->ai_family != AF_INET6) @@ -995,6 +1017,10 @@ debug("Bind to port %s on %s.", strport, ntop); + len = sizeof(socksize); + getsockopt(listen_sock, SOL_SOCKET, SO_RCVBUF, &socksize, &len); + debug("Server TCP RWIN socket size: %d", socksize); + /* Bind the socket to the desired port. */ if (bind(listen_sock, ai->ai_addr, ai->ai_addrlen) < 0) { error("Bind to port %s on %s failed: %.200s.", @@ -1898,6 +1924,10 @@ /* Reinitialize the log (because of the fork above). */ log_init(__progname, options.log_level, options.log_facility, log_stderr); + /* Avoid killing the process in high-pressure swapping environments. */ + if (!inetd_flag && madvise(NULL, 0, MADV_PROTECT) != 0) + debug("madvise(): %.200s", strerror(errno)); + /* Chdir to the root directory so that the current disk can be unmounted if desired. */ if (chdir("/") == -1) @@ -2013,6 +2043,29 @@ signal(SIGCHLD, SIG_DFL); signal(SIGINT, SIG_DFL); +#ifdef __FreeBSD__ + /* + * Initialize the resolver. This may not happen automatically + * before privsep chroot(). + */ + if ((_res.options & RES_INIT) == 0) { + debug("res_init()"); + res_init(); + } +#ifdef GSSAPI + /* + * Force GSS-API to parse its configuration and load any + * mechanism plugins. + */ + { + gss_OID_set mechs; + OM_uint32 minor_status; + gss_indicate_mechs(&minor_status, &mechs); + gss_release_oid_set(&minor_status, &mechs); + } +#endif +#endif + /* * Register our connection. This turns encryption off because we do * not have a key. @@ -2049,9 +2102,32 @@ */ remote_ip = ssh_remote_ipaddr(ssh); +#ifdef HAVE_LOGIN_CAP + /* Also caches remote hostname for sandboxed child. */ + auth_get_canonical_hostname(ssh, options.use_dns); +#endif + #ifdef SSH_AUDIT_EVENTS audit_connection_from(remote_ip, remote_port); #endif +#ifdef LIBWRAP + allow_severity = options.log_facility|LOG_INFO; + deny_severity = options.log_facility|LOG_WARNING; + /* Check whether logins are denied from this host. */ + if (ssh_packet_connection_is_on_socket(ssh)) { + struct request_info req; + + request_init(&req, RQ_DAEMON, __progname, RQ_FILE, sock_in, 0); + fromhost(&req); + + if (!hosts_access(&req)) { + debug("Connection refused by tcp wrapper"); + refuse(&req); + /* NOTREACHED */ + fatal("libwrap refuse returns"); + } + } +#endif /* LIBWRAP */ rdomain = ssh_packet_rdomain_in(ssh); @@ -2099,6 +2175,8 @@ fatal("%s: sshbuf_new failed", __func__); auth_debug_reset(); + BLACKLIST_INIT(); + if (use_privsep) { if (privsep_preauth(ssh) == 1) goto authenticated; Index: crypto/openssh/sshd_config =================================================================== --- crypto/openssh/sshd_config +++ crypto/openssh/sshd_config @@ -1,4 +1,5 @@ # $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $ +# $FreeBSD$ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. @@ -10,6 +11,9 @@ # possible, but leave them commented. Uncommented options override the # default value. +# Note that some of FreeBSD's defaults differ from OpenBSD's, and +# FreeBSD has a few additional options. + #Port 22 #AddressFamily any #ListenAddress 0.0.0.0 @@ -29,7 +33,7 @@ # Authentication: #LoginGraceTime 2m -#PermitRootLogin prohibit-password +#PermitRootLogin no #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 @@ -53,11 +57,11 @@ # Don't read the user's ~/.rhosts and ~/.shosts files #IgnoreRhosts yes -# To disable tunneled clear text passwords, change to no here! -#PasswordAuthentication yes +# Change to yes to enable built-in password authentication. +#PasswordAuthentication no #PermitEmptyPasswords no -# Change to no to disable s/key passwords +# Change to no to disable PAM authentication #ChallengeResponseAuthentication yes # Kerberos options @@ -70,7 +74,7 @@ #GSSAPIAuthentication no #GSSAPICleanupCredentials yes -# Set this to 'yes' to enable PAM authentication, account processing, +# Set this to 'no' to disable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication and # PasswordAuthentication. Depending on your PAM configuration, @@ -79,12 +83,12 @@ # If you just want the PAM account and session checks to run without # PAM authentication, then enable this but set PasswordAuthentication # and ChallengeResponseAuthentication to 'no'. -#UsePAM no +#UsePAM yes #AllowAgentForwarding yes #AllowTcpForwarding yes #GatewayPorts no -#X11Forwarding no +#X11Forwarding yes #X11DisplayOffset 10 #X11UseLocalhost yes #PermitTTY yes @@ -95,12 +99,13 @@ #Compression delayed #ClientAliveInterval 0 #ClientAliveCountMax 3 -#UseDNS no +#UseDNS yes #PidFile /var/run/sshd.pid #MaxStartups 10:30:100 #PermitTunnel no #ChrootDirectory none -#VersionAddendum none +#UseBlacklist no +#VersionAddendum FreeBSD-20200214 # no default banner path #Banner none Index: crypto/openssh/sshd_config.5 =================================================================== --- crypto/openssh/sshd_config.5 +++ crypto/openssh/sshd_config.5 @@ -35,6 +35,7 @@ .\" .\" $OpenBSD: sshd_config.5,v 1.284 2019/03/22 20:58:34 jmc Exp $ .Dd $Mdocdate: March 22 2019 $ +.\" $FreeBSD$ .Dt SSHD_CONFIG 5 .Os .Sh NAME @@ -494,7 +495,8 @@ .Bd -literal -offset indent chacha20-poly1305@openssh.com, aes128-ctr,aes192-ctr,aes256-ctr, -aes128-gcm@openssh.com,aes256-gcm@openssh.com +aes128-gcm@openssh.com,aes256-gcm@openssh.com, +aes128-cbc,aes192-cbc,aes256-cbc .Ed .Pp The list of available ciphers may also be obtained using @@ -780,7 +782,7 @@ .Pp .Pa /etc/hosts.equiv and -.Pa /etc/shosts.equiv +.Pa /etc/ssh/shosts.equiv are still used. The default is .Cm yes . @@ -1193,8 +1195,10 @@ are refused if the number of unauthenticated connections reaches full (60). .It Cm PasswordAuthentication Specifies whether password authentication is allowed. +See also +.Cm UsePAM . The default is -.Cm yes . +.Cm no . .It Cm PermitEmptyPasswords When password authentication is allowed, it specifies whether the server allows login to accounts with empty password strings. @@ -1285,7 +1289,14 @@ or .Cm no . The default is -.Cm prohibit-password . +.Cm no . +Note that if +.Cm ChallengeResponseAuthentication +and +.Cm UsePAM +are both +.Cm yes , +this setting may be overridden by the PAM policy. .Pp If this option is set to .Cm prohibit-password @@ -1583,6 +1594,15 @@ .Cm TrustedUserCAKeys . For more details on certificates, see the CERTIFICATES section in .Xr ssh-keygen 1 . +.It Cm UseBlacklist +Specifies whether +.Xr sshd 8 +attempts to send authentication success and failure messages +to the +.Xr blacklistd 8 +daemon. +The default is +.Cm no . .It Cm UseDNS Specifies whether .Xr sshd 8 @@ -1591,8 +1611,8 @@ very same IP address. .Pp If this option is set to -.Cm no -(the default) then only addresses and not host names may be used in +.Cm no , +then only addresses and not host names may be used in .Pa ~/.ssh/authorized_keys .Cm from and @@ -1600,6 +1620,8 @@ .Cm Match .Cm Host directives. +The default is +.Dq yes . .It Cm UsePAM Enables the Pluggable Authentication Module interface. If set to @@ -1623,12 +1645,15 @@ .Xr sshd 8 as a non-root user. The default is -.Cm no . +.Cm yes . .It Cm VersionAddendum Optionally specifies additional text to append to the SSH protocol banner sent by the server upon connection. The default is -.Cm none . +.Qq FreeBSD-20180909 . +The value +.Cm none +may be used to disable this. .It Cm X11DisplayOffset Specifies the first display number available for .Xr sshd 8 Ns 's @@ -1642,7 +1667,7 @@ or .Cm no . The default is -.Cm no . +.Cm yes . .Pp When X11 forwarding is enabled, there may be additional exposure to the server and to client displays if the @@ -1698,7 +1723,7 @@ .Cm none to not use one. The default is -.Pa /usr/X11R6/bin/xauth . +.Pa /usr/local/bin/xauth . .El .Sh TIME FORMATS .Xr sshd 8 Index: crypto/openssh/umac128.c =================================================================== --- crypto/openssh/umac128.c +++ crypto/openssh/umac128.c @@ -1,4 +1,12 @@ /* $OpenBSD: umac128.c,v 1.2 2018/02/08 04:12:32 dtucker Exp $ */ +/* $FreeBSD$ */ + +/* undo ssh_namespace.h munging */ +#undef umac_new +#undef umac_update +#undef umac_final +#undef umac_delete +#undef umac_ctx #define UMAC_OUTPUT_LEN 16 #define umac_new umac128_new Index: crypto/openssh/version.h =================================================================== --- crypto/openssh/version.h +++ crypto/openssh/version.h @@ -1,6 +1,15 @@ /* $OpenBSD: version.h,v 1.84 2019/04/03 15:48:45 djm Exp $ */ +/* $FreeBSD$ */ #define SSH_VERSION "OpenSSH_8.0" #define SSH_PORTABLE "p1" #define SSH_RELEASE SSH_VERSION SSH_PORTABLE + +#define SSH_VERSION_FREEBSD "FreeBSD-20200214" + +#ifdef WITH_OPENSSL +#define OPENSSL_VERSION_STRING SSLeay_version(SSLEAY_VERSION) +#else +#define OPENSSL_VERSION_STRING "without OpenSSL" +#endif