summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Mop up MD32_XARRAY from md5.jsing2023-07-151-91/+84
| | | | | | | MD32_XARRAY was added as a workaround for a broken HP C compiler (circa 1999). Clean it up to simplify the code. No change in generated assembly.
* Mop up MD32_XARRAY from md4.jsing2023-07-151-75/+68
| | | | | | | MD32_XARRAY was added as a workaround for a broken HP C compiler (circa 1999). Clean it up to simplify the code. No change in generated assembly.
* Refactor ASN1_item_sign_ctx()tb2023-07-131-54/+89
| | | | | | | | | | | | | | | | | | | | | | Oh, joy! The muppets had a feast: they could combine the horrors of EVP with X.509... Return values between -1 and 3 indicating how much work needs to be done, depending on whether methods are present or absent. Needless to say that RSA and EdDSA had inconsistent return values until recently. Instead of interleaving if/else branches, split out two helper functions that do essentially independent things, which results in something that isn't entirely bad. Well, at least not compared to the surrounding code. asn1_item_set_algorithm_identifiers() extracts the signature algorithm from the digest and pkey if known, and sets it on the two X509_ALGOR that may or may not have been passed in. asn1_item_sign() converts data into der and signs. Of course there were also a few leaks and missing error checks. ok jsing
* Revert accidental addition of cofactor ECDH supporttb2023-07-121-16/+2
| | | | This snuck in with ech_key.c r1.33 because I committed from a dirty tree.
* Rename EC_KEY from r to key like in the rest of the filetb2023-07-101-4/+4
|
* Pull BIGNUM constants out of get_* function bodiestb2023-07-101-315/+331
| | | | | | | | | The get_rfc*_prime_* functions will be removed. The constants will remain for the BN_get_rfc*_prime_* functions. Make the latter call BN_bin2bn() directly on these constants rather than going through get_*. This avoids some overlong lines. Also KNF for some comments. Reduces the diff I currently carry by quite a bit.
* BIO_indent: use %*s rather than puts in a looptb2023-07-101-6/+5
| | | | ok beck jsing millert
* bn_print: string.h is no longer neededtb2023-07-101-2/+1
|
* Fix ndef_{prefix,suffix}()tb2023-07-091-11/+12
| | | | | | | | | These functions inline a poor version of asn1_item_flags_i2d() without error checks. This can be replaced with a single correct call to ASN1_item_ndef_i2d(). Mechanically adding malloc checks and checks for negative did not really improve things all that much in a related project. ok beck jsing
* Reimplement BN_print() and BN_print_fp()tb2023-07-092-47/+45
| | | | | | | | These can now use the internal version of BN_bn2hex() and be direct wrappers of BIO_printf() and fprintf() as they should have been all along. ok jsing
* Simplify bn_print()tb2023-07-091-5/+3
| | | | | | | We no longer need to do weird things as taking the length of the hex string and jumping over a sign we didn't need. ok jsing
* Refactor BN_bn2hex()tb2023-07-092-8/+57
| | | | | | | | | Various outputting functions are variants of BN_bn2hex(). They do not want a sign or they display the BIGNUM at nibble granularity instead of byte granularity. So add this functionality to an internal variant of BN_bn2hex(). with/ok jsing
* Provide optimised bn_subw() for riscv64.jsing2023-07-091-1/+18
|
* Provide optimised bn_addw() for riscv64.jsing2023-07-091-1/+18
|
* Add Xr to EVP_MD_meth_new to top level librarytb2023-07-091-2/+3
|
* Fix OpenBSD releasetb2023-07-091-3/+3
|
* ASN1_bn_print() will be removed soon. Remove docs.tb2023-07-095-130/+7
|
* link EVP_MD_meth_new.3 to buildtb2023-07-081-1/+2
|
* Import EVP_MD_meth_new.3 from OpenSSL 1.1.1 headtb2023-07-081-0/+292
| | | | | | | As usual, this has a lot of room for improvement, but it is better than nothing at all. It leaves a dangling reference to EVP_MD_CTX_md_data(), which I leave for schwarze to document. This is a terrible API and the way it is used in the wild is terrifying.
* Hide symbols in dhbeck2023-07-089-7/+171
| | | | ok tb@
* Hide symbols in curve22519beck2023-07-083-1/+45
| | | | ok tb@
* Hide symbols in modes.hbeck2023-07-089-7/+120
| | | | ok tb@
* Hit modes with the loving mallet of knfmtbeck2023-07-089-1164/+1342
| | | | ok tb@
* Hide symbols in gost.beck2023-07-089-5/+160
| | | | ok tb@ after some puking in his mouth.
* hide symbols in dsabeck2023-07-0810-8/+232
| | | | ok tb@
* Hide symbols in cmacbeck2023-07-083-1/+57
| | | | ok tb@
* Hide symbols in objectsbeck2023-07-087-5/+130
| | | | ok tb@
* Hide symbols in rsabeck2023-07-0818-18/+384
| | | | ok tb@
* Hide symbols in shabeck2023-07-085-3/+101
| | | | ok tb@
* Hide symbols in bnbeck2023-07-0820-18/+449
| | | | ok tb@
* Hide symbols in txt_dbbeck2023-07-083-1/+48
| | | | ok tb@
* Hide symbols in md4 and md5beck2023-07-087-6/+92
| | | | ok tb@
* Hide symbols in cast, idea, and ocspbeck2023-07-0823-20/+630
| | | | ok tb@
* Hide symbols in crypto.hbeck2023-07-0810-8/+190
| | | | ok jsing@
* Hide symbols in cms, comp, conf, and bufferbeck2023-07-0824-19/+546
| | | | ok jsing@
* Remove unused SHA-1 implementation.jsing2023-07-081-86/+1
|
* Remove now unnecessary "do { } while (0)"jsing2023-07-081-4/+2
|
* Inline HASH_MAKE_STRING macro.jsing2023-07-081-15/+14
| | | | No change to generated assembly.
* Reorder functions.jsing2023-07-081-113/+113
| | | | No functional change.
* More style(9).jsing2023-07-0814-107/+82
|
* Hit cast with the style(9) stick.jsing2023-07-088-895/+898
|
* Hide symbols in dso and ctbeck2023-07-0814-11/+313
| | | | ok jsing@
* Hit the des directory with the loving mallet of knfmtbeck2023-07-0826-2231/+2219
| | | | ok tb@
* style(9)jsing2023-07-081-36/+33
|
* Hit ripemd with the style(9) stick.jsing2023-07-084-249/+293
|
* Hit md5 with the style(9) stick.jsing2023-07-083-130/+163
|
* Hit md4 with the style(9) stick.jsing2023-07-083-114/+146
|
* Inline rmd_local.h in rmd_dgst.c.jsing2023-07-082-151/+93
| | | | | | | | rmd_local.h is not really a local header, just another layer of indirection that cannot be included by anything other than rmd_dgst.c. As such, include it directly instead. No change in generated assembly.
* Inline md5_local.h in md5_dgst.c.jsing2023-07-082-134/+76
| | | | | | | | md5_local.h is not really a local header, just another layer of indirection that cannot be included by anything other than md5_dgst.c. As such, include it directly instead. No change in generated assembly.
* Inline md4_local.h in md4_dgst.c.jsing2023-07-082-114/+56
| | | | | | | | md4_local.h is not really a local header, just another layer of indirection that cannot be included by anything other than md4_dgst.c. As such, include it directly instead. No change in generated assembly.