summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* document BIO_FLAGS_MEM_RDONLYschwarze2022-12-181-2/+17
|
* document BIO_set_retry_read(3), BIO_set_retry_write(3),schwarze2022-12-181-5/+95
| | | | | BIO_set_retry_special(3), BIO_clear_retry_flags(3), BIO_get_retry_flags(3), and the BIO_FLAGS_* constants
* document the interaction with BIO_dup_chain(3)schwarze2022-12-181-2/+14
|
* new manual page BIO_dup_chain(3)schwarze2022-12-189-19/+206
|
* correct the prototypes of BIO_get_conn_ip(3) and BIO_get_conn_int_port(3);schwarze2022-12-181-5/+3
| | | | | from Richard Levitte via OpenSSL commit 0e474b8b in the 1.1.1 branch, which is still under a freee license
* document BIO_number_read(3) and BIO_number_written(3)schwarze2022-12-181-5/+67
|
* nc: skip connection info on failed or skipped udptest()tb2022-12-181-5/+8
| | | | | | | In udp mode, nc would always print that the connected succeeded independently of whether that was actually the case. Don't do that. idea/ok mpf
* nc: do not test the connection in non-interactive modetb2022-12-181-1/+5
| | | | | | | | The connection test writes four X to the socket, which corrupts data that we may want to pipe into nc. So don't do that if stdin is not a tty but still do it in scan mode, this is needed according to chris. based on a diff by and ok mpf
* nc: clean up and simplify connection_infO()tb2022-12-181-7/+7
| | | | ok mpf as part of a larger diff
* nc: pass protocol name to connection_info()tb2022-12-181-7/+9
| | | | Avoids repeated use of ternary operator on globals.
* nc: factor printing of connection info into a functiontb2022-12-181-25/+28
| | | | | | | This simply moves a chunk of code in this spaghetti mess into its own function with minimal changes. idea from a diff by mpf
* Use volatile sig_atomic_t for flag set in signal handlertb2022-12-181-2/+2
|
* Switch to using BN_zero() instead of BN_zero_ex()tb2022-12-171-2/+2
|
* Move benchmark target up a bit and mark it phonytb2022-12-171-4/+5
|
* Zap some whitespacetb2022-12-171-2/+2
|
* Merge documentation of UI_null() from OpenSSL 1.1tb2022-12-171-5/+21
| | | | | | jsing doesn't like it, but it's better than nothing. ok jsing
* Document BIO_set_flags(3), BIO_clear_flags(3), BIO_test_flags(3),schwarze2022-12-171-4/+88
| | | | and BIO_get_flags(3).
* Link ui_null.c to buildtb2022-12-171-1/+2
|
* Prepare to provide UI_null()tb2022-12-173-2/+24
| | | | | | | | | | xmlsec needs this, nothing else. Our linkers link libxmlsec1-openssl, only warns and since nothing uses this library in ports, this wasn't noticed for a long time. Reported by Thomas Mitterfellner ok jsing
* Provide regress coverage for BN shift functions.jsing2022-12-172-1/+543
| | | | | | Provide regress coverage for BN_lshift1(), BN_rshift1(), BN_lshift() and BN_rshift(), along with basic benchmarking functionality (run via 'make benchmark').
* Revise cipher list regress coverage of SSL_set_security_level().jsing2022-12-171-21/+43
| | | | | | | A SSL_set_security_level() call was added to the cipher list regress, which expects a failure - however, it should succeed and fails for a completely unrelated reason. Rework this regress so that it actually passes and tests for the expected behaviour.
* Provide BN_zero()/BN_one() as functions and make BN_zero() always succeed.jsing2022-12-173-7/+22
| | | | | | | | | | | | | | BN_zero() is currently implemented using BN_set_word(), which means it can fail, however almost nothing ever checks the return value. A long time ago OpenSSL changed BN_zero() to always succeed and return void, however kept BN_zero as a macro that calls a new BN_zero_ex() function, so that it can be switched back to the "can fail" version. Take a simpler approach - change BN_zero()/BN_one() to functions and make BN_zero() always succeed. This will be exposed in the next bump, at which point we can hopefully also remove the BN_zero_ex() function. ok tb@
* X509_check_purpose.3: incorporate feedback from jsingtb2022-12-171-5/+5
|
* In bio.h rev. 1.54, jsing@ and tb@ provided BIO_callback_fn_ex(3),schwarze2022-12-161-77/+192
| | | | | | | | | | | BIO_set_callback_ex(3), BIO_get_callback_ex(3), and BIO_callback_fn(3). Document them, in part by merging from the OpenSSL 1.1.1 branch, which is still under a free license, but heavily tweaked by me, in particular: * mention that BIO_set_callback_arg(3) is misnamed; * keep our more detailed explanation of the "ret" argument; * make the list of callback invocations more readable; * and update the HISTORY section.
* Document extension caching of X509_check_purpose()tb2022-12-161-23/+43
| | | | | | | | | | The overwhelming majority of callers of X509_check_purpose() in our tree pass a purpose of -1. In this case X509_check_purpose() acts as a wrapper of x509v3_cache_extensions() which makes sanity checks like non-negativity of ASN.1 integers or canonicity of RFC 3779 extensions as well as checking uniqueness of extensions. from schwarze who beat an initial diff of mine into shape
* add a CAVEATS section warning the user to not create cycles;schwarze2022-12-161-1/+34
| | | | OK tb@
* Revert BIO_push(3) cycle prevention (bio_lib.c rev. 1.42).schwarze2022-12-162-39/+7
| | | | | | | | | | | | | | | | | | | jsing@ worries that cycle prevention might increase risk because software that is not checking return values (and indeed, not checking is likely common in practice) might silently behave incorrectly with cycle prevention whereas without, it will likely either crash right away through infinite recursion or at least hang in an infinite loop when trying to use the cyclic chain, in both cases making it likely that the bug will be found and fixed. Besides, tb@ points out that BIO_set_next(3) ought to behave as similarly as possible to BIO_push(3), but adding cycle prevention to BIO_set_next(3) would be even less convincing because that function does not provide a return value, encouraging users to expect that it will always succeed. While a safe idiom for checking the success of BIO_set_next(3) could easily be designed, let's be realistic: application software would be highly unlikely to pick up such an idiom.
* In curve25519.h rev. 1.4 to 1.7, tb@ and jsing@ providedschwarze2022-12-151-11/+121
| | | | | ED25519_keypair(3), ED25519_sign(3), and ED25519_verify(3). Document them.
* The argument to ctype functions must be EOF or representable as anflorian2022-12-151-2/+2
| | | | | | | | | | unsigned char. Casting to int is particularly useless because that's what the compiler already does. We need to prevent sign extension, not write down that we want sign extension. OK deraadt, kn, miod, op
* In evp.h rev. 1.109 and 1.112, jsing@ and tb@ providedschwarze2022-12-141-61/+154
| | | | | | | | | EVP_PKEY_new_raw_private_key(3), EVP_PKEY_new_raw_public_key(3), EVP_PKEY_get_raw_private_key(3), and EVP_PKEY_get_raw_public_key(3). Merge the documentation from the OpenSSL 1.1.1 branch, which is still under a free license. I tweaked the text somewhat for conciseness, and argument names for uniformity.
* In asn1.h rev. 1.71 and 1.72, jsing@ and tb@ provided ASN1_buf_print(3).schwarze2022-12-144-5/+78
| | | | Document it.
* Bump to LibreSSL 3.7.1tb2022-12-121-3/+3
|
* Add a small blurb on @SECLEVEL=nlibressl-v3.7.0tb2022-12-111-2/+8
|
* bio chain test: compress some error printingtb2022-12-101-5/+4
|
* bio chain test: deduplicate chain walking codetb2022-12-101-52/+40
|
* bio chain test: handle walking of empty chainstb2022-12-101-27/+15
| | | | | | Rework the loops walking the chains to be correct for empty chains as well. This simplifies the checking at the cost of slightly more initialization and will allow further refactoring in a subsequent check.
* bio chain test: add a consistency check for chain lengthstb2022-12-091-1/+9
|
* bn/Makefile: tidy up and simplifytb2022-12-091-16/+10
|
* bio chain test: make two errors noisytb2022-12-091-3/+11
|
* bio chain test: ensure the length of empty chains is 0tb2022-12-091-3/+9
|
* bio chain test: various minor readability tweakstb2022-12-091-6/+8
| | | | | | Align initialization in walk_backward() with walk_forward(), fix grammar in a comment and move initialization of oldhead_len in a place consistent with the other length initializations in that function
* bio chain test: fix inconsequential off-by-onetb2022-12-081-2/+2
|
* bio chain test: minor readability tweakstb2022-12-081-5/+6
|
* bio chain test: rename a few variables for consistencytb2022-12-081-29/+29
|
* bio chain test: decouple lengths of test chainstb2022-12-081-59/+89
| | | | | | Add helpers to create and destroy a linear chain of BIOs. Provide two defines for the two lengths of the test chains and make them distinct to rule out coincidences. As a bonus, the code becomes simpler.
* bio chain test: refactor link_chains_at()tb2022-12-081-198/+109
| | | | | Add helper that validate the chains. This deduplicates a lot of code and makes the heart of the test much easier to read.
* bio chain test: lose some do_{,bio_} prefixestb2022-12-081-12/+12
|
* Split biotest into its three logical partstb2022-12-084-458/+512
| | | | | | Some parts of this test rely on unportable behavior, so cannot run in portable. This way we can run more tests for portable which is helpful for analysis tools, better coverage, etc.
* biotest: Tweak long comment a bittb2022-12-081-11/+13
|
* Fix copy-paste error that left a paragraph ending in a commatb2022-12-081-3/+3
|