summaryrefslogtreecommitdiff
path: root/src/regress/lib (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ec_asn1_test: for curves that have a seed, validate the parameters a and btb2025-06-141-2/+195
| | | | | | per X9.62, F.3.4.b. This ensures that the table entries in ec_curves.c for the NIST curves P-224, P-256, P-384, and P-521 are internally consistent and in particular that the seed is correct.
* Add a test to verify the fpurge problem doesn't happen. fpurge()yasuoka2025-06-121-1/+41
| | | | | mistaknely made the write buffer usable even if the stream is read mode. See the change of lib/libc/stdio/fpurge.c,v 1.11.
* allow checking of tls.hschwarze2025-06-081-2/+3
|
* allow checking of conf.hschwarze2025-06-081-1/+5
|
* Test to verify the handling of fflush() for the pushed-back buffer thatyasuoka2025-06-081-1/+40
| | | | has been read or that has not.
* libtls: add basic regress for ALPNtb2025-06-041-1/+138
| | | | | This currently only tests the behavior for successful protocol negotiations since the test expects all handshakes to complete.
* Now our fflush() comply POSIX-2008. test_fflush is expected "pass".yasuoka2025-06-032-6/+3
| | | | And switch test___freadahead to use another version that uses fflush().
* parse_test_file: add a missing call to finish in last cleanuptb2025-06-031-1/+4
|
* parse_test_file: add missing error checks for init()tb2025-06-031-3/+5
|
* Add non-EVP tests for AES CFB128 and OFB128 modeskenjiro2025-06-031-8/+112
| | | | | | | | | Extend aes_test.c to include non-EVP tests for AES CFB128 and OFB128 modes using AES_cfb128_encrypt() and AES_ofb128_encrypt(). These additions improve test coverage by exercising the low-level interfaces with the same vectors used in the EVP-based tests. ok tb@
* openssl-ruby/Makefile: zap trailing whitespace added in previoustb2025-05-311-2/+2
|
* explicit_bzero test: don't redefine __SANITIZE_ADDRESS__tb2025-05-311-1/+3
| | | | Silences an annoying warning when running tests with ASAN.
* test.h: include stddef.h for NULL and size_ttb2025-05-311-1/+2
|
* test.c: drop include of libgen.htb2025-05-311-2/+1
| | | | | This no longer uses basenam, so we can drop this header which isn't available on Windows.
* test.c: plug leak of tmp_filetb2025-05-311-1/+2
|
* Fix attributes in test.htb2025-05-311-4/+4
| | | | | | | | | | The __attribute__ is part of the function declaration, hence drop the incorrect early semicolons. Fixes the build of the md test on sparc64. In file included from /usr/src/regress/lib/libcrypto/md/md_test.c:25: /usr/src/regress/lib/libcrypto/md/../test/test.h:61: warning: empty declaration /usr/src/regress/lib/libcrypto/md/../test/test.h:77: warning: empty declaration /usr/src/regress/lib/libcrypto/md/../test/test.h:114: warning: empty declaration
* test.c: avoid NULL-dereferencetb2025-05-311-2/+3
| | | | | | | test_init() calls test_new(NULL, NULL), which leads to a segfault. llvm 16 optimizes this away with -O2, however gcc 4.2.1 on sparc64 doesn't. Fix this by only inheriting the out FILE from the parent if the latter is non-NULL.
* Add test whether fflush() complies POSIX for the handling ofyasuoka2025-05-251-1/+82
| | | | pushed-back wchar_t chars.
* Add test for ungetwc().yasuoka2025-05-252-1/+94
|
* Add tests for the functions in <stdio_ext.h>.yasuoka2025-05-257-2/+455
|
* Include "stdio" in SUBDIR. This should have been done along with theyasuoka2025-05-251-4/+4
| | | | previous commit.
* Add regress/lib/libc/stdio/test_fflush.c to test fflush() behavior foryasuoka2025-05-242-0/+236
| | | | | | reading FILE objects. It will fail until fflush() complies POSIX-2008. ok tb asou
* Adapt to new maloc_options declarationotto2025-05-241-2/+2
|
* Adapt test to new malloc_options regimeotto2025-05-241-7/+8
|
* Add the ability to run individual ruby ssl test for figuring outbeck2025-05-231-1/+16
| | | | | | what is going on when these break ok tb@
* asn1: merge invalid generalized time tests into invalid time testsjoshua2025-05-221-16/+10
| | | | | | | | | | | Previously, invalid generalized time tests were split into a separate set of test vectors and a flag was used when calling the test function to indicate they should be tested as generalized only. This simplifies the code a bit, and makes converting to the new test framework easier. ok jsing
* Convert sha_test to use new test frameworkjoshua2025-05-222-153/+141
| | | | ok beck
* Convert md_test to use new test frameworkjoshua2025-05-222-122/+106
| | | | ok jsing tb beck
* Fix test_errorf macro expanding to two linesjoshua2025-05-221-4/+8
| | | | | This caused test_fail to always be called when used in certain conditions, and wrapping with do {} while (0) fixes this.
* Add basic HKDF test using EVP_PKEY_HKDFkenjiro2025-05-221-1/+81
| | | | | | | | Add a basic test case for HKDF using EVP_PKEY_HKDF to evp_test.c. This test verifies the correct derivation of output keying material using SHA-256, matching the test vector from RFC 5869 Appendix A.1. ok tb@ joshua@
* Add initial regress test frameworkjoshua2025-05-213-0/+408
| | | | | | | | | | Add a test framework for use in LibreSSL regression tests. This test framework aims to be as lightweight and as simple to use as possible. The design is mostly inspired by Go's test system, and aims to be a drop-in utility in most existing regress tests. ok jsing tb beck
* Add NULL checks to HKDF and TLS1-PRF EVP_PKEY cleanup functionskenjiro2025-05-211-1/+3
| | | | | | | | Check if ctx->data is NULL before calling freezero(). Also add HKDF and TLS1-PRF to the EVP_PKEY cleanup regression test, as they no longer crash with this change. ok tb@
* mlkem_unittest: fix typo in commenttb2025-05-211-2/+2
|
* Make MLKEM1024_marshal_private_key consistent with the public_key funcitonsbeck2025-05-205-39/+24
| | | | | | | | Even though this should remain internal, make it the same as the public key marshal function, and make the needed fallout changes in regress. ok kenjiro@, tb@
* Fix up MLKEM768_marshal_private_key to not use a passed in CBBbeck2025-05-195-26/+11
| | | | | | | | | | | | Even though this should remain internal, make it the same as the public key marshal function, and make the needed fallout changes in regress. This does not yet do the bikeshed of renaming the structure field in the regress ctx, that will wait until a follow on to convert 1024 in a similar manner ok tb@
* API changes for ML-KEMbeck2025-05-195-98/+77
| | | | | | | | | - Get rid of CBB/CBS usage in public api - Make void functions return int that can fail if malloc fails. Along with some fallout and resulting bikeshedding in the regress tests. ok jsing@, tb@
* bio_dump: only run strncmp if there's something to comparetb2025-05-181-2/+2
|
* Stop using CRYPTO_gcm128_init() and stack allocated GCM128_CONTEXT.jsing2025-05-161-16/+16
| | | | | | | Since struct gcm128_context is not exposed via a public header, there is no way CRYPTO_gcm128_init() can actually be used properly. Instead, use CRYPTO_gcm128_new() and CRYPTO_gcm128_free_bird()^WCRYPTO_gcm128_release() (naming consistency is apparently hard).
* merge the x509name test into x509_name_test.ctb2025-05-054-73/+125
| | | | | | | | | | | | | Remove the old x509name test and its Makefile rule. Its logic has been fully integrated into x509_name_test.c using a new table-driven approach. Each x509 name entry is added and validated step by step, checking both the string representation produced by X509_NAME_print_ex() and the internal RDN set structure. This makes the test easier to extend and maintain, and eliminates the need for an external .expected file or output diff. From Kenjiro Nakayama (with tiny tweaks)
* Improve the pqueue testtb2025-05-043-48/+57
| | | | | | | This simplifies the test in portable and makes the whole thing a bit less ugly overall. From Kenjiro Nakayama with minor tweaks by me
* Remove the three test cases covering prime239v*tb2025-05-041-121/+1
|
* Verify that the selected key share is indeed group 29tb2025-05-031-1/+6
| | | | From Kenjiro Nakayama
* mlkem_unittest: check return value of decap()tb2025-05-031-5/+11
| | | | From Kenjiro Nakayama
* mlkem_tests: add an empty line for consistencytb2025-05-031-1/+2
|
* tlsexttest: remove check that clients receive SNI before ALPNtb2025-04-301-33/+3
| | | | | | The next commit will remove the kludge for compatibility of Apache with older libressl, so remove the corresponding regress coverage and only check that PSK is the last extension.
* c2sp: drop OpenSSL 1.1 and 3.2, add 3.5tb2025-04-271-2/+2
|
* Enable remaining tests with NULL, 0tb2025-04-142-9/+3
| | | | Now that libc is fixed, we can do this also for md5, rmd160 and sha1.
* Link hash regress to buildtb2025-04-141-1/+2
|
* Add some regress coverage for the hashes in libctb2025-04-142-0/+946
| | | | Prompted by a pending diff by claudio
* parse_test_file()tb2025-04-131-1/+3
| | | | | | gcc 14 needs a hint that ld != NULL beyond the use of ld->data in the previous line. I guess aggressive inlining is becoming too aggressive. What a pile of junk.