| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
ok djm@
|
|
|
|
|
|
|
| |
I can't find a reliable way to detect the features the ML-KEM code
requires in configure. Give up for now and use VLA support (that we
can detect) as a proxy for "old compiler" and turn off ML-KEM if
it isn't supported.
|
|
|
|
|
| |
The previous commit was incorrect (or at least insufficient), the
ML-KEM code is actually using compound literals, so test for them.
|
|
|
|
|
|
|
| |
The ML-KEM implementation we uses need the compiler to support
C99-style named struct initialisers (e.g foo = {.bar = 1}). We
still support (barely) building OpenSSH with older compilers, so
add a configure test for this.
|
|
|
|
|
|
|
|
|
|
|
| |
compile-time flag now than an IANA codepoint has been assigned for the
algorithm.
Add mlkem768x25519-sha256 in 2nd KexAlgorithms preference slot.
ok markus@
OpenBSD-Commit-ID: 9f50a0fae7d7ae8b27fcca11f8dc6f979207451a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ML-KEM768 with ECDH/X25519 from the Internet-draft:
https://datatracker.ietf.org/doc/html/draft-kampanakis-curdle-ssh-pq-ke-03
This is based on previous patches from markus@ but adapted to use the
final FIPS203 standard ML-KEM using a formally-verified implementation
from libcrux.
Note this key exchange method is still a draft and thus subject to
change. It is therefore disabled by default; set MLKEM=yes to build it.
We're making it available now to make it easy for other SSH
implementations to test against it.
ok markus@ deraadt@
OpenBSD-Commit-ID: 02a8730a570b63fa8acd9913ec66353735dea42c
|
|
|
|
|
| |
This should make LibreSSL 3.1.x through 3.3.x work again. Code from
tb@, ok djm@. Restore the test configs covering those.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
If the following functions are available,
add an additional check if users are allowed to login imposed by login class.
* auth_hostok(3)
* auth_timeok(3)
These functions are implemented on FreeBSD.
|
|
|
|
|
|
|
|
| |
Like Linux, proper _SOURCE macros need to be set to get declarations of
various standard functions, notably setres*id. Now that Debian is using
-Werror=implicit-function-declaration this is really required. While at
it, define other _SOURCE macros like on GNU/Linux, since GNU/Hurd uses
the same glibc.
|
|
|
|
|
|
|
|
|
| |
markus@
(yes, I know this expands to "the Digitial Signature Algorithm
signature algorithm)
OpenBSD-Commit-ID: 961ef594e46dd2dcade8dd5721fa565cee79ffed
|
|
|
|
|
|
|
|
|
| |
OpenSSL has moved to 3.4 which we don't currently accept. Based on
the OpenSSL versioning policy[0] it looks like all of the 3.x versions
should work with OpenSSH, so remove the distinction in configure and
accept all of them.
[0] https://openssl.org/policies/general/versioning-policy.html
|
|
|
|
|
|
| |
Standalone implementation that does not depend on libsystemd.
With assistance from Luca Boccassi, and feedback/testing from Colin
Watson. bz2641
|
|
|
|
|
|
| |
If --enable/disable-dsa-keys is not specified, set based on what OpenSSL
supports. If specified as enabled, but not supported by OpenSSL error
out. ok djm@
|
|
|
|
|
| |
Wrong function signature in configure.ac prevents openssh from enabling
the recently new support for ED25519 priv keys in PEM PKCS8 format.
|
|
|
|
|
| |
Use openssl in the directory specified by --with-ssl-dir as long
as it's functional. Reported by The Doctor.
|
|
|
|
| |
discussed with deraadt and dtucker a while ago
|
| |
|
|
|
|
| |
bz#3668, ok djm@
|
|
|
|
|
| |
.. and enable for the minix3 test VM. This will cause it to more reliably
skip tests that need FD passing and should fix the current test breakage.
|
|
|
|
|
|
|
|
| |
on
ok markus@
OpenBSD-Commit-ID: 4f8e98fc1fd6de399d0921d5b31b3127a03f581d
|
|
|
|
|
|
|
| |
Use OSSH_CHECK_CFLAG_LINK() for detection of these flags and extend
test program to exercise varargs, which seems to catch more stuff.
ok dtucker@
|
|
|
|
|
|
|
| |
... since it seems to be problematic with several different versions of
clang. Only use -fzero-call-used-regs=used which is less
problematic, except with Apple's clang where we don't use it at all.
bz#3629, ok djm@
|
|
|
|
|
| |
Correctly detects the version of OpenBSD's native clang, as well as
Apple's. Spotted tb@, ok djm@.
|
| |
|
|
|
|
|
| |
This will let us remove some -portable specific changes from
test-exec.sh.
|
|
|
|
|
|
| |
similar to what we do for the PuTTY ones.
OpenBSD-Regress-ID: 7de0e00518fb0c8fdc5f243b7f82f523c936049c
|
| |
|
|
|
|
|
|
| |
format; ok markus@ tb@
OpenBSD-Commit-ID: 01b85c91757e6b057e9b23b8a23f96415c3c7174
|
|
|
|
|
|
|
|
|
| |
Apple's versions of clang have version numbers that do not match the
corresponding upstream clang versions. Unfortunately, they do still
have the clang-15 zero-call-used-regs=all bug, so for now use the value
that doesn't result in segfaults. We could allowlist future versions
that are known to work. bz#3584 (and probably also our github CI
failures).
|
|
|
|
| |
bz#3604.
|
|
|
|
|
| |
Needed to detect old versions and give good "your version is bad"
messages at configure time; spotted by dtucker@
|
|
|
|
|
|
|
| |
OpenSSH now requires LibreSSL 3.1.0 or greater or
OpenSSL 1.1.1 or greater
with/ok dtucker@
|
|
|
|
|
| |
Place libfido2 before additional libraries (that it may depend upon)
and not after. bz3530 from James Zhang; ok dtucker@
|
|
|
|
|
|
|
| |
It's possible to install an OpenSSL in a path not in the system's
default library search path. OpenSSH can still use this (eg if you
specify an rpath) but the openssl binary there may not work. If one is
available on the system path just use that.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
clang 15 seems to have a problem with -fzero-call-used-reg=all which
causes spurious "incorrect signature" failures with ED25519. On those
versions, use -fzero-call-used-regs=used instead. (We may add exceptions
later if specific versions prove to be OK). Also move the GCC version
check to match.
Initial investigation by Daniel Pouzzner (douzzer at mega nu), workaround
suggested by Bill Wendling (morbo at google com). bz#3475, ok djm@
|
|
|
|
|
|
|
|
| |
On some very old platforms, sys/stat.h needs sys/types.h, however
autoconf 2.71's AC_CHECK_INCLUDES_DEFAULT checks for them in the
opposite order, which in combination with modern autoconf's
"present but cannot be compiled" behaviour causes it to not be
detected.
|
|
|
|
|
|
|
| |
glibc has the prototypes for setresuid and setresgid behind _GNU_SOURCE,
and clang 16 will error out on implicit function definitions, so add
_GNU_SOURCE and the required headers to the configure checks. From
sam at @gentoo.org via bz#3497.
|
|
|
|
|
|
|
|
| |
Clang 16 now warns on this and it'll be removed in C23, so let's
just be future proof. It also reduces noise when doing general
Clang 16 porting work (which is a big job as it is). github PR#355.
Signed-off-by: Sam James <sam@gentoo.org>
|
|
|
|
|
|
|
|
| |
Another Clang 16ish fix (which makes -Wimplicit-function-declaration
an error by default). github PR#355.
See: 2efd71da49b9cfeab7987058cf5919e473ff466b
See: be197635329feb839865fdc738e34e24afd1fca8
|
|
|
|
|
| |
If found, set SOCK_HAS_LEN which is used in addr.c. Should fix keyscan
tests on platforms with this (eg old NetBSD).
|
|
|
|
| |
While there, also accept 301 which it shat it was previously.
|
| |
|
|
|
|
|
|
| |
Clang 15 -Wimplicit-int defaults to an error in C99 mode and above.
A handful of tests have "main(..." and not "int main(..." which caused
the tests to produce incorrect results.
|
|
|
|
| |
Fixes build on (at least Solaris 10).
|
|
|
|
| |
Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
|