summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix line wrapping.jsing2024-03-281-6/+4
|
* Remove fallback files that are now always included in the build.jsing2024-03-281-5/+1
|
* Move rc4.c to primary Makefile.jsing2024-03-2812-32/+14
| | | | This is now built on all platforms.
* Use C functions for RC4 public API.jsing2024-03-285-21/+52
| | | | | | | | | | | | | | Rather than having public API switch between C and assembly, always use C functions as entry points, which then call an assembly implementation (if available). This makes it significantly easier to deal with symbol aliasing/namespaces and it also means we benefit from vulnerability prevention provided by the C compiler. Rename the assembly generated functions from RC4() to rc4_internal() and RC4_set_key() to rc4_set_key_internal(). Always include rc4.c and change it to use defines that are similar to those used in BN. ok beck@ joshua@ tb@
* Check the return value of EVP_CIPHER_CTX_reset()tb2024-03-281-3/+5
| | | | | | | The function call can't actually fail, but all other calls check its return value. ok joshua jsing
* Move des sources to primary Makefile.jsing2024-03-2812-35/+13
| | | | | Now that all platforms use a C des implementation, move it to the primary Makefile.
* Remove now unused des assembly.jsing2024-03-283-2630/+0
|
* Stop building the assembly implementation of des on sparc64.jsing2024-03-281-6/+2
| | | | | | This one was hiding behind an m4 script. Build tested by tb@
* Remove now unused ripemd i386 assembly.jsing2024-03-281-591/+0
|
* Stop building the assembly implementation of des and ripemd on i386.jsing2024-03-281-6/+2
| | | | | | | | This is the only architecture that has an assembly implementation for these algorithms. There is little to gain from accelerating legacy algorithms on a legacy architecture. Discussed with beck@ and tb@
* Consolidate most of the AES modes into a single C file.jsing2024-03-286-293/+70
| | | | Discussed with tb@
* PKCS#1.5 PBE: test and assigntb2024-03-281-3/+2
|
* Remove unused rc4 parisc assembly.jsing2024-03-272-299/+1
| | | | This is already disabled since it is "about 35% slower than C code".
* Catch the blowfish that escaped.jsing2024-03-271-2/+2
|
* Consolidate rc4 code.jsing2024-03-2712-119/+50
| | | | Discussed with tb@
* Remove assembly for stitched modes.jsing2024-03-273-1756/+1
| | | | | The stitched modes have been removed, so having assembly for them is of little use.
* Remove empty rc4_local.h include.jsing2024-03-273-10/+2
| | | | Discussed with tb@
* Remove private_RC4_set_key() from the public rc4.h header.jsing2024-03-271-2/+1
| | | | This does not exist in libcrypto.
* Unifdef BF_PTR2.jsing2024-03-272-95/+4
| | | | | | This removes the unused Intel special version of BF_ENC(). ok tb@
* Remove unused c2l/c2ln/l2c/l2cn macros.jsing2024-03-271-47/+3
|
* Consolidate blowfish code.jsing2024-03-276-639/+381
| | | | Requested by tb@
* Replace GETU32 and PUTU32.jsing2024-03-272-29/+26
| | | | | | | | Replace GETU32 with crypto_load_be32toh() and PUTU32 with crypto_store_htobe32(). Make the offset handling cleaner at the same time. ok beck@ joshua@ tb@
* Remove now unused files.jsing2024-03-272-274/+0
|
* Move bf_enc.c to the primary Makefile.jsing2024-03-2712-34/+12
| | | | | Now that all architectures are using bf_enc.c, it does not make sense to have it in every Makefile.inc file.
* Stop building the assembly implementation of blowfish on i386.jsing2024-03-271-3/+2
| | | | | | | | This is the only architecture that has an assembly implementation. There is little to gain from accelerating a legacy algorithm on a legacy architecture. ok beck@ tb@
* Remove near duplicate AES_set_{encrypt,decrypt}_key() functions.jsing2024-03-271-208/+2
| | | | | | | | | | | | | | | There are currently three ways in which AES is implemented - all in assembly (amd64 et al), all in C (aarch64 et al) and, half in C and half in assembly (hppa and sparc64). The last of these cases currently makes use of a near duplicate AES_set_{encrypt,decrypt}_key() implementation that avoids using the AES tables. Remove the near duplicate version and if only a half assembly version is implemented, use the same C version of AES_set_{encrypt,decrypt}_key() as everyone else. This adds around 8KB of rodata to libcrypto on these two platforms. Discussed with beck and tb.
* Explain the weird copy dance in EVP_DigestSignFinal()tb2024-03-271-2/+3
| | | | with jsing
* Fix whitespacetb2024-03-271-2/+2
|
* Use crypto_rol_u32() instead of an undefined ROTATE macro.jsing2024-03-271-9/+5
| | | | ok tb@
* Remove unused NDEBUG define.jsing2024-03-271-7/+1
|
* Tidy includes and a comment.jsing2024-03-271-3/+7
|
* Remove rather scary unused experimental code.jsing2024-03-271-1081/+0
| | | | ok tb@
* Clean up use of EVP_MD_CTX_{legacy_clear,cleanup} injoshua2024-03-271-18/+24
| | | | | | | | | EVP_DigestSignFinal Additionally, this cleans up some more surrounding code. This is a fixed version of r1.21. ok tb
* Demacro md4.jsing2024-03-271-100/+84
| | | | | | | Use static inline functions instead of macros. Also number rounds as per the RFC. ok joshua@ tb@
* Hide symbols in enginetb2024-03-273-1/+87
| | | | ok jsing
* Recommit r1.20joshua2024-03-271-27/+31
| | | | ok tb jsing
* Revert to r1.19 while we track down a bug in the last two commits.jsing2024-03-271-38/+29
|
* Clean up use of EVP_MD_CTX_{legacy_clear,cleanup} injoshua2024-03-271-17/+22
| | | | | | | | EVP_DigestSignFinal Additionally, this cleans up some more surrounding code. ok tB
* Use dsa for DSA and dh for DHtb2024-03-271-88/+90
| | | | | This unifies variable names and does some other cleanup. Only change in generated assembly is line number changes.
* Use dh for DH function arguments.tb2024-03-271-25/+23
| | | | No need for a variety of r, d, ...
* Unify *_up_ref() implementationstb2024-03-276-19/+12
| | | | | | No need for an inconsistently named local variable and a ternary operator. ok jsing
* Remove superfluous parentheses in X509_REQ setterstb2024-03-261-10/+10
| | | | No change in generated assembly
* Cosmetics, mostly removal of silly parenthesestb2024-03-261-21/+19
| | | | No change in generated assembly
* Drop superfluous parentheses in X509_set_version()tb2024-03-261-5/+5
|
* Tweak versions comment for CRLstb2024-03-261-1/+2
|
* piuid and psuid have annoyed me for long enoughtb2024-03-261-7/+7
|
* x509 trust: remove unneeded headerstb2024-03-261-3/+1
|
* Rework input and output handling for sha1.jsing2024-03-261-128/+79
| | | | | | | | Use be32toh(), htobe32() and crypto_{load,store}_htobe32() as appropriate. Also use the same while() loop that is used for other hash functions. ok joshua@ tb@
* Inline initial values.jsing2024-03-261-11/+8
| | | | No functional change.
* Rework input and output handling for md4.jsing2024-03-261-55/+61
| | | | | | Use le32toh(), htole32() and crypto_{load,store}_htole32() as appropriate. ok joshua@ tb@