summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge aes_cbc.c into aes.c now that aes_cbc.c is used on all platforms.jsing2024-03-2814-102/+43
|
* Make AES_cbc_encrypt() always be a C function.jsing2024-03-285-17/+32
| | | | | | | | Rename the assembly generated functions from AES_cbc_encrypt() to aes_cbc_encrypt_internal(). Always include aes_cbc.c and change it to use defines that are similar to those used in BN. ok tb@
* Use static inline for rc4_set_key_internal().jsing2024-03-281-2/+2
|
* Remove unused SM3_Transform()jsing2024-03-281-9/+1
| | | | Along with the misnamed SM3_transform() prototype.
* Rename SM3_block_data_order() and make static.jsing2024-03-281-9/+8
|
* Remove md32_common.h since it is now (finally) unused.jsing2024-03-281-309/+0
|
* Rework loads and stores for sm3.jsing2024-03-281-61/+57
| | | | | | | Replace loads with crypto_load_be32toh() or be32toh(). Use crypto_store_htobe32() or htobe32() for stores. ok tb@
* Remove .init section that calls OPENSSL_cpuid_setup on i386.jsing2024-03-281-4/+0
| | | | | OPENSSL_cpuid_setup() is already called from OPENSSL_crypto_init(), hence we do not need or want automatic initialisation on library load.
* Remove .init section that calls OPENSSL_cpuid_setup on amd64.jsing2024-03-281-10/+0
| | | | | | | OPENSSL_cpuid_setup() is already called from OPENSSL_crypto_init(), hence we do not need or want automatic initialisation on library load. ok tb@
* Rework loads and stores in ripemd.jsing2024-03-281-74/+53
| | | | | | | Replace loads with crypto_load_le32toh() or le32toh(). Use crypto_store_htole32() or htole32() for stores. ok joshua@ tb@
* Remove OPENSSL_UNISTD definetb2024-03-2813-39/+0
|
* Expand ROTATE macro to crypto_rol_u32().jsing2024-03-281-8/+10
|
* Include stdint.h since we use uint*_t types.jsing2024-03-281-1/+2
|
* Inline initial hash values.jsing2024-03-281-18/+11
|
* Remove no unnecessary do { } while (0);jsing2024-03-281-3/+1
|
* Inline HASH_MAKE_STRING.jsing2024-03-281-17/+20
| | | | No change to generated assembly.
* Expand HASH_* defines.jsing2024-03-281-26/+28
| | | | No change in generated assembly.
* Hide symbols in RC4joshua2024-03-283-1/+36
| | | | ok jsing tb beck
* Reorder functions.jsing2024-03-281-116/+115
| | | | No functional change.
* Tidy includes.jsing2024-03-281-5/+5
|
* Inline functions from md32_common.h.jsing2024-03-281-1/+101
| | | | No change in generated assembly.
* Load in the top of the loop, as we do for other hash implementations.jsing2024-03-282-20/+20
|
* Remove now unnecessary do { } while (0);jsing2024-03-281-3/+1
|
* Inline HASH_MAKE_STRING.jsing2024-03-281-14/+14
| | | | No change in generated assembly.
* Expand ROTATE macro to crypto_rol_u32().jsing2024-03-281-11/+16
|
* Demacro sha1.jsing2024-03-281-164/+252
| | | | | | | | | Replace macros with static inline functions and use names that follow the spec more closely. Unlike SHA256/SHA512, the functions and constants do not align with the number of words loaded, which means we cannot easily loop and just end up just unrolling everything. ok joshua@ tb@
* Inline initial hash values.jsing2024-03-281-12/+8
|
* Clean up various defines and prototypes.jsing2024-03-281-28/+2
| | | | | No assembly implementations remain, hence we can clean the mess up and replace it with a single static void function.
* Use TLS_ERROR_INVALID_ARGUMENT for "too large" and "too small" errorsjoshua2024-03-282-8/+9
| | | | ok beck tb
* Nuke more gostbeck2024-03-282-0/+0
|
* Nuke more leftover GOST tendrils.beck2024-03-284-1499/+2
| | | | ok tb@
* Tidy includes.jsing2024-03-281-4/+4
|
* Expand HASH_* defines.jsing2024-03-281-27/+29
| | | | No change to generated assembly.
* Reorder functions.jsing2024-03-281-109/+109
| | | | No functional change.
* Inline functions from md32_common.h for ripemd.jsing2024-03-281-1/+101
| | | | No change to generated assembly.
* Fix line wrapping.jsing2024-03-281-6/+4
|
* Remove fallback files that are now always included in the build.jsing2024-03-281-5/+1
|
* Use TLS_ERROR_OUT_OF_MEMORY error code for calloc errors in libtlsjoshua2024-03-281-6/+7
| | | | ok jsing
* 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@
* Fix coverity complaints.beck2024-03-281-4/+6
|
* 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
|
* Stop pandering to the loadbalancer industrial complex.beck2024-03-281-17/+3
| | | | | | | | | | | | | | | | | So we initially kept this hack around for f5 boxes that should have been patched in 2014, and were not as of 2017. The f5 article for the bug archived on their web site, and any of these devices on the public internet will have since been upgraded to deal with a host of record layer, TLS, and other bugs, or they likely won't be talking to modern stacks, since as of this point the software with the bug would not have been updated in 10 years. So just make this spec compliant and reject a supported groups extension that should not have been sent by a server. ok tb@ jsing@