Theo Buehler
ccb8cf88c8
Unbreak torture_config_make_absolute() on OpenBSD
...
The torture_config_make_absolute() and its _no_sshdir() version both
segfault on OpenBSD. The reason for this is that the storage returned
by getpwuid() is backed by mmap and is unapped by the getpwnam() call
in ssh_path_expand_tilde(), so a later access to home segfaults. The
possibility of this happening (getpwnam() overwriting values returned
by getpwuid()) is explicitly called out in POSIX.
A simple fix is to work with copies of username and homedir.
Signed-off-by: Theo Buehler <tb@openbsd.org >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-07-01 20:50:25 +02:00
Praneeth Sarode
b43392c31d
tests(string): add unit tests for ssh_string functions
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-07-01 20:49:39 +02:00
Jakub Jelen
c22bfa792f
CVE-2025-5449 tests: Reproducer for payload length overrun
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-06-23 13:37:06 +02:00
Jakub Jelen
681a5aaa26
CVE-2025-5449 tests: Reproducer for server processing invalid handles
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-06-23 13:37:06 +02:00
Jakub Jelen
a4118ddc06
CVE-2025-5449 tests: Reproducer for sftp handles exhaustion
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-06-23 13:37:06 +02:00
Lucas Mulling
74eb01f26d
tests: Cleanup torture_channel_exit_signal
...
Signed-off-by: Lucas Mulling <lucas.mulling@suse.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-06-04 19:46:12 +02:00
Jakub Jelen
2a2c714dfa
tests: Auth without none method
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-06-03 10:23:17 +02:00
Nicolas Graves
4135154b6d
cmocka_unit_test_setup_teardown: Comply with codespell style.
...
Signed-off-by: Nicolas Graves <ngraves@ngraves.fr >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-30 20:11:51 +02:00
Praneeth Sarode
ca4c874a9e
tests: remove unsupported SHA1 HMAC tests for compatibility with latest dropbear version
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-27 13:50:03 +02:00
salonidabgar
c1fb0d872d
Reformatted torture_auth_cert.c
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
salonidabgar
3a167a89b5
Added tests for auth agent forwarding
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
salonidabgar
dfa9421e01
Added preprocessor directives for Windows
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
salonidabgar
efc5bc633f
Reformatted torture.c and torture.h
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
salonidabgar
3a4ba8b763
Fix file permissions: remove executable bit from CMakeLists.txt as it's a configuration file
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
salonidabgar
47db54b7c1
Move torture_setup_ssh_agent() and torture_cleanup_ssh_agent() to torture.c
...
Signed-off-by: salonidabgar <salonidabgar@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-05-14 13:45:23 +02:00
Lucas Mulling
d758990d39
misc: Fix OpenSSH banner parsing
...
Signed-off-by: Lucas Mulling <lucas.mulling@suse.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-28 14:56:27 -03:00
Andreas Schneider
bfae56634c
tests:unittests: Fix tests on FreeBSD
...
Signed-off-by: Andreas Schneider <asn@cryptomilk.org >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-24 10:47:26 +02:00
Jakub Jelen
bd10ec1162
tests: Use fseek instead of rewind to simplify error checking
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-16 17:41:22 +02:00
Jakub Jelen
f0b9db586b
test: Fix potential leak of fds on error
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-16 17:41:22 +02:00
Jakub Jelen
c735b44f83
test: Fix unused variables and potential memory leaks
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-16 17:41:22 +02:00
Jakub Jelen
3b4b8033de
tests: Make the static ananlyzers happy with the threads
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-16 17:41:22 +02:00
Praneeth Sarode
344235c954
fix(tests): improve synchronization in torture_forwarded_tcpip_callback tests
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-16 14:49:40 +02:00
Jakub Jelen
b14018ecab
tests: Do not build zlib test when built without
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-15 16:15:52 +02:00
Jakub Jelen
184dad101d
Move the PKCS#11 provider environment variable where it needs to be
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
Reviewed-by: Norbert Pocs <norbertpocs0@gmail.com >
2025-04-15 16:15:52 +02:00
Norbert Pocs
af10857aa3
CmakeLists: Fix multiple digit major version for OpenSSH
...
Signed-off-by: Norbert Pocs <norbertpocs0@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-14 22:19:18 +02:00
Praneeth Sarode
f3b389d112
tests: add unit test for direct-tcpip channel open request
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-07 14:02:41 +02:00
Praneeth Sarode
8c8d3ceef7
tests: add unit test for forwarded-tcpip callback
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-07 10:57:21 +02:00
Praneeth Sarode
0d0ed4b1f8
curve25519: add support for gcrypt's Curve25519 implementation
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-03 11:28:44 +02:00
Praneeth Sarode
d92a057090
tests: fix torture_server_x11 and add it to tests
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-04-01 10:19:14 +02:00
Aditya Sinha
cce600f980
test for ssh_get_kex_algo()
...
Signed-off-by: Aditya Sinha <aditya072006@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-30 13:10:53 +02:00
Praneeth Sarode
49a355c272
curve25519: Use mbedTLS curve25519 for ECDH, if available
...
Signed-off-by: Praneeth Sarode <praneethsarode@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-30 13:04:47 +02:00
David Wedderwille
84d02e7440
kex: Make existing convenience features available
...
Signed-off-by: David Wedderwille <davidwe@posteo.de >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-30 12:17:42 +02:00
Yuvraj Saxena
d02163546d
fuzz: Add ProxyJump misconfiguration cases to ssh_client_config_fuzzer_corpus
...
This commit adds test cases to catch issues where ProxyJump configurations lead to infinite loops or incorrect username usage, as reported in issue #287 , and issue #291
Signed-off-by: Yuvraj Saxena <ysaxenax@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-30 12:14:37 +02:00
Eshan Kelkar
6c4e4a9e1c
torture_sftpserver.c: Add test for O_TRUNC while opening files
...
Signed-off-by: Eshan Kelkar <eshankelkar@galorithm.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-18 18:13:51 +01:00
Jakub Jelen
a25f9d211d
tests: Fix variable names to avoid codespell issues
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-03-04 16:00:33 +01:00
Jakub Jelen
3a52bf1679
tests: Reproducer for graceful failure on ignored Match arguments
...
https://gitlab.com/libssh/libssh-mirror/-/issues/291#note_2376323499
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-03-04 16:00:33 +01:00
Jakub Jelen
f7bdd779d6
config: Be less strict when parsing unknown Match keywords
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-03-04 16:00:33 +01:00
Norbert Pocs
9613e9508d
tests/torture_proxyjump: Fix codespell issues
...
Signed-off-by: Norbert Pocs <norbertpocs0@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-03 11:20:48 +01:00
Norbert Pocs
6b9a6529bd
tests: Add torture_proxyjump_multiple_users_sshd_jump with Doe
...
Tests proxyjump with two servers and two users.
Signed-off-by: Norbert Pocs <norbertpocs0@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-03 11:20:48 +01:00
Norbert Pocs
b14cde6d2a
tests: Add multiple server proxyjump testcase
...
Tests proxyjump with the same user through two servers.
Signed-off-by: Norbert Pocs <norbertpocs0@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-03-03 11:20:48 +01:00
Norbert Pocs
e01c32f41e
tests: Add torture_setup_sshd_servers
...
Starts a second sshd. This enables to test proxyjump through
multiple servers.
Signed-off-by: Norbert Pocs <norbertpocs0@gmail.com >
Reviewed-by: Jakub Jelen <jjelen@redhat.com >
2025-02-28 10:05:12 +01:00
Jakub Jelen
c1a7de78d1
tests: Add PKCS#11 URI tests with Ed25519 keys
...
This will work only with pkcs11 provider. Not tested with engines.
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
9735f074ba
tests: Skip Ed25519 keys in FIPS mode
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
f14568262a
tests: Update PKCS#11 tests to follow global verbosity
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
257e8eb2c1
tests: Add PEM public Ed25519 key
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
99fcd56135
tests: Remove p11-kit remoting from pkcs11 tests
...
The p11-kit remoting was initially introduced because softhsm
was crashing during cleanup with OpenSSL 3.0. This was resolved
since then and this code introduces a lot of complexity and
possible bugs, such as when using the mechanisms from PKCS#11 3.0
that are unknown to the p11-kit remoting tool. It decides to remove
them from the list as demonstrated here:
https://github.com/p11-glue/p11-kit/issues/668
This resulted in pkcs11-provider not registering EDDSA siganture
methods to the OpenSSL and failing when asked to provide a singature
by the Ed25519 key from the PKCS#11 token.
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
8922e43578
tests: Improve logging on failures in ed25519 test
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Sahana Prasad <sahana@redhat.com >
2025-02-27 10:52:17 +01:00
Jakub Jelen
7f045e2d91
tests: Unit test nested quotes
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-02-11 13:20:20 +01:00
Jakub Jelen
2b916b3b88
tests: Reformat test list
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-02-11 12:17:34 +01:00
Jakub Jelen
a10553ae57
Reproducer for #291
...
Signed-off-by: Jakub Jelen <jjelen@redhat.com >
Reviewed-by: Andreas Schneider <asn@cryptomilk.org >
2025-02-11 12:17:34 +01:00