diff options
Diffstat (limited to '')
| -rw-r--r-- | src/lib/libcrypto/aes/aes_core.c | 54 | ||||
| -rw-r--r-- | src/lib/libcrypto/aes/asm/aes-586.pl | 12 | ||||
| -rw-r--r-- | src/lib/libcrypto/aes/asm/aes-armv4.pl | 32 | ||||
| -rw-r--r-- | src/lib/libcrypto/aes/asm/aes-mips.pl | 20 | ||||
| -rw-r--r-- | src/lib/libcrypto/aes/asm/aes-parisc.pl | 8 | ||||
| -rw-r--r-- | src/lib/libcrypto/aes/asm/aes-ppc.pl | 8 | ||||
| -rwxr-xr-x | src/lib/libcrypto/aes/asm/aes-sparcv9.pl | 16 | ||||
| -rwxr-xr-x | src/lib/libcrypto/aes/asm/aes-x86_64.pl | 36 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/amd64/Makefile.inc | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/arm/Makefile.inc | 2 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/hppa/Makefile.inc | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/i386/Makefile.inc | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/mips64/Makefile.inc | 4 | ||||
| -rw-r--r-- | src/lib/libcrypto/arch/sparc64/Makefile.inc | 4 |
14 files changed, 124 insertions, 84 deletions
diff --git a/src/lib/libcrypto/aes/aes_core.c b/src/lib/libcrypto/aes/aes_core.c index ee0bbb9f40..bf5149d833 100644 --- a/src/lib/libcrypto/aes/aes_core.c +++ b/src/lib/libcrypto/aes/aes_core.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: aes_core.c,v 1.20 2024/03/29 04:39:54 jsing Exp $ */ | 1 | /* $OpenBSD: aes_core.c,v 1.21 2024/03/29 11:00:57 jsing Exp $ */ |
| 2 | /** | 2 | /** |
| 3 | * rijndael-alg-fst.c | 3 | * rijndael-alg-fst.c |
| 4 | * | 4 | * |
| @@ -37,8 +37,10 @@ | |||
| 37 | #include "aes_local.h" | 37 | #include "aes_local.h" |
| 38 | #include "crypto_internal.h" | 38 | #include "crypto_internal.h" |
| 39 | 39 | ||
| 40 | #if !defined(HAVE_AES_SET_ENCRYPT_KEY_INTERNAL) && \ | 40 | #if !defined(HAVE_AES_SET_ENCRYPT_KEY_INTERNAL) || \ |
| 41 | !defined(HAVE_AES_SET_DECRYPT_KEY_INTERNAL) | 41 | !defined(HAVE_AES_SET_DECRYPT_KEY_INTERNAL) || \ |
| 42 | !defined(HAVE_AES_ENCRYPT_INTERNAL) || \ | ||
| 43 | !defined(HAVE_AES_DECRYPT_INTERNAL) | ||
| 42 | 44 | ||
| 43 | /* | 45 | /* |
| 44 | Te0[x] = S [x].[02, 01, 01, 03]; | 46 | Te0[x] = S [x].[02, 01, 01, 03]; |
| @@ -616,6 +618,10 @@ static const u8 Td4[256] = { | |||
| 616 | 0x17U, 0x2bU, 0x04U, 0x7eU, 0xbaU, 0x77U, 0xd6U, 0x26U, | 618 | 0x17U, 0x2bU, 0x04U, 0x7eU, 0xbaU, 0x77U, 0xd6U, 0x26U, |
| 617 | 0xe1U, 0x69U, 0x14U, 0x63U, 0x55U, 0x21U, 0x0cU, 0x7dU, | 619 | 0xe1U, 0x69U, 0x14U, 0x63U, 0x55U, 0x21U, 0x0cU, 0x7dU, |
| 618 | }; | 620 | }; |
| 621 | #endif | ||
| 622 | |||
| 623 | #if !defined(HAVE_AES_SET_ENCRYPT_KEY_INTERNAL) || \ | ||
| 624 | !defined(HAVE_AES_SET_DECRYPT_KEY_INTERNAL) | ||
| 619 | static const u32 rcon[] = { | 625 | static const u32 rcon[] = { |
| 620 | 0x01000000, 0x02000000, 0x04000000, 0x08000000, | 626 | 0x01000000, 0x02000000, 0x04000000, 0x08000000, |
| 621 | 0x10000000, 0x20000000, 0x40000000, 0x80000000, | 627 | 0x10000000, 0x20000000, 0x40000000, 0x80000000, |
| @@ -810,13 +816,17 @@ AES_set_decrypt_key(const unsigned char *userKey, const int bits, AES_KEY *key) | |||
| 810 | return aes_set_decrypt_key_internal(userKey, bits, key); | 816 | return aes_set_decrypt_key_internal(userKey, bits, key); |
| 811 | } | 817 | } |
| 812 | 818 | ||
| 813 | #ifndef AES_ASM | 819 | #ifdef HAVE_AES_ENCRYPT_INTERNAL |
| 820 | void aes_encrypt_internal(const unsigned char *in, unsigned char *out, | ||
| 821 | const AES_KEY *key); | ||
| 822 | |||
| 823 | #else | ||
| 814 | /* | 824 | /* |
| 815 | * Encrypt a single block | 825 | * Encrypt a single block - in and out can overlap. |
| 816 | * in and out can overlap | ||
| 817 | */ | 826 | */ |
| 818 | void | 827 | static inline void |
| 819 | AES_encrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | 828 | aes_encrypt_internal(const unsigned char *in, unsigned char *out, |
| 829 | const AES_KEY *key) | ||
| 820 | { | 830 | { |
| 821 | const u32 *rk; | 831 | const u32 *rk; |
| 822 | u32 s0, s1, s2, s3, t0, t1, t2, t3; | 832 | u32 s0, s1, s2, s3, t0, t1, t2, t3; |
| @@ -1000,13 +1010,25 @@ AES_encrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | |||
| 1000 | rk[3]; | 1010 | rk[3]; |
| 1001 | crypto_store_htobe32(&out[3 * 4], s3); | 1011 | crypto_store_htobe32(&out[3 * 4], s3); |
| 1002 | } | 1012 | } |
| 1013 | #endif | ||
| 1014 | |||
| 1015 | void | ||
| 1016 | AES_encrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | ||
| 1017 | { | ||
| 1018 | return aes_encrypt_internal(in, out, key); | ||
| 1019 | } | ||
| 1020 | |||
| 1021 | #ifdef HAVE_AES_DECRYPT_INTERNAL | ||
| 1022 | void aes_decrypt_internal(const unsigned char *in, unsigned char *out, | ||
| 1023 | const AES_KEY *key); | ||
| 1003 | 1024 | ||
| 1025 | #else | ||
| 1004 | /* | 1026 | /* |
| 1005 | * Decrypt a single block | 1027 | * Decrypt a single block - in and out can overlap. |
| 1006 | * in and out can overlap | ||
| 1007 | */ | 1028 | */ |
| 1008 | void | 1029 | static inline void |
| 1009 | AES_decrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | 1030 | aes_decrypt_internal(const unsigned char *in, unsigned char *out, |
| 1031 | const AES_KEY *key) | ||
| 1010 | { | 1032 | { |
| 1011 | const u32 *rk; | 1033 | const u32 *rk; |
| 1012 | u32 s0, s1, s2, s3, t0, t1, t2, t3; | 1034 | u32 s0, s1, s2, s3, t0, t1, t2, t3; |
| @@ -1190,4 +1212,10 @@ AES_decrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | |||
| 1190 | rk[3]; | 1212 | rk[3]; |
| 1191 | crypto_store_htobe32(&out[3 * 4], s3); | 1213 | crypto_store_htobe32(&out[3 * 4], s3); |
| 1192 | } | 1214 | } |
| 1193 | #endif /* AES_ASM */ | 1215 | #endif |
| 1216 | |||
| 1217 | void | ||
| 1218 | AES_decrypt(const unsigned char *in, unsigned char *out, const AES_KEY *key) | ||
| 1219 | { | ||
| 1220 | return aes_decrypt_internal(in, out, key); | ||
| 1221 | } | ||
diff --git a/src/lib/libcrypto/aes/asm/aes-586.pl b/src/lib/libcrypto/aes/asm/aes-586.pl index a2d98009e8..364099d4d3 100644 --- a/src/lib/libcrypto/aes/asm/aes-586.pl +++ b/src/lib/libcrypto/aes/asm/aes-586.pl | |||
| @@ -1158,8 +1158,8 @@ sub enclast() | |||
| 1158 | &data_word(0x00000000, 0x00000000, 0x00000000, 0x00000000); | 1158 | &data_word(0x00000000, 0x00000000, 0x00000000, 0x00000000); |
| 1159 | &previous(); | 1159 | &previous(); |
| 1160 | 1160 | ||
| 1161 | # void AES_encrypt (const void *inp,void *out,const AES_KEY *key); | 1161 | # void aes_encrypt_internal(const void *inp, void *out, const AES_KEY *key); |
| 1162 | &function_begin("AES_encrypt"); | 1162 | &function_begin("aes_encrypt_internal"); |
| 1163 | &mov ($acc,&wparam(0)); # load inp | 1163 | &mov ($acc,&wparam(0)); # load inp |
| 1164 | &mov ($key,&wparam(2)); # load key | 1164 | &mov ($key,&wparam(2)); # load key |
| 1165 | 1165 | ||
| @@ -1213,7 +1213,7 @@ sub enclast() | |||
| 1213 | &mov (&DWP(4,$acc),$s1); | 1213 | &mov (&DWP(4,$acc),$s1); |
| 1214 | &mov (&DWP(8,$acc),$s2); | 1214 | &mov (&DWP(8,$acc),$s2); |
| 1215 | &mov (&DWP(12,$acc),$s3); | 1215 | &mov (&DWP(12,$acc),$s3); |
| 1216 | &function_end("AES_encrypt"); | 1216 | &function_end("aes_encrypt_internal"); |
| 1217 | 1217 | ||
| 1218 | #--------------------------------------------------------------------# | 1218 | #--------------------------------------------------------------------# |
| 1219 | 1219 | ||
| @@ -1947,8 +1947,8 @@ sub declast() | |||
| 1947 | &data_byte(0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d); | 1947 | &data_byte(0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d); |
| 1948 | &previous(); | 1948 | &previous(); |
| 1949 | 1949 | ||
| 1950 | # void AES_decrypt (const void *inp,void *out,const AES_KEY *key); | 1950 | # void aes_decrypt_internal(const void *inp, void *out, const AES_KEY *key); |
| 1951 | &function_begin("AES_decrypt"); | 1951 | &function_begin("aes_decrypt_internal"); |
| 1952 | &mov ($acc,&wparam(0)); # load inp | 1952 | &mov ($acc,&wparam(0)); # load inp |
| 1953 | &mov ($key,&wparam(2)); # load key | 1953 | &mov ($key,&wparam(2)); # load key |
| 1954 | 1954 | ||
| @@ -2002,7 +2002,7 @@ sub declast() | |||
| 2002 | &mov (&DWP(4,$acc),$s1); | 2002 | &mov (&DWP(4,$acc),$s1); |
| 2003 | &mov (&DWP(8,$acc),$s2); | 2003 | &mov (&DWP(8,$acc),$s2); |
| 2004 | &mov (&DWP(12,$acc),$s3); | 2004 | &mov (&DWP(12,$acc),$s3); |
| 2005 | &function_end("AES_decrypt"); | 2005 | &function_end("aes_decrypt_internal"); |
| 2006 | 2006 | ||
| 2007 | # void aes_cbc_encrypt_internal(const void char *inp, unsigned char *out, | 2007 | # void aes_cbc_encrypt_internal(const void char *inp, unsigned char *out, |
| 2008 | # size_t length, const AES_KEY *key, unsigned char *ivp,const int enc); | 2008 | # size_t length, const AES_KEY *key, unsigned char *ivp,const int enc); |
diff --git a/src/lib/libcrypto/aes/asm/aes-armv4.pl b/src/lib/libcrypto/aes/asm/aes-armv4.pl index 3d581c5d7c..0048ee5b29 100644 --- a/src/lib/libcrypto/aes/asm/aes-armv4.pl +++ b/src/lib/libcrypto/aes/asm/aes-armv4.pl | |||
| @@ -161,17 +161,17 @@ AES_Te: | |||
| 161 | .word 0x1B000000, 0x36000000, 0, 0, 0, 0, 0, 0 | 161 | .word 0x1B000000, 0x36000000, 0, 0, 0, 0, 0, 0 |
| 162 | .size AES_Te,.-AES_Te | 162 | .size AES_Te,.-AES_Te |
| 163 | 163 | ||
| 164 | @ void AES_encrypt(const unsigned char *in, unsigned char *out, | 164 | @ void aes_encrypt_internal(const unsigned char *in, unsigned char *out, |
| 165 | @ const AES_KEY *key) { | 165 | @ const AES_KEY *key) { |
| 166 | .global AES_encrypt | 166 | .global aes_encrypt_internal |
| 167 | .type AES_encrypt,%function | 167 | .type aes_encrypt_internal,%function |
| 168 | .align 5 | 168 | .align 5 |
| 169 | AES_encrypt: | 169 | aes_encrypt_internal: |
| 170 | sub r3,pc,#8 @ AES_encrypt | 170 | sub r3,pc,#8 @ aes_encrypt_internal |
| 171 | stmdb sp!,{r1,r4-r12,lr} | 171 | stmdb sp!,{r1,r4-r12,lr} |
| 172 | mov $rounds,r0 @ inp | 172 | mov $rounds,r0 @ inp |
| 173 | mov $key,r2 | 173 | mov $key,r2 |
| 174 | sub $tbl,r3,#AES_encrypt-AES_Te @ Te | 174 | sub $tbl,r3,#aes_encrypt_internal-AES_Te @ Te |
| 175 | #if __ARM_ARCH__<7 || defined(__STRICT_ALIGNMENT) | 175 | #if __ARM_ARCH__<7 || defined(__STRICT_ALIGNMENT) |
| 176 | ldrb $s0,[$rounds,#3] @ load input data in endian-neutral | 176 | ldrb $s0,[$rounds,#3] @ load input data in endian-neutral |
| 177 | ldrb $t1,[$rounds,#2] @ manner... | 177 | ldrb $t1,[$rounds,#2] @ manner... |
| @@ -265,7 +265,7 @@ AES_encrypt: | |||
| 265 | moveq pc,lr @ be binary compatible with V4, yet | 265 | moveq pc,lr @ be binary compatible with V4, yet |
| 266 | bx lr @ interoperable with Thumb ISA:-) | 266 | bx lr @ interoperable with Thumb ISA:-) |
| 267 | #endif | 267 | #endif |
| 268 | .size AES_encrypt,.-AES_encrypt | 268 | .size aes_encrypt_internal,.-aes_encrypt_internal |
| 269 | 269 | ||
| 270 | .type _armv4_AES_encrypt,%function | 270 | .type _armv4_AES_encrypt,%function |
| 271 | .align 2 | 271 | .align 2 |
| @@ -877,17 +877,17 @@ AES_Td: | |||
| 877 | .byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d | 877 | .byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d |
| 878 | .size AES_Td,.-AES_Td | 878 | .size AES_Td,.-AES_Td |
| 879 | 879 | ||
| 880 | @ void AES_decrypt(const unsigned char *in, unsigned char *out, | 880 | @ void aes_decrypt_internal(const unsigned char *in, unsigned char *out, |
| 881 | @ const AES_KEY *key) { | 881 | @ const AES_KEY *key) { |
| 882 | .global AES_decrypt | 882 | .global aes_decrypt_internal |
| 883 | .type AES_decrypt,%function | 883 | .type aes_decrypt_internal,%function |
| 884 | .align 5 | 884 | .align 5 |
| 885 | AES_decrypt: | 885 | aes_decrypt_internal: |
| 886 | sub r3,pc,#8 @ AES_decrypt | 886 | sub r3,pc,#8 @ aes_decrypt_internal |
| 887 | stmdb sp!,{r1,r4-r12,lr} | 887 | stmdb sp!,{r1,r4-r12,lr} |
| 888 | mov $rounds,r0 @ inp | 888 | mov $rounds,r0 @ inp |
| 889 | mov $key,r2 | 889 | mov $key,r2 |
| 890 | sub $tbl,r3,#AES_decrypt-AES_Td @ Td | 890 | sub $tbl,r3,#aes_decrypt_internal-AES_Td @ Td |
| 891 | #if __ARM_ARCH__<7 || defined(__STRICT_ALIGNMENT) | 891 | #if __ARM_ARCH__<7 || defined(__STRICT_ALIGNMENT) |
| 892 | ldrb $s0,[$rounds,#3] @ load input data in endian-neutral | 892 | ldrb $s0,[$rounds,#3] @ load input data in endian-neutral |
| 893 | ldrb $t1,[$rounds,#2] @ manner... | 893 | ldrb $t1,[$rounds,#2] @ manner... |
| @@ -981,7 +981,7 @@ AES_decrypt: | |||
| 981 | moveq pc,lr @ be binary compatible with V4, yet | 981 | moveq pc,lr @ be binary compatible with V4, yet |
| 982 | bx lr @ interoperable with Thumb ISA:-) | 982 | bx lr @ interoperable with Thumb ISA:-) |
| 983 | #endif | 983 | #endif |
| 984 | .size AES_decrypt,.-AES_decrypt | 984 | .size aes_decrypt_internal,.-aes_decrypt_internal |
| 985 | 985 | ||
| 986 | .type _armv4_AES_decrypt,%function | 986 | .type _armv4_AES_decrypt,%function |
| 987 | .align 2 | 987 | .align 2 |
diff --git a/src/lib/libcrypto/aes/asm/aes-mips.pl b/src/lib/libcrypto/aes/asm/aes-mips.pl index b3649bc60f..9a5df878f5 100644 --- a/src/lib/libcrypto/aes/asm/aes-mips.pl +++ b/src/lib/libcrypto/aes/asm/aes-mips.pl | |||
| @@ -355,9 +355,9 @@ _mips_AES_encrypt: | |||
| 355 | .end _mips_AES_encrypt | 355 | .end _mips_AES_encrypt |
| 356 | 356 | ||
| 357 | .align 5 | 357 | .align 5 |
| 358 | .globl AES_encrypt | 358 | .globl aes_encrypt_internal |
| 359 | .ent AES_encrypt | 359 | .ent aes_encrypt_internal |
| 360 | AES_encrypt: | 360 | aes_encrypt_internal: |
| 361 | .frame $sp,$FRAMESIZE,$ra | 361 | .frame $sp,$FRAMESIZE,$ra |
| 362 | .mask $SAVED_REGS_MASK,-$SZREG | 362 | .mask $SAVED_REGS_MASK,-$SZREG |
| 363 | .set noreorder | 363 | .set noreorder |
| @@ -387,7 +387,7 @@ $code.=<<___ if ($flavour =~ /nubi/i); # optimize non-nubi prologue | |||
| 387 | ___ | 387 | ___ |
| 388 | $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification | 388 | $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification |
| 389 | .cplocal $Tbl | 389 | .cplocal $Tbl |
| 390 | .cpsetup $pf,$zero,AES_encrypt | 390 | .cpsetup $pf,$zero,aes_encrypt_internal |
| 391 | ___ | 391 | ___ |
| 392 | $code.=<<___; | 392 | $code.=<<___; |
| 393 | .set reorder | 393 | .set reorder |
| @@ -435,7 +435,7 @@ ___ | |||
| 435 | $code.=<<___; | 435 | $code.=<<___; |
| 436 | jr $ra | 436 | jr $ra |
| 437 | $PTR_ADD $sp,$FRAMESIZE | 437 | $PTR_ADD $sp,$FRAMESIZE |
| 438 | .end AES_encrypt | 438 | .end aes_encrypt_internal |
| 439 | ___ | 439 | ___ |
| 440 | 440 | ||
| 441 | $code.=<<___; | 441 | $code.=<<___; |
| @@ -691,9 +691,9 @@ _mips_AES_decrypt: | |||
| 691 | .end _mips_AES_decrypt | 691 | .end _mips_AES_decrypt |
| 692 | 692 | ||
| 693 | .align 5 | 693 | .align 5 |
| 694 | .globl AES_decrypt | 694 | .globl aes_decrypt_internal |
| 695 | .ent AES_decrypt | 695 | .ent aes_decrypt_internal |
| 696 | AES_decrypt: | 696 | aes_decrypt_internal: |
| 697 | .frame $sp,$FRAMESIZE,$ra | 697 | .frame $sp,$FRAMESIZE,$ra |
| 698 | .mask $SAVED_REGS_MASK,-$SZREG | 698 | .mask $SAVED_REGS_MASK,-$SZREG |
| 699 | .set noreorder | 699 | .set noreorder |
| @@ -723,7 +723,7 @@ $code.=<<___ if ($flavour =~ /nubi/i); # optimize non-nubi prologue | |||
| 723 | ___ | 723 | ___ |
| 724 | $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification | 724 | $code.=<<___ if ($flavour !~ /o32/i); # non-o32 PIC-ification |
| 725 | .cplocal $Tbl | 725 | .cplocal $Tbl |
| 726 | .cpsetup $pf,$zero,AES_decrypt | 726 | .cpsetup $pf,$zero,aes_decrypt_internal |
| 727 | ___ | 727 | ___ |
| 728 | $code.=<<___; | 728 | $code.=<<___; |
| 729 | .set reorder | 729 | .set reorder |
| @@ -771,7 +771,7 @@ ___ | |||
| 771 | $code.=<<___; | 771 | $code.=<<___; |
| 772 | jr $ra | 772 | jr $ra |
| 773 | $PTR_ADD $sp,$FRAMESIZE | 773 | $PTR_ADD $sp,$FRAMESIZE |
| 774 | .end AES_decrypt | 774 | .end aes_decrypt_internal |
| 775 | ___ | 775 | ___ |
| 776 | }}} | 776 | }}} |
| 777 | 777 | ||
diff --git a/src/lib/libcrypto/aes/asm/aes-parisc.pl b/src/lib/libcrypto/aes/asm/aes-parisc.pl index 43dbfc108d..4e4592b56b 100644 --- a/src/lib/libcrypto/aes/asm/aes-parisc.pl +++ b/src/lib/libcrypto/aes/asm/aes-parisc.pl | |||
| @@ -66,9 +66,9 @@ $code=<<___; | |||
| 66 | .LEVEL $LEVEL | 66 | .LEVEL $LEVEL |
| 67 | .text | 67 | .text |
| 68 | 68 | ||
| 69 | .EXPORT AES_encrypt,ENTRY,ARGW0=GR,ARGW1=GR,ARGW2=GR | 69 | .EXPORT aes_encrypt_internal,ENTRY,ARGW0=GR,ARGW1=GR,ARGW2=GR |
| 70 | .ALIGN 64 | 70 | .ALIGN 64 |
| 71 | AES_encrypt | 71 | aes_encrypt_internal |
| 72 | .PROC | 72 | .PROC |
| 73 | .CALLINFO FRAME=`$FRAME-16*$SIZE_T`,NO_CALLS,SAVE_RP,ENTRY_GR=18 | 73 | .CALLINFO FRAME=`$FRAME-16*$SIZE_T`,NO_CALLS,SAVE_RP,ENTRY_GR=18 |
| 74 | .ENTRY | 74 | .ENTRY |
| @@ -540,9 +540,9 @@ L\$AES_Te | |||
| 540 | ___ | 540 | ___ |
| 541 | 541 | ||
| 542 | $code.=<<___; | 542 | $code.=<<___; |
| 543 | .EXPORT AES_decrypt,ENTRY,ARGW0=GR,ARGW1=GR,ARGW2=GR | 543 | .EXPORT aes_decrypt_internal,ENTRY,ARGW0=GR,ARGW1=GR,ARGW2=GR |
| 544 | .ALIGN 16 | 544 | .ALIGN 16 |
| 545 | AES_decrypt | 545 | aes_decrypt_internal |
| 546 | .PROC | 546 | .PROC |
| 547 | .CALLINFO FRAME=`$FRAME-16*$SIZE_T`,NO_CALLS,SAVE_RP,ENTRY_GR=18 | 547 | .CALLINFO FRAME=`$FRAME-16*$SIZE_T`,NO_CALLS,SAVE_RP,ENTRY_GR=18 |
| 548 | .ENTRY | 548 | .ENTRY |
diff --git a/src/lib/libcrypto/aes/asm/aes-ppc.pl b/src/lib/libcrypto/aes/asm/aes-ppc.pl index bc93603669..178ba56b3e 100644 --- a/src/lib/libcrypto/aes/asm/aes-ppc.pl +++ b/src/lib/libcrypto/aes/asm/aes-ppc.pl | |||
| @@ -327,9 +327,9 @@ $code.=<<___; | |||
| 327 | .byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d | 327 | .byte 0xe1, 0x69, 0x14, 0x63, 0x55, 0x21, 0x0c, 0x7d |
| 328 | 328 | ||
| 329 | 329 | ||
| 330 | .globl .AES_encrypt | 330 | .globl .aes_encrypt_internal |
| 331 | .align 7 | 331 | .align 7 |
| 332 | .AES_encrypt: | 332 | .aes_encrypt_internal: |
| 333 | $STU $sp,-$FRAME($sp) | 333 | $STU $sp,-$FRAME($sp) |
| 334 | mflr r0 | 334 | mflr r0 |
| 335 | 335 | ||
| @@ -754,9 +754,9 @@ Lenc_compact_done: | |||
| 754 | xor $s3,$s3,$t3 | 754 | xor $s3,$s3,$t3 |
| 755 | blr | 755 | blr |
| 756 | 756 | ||
| 757 | .globl .AES_decrypt | 757 | .globl .aes_decrypt_internal |
| 758 | .align 7 | 758 | .align 7 |
| 759 | .AES_decrypt: | 759 | .aes_decrypt_internal: |
| 760 | $STU $sp,-$FRAME($sp) | 760 | $STU $sp,-$FRAME($sp) |
| 761 | mflr r0 | 761 | mflr r0 |
| 762 | 762 | ||
diff --git a/src/lib/libcrypto/aes/asm/aes-sparcv9.pl b/src/lib/libcrypto/aes/asm/aes-sparcv9.pl index 08ac9830f1..1348d09594 100755 --- a/src/lib/libcrypto/aes/asm/aes-sparcv9.pl +++ b/src/lib/libcrypto/aes/asm/aes-sparcv9.pl | |||
| @@ -511,8 +511,8 @@ _sparcv9_AES_encrypt: | |||
| 511 | .size _sparcv9_AES_encrypt,(.-_sparcv9_AES_encrypt) | 511 | .size _sparcv9_AES_encrypt,(.-_sparcv9_AES_encrypt) |
| 512 | 512 | ||
| 513 | .align 32 | 513 | .align 32 |
| 514 | .globl AES_encrypt | 514 | .globl aes_encrypt_internal |
| 515 | AES_encrypt: | 515 | aes_encrypt_internal: |
| 516 | save %sp,-$frame,%sp | 516 | save %sp,-$frame,%sp |
| 517 | #ifdef __PIC__ | 517 | #ifdef __PIC__ |
| 518 | sethi %hi(_GLOBAL_OFFSET_TABLE_-4), %o5 | 518 | sethi %hi(_GLOBAL_OFFSET_TABLE_-4), %o5 |
| @@ -638,8 +638,8 @@ AES_encrypt: | |||
| 638 | 638 | ||
| 639 | ret | 639 | ret |
| 640 | restore | 640 | restore |
| 641 | .type AES_encrypt,#function | 641 | .type aes_encrypt_internal,#function |
| 642 | .size AES_encrypt,(.-AES_encrypt) | 642 | .size aes_encrypt_internal,(.-aes_encrypt_internal) |
| 643 | 643 | ||
| 644 | ___ | 644 | ___ |
| 645 | 645 | ||
| @@ -1075,8 +1075,8 @@ _sparcv9_AES_decrypt: | |||
| 1075 | .size _sparcv9_AES_decrypt,(.-_sparcv9_AES_decrypt) | 1075 | .size _sparcv9_AES_decrypt,(.-_sparcv9_AES_decrypt) |
| 1076 | 1076 | ||
| 1077 | .align 32 | 1077 | .align 32 |
| 1078 | .globl AES_decrypt | 1078 | .globl aes_decrypt_internal |
| 1079 | AES_decrypt: | 1079 | aes_decrypt_internal: |
| 1080 | save %sp,-$frame,%sp | 1080 | save %sp,-$frame,%sp |
| 1081 | #ifdef __PIC__ | 1081 | #ifdef __PIC__ |
| 1082 | sethi %hi(_GLOBAL_OFFSET_TABLE_-4), %o5 | 1082 | sethi %hi(_GLOBAL_OFFSET_TABLE_-4), %o5 |
| @@ -1202,8 +1202,8 @@ AES_decrypt: | |||
| 1202 | 1202 | ||
| 1203 | ret | 1203 | ret |
| 1204 | restore | 1204 | restore |
| 1205 | .type AES_decrypt,#function | 1205 | .type aes_decrypt_internal,#function |
| 1206 | .size AES_decrypt,(.-AES_decrypt) | 1206 | .size aes_decrypt_internal,(.-aes_decrypt_internal) |
| 1207 | ___ | 1207 | ___ |
| 1208 | 1208 | ||
| 1209 | # fmovs instructions substituting for FP nops were originally added | 1209 | # fmovs instructions substituting for FP nops were originally added |
diff --git a/src/lib/libcrypto/aes/asm/aes-x86_64.pl b/src/lib/libcrypto/aes/asm/aes-x86_64.pl index 9b75a6f7a5..324c4a2be2 100755 --- a/src/lib/libcrypto/aes/asm/aes-x86_64.pl +++ b/src/lib/libcrypto/aes/asm/aes-x86_64.pl | |||
| @@ -586,15 +586,15 @@ $code.=<<___; | |||
| 586 | .size _x86_64_AES_encrypt_compact,.-_x86_64_AES_encrypt_compact | 586 | .size _x86_64_AES_encrypt_compact,.-_x86_64_AES_encrypt_compact |
| 587 | ___ | 587 | ___ |
| 588 | 588 | ||
| 589 | # void AES_encrypt (const void *inp,void *out,const AES_KEY *key); | 589 | # void aes_encrypt_internal(const void *inp, void *out, const AES_KEY *key); |
| 590 | $code.=<<___; | 590 | $code.=<<___; |
| 591 | .globl AES_encrypt | 591 | .globl aes_encrypt_internal |
| 592 | .type AES_encrypt,\@function,3 | 592 | .type aes_encrypt_internal,\@function,3 |
| 593 | .align 16 | 593 | .align 16 |
| 594 | .globl asm_AES_encrypt | 594 | .globl asm_AES_encrypt |
| 595 | .hidden asm_AES_encrypt | 595 | .hidden asm_AES_encrypt |
| 596 | asm_AES_encrypt: | 596 | asm_AES_encrypt: |
| 597 | AES_encrypt: | 597 | aes_encrypt_internal: |
| 598 | _CET_ENDBR | 598 | _CET_ENDBR |
| 599 | push %rbx | 599 | push %rbx |
| 600 | push %rbp | 600 | push %rbp |
| @@ -655,7 +655,7 @@ AES_encrypt: | |||
| 655 | lea 48(%rsi),%rsp | 655 | lea 48(%rsi),%rsp |
| 656 | .Lenc_epilogue: | 656 | .Lenc_epilogue: |
| 657 | ret | 657 | ret |
| 658 | .size AES_encrypt,.-AES_encrypt | 658 | .size aes_encrypt_internal,.-aes_encrypt_internal |
| 659 | ___ | 659 | ___ |
| 660 | 660 | ||
| 661 | #------------------------------------------------------------------# | 661 | #------------------------------------------------------------------# |
| @@ -1188,15 +1188,15 @@ $code.=<<___; | |||
| 1188 | .size _x86_64_AES_decrypt_compact,.-_x86_64_AES_decrypt_compact | 1188 | .size _x86_64_AES_decrypt_compact,.-_x86_64_AES_decrypt_compact |
| 1189 | ___ | 1189 | ___ |
| 1190 | 1190 | ||
| 1191 | # void AES_decrypt (const void *inp,void *out,const AES_KEY *key); | 1191 | # void aes_decrypt_internal(const void *inp, void *out, const AES_KEY *key); |
| 1192 | $code.=<<___; | 1192 | $code.=<<___; |
| 1193 | .globl AES_decrypt | 1193 | .globl aes_decrypt_internal |
| 1194 | .type AES_decrypt,\@function,3 | 1194 | .type aes_decrypt_internal,\@function,3 |
| 1195 | .align 16 | 1195 | .align 16 |
| 1196 | .globl asm_AES_decrypt | 1196 | .globl asm_AES_decrypt |
| 1197 | .hidden asm_AES_decrypt | 1197 | .hidden asm_AES_decrypt |
| 1198 | asm_AES_decrypt: | 1198 | asm_AES_decrypt: |
| 1199 | AES_decrypt: | 1199 | aes_decrypt_internal: |
| 1200 | _CET_ENDBR | 1200 | _CET_ENDBR |
| 1201 | push %rbx | 1201 | push %rbx |
| 1202 | push %rbp | 1202 | push %rbp |
| @@ -1259,7 +1259,7 @@ AES_decrypt: | |||
| 1259 | lea 48(%rsi),%rsp | 1259 | lea 48(%rsi),%rsp |
| 1260 | .Ldec_epilogue: | 1260 | .Ldec_epilogue: |
| 1261 | ret | 1261 | ret |
| 1262 | .size AES_decrypt,.-AES_decrypt | 1262 | .size aes_decrypt_internal,.-aes_decrypt_internal |
| 1263 | ___ | 1263 | ___ |
| 1264 | #------------------------------------------------------------------# | 1264 | #------------------------------------------------------------------# |
| 1265 | 1265 | ||
| @@ -2782,13 +2782,13 @@ cbc_se_handler: | |||
| 2782 | 2782 | ||
| 2783 | .section .pdata | 2783 | .section .pdata |
| 2784 | .align 4 | 2784 | .align 4 |
| 2785 | .rva .LSEH_begin_AES_encrypt | 2785 | .rva .LSEH_begin_aes_encrypt_internal |
| 2786 | .rva .LSEH_end_AES_encrypt | 2786 | .rva .LSEH_end_aes_encrypt_internal |
| 2787 | .rva .LSEH_info_AES_encrypt | 2787 | .rva .LSEH_info_aes_encrypt_internal |
| 2788 | 2788 | ||
| 2789 | .rva .LSEH_begin_AES_decrypt | 2789 | .rva .LSEH_begin_aes_decrypt_internal |
| 2790 | .rva .LSEH_end_AES_decrypt | 2790 | .rva .LSEH_end_aes_decrypt_internal |
| 2791 | .rva .LSEH_info_AES_decrypt | 2791 | .rva .LSEH_info_aes_decrypt_internal |
| 2792 | 2792 | ||
| 2793 | .rva .LSEH_begin_aes_set_encrypt_key_internal | 2793 | .rva .LSEH_begin_aes_set_encrypt_key_internal |
| 2794 | .rva .LSEH_end_aes_set_encrypt_key_internal | 2794 | .rva .LSEH_end_aes_set_encrypt_key_internal |
| @@ -2804,11 +2804,11 @@ cbc_se_handler: | |||
| 2804 | 2804 | ||
| 2805 | .section .xdata | 2805 | .section .xdata |
| 2806 | .align 8 | 2806 | .align 8 |
| 2807 | .LSEH_info_AES_encrypt: | 2807 | .LSEH_info_aes_encrypt_internal: |
| 2808 | .byte 9,0,0,0 | 2808 | .byte 9,0,0,0 |
| 2809 | .rva block_se_handler | 2809 | .rva block_se_handler |
| 2810 | .rva .Lenc_prologue,.Lenc_epilogue # HandlerData[] | 2810 | .rva .Lenc_prologue,.Lenc_epilogue # HandlerData[] |
| 2811 | .LSEH_info_AES_decrypt: | 2811 | .LSEH_info_aes_decrypt_internal: |
| 2812 | .byte 9,0,0,0 | 2812 | .byte 9,0,0,0 |
| 2813 | .rva block_se_handler | 2813 | .rva block_se_handler |
| 2814 | .rva .Ldec_prologue,.Ldec_epilogue # HandlerData[] | 2814 | .rva .Ldec_prologue,.Ldec_epilogue # HandlerData[] |
diff --git a/src/lib/libcrypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/arch/amd64/Makefile.inc index ca7d751d77..a354105822 100644 --- a/src/lib/libcrypto/arch/amd64/Makefile.inc +++ b/src/lib/libcrypto/arch/amd64/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.26 2024/03/29 07:24:09 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.27 2024/03/29 11:00:57 jsing Exp $ |
| 2 | 2 | ||
| 3 | # amd64-specific libcrypto build rules | 3 | # amd64-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -16,6 +16,8 @@ SSLASM+= aes aesni-x86_64 | |||
| 16 | CFLAGS+= -DHAVE_AES_CBC_ENCRYPT_INTERNAL | 16 | CFLAGS+= -DHAVE_AES_CBC_ENCRYPT_INTERNAL |
| 17 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL | 17 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL |
| 18 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL | 18 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL |
| 19 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 20 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 19 | # bn | 21 | # bn |
| 20 | CFLAGS+= -DOPENSSL_IA32_SSE2 | 22 | CFLAGS+= -DOPENSSL_IA32_SSE2 |
| 21 | CFLAGS+= -DRSA_ASM | 23 | CFLAGS+= -DRSA_ASM |
diff --git a/src/lib/libcrypto/arch/arm/Makefile.inc b/src/lib/libcrypto/arch/arm/Makefile.inc index a614add80c..43c0589eb6 100644 --- a/src/lib/libcrypto/arch/arm/Makefile.inc +++ b/src/lib/libcrypto/arch/arm/Makefile.inc | |||
| @@ -7,6 +7,8 @@ CFLAGS+= -DAES_ASM | |||
| 7 | SSLASM+= aes aes-armv4 | 7 | SSLASM+= aes aes-armv4 |
| 8 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL | 8 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL |
| 9 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL | 9 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL |
| 10 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 11 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 10 | # bn | 12 | # bn |
| 11 | CFLAGS+= -DOPENSSL_BN_ASM_MONT | 13 | CFLAGS+= -DOPENSSL_BN_ASM_MONT |
| 12 | SSLASM+= bn armv4-mont | 14 | SSLASM+= bn armv4-mont |
diff --git a/src/lib/libcrypto/arch/hppa/Makefile.inc b/src/lib/libcrypto/arch/hppa/Makefile.inc index 5938320aa4..9796d3a860 100644 --- a/src/lib/libcrypto/arch/hppa/Makefile.inc +++ b/src/lib/libcrypto/arch/hppa/Makefile.inc | |||
| @@ -1,10 +1,12 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.23 2024/03/29 07:24:09 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.24 2024/03/29 11:00:57 jsing Exp $ |
| 2 | 2 | ||
| 3 | # hppa-specific libcrypto build rules | 3 | # hppa-specific libcrypto build rules |
| 4 | 4 | ||
| 5 | # aes | 5 | # aes |
| 6 | CFLAGS+= -DAES_ASM | 6 | CFLAGS+= -DAES_ASM |
| 7 | SSLASM+= aes aes-parisc aes-parisc | 7 | SSLASM+= aes aes-parisc aes-parisc |
| 8 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 9 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 8 | # bn | 10 | # bn |
| 9 | SSLASM+= bn parisc-mont parisc-mont | 11 | SSLASM+= bn parisc-mont parisc-mont |
| 10 | CFLAGS+= -DOPENSSL_BN_ASM_MONT -DBN_DIV2W | 12 | CFLAGS+= -DOPENSSL_BN_ASM_MONT -DBN_DIV2W |
diff --git a/src/lib/libcrypto/arch/i386/Makefile.inc b/src/lib/libcrypto/arch/i386/Makefile.inc index 71bee6e1a0..37f6ba32b9 100644 --- a/src/lib/libcrypto/arch/i386/Makefile.inc +++ b/src/lib/libcrypto/arch/i386/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.23 2024/03/29 07:24:09 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.24 2024/03/29 11:00:57 jsing Exp $ |
| 2 | 2 | ||
| 3 | # i386-specific libcrypto build rules | 3 | # i386-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -14,6 +14,8 @@ SSLASM+= aes aesni-x86 | |||
| 14 | CFLAGS+= -DHAVE_AES_CBC_ENCRYPT_INTERNAL | 14 | CFLAGS+= -DHAVE_AES_CBC_ENCRYPT_INTERNAL |
| 15 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL | 15 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL |
| 16 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL | 16 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL |
| 17 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 18 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 17 | # bn | 19 | # bn |
| 18 | CFLAGS+= -DOPENSSL_IA32_SSE2 | 20 | CFLAGS+= -DOPENSSL_IA32_SSE2 |
| 19 | SSLASM+= bn bn-586 | 21 | SSLASM+= bn bn-586 |
diff --git a/src/lib/libcrypto/arch/mips64/Makefile.inc b/src/lib/libcrypto/arch/mips64/Makefile.inc index baad8c43e7..41d6b0e888 100644 --- a/src/lib/libcrypto/arch/mips64/Makefile.inc +++ b/src/lib/libcrypto/arch/mips64/Makefile.inc | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.16 2024/03/29 07:24:09 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.17 2024/03/29 11:00:57 jsing Exp $ |
| 2 | 2 | ||
| 3 | # mips64-specific libcrypto build rules | 3 | # mips64-specific libcrypto build rules |
| 4 | 4 | ||
| @@ -7,6 +7,8 @@ CFLAGS+= -DAES_ASM | |||
| 7 | SSLASM+= aes aes-mips aes-mips | 7 | SSLASM+= aes aes-mips aes-mips |
| 8 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL | 8 | CFLAGS+= -DHAVE_AES_SET_ENCRYPT_KEY_INTERNAL |
| 9 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL | 9 | CFLAGS+= -DHAVE_AES_SET_DECRYPT_KEY_INTERNAL |
| 10 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 11 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 10 | # bn | 12 | # bn |
| 11 | SSLASM+= bn mips bn-mips | 13 | SSLASM+= bn mips bn-mips |
| 12 | SSLASM+= bn mips-mont mips-mont | 14 | SSLASM+= bn mips-mont mips-mont |
diff --git a/src/lib/libcrypto/arch/sparc64/Makefile.inc b/src/lib/libcrypto/arch/sparc64/Makefile.inc index 3f2b7a6c55..c4b303f444 100644 --- a/src/lib/libcrypto/arch/sparc64/Makefile.inc +++ b/src/lib/libcrypto/arch/sparc64/Makefile.inc | |||
| @@ -1,10 +1,12 @@ | |||
| 1 | # $OpenBSD: Makefile.inc,v 1.17 2024/03/29 07:24:09 jsing Exp $ | 1 | # $OpenBSD: Makefile.inc,v 1.18 2024/03/29 11:00:57 jsing Exp $ |
| 2 | 2 | ||
| 3 | # sparc64-specific libcrypto build rules | 3 | # sparc64-specific libcrypto build rules |
| 4 | 4 | ||
| 5 | # aes | 5 | # aes |
| 6 | CFLAGS+= -DAES_ASM | 6 | CFLAGS+= -DAES_ASM |
| 7 | SSLASM+= aes aes-sparcv9 aes-sparcv9 | 7 | SSLASM+= aes aes-sparcv9 aes-sparcv9 |
| 8 | CFLAGS+= -DHAVE_AES_ENCRYPT_INTERNAL | ||
| 9 | CFLAGS+= -DHAVE_AES_DECRYPT_INTERNAL | ||
| 8 | # bn | 10 | # bn |
| 9 | # modes | 11 | # modes |
| 10 | CFLAGS+= -DGHASH_ASM | 12 | CFLAGS+= -DGHASH_ASM |
