summaryrefslogtreecommitdiff
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-08-07No need to mark BN_options() as intentionally undocumented any longer.schwarze1-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.
2023-08-07Mark asn1_ps_func as obsolete and intentionally undocumented.schwarze1-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.
2023-08-07Mark BIT_STRING_BITNAME as obsolete and intentionally undocumented.schwarze1-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.
2023-08-07Add a regress test exercising BIO_dup_chain() and triggering the leaktb1-1/+43
fixed in bio_lib.c r1.47 as confirmed by ASAN.
2023-08-07Fix two leaks in BIO_dup_chain()tb1-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
2023-08-07Add missing space before =tb1-2/+2
2023-08-05remove trailing comma in NAME;jmc1-3/+3
2023-08-04Move the ENGINE_new() prototype a line downtb1-2/+2
2023-08-03Link new ccs test to buildtb1-1/+7
Exception needed since the test expects an unexpected_message alert, while we throw a decode_error.
2023-08-03Make the bn_rand_interval() API a bit more ergonomictb11-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
2023-08-03Retire the bn_rand_interval() testtb2-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.
2023-08-03Remove unused sk/lh macrostb1-170/+1
ok jsing miod
2023-08-02More whitespace fixes from knfmttb1-7/+7
2023-08-02Remove extraneous parentheses and fix weird whitespace.tb1-16/+15
2023-08-02Drop the _ex from BN_BLINDING_{convert,invert}_ex()tb3-12/+12
2023-08-02Remove the unused BN_BLINDING_{convert,invert}()tb2-16/+2
ok jsing
2023-08-02Make BN_BLINDING_{new,update}() static in bn_blind.ctb2-6/+4
ok jsing
2023-08-02Remove the unused flags member of BN_BLINDINGtb2-10/+4
Nothing sets this, so remove it along with BN_BLINDING_NO_{UPDATE,RECREATE} and some checks that are always true. ok jsing
2023-08-02Remove the unused flags accessors for BN_BLINDINGtb2-16/+2
ok jsing
2023-08-02Remove a 16 year old confusing lietb1-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.
2023-08-01Remove unused prototypetb1-3/+1
2023-07-31Remove more *_options() stufftb5-50/+5
The public symbols were removed. Some prototypes and in the case of DES even the implementation remained. ok jsing
2023-07-29Drop unused conf, pem, and x509 headers, add unistd for pledgetb1-4/+2
2023-07-29Move HAVE_FUNOPEN out of !NOPICtb1-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
2023-07-29Garbage collect rodata only used by RC4_options()tb1-5/+0
build tested by miod
2023-07-29Add _libre_CMS_{,SignerInfo}_get_versiontb1-0/+2
2023-07-29Remove {BN,idea}_options() leftoverstb3-6/+2
Some *_options() prototypes were left behind in headers. I will remove them after my amd64 ports bulk completes.
2023-07-29Remove BF_options() documentationtb1-9/+3
2023-07-29reinstate KNF for commenttb1-2/+2
2023-07-28Some of these functions no longer exist or are no longer publictb1-4/+1
2023-07-28DSO has left the buildingtb1-4/+1
2023-07-28Also remove ecdh.h use from libssltb1-2/+1
2023-07-28Stop including ecdsa.h and ecdh.h internallytb8-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
2023-07-28The CRYPTO_EX_DATA type is not opaquetb1-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
2023-07-28remove X509_ATTRIBUTE_SET_itjsg1-14/+1
public symbol removed in April ok tb@
2023-07-28dhtest: simplify printing and make the output slightly less uglytb1-34/+29
CID 463174
2023-07-28Combine ripemd into a single C file.jsing3-84/+20
2023-07-28Combine md5 into a single C file.jsing3-83/+20
2023-07-28Combine md4 into a single C file.jsing3-83/+20
2023-07-28bump libcrypto, libssl, libtls majorstb3-3/+3
2023-07-28Two files did not want to go away. Go!tb2-0/+0
2023-07-28Remove various ${thing}_optionstb12-224/+7
Various, ancient ciphers exposed some of their innards via an _options() API. Apart from openssl version/speed, only some lua thingie in nmap ever looked at these. Go figure. hppa testing by miod, i386 testing by sthen. Thanks! ok jsing
2023-07-28Remove more ASN1_BIT_STRING APItb5-72/+3
This removes ASN1_BIT_STRING_name_print(), ASN1_BIT_STRING_{num,set}_asc(). Before trust was properly handled using OIDs, there was a period where it used bit strings. The actual interfaces used in openssl x509 were removed, but the functions they wrapped remained unused for the next 24 years. ok jsing
2023-07-28Remove ASN1_BIT_STRING_checktb5-35/+3
This was added with the TS code for no discernible reason. I could not find a single consumer. In the unlikely event that you need this, it is easy enough to write a better version of it yourself. ok jsing
2023-07-28Provide CMS{,_SignerInfo}_get_versiontb4-3/+53
Add accessors for the syntax versions of ContentInfo and SignerInfo. These will be used soon in rpki-client for some more compliance checks. ok job jsing
2023-07-28Remove sk_nid_triple_*()tb1-23/+1
The nid_triple stack is no more. Its type never was part of the public API. Why its stack macros were will remain a mystery. ok jsing
2023-07-28Remove OBJ_add_sigid() and OBJ_sigid_free()tb5-24/+3
Another bit of unused extensibility that was responsible for a lot of complexity until recently. This removes the remaining stubs from the public API. ok jsing
2023-07-28Remove more ERR crufttb5-40/+3
Ever wondered how many entries populate the various err hashes? Me neither. Remove this garbage. ok jsing
2023-07-28Remove ERR_{get,set}_implementation()tb6-48/+6
Much like ex_data, applications can make the library use their own error stack implementation. Well, except as of right now they no longer can. ok jsing
2023-07-28Make ex_data implementations internaltb6-114/+41
To state the obvious: library suffers from way too much extensibility. In theory, applications can implement their own ex_data implementation. In practice, none did. A glance at ex_data.c might give an idea as to why. Make this internal so this particular turd can be replaced with something slightly saner. Also sync up the CRYPTO_EX_INDEX_* defines with OpenSSL - at least the parts we support. ok jsing