summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Simplify BN_BLINDING_invert()tb2023-08-091-14/+5
| | | | | | | If the blinding is non-NULL, Ai is set on it, so no need to check for that. Also, we can get away with a single call to BN_mod_mul(). ok jsing
* Unwrap a linetb2023-08-091-3/+2
|
* Unwrap a linetb2023-08-081-3/+2
|
* Drop the unused BN_BLINDING argument of BN_BLINDING_create_param()tb2023-08-083-14/+11
|
* Rename ret into b in BN_BLINDING_setup()tb2023-08-081-8/+8
|
* Factor the actual setup step for the blinding into a helpertb2023-08-081-30/+43
| | | | ok jsing
* X509_STORE_CTX_get_check_issued(3) is weird.schwarze2023-08-081-0/+9
| | | | | | Both the function return type and the function name are so long that for displaying the function prototype, a line break is needed after the function return type.
* Make BN_BLINDING respect some invariantstb2023-08-081-48/+17
| | | | | | | | | | | | Pass e and mod into BN_BLINDING_new() for now and unconditionally allocate A and Ai. This way non-NULL blindings always have these four members set. This allows removing several unnecessary checks in the update, convert and parameter creation code paths. Fix exit BN_BLINDING_create_param() so as to signal errors to the caller if a non-NULL blinding was passed. This fixes a long standing bug. ok jsing
* Simplify RSA_setup_blinding()tb2023-08-081-21/+16
| | | | | | | Make this look a bit more like other code we cleaned up avoiding nesting and unnecessary else branches. ok jsing
* Remove ECDSA nonce padding kludgetb2023-08-081-22/+1
| | | | | | | | | | | This was a workaround due to the historically non-constant time scalar multiplication in the EC code. Since Brumley and Tuveri implemented the Montgomery ladder, this is no longer useful and should have been removed a long time ago, as it now does more harm than good. Keep the preallocations as they still help hiding some timing info. ok jsing
* In objects.h rev. 1.17 (Jan 14, 2022),schwarze2023-08-081-7/+1
| | | | | | | | | | | | tb@ removed the following macros from the public API: _DECLARE_OBJ_BSEARCH_CMP_FN DECLARE_OBJ_BSEARCH_CMP_FN DECLARE_OBJ_BSEARCH_GLOBAL_CMP_FN IMPLEMENT_OBJ_BSEARCH_CMP_FN IMPLEMENT_OBJ_BSEARCH_GLOBAL_CMP_FN OBJ_bsearch OBJ_bsearch_ex In objects.h rev. 1.20 (Nov 11, 2022), jsing@ unifdef'ed USE_OBJ_MAC. Stop marking these names as intentionally undocumented.
* No need to mark BN_options() as intentionally undocumented any longer.schwarze2023-08-071-1/+0
| | | | | | | | In bn.h rev. 1.75 (July 31, 2023), tb@ removed it from the public API. While here, stop marking BN_prime_checks as obsolete. In BN_generate_prime.3 rev. 1.23 (May 11, 2023), tb@ documented the constant BN_prime_checks in that manual page.
* Mark asn1_ps_func as obsolete and intentionally undocumented.schwarze2023-08-071-0/+1
| | | | | In bio.h rev. 1.59 (July 28, 2023), tb@ removed the last four functions that took function pointers of this type from the public API.
* Mark BIT_STRING_BITNAME as obsolete and intentionally undocumented.schwarze2023-08-071-0/+1
| | | | | In asn1.h rev. 1.80 (July 28, 2023), tb@ removed the last three functions that were using this data type from the public API.
* Add a regress test exercising BIO_dup_chain() and triggering the leaktb2023-08-071-1/+43
| | | | fixed in bio_lib.c r1.47 as confirmed by ASAN.
* Fix two leaks in BIO_dup_chain()tb2023-08-071-19/+17
| | | | | | | | If CRYPTO_dup_ex_data() fails, the new_bio is leaked. If an error occurs after the first iteration, all members of the new chain except the head are leaked. ok jsing
* Add missing space before =tb2023-08-071-2/+2
|
* remove trailing comma in NAME;jmc2023-08-051-3/+3
|
* Move the ENGINE_new() prototype a line downtb2023-08-041-2/+2
|
* Link new ccs test to buildtb2023-08-031-1/+7
| | | | | Exception needed since the test expects an unexpected_message alert, while we throw a decode_error.
* Make the bn_rand_interval() API a bit more ergonomictb2023-08-0311-52/+57
| | | | | | | | | | | | | | | | | | Provide bn_rand_in_range() which is a slightly tweaked version of what was previously called bn_rand_range(). The way bn_rand_range() is called in libcrypto, the lower bound is always expressible as a word. In fact, most of the time it is 1, the DH code uses a 2, the MR tests in BPSW use 3 and an exceptinally high number appears in the Tonelli-Shanks implementation where we use 32. Converting these lower bounds to BIGNUMs on the call site is annoying so let bn_rand_interval() do that internally and route that through bn_rand_in_range(). This way we can avoid using BN_sub_word(). Adjust the bn_isqrt() test to use bn_rand_in_range() since that's the only caller that uses actual BIGNUMs as lower bounds. ok jsing
* Retire the bn_rand_interval() testtb2023-08-032-115/+1
| | | | | | This test was never particularly useful. An upcoming API change for the internal bn_rand_interval() API would require some adjustments. It's not worth it.
* Remove unused sk/lh macrostb2023-08-031-170/+1
| | | | ok jsing miod
* More whitespace fixes from knfmttb2023-08-021-7/+7
|
* Remove extraneous parentheses and fix weird whitespace.tb2023-08-021-16/+15
|
* Drop the _ex from BN_BLINDING_{convert,invert}_ex()tb2023-08-023-12/+12
|
* Remove the unused BN_BLINDING_{convert,invert}()tb2023-08-022-16/+2
| | | | ok jsing
* Make BN_BLINDING_{new,update}() static in bn_blind.ctb2023-08-022-6/+4
| | | | ok jsing
* Remove the unused flags member of BN_BLINDINGtb2023-08-022-10/+4
| | | | | | | Nothing sets this, so remove it along with BN_BLINDING_NO_{UPDATE,RECREATE} and some checks that are always true. ok jsing
* Remove the unused flags accessors for BN_BLINDINGtb2023-08-022-16/+2
| | | | ok jsing
* Remove a 16 year old confusing lietb2023-08-021-2/+2
| | | | | The mod member of BN_BLINDING hasn't been /* just a reference */ since the branch prediction mitigations in OpenSSL bd31fb21 from March 2007.
* Remove unused prototypetb2023-08-011-3/+1
|
* Remove more *_options() stufftb2023-07-315-50/+5
| | | | | | | The public symbols were removed. Some prototypes and in the case of DES even the implementation remained. ok jsing
* Drop unused conf, pem, and x509 headers, add unistd for pledgetb2023-07-291-4/+2
|
* Move HAVE_FUNOPEN out of !NOPICtb2023-07-291-5/+1
| | | | | | | | Due to some historic accident, HAVE_FUNOPEN was grouped with DSO_DLFCN and HAVE_DLFCN_H inside !defined(NOPIC). While the two DLFCN bits belong there, HAVE_FUNOPEN doesn't. ok jsing, millert agrees
* Garbage collect rodata only used by RC4_options()tb2023-07-291-5/+0
| | | | build tested by miod
* Add _libre_CMS_{,SignerInfo}_get_versiontb2023-07-291-0/+2
|
* Remove {BN,idea}_options() leftoverstb2023-07-293-6/+2
| | | | | Some *_options() prototypes were left behind in headers. I will remove them after my amd64 ports bulk completes.
* Remove BF_options() documentationtb2023-07-291-9/+3
|
* reinstate KNF for commenttb2023-07-291-2/+2
|
* Some of these functions no longer exist or are no longer publictb2023-07-281-4/+1
|
* DSO has left the buildingtb2023-07-281-4/+1
|
* Also remove ecdh.h use from libssltb2023-07-281-2/+1
|
* Stop including ecdsa.h and ecdh.h internallytb2023-07-288-21/+9
| | | | | | | | These headers are now reduced to #include <openssl/ec.h> and are provided for compatiblity only. There's no point in using them. At the same time garbage collect the last uses of OPENSSL_NO_{ECDSA,ECDH} in our tree. ok jsing
* The CRYPTO_EX_DATA type is not opaquetb2023-07-281-5/+2
| | | | | | | | | By API misdesign, it cannot be opaque. The incorrect documentation was added as a part of a huge commit with a lot of churn. CRYPTO_EX_DATA typically lives as an embedded struct of an opaque struct, but it can also be used by applications, for example to initialize libssl. documentation error pointed out by jsing
* remove X509_ATTRIBUTE_SET_itjsg2023-07-281-14/+1
| | | | | public symbol removed in April ok tb@
* dhtest: simplify printing and make the output slightly less uglytb2023-07-281-34/+29
| | | | CID 463174
* Combine ripemd into a single C file.jsing2023-07-283-84/+20
|
* Combine md5 into a single C file.jsing2023-07-283-83/+20
|
* Combine md4 into a single C file.jsing2023-07-283-83/+20
|