openssl: update generated files

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
Gerd Hoffmann 2024-05-22 10:00:57 +02:00 committed by mergify[bot]
parent e584e865f8
commit 8f6c2ccc45
88 changed files with 299906 additions and 423 deletions

View File

@ -14,6 +14,8 @@
.align 5
aes_v8_set_encrypt_key:
.Lenc_key:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
mov x3,#-1
@ -185,7 +187,7 @@ aes_v8_set_encrypt_key:
.type aes_v8_set_decrypt_key,%function
.align 5
aes_v8_set_decrypt_key:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
bl .Lenc_key
@ -219,13 +221,14 @@ aes_v8_set_decrypt_key:
eor x0,x0,x0 // return value
.Ldec_key_abort:
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size aes_v8_set_decrypt_key,.-aes_v8_set_decrypt_key
.globl aes_v8_encrypt
.type aes_v8_encrypt,%function
.align 5
aes_v8_encrypt:
AARCH64_VALID_CALL_TARGET
ldr w3,[x2,#240]
ld1 {v0.4s},[x2],#16
ld1 {v2.16b},[x0]
@ -255,6 +258,7 @@ aes_v8_encrypt:
.type aes_v8_decrypt,%function
.align 5
aes_v8_decrypt:
AARCH64_VALID_CALL_TARGET
ldr w3,[x2,#240]
ld1 {v0.4s},[x2],#16
ld1 {v2.16b},[x0]
@ -284,6 +288,7 @@ aes_v8_decrypt:
.type aes_v8_ecb_encrypt,%function
.align 5
aes_v8_ecb_encrypt:
AARCH64_VALID_CALL_TARGET
subs x2,x2,#16
// Original input data size bigger than 16, jump to big size processing.
b.ne .Lecb_big_size
@ -1030,6 +1035,8 @@ aes_v8_ecb_encrypt:
.type aes_v8_cbc_encrypt,%function
.align 5
aes_v8_cbc_encrypt:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
subs x2,x2,#16
@ -1501,10 +1508,735 @@ aes_v8_cbc_encrypt:
ldr x29,[sp],#16
ret
.size aes_v8_cbc_encrypt,.-aes_v8_cbc_encrypt
.globl aes_v8_ctr32_encrypt_blocks_unroll12_eor3
.type aes_v8_ctr32_encrypt_blocks_unroll12_eor3,%function
.align 5
aes_v8_ctr32_encrypt_blocks_unroll12_eor3:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-80]!
stp d8,d9,[sp, #16]
stp d10,d11,[sp, #32]
stp d12,d13,[sp, #48]
stp d14,d15,[sp, #64]
add x29,sp,#0
ldr w5,[x3,#240]
ldr w8, [x4, #12]
#ifdef __AARCH64EB__
ld1 {v24.16b},[x4]
#else
ld1 {v24.4s},[x4]
#endif
ld1 {v2.4s,v3.4s},[x3] // load key schedule...
sub w5,w5,#4
cmp x2,#2
add x7,x3,x5,lsl#4 // pointer to last round key
sub w5,w5,#2
add x7, x7, #64
ld1 {v1.4s},[x7]
add x7,x3,#32
mov w6,w5
#ifndef __AARCH64EB__
rev w8, w8
#endif
orr v25.16b,v24.16b,v24.16b
add w10, w8, #1
orr v26.16b,v24.16b,v24.16b
add w8, w8, #2
orr v0.16b,v24.16b,v24.16b
rev w10, w10
mov v25.s[3],w10
b.ls .Lctr32_tail_unroll
cmp x2,#6
rev w12, w8
sub x2,x2,#3 // bias
mov v26.s[3],w12
b.lo .Loop3x_ctr32_unroll
cmp x2,#9
orr v27.16b,v24.16b,v24.16b
add w11, w8, #1
orr v28.16b,v24.16b,v24.16b
add w13, w8, #2
rev w11, w11
orr v29.16b,v24.16b,v24.16b
add w8, w8, #3
rev w13, w13
mov v27.s[3],w11
rev w14, w8
mov v28.s[3],w13
mov v29.s[3],w14
sub x2,x2,#3
b.lo .Loop6x_ctr32_unroll
// push regs to stack when 12 data chunks are interleaved
stp x19,x20,[sp,#-16]!
stp x21,x22,[sp,#-16]!
stp x23,x24,[sp,#-16]!
stp d8,d9,[sp,#-32]!
stp d10,d11,[sp,#-32]!
add w15,w8,#1
add w19,w8,#2
add w20,w8,#3
add w21,w8,#4
add w22,w8,#5
add w8,w8,#6
orr v30.16b,v24.16b,v24.16b
rev w15,w15
orr v31.16b,v24.16b,v24.16b
rev w19,w19
orr v8.16b,v24.16b,v24.16b
rev w20,w20
orr v9.16b,v24.16b,v24.16b
rev w21,w21
orr v10.16b,v24.16b,v24.16b
rev w22,w22
orr v11.16b,v24.16b,v24.16b
rev w23,w8
sub x2,x2,#6 // bias
mov v30.s[3],w15
mov v31.s[3],w19
mov v8.s[3],w20
mov v9.s[3],w21
mov v10.s[3],w22
mov v11.s[3],w23
b .Loop12x_ctr32_unroll
.align 4
.Loop12x_ctr32_unroll:
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
aese v30.16b,v2.16b
aesmc v30.16b,v30.16b
aese v31.16b,v2.16b
aesmc v31.16b,v31.16b
aese v8.16b,v2.16b
aesmc v8.16b,v8.16b
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
ld1 {v2.4s},[x7],#16
subs w6,w6,#2
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
aese v30.16b,v3.16b
aesmc v30.16b,v30.16b
aese v31.16b,v3.16b
aesmc v31.16b,v31.16b
aese v8.16b,v3.16b
aesmc v8.16b,v8.16b
aese v9.16b,v3.16b
aesmc v9.16b,v9.16b
aese v10.16b,v3.16b
aesmc v10.16b,v10.16b
aese v11.16b,v3.16b
aesmc v11.16b,v11.16b
ld1 {v3.4s},[x7],#16
b.gt .Loop12x_ctr32_unroll
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
aese v30.16b,v2.16b
aesmc v30.16b,v30.16b
aese v31.16b,v2.16b
aesmc v31.16b,v31.16b
aese v8.16b,v2.16b
aesmc v8.16b,v8.16b
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
aese v30.16b,v3.16b
aesmc v30.16b,v30.16b
aese v31.16b,v3.16b
aesmc v31.16b,v31.16b
aese v8.16b,v3.16b
aesmc v8.16b,v8.16b
aese v9.16b,v3.16b
aesmc v9.16b,v9.16b
aese v10.16b,v3.16b
aesmc v10.16b,v10.16b
aese v11.16b,v3.16b
aesmc v11.16b,v11.16b
ld1 {v3.4s},[x7],#16
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
add w9,w8,#1
add w10,w8,#2
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
add w12,w8,#3
add w11,w8,#4
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
add w13,w8,#5
add w14,w8,#6
rev w9,w9
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
add w15,w8,#7
add w19,w8,#8
rev w10,w10
rev w12,w12
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
add w20,w8,#9
add w21,w8,#10
rev w11,w11
rev w13,w13
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
add w22,w8,#11
add w23,w8,#12
rev w14,w14
rev w15,w15
aese v30.16b,v2.16b
aesmc v30.16b,v30.16b
rev w19,w19
rev w20,w20
aese v31.16b,v2.16b
aesmc v31.16b,v31.16b
rev w21,w21
rev w22,w22
aese v8.16b,v2.16b
aesmc v8.16b,v8.16b
rev w23,w23
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
ld1 {v4.16b,v5.16b,v6.16b,v7.16b},[x0],#64
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
aese v30.16b,v3.16b
aesmc v30.16b,v30.16b
aese v31.16b,v3.16b
aesmc v31.16b,v31.16b
ld1 {v16.16b,v17.16b,v18.16b,v19.16b},[x0],#64
aese v8.16b,v3.16b
aesmc v8.16b,v8.16b
aese v9.16b,v3.16b
aesmc v9.16b,v9.16b
aese v10.16b,v3.16b
aesmc v10.16b,v10.16b
aese v11.16b,v3.16b
aesmc v11.16b,v11.16b
ld1 {v20.16b,v21.16b,v22.16b,v23.16b},[x0],#64
ld1 {v3.4s},[x7],#16
mov x7, x3
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
aese v30.16b,v2.16b
aesmc v30.16b,v30.16b
aese v31.16b,v2.16b
aesmc v31.16b,v31.16b
aese v8.16b,v2.16b
aesmc v8.16b,v8.16b
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
ld1 {v2.4s},[x7],#16 // re-pre-load rndkey[0]
aese v24.16b,v3.16b
.inst 0xce016084 //eor3 v4.16b,v4.16b,v1.16b,v24.16b
orr v24.16b,v0.16b,v0.16b
aese v25.16b,v3.16b
.inst 0xce0164a5 //eor3 v5.16b,v5.16b,v1.16b,v25.16b
orr v25.16b,v0.16b,v0.16b
aese v26.16b,v3.16b
.inst 0xce0168c6 //eor3 v6.16b,v6.16b,v1.16b,v26.16b
orr v26.16b,v0.16b,v0.16b
aese v27.16b,v3.16b
.inst 0xce016ce7 //eor3 v7.16b,v7.16b,v1.16b,v27.16b
orr v27.16b,v0.16b,v0.16b
aese v28.16b,v3.16b
.inst 0xce017210 //eor3 v16.16b,v16.16b,v1.16b,v28.16b
orr v28.16b,v0.16b,v0.16b
aese v29.16b,v3.16b
.inst 0xce017631 //eor3 v17.16b,v17.16b,v1.16b,v29.16b
orr v29.16b,v0.16b,v0.16b
aese v30.16b,v3.16b
.inst 0xce017a52 //eor3 v18.16b,v18.16b,v1.16b,v30.16b
orr v30.16b,v0.16b,v0.16b
aese v31.16b,v3.16b
.inst 0xce017e73 //eor3 v19.16b,v19.16b,v1.16b,v31.16b
orr v31.16b,v0.16b,v0.16b
aese v8.16b,v3.16b
.inst 0xce012294 //eor3 v20.16b,v20.16b,v1.16b,v8.16b
orr v8.16b,v0.16b,v0.16b
aese v9.16b,v3.16b
.inst 0xce0126b5 //eor3 v21.16b,v21.16b,v1.16b,v9.16b
orr v9.16b,v0.16b,v0.16b
aese v10.16b,v3.16b
.inst 0xce012ad6 //eor3 v22.16b,v22.16b,v1.16b,v10.16b
orr v10.16b,v0.16b,v0.16b
aese v11.16b,v3.16b
.inst 0xce012ef7 //eor3 v23.16b,v23.16b,v1.16b,v11.16b
orr v11.16b,v0.16b,v0.16b
ld1 {v3.4s},[x7],#16 // re-pre-load rndkey[1]
mov v24.s[3],w9
mov v25.s[3],w10
mov v26.s[3],w12
mov v27.s[3],w11
st1 {v4.16b,v5.16b,v6.16b,v7.16b},[x1],#64
mov v28.s[3],w13
mov v29.s[3],w14
mov v30.s[3],w15
mov v31.s[3],w19
st1 {v16.16b,v17.16b,v18.16b,v19.16b},[x1],#64
mov v8.s[3],w20
mov v9.s[3],w21
mov v10.s[3],w22
mov v11.s[3],w23
st1 {v20.16b,v21.16b,v22.16b,v23.16b},[x1],#64
mov w6,w5
add w8,w8,#12
subs x2,x2,#12
b.hs .Loop12x_ctr32_unroll
// pop regs from stack when 12 data chunks are interleaved
ldp d10,d11,[sp],#32
ldp d8,d9,[sp],#32
ldp x23,x24,[sp],#16
ldp x21,x22,[sp],#16
ldp x19,x20,[sp],#16
add x2,x2,#12
cbz x2,.Lctr32_done_unroll
sub w8,w8,#12
cmp x2,#2
b.ls .Lctr32_tail_unroll
cmp x2,#6
sub x2,x2,#3 // bias
add w8,w8,#3
b.lo .Loop3x_ctr32_unroll
sub x2,x2,#3
add w8,w8,#3
b.lo .Loop6x_ctr32_unroll
.align 4
.Loop6x_ctr32_unroll:
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
ld1 {v2.4s},[x7],#16
subs w6,w6,#2
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
ld1 {v3.4s},[x7],#16
b.gt .Loop6x_ctr32_unroll
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
ld1 {v3.4s},[x7],#16
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
add w9,w8,#1
add w10,w8,#2
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
add w12,w8,#3
add w11,w8,#4
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
add w13,w8,#5
add w14,w8,#6
rev w9,w9
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
rev w10,w10
rev w12,w12
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
rev w11,w11
rev w13,w13
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
rev w14,w14
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
ld1 {v4.16b,v5.16b,v6.16b,v7.16b},[x0],#64
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
aese v27.16b,v3.16b
aesmc v27.16b,v27.16b
ld1 {v16.16b,v17.16b},[x0],#32
aese v28.16b,v3.16b
aesmc v28.16b,v28.16b
aese v29.16b,v3.16b
aesmc v29.16b,v29.16b
ld1 {v3.4s},[x7],#16
mov x7, x3
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
aese v27.16b,v2.16b
aesmc v27.16b,v27.16b
aese v28.16b,v2.16b
aesmc v28.16b,v28.16b
aese v29.16b,v2.16b
aesmc v29.16b,v29.16b
ld1 {v2.4s},[x7],#16 // re-pre-load rndkey[0]
aese v24.16b,v3.16b
.inst 0xce016084 //eor3 v4.16b,v4.16b,v1.16b,v24.16b
aese v25.16b,v3.16b
.inst 0xce0164a5 //eor3 v5.16b,v5.16b,v1.16b,v25.16b
aese v26.16b,v3.16b
.inst 0xce0168c6 //eor3 v6.16b,v6.16b,v1.16b,v26.16b
aese v27.16b,v3.16b
.inst 0xce016ce7 //eor3 v7.16b,v7.16b,v1.16b,v27.16b
aese v28.16b,v3.16b
.inst 0xce017210 //eor3 v16.16b,v16.16b,v1.16b,v28.16b
aese v29.16b,v3.16b
.inst 0xce017631 //eor3 v17.16b,v17.16b,v1.16b,v29.16b
ld1 {v3.4s},[x7],#16 // re-pre-load rndkey[1]
orr v24.16b,v0.16b,v0.16b
orr v25.16b,v0.16b,v0.16b
orr v26.16b,v0.16b,v0.16b
orr v27.16b,v0.16b,v0.16b
orr v28.16b,v0.16b,v0.16b
orr v29.16b,v0.16b,v0.16b
mov v24.s[3],w9
mov v25.s[3],w10
st1 {v4.16b,v5.16b,v6.16b,v7.16b},[x1],#64
mov v26.s[3],w12
mov v27.s[3],w11
st1 {v16.16b,v17.16b},[x1],#32
mov v28.s[3],w13
mov v29.s[3],w14
cbz x2,.Lctr32_done_unroll
mov w6,w5
cmp x2,#2
b.ls .Lctr32_tail_unroll
sub x2,x2,#3 // bias
add w8,w8,#3
b .Loop3x_ctr32_unroll
.align 4
.Loop3x_ctr32_unroll:
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
ld1 {v2.4s},[x7],#16
subs w6,w6,#2
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
aese v26.16b,v3.16b
aesmc v26.16b,v26.16b
ld1 {v3.4s},[x7],#16
b.gt .Loop3x_ctr32_unroll
aese v24.16b,v2.16b
aesmc v9.16b,v24.16b
aese v25.16b,v2.16b
aesmc v10.16b,v25.16b
ld1 {v4.16b,v5.16b,v6.16b},[x0],#48
orr v24.16b,v0.16b,v0.16b
aese v26.16b,v2.16b
aesmc v26.16b,v26.16b
ld1 {v2.4s},[x7],#16
orr v25.16b,v0.16b,v0.16b
aese v9.16b,v3.16b
aesmc v9.16b,v9.16b
aese v10.16b,v3.16b
aesmc v10.16b,v10.16b
aese v26.16b,v3.16b
aesmc v11.16b,v26.16b
ld1 {v3.4s},[x7],#16
orr v26.16b,v0.16b,v0.16b
add w9,w8,#1
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
add w10,w8,#2
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
ld1 {v2.4s},[x7],#16
add w8,w8,#3
aese v9.16b,v3.16b
aesmc v9.16b,v9.16b
aese v10.16b,v3.16b
aesmc v10.16b,v10.16b
rev w9,w9
aese v11.16b,v3.16b
aesmc v11.16b,v11.16b
ld1 {v3.4s},[x7],#16
mov v24.s[3], w9
mov x7,x3
rev w10,w10
aese v9.16b,v2.16b
aesmc v9.16b,v9.16b
aese v10.16b,v2.16b
aesmc v10.16b,v10.16b
mov v25.s[3], w10
rev w12,w8
aese v11.16b,v2.16b
aesmc v11.16b,v11.16b
mov v26.s[3], w12
aese v9.16b,v3.16b
aese v10.16b,v3.16b
aese v11.16b,v3.16b
.inst 0xce012484 //eor3 v4.16b,v4.16b,v1.16b,v9.16b
ld1 {v2.4s},[x7],#16 // re-pre-load rndkey[0]
.inst 0xce0128a5 //eor3 v5.16b,v5.16b,v1.16b,v10.16b
mov w6,w5
.inst 0xce012cc6 //eor3 v6.16b,v6.16b,v1.16b,v11.16b
ld1 {v3.4s},[x7],#16 // re-pre-load rndkey[1]
st1 {v4.16b,v5.16b,v6.16b},[x1],#48
cbz x2,.Lctr32_done_unroll
.Lctr32_tail_unroll:
cmp x2,#1
b.eq .Lctr32_tail_1_unroll
.Lctr32_tail_2_unroll:
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
ld1 {v2.4s},[x7],#16
subs w6,w6,#2
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
ld1 {v3.4s},[x7],#16
b.gt .Lctr32_tail_2_unroll
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
ld1 {v3.4s},[x7],#16
ld1 {v4.16b,v5.16b},[x0],#32
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
aese v25.16b,v3.16b
aesmc v25.16b,v25.16b
ld1 {v3.4s},[x7],#16
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v25.16b,v2.16b
aesmc v25.16b,v25.16b
aese v24.16b,v3.16b
aese v25.16b,v3.16b
.inst 0xce016084 //eor3 v4.16b,v4.16b,v1.16b,v24.16b
.inst 0xce0164a5 //eor3 v5.16b,v5.16b,v1.16b,v25.16b
st1 {v4.16b,v5.16b},[x1],#32
b .Lctr32_done_unroll
.Lctr32_tail_1_unroll:
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
ld1 {v2.4s},[x7],#16
subs w6,w6,#2
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
ld1 {v3.4s},[x7],#16
b.gt .Lctr32_tail_1_unroll
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
ld1 {v3.4s},[x7],#16
ld1 {v4.16b},[x0]
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
ld1 {v2.4s},[x7],#16
aese v24.16b,v3.16b
aesmc v24.16b,v24.16b
ld1 {v3.4s},[x7],#16
aese v24.16b,v2.16b
aesmc v24.16b,v24.16b
aese v24.16b,v3.16b
.inst 0xce016084 //eor3 v4.16b,v4.16b,v1.16b,v24.16b
st1 {v4.16b},[x1],#16
.Lctr32_done_unroll:
ldp d8,d9,[sp, #16]
ldp d10,d11,[sp, #32]
ldp d12,d13,[sp, #48]
ldp d15,d16,[sp, #64]
ldr x29,[sp],#80
ret
.size aes_v8_ctr32_encrypt_blocks_unroll12_eor3,.-aes_v8_ctr32_encrypt_blocks_unroll12_eor3
.globl aes_v8_ctr32_encrypt_blocks
.type aes_v8_ctr32_encrypt_blocks,%function
.align 5
aes_v8_ctr32_encrypt_blocks:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
ldr w5,[x3,#240]
@ -1854,6 +2586,7 @@ aes_v8_ctr32_encrypt_blocks:
.type aes_v8_xts_encrypt,%function
.align 5
aes_v8_xts_encrypt:
AARCH64_VALID_CALL_TARGET
cmp x2,#16
// Original input data size bigger than 16, jump to big size processing.
b.ne .Lxts_enc_big_size
@ -2495,6 +3228,7 @@ aes_v8_xts_encrypt:
.type aes_v8_xts_decrypt,%function
.align 5
aes_v8_xts_decrypt:
AARCH64_VALID_CALL_TARGET
cmp x2,#16
// Original input data size bigger than 16, jump to big size processing.
b.ne .Lxts_dec_big_size
@ -3104,7 +3838,7 @@ aes_v8_xts_decrypt:
cbnz x2,.Lxts_dec_1st_done
ld1 {v0.16b},[x0],#16
// Decrypt the last secod block to get the last plain text block
// Decrypt the last second block to get the last plain text block
.Lxts_dec_1st_done:
eor v26.16b,v0.16b,v8.16b
ldr w6,[x3,#240]

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,5 @@
#include "arm_arch.h"
.text
.type _vpaes_consts,%object
@ -195,7 +197,7 @@ _vpaes_encrypt_core:
.type vpaes_encrypt,%function
.align 4
vpaes_encrypt:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -205,7 +207,7 @@ vpaes_encrypt:
st1 {v0.16b}, [x1]
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_encrypt,.-vpaes_encrypt
@ -428,7 +430,7 @@ _vpaes_decrypt_core:
.type vpaes_decrypt,%function
.align 4
vpaes_decrypt:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -438,7 +440,7 @@ vpaes_decrypt:
st1 {v0.16b}, [x1]
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_decrypt,.-vpaes_decrypt
@ -602,7 +604,7 @@ _vpaes_key_preheat:
.type _vpaes_schedule_core,%function
.align 4
_vpaes_schedule_core:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29, x30, [sp,#-16]!
add x29,sp,#0
@ -767,7 +769,7 @@ _vpaes_schedule_core:
eor v6.16b, v6.16b, v6.16b // vpxor %xmm6, %xmm6, %xmm6
eor v7.16b, v7.16b, v7.16b // vpxor %xmm7, %xmm7, %xmm7
ldp x29, x30, [sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size _vpaes_schedule_core,.-_vpaes_schedule_core
@ -980,7 +982,7 @@ _vpaes_schedule_mangle:
.type vpaes_set_encrypt_key,%function
.align 4
vpaes_set_encrypt_key:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
stp d8,d9,[sp,#-16]! // ABI spec says so
@ -996,7 +998,7 @@ vpaes_set_encrypt_key:
ldp d8,d9,[sp],#16
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_set_encrypt_key,.-vpaes_set_encrypt_key
@ -1004,7 +1006,7 @@ vpaes_set_encrypt_key:
.type vpaes_set_decrypt_key,%function
.align 4
vpaes_set_decrypt_key:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
stp d8,d9,[sp,#-16]! // ABI spec says so
@ -1024,18 +1026,18 @@ vpaes_set_decrypt_key:
ldp d8,d9,[sp],#16
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_set_decrypt_key,.-vpaes_set_decrypt_key
.globl vpaes_cbc_encrypt
.type vpaes_cbc_encrypt,%function
.align 4
vpaes_cbc_encrypt:
AARCH64_SIGN_LINK_REGISTER
cbz x2, .Lcbc_abort
cmp w5, #0 // check direction
b.eq vpaes_cbc_decrypt
.inst 0xd503233f // paciasp
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -1058,15 +1060,16 @@ vpaes_cbc_encrypt:
st1 {v0.16b}, [x4] // write ivec
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
.Lcbc_abort:
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_cbc_encrypt,.-vpaes_cbc_encrypt
.type vpaes_cbc_decrypt,%function
.align 4
vpaes_cbc_decrypt:
.inst 0xd503233f // paciasp
// Not adding AARCH64_SIGN_LINK_REGISTER here because vpaes_cbc_decrypt is jumped to
// only from vpaes_cbc_encrypt which has already signed the return address.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
stp d8,d9,[sp,#-16]! // ABI spec says so
@ -1108,14 +1111,14 @@ vpaes_cbc_decrypt:
ldp d10,d11,[sp],#16
ldp d8,d9,[sp],#16
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_cbc_decrypt,.-vpaes_cbc_decrypt
.globl vpaes_ecb_encrypt
.type vpaes_ecb_encrypt,%function
.align 4
vpaes_ecb_encrypt:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
stp d8,d9,[sp,#-16]! // ABI spec says so
@ -1149,7 +1152,7 @@ vpaes_ecb_encrypt:
ldp d10,d11,[sp],#16
ldp d8,d9,[sp],#16
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_ecb_encrypt,.-vpaes_ecb_encrypt
@ -1157,7 +1160,7 @@ vpaes_ecb_encrypt:
.type vpaes_ecb_decrypt,%function
.align 4
vpaes_ecb_decrypt:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
stp d8,d9,[sp,#-16]! // ABI spec says so
@ -1191,6 +1194,6 @@ vpaes_ecb_decrypt:
ldp d10,d11,[sp],#16
ldp d8,d9,[sp],#16
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size vpaes_ecb_decrypt,.-vpaes_ecb_decrypt

View File

@ -7,6 +7,7 @@
.globl _armv7_neon_probe
.type _armv7_neon_probe,%function
_armv7_neon_probe:
AARCH64_VALID_CALL_TARGET
orr v15.16b, v15.16b, v15.16b
ret
.size _armv7_neon_probe,.-_armv7_neon_probe
@ -14,6 +15,7 @@ _armv7_neon_probe:
.globl _armv7_tick
.type _armv7_tick,%function
_armv7_tick:
AARCH64_VALID_CALL_TARGET
#ifdef __APPLE__
mrs x0, CNTPCT_EL0
#else
@ -25,6 +27,7 @@ _armv7_tick:
.globl _armv8_aes_probe
.type _armv8_aes_probe,%function
_armv8_aes_probe:
AARCH64_VALID_CALL_TARGET
aese v0.16b, v0.16b
ret
.size _armv8_aes_probe,.-_armv8_aes_probe
@ -32,6 +35,7 @@ _armv8_aes_probe:
.globl _armv8_sha1_probe
.type _armv8_sha1_probe,%function
_armv8_sha1_probe:
AARCH64_VALID_CALL_TARGET
sha1h s0, s0
ret
.size _armv8_sha1_probe,.-_armv8_sha1_probe
@ -39,6 +43,7 @@ _armv8_sha1_probe:
.globl _armv8_sha256_probe
.type _armv8_sha256_probe,%function
_armv8_sha256_probe:
AARCH64_VALID_CALL_TARGET
sha256su0 v0.4s, v0.4s
ret
.size _armv8_sha256_probe,.-_armv8_sha256_probe
@ -46,28 +51,72 @@ _armv8_sha256_probe:
.globl _armv8_pmull_probe
.type _armv8_pmull_probe,%function
_armv8_pmull_probe:
AARCH64_VALID_CALL_TARGET
pmull v0.1q, v0.1d, v0.1d
ret
.size _armv8_pmull_probe,.-_armv8_pmull_probe
.globl _armv8_sm4_probe
.type _armv8_sm4_probe,%function
_armv8_sm4_probe:
AARCH64_VALID_CALL_TARGET
.inst 0xcec08400 // sm4e v0.4s, v0.4s
ret
.size _armv8_sm4_probe,.-_armv8_sm4_probe
.globl _armv8_sha512_probe
.type _armv8_sha512_probe,%function
_armv8_sha512_probe:
.long 0xcec08000 // sha512su0 v0.2d,v0.2d
AARCH64_VALID_CALL_TARGET
.inst 0xcec08000 // sha512su0 v0.2d,v0.2d
ret
.size _armv8_sha512_probe,.-_armv8_sha512_probe
.globl _armv8_eor3_probe
.type _armv8_eor3_probe,%function
_armv8_eor3_probe:
AARCH64_VALID_CALL_TARGET
.inst 0xce010800 // eor3 v0.16b, v0.16b, v1.16b, v2.16b
ret
.size _armv8_eor3_probe,.-_armv8_eor3_probe
.globl _armv8_sve_probe
.type _armv8_sve_probe,%function
_armv8_sve_probe:
AARCH64_VALID_CALL_TARGET
.inst 0x04a03000 // eor z0.d,z0.d,z0.d
ret
.size _armv8_sve_probe,.-_armv8_sve_probe
.globl _armv8_sve2_probe
.type _armv8_sve2_probe,%function
_armv8_sve2_probe:
AARCH64_VALID_CALL_TARGET
.inst 0x04e03400 // xar z0.d,z0.d,z0.d
ret
.size _armv8_sve2_probe,.-_armv8_sve2_probe
.globl _armv8_cpuid_probe
.type _armv8_cpuid_probe,%function
_armv8_cpuid_probe:
AARCH64_VALID_CALL_TARGET
mrs x0, midr_el1
ret
.size _armv8_cpuid_probe,.-_armv8_cpuid_probe
.globl _armv8_sm3_probe
.type _armv8_sm3_probe,%function
_armv8_sm3_probe:
AARCH64_VALID_CALL_TARGET
.inst 0xce63c004 // sm3partw1 v4.4s, v0.4s, v3.4s
ret
.size _armv8_sm3_probe,.-_armv8_sm3_probe
.globl OPENSSL_cleanse
.type OPENSSL_cleanse,%function
.align 5
OPENSSL_cleanse:
AARCH64_VALID_CALL_TARGET
cbz x1,.Lret // len==0?
cmp x1,#15
b.hi .Lot // len>15
@ -99,6 +148,7 @@ OPENSSL_cleanse:
.type CRYPTO_memcmp,%function
.align 4
CRYPTO_memcmp:
AARCH64_VALID_CALL_TARGET
eor w3,w3,w3
cbz x2,.Lno_data // len==0?
cmp x2,#16
@ -127,3 +177,98 @@ CRYPTO_memcmp:
lsr w0,w0,#31
ret
.size CRYPTO_memcmp,.-CRYPTO_memcmp
.globl _armv8_rng_probe
.type _armv8_rng_probe,%function
_armv8_rng_probe:
AARCH64_VALID_CALL_TARGET
mrs x0, s3_3_c2_c4_0 // rndr
mrs x0, s3_3_c2_c4_1 // rndrrs
ret
.size _armv8_rng_probe,.-_armv8_rng_probe
// Fill buffer with Randomly Generated Bytes
// inputs: char * in x0 - Pointer to buffer
// size_t in x1 - Number of bytes to write to buffer
// outputs: size_t in x0 - Number of bytes successfully written to buffer
.globl OPENSSL_rndr_asm
.type OPENSSL_rndr_asm,%function
.align 4
OPENSSL_rndr_asm:
AARCH64_VALID_CALL_TARGET
mov x2,xzr
mov x3,xzr
.align 4
.Loop_rndr:
cmp x1,#0
b.eq .rndr_done
mov x3,xzr
mrs x3,s3_3_c2_c4_0
b.eq .rndr_done
cmp x1,#8
b.lt .Loop_single_byte_rndr
str x3,[x0]
add x0,x0,#8
add x2,x2,#8
subs x1,x1,#8
b.ge .Loop_rndr
.align 4
.Loop_single_byte_rndr:
strb w3,[x0]
lsr x3,x3,#8
add x2,x2,#1
add x0,x0,#1
subs x1,x1,#1
b.gt .Loop_single_byte_rndr
.align 4
.rndr_done:
mov x0,x2
ret
.size OPENSSL_rndr_asm,.-OPENSSL_rndr_asm
// Fill buffer with Randomly Generated Bytes
// inputs: char * in x0 - Pointer to buffer
// size_t in x1 - Number of bytes to write to buffer
// outputs: size_t in x0 - Number of bytes successfully written to buffer
.globl OPENSSL_rndrrs_asm
.type OPENSSL_rndrrs_asm,%function
.align 4
OPENSSL_rndrrs_asm:
AARCH64_VALID_CALL_TARGET
mov x2,xzr
mov x3,xzr
.align 4
.Loop_rndrrs:
cmp x1,#0
b.eq .rndrrs_done
mov x3,xzr
mrs x3,s3_3_c2_c4_1
b.eq .rndrrs_done
cmp x1,#8
b.lt .Loop_single_byte_rndrrs
str x3,[x0]
add x0,x0,#8
add x2,x2,#8
subs x1,x1,#8
b.ge .Loop_rndrrs
.align 4
.Loop_single_byte_rndrrs:
strb w3,[x0]
lsr x3,x3,#8
add x2,x2,#1
add x0,x0,#1
subs x1,x1,#1
b.gt .Loop_single_byte_rndrrs
.align 4
.rndrrs_done:
mov x0,x2
ret
.size OPENSSL_rndrrs_asm,.-OPENSSL_rndrrs_asm

View File

@ -1,5 +1,5 @@
#include "arm_arch.h"
#ifndef __KERNEL__
# include "arm_arch.h"
.hidden OPENSSL_armv8_rsa_neonized
#endif
@ -9,6 +9,7 @@
.type bn_mul_mont,%function
.align 5
bn_mul_mont:
AARCH64_SIGN_LINK_REGISTER
.Lbn_mul_mont:
tst x5,#3
b.ne .Lmul_mont
@ -219,11 +220,14 @@ bn_mul_mont:
mov x0,#1
ldp x23,x24,[x29,#48]
ldr x29,[sp],#64
AARCH64_VALIDATE_LINK_REGISTER
ret
.size bn_mul_mont,.-bn_mul_mont
.type bn_mul8x_mont_neon,%function
.align 5
bn_mul8x_mont_neon:
// Not adding AARCH64_SIGN_LINK_REGISTER here because bn_mul8x_mont_neon is jumped to
// only from bn_mul_mont which has already signed the return address.
stp x29,x30,[sp,#-80]!
mov x16,sp
stp d8,d9,[sp,#16]
@ -916,6 +920,7 @@ bn_mul8x_mont_neon:
ldp d10,d11,[sp,#32]
ldp d8,d9,[sp,#16]
ldr x29,[sp],#80
AARCH64_VALIDATE_LINK_REGISTER
ret // bx lr
.size bn_mul8x_mont_neon,.-bn_mul8x_mont_neon
@ -925,7 +930,8 @@ __bn_sqr8x_mont:
cmp x1,x2
b.ne __bn_mul4x_mont
.Lsqr8x_mont:
.inst 0xd503233f // paciasp
// Not adding AARCH64_SIGN_LINK_REGISTER here because __bn_sqr8x_mont is jumped to
// only from bn_mul_mont which has already signed the return address.
stp x29,x30,[sp,#-128]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -1676,13 +1682,15 @@ __bn_sqr8x_mont:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldr x29,[sp],#128
.inst 0xd50323bf // autiasp
// x30 is loaded earlier
AARCH64_VALIDATE_LINK_REGISTER
ret
.size __bn_sqr8x_mont,.-__bn_sqr8x_mont
.type __bn_mul4x_mont,%function
.align 5
__bn_mul4x_mont:
.inst 0xd503233f // paciasp
// Not adding AARCH64_SIGN_LINK_REGISTER here because __bn_mul4x_mont is jumped to
// only from bn_mul_mont (or __bn_sqr8x_mont from bn_mul_mont) which has already signed the return address.
stp x29,x30,[sp,#-128]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -2116,7 +2124,8 @@ __bn_mul4x_mont:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldr x29,[sp],#128
.inst 0xd50323bf // autiasp
// x30 loaded earlier
AARCH64_VALIDATE_LINK_REGISTER
ret
.size __bn_mul4x_mont,.-__bn_mul4x_mont
.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0

View File

@ -2395,7 +2395,7 @@ ecp_nistz256_precomputed:
.type ecp_nistz256_to_mont,%function
.align 6
ecp_nistz256_to_mont:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-32]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -2411,7 +2411,7 @@ ecp_nistz256_to_mont:
ldp x19,x20,[sp,#16]
ldp x29,x30,[sp],#32
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_to_mont,.-ecp_nistz256_to_mont
@ -2420,7 +2420,7 @@ ecp_nistz256_to_mont:
.type ecp_nistz256_from_mont,%function
.align 4
ecp_nistz256_from_mont:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-32]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -2436,7 +2436,7 @@ ecp_nistz256_from_mont:
ldp x19,x20,[sp,#16]
ldp x29,x30,[sp],#32
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_from_mont,.-ecp_nistz256_from_mont
@ -2446,7 +2446,7 @@ ecp_nistz256_from_mont:
.type ecp_nistz256_mul_mont,%function
.align 4
ecp_nistz256_mul_mont:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-32]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -2461,7 +2461,7 @@ ecp_nistz256_mul_mont:
ldp x19,x20,[sp,#16]
ldp x29,x30,[sp],#32
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_mul_mont,.-ecp_nistz256_mul_mont
@ -2470,7 +2470,7 @@ ecp_nistz256_mul_mont:
.type ecp_nistz256_sqr_mont,%function
.align 4
ecp_nistz256_sqr_mont:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-32]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -2484,7 +2484,7 @@ ecp_nistz256_sqr_mont:
ldp x19,x20,[sp,#16]
ldp x29,x30,[sp],#32
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_sqr_mont,.-ecp_nistz256_sqr_mont
@ -2494,7 +2494,7 @@ ecp_nistz256_sqr_mont:
.type ecp_nistz256_add,%function
.align 4
ecp_nistz256_add:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2508,7 +2508,7 @@ ecp_nistz256_add:
bl __ecp_nistz256_add
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_add,.-ecp_nistz256_add
@ -2517,7 +2517,7 @@ ecp_nistz256_add:
.type ecp_nistz256_div_by_2,%function
.align 4
ecp_nistz256_div_by_2:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2529,7 +2529,7 @@ ecp_nistz256_div_by_2:
bl __ecp_nistz256_div_by_2
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_div_by_2,.-ecp_nistz256_div_by_2
@ -2538,7 +2538,7 @@ ecp_nistz256_div_by_2:
.type ecp_nistz256_mul_by_2,%function
.align 4
ecp_nistz256_mul_by_2:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2554,7 +2554,7 @@ ecp_nistz256_mul_by_2:
bl __ecp_nistz256_add // ret = a+a // 2*a
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_mul_by_2,.-ecp_nistz256_mul_by_2
@ -2563,7 +2563,7 @@ ecp_nistz256_mul_by_2:
.type ecp_nistz256_mul_by_3,%function
.align 4
ecp_nistz256_mul_by_3:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2590,7 +2590,7 @@ ecp_nistz256_mul_by_3:
bl __ecp_nistz256_add // ret += a // 2*a+a=3*a
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_mul_by_3,.-ecp_nistz256_mul_by_3
@ -2600,7 +2600,7 @@ ecp_nistz256_mul_by_3:
.type ecp_nistz256_sub,%function
.align 4
ecp_nistz256_sub:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2612,7 +2612,7 @@ ecp_nistz256_sub:
bl __ecp_nistz256_sub_from
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_sub,.-ecp_nistz256_sub
@ -2621,7 +2621,7 @@ ecp_nistz256_sub:
.type ecp_nistz256_neg,%function
.align 4
ecp_nistz256_neg:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -2636,7 +2636,7 @@ ecp_nistz256_neg:
bl __ecp_nistz256_sub_from
ldp x29,x30,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_neg,.-ecp_nistz256_neg
@ -3014,7 +3014,7 @@ __ecp_nistz256_div_by_2:
.type ecp_nistz256_point_double,%function
.align 5
ecp_nistz256_point_double:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-96]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -3149,14 +3149,14 @@ ecp_nistz256_point_double:
ldp x19,x20,[x29,#16]
ldp x21,x22,[x29,#32]
ldp x29,x30,[sp],#96
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_point_double,.-ecp_nistz256_point_double
.globl ecp_nistz256_point_add
.type ecp_nistz256_point_add,%function
.align 5
ecp_nistz256_point_add:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-96]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -3403,14 +3403,14 @@ ecp_nistz256_point_add:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldp x29,x30,[sp],#96
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_point_add,.-ecp_nistz256_point_add
.globl ecp_nistz256_point_add_affine
.type ecp_nistz256_point_add_affine,%function
.align 5
ecp_nistz256_point_add_affine:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-80]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -3609,7 +3609,7 @@ ecp_nistz256_point_add_affine:
ldp x23,x24,[x29,#48]
ldp x25,x26,[x29,#64]
ldp x29,x30,[sp],#80
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size ecp_nistz256_point_add_affine,.-ecp_nistz256_point_add_affine
////////////////////////////////////////////////////////////////////////
@ -3619,6 +3619,8 @@ ecp_nistz256_point_add_affine:
.type ecp_nistz256_ord_mul_mont,%function
.align 4
ecp_nistz256_ord_mul_mont:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-64]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -3827,6 +3829,8 @@ ecp_nistz256_ord_mul_mont:
.type ecp_nistz256_ord_sqr_mont,%function
.align 4
ecp_nistz256_ord_sqr_mont:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-64]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -4015,6 +4019,8 @@ ecp_nistz256_ord_sqr_mont:
.type ecp_nistz256_scatter_w5,%function
.align 4
ecp_nistz256_scatter_w5:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -4077,6 +4083,8 @@ ecp_nistz256_scatter_w5:
.type ecp_nistz256_gather_w5,%function
.align 4
ecp_nistz256_gather_w5:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -4154,6 +4162,8 @@ ecp_nistz256_gather_w5:
.type ecp_nistz256_scatter_w7,%function
.align 4
ecp_nistz256_scatter_w7:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -4198,6 +4208,8 @@ ecp_nistz256_scatter_w7:
.type ecp_nistz256_gather_w7,%function
.align 4
ecp_nistz256_gather_w7:
AARCH64_VALID_CALL_TARGET
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0

View File

@ -0,0 +1,677 @@
#include "arm_arch.h"
.text
.globl ossl_md5_block_asm_data_order
.type ossl_md5_block_asm_data_order,@function
ossl_md5_block_asm_data_order:
AARCH64_VALID_CALL_TARGET
// Save all callee-saved registers
stp x19,x20,[sp,#-80]!
stp x21,x22,[sp,#16]
stp x23,x24,[sp,#32]
stp x25,x26,[sp,#48]
stp x27,x28,[sp,#64]
ldp w10, w11, [x0, #0] // .Load MD5 state->A and state->B
ldp w12, w13, [x0, #8] // .Load MD5 state->C and state->D
.align 5
ossl_md5_blocks_loop:
eor x17, x12, x13 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
and x16, x17, x11 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
ldp w15, w20, [x1] // .Load 2 words of input data0 M[0],M[1]
ldp w3, w21, [x1, #8] // .Load 2 words of input data0 M[2],M[3]
#ifdef __AARCH64EB__
rev w15, w15
rev w20, w20
rev w3, w3
rev w21, w21
#endif
eor x14, x16, x13 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x9, #0xa478 // .Load lower half of constant 0xd76aa478
movk x9, #0xd76a, lsl #16 // .Load upper half of constant 0xd76aa478
add w8, w10, w15 // Add dest value
add w7, w8, w9 // Add constant 0xd76aa478
add w6, w7, w14 // Add aux function result
ror w6, w6, #25 // Rotate left s=7 bits
eor x5, x11, x12 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w4, w11, w6 // Add X parameter round 1 A=FF(A, B, C, D, 0xd76aa478, s=7, M[0])
and x8, x5, x4 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x17, x8, x12 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x16, #0xb756 // .Load lower half of constant 0xe8c7b756
movk x16, #0xe8c7, lsl #16 // .Load upper half of constant 0xe8c7b756
add w9, w13, w20 // Add dest value
add w7, w9, w16 // Add constant 0xe8c7b756
add w14, w7, w17 // Add aux function result
ror w14, w14, #20 // Rotate left s=12 bits
eor x6, x4, x11 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w5, w4, w14 // Add X parameter round 1 D=FF(D, A, B, C, 0xe8c7b756, s=12, M[1])
and x8, x6, x5 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x9, x8, x11 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x16, #0x70db // .Load lower half of constant 0x242070db
movk x16, #0x2420, lsl #16 // .Load upper half of constant 0x242070db
add w7, w12, w3 // Add dest value
add w17, w7, w16 // Add constant 0x242070db
add w14, w17, w9 // Add aux function result
ror w14, w14, #15 // Rotate left s=17 bits
eor x6, x5, x4 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w8, w5, w14 // Add X parameter round 1 C=FF(C, D, A, B, 0x242070db, s=17, M[2])
and x7, x6, x8 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x16, x7, x4 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x9, #0xceee // .Load lower half of constant 0xc1bdceee
movk x9, #0xc1bd, lsl #16 // .Load upper half of constant 0xc1bdceee
add w14, w11, w21 // Add dest value
add w6, w14, w9 // Add constant 0xc1bdceee
add w7, w6, w16 // Add aux function result
ror w7, w7, #10 // Rotate left s=22 bits
eor x17, x8, x5 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w9, w8, w7 // Add X parameter round 1 B=FF(B, C, D, A, 0xc1bdceee, s=22, M[3])
ldp w14, w22, [x1, #16] // .Load 2 words of input data0 M[4],M[5]
ldp w7, w23, [x1, #24] // .Load 2 words of input data0 M[6],M[7]
#ifdef __AARCH64EB__
rev w14, w14
rev w22, w22
rev w7, w7
rev w23, w23
#endif
and x16, x17, x9 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x16, x5 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x16, #0xfaf // .Load lower half of constant 0xf57c0faf
movk x16, #0xf57c, lsl #16 // .Load upper half of constant 0xf57c0faf
add w17, w4, w14 // Add dest value
add w16, w17, w16 // Add constant 0xf57c0faf
add w4, w16, w6 // Add aux function result
ror w4, w4, #25 // Rotate left s=7 bits
eor x16, x9, x8 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w17, w9, w4 // Add X parameter round 1 A=FF(A, B, C, D, 0xf57c0faf, s=7, M[4])
and x16, x16, x17 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x16, x8 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x4, #0xc62a // .Load lower half of constant 0x4787c62a
movk x4, #0x4787, lsl #16 // .Load upper half of constant 0x4787c62a
add w16, w5, w22 // Add dest value
add w16, w16, w4 // Add constant 0x4787c62a
add w5, w16, w6 // Add aux function result
ror w5, w5, #20 // Rotate left s=12 bits
eor x4, x17, x9 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w19, w17, w5 // Add X parameter round 1 D=FF(D, A, B, C, 0x4787c62a, s=12, M[5])
and x6, x4, x19 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x5, x6, x9 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x4, #0x4613 // .Load lower half of constant 0xa8304613
movk x4, #0xa830, lsl #16 // .Load upper half of constant 0xa8304613
add w6, w8, w7 // Add dest value
add w8, w6, w4 // Add constant 0xa8304613
add w4, w8, w5 // Add aux function result
ror w4, w4, #15 // Rotate left s=17 bits
eor x6, x19, x17 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w8, w19, w4 // Add X parameter round 1 C=FF(C, D, A, B, 0xa8304613, s=17, M[6])
and x5, x6, x8 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x4, x5, x17 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x6, #0x9501 // .Load lower half of constant 0xfd469501
movk x6, #0xfd46, lsl #16 // .Load upper half of constant 0xfd469501
add w9, w9, w23 // Add dest value
add w5, w9, w6 // Add constant 0xfd469501
add w9, w5, w4 // Add aux function result
ror w9, w9, #10 // Rotate left s=22 bits
eor x6, x8, x19 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w4, w8, w9 // Add X parameter round 1 B=FF(B, C, D, A, 0xfd469501, s=22, M[7])
ldp w5, w24, [x1, #32] // .Load 2 words of input data0 M[8],M[9]
ldp w16, w25, [x1, #40] // .Load 2 words of input data0 M[10],M[11]
#ifdef __AARCH64EB__
rev w5, w5
rev w24, w24
rev w16, w16
rev w25, w25
#endif
and x9, x6, x4 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x9, x19 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x9, #0x98d8 // .Load lower half of constant 0x698098d8
movk x9, #0x6980, lsl #16 // .Load upper half of constant 0x698098d8
add w17, w17, w5 // Add dest value
add w9, w17, w9 // Add constant 0x698098d8
add w17, w9, w6 // Add aux function result
ror w17, w17, #25 // Rotate left s=7 bits
eor x9, x4, x8 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w6, w4, w17 // Add X parameter round 1 A=FF(A, B, C, D, 0x698098d8, s=7, M[8])
and x17, x9, x6 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x9, x17, x8 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x17, #0xf7af // .Load lower half of constant 0x8b44f7af
movk x17, #0x8b44, lsl #16 // .Load upper half of constant 0x8b44f7af
add w19, w19, w24 // Add dest value
add w17, w19, w17 // Add constant 0x8b44f7af
add w19, w17, w9 // Add aux function result
ror w19, w19, #20 // Rotate left s=12 bits
eor x9, x6, x4 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w17, w6, w19 // Add X parameter round 1 D=FF(D, A, B, C, 0x8b44f7af, s=12, M[9])
and x9, x9, x17 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x9, x9, x4 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x11, #0x5bb1 // .Load lower half of constant 0xffff5bb1
movk x11, #0xffff, lsl #16 // .Load upper half of constant 0xffff5bb1
add w8, w8, w16 // Add dest value
add w8, w8, w11 // Add constant 0xffff5bb1
add w8, w8, w9 // Add aux function result
ror w8, w8, #15 // Rotate left s=17 bits
eor x9, x17, x6 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w8, w17, w8 // Add X parameter round 1 C=FF(C, D, A, B, 0xffff5bb1, s=17, M[10])
and x9, x9, x8 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x9, x9, x6 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x11, #0xd7be // .Load lower half of constant 0x895cd7be
movk x11, #0x895c, lsl #16 // .Load upper half of constant 0x895cd7be
add w4, w4, w25 // Add dest value
add w4, w4, w11 // Add constant 0x895cd7be
add w9, w4, w9 // Add aux function result
ror w9, w9, #10 // Rotate left s=22 bits
eor x4, x8, x17 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w9, w8, w9 // Add X parameter round 1 B=FF(B, C, D, A, 0x895cd7be, s=22, M[11])
ldp w11, w26, [x1, #48] // .Load 2 words of input data0 M[12],M[13]
ldp w12, w27, [x1, #56] // .Load 2 words of input data0 M[14],M[15]
#ifdef __AARCH64EB__
rev w11, w11
rev w26, w26
rev w12, w12
rev w27, w27
#endif
and x4, x4, x9 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x4, x4, x17 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x19, #0x1122 // .Load lower half of constant 0x6b901122
movk x19, #0x6b90, lsl #16 // .Load upper half of constant 0x6b901122
add w6, w6, w11 // Add dest value
add w6, w6, w19 // Add constant 0x6b901122
add w4, w6, w4 // Add aux function result
ror w4, w4, #25 // Rotate left s=7 bits
eor x6, x9, x8 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w4, w9, w4 // Add X parameter round 1 A=FF(A, B, C, D, 0x6b901122, s=7, M[12])
and x6, x6, x4 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x6, x8 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x19, #0x7193 // .Load lower half of constant 0xfd987193
movk x19, #0xfd98, lsl #16 // .Load upper half of constant 0xfd987193
add w17, w17, w26 // Add dest value
add w17, w17, w19 // Add constant 0xfd987193
add w17, w17, w6 // Add aux function result
ror w17, w17, #20 // Rotate left s=12 bits
eor x6, x4, x9 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w17, w4, w17 // Add X parameter round 1 D=FF(D, A, B, C, 0xfd987193, s=12, M[13])
and x6, x6, x17 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x6, x9 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x13, #0x438e // .Load lower half of constant 0xa679438e
movk x13, #0xa679, lsl #16 // .Load upper half of constant 0xa679438e
add w8, w8, w12 // Add dest value
add w8, w8, w13 // Add constant 0xa679438e
add w8, w8, w6 // Add aux function result
ror w8, w8, #15 // Rotate left s=17 bits
eor x6, x17, x4 // Begin aux function round 1 F(x,y,z)=(((y^z)&x)^z)
add w8, w17, w8 // Add X parameter round 1 C=FF(C, D, A, B, 0xa679438e, s=17, M[14])
and x6, x6, x8 // Continue aux function round 1 F(x,y,z)=(((y^z)&x)^z)
eor x6, x6, x4 // End aux function round 1 F(x,y,z)=(((y^z)&x)^z)
movz x13, #0x821 // .Load lower half of constant 0x49b40821
movk x13, #0x49b4, lsl #16 // .Load upper half of constant 0x49b40821
add w9, w9, w27 // Add dest value
add w9, w9, w13 // Add constant 0x49b40821
add w9, w9, w6 // Add aux function result
ror w9, w9, #10 // Rotate left s=22 bits
bic x6, x8, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w9, w8, w9 // Add X parameter round 1 B=FF(B, C, D, A, 0x49b40821, s=22, M[15])
and x13, x9, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x2562 // .Load lower half of constant 0xf61e2562
movk x13, #0xf61e, lsl #16 // .Load upper half of constant 0xf61e2562
add w4, w4, w20 // Add dest value
add w4, w4, w13 // Add constant 0xf61e2562
add w4, w4, w6 // Add aux function result
ror w4, w4, #27 // Rotate left s=5 bits
bic x6, x9, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w4, w9, w4 // Add X parameter round 2 A=GG(A, B, C, D, 0xf61e2562, s=5, M[1])
and x13, x4, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xb340 // .Load lower half of constant 0xc040b340
movk x13, #0xc040, lsl #16 // .Load upper half of constant 0xc040b340
add w17, w17, w7 // Add dest value
add w17, w17, w13 // Add constant 0xc040b340
add w17, w17, w6 // Add aux function result
ror w17, w17, #23 // Rotate left s=9 bits
bic x6, x4, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w17, w4, w17 // Add X parameter round 2 D=GG(D, A, B, C, 0xc040b340, s=9, M[6])
and x13, x17, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x5a51 // .Load lower half of constant 0x265e5a51
movk x13, #0x265e, lsl #16 // .Load upper half of constant 0x265e5a51
add w8, w8, w25 // Add dest value
add w8, w8, w13 // Add constant 0x265e5a51
add w8, w8, w6 // Add aux function result
ror w8, w8, #18 // Rotate left s=14 bits
bic x6, x17, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w8, w17, w8 // Add X parameter round 2 C=GG(C, D, A, B, 0x265e5a51, s=14, M[11])
and x13, x8, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xc7aa // .Load lower half of constant 0xe9b6c7aa
movk x13, #0xe9b6, lsl #16 // .Load upper half of constant 0xe9b6c7aa
add w9, w9, w15 // Add dest value
add w9, w9, w13 // Add constant 0xe9b6c7aa
add w9, w9, w6 // Add aux function result
ror w9, w9, #12 // Rotate left s=20 bits
bic x6, x8, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w9, w8, w9 // Add X parameter round 2 B=GG(B, C, D, A, 0xe9b6c7aa, s=20, M[0])
and x13, x9, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x105d // .Load lower half of constant 0xd62f105d
movk x13, #0xd62f, lsl #16 // .Load upper half of constant 0xd62f105d
add w4, w4, w22 // Add dest value
add w4, w4, w13 // Add constant 0xd62f105d
add w4, w4, w6 // Add aux function result
ror w4, w4, #27 // Rotate left s=5 bits
bic x6, x9, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w4, w9, w4 // Add X parameter round 2 A=GG(A, B, C, D, 0xd62f105d, s=5, M[5])
and x13, x4, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x1453 // .Load lower half of constant 0x2441453
movk x13, #0x244, lsl #16 // .Load upper half of constant 0x2441453
add w17, w17, w16 // Add dest value
add w17, w17, w13 // Add constant 0x2441453
add w17, w17, w6 // Add aux function result
ror w17, w17, #23 // Rotate left s=9 bits
bic x6, x4, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w17, w4, w17 // Add X parameter round 2 D=GG(D, A, B, C, 0x2441453, s=9, M[10])
and x13, x17, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xe681 // .Load lower half of constant 0xd8a1e681
movk x13, #0xd8a1, lsl #16 // .Load upper half of constant 0xd8a1e681
add w8, w8, w27 // Add dest value
add w8, w8, w13 // Add constant 0xd8a1e681
add w8, w8, w6 // Add aux function result
ror w8, w8, #18 // Rotate left s=14 bits
bic x6, x17, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w8, w17, w8 // Add X parameter round 2 C=GG(C, D, A, B, 0xd8a1e681, s=14, M[15])
and x13, x8, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xfbc8 // .Load lower half of constant 0xe7d3fbc8
movk x13, #0xe7d3, lsl #16 // .Load upper half of constant 0xe7d3fbc8
add w9, w9, w14 // Add dest value
add w9, w9, w13 // Add constant 0xe7d3fbc8
add w9, w9, w6 // Add aux function result
ror w9, w9, #12 // Rotate left s=20 bits
bic x6, x8, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w9, w8, w9 // Add X parameter round 2 B=GG(B, C, D, A, 0xe7d3fbc8, s=20, M[4])
and x13, x9, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xcde6 // .Load lower half of constant 0x21e1cde6
movk x13, #0x21e1, lsl #16 // .Load upper half of constant 0x21e1cde6
add w4, w4, w24 // Add dest value
add w4, w4, w13 // Add constant 0x21e1cde6
add w4, w4, w6 // Add aux function result
ror w4, w4, #27 // Rotate left s=5 bits
bic x6, x9, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w4, w9, w4 // Add X parameter round 2 A=GG(A, B, C, D, 0x21e1cde6, s=5, M[9])
and x13, x4, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x7d6 // .Load lower half of constant 0xc33707d6
movk x13, #0xc337, lsl #16 // .Load upper half of constant 0xc33707d6
add w17, w17, w12 // Add dest value
add w17, w17, w13 // Add constant 0xc33707d6
add w17, w17, w6 // Add aux function result
ror w17, w17, #23 // Rotate left s=9 bits
bic x6, x4, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w17, w4, w17 // Add X parameter round 2 D=GG(D, A, B, C, 0xc33707d6, s=9, M[14])
and x13, x17, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xd87 // .Load lower half of constant 0xf4d50d87
movk x13, #0xf4d5, lsl #16 // .Load upper half of constant 0xf4d50d87
add w8, w8, w21 // Add dest value
add w8, w8, w13 // Add constant 0xf4d50d87
add w8, w8, w6 // Add aux function result
ror w8, w8, #18 // Rotate left s=14 bits
bic x6, x17, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w8, w17, w8 // Add X parameter round 2 C=GG(C, D, A, B, 0xf4d50d87, s=14, M[3])
and x13, x8, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x14ed // .Load lower half of constant 0x455a14ed
movk x13, #0x455a, lsl #16 // .Load upper half of constant 0x455a14ed
add w9, w9, w5 // Add dest value
add w9, w9, w13 // Add constant 0x455a14ed
add w9, w9, w6 // Add aux function result
ror w9, w9, #12 // Rotate left s=20 bits
bic x6, x8, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w9, w8, w9 // Add X parameter round 2 B=GG(B, C, D, A, 0x455a14ed, s=20, M[8])
and x13, x9, x17 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xe905 // .Load lower half of constant 0xa9e3e905
movk x13, #0xa9e3, lsl #16 // .Load upper half of constant 0xa9e3e905
add w4, w4, w26 // Add dest value
add w4, w4, w13 // Add constant 0xa9e3e905
add w4, w4, w6 // Add aux function result
ror w4, w4, #27 // Rotate left s=5 bits
bic x6, x9, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w4, w9, w4 // Add X parameter round 2 A=GG(A, B, C, D, 0xa9e3e905, s=5, M[13])
and x13, x4, x8 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0xa3f8 // .Load lower half of constant 0xfcefa3f8
movk x13, #0xfcef, lsl #16 // .Load upper half of constant 0xfcefa3f8
add w17, w17, w3 // Add dest value
add w17, w17, w13 // Add constant 0xfcefa3f8
add w17, w17, w6 // Add aux function result
ror w17, w17, #23 // Rotate left s=9 bits
bic x6, x4, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w17, w4, w17 // Add X parameter round 2 D=GG(D, A, B, C, 0xfcefa3f8, s=9, M[2])
and x13, x17, x9 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x2d9 // .Load lower half of constant 0x676f02d9
movk x13, #0x676f, lsl #16 // .Load upper half of constant 0x676f02d9
add w8, w8, w23 // Add dest value
add w8, w8, w13 // Add constant 0x676f02d9
add w8, w8, w6 // Add aux function result
ror w8, w8, #18 // Rotate left s=14 bits
bic x6, x17, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
add w8, w17, w8 // Add X parameter round 2 C=GG(C, D, A, B, 0x676f02d9, s=14, M[7])
and x13, x8, x4 // Aux function round 2 G(x,y,z)=((x&z)|(~z&y))
orr x6, x6, x13 // End aux function round 2 G(x,y,z)=((x&z)|(~z&y))
movz x13, #0x4c8a // .Load lower half of constant 0x8d2a4c8a
movk x13, #0x8d2a, lsl #16 // .Load upper half of constant 0x8d2a4c8a
add w9, w9, w11 // Add dest value
add w9, w9, w13 // Add constant 0x8d2a4c8a
add w9, w9, w6 // Add aux function result
eor x6, x8, x17 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w9, w9, #12 // Rotate left s=20 bits
movz x10, #0x3942 // .Load lower half of constant 0xfffa3942
add w9, w8, w9 // Add X parameter round 2 B=GG(B, C, D, A, 0x8d2a4c8a, s=20, M[12])
movk x10, #0xfffa, lsl #16 // .Load upper half of constant 0xfffa3942
add w4, w4, w22 // Add dest value
eor x6, x6, x9 // End aux function round 3 H(x,y,z)=(x^y^z)
add w4, w4, w10 // Add constant 0xfffa3942
add w4, w4, w6 // Add aux function result
ror w4, w4, #28 // Rotate left s=4 bits
eor x6, x9, x8 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x10, #0xf681 // .Load lower half of constant 0x8771f681
add w4, w9, w4 // Add X parameter round 3 A=HH(A, B, C, D, 0xfffa3942, s=4, M[5])
movk x10, #0x8771, lsl #16 // .Load upper half of constant 0x8771f681
add w17, w17, w5 // Add dest value
eor x6, x6, x4 // End aux function round 3 H(x,y,z)=(x^y^z)
add w17, w17, w10 // Add constant 0x8771f681
add w17, w17, w6 // Add aux function result
eor x6, x4, x9 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w17, w17, #21 // Rotate left s=11 bits
movz x13, #0x6122 // .Load lower half of constant 0x6d9d6122
add w17, w4, w17 // Add X parameter round 3 D=HH(D, A, B, C, 0x8771f681, s=11, M[8])
movk x13, #0x6d9d, lsl #16 // .Load upper half of constant 0x6d9d6122
add w8, w8, w25 // Add dest value
eor x6, x6, x17 // End aux function round 3 H(x,y,z)=(x^y^z)
add w8, w8, w13 // Add constant 0x6d9d6122
add w8, w8, w6 // Add aux function result
ror w8, w8, #16 // Rotate left s=16 bits
eor x6, x17, x4 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x13, #0x380c // .Load lower half of constant 0xfde5380c
add w8, w17, w8 // Add X parameter round 3 C=HH(C, D, A, B, 0x6d9d6122, s=16, M[11])
movk x13, #0xfde5, lsl #16 // .Load upper half of constant 0xfde5380c
add w9, w9, w12 // Add dest value
eor x6, x6, x8 // End aux function round 3 H(x,y,z)=(x^y^z)
add w9, w9, w13 // Add constant 0xfde5380c
add w9, w9, w6 // Add aux function result
eor x6, x8, x17 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w9, w9, #9 // Rotate left s=23 bits
movz x10, #0xea44 // .Load lower half of constant 0xa4beea44
add w9, w8, w9 // Add X parameter round 3 B=HH(B, C, D, A, 0xfde5380c, s=23, M[14])
movk x10, #0xa4be, lsl #16 // .Load upper half of constant 0xa4beea44
add w4, w4, w20 // Add dest value
eor x6, x6, x9 // End aux function round 3 H(x,y,z)=(x^y^z)
add w4, w4, w10 // Add constant 0xa4beea44
add w4, w4, w6 // Add aux function result
ror w4, w4, #28 // Rotate left s=4 bits
eor x6, x9, x8 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x10, #0xcfa9 // .Load lower half of constant 0x4bdecfa9
add w4, w9, w4 // Add X parameter round 3 A=HH(A, B, C, D, 0xa4beea44, s=4, M[1])
movk x10, #0x4bde, lsl #16 // .Load upper half of constant 0x4bdecfa9
add w17, w17, w14 // Add dest value
eor x6, x6, x4 // End aux function round 3 H(x,y,z)=(x^y^z)
add w17, w17, w10 // Add constant 0x4bdecfa9
add w17, w17, w6 // Add aux function result
eor x6, x4, x9 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w17, w17, #21 // Rotate left s=11 bits
movz x13, #0x4b60 // .Load lower half of constant 0xf6bb4b60
add w17, w4, w17 // Add X parameter round 3 D=HH(D, A, B, C, 0x4bdecfa9, s=11, M[4])
movk x13, #0xf6bb, lsl #16 // .Load upper half of constant 0xf6bb4b60
add w8, w8, w23 // Add dest value
eor x6, x6, x17 // End aux function round 3 H(x,y,z)=(x^y^z)
add w8, w8, w13 // Add constant 0xf6bb4b60
add w8, w8, w6 // Add aux function result
ror w8, w8, #16 // Rotate left s=16 bits
eor x6, x17, x4 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x13, #0xbc70 // .Load lower half of constant 0xbebfbc70
add w8, w17, w8 // Add X parameter round 3 C=HH(C, D, A, B, 0xf6bb4b60, s=16, M[7])
movk x13, #0xbebf, lsl #16 // .Load upper half of constant 0xbebfbc70
add w9, w9, w16 // Add dest value
eor x6, x6, x8 // End aux function round 3 H(x,y,z)=(x^y^z)
add w9, w9, w13 // Add constant 0xbebfbc70
add w9, w9, w6 // Add aux function result
eor x6, x8, x17 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w9, w9, #9 // Rotate left s=23 bits
movz x10, #0x7ec6 // .Load lower half of constant 0x289b7ec6
add w9, w8, w9 // Add X parameter round 3 B=HH(B, C, D, A, 0xbebfbc70, s=23, M[10])
movk x10, #0x289b, lsl #16 // .Load upper half of constant 0x289b7ec6
add w4, w4, w26 // Add dest value
eor x6, x6, x9 // End aux function round 3 H(x,y,z)=(x^y^z)
add w4, w4, w10 // Add constant 0x289b7ec6
add w4, w4, w6 // Add aux function result
ror w4, w4, #28 // Rotate left s=4 bits
eor x6, x9, x8 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x10, #0x27fa // .Load lower half of constant 0xeaa127fa
add w4, w9, w4 // Add X parameter round 3 A=HH(A, B, C, D, 0x289b7ec6, s=4, M[13])
movk x10, #0xeaa1, lsl #16 // .Load upper half of constant 0xeaa127fa
add w17, w17, w15 // Add dest value
eor x6, x6, x4 // End aux function round 3 H(x,y,z)=(x^y^z)
add w17, w17, w10 // Add constant 0xeaa127fa
add w17, w17, w6 // Add aux function result
eor x6, x4, x9 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w17, w17, #21 // Rotate left s=11 bits
movz x13, #0x3085 // .Load lower half of constant 0xd4ef3085
add w17, w4, w17 // Add X parameter round 3 D=HH(D, A, B, C, 0xeaa127fa, s=11, M[0])
movk x13, #0xd4ef, lsl #16 // .Load upper half of constant 0xd4ef3085
add w8, w8, w21 // Add dest value
eor x6, x6, x17 // End aux function round 3 H(x,y,z)=(x^y^z)
add w8, w8, w13 // Add constant 0xd4ef3085
add w8, w8, w6 // Add aux function result
ror w8, w8, #16 // Rotate left s=16 bits
eor x6, x17, x4 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x13, #0x1d05 // .Load lower half of constant 0x4881d05
add w8, w17, w8 // Add X parameter round 3 C=HH(C, D, A, B, 0xd4ef3085, s=16, M[3])
movk x13, #0x488, lsl #16 // .Load upper half of constant 0x4881d05
add w9, w9, w7 // Add dest value
eor x6, x6, x8 // End aux function round 3 H(x,y,z)=(x^y^z)
add w9, w9, w13 // Add constant 0x4881d05
add w9, w9, w6 // Add aux function result
eor x6, x8, x17 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w9, w9, #9 // Rotate left s=23 bits
movz x10, #0xd039 // .Load lower half of constant 0xd9d4d039
add w9, w8, w9 // Add X parameter round 3 B=HH(B, C, D, A, 0x4881d05, s=23, M[6])
movk x10, #0xd9d4, lsl #16 // .Load upper half of constant 0xd9d4d039
add w4, w4, w24 // Add dest value
eor x6, x6, x9 // End aux function round 3 H(x,y,z)=(x^y^z)
add w4, w4, w10 // Add constant 0xd9d4d039
add w4, w4, w6 // Add aux function result
ror w4, w4, #28 // Rotate left s=4 bits
eor x6, x9, x8 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x10, #0x99e5 // .Load lower half of constant 0xe6db99e5
add w4, w9, w4 // Add X parameter round 3 A=HH(A, B, C, D, 0xd9d4d039, s=4, M[9])
movk x10, #0xe6db, lsl #16 // .Load upper half of constant 0xe6db99e5
add w17, w17, w11 // Add dest value
eor x6, x6, x4 // End aux function round 3 H(x,y,z)=(x^y^z)
add w17, w17, w10 // Add constant 0xe6db99e5
add w17, w17, w6 // Add aux function result
eor x6, x4, x9 // Begin aux function round 3 H(x,y,z)=(x^y^z)
ror w17, w17, #21 // Rotate left s=11 bits
movz x13, #0x7cf8 // .Load lower half of constant 0x1fa27cf8
add w17, w4, w17 // Add X parameter round 3 D=HH(D, A, B, C, 0xe6db99e5, s=11, M[12])
movk x13, #0x1fa2, lsl #16 // .Load upper half of constant 0x1fa27cf8
add w8, w8, w27 // Add dest value
eor x6, x6, x17 // End aux function round 3 H(x,y,z)=(x^y^z)
add w8, w8, w13 // Add constant 0x1fa27cf8
add w8, w8, w6 // Add aux function result
ror w8, w8, #16 // Rotate left s=16 bits
eor x6, x17, x4 // Begin aux function round 3 H(x,y,z)=(x^y^z)
movz x13, #0x5665 // .Load lower half of constant 0xc4ac5665
add w8, w17, w8 // Add X parameter round 3 C=HH(C, D, A, B, 0x1fa27cf8, s=16, M[15])
movk x13, #0xc4ac, lsl #16 // .Load upper half of constant 0xc4ac5665
add w9, w9, w3 // Add dest value
eor x6, x6, x8 // End aux function round 3 H(x,y,z)=(x^y^z)
add w9, w9, w13 // Add constant 0xc4ac5665
add w9, w9, w6 // Add aux function result
ror w9, w9, #9 // Rotate left s=23 bits
movz x6, #0x2244 // .Load lower half of constant 0xf4292244
movk x6, #0xf429, lsl #16 // .Load upper half of constant 0xf4292244
add w9, w8, w9 // Add X parameter round 3 B=HH(B, C, D, A, 0xc4ac5665, s=23, M[2])
add w4, w4, w15 // Add dest value
orn x13, x9, x17 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w4, w4, w6 // Add constant 0xf4292244
eor x6, x8, x13 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w4, w4, w6 // Add aux function result
ror w4, w4, #26 // Rotate left s=6 bits
movz x6, #0xff97 // .Load lower half of constant 0x432aff97
movk x6, #0x432a, lsl #16 // .Load upper half of constant 0x432aff97
add w4, w9, w4 // Add X parameter round 4 A=II(A, B, C, D, 0xf4292244, s=6, M[0])
orn x10, x4, x8 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w17, w17, w23 // Add dest value
eor x10, x9, x10 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w17, w17, w6 // Add constant 0x432aff97
add w6, w17, w10 // Add aux function result
ror w6, w6, #22 // Rotate left s=10 bits
movz x17, #0x23a7 // .Load lower half of constant 0xab9423a7
movk x17, #0xab94, lsl #16 // .Load upper half of constant 0xab9423a7
add w6, w4, w6 // Add X parameter round 4 D=II(D, A, B, C, 0x432aff97, s=10, M[7])
add w8, w8, w12 // Add dest value
orn x10, x6, x9 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w8, w17 // Add constant 0xab9423a7
eor x17, x4, x10 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w8, w17 // Add aux function result
ror w8, w8, #17 // Rotate left s=15 bits
movz x17, #0xa039 // .Load lower half of constant 0xfc93a039
movk x17, #0xfc93, lsl #16 // .Load upper half of constant 0xfc93a039
add w8, w6, w8 // Add X parameter round 4 C=II(C, D, A, B, 0xab9423a7, s=15, M[14])
orn x13, x8, x4 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w9, w22 // Add dest value
eor x13, x6, x13 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w9, w17 // Add constant 0xfc93a039
add w17, w9, w13 // Add aux function result
ror w17, w17, #11 // Rotate left s=21 bits
movz x9, #0x59c3 // .Load lower half of constant 0x655b59c3
movk x9, #0x655b, lsl #16 // .Load upper half of constant 0x655b59c3
add w17, w8, w17 // Add X parameter round 4 B=II(B, C, D, A, 0xfc93a039, s=21, M[5])
add w4, w4, w11 // Add dest value
orn x13, x17, x6 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w4, w9 // Add constant 0x655b59c3
eor x4, x8, x13 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w9, w4 // Add aux function result
ror w9, w9, #26 // Rotate left s=6 bits
movz x4, #0xcc92 // .Load lower half of constant 0x8f0ccc92
movk x4, #0x8f0c, lsl #16 // .Load upper half of constant 0x8f0ccc92
add w9, w17, w9 // Add X parameter round 4 A=II(A, B, C, D, 0x655b59c3, s=6, M[12])
orn x10, x9, x8 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w6, w6, w21 // Add dest value
eor x10, x17, x10 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w4, w6, w4 // Add constant 0x8f0ccc92
add w6, w4, w10 // Add aux function result
ror w6, w6, #22 // Rotate left s=10 bits
movz x4, #0xf47d // .Load lower half of constant 0xffeff47d
movk x4, #0xffef, lsl #16 // .Load upper half of constant 0xffeff47d
add w6, w9, w6 // Add X parameter round 4 D=II(D, A, B, C, 0x8f0ccc92, s=10, M[3])
add w8, w8, w16 // Add dest value
orn x10, x6, x17 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w8, w4 // Add constant 0xffeff47d
eor x4, x9, x10 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w8, w4 // Add aux function result
ror w8, w8, #17 // Rotate left s=15 bits
movz x4, #0x5dd1 // .Load lower half of constant 0x85845dd1
movk x4, #0x8584, lsl #16 // .Load upper half of constant 0x85845dd1
add w8, w6, w8 // Add X parameter round 4 C=II(C, D, A, B, 0xffeff47d, s=15, M[10])
orn x10, x8, x9 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w17, w20 // Add dest value
eor x17, x6, x10 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w15, w4 // Add constant 0x85845dd1
add w4, w15, w17 // Add aux function result
ror w4, w4, #11 // Rotate left s=21 bits
movz x15, #0x7e4f // .Load lower half of constant 0x6fa87e4f
movk x15, #0x6fa8, lsl #16 // .Load upper half of constant 0x6fa87e4f
add w17, w8, w4 // Add X parameter round 4 B=II(B, C, D, A, 0x85845dd1, s=21, M[1])
add w4, w9, w5 // Add dest value
orn x9, x17, x6 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w4, w15 // Add constant 0x6fa87e4f
eor x4, x8, x9 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w15, w4 // Add aux function result
ror w9, w9, #26 // Rotate left s=6 bits
movz x15, #0xe6e0 // .Load lower half of constant 0xfe2ce6e0
movk x15, #0xfe2c, lsl #16 // .Load upper half of constant 0xfe2ce6e0
add w4, w17, w9 // Add X parameter round 4 A=II(A, B, C, D, 0x6fa87e4f, s=6, M[8])
orn x9, x4, x8 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w6, w6, w27 // Add dest value
eor x9, x17, x9 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w6, w15 // Add constant 0xfe2ce6e0
add w6, w15, w9 // Add aux function result
ror w6, w6, #22 // Rotate left s=10 bits
movz x9, #0x4314 // .Load lower half of constant 0xa3014314
movk x9, #0xa301, lsl #16 // .Load upper half of constant 0xa3014314
add w15, w4, w6 // Add X parameter round 4 D=II(D, A, B, C, 0xfe2ce6e0, s=10, M[15])
add w6, w8, w7 // Add dest value
orn x7, x15, x17 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w6, w9 // Add constant 0xa3014314
eor x9, x4, x7 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w6, w8, w9 // Add aux function result
ror w6, w6, #17 // Rotate left s=15 bits
movz x7, #0x11a1 // .Load lower half of constant 0x4e0811a1
movk x7, #0x4e08, lsl #16 // .Load upper half of constant 0x4e0811a1
add w8, w15, w6 // Add X parameter round 4 C=II(C, D, A, B, 0xa3014314, s=15, M[6])
orn x9, x8, x4 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w6, w17, w26 // Add dest value
eor x17, x15, x9 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w9, w6, w7 // Add constant 0x4e0811a1
add w7, w9, w17 // Add aux function result
ror w7, w7, #11 // Rotate left s=21 bits
movz x6, #0x7e82 // .Load lower half of constant 0xf7537e82
movk x6, #0xf753, lsl #16 // .Load upper half of constant 0xf7537e82
add w9, w8, w7 // Add X parameter round 4 B=II(B, C, D, A, 0x4e0811a1, s=21, M[13])
add w17, w4, w14 // Add dest value
orn x7, x9, x15 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w14, w17, w6 // Add constant 0xf7537e82
eor x4, x8, x7 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w17, w14, w4 // Add aux function result
ror w17, w17, #26 // Rotate left s=6 bits
movz x6, #0xf235 // .Load lower half of constant 0xbd3af235
movk x6, #0xbd3a, lsl #16 // .Load upper half of constant 0xbd3af235
add w7, w9, w17 // Add X parameter round 4 A=II(A, B, C, D, 0xf7537e82, s=6, M[4])
orn x14, x7, x8 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w4, w15, w25 // Add dest value
eor x17, x9, x14 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w4, w6 // Add constant 0xbd3af235
add w16, w15, w17 // Add aux function result
ror w16, w16, #22 // Rotate left s=10 bits
movz x14, #0xd2bb // .Load lower half of constant 0x2ad7d2bb
movk x14, #0x2ad7, lsl #16 // .Load upper half of constant 0x2ad7d2bb
add w4, w7, w16 // Add X parameter round 4 D=II(D, A, B, C, 0xbd3af235, s=10, M[11])
add w6, w8, w3 // Add dest value
orn x15, x4, x9 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w17, w6, w14 // Add constant 0x2ad7d2bb
eor x16, x7, x15 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w8, w17, w16 // Add aux function result
ror w8, w8, #17 // Rotate left s=15 bits
movz x3, #0xd391 // .Load lower half of constant 0xeb86d391
movk x3, #0xeb86, lsl #16 // .Load upper half of constant 0xeb86d391
add w14, w4, w8 // Add X parameter round 4 C=II(C, D, A, B, 0x2ad7d2bb, s=15, M[2])
orn x6, x14, x7 // Begin aux function round 4 I(x,y,z)=((~z|x)^y)
add w15, w9, w24 // Add dest value
eor x17, x4, x6 // End aux function round 4 I(x,y,z)=((~z|x)^y)
add w16, w15, w3 // Add constant 0xeb86d391
add w8, w16, w17 // Add aux function result
ror w8, w8, #11 // Rotate left s=21 bits
ldp w6, w15, [x0] // Reload MD5 state->A and state->B
ldp w5, w9, [x0, #8] // Reload MD5 state->C and state->D
add w3, w14, w8 // Add X parameter round 4 B=II(B, C, D, A, 0xeb86d391, s=21, M[9])
add w13, w4, w9 // Add result of MD5 rounds to state->D
add w12, w14, w5 // Add result of MD5 rounds to state->C
add w10, w7, w6 // Add result of MD5 rounds to state->A
add w11, w3, w15 // Add result of MD5 rounds to state->B
stp w12, w13, [x0, #8] // Store MD5 states C,D
stp w10, w11, [x0] // Store MD5 states A,B
add x1, x1, #64 // Increment data pointer
subs w2, w2, #1 // Decrement block counter
b.ne ossl_md5_blocks_loop
ldp x21,x22,[sp,#16]
ldp x23,x24,[sp,#32]
ldp x25,x26,[sp,#48]
ldp x27,x28,[sp,#64]
ldp x19,x20,[sp],#80
ret

View File

@ -7,6 +7,7 @@
.type aes_gcm_enc_128_kernel,%function
.align 4
aes_gcm_enc_128_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L128_enc_ret
stp x19, x20, [sp, #-112]!
mov x16, x4
@ -989,6 +990,7 @@ aes_gcm_enc_128_kernel:
.type aes_gcm_dec_128_kernel,%function
.align 4
aes_gcm_dec_128_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L128_dec_ret
stp x19, x20, [sp, #-112]!
mov x16, x4
@ -1981,6 +1983,7 @@ aes_gcm_dec_128_kernel:
.type aes_gcm_enc_192_kernel,%function
.align 4
aes_gcm_enc_192_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L192_enc_ret
stp x19, x20, [sp, #-112]!
mov x16, x4
@ -3038,6 +3041,7 @@ aes_gcm_enc_192_kernel:
.type aes_gcm_dec_192_kernel,%function
.align 4
aes_gcm_dec_192_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L192_dec_ret
stp x19, x20, [sp, #-112]!
mov x16, x4
@ -4105,6 +4109,7 @@ aes_gcm_dec_192_kernel:
.type aes_gcm_enc_256_kernel,%function
.align 4
aes_gcm_enc_256_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L256_enc_ret
stp x19, x20, [sp, #-112]!
mov x16, x4
@ -5229,6 +5234,7 @@ aes_gcm_enc_256_kernel:
.type aes_gcm_dec_256_kernel,%function
.align 4
aes_gcm_dec_256_kernel:
AARCH64_VALID_CALL_TARGET
cbz x1, .L256_dec_ret
stp x19, x20, [sp, #-112]!
mov x16, x4

View File

@ -7,6 +7,7 @@
.type gcm_init_v8,%function
.align 4
gcm_init_v8:
AARCH64_VALID_CALL_TARGET
ld1 {v17.2d},[x1] //load input H
movi v19.16b,#0xe1
shl v19.2d,v19.2d,#57 //0xc2.0
@ -82,21 +83,110 @@ gcm_init_v8:
pmull v5.1q,v5.1d,v19.1d
eor v18.16b,v18.16b,v2.16b
eor v4.16b,v4.16b,v7.16b
eor v20.16b, v0.16b,v18.16b //H^3
eor v22.16b,v5.16b,v4.16b //H^4
eor v23.16b, v0.16b,v18.16b //H^3
eor v25.16b,v5.16b,v4.16b //H^4
ext v16.16b,v20.16b, v20.16b,#8 //Karatsuba pre-processing
ext v17.16b,v22.16b,v22.16b,#8
eor v16.16b,v16.16b,v20.16b
eor v17.16b,v17.16b,v22.16b
ext v21.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed
st1 {v20.2d,v21.2d,v22.2d},[x0] //store Htable[3..5]
ext v16.16b,v23.16b, v23.16b,#8 //Karatsuba pre-processing
ext v17.16b,v25.16b,v25.16b,#8
ext v18.16b,v22.16b,v22.16b,#8
eor v16.16b,v16.16b,v23.16b
eor v17.16b,v17.16b,v25.16b
eor v18.16b,v18.16b,v22.16b
ext v24.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed
st1 {v23.2d,v24.2d,v25.2d},[x0],#48 //store Htable[3..5]
//calculate H^5 and H^6
pmull v0.1q,v22.1d, v23.1d
pmull v5.1q,v23.1d,v23.1d
pmull2 v2.1q,v22.2d, v23.2d
pmull2 v7.1q,v23.2d,v23.2d
pmull v1.1q,v16.1d,v18.1d
pmull v6.1q,v16.1d,v16.1d
ext v16.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing
ext v17.16b,v5.16b,v7.16b,#8
eor v18.16b,v0.16b,v2.16b
eor v1.16b,v1.16b,v16.16b
eor v4.16b,v5.16b,v7.16b
eor v6.16b,v6.16b,v17.16b
eor v1.16b,v1.16b,v18.16b
pmull v18.1q,v0.1d,v19.1d //1st phase
eor v6.16b,v6.16b,v4.16b
pmull v4.1q,v5.1d,v19.1d
ins v2.d[0],v1.d[1]
ins v7.d[0],v6.d[1]
ins v1.d[1],v0.d[0]
ins v6.d[1],v5.d[0]
eor v0.16b,v1.16b,v18.16b
eor v5.16b,v6.16b,v4.16b
ext v18.16b,v0.16b,v0.16b,#8 //2nd phase
ext v4.16b,v5.16b,v5.16b,#8
pmull v0.1q,v0.1d,v19.1d
pmull v5.1q,v5.1d,v19.1d
eor v18.16b,v18.16b,v2.16b
eor v4.16b,v4.16b,v7.16b
eor v26.16b,v0.16b,v18.16b //H^5
eor v28.16b,v5.16b,v4.16b //H^6
ext v16.16b,v26.16b, v26.16b,#8 //Karatsuba pre-processing
ext v17.16b,v28.16b,v28.16b,#8
ext v18.16b,v22.16b,v22.16b,#8
eor v16.16b,v16.16b,v26.16b
eor v17.16b,v17.16b,v28.16b
eor v18.16b,v18.16b,v22.16b
ext v27.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed
st1 {v26.2d,v27.2d,v28.2d},[x0],#48 //store Htable[6..8]
//calculate H^7 and H^8
pmull v0.1q,v22.1d,v26.1d
pmull v5.1q,v22.1d,v28.1d
pmull2 v2.1q,v22.2d,v26.2d
pmull2 v7.1q,v22.2d,v28.2d
pmull v1.1q,v16.1d,v18.1d
pmull v6.1q,v17.1d,v18.1d
ext v16.16b,v0.16b,v2.16b,#8 //Karatsuba post-processing
ext v17.16b,v5.16b,v7.16b,#8
eor v18.16b,v0.16b,v2.16b
eor v1.16b,v1.16b,v16.16b
eor v4.16b,v5.16b,v7.16b
eor v6.16b,v6.16b,v17.16b
eor v1.16b,v1.16b,v18.16b
pmull v18.1q,v0.1d,v19.1d //1st phase
eor v6.16b,v6.16b,v4.16b
pmull v4.1q,v5.1d,v19.1d
ins v2.d[0],v1.d[1]
ins v7.d[0],v6.d[1]
ins v1.d[1],v0.d[0]
ins v6.d[1],v5.d[0]
eor v0.16b,v1.16b,v18.16b
eor v5.16b,v6.16b,v4.16b
ext v18.16b,v0.16b,v0.16b,#8 //2nd phase
ext v4.16b,v5.16b,v5.16b,#8
pmull v0.1q,v0.1d,v19.1d
pmull v5.1q,v5.1d,v19.1d
eor v18.16b,v18.16b,v2.16b
eor v4.16b,v4.16b,v7.16b
eor v29.16b,v0.16b,v18.16b //H^7
eor v31.16b,v5.16b,v4.16b //H^8
ext v16.16b,v29.16b,v29.16b,#8 //Karatsuba pre-processing
ext v17.16b,v31.16b,v31.16b,#8
eor v16.16b,v16.16b,v29.16b
eor v17.16b,v17.16b,v31.16b
ext v30.16b,v16.16b,v17.16b,#8 //pack Karatsuba pre-processed
st1 {v29.2d,v30.2d,v31.2d},[x0] //store Htable[9..11]
ret
.size gcm_init_v8,.-gcm_init_v8
.globl gcm_gmult_v8
.type gcm_gmult_v8,%function
.align 4
gcm_gmult_v8:
AARCH64_VALID_CALL_TARGET
ld1 {v17.2d},[x0] //load Xi
movi v19.16b,#0xe1
ld1 {v20.2d,v21.2d},[x1] //load twisted H, ...
@ -138,6 +228,7 @@ gcm_gmult_v8:
.type gcm_ghash_v8,%function
.align 4
gcm_ghash_v8:
AARCH64_VALID_CALL_TARGET
cmp x3,#64
b.hs .Lgcm_ghash_v8_4x
ld1 {v0.2d},[x0] //load [rotated] Xi

View File

@ -1,3 +1,5 @@
#include "arm_arch.h"
.text
.align 8 // strategic alignment and padding that allows to use
@ -33,8 +35,8 @@ iotas:
.type KeccakF1600_int,%function
.align 5
KeccakF1600_int:
AARCH64_SIGN_LINK_REGISTER
adr x28,iotas
.inst 0xd503233f // paciasp
stp x28,x30,[sp,#16] // 32 bytes on top are mine
b .Loop
.align 4
@ -198,14 +200,14 @@ KeccakF1600_int:
bne .Loop
ldr x30,[sp,#24]
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size KeccakF1600_int,.-KeccakF1600_int
.type KeccakF1600,%function
.align 5
KeccakF1600:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-128]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -255,7 +257,7 @@ KeccakF1600:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldp x29,x30,[sp],#128
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size KeccakF1600,.-KeccakF1600
@ -263,7 +265,7 @@ KeccakF1600:
.type SHA3_absorb,%function
.align 5
SHA3_absorb:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-128]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -497,14 +499,14 @@ SHA3_absorb:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldp x29,x30,[sp],#128
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size SHA3_absorb,.-SHA3_absorb
.globl SHA3_squeeze
.type SHA3_squeeze,%function
.align 5
SHA3_squeeze:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-48]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -514,6 +516,8 @@ SHA3_squeeze:
mov x20,x1
mov x21,x2
mov x22,x3
cmp w4, #0 // w4 = 'next' argument
bne .Lnext_block
.Loop_squeeze:
ldr x4,[x0],#8
@ -528,7 +532,7 @@ SHA3_squeeze:
subs x3,x3,#8
bhi .Loop_squeeze
.Lnext_block:
mov x0,x19
bl KeccakF1600
mov x0,x19
@ -567,7 +571,7 @@ SHA3_squeeze:
ldp x19,x20,[sp,#16]
ldp x21,x22,[sp,#32]
ldp x29,x30,[sp],#48
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size SHA3_squeeze,.-SHA3_squeeze
.type KeccakF1600_ce,%function
@ -675,7 +679,7 @@ KeccakF1600_ce:
.type KeccakF1600_cext,%function
.align 5
KeccakF1600_cext:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-80]!
add x29,sp,#0
stp d8,d9,[sp,#16] // per ABI requirement
@ -716,14 +720,14 @@ KeccakF1600_cext:
ldp d12,d13,[sp,#48]
ldp d14,d15,[sp,#64]
ldr x29,[sp],#80
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size KeccakF1600_cext,.-KeccakF1600_cext
.globl SHA3_absorb_cext
.type SHA3_absorb_cext,%function
.align 5
SHA3_absorb_cext:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-80]!
add x29,sp,#0
stp d8,d9,[sp,#16] // per ABI requirement
@ -939,14 +943,14 @@ SHA3_absorb_cext:
ldp d12,d13,[sp,#48]
ldp d14,d15,[sp,#64]
ldp x29,x30,[sp],#80
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size SHA3_absorb_cext,.-SHA3_absorb_cext
.globl SHA3_squeeze_cext
.type SHA3_squeeze_cext,%function
.align 5
SHA3_squeeze_cext:
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-16]!
add x29,sp,#0
mov x9,x0
@ -1002,7 +1006,7 @@ SHA3_squeeze_cext:
.Lsqueeze_done_ce:
ldr x29,[sp],#16
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size SHA3_squeeze_cext,.-SHA3_squeeze_cext
.byte 75,101,99,99,97,107,45,49,54,48,48,32,97,98,115,111,114,98,32,97,110,100,32,115,113,117,101,101,122,101,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0

View File

@ -1,5 +1,5 @@
#include "arm_arch.h"
#ifndef __KERNEL__
# include "arm_arch.h"
.hidden OPENSSL_armcap_P
#endif
@ -10,11 +10,13 @@
.type sha1_block_data_order,%function
.align 6
sha1_block_data_order:
AARCH64_VALID_CALL_TARGET
adrp x16,OPENSSL_armcap_P
ldr w16,[x16,#:lo12:OPENSSL_armcap_P]
tst w16,#ARMV8_SHA1
b.ne .Lv8_entry
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-96]!
add x29,sp,#0
stp x19,x20,[sp,#16]
@ -1074,6 +1076,7 @@ sha1_block_data_order:
.align 6
sha1_block_armv8:
.Lv8_entry:
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0

View File

@ -4,8 +4,59 @@
// this file except in compliance with the License. You can obtain a copy
// in the file LICENSE in the source distribution or at
// https://www.openssl.org/source/license.html
// ====================================================================
// Written by Andy Polyakov <appro@openssl.org> for the OpenSSL
// project. The module is, however, dual licensed under OpenSSL and
// CRYPTOGAMS licenses depending on where you obtain it. For further
// details see http://www.openssl.org/~appro/cryptogams/.
//
// Permission to use under GPLv2 terms is granted.
// ====================================================================
//
// SHA256/512 for ARMv8.
//
// Performance in cycles per processed byte and improvement coefficient
// over code generated with "default" compiler:
//
// SHA256-hw SHA256(*) SHA512
// Apple A7 1.97 10.5 (+33%) 6.73 (-1%(**))
// Cortex-A53 2.38 15.5 (+115%) 10.0 (+150%(***))
// Cortex-A57 2.31 11.6 (+86%) 7.51 (+260%(***))
// Denver 2.01 10.5 (+26%) 6.70 (+8%)
// X-Gene 20.0 (+100%) 12.8 (+300%(***))
// Mongoose 2.36 13.0 (+50%) 8.36 (+33%)
// Kryo 1.92 17.4 (+30%) 11.2 (+8%)
// ThunderX2 2.54 13.2 (+40%) 8.40 (+18%)
//
// (*) Software SHA256 results are of lesser relevance, presented
// mostly for informational purposes.
// (**) The result is a trade-off: it's possible to improve it by
// 10% (or by 1 cycle per round), but at the cost of 20% loss
// on Cortex-A53 (or by 4 cycles per round).
// (***) Super-impressive coefficients over gcc-generated code are
// indication of some compiler "pathology", most notably code
// generated with -mgeneral-regs-only is significantly faster
// and the gap is only 40-90%.
//
// October 2016.
//
// Originally it was reckoned that it makes no sense to implement NEON
// version of SHA256 for 64-bit processors. This is because performance
// improvement on most wide-spread Cortex-A5x processors was observed
// to be marginal, same on Cortex-A53 and ~10% on A57. But then it was
// observed that 32-bit NEON SHA256 performs significantly better than
// 64-bit scalar version on *some* of the more recent processors. As
// result 64-bit NEON version of SHA256 was added to provide best
// all-round performance. For example it executes ~30% faster on X-Gene
// and Mongoose. [For reference, NEON version of SHA512 is bound to
// deliver much less improvement, likely *negative* on Cortex-A5x.
// Which is why NEON support is limited to SHA256.]
// $output is the last argument if it looks like a file (it has an extension)
// $flavour is the first argument if it doesn't look like a file
#include "arm_arch.h"
#ifndef __KERNEL__
# include "arm_arch.h"
.hidden OPENSSL_armcap_P
#endif
@ -16,6 +67,7 @@
.type sha256_block_data_order,%function
.align 6
sha256_block_data_order:
AARCH64_VALID_CALL_TARGET
#ifndef __KERNEL__
adrp x16,OPENSSL_armcap_P
ldr w16,[x16,#:lo12:OPENSSL_armcap_P]
@ -24,7 +76,7 @@ sha256_block_data_order:
tst w16,#ARMV7_NEON
b.ne .Lneon_entry
#endif
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-128]!
add x29,sp,#0
@ -984,7 +1036,7 @@ sha256_block_data_order:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldp x29,x30,[sp],#128
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size sha256_block_data_order,.-sha256_block_data_order
@ -1017,6 +1069,7 @@ sha256_block_data_order:
.align 6
sha256_block_armv8:
.Lv8_entry:
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later.
stp x29,x30,[sp,#-16]!
add x29,sp,#0
@ -1158,7 +1211,9 @@ sha256_block_armv8:
.type sha256_block_neon,%function
.align 4
sha256_block_neon:
AARCH64_VALID_CALL_TARGET
.Lneon_entry:
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later
stp x29, x30, [sp, #-16]!
mov x29, sp
sub sp,sp,#16*4

View File

@ -4,8 +4,59 @@
// this file except in compliance with the License. You can obtain a copy
// in the file LICENSE in the source distribution or at
// https://www.openssl.org/source/license.html
// ====================================================================
// Written by Andy Polyakov <appro@openssl.org> for the OpenSSL
// project. The module is, however, dual licensed under OpenSSL and
// CRYPTOGAMS licenses depending on where you obtain it. For further
// details see http://www.openssl.org/~appro/cryptogams/.
//
// Permission to use under GPLv2 terms is granted.
// ====================================================================
//
// SHA256/512 for ARMv8.
//
// Performance in cycles per processed byte and improvement coefficient
// over code generated with "default" compiler:
//
// SHA256-hw SHA256(*) SHA512
// Apple A7 1.97 10.5 (+33%) 6.73 (-1%(**))
// Cortex-A53 2.38 15.5 (+115%) 10.0 (+150%(***))
// Cortex-A57 2.31 11.6 (+86%) 7.51 (+260%(***))
// Denver 2.01 10.5 (+26%) 6.70 (+8%)
// X-Gene 20.0 (+100%) 12.8 (+300%(***))
// Mongoose 2.36 13.0 (+50%) 8.36 (+33%)
// Kryo 1.92 17.4 (+30%) 11.2 (+8%)
// ThunderX2 2.54 13.2 (+40%) 8.40 (+18%)
//
// (*) Software SHA256 results are of lesser relevance, presented
// mostly for informational purposes.
// (**) The result is a trade-off: it's possible to improve it by
// 10% (or by 1 cycle per round), but at the cost of 20% loss
// on Cortex-A53 (or by 4 cycles per round).
// (***) Super-impressive coefficients over gcc-generated code are
// indication of some compiler "pathology", most notably code
// generated with -mgeneral-regs-only is significantly faster
// and the gap is only 40-90%.
//
// October 2016.
//
// Originally it was reckoned that it makes no sense to implement NEON
// version of SHA256 for 64-bit processors. This is because performance
// improvement on most wide-spread Cortex-A5x processors was observed
// to be marginal, same on Cortex-A53 and ~10% on A57. But then it was
// observed that 32-bit NEON SHA256 performs significantly better than
// 64-bit scalar version on *some* of the more recent processors. As
// result 64-bit NEON version of SHA256 was added to provide best
// all-round performance. For example it executes ~30% faster on X-Gene
// and Mongoose. [For reference, NEON version of SHA512 is bound to
// deliver much less improvement, likely *negative* on Cortex-A5x.
// Which is why NEON support is limited to SHA256.]
// $output is the last argument if it looks like a file (it has an extension)
// $flavour is the first argument if it doesn't look like a file
#include "arm_arch.h"
#ifndef __KERNEL__
# include "arm_arch.h"
.hidden OPENSSL_armcap_P
#endif
@ -16,13 +67,14 @@
.type sha512_block_data_order,%function
.align 6
sha512_block_data_order:
AARCH64_VALID_CALL_TARGET
#ifndef __KERNEL__
adrp x16,OPENSSL_armcap_P
ldr w16,[x16,#:lo12:OPENSSL_armcap_P]
tst w16,#ARMV8_SHA512
b.ne .Lv8_entry
#endif
.inst 0xd503233f // paciasp
AARCH64_SIGN_LINK_REGISTER
stp x29,x30,[sp,#-128]!
add x29,sp,#0
@ -982,7 +1034,7 @@ sha512_block_data_order:
ldp x25,x26,[x29,#64]
ldp x27,x28,[x29,#80]
ldp x29,x30,[sp],#128
.inst 0xd50323bf // autiasp
AARCH64_VALIDATE_LINK_REGISTER
ret
.size sha512_block_data_order,.-sha512_block_data_order
@ -1039,6 +1091,7 @@ sha512_block_data_order:
.align 6
sha512_block_armv8:
.Lv8_entry:
// Armv8.3-A PAuth: even though x30 is pushed to stack it is not popped later
stp x29,x30,[sp,#-16]!
add x29,sp,#0

View File

@ -0,0 +1,503 @@
// Copyright 2021-2023 The OpenSSL Project Authors. All Rights Reserved.
//
// Licensed under the Apache License 2.0 (the "License"). You may not use
// this file except in compliance with the License. You can obtain a copy
// in the file LICENSE in the source distribution or at
// https://www.openssl.org/source/license.html
//
// This module implements support for Armv8 SM3 instructions
// $output is the last argument if it looks like a file (it has an extension)
// $flavour is the first argument if it doesn't look like a file
#include "arm_arch.h"
.text
.globl ossl_hwsm3_block_data_order
.type ossl_hwsm3_block_data_order,%function
.align 5
ossl_hwsm3_block_data_order:
AARCH64_VALID_CALL_TARGET
// load state
ld1 {v5.4s,v6.4s}, [x0]
rev64 v5.4s, v5.4s
rev64 v6.4s, v6.4s
ext v5.16b, v5.16b, v5.16b, #8
ext v6.16b, v6.16b, v6.16b, #8
adr x8, .Tj
ldp s16, s17, [x8]
.Loop:
// load input
ld1 {v0.16b,v1.16b,v2.16b,v3.16b}, [x1], #64
sub w2, w2, #1
mov v18.16b, v5.16b
mov v19.16b, v6.16b
#ifndef __ARMEB__
rev32 v0.16b, v0.16b
rev32 v1.16b, v1.16b
rev32 v2.16b, v2.16b
rev32 v3.16b, v3.16b
#endif
ext v20.16b, v16.16b, v16.16b, #4
// s4 = w7 | w8 | w9 | w10
ext v4.16b, v1.16b, v2.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v0.16b, v1.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v2.16b, v3.16b, #8
.inst 0xce63c004 //sm3partw1 v4.4s, v0.4s, v3.4s
.inst 0xce76c6e4 //sm3partw2 v4.4s, v23.4s, v22.4s
eor v22.16b, v0.16b, v1.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5682e5 //sm3tt1a v5.4s, v23.4s, v22.4s[0]
.inst 0xce408ae6 //sm3tt2a v6.4s, v23.4s, v0.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5692e5 //sm3tt1a v5.4s, v23.4s, v22.4s[1]
.inst 0xce409ae6 //sm3tt2a v6.4s, v23.4s, v0.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[2]
.inst 0xce40aae6 //sm3tt2a v6.4s, v23.4s, v0.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[3]
.inst 0xce40bae6 //sm3tt2a v6.4s, v23.4s, v0.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v0.16b, v2.16b, v3.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v1.16b, v2.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v3.16b, v4.16b, #8
.inst 0xce64c020 //sm3partw1 v0.4s, v1.4s, v4.4s
.inst 0xce76c6e0 //sm3partw2 v0.4s, v23.4s, v22.4s
eor v22.16b, v1.16b, v2.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5682e5 //sm3tt1a v5.4s, v23.4s, v22.4s[0]
.inst 0xce418ae6 //sm3tt2a v6.4s, v23.4s, v1.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5692e5 //sm3tt1a v5.4s, v23.4s, v22.4s[1]
.inst 0xce419ae6 //sm3tt2a v6.4s, v23.4s, v1.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[2]
.inst 0xce41aae6 //sm3tt2a v6.4s, v23.4s, v1.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[3]
.inst 0xce41bae6 //sm3tt2a v6.4s, v23.4s, v1.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v1.16b, v3.16b, v4.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v2.16b, v3.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v4.16b, v0.16b, #8
.inst 0xce60c041 //sm3partw1 v1.4s, v2.4s, v0.4s
.inst 0xce76c6e1 //sm3partw2 v1.4s, v23.4s, v22.4s
eor v22.16b, v2.16b, v3.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5682e5 //sm3tt1a v5.4s, v23.4s, v22.4s[0]
.inst 0xce428ae6 //sm3tt2a v6.4s, v23.4s, v2.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5692e5 //sm3tt1a v5.4s, v23.4s, v22.4s[1]
.inst 0xce429ae6 //sm3tt2a v6.4s, v23.4s, v2.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[2]
.inst 0xce42aae6 //sm3tt2a v6.4s, v23.4s, v2.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[3]
.inst 0xce42bae6 //sm3tt2a v6.4s, v23.4s, v2.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v2.16b, v4.16b, v0.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v3.16b, v4.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v0.16b, v1.16b, #8
.inst 0xce61c062 //sm3partw1 v2.4s, v3.4s, v1.4s
.inst 0xce76c6e2 //sm3partw2 v2.4s, v23.4s, v22.4s
eor v22.16b, v3.16b, v4.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5682e5 //sm3tt1a v5.4s, v23.4s, v22.4s[0]
.inst 0xce438ae6 //sm3tt2a v6.4s, v23.4s, v3.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5692e5 //sm3tt1a v5.4s, v23.4s, v22.4s[1]
.inst 0xce439ae6 //sm3tt2a v6.4s, v23.4s, v3.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[2]
.inst 0xce43aae6 //sm3tt2a v6.4s, v23.4s, v3.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b2e5 //sm3tt1a v5.4s, v23.4s, v22.4s[3]
.inst 0xce43bae6 //sm3tt2a v6.4s, v23.4s, v3.4s[3]
ext v20.16b, v17.16b, v17.16b, #4
// s4 = w7 | w8 | w9 | w10
ext v3.16b, v0.16b, v1.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v4.16b, v0.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v1.16b, v2.16b, #8
.inst 0xce62c083 //sm3partw1 v3.4s, v4.4s, v2.4s
.inst 0xce76c6e3 //sm3partw2 v3.4s, v23.4s, v22.4s
eor v22.16b, v4.16b, v0.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce448ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce449ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce44aee6 //sm3tt2b v6.4s, v23.4s, v4.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce44bee6 //sm3tt2b v6.4s, v23.4s, v4.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v4.16b, v1.16b, v2.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v0.16b, v1.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v2.16b, v3.16b, #8
.inst 0xce63c004 //sm3partw1 v4.4s, v0.4s, v3.4s
.inst 0xce76c6e4 //sm3partw2 v4.4s, v23.4s, v22.4s
eor v22.16b, v0.16b, v1.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce408ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce409ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce40aee6 //sm3tt2b v6.4s, v23.4s, v0.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce40bee6 //sm3tt2b v6.4s, v23.4s, v0.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v0.16b, v2.16b, v3.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v1.16b, v2.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v3.16b, v4.16b, #8
.inst 0xce64c020 //sm3partw1 v0.4s, v1.4s, v4.4s
.inst 0xce76c6e0 //sm3partw2 v0.4s, v23.4s, v22.4s
eor v22.16b, v1.16b, v2.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce418ee6 //sm3tt2b v6.4s, v23.4s, v1.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce419ee6 //sm3tt2b v6.4s, v23.4s, v1.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce41aee6 //sm3tt2b v6.4s, v23.4s, v1.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce41bee6 //sm3tt2b v6.4s, v23.4s, v1.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v1.16b, v3.16b, v4.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v2.16b, v3.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v4.16b, v0.16b, #8
.inst 0xce60c041 //sm3partw1 v1.4s, v2.4s, v0.4s
.inst 0xce76c6e1 //sm3partw2 v1.4s, v23.4s, v22.4s
eor v22.16b, v2.16b, v3.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce428ee6 //sm3tt2b v6.4s, v23.4s, v2.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce429ee6 //sm3tt2b v6.4s, v23.4s, v2.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce42aee6 //sm3tt2b v6.4s, v23.4s, v2.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce42bee6 //sm3tt2b v6.4s, v23.4s, v2.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v2.16b, v4.16b, v0.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v3.16b, v4.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v0.16b, v1.16b, #8
.inst 0xce61c062 //sm3partw1 v2.4s, v3.4s, v1.4s
.inst 0xce76c6e2 //sm3partw2 v2.4s, v23.4s, v22.4s
eor v22.16b, v3.16b, v4.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce438ee6 //sm3tt2b v6.4s, v23.4s, v3.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce439ee6 //sm3tt2b v6.4s, v23.4s, v3.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce43aee6 //sm3tt2b v6.4s, v23.4s, v3.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce43bee6 //sm3tt2b v6.4s, v23.4s, v3.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v3.16b, v0.16b, v1.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v4.16b, v0.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v1.16b, v2.16b, #8
.inst 0xce62c083 //sm3partw1 v3.4s, v4.4s, v2.4s
.inst 0xce76c6e3 //sm3partw2 v3.4s, v23.4s, v22.4s
eor v22.16b, v4.16b, v0.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce448ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce449ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce44aee6 //sm3tt2b v6.4s, v23.4s, v4.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce44bee6 //sm3tt2b v6.4s, v23.4s, v4.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v4.16b, v1.16b, v2.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v0.16b, v1.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v2.16b, v3.16b, #8
.inst 0xce63c004 //sm3partw1 v4.4s, v0.4s, v3.4s
.inst 0xce76c6e4 //sm3partw2 v4.4s, v23.4s, v22.4s
eor v22.16b, v0.16b, v1.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce408ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce409ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce40aee6 //sm3tt2b v6.4s, v23.4s, v0.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce40bee6 //sm3tt2b v6.4s, v23.4s, v0.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v0.16b, v2.16b, v3.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v1.16b, v2.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v3.16b, v4.16b, #8
.inst 0xce64c020 //sm3partw1 v0.4s, v1.4s, v4.4s
.inst 0xce76c6e0 //sm3partw2 v0.4s, v23.4s, v22.4s
eor v22.16b, v1.16b, v2.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce418ee6 //sm3tt2b v6.4s, v23.4s, v1.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce419ee6 //sm3tt2b v6.4s, v23.4s, v1.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce41aee6 //sm3tt2b v6.4s, v23.4s, v1.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce41bee6 //sm3tt2b v6.4s, v23.4s, v1.4s[3]
// s4 = w7 | w8 | w9 | w10
ext v1.16b, v3.16b, v4.16b, #12
// vtmp1 = w3 | w4 | w5 | w6
ext v22.16b, v2.16b, v3.16b, #12
// vtmp2 = w10 | w11 | w12 | w13
ext v23.16b, v4.16b, v0.16b, #8
.inst 0xce60c041 //sm3partw1 v1.4s, v2.4s, v0.4s
.inst 0xce76c6e1 //sm3partw2 v1.4s, v23.4s, v22.4s
eor v22.16b, v2.16b, v3.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce428ee6 //sm3tt2b v6.4s, v23.4s, v2.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce429ee6 //sm3tt2b v6.4s, v23.4s, v2.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce42aee6 //sm3tt2b v6.4s, v23.4s, v2.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce42bee6 //sm3tt2b v6.4s, v23.4s, v2.4s[3]
eor v22.16b, v3.16b, v4.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce438ee6 //sm3tt2b v6.4s, v23.4s, v3.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce439ee6 //sm3tt2b v6.4s, v23.4s, v3.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce43aee6 //sm3tt2b v6.4s, v23.4s, v3.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce43bee6 //sm3tt2b v6.4s, v23.4s, v3.4s[3]
eor v22.16b, v4.16b, v0.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce448ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce449ee6 //sm3tt2b v6.4s, v23.4s, v4.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce44aee6 //sm3tt2b v6.4s, v23.4s, v4.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce44bee6 //sm3tt2b v6.4s, v23.4s, v4.4s[3]
eor v22.16b, v0.16b, v1.16b
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce5686e5 //sm3tt1b v5.4s, v23.4s, v22.4s[0]
.inst 0xce408ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[0]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce5696e5 //sm3tt1b v5.4s, v23.4s, v22.4s[1]
.inst 0xce409ee6 //sm3tt2b v6.4s, v23.4s, v0.4s[1]
.inst 0xce5418b7 //sm3ss1 v23.4s, v5.4s, v20.4s, v6.4s
shl v21.4s, v20.4s, #1
sri v21.4s, v20.4s, #31
.inst 0xce56a6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[2]
.inst 0xce40aee6 //sm3tt2b v6.4s, v23.4s, v0.4s[2]
.inst 0xce5518b7 //sm3ss1 v23.4s, v5.4s, v21.4s, v6.4s
shl v20.4s, v21.4s, #1
sri v20.4s, v21.4s, #31
.inst 0xce56b6e5 //sm3tt1b v5.4s, v23.4s, v22.4s[3]
.inst 0xce40bee6 //sm3tt2b v6.4s, v23.4s, v0.4s[3]
eor v5.16b, v5.16b, v18.16b
eor v6.16b, v6.16b, v19.16b
// any remained blocks?
cbnz w2, .Loop
// save state
rev64 v5.4s, v5.4s
rev64 v6.4s, v6.4s
ext v5.16b, v5.16b, v5.16b, #8
ext v6.16b, v6.16b, v6.16b, #8
st1 {v5.4s,v6.4s}, [x0]
ret
.size ossl_hwsm3_block_data_order,.-ossl_hwsm3_block_data_order
.align 3
.Tj:
.word 0x79cc4519, 0x9d8a7a87

View File

@ -1870,6 +1870,7 @@ AES_cbc_encrypt:
.byte 0xf3,0xc3
.cfi_endproc
.size AES_cbc_encrypt,.-AES_cbc_encrypt
.section .rodata
.align 64
.LAES_Te:
.long 0xa56363c6,0xa56363c6
@ -2656,6 +2657,7 @@ AES_cbc_encrypt:
.long 0x1b1b1b1b, 0x1b1b1b1b, 0, 0
.byte 65,69,83,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -2718,6 +2718,7 @@ aesni_cbc_sha1_enc_avx:
.byte 0xf3,0xc3
.cfi_endproc
.size aesni_cbc_sha1_enc_avx,.-aesni_cbc_sha1_enc_avx
.section .rodata
.align 64
K_XX_XX:
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -2729,6 +2730,7 @@ K_XX_XX:
.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,49,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.previous
.type aesni_cbc_sha1_enc_shaext,@function
.align 32
aesni_cbc_sha1_enc_shaext:

View File

@ -34,6 +34,7 @@ aesni_cbc_sha256_enc:
.cfi_endproc
.size aesni_cbc_sha256_enc,.-aesni_cbc_sha256_enc
.section .rodata
.align 64
.type K256,@object
K256:
@ -76,6 +77,7 @@ K256:
.long 0,0,0,0, 0,0,0,0
.byte 65,69,83,78,73,45,67,66,67,43,83,72,65,50,53,54,32,115,116,105,116,99,104,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.previous
.type aesni_cbc_sha256_enc_xop,@function
.align 64
aesni_cbc_sha256_enc_xop:

View File

@ -4461,6 +4461,7 @@ __aesni_set_encrypt_key:
.cfi_endproc
.size aesni_set_encrypt_key,.-aesni_set_encrypt_key
.size __aesni_set_encrypt_key,.-__aesni_set_encrypt_key
.section .rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -4483,6 +4484,7 @@ __aesni_set_encrypt_key:
.byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69,83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -1571,6 +1571,7 @@ ossl_bsaes_ctr32_encrypt_blocks:
.align 16
ossl_bsaes_xts_encrypt:
.cfi_startproc
.byte 243,15,30,250
movq %rsp,%rax
.Lxts_enc_prologue:
pushq %rbp
@ -2046,6 +2047,7 @@ ossl_bsaes_xts_encrypt:
.align 16
ossl_bsaes_xts_decrypt:
.cfi_startproc
.byte 243,15,30,250
movq %rsp,%rax
.Lxts_dec_prologue:
pushq %rbp
@ -2541,6 +2543,7 @@ ossl_bsaes_xts_decrypt:
.cfi_endproc
.size ossl_bsaes_xts_decrypt,.-ossl_bsaes_xts_decrypt
.type _bsaes_const,@object
.section .rodata
.align 64
_bsaes_const:
.LM0ISR:
@ -2592,9 +2595,9 @@ _bsaes_const:
.quad 0x02060a0e03070b0f, 0x0004080c0105090d
.L63:
.quad 0x6363636363636363, 0x6363636363636363
.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0
.align 64
.size _bsaes_const,.-_bsaes_const
.byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -758,6 +758,7 @@ _vpaes_preheat:
.type _vpaes_consts,@object
.section .rodata
.align 64
_vpaes_consts:
.Lk_inv:
@ -853,9 +854,9 @@ _vpaes_consts:
.Lk_dsbo:
.quad 0x1387EA537EF94000, 0xC7AA6DB9D4943E2D
.quad 0x12D7560F93441D00, 0xCA4B8159D8C58E9C
.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0
.align 64
.size _vpaes_consts,.-_vpaes_consts
.byte 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105,111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105,118,101,114,115,105,116,121,41,0
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -0,0 +1,916 @@
.globl ossl_rsaz_avx512ifma_eligible
.type ossl_rsaz_avx512ifma_eligible,@function
.align 32
ossl_rsaz_avx512ifma_eligible:
movl OPENSSL_ia32cap_P+8(%rip),%ecx
xorl %eax,%eax
andl $2149777408,%ecx
cmpl $2149777408,%ecx
cmovel %ecx,%eax
.byte 0xf3,0xc3
.size ossl_rsaz_avx512ifma_eligible, .-ossl_rsaz_avx512ifma_eligible
.text
.globl ossl_rsaz_amm52x20_x1_ifma256
.type ossl_rsaz_amm52x20_x1_ifma256,@function
.align 32
ossl_rsaz_amm52x20_x1_ifma256:
.cfi_startproc
.byte 243,15,30,250
pushq %rbx
.cfi_adjust_cfa_offset 8
.cfi_offset %rbx,-16
pushq %rbp
.cfi_adjust_cfa_offset 8
.cfi_offset %rbp,-24
pushq %r12
.cfi_adjust_cfa_offset 8
.cfi_offset %r12,-32
pushq %r13
.cfi_adjust_cfa_offset 8
.cfi_offset %r13,-40
pushq %r14
.cfi_adjust_cfa_offset 8
.cfi_offset %r14,-48
pushq %r15
.cfi_adjust_cfa_offset 8
.cfi_offset %r15,-56
.Lossl_rsaz_amm52x20_x1_ifma256_body:
vpxord %ymm0,%ymm0,%ymm0
vmovdqa64 %ymm0,%ymm3
vmovdqa64 %ymm0,%ymm16
vmovdqa64 %ymm0,%ymm17
vmovdqa64 %ymm0,%ymm18
vmovdqa64 %ymm0,%ymm19
xorl %r9d,%r9d
movq %rdx,%r11
movq $0xfffffffffffff,%rax
movl $5,%ebx
.align 32
.Lloop5:
movq 0(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 0(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
movq %r12,%r10
adcq $0,%r10
movq %r8,%r13
imulq %r9,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 0(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
adcq %r12,%r10
shrq $52,%r9
salq $12,%r10
orq %r10,%r9
vpmadd52luq 0(%rsi),%ymm1,%ymm3
vpmadd52luq 32(%rsi),%ymm1,%ymm16
vpmadd52luq 64(%rsi),%ymm1,%ymm17
vpmadd52luq 96(%rsi),%ymm1,%ymm18
vpmadd52luq 128(%rsi),%ymm1,%ymm19
vpmadd52luq 0(%rcx),%ymm2,%ymm3
vpmadd52luq 32(%rcx),%ymm2,%ymm16
vpmadd52luq 64(%rcx),%ymm2,%ymm17
vpmadd52luq 96(%rcx),%ymm2,%ymm18
vpmadd52luq 128(%rcx),%ymm2,%ymm19
valignq $1,%ymm3,%ymm16,%ymm3
valignq $1,%ymm16,%ymm17,%ymm16
valignq $1,%ymm17,%ymm18,%ymm17
valignq $1,%ymm18,%ymm19,%ymm18
valignq $1,%ymm19,%ymm0,%ymm19
vmovq %xmm3,%r13
addq %r13,%r9
vpmadd52huq 0(%rsi),%ymm1,%ymm3
vpmadd52huq 32(%rsi),%ymm1,%ymm16
vpmadd52huq 64(%rsi),%ymm1,%ymm17
vpmadd52huq 96(%rsi),%ymm1,%ymm18
vpmadd52huq 128(%rsi),%ymm1,%ymm19
vpmadd52huq 0(%rcx),%ymm2,%ymm3
vpmadd52huq 32(%rcx),%ymm2,%ymm16
vpmadd52huq 64(%rcx),%ymm2,%ymm17
vpmadd52huq 96(%rcx),%ymm2,%ymm18
vpmadd52huq 128(%rcx),%ymm2,%ymm19
movq 8(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 0(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
movq %r12,%r10
adcq $0,%r10
movq %r8,%r13
imulq %r9,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 0(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
adcq %r12,%r10
shrq $52,%r9
salq $12,%r10
orq %r10,%r9
vpmadd52luq 0(%rsi),%ymm1,%ymm3
vpmadd52luq 32(%rsi),%ymm1,%ymm16
vpmadd52luq 64(%rsi),%ymm1,%ymm17
vpmadd52luq 96(%rsi),%ymm1,%ymm18
vpmadd52luq 128(%rsi),%ymm1,%ymm19
vpmadd52luq 0(%rcx),%ymm2,%ymm3
vpmadd52luq 32(%rcx),%ymm2,%ymm16
vpmadd52luq 64(%rcx),%ymm2,%ymm17
vpmadd52luq 96(%rcx),%ymm2,%ymm18
vpmadd52luq 128(%rcx),%ymm2,%ymm19
valignq $1,%ymm3,%ymm16,%ymm3
valignq $1,%ymm16,%ymm17,%ymm16
valignq $1,%ymm17,%ymm18,%ymm17
valignq $1,%ymm18,%ymm19,%ymm18
valignq $1,%ymm19,%ymm0,%ymm19
vmovq %xmm3,%r13
addq %r13,%r9
vpmadd52huq 0(%rsi),%ymm1,%ymm3
vpmadd52huq 32(%rsi),%ymm1,%ymm16
vpmadd52huq 64(%rsi),%ymm1,%ymm17
vpmadd52huq 96(%rsi),%ymm1,%ymm18
vpmadd52huq 128(%rsi),%ymm1,%ymm19
vpmadd52huq 0(%rcx),%ymm2,%ymm3
vpmadd52huq 32(%rcx),%ymm2,%ymm16
vpmadd52huq 64(%rcx),%ymm2,%ymm17
vpmadd52huq 96(%rcx),%ymm2,%ymm18
vpmadd52huq 128(%rcx),%ymm2,%ymm19
movq 16(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 0(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
movq %r12,%r10
adcq $0,%r10
movq %r8,%r13
imulq %r9,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 0(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
adcq %r12,%r10
shrq $52,%r9
salq $12,%r10
orq %r10,%r9
vpmadd52luq 0(%rsi),%ymm1,%ymm3
vpmadd52luq 32(%rsi),%ymm1,%ymm16
vpmadd52luq 64(%rsi),%ymm1,%ymm17
vpmadd52luq 96(%rsi),%ymm1,%ymm18
vpmadd52luq 128(%rsi),%ymm1,%ymm19
vpmadd52luq 0(%rcx),%ymm2,%ymm3
vpmadd52luq 32(%rcx),%ymm2,%ymm16
vpmadd52luq 64(%rcx),%ymm2,%ymm17
vpmadd52luq 96(%rcx),%ymm2,%ymm18
vpmadd52luq 128(%rcx),%ymm2,%ymm19
valignq $1,%ymm3,%ymm16,%ymm3
valignq $1,%ymm16,%ymm17,%ymm16
valignq $1,%ymm17,%ymm18,%ymm17
valignq $1,%ymm18,%ymm19,%ymm18
valignq $1,%ymm19,%ymm0,%ymm19
vmovq %xmm3,%r13
addq %r13,%r9
vpmadd52huq 0(%rsi),%ymm1,%ymm3
vpmadd52huq 32(%rsi),%ymm1,%ymm16
vpmadd52huq 64(%rsi),%ymm1,%ymm17
vpmadd52huq 96(%rsi),%ymm1,%ymm18
vpmadd52huq 128(%rsi),%ymm1,%ymm19
vpmadd52huq 0(%rcx),%ymm2,%ymm3
vpmadd52huq 32(%rcx),%ymm2,%ymm16
vpmadd52huq 64(%rcx),%ymm2,%ymm17
vpmadd52huq 96(%rcx),%ymm2,%ymm18
vpmadd52huq 128(%rcx),%ymm2,%ymm19
movq 24(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 0(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
movq %r12,%r10
adcq $0,%r10
movq %r8,%r13
imulq %r9,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 0(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
adcq %r12,%r10
shrq $52,%r9
salq $12,%r10
orq %r10,%r9
vpmadd52luq 0(%rsi),%ymm1,%ymm3
vpmadd52luq 32(%rsi),%ymm1,%ymm16
vpmadd52luq 64(%rsi),%ymm1,%ymm17
vpmadd52luq 96(%rsi),%ymm1,%ymm18
vpmadd52luq 128(%rsi),%ymm1,%ymm19
vpmadd52luq 0(%rcx),%ymm2,%ymm3
vpmadd52luq 32(%rcx),%ymm2,%ymm16
vpmadd52luq 64(%rcx),%ymm2,%ymm17
vpmadd52luq 96(%rcx),%ymm2,%ymm18
vpmadd52luq 128(%rcx),%ymm2,%ymm19
valignq $1,%ymm3,%ymm16,%ymm3
valignq $1,%ymm16,%ymm17,%ymm16
valignq $1,%ymm17,%ymm18,%ymm17
valignq $1,%ymm18,%ymm19,%ymm18
valignq $1,%ymm19,%ymm0,%ymm19
vmovq %xmm3,%r13
addq %r13,%r9
vpmadd52huq 0(%rsi),%ymm1,%ymm3
vpmadd52huq 32(%rsi),%ymm1,%ymm16
vpmadd52huq 64(%rsi),%ymm1,%ymm17
vpmadd52huq 96(%rsi),%ymm1,%ymm18
vpmadd52huq 128(%rsi),%ymm1,%ymm19
vpmadd52huq 0(%rcx),%ymm2,%ymm3
vpmadd52huq 32(%rcx),%ymm2,%ymm16
vpmadd52huq 64(%rcx),%ymm2,%ymm17
vpmadd52huq 96(%rcx),%ymm2,%ymm18
vpmadd52huq 128(%rcx),%ymm2,%ymm19
leaq 32(%r11),%r11
decl %ebx
jne .Lloop5
vpbroadcastq %r9,%ymm0
vpblendd $3,%ymm0,%ymm3,%ymm3
vpsrlq $52,%ymm3,%ymm0
vpsrlq $52,%ymm16,%ymm1
vpsrlq $52,%ymm17,%ymm2
vpsrlq $52,%ymm18,%ymm25
vpsrlq $52,%ymm19,%ymm26
valignq $3,%ymm25,%ymm26,%ymm26
valignq $3,%ymm2,%ymm25,%ymm25
valignq $3,%ymm1,%ymm2,%ymm2
valignq $3,%ymm0,%ymm1,%ymm1
valignq $3,.Lzeros(%rip),%ymm0,%ymm0
vpandq .Lmask52x4(%rip),%ymm3,%ymm3
vpandq .Lmask52x4(%rip),%ymm16,%ymm16
vpandq .Lmask52x4(%rip),%ymm17,%ymm17
vpandq .Lmask52x4(%rip),%ymm18,%ymm18
vpandq .Lmask52x4(%rip),%ymm19,%ymm19
vpaddq %ymm0,%ymm3,%ymm3
vpaddq %ymm1,%ymm16,%ymm16
vpaddq %ymm2,%ymm17,%ymm17
vpaddq %ymm25,%ymm18,%ymm18
vpaddq %ymm26,%ymm19,%ymm19
vpcmpuq $6,.Lmask52x4(%rip),%ymm3,%k1
vpcmpuq $6,.Lmask52x4(%rip),%ymm16,%k2
vpcmpuq $6,.Lmask52x4(%rip),%ymm17,%k3
vpcmpuq $6,.Lmask52x4(%rip),%ymm18,%k4
vpcmpuq $6,.Lmask52x4(%rip),%ymm19,%k5
kmovb %k1,%r14d
kmovb %k2,%r13d
kmovb %k3,%r12d
kmovb %k4,%r11d
kmovb %k5,%r10d
vpcmpuq $0,.Lmask52x4(%rip),%ymm3,%k1
vpcmpuq $0,.Lmask52x4(%rip),%ymm16,%k2
vpcmpuq $0,.Lmask52x4(%rip),%ymm17,%k3
vpcmpuq $0,.Lmask52x4(%rip),%ymm18,%k4
vpcmpuq $0,.Lmask52x4(%rip),%ymm19,%k5
kmovb %k1,%r9d
kmovb %k2,%r8d
kmovb %k3,%ebx
kmovb %k4,%ecx
kmovb %k5,%edx
shlb $4,%r13b
orb %r13b,%r14b
shlb $4,%r11b
orb %r11b,%r12b
addb %r14b,%r14b
adcb %r12b,%r12b
adcb %r10b,%r10b
shlb $4,%r8b
orb %r8b,%r9b
shlb $4,%cl
orb %cl,%bl
addb %r9b,%r14b
adcb %bl,%r12b
adcb %dl,%r10b
xorb %r9b,%r14b
xorb %bl,%r12b
xorb %dl,%r10b
kmovb %r14d,%k1
shrb $4,%r14b
kmovb %r14d,%k2
kmovb %r12d,%k3
shrb $4,%r12b
kmovb %r12d,%k4
kmovb %r10d,%k5
vpsubq .Lmask52x4(%rip),%ymm3,%ymm3{%k1}
vpsubq .Lmask52x4(%rip),%ymm16,%ymm16{%k2}
vpsubq .Lmask52x4(%rip),%ymm17,%ymm17{%k3}
vpsubq .Lmask52x4(%rip),%ymm18,%ymm18{%k4}
vpsubq .Lmask52x4(%rip),%ymm19,%ymm19{%k5}
vpandq .Lmask52x4(%rip),%ymm3,%ymm3
vpandq .Lmask52x4(%rip),%ymm16,%ymm16
vpandq .Lmask52x4(%rip),%ymm17,%ymm17
vpandq .Lmask52x4(%rip),%ymm18,%ymm18
vpandq .Lmask52x4(%rip),%ymm19,%ymm19
vmovdqu64 %ymm3,0(%rdi)
vmovdqu64 %ymm16,32(%rdi)
vmovdqu64 %ymm17,64(%rdi)
vmovdqu64 %ymm18,96(%rdi)
vmovdqu64 %ymm19,128(%rdi)
vzeroupper
movq 0(%rsp),%r15
.cfi_restore %r15
movq 8(%rsp),%r14
.cfi_restore %r14
movq 16(%rsp),%r13
.cfi_restore %r13
movq 24(%rsp),%r12
.cfi_restore %r12
movq 32(%rsp),%rbp
.cfi_restore %rbp
movq 40(%rsp),%rbx
.cfi_restore %rbx
leaq 48(%rsp),%rsp
.cfi_adjust_cfa_offset -48
.Lossl_rsaz_amm52x20_x1_ifma256_epilogue:
.byte 0xf3,0xc3
.cfi_endproc
.size ossl_rsaz_amm52x20_x1_ifma256, .-ossl_rsaz_amm52x20_x1_ifma256
.section .rodata
.align 32
.Lmask52x4:
.quad 0xfffffffffffff
.quad 0xfffffffffffff
.quad 0xfffffffffffff
.quad 0xfffffffffffff
.text
.globl ossl_rsaz_amm52x20_x2_ifma256
.type ossl_rsaz_amm52x20_x2_ifma256,@function
.align 32
ossl_rsaz_amm52x20_x2_ifma256:
.cfi_startproc
.byte 243,15,30,250
pushq %rbx
.cfi_adjust_cfa_offset 8
.cfi_offset %rbx,-16
pushq %rbp
.cfi_adjust_cfa_offset 8
.cfi_offset %rbp,-24
pushq %r12
.cfi_adjust_cfa_offset 8
.cfi_offset %r12,-32
pushq %r13
.cfi_adjust_cfa_offset 8
.cfi_offset %r13,-40
pushq %r14
.cfi_adjust_cfa_offset 8
.cfi_offset %r14,-48
pushq %r15
.cfi_adjust_cfa_offset 8
.cfi_offset %r15,-56
.Lossl_rsaz_amm52x20_x2_ifma256_body:
vpxord %ymm0,%ymm0,%ymm0
vmovdqa64 %ymm0,%ymm3
vmovdqa64 %ymm0,%ymm16
vmovdqa64 %ymm0,%ymm17
vmovdqa64 %ymm0,%ymm18
vmovdqa64 %ymm0,%ymm19
vmovdqa64 %ymm0,%ymm4
vmovdqa64 %ymm0,%ymm20
vmovdqa64 %ymm0,%ymm21
vmovdqa64 %ymm0,%ymm22
vmovdqa64 %ymm0,%ymm23
xorl %r9d,%r9d
xorl %r15d,%r15d
movq %rdx,%r11
movq $0xfffffffffffff,%rax
movl $20,%ebx
.align 32
.Lloop20:
movq 0(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 0(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
movq %r12,%r10
adcq $0,%r10
movq (%r8),%r13
imulq %r9,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 0(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r9
adcq %r12,%r10
shrq $52,%r9
salq $12,%r10
orq %r10,%r9
vpmadd52luq 0(%rsi),%ymm1,%ymm3
vpmadd52luq 32(%rsi),%ymm1,%ymm16
vpmadd52luq 64(%rsi),%ymm1,%ymm17
vpmadd52luq 96(%rsi),%ymm1,%ymm18
vpmadd52luq 128(%rsi),%ymm1,%ymm19
vpmadd52luq 0(%rcx),%ymm2,%ymm3
vpmadd52luq 32(%rcx),%ymm2,%ymm16
vpmadd52luq 64(%rcx),%ymm2,%ymm17
vpmadd52luq 96(%rcx),%ymm2,%ymm18
vpmadd52luq 128(%rcx),%ymm2,%ymm19
valignq $1,%ymm3,%ymm16,%ymm3
valignq $1,%ymm16,%ymm17,%ymm16
valignq $1,%ymm17,%ymm18,%ymm17
valignq $1,%ymm18,%ymm19,%ymm18
valignq $1,%ymm19,%ymm0,%ymm19
vmovq %xmm3,%r13
addq %r13,%r9
vpmadd52huq 0(%rsi),%ymm1,%ymm3
vpmadd52huq 32(%rsi),%ymm1,%ymm16
vpmadd52huq 64(%rsi),%ymm1,%ymm17
vpmadd52huq 96(%rsi),%ymm1,%ymm18
vpmadd52huq 128(%rsi),%ymm1,%ymm19
vpmadd52huq 0(%rcx),%ymm2,%ymm3
vpmadd52huq 32(%rcx),%ymm2,%ymm16
vpmadd52huq 64(%rcx),%ymm2,%ymm17
vpmadd52huq 96(%rcx),%ymm2,%ymm18
vpmadd52huq 128(%rcx),%ymm2,%ymm19
movq 160(%r11),%r13
vpbroadcastq %r13,%ymm1
movq 160(%rsi),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r15
movq %r12,%r10
adcq $0,%r10
movq 8(%r8),%r13
imulq %r15,%r13
andq %rax,%r13
vpbroadcastq %r13,%ymm2
movq 160(%rcx),%rdx
mulxq %r13,%r13,%r12
addq %r13,%r15
adcq %r12,%r10
shrq $52,%r15
salq $12,%r10
orq %r10,%r15
vpmadd52luq 160(%rsi),%ymm1,%ymm4
vpmadd52luq 192(%rsi),%ymm1,%ymm20
vpmadd52luq 224(%rsi),%ymm1,%ymm21
vpmadd52luq 256(%rsi),%ymm1,%ymm22
vpmadd52luq 288(%rsi),%ymm1,%ymm23
vpmadd52luq 160(%rcx),%ymm2,%ymm4
vpmadd52luq 192(%rcx),%ymm2,%ymm20
vpmadd52luq 224(%rcx),%ymm2,%ymm21
vpmadd52luq 256(%rcx),%ymm2,%ymm22
vpmadd52luq 288(%rcx),%ymm2,%ymm23
valignq $1,%ymm4,%ymm20,%ymm4
valignq $1,%ymm20,%ymm21,%ymm20
valignq $1,%ymm21,%ymm22,%ymm21
valignq $1,%ymm22,%ymm23,%ymm22
valignq $1,%ymm23,%ymm0,%ymm23
vmovq %xmm4,%r13
addq %r13,%r15
vpmadd52huq 160(%rsi),%ymm1,%ymm4
vpmadd52huq 192(%rsi),%ymm1,%ymm20
vpmadd52huq 224(%rsi),%ymm1,%ymm21
vpmadd52huq 256(%rsi),%ymm1,%ymm22
vpmadd52huq 288(%rsi),%ymm1,%ymm23
vpmadd52huq 160(%rcx),%ymm2,%ymm4
vpmadd52huq 192(%rcx),%ymm2,%ymm20
vpmadd52huq 224(%rcx),%ymm2,%ymm21
vpmadd52huq 256(%rcx),%ymm2,%ymm22
vpmadd52huq 288(%rcx),%ymm2,%ymm23
leaq 8(%r11),%r11
decl %ebx
jne .Lloop20
vpbroadcastq %r9,%ymm0
vpblendd $3,%ymm0,%ymm3,%ymm3
vpsrlq $52,%ymm3,%ymm0
vpsrlq $52,%ymm16,%ymm1
vpsrlq $52,%ymm17,%ymm2
vpsrlq $52,%ymm18,%ymm25
vpsrlq $52,%ymm19,%ymm26
valignq $3,%ymm25,%ymm26,%ymm26
valignq $3,%ymm2,%ymm25,%ymm25
valignq $3,%ymm1,%ymm2,%ymm2
valignq $3,%ymm0,%ymm1,%ymm1
valignq $3,.Lzeros(%rip),%ymm0,%ymm0
vpandq .Lmask52x4(%rip),%ymm3,%ymm3
vpandq .Lmask52x4(%rip),%ymm16,%ymm16
vpandq .Lmask52x4(%rip),%ymm17,%ymm17
vpandq .Lmask52x4(%rip),%ymm18,%ymm18
vpandq .Lmask52x4(%rip),%ymm19,%ymm19
vpaddq %ymm0,%ymm3,%ymm3
vpaddq %ymm1,%ymm16,%ymm16
vpaddq %ymm2,%ymm17,%ymm17
vpaddq %ymm25,%ymm18,%ymm18
vpaddq %ymm26,%ymm19,%ymm19
vpcmpuq $6,.Lmask52x4(%rip),%ymm3,%k1
vpcmpuq $6,.Lmask52x4(%rip),%ymm16,%k2
vpcmpuq $6,.Lmask52x4(%rip),%ymm17,%k3
vpcmpuq $6,.Lmask52x4(%rip),%ymm18,%k4
vpcmpuq $6,.Lmask52x4(%rip),%ymm19,%k5
kmovb %k1,%r14d
kmovb %k2,%r13d
kmovb %k3,%r12d
kmovb %k4,%r11d
kmovb %k5,%r10d
vpcmpuq $0,.Lmask52x4(%rip),%ymm3,%k1
vpcmpuq $0,.Lmask52x4(%rip),%ymm16,%k2
vpcmpuq $0,.Lmask52x4(%rip),%ymm17,%k3
vpcmpuq $0,.Lmask52x4(%rip),%ymm18,%k4
vpcmpuq $0,.Lmask52x4(%rip),%ymm19,%k5
kmovb %k1,%r9d
kmovb %k2,%r8d
kmovb %k3,%ebx
kmovb %k4,%ecx
kmovb %k5,%edx
shlb $4,%r13b
orb %r13b,%r14b
shlb $4,%r11b
orb %r11b,%r12b
addb %r14b,%r14b
adcb %r12b,%r12b
adcb %r10b,%r10b
shlb $4,%r8b
orb %r8b,%r9b
shlb $4,%cl
orb %cl,%bl
addb %r9b,%r14b
adcb %bl,%r12b
adcb %dl,%r10b
xorb %r9b,%r14b
xorb %bl,%r12b
xorb %dl,%r10b
kmovb %r14d,%k1
shrb $4,%r14b
kmovb %r14d,%k2
kmovb %r12d,%k3
shrb $4,%r12b
kmovb %r12d,%k4
kmovb %r10d,%k5
vpsubq .Lmask52x4(%rip),%ymm3,%ymm3{%k1}
vpsubq .Lmask52x4(%rip),%ymm16,%ymm16{%k2}
vpsubq .Lmask52x4(%rip),%ymm17,%ymm17{%k3}
vpsubq .Lmask52x4(%rip),%ymm18,%ymm18{%k4}
vpsubq .Lmask52x4(%rip),%ymm19,%ymm19{%k5}
vpandq .Lmask52x4(%rip),%ymm3,%ymm3
vpandq .Lmask52x4(%rip),%ymm16,%ymm16
vpandq .Lmask52x4(%rip),%ymm17,%ymm17
vpandq .Lmask52x4(%rip),%ymm18,%ymm18
vpandq .Lmask52x4(%rip),%ymm19,%ymm19
vpbroadcastq %r15,%ymm0
vpblendd $3,%ymm0,%ymm4,%ymm4
vpsrlq $52,%ymm4,%ymm0
vpsrlq $52,%ymm20,%ymm1
vpsrlq $52,%ymm21,%ymm2
vpsrlq $52,%ymm22,%ymm25
vpsrlq $52,%ymm23,%ymm26
valignq $3,%ymm25,%ymm26,%ymm26
valignq $3,%ymm2,%ymm25,%ymm25
valignq $3,%ymm1,%ymm2,%ymm2
valignq $3,%ymm0,%ymm1,%ymm1
valignq $3,.Lzeros(%rip),%ymm0,%ymm0
vpandq .Lmask52x4(%rip),%ymm4,%ymm4
vpandq .Lmask52x4(%rip),%ymm20,%ymm20
vpandq .Lmask52x4(%rip),%ymm21,%ymm21
vpandq .Lmask52x4(%rip),%ymm22,%ymm22
vpandq .Lmask52x4(%rip),%ymm23,%ymm23
vpaddq %ymm0,%ymm4,%ymm4
vpaddq %ymm1,%ymm20,%ymm20
vpaddq %ymm2,%ymm21,%ymm21
vpaddq %ymm25,%ymm22,%ymm22
vpaddq %ymm26,%ymm23,%ymm23
vpcmpuq $6,.Lmask52x4(%rip),%ymm4,%k1
vpcmpuq $6,.Lmask52x4(%rip),%ymm20,%k2
vpcmpuq $6,.Lmask52x4(%rip),%ymm21,%k3
vpcmpuq $6,.Lmask52x4(%rip),%ymm22,%k4
vpcmpuq $6,.Lmask52x4(%rip),%ymm23,%k5
kmovb %k1,%r14d
kmovb %k2,%r13d
kmovb %k3,%r12d
kmovb %k4,%r11d
kmovb %k5,%r10d
vpcmpuq $0,.Lmask52x4(%rip),%ymm4,%k1
vpcmpuq $0,.Lmask52x4(%rip),%ymm20,%k2
vpcmpuq $0,.Lmask52x4(%rip),%ymm21,%k3
vpcmpuq $0,.Lmask52x4(%rip),%ymm22,%k4
vpcmpuq $0,.Lmask52x4(%rip),%ymm23,%k5
kmovb %k1,%r9d
kmovb %k2,%r8d
kmovb %k3,%ebx
kmovb %k4,%ecx
kmovb %k5,%edx
shlb $4,%r13b
orb %r13b,%r14b
shlb $4,%r11b
orb %r11b,%r12b
addb %r14b,%r14b
adcb %r12b,%r12b
adcb %r10b,%r10b
shlb $4,%r8b
orb %r8b,%r9b
shlb $4,%cl
orb %cl,%bl
addb %r9b,%r14b
adcb %bl,%r12b
adcb %dl,%r10b
xorb %r9b,%r14b
xorb %bl,%r12b
xorb %dl,%r10b
kmovb %r14d,%k1
shrb $4,%r14b
kmovb %r14d,%k2
kmovb %r12d,%k3
shrb $4,%r12b
kmovb %r12d,%k4
kmovb %r10d,%k5
vpsubq .Lmask52x4(%rip),%ymm4,%ymm4{%k1}
vpsubq .Lmask52x4(%rip),%ymm20,%ymm20{%k2}
vpsubq .Lmask52x4(%rip),%ymm21,%ymm21{%k3}
vpsubq .Lmask52x4(%rip),%ymm22,%ymm22{%k4}
vpsubq .Lmask52x4(%rip),%ymm23,%ymm23{%k5}
vpandq .Lmask52x4(%rip),%ymm4,%ymm4
vpandq .Lmask52x4(%rip),%ymm20,%ymm20
vpandq .Lmask52x4(%rip),%ymm21,%ymm21
vpandq .Lmask52x4(%rip),%ymm22,%ymm22
vpandq .Lmask52x4(%rip),%ymm23,%ymm23
vmovdqu64 %ymm3,0(%rdi)
vmovdqu64 %ymm16,32(%rdi)
vmovdqu64 %ymm17,64(%rdi)
vmovdqu64 %ymm18,96(%rdi)
vmovdqu64 %ymm19,128(%rdi)
vmovdqu64 %ymm4,160(%rdi)
vmovdqu64 %ymm20,192(%rdi)
vmovdqu64 %ymm21,224(%rdi)
vmovdqu64 %ymm22,256(%rdi)
vmovdqu64 %ymm23,288(%rdi)
vzeroupper
movq 0(%rsp),%r15
.cfi_restore %r15
movq 8(%rsp),%r14
.cfi_restore %r14
movq 16(%rsp),%r13
.cfi_restore %r13
movq 24(%rsp),%r12
.cfi_restore %r12
movq 32(%rsp),%rbp
.cfi_restore %rbp
movq 40(%rsp),%rbx
.cfi_restore %rbx
leaq 48(%rsp),%rsp
.cfi_adjust_cfa_offset -48
.Lossl_rsaz_amm52x20_x2_ifma256_epilogue:
.byte 0xf3,0xc3
.cfi_endproc
.size ossl_rsaz_amm52x20_x2_ifma256, .-ossl_rsaz_amm52x20_x2_ifma256
.text
.align 32
.globl ossl_extract_multiplier_2x20_win5
.type ossl_extract_multiplier_2x20_win5,@function
ossl_extract_multiplier_2x20_win5:
.cfi_startproc
.byte 243,15,30,250
vmovdqa64 .Lones(%rip),%ymm24
vpbroadcastq %rdx,%ymm22
vpbroadcastq %rcx,%ymm23
leaq 10240(%rsi),%rax
vpxor %xmm0,%xmm0,%xmm0
vmovdqa64 %ymm0,%ymm21
vmovdqa64 %ymm0,%ymm1
vmovdqa64 %ymm0,%ymm2
vmovdqa64 %ymm0,%ymm3
vmovdqa64 %ymm0,%ymm4
vmovdqa64 %ymm0,%ymm5
vmovdqa64 %ymm0,%ymm16
vmovdqa64 %ymm0,%ymm17
vmovdqa64 %ymm0,%ymm18
vmovdqa64 %ymm0,%ymm19
.align 32
.Lloop:
vpcmpq $0,%ymm21,%ymm22,%k1
vpcmpq $0,%ymm21,%ymm23,%k2
vmovdqu64 0(%rsi),%ymm20
vpblendmq %ymm20,%ymm0,%ymm0{%k1}
vmovdqu64 32(%rsi),%ymm20
vpblendmq %ymm20,%ymm1,%ymm1{%k1}
vmovdqu64 64(%rsi),%ymm20
vpblendmq %ymm20,%ymm2,%ymm2{%k1}
vmovdqu64 96(%rsi),%ymm20
vpblendmq %ymm20,%ymm3,%ymm3{%k1}
vmovdqu64 128(%rsi),%ymm20
vpblendmq %ymm20,%ymm4,%ymm4{%k1}
vmovdqu64 160(%rsi),%ymm20
vpblendmq %ymm20,%ymm5,%ymm5{%k2}
vmovdqu64 192(%rsi),%ymm20
vpblendmq %ymm20,%ymm16,%ymm16{%k2}
vmovdqu64 224(%rsi),%ymm20
vpblendmq %ymm20,%ymm17,%ymm17{%k2}
vmovdqu64 256(%rsi),%ymm20
vpblendmq %ymm20,%ymm18,%ymm18{%k2}
vmovdqu64 288(%rsi),%ymm20
vpblendmq %ymm20,%ymm19,%ymm19{%k2}
vpaddq %ymm24,%ymm21,%ymm21
addq $320,%rsi
cmpq %rsi,%rax
jne .Lloop
vmovdqu64 %ymm0,0(%rdi)
vmovdqu64 %ymm1,32(%rdi)
vmovdqu64 %ymm2,64(%rdi)
vmovdqu64 %ymm3,96(%rdi)
vmovdqu64 %ymm4,128(%rdi)
vmovdqu64 %ymm5,160(%rdi)
vmovdqu64 %ymm16,192(%rdi)
vmovdqu64 %ymm17,224(%rdi)
vmovdqu64 %ymm18,256(%rdi)
vmovdqu64 %ymm19,288(%rdi)
.byte 0xf3,0xc3
.cfi_endproc
.size ossl_extract_multiplier_2x20_win5, .-ossl_extract_multiplier_2x20_win5
.section .rodata
.align 32
.Lones:
.quad 1,1,1,1
.Lzeros:
.quad 0,0,0,0
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f
.long 4f - 1f
.long 5
0:
# "GNU" encoded with .byte, since .asciz isn't supported
# on Solaris.
.byte 0x47
.byte 0x4e
.byte 0x55
.byte 0
1:
.p2align 3
.long 0xc0000002
.long 3f - 2f
2:
.long 3
3:
.p2align 3
4:

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1730,6 +1730,7 @@ rsaz_avx2_eligible:
.byte 0xf3,0xc3
.size rsaz_avx2_eligible,.-rsaz_avx2_eligible
.section .rodata
.align 64
.Land_mask:
.quad 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff
@ -1741,6 +1742,7 @@ rsaz_avx2_eligible:
.long 0,0,0,0, 1,1,1,1
.long 2,2,2,2, 3,3,3,3
.long 4,4,4,4, 4,4,4,4
.previous
.align 64
.section ".note.gnu.property", "a"
.p2align 3

View File

@ -2009,10 +2009,12 @@ rsaz_512_gather4:
.cfi_endproc
.size rsaz_512_gather4,.-rsaz_512_gather4
.section .rodata
.align 64
.Linc:
.long 0,0, 1,1
.long 2,2, 2,2
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -3596,11 +3596,13 @@ bn_gather5:
.LSEH_end_bn_gather5:
.cfi_endproc
.size bn_gather5,.-bn_gather5
.section .rodata
.align 64
.Linc:
.long 0,0, 1,1
.long 2,2, 2,2
.byte 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,32,119,105,116,104,32,115,99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -1,4 +1,4 @@
.text
.section .rodata
.globl ecp_nistz256_precomputed
.type ecp_nistz256_precomputed,@object
.align 4096
@ -2376,6 +2376,7 @@ ecp_nistz256_precomputed:
.section .rodata
.align 64
.Lpoly:
.quad 0xffffffffffffffff, 0x00000000ffffffff, 0x0000000000000000, 0xffffffff00000001
@ -2398,6 +2399,7 @@ ecp_nistz256_precomputed:
.quad 0xf3b9cac2fc632551, 0xbce6faada7179e84, 0xffffffffffffffff, 0xffffffff00000000
.LordK:
.quad 0xccd1c8aaee00bc4f
.previous
.globl ecp_nistz256_mul_by_2
.type ecp_nistz256_mul_by_2,@function

File diff suppressed because it is too large Load Diff

View File

@ -774,6 +774,7 @@ aesni_gcm_encrypt:
.byte 0xf3,0xc3
.cfi_endproc
.size aesni_gcm_encrypt,.-aesni_gcm_encrypt
.section .rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -786,6 +787,7 @@ aesni_gcm_encrypt:
.Lone_lsb:
.byte 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
.byte 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108,101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.align 64
.section ".note.gnu.property", "a"
.p2align 3

View File

@ -708,6 +708,7 @@ gcm_ghash_4bit:
.align 16
gcm_init_clmul:
.cfi_startproc
.byte 243,15,30,250
.L_init_clmul:
movdqu (%rsi),%xmm2
pshufd $78,%xmm2,%xmm2
@ -1306,6 +1307,7 @@ gcm_ghash_clmul:
.align 32
gcm_init_avx:
.cfi_startproc
.byte 243,15,30,250
vzeroupper
vmovdqu (%rsi),%xmm2
@ -1798,6 +1800,7 @@ gcm_ghash_avx:
.byte 0xf3,0xc3
.cfi_endproc
.size gcm_ghash_avx,.-gcm_ghash_avx
.section .rodata
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -1851,6 +1854,7 @@ gcm_ghash_avx:
.byte 71,72,65,83,72,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -447,10 +447,12 @@ SHA3_squeeze:
.cfi_offset %r14,-32
shrq $3,%rcx
movq %rdi,%r8
movq %rdi,%r9
movq %rsi,%r12
movq %rdx,%r13
movq %rcx,%r14
btl $0,%r8d
jc .Lnext_block
jmp .Loop_squeeze
.align 32
@ -458,8 +460,8 @@ SHA3_squeeze:
cmpq $8,%r13
jb .Ltail_squeeze
movq (%r8),%rax
leaq 8(%r8),%r8
movq (%r9),%rax
leaq 8(%r9),%r9
movq %rax,(%r12)
leaq 8(%r12),%r12
subq $8,%r13
@ -467,14 +469,14 @@ SHA3_squeeze:
subq $1,%rcx
jnz .Loop_squeeze
.Lnext_block:
call KeccakF1600
movq %rdi,%r8
movq %rdi,%r9
movq %r14,%rcx
jmp .Loop_squeeze
.Ltail_squeeze:
movq %r8,%rsi
movq %r9,%rsi
movq %r12,%rdi
movq %r13,%rcx
.byte 0xf3,0xa4
@ -492,6 +494,7 @@ SHA3_squeeze:
.byte 0xf3,0xc3
.cfi_endproc
.size SHA3_squeeze,.-SHA3_squeeze
.section .rodata
.align 256
.quad 0,0,0,0,0,0,0,0
.type iotas,@object

View File

@ -7286,7 +7286,7 @@ _avx2_shortcut:
.byte 0xf3,0xc3
.cfi_endproc
.size sha1_multi_block_avx2,.-sha1_multi_block_avx2
.section .rodata
.align 256
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -7301,6 +7301,7 @@ K_XX_XX:
.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
.byte 83,72,65,49,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -5433,6 +5433,7 @@ _avx2_shortcut:
.byte 0xf3,0xc3
.cfi_endproc
.size sha1_block_data_order_avx2,.-sha1_block_data_order_avx2
.section .rodata
.align 64
K_XX_XX:
.long 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -5446,6 +5447,7 @@ K_XX_XX:
.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
.long 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
.byte 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
.previous
.byte 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.align 64
.section ".note.gnu.property", "a"

View File

@ -7831,6 +7831,7 @@ _avx2_shortcut:
.byte 0xf3,0xc3
.cfi_endproc
.size sha256_multi_block_avx2,.-sha256_multi_block_avx2
.section .rodata
.align 256
K256:
.long 1116352408,1116352408,1116352408,1116352408
@ -7982,6 +7983,7 @@ K256_shaext:
.long 0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208
.long 0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2
.byte 83,72,65,50,53,54,32,109,117,108,116,105,45,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.section ".note.gnu.property", "a"
.p2align 3
.long 1f - 0f

View File

@ -1728,6 +1728,7 @@ sha256_block_data_order:
.byte 0xf3,0xc3
.cfi_endproc
.size sha256_block_data_order,.-sha256_block_data_order
.section .rodata
.align 64
.type K256,@object
K256:
@ -1771,6 +1772,7 @@ K256:
.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
.long 0xffffffff,0xffffffff,0x03020100,0x0b0a0908
.byte 83,72,65,50,53,54,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.type sha256_block_data_order_shaext,@function
.align 64
sha256_block_data_order_shaext:

View File

@ -1726,6 +1726,7 @@ sha512_block_data_order:
.byte 0xf3,0xc3
.cfi_endproc
.size sha512_block_data_order,.-sha512_block_data_order
.section .rodata
.align 64
.type K512,@object
K512:
@ -1813,6 +1814,7 @@ K512:
.quad 0x0001020304050607,0x08090a0b0c0d0e0f
.quad 0x0001020304050607,0x08090a0b0c0d0e0f
.byte 83,72,65,53,49,50,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.previous
.type sha512_block_data_order_xop,@function
.align 64
sha512_block_data_order_xop:

View File

@ -1915,6 +1915,7 @@ $L$cbc_epilogue:
DB 0F3h,0C3h ;repret
$L$SEH_end_AES_cbc_encrypt:
section .rdata rdata align=64
ALIGN 64
$L$AES_Te:
DD 0xa56363c6,0xa56363c6
@ -2704,6 +2705,7 @@ DB 67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97
DB 112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103
DB 62,0
ALIGN 64
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -2781,6 +2781,7 @@ $L$epilogue_avx:
DB 0F3h,0C3h ;repret
$L$SEH_end_aesni_cbc_sha1_enc_avx:
section .rdata rdata align=64
ALIGN 64
K_XX_XX:
DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -2796,6 +2797,7 @@ DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
DB 114,103,62,0
ALIGN 64
section .text
ALIGN 32
aesni_cbc_sha1_enc_shaext:

View File

@ -39,6 +39,7 @@ $L$probe:
section .rdata rdata align=64
ALIGN 64
K256:
@ -85,6 +86,7 @@ DB 54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98
DB 121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108
DB 46,111,114,103,62,0
ALIGN 64
section .text
ALIGN 64
aesni_cbc_sha256_enc_xop:

View File

@ -4762,6 +4762,7 @@ $L$key_expansion_256b:
section .rdata rdata align=64
ALIGN 64
$L$bswap_mask:
DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -4787,6 +4788,7 @@ DB 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
DB 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
DB 115,108,46,111,114,103,62,0
ALIGN 64
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -1615,6 +1615,7 @@ global ossl_bsaes_xts_encrypt
ALIGN 16
ossl_bsaes_xts_encrypt:
DB 243,15,30,250
mov rax,rsp
$L$xts_enc_prologue:
push rbp
@ -2110,6 +2111,7 @@ global ossl_bsaes_xts_decrypt
ALIGN 16
ossl_bsaes_xts_decrypt:
DB 243,15,30,250
mov rax,rsp
$L$xts_dec_prologue:
push rbp
@ -2625,6 +2627,7 @@ $L$xts_dec_epilogue:
section .rdata rdata align=64
ALIGN 64
_bsaes_const:
$L$M0ISR:
@ -2676,13 +2679,13 @@ $L$M0:
DQ 0x02060a0e03070b0f,0x0004080c0105090d
$L$63:
DQ 0x6363636363636363,0x6363636363636363
ALIGN 64
DB 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102
DB 111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44
DB 32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44
DB 32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32
DB 65,110,100,121,32,80,111,108,121,97,107,111,118,0
ALIGN 64
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -941,6 +941,7 @@ _vpaes_preheat:
section .rdata rdata align=64
ALIGN 64
_vpaes_consts:
$L$k_inv:
@ -1036,13 +1037,13 @@ $L$k_dsbe:
$L$k_dsbo:
DQ 0x1387EA537EF94000,0xC7AA6DB9D4943E2D
DQ 0x12D7560F93441D00,0xCA4B8159D8C58E9C
ALIGN 64
DB 86,101,99,116,111,114,32,80,101,114,109,117,116,97,116,105
DB 111,110,32,65,69,83,32,102,111,114,32,120,56,54,95,54
DB 52,47,83,83,83,69,51,44,32,77,105,107,101,32,72,97
DB 109,98,117,114,103,32,40,83,116,97,110,102,111,114,100,32
DB 85,110,105,118,101,114,115,105,116,121,41,0
ALIGN 64
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1832,6 +1832,7 @@ rsaz_avx2_eligible:
DB 0F3h,0C3h ;repret
section .rdata rdata align=64
ALIGN 64
$L$and_mask:
DQ 0x1fffffff,0x1fffffff,0x1fffffff,0x1fffffff
@ -1843,6 +1844,7 @@ $L$inc:
DD 0,0,0,0,1,1,1,1
DD 2,2,2,2,3,3,3,3
DD 4,4,4,4,4,4,4,4
section .text
ALIGN 64
EXTERN __imp_RtlVirtualUnwind

View File

@ -2094,10 +2094,12 @@ $L$SEH_end_rsaz_512_gather4:
section .rdata rdata align=64
ALIGN 64
$L$inc:
DD 0,0,1,1
DD 2,2,2,2
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -3671,6 +3671,7 @@ $L$gather:
$L$SEH_end_bn_gather5:
section .rdata rdata align=64
ALIGN 64
$L$inc:
DD 0,0,1,1
@ -3681,6 +3682,7 @@ DB 99,97,116,116,101,114,47,103,97,116,104,101,114,32,102,111
DB 114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79
DB 71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111
DB 112,101,110,115,115,108,46,111,114,103,62,0
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -2,8 +2,7 @@ default rel
%define XMMWORD
%define YMMWORD
%define ZMMWORD
section .text code align=64
section .rdata rdata align=4096
global ecp_nistz256_precomputed
ALIGN 4096
@ -2382,6 +2381,7 @@ section .text code align=64
EXTERN OPENSSL_ia32cap_P
section .rdata rdata align=4096
ALIGN 64
$L$poly:
DQ 0xffffffffffffffff,0x00000000ffffffff,0x0000000000000000,0xffffffff00000001
@ -2404,6 +2404,7 @@ $L$ord:
DQ 0xf3b9cac2fc632551,0xbce6faada7179e84,0xffffffffffffffff,0xffffffff00000000
$L$ordK:
DQ 0xccd1c8aaee00bc4f
section .text
global ecp_nistz256_mul_by_2

File diff suppressed because it is too large Load Diff

View File

@ -851,6 +851,7 @@ $L$gcm_enc_abort:
DB 0F3h,0C3h ;repret
$L$SEH_end_aesni_gcm_encrypt:
section .rdata rdata align=64
ALIGN 64
$L$bswap_mask:
DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -866,6 +867,7 @@ DB 65,69,83,45,78,73,32,71,67,77,32,109,111,100,117,108
DB 101,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82
DB 89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112
DB 114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
section .text
ALIGN 64
EXTERN __imp_RtlVirtualUnwind

View File

@ -723,6 +723,7 @@ global gcm_init_clmul
ALIGN 16
gcm_init_clmul:
DB 243,15,30,250
$L$_init_clmul:
$L$SEH_begin_gcm_init_clmul:
@ -1354,6 +1355,7 @@ global gcm_init_avx
ALIGN 32
gcm_init_avx:
DB 243,15,30,250
$L$SEH_begin_gcm_init_avx:
DB 0x48,0x83,0xec,0x18
@ -1879,6 +1881,7 @@ $L$SEH_end_gcm_ghash_avx:
DB 0F3h,0C3h ;repret
section .rdata rdata align=64
ALIGN 64
$L$bswap_mask:
DB 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
@ -1935,6 +1938,7 @@ DB 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
DB 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
DB 114,103,62,0
ALIGN 64
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -436,6 +436,7 @@ $L$SEH_begin_SHA3_squeeze:
mov rsi,rdx
mov rdx,r8
mov rcx,r9
mov r8,QWORD[40+rsp]
@ -447,10 +448,12 @@ $L$SEH_begin_SHA3_squeeze:
shr rcx,3
mov r8,rdi
mov r9,rdi
mov r12,rsi
mov r13,rdx
mov r14,rcx
bt r8d,0
jc NEAR $L$next_block
jmp NEAR $L$oop_squeeze
ALIGN 32
@ -458,8 +461,8 @@ $L$oop_squeeze:
cmp r13,8
jb NEAR $L$tail_squeeze
mov rax,QWORD[r8]
lea r8,[8+r8]
mov rax,QWORD[r9]
lea r9,[8+r9]
mov QWORD[r12],rax
lea r12,[8+r12]
sub r13,8
@ -467,14 +470,14 @@ $L$oop_squeeze:
sub rcx,1
jnz NEAR $L$oop_squeeze
$L$next_block:
call KeccakF1600
mov r8,rdi
mov r9,rdi
mov rcx,r14
jmp NEAR $L$oop_squeeze
$L$tail_squeeze:
mov rsi,r8
mov rsi,r9
mov rdi,r12
mov rcx,r13
DB 0xf3,0xa4
@ -491,6 +494,7 @@ $L$done_squeeze:
DB 0F3h,0C3h ;repret
$L$SEH_end_SHA3_squeeze:
section .rdata rdata align=256
ALIGN 256
DQ 0,0,0,0,0,0,0,0

View File

@ -7419,7 +7419,7 @@ $L$epilogue_avx2:
DB 0F3h,0C3h ;repret
$L$SEH_end_sha1_multi_block_avx2:
section .rdata rdata align=256
ALIGN 256
DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -7438,6 +7438,7 @@ DB 32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120
DB 56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77
DB 83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110
DB 115,115,108,46,111,114,103,62,0
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -5545,6 +5545,7 @@ $L$epilogue_avx2:
DB 0F3h,0C3h ;repret
$L$SEH_end_sha1_block_data_order_avx2:
section .rdata rdata align=64
ALIGN 64
K_XX_XX:
DD 0x5a827999,0x5a827999,0x5a827999,0x5a827999
@ -5558,6 +5559,7 @@ K_XX_XX:
DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
DD 0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
DB 0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
section .text
DB 83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115
DB 102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44
DB 32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60

View File

@ -7964,6 +7964,7 @@ $L$epilogue_avx2:
DB 0F3h,0C3h ;repret
$L$SEH_end_sha256_multi_block_avx2:
section .rdata rdata align=256
ALIGN 256
K256:
DD 1116352408,1116352408,1116352408,1116352408
@ -8119,6 +8120,7 @@ DB 99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114
DB 32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71
DB 65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112
DB 101,110,115,115,108,46,111,114,103,62,0
section .text
EXTERN __imp_RtlVirtualUnwind
ALIGN 16

View File

@ -1744,6 +1744,7 @@ $L$epilogue:
DB 0F3h,0C3h ;repret
$L$SEH_end_sha256_block_data_order:
section .rdata rdata align=64
ALIGN 64
K256:
@ -1791,6 +1792,7 @@ DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54
DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121
DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46
DB 111,114,103,62,0
section .text
ALIGN 64
sha256_block_data_order_shaext:

View File

@ -1742,6 +1742,7 @@ $L$epilogue:
DB 0F3h,0C3h ;repret
$L$SEH_end_sha512_block_data_order:
section .rdata rdata align=64
ALIGN 64
K512:
@ -1833,6 +1834,7 @@ DB 110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54
DB 52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121
DB 32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46
DB 111,114,103,62,0
section .text
ALIGN 64
sha512_block_data_order_xop:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,446 @@
/*
* WARNING: do not edit!
* Generated by Makefile from include/internal/param_names.h.in
*
* Copyright 2023 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
int ossl_param_find_pidx(const char *s);
/* Parameter name definitions - generated by util/perl/OpenSSL/paramnames.pm */
#define NUM_PIDX 329
#define PIDX_ALG_PARAM_ALGORITHM_ID 0
#define PIDX_ALG_PARAM_ALGORITHM_ID_PARAMS 1
#define PIDX_ALG_PARAM_CIPHER 2
#define PIDX_ALG_PARAM_DIGEST 3
#define PIDX_ALG_PARAM_ENGINE 4
#define PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR 5
#define PIDX_ALG_PARAM_MAC 6
#define PIDX_ALG_PARAM_PROPERTIES 7
#define PIDX_ASYM_CIPHER_PARAM_DIGEST PIDX_PKEY_PARAM_DIGEST
#define PIDX_ASYM_CIPHER_PARAM_ENGINE PIDX_PKEY_PARAM_ENGINE
#define PIDX_ASYM_CIPHER_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_ASYM_CIPHER_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_ASYM_CIPHER_PARAM_FIPS_RSA_PKCS15_PAD_DISABLED PIDX_PROV_PARAM_RSA_PKCS15_PAD_DISABLED
#define PIDX_ASYM_CIPHER_PARAM_IMPLICIT_REJECTION 8
#define PIDX_ASYM_CIPHER_PARAM_MGF1_DIGEST PIDX_PKEY_PARAM_MGF1_DIGEST
#define PIDX_ASYM_CIPHER_PARAM_MGF1_DIGEST_PROPS PIDX_PKEY_PARAM_MGF1_PROPERTIES
#define PIDX_ASYM_CIPHER_PARAM_OAEP_DIGEST PIDX_ALG_PARAM_DIGEST
#define PIDX_ASYM_CIPHER_PARAM_OAEP_DIGEST_PROPS 9
#define PIDX_ASYM_CIPHER_PARAM_OAEP_LABEL 10
#define PIDX_ASYM_CIPHER_PARAM_PAD_MODE PIDX_PKEY_PARAM_PAD_MODE
#define PIDX_ASYM_CIPHER_PARAM_PROPERTIES PIDX_PKEY_PARAM_PROPERTIES
#define PIDX_ASYM_CIPHER_PARAM_TLS_CLIENT_VERSION 11
#define PIDX_ASYM_CIPHER_PARAM_TLS_NEGOTIATED_VERSION 12
#define PIDX_CAPABILITY_TLS_GROUP_ALG 13
#define PIDX_CAPABILITY_TLS_GROUP_ID 14
#define PIDX_CAPABILITY_TLS_GROUP_IS_KEM 15
#define PIDX_CAPABILITY_TLS_GROUP_MAX_DTLS 16
#define PIDX_CAPABILITY_TLS_GROUP_MAX_TLS 17
#define PIDX_CAPABILITY_TLS_GROUP_MIN_DTLS 18
#define PIDX_CAPABILITY_TLS_GROUP_MIN_TLS 19
#define PIDX_CAPABILITY_TLS_GROUP_NAME 20
#define PIDX_CAPABILITY_TLS_GROUP_NAME_INTERNAL 21
#define PIDX_CAPABILITY_TLS_GROUP_SECURITY_BITS 22
#define PIDX_CAPABILITY_TLS_SIGALG_CODE_POINT 23
#define PIDX_CAPABILITY_TLS_SIGALG_HASH_NAME 24
#define PIDX_CAPABILITY_TLS_SIGALG_HASH_OID 25
#define PIDX_CAPABILITY_TLS_SIGALG_IANA_NAME 26
#define PIDX_CAPABILITY_TLS_SIGALG_KEYTYPE 27
#define PIDX_CAPABILITY_TLS_SIGALG_KEYTYPE_OID 28
#define PIDX_CAPABILITY_TLS_SIGALG_MAX_TLS 17
#define PIDX_CAPABILITY_TLS_SIGALG_MIN_TLS 19
#define PIDX_CAPABILITY_TLS_SIGALG_NAME 29
#define PIDX_CAPABILITY_TLS_SIGALG_OID 30
#define PIDX_CAPABILITY_TLS_SIGALG_SECURITY_BITS 31
#define PIDX_CAPABILITY_TLS_SIGALG_SIG_NAME 32
#define PIDX_CAPABILITY_TLS_SIGALG_SIG_OID 33
#define PIDX_CIPHER_PARAM_AEAD 34
#define PIDX_CIPHER_PARAM_AEAD_IVLEN PIDX_CIPHER_PARAM_IVLEN
#define PIDX_CIPHER_PARAM_AEAD_IV_GENERATED 35
#define PIDX_CIPHER_PARAM_AEAD_MAC_KEY 36
#define PIDX_CIPHER_PARAM_AEAD_TAG 37
#define PIDX_CIPHER_PARAM_AEAD_TAGLEN 38
#define PIDX_CIPHER_PARAM_AEAD_TLS1_AAD 39
#define PIDX_CIPHER_PARAM_AEAD_TLS1_AAD_PAD 40
#define PIDX_CIPHER_PARAM_AEAD_TLS1_GET_IV_GEN 41
#define PIDX_CIPHER_PARAM_AEAD_TLS1_IV_FIXED 42
#define PIDX_CIPHER_PARAM_AEAD_TLS1_SET_IV_INV 43
#define PIDX_CIPHER_PARAM_ALGORITHM_ID PIDX_ALG_PARAM_ALGORITHM_ID
#define PIDX_CIPHER_PARAM_ALGORITHM_ID_PARAMS PIDX_ALG_PARAM_ALGORITHM_ID_PARAMS
#define PIDX_CIPHER_PARAM_ALGORITHM_ID_PARAMS_OLD 44
#define PIDX_CIPHER_PARAM_BLOCK_SIZE 45
#define PIDX_CIPHER_PARAM_CTS 46
#define PIDX_CIPHER_PARAM_CTS_MODE 47
#define PIDX_CIPHER_PARAM_CUSTOM_IV 48
#define PIDX_CIPHER_PARAM_DECRYPT_ONLY 49
#define PIDX_CIPHER_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_CIPHER_PARAM_FIPS_ENCRYPT_CHECK 50
#define PIDX_CIPHER_PARAM_HAS_RAND_KEY 51
#define PIDX_CIPHER_PARAM_IV 52
#define PIDX_CIPHER_PARAM_IVLEN 53
#define PIDX_CIPHER_PARAM_KEYLEN 54
#define PIDX_CIPHER_PARAM_MODE 55
#define PIDX_CIPHER_PARAM_NUM 56
#define PIDX_CIPHER_PARAM_PADDING 57
#define PIDX_CIPHER_PARAM_RANDOM_KEY 58
#define PIDX_CIPHER_PARAM_RC2_KEYBITS 59
#define PIDX_CIPHER_PARAM_ROUNDS 60
#define PIDX_CIPHER_PARAM_SPEED 61
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK 62
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD 63
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD_PACKLEN 64
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC 65
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_IN 66
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_LEN 67
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_INTERLEAVE 68
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_BUFSIZE 69
#define PIDX_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_SEND_FRAGMENT 70
#define PIDX_CIPHER_PARAM_TLS_MAC 71
#define PIDX_CIPHER_PARAM_TLS_MAC_SIZE 72
#define PIDX_CIPHER_PARAM_TLS_VERSION 73
#define PIDX_CIPHER_PARAM_UPDATED_IV 74
#define PIDX_CIPHER_PARAM_USE_BITS 75
#define PIDX_CIPHER_PARAM_XTS_STANDARD 76
#define PIDX_DECODER_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_DIGEST_PARAM_ALGID_ABSENT 77
#define PIDX_DIGEST_PARAM_BLOCK_SIZE 45
#define PIDX_DIGEST_PARAM_MICALG 78
#define PIDX_DIGEST_PARAM_PAD_TYPE 79
#define PIDX_DIGEST_PARAM_SIZE 80
#define PIDX_DIGEST_PARAM_SSL3_MS 81
#define PIDX_DIGEST_PARAM_XOF 82
#define PIDX_DIGEST_PARAM_XOFLEN 83
#define PIDX_DRBG_PARAM_CIPHER PIDX_ALG_PARAM_CIPHER
#define PIDX_DRBG_PARAM_DIGEST PIDX_ALG_PARAM_DIGEST
#define PIDX_DRBG_PARAM_ENTROPY_REQUIRED 84
#define PIDX_DRBG_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_DRBG_PARAM_FIPS_DIGEST_CHECK PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK
#define PIDX_DRBG_PARAM_MAC PIDX_ALG_PARAM_MAC
#define PIDX_DRBG_PARAM_MAX_ADINLEN 85
#define PIDX_DRBG_PARAM_MAX_ENTROPYLEN 86
#define PIDX_DRBG_PARAM_MAX_LENGTH 87
#define PIDX_DRBG_PARAM_MAX_NONCELEN 88
#define PIDX_DRBG_PARAM_MAX_PERSLEN 89
#define PIDX_DRBG_PARAM_MIN_ENTROPYLEN 90
#define PIDX_DRBG_PARAM_MIN_LENGTH 91
#define PIDX_DRBG_PARAM_MIN_NONCELEN 92
#define PIDX_DRBG_PARAM_PREDICTION_RESISTANCE 93
#define PIDX_DRBG_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_DRBG_PARAM_RANDOM_DATA 94
#define PIDX_DRBG_PARAM_RESEED_COUNTER 95
#define PIDX_DRBG_PARAM_RESEED_REQUESTS 96
#define PIDX_DRBG_PARAM_RESEED_TIME 97
#define PIDX_DRBG_PARAM_RESEED_TIME_INTERVAL 98
#define PIDX_DRBG_PARAM_SIZE 80
#define PIDX_DRBG_PARAM_USE_DF 99
#define PIDX_ENCODER_PARAM_CIPHER PIDX_ALG_PARAM_CIPHER
#define PIDX_ENCODER_PARAM_ENCRYPT_LEVEL 100
#define PIDX_ENCODER_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_ENCODER_PARAM_SAVE_PARAMETERS 101
#define PIDX_EXCHANGE_PARAM_EC_ECDH_COFACTOR_MODE 102
#define PIDX_EXCHANGE_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_EXCHANGE_PARAM_FIPS_DIGEST_CHECK PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK
#define PIDX_EXCHANGE_PARAM_FIPS_ECDH_COFACTOR_CHECK PIDX_PROV_PARAM_ECDH_COFACTOR_CHECK
#define PIDX_EXCHANGE_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_EXCHANGE_PARAM_KDF_DIGEST 103
#define PIDX_EXCHANGE_PARAM_KDF_DIGEST_PROPS 104
#define PIDX_EXCHANGE_PARAM_KDF_OUTLEN 105
#define PIDX_EXCHANGE_PARAM_KDF_TYPE 106
#define PIDX_EXCHANGE_PARAM_KDF_UKM 107
#define PIDX_EXCHANGE_PARAM_PAD 108
#define PIDX_GEN_PARAM_ITERATION 109
#define PIDX_GEN_PARAM_POTENTIAL 110
#define PIDX_KDF_PARAM_ARGON2_AD 111
#define PIDX_KDF_PARAM_ARGON2_LANES 112
#define PIDX_KDF_PARAM_ARGON2_MEMCOST 113
#define PIDX_KDF_PARAM_ARGON2_VERSION 114
#define PIDX_KDF_PARAM_CEK_ALG 115
#define PIDX_KDF_PARAM_CIPHER PIDX_ALG_PARAM_CIPHER
#define PIDX_KDF_PARAM_CONSTANT 116
#define PIDX_KDF_PARAM_DATA 117
#define PIDX_KDF_PARAM_DIGEST PIDX_ALG_PARAM_DIGEST
#define PIDX_KDF_PARAM_EARLY_CLEAN 118
#define PIDX_KDF_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_KDF_PARAM_FIPS_DIGEST_CHECK PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK
#define PIDX_KDF_PARAM_FIPS_EMS_CHECK 119
#define PIDX_KDF_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_KDF_PARAM_HMACDRBG_ENTROPY 120
#define PIDX_KDF_PARAM_HMACDRBG_NONCE 121
#define PIDX_KDF_PARAM_INFO 122
#define PIDX_KDF_PARAM_ITER 123
#define PIDX_KDF_PARAM_KBKDF_R 124
#define PIDX_KDF_PARAM_KBKDF_USE_L 125
#define PIDX_KDF_PARAM_KBKDF_USE_SEPARATOR 126
#define PIDX_KDF_PARAM_KEY 127
#define PIDX_KDF_PARAM_LABEL 128
#define PIDX_KDF_PARAM_MAC PIDX_ALG_PARAM_MAC
#define PIDX_KDF_PARAM_MAC_SIZE 129
#define PIDX_KDF_PARAM_MODE 55
#define PIDX_KDF_PARAM_PASSWORD 130
#define PIDX_KDF_PARAM_PKCS12_ID 131
#define PIDX_KDF_PARAM_PKCS5 132
#define PIDX_KDF_PARAM_PREFIX 133
#define PIDX_KDF_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_KDF_PARAM_SALT 134
#define PIDX_KDF_PARAM_SCRYPT_MAXMEM 135
#define PIDX_KDF_PARAM_SCRYPT_N 136
#define PIDX_KDF_PARAM_SCRYPT_P 137
#define PIDX_KDF_PARAM_SCRYPT_R 124
#define PIDX_KDF_PARAM_SECRET 138
#define PIDX_KDF_PARAM_SEED 139
#define PIDX_KDF_PARAM_SIZE 80
#define PIDX_KDF_PARAM_SSHKDF_SESSION_ID 140
#define PIDX_KDF_PARAM_SSHKDF_TYPE 141
#define PIDX_KDF_PARAM_SSHKDF_XCGHASH 142
#define PIDX_KDF_PARAM_THREADS 143
#define PIDX_KDF_PARAM_UKM 144
#define PIDX_KDF_PARAM_X942_ACVPINFO 145
#define PIDX_KDF_PARAM_X942_PARTYUINFO 146
#define PIDX_KDF_PARAM_X942_PARTYVINFO 147
#define PIDX_KDF_PARAM_X942_SUPP_PRIVINFO 148
#define PIDX_KDF_PARAM_X942_SUPP_PUBINFO 149
#define PIDX_KDF_PARAM_X942_USE_KEYBITS 150
#define PIDX_KEM_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_KEM_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_KEM_PARAM_IKME 151
#define PIDX_KEM_PARAM_OPERATION 152
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_BLOCK_PADDING 153
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_HS_PADDING 154
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_MAX_EARLY_DATA 155
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_MAX_FRAG_LEN 156
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_MODE 55
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_OPTIONS 157
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_READ_AHEAD 158
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_STREAM_MAC 159
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_TLSTREE 160
#define PIDX_LIBSSL_RECORD_LAYER_PARAM_USE_ETM 161
#define PIDX_LIBSSL_RECORD_LAYER_READ_BUFFER_LEN 162
#define PIDX_MAC_PARAM_BLOCK_SIZE 163
#define PIDX_MAC_PARAM_CIPHER PIDX_ALG_PARAM_CIPHER
#define PIDX_MAC_PARAM_CUSTOM 164
#define PIDX_MAC_PARAM_C_ROUNDS 165
#define PIDX_MAC_PARAM_DIGEST PIDX_ALG_PARAM_DIGEST
#define PIDX_MAC_PARAM_DIGEST_NOINIT 166
#define PIDX_MAC_PARAM_DIGEST_ONESHOT 167
#define PIDX_MAC_PARAM_D_ROUNDS 168
#define PIDX_MAC_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_MAC_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_MAC_PARAM_FIPS_NO_SHORT_MAC PIDX_PROV_PARAM_NO_SHORT_MAC
#define PIDX_MAC_PARAM_IV 52
#define PIDX_MAC_PARAM_KEY 127
#define PIDX_MAC_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_MAC_PARAM_SALT 134
#define PIDX_MAC_PARAM_SIZE 80
#define PIDX_MAC_PARAM_TLS_DATA_SIZE 169
#define PIDX_MAC_PARAM_XOF 82
#define PIDX_OBJECT_PARAM_DATA 117
#define PIDX_OBJECT_PARAM_DATA_STRUCTURE 170
#define PIDX_OBJECT_PARAM_DATA_TYPE 171
#define PIDX_OBJECT_PARAM_DESC 172
#define PIDX_OBJECT_PARAM_REFERENCE 173
#define PIDX_OBJECT_PARAM_TYPE 141
#define PIDX_PASSPHRASE_PARAM_INFO 122
#define PIDX_PKEY_PARAM_ALGORITHM_ID PIDX_ALG_PARAM_ALGORITHM_ID
#define PIDX_PKEY_PARAM_ALGORITHM_ID_PARAMS PIDX_ALG_PARAM_ALGORITHM_ID_PARAMS
#define PIDX_PKEY_PARAM_BITS 174
#define PIDX_PKEY_PARAM_CIPHER PIDX_ALG_PARAM_CIPHER
#define PIDX_PKEY_PARAM_DEFAULT_DIGEST 175
#define PIDX_PKEY_PARAM_DHKEM_IKM 176
#define PIDX_PKEY_PARAM_DH_GENERATOR 177
#define PIDX_PKEY_PARAM_DH_PRIV_LEN 178
#define PIDX_PKEY_PARAM_DIGEST PIDX_ALG_PARAM_DIGEST
#define PIDX_PKEY_PARAM_DIGEST_SIZE 179
#define PIDX_PKEY_PARAM_DIST_ID 180
#define PIDX_PKEY_PARAM_EC_A 181
#define PIDX_PKEY_PARAM_EC_B 182
#define PIDX_PKEY_PARAM_EC_CHAR2_M 183
#define PIDX_PKEY_PARAM_EC_CHAR2_PP_K1 184
#define PIDX_PKEY_PARAM_EC_CHAR2_PP_K2 185
#define PIDX_PKEY_PARAM_EC_CHAR2_PP_K3 186
#define PIDX_PKEY_PARAM_EC_CHAR2_TP_BASIS 187
#define PIDX_PKEY_PARAM_EC_CHAR2_TYPE 188
#define PIDX_PKEY_PARAM_EC_COFACTOR 189
#define PIDX_PKEY_PARAM_EC_DECODED_FROM_EXPLICIT_PARAMS 190
#define PIDX_PKEY_PARAM_EC_ENCODING 191
#define PIDX_PKEY_PARAM_EC_FIELD_TYPE 192
#define PIDX_PKEY_PARAM_EC_GENERATOR 193
#define PIDX_PKEY_PARAM_EC_GROUP_CHECK_TYPE 194
#define PIDX_PKEY_PARAM_EC_INCLUDE_PUBLIC 195
#define PIDX_PKEY_PARAM_EC_ORDER 196
#define PIDX_PKEY_PARAM_EC_P 137
#define PIDX_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT 197
#define PIDX_PKEY_PARAM_EC_PUB_X 198
#define PIDX_PKEY_PARAM_EC_PUB_Y 199
#define PIDX_PKEY_PARAM_EC_SEED 139
#define PIDX_PKEY_PARAM_ENCODED_PUBLIC_KEY 200
#define PIDX_PKEY_PARAM_ENGINE PIDX_ALG_PARAM_ENGINE
#define PIDX_PKEY_PARAM_FFC_COFACTOR 201
#define PIDX_PKEY_PARAM_FFC_DIGEST PIDX_PKEY_PARAM_DIGEST
#define PIDX_PKEY_PARAM_FFC_DIGEST_PROPS PIDX_PKEY_PARAM_PROPERTIES
#define PIDX_PKEY_PARAM_FFC_G 202
#define PIDX_PKEY_PARAM_FFC_GINDEX 203
#define PIDX_PKEY_PARAM_FFC_H 204
#define PIDX_PKEY_PARAM_FFC_P 137
#define PIDX_PKEY_PARAM_FFC_PBITS 205
#define PIDX_PKEY_PARAM_FFC_PCOUNTER 206
#define PIDX_PKEY_PARAM_FFC_Q 207
#define PIDX_PKEY_PARAM_FFC_QBITS 208
#define PIDX_PKEY_PARAM_FFC_SEED 139
#define PIDX_PKEY_PARAM_FFC_TYPE 141
#define PIDX_PKEY_PARAM_FFC_VALIDATE_G 209
#define PIDX_PKEY_PARAM_FFC_VALIDATE_LEGACY 210
#define PIDX_PKEY_PARAM_FFC_VALIDATE_PQ 211
#define PIDX_PKEY_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK 212
#define PIDX_PKEY_PARAM_FIPS_KEY_CHECK 213
#define PIDX_PKEY_PARAM_FIPS_SIGN_CHECK 214
#define PIDX_PKEY_PARAM_GROUP_NAME 215
#define PIDX_PKEY_PARAM_IMPLICIT_REJECTION 8
#define PIDX_PKEY_PARAM_MANDATORY_DIGEST 216
#define PIDX_PKEY_PARAM_MASKGENFUNC 217
#define PIDX_PKEY_PARAM_MAX_SIZE 218
#define PIDX_PKEY_PARAM_MGF1_DIGEST 219
#define PIDX_PKEY_PARAM_MGF1_PROPERTIES 220
#define PIDX_PKEY_PARAM_PAD_MODE 221
#define PIDX_PKEY_PARAM_PRIV_KEY 222
#define PIDX_PKEY_PARAM_PROPERTIES PIDX_ALG_PARAM_PROPERTIES
#define PIDX_PKEY_PARAM_PUB_KEY 223
#define PIDX_PKEY_PARAM_RSA_BITS PIDX_PKEY_PARAM_BITS
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT 224
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT1 225
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT2 226
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT3 227
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT4 228
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT5 229
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT6 230
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT7 231
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT8 232
#define PIDX_PKEY_PARAM_RSA_COEFFICIENT9 233
#define PIDX_PKEY_PARAM_RSA_D 234
#define PIDX_PKEY_PARAM_RSA_DERIVE_FROM_PQ 235
#define PIDX_PKEY_PARAM_RSA_DIGEST PIDX_PKEY_PARAM_DIGEST
#define PIDX_PKEY_PARAM_RSA_DIGEST_PROPS PIDX_PKEY_PARAM_PROPERTIES
#define PIDX_PKEY_PARAM_RSA_E 236
#define PIDX_PKEY_PARAM_RSA_EXPONENT 237
#define PIDX_PKEY_PARAM_RSA_EXPONENT1 238
#define PIDX_PKEY_PARAM_RSA_EXPONENT10 239
#define PIDX_PKEY_PARAM_RSA_EXPONENT2 240
#define PIDX_PKEY_PARAM_RSA_EXPONENT3 241
#define PIDX_PKEY_PARAM_RSA_EXPONENT4 242
#define PIDX_PKEY_PARAM_RSA_EXPONENT5 243
#define PIDX_PKEY_PARAM_RSA_EXPONENT6 244
#define PIDX_PKEY_PARAM_RSA_EXPONENT7 245
#define PIDX_PKEY_PARAM_RSA_EXPONENT8 246
#define PIDX_PKEY_PARAM_RSA_EXPONENT9 247
#define PIDX_PKEY_PARAM_RSA_FACTOR 248
#define PIDX_PKEY_PARAM_RSA_FACTOR1 249
#define PIDX_PKEY_PARAM_RSA_FACTOR10 250
#define PIDX_PKEY_PARAM_RSA_FACTOR2 251
#define PIDX_PKEY_PARAM_RSA_FACTOR3 252
#define PIDX_PKEY_PARAM_RSA_FACTOR4 253
#define PIDX_PKEY_PARAM_RSA_FACTOR5 254
#define PIDX_PKEY_PARAM_RSA_FACTOR6 255
#define PIDX_PKEY_PARAM_RSA_FACTOR7 256
#define PIDX_PKEY_PARAM_RSA_FACTOR8 257
#define PIDX_PKEY_PARAM_RSA_FACTOR9 258
#define PIDX_PKEY_PARAM_RSA_MASKGENFUNC PIDX_PKEY_PARAM_MASKGENFUNC
#define PIDX_PKEY_PARAM_RSA_MGF1_DIGEST PIDX_PKEY_PARAM_MGF1_DIGEST
#define PIDX_PKEY_PARAM_RSA_N 136
#define PIDX_PKEY_PARAM_RSA_PRIMES 259
#define PIDX_PKEY_PARAM_RSA_PSS_SALTLEN 260
#define PIDX_PKEY_PARAM_RSA_TEST_P1 261
#define PIDX_PKEY_PARAM_RSA_TEST_P2 262
#define PIDX_PKEY_PARAM_RSA_TEST_Q1 263
#define PIDX_PKEY_PARAM_RSA_TEST_Q2 264
#define PIDX_PKEY_PARAM_RSA_TEST_XP 265
#define PIDX_PKEY_PARAM_RSA_TEST_XP1 266
#define PIDX_PKEY_PARAM_RSA_TEST_XP2 267
#define PIDX_PKEY_PARAM_RSA_TEST_XQ 268
#define PIDX_PKEY_PARAM_RSA_TEST_XQ1 269
#define PIDX_PKEY_PARAM_RSA_TEST_XQ2 270
#define PIDX_PKEY_PARAM_SECURITY_BITS 271
#define PIDX_PKEY_PARAM_USE_COFACTOR_ECDH PIDX_PKEY_PARAM_USE_COFACTOR_FLAG
#define PIDX_PKEY_PARAM_USE_COFACTOR_FLAG 272
#define PIDX_PROV_PARAM_BUILDINFO 273
#define PIDX_PROV_PARAM_CORE_MODULE_FILENAME 274
#define PIDX_PROV_PARAM_CORE_PROV_NAME 275
#define PIDX_PROV_PARAM_CORE_VERSION 276
#define PIDX_PROV_PARAM_DRBG_TRUNC_DIGEST 277
#define PIDX_PROV_PARAM_DSA_SIGN_DISABLED 278
#define PIDX_PROV_PARAM_ECDH_COFACTOR_CHECK 279
#define PIDX_PROV_PARAM_HKDF_DIGEST_CHECK 280
#define PIDX_PROV_PARAM_HKDF_KEY_CHECK 281
#define PIDX_PROV_PARAM_HMAC_KEY_CHECK 282
#define PIDX_PROV_PARAM_KBKDF_KEY_CHECK 283
#define PIDX_PROV_PARAM_KMAC_KEY_CHECK 284
#define PIDX_PROV_PARAM_NAME 285
#define PIDX_PROV_PARAM_NO_SHORT_MAC 286
#define PIDX_PROV_PARAM_PBKDF2_LOWER_BOUND_CHECK 287
#define PIDX_PROV_PARAM_RSA_PKCS15_PAD_DISABLED 288
#define PIDX_PROV_PARAM_RSA_PSS_SALTLEN_CHECK 289
#define PIDX_PROV_PARAM_RSA_SIGN_X931_PAD_DISABLED 290
#define PIDX_PROV_PARAM_SECURITY_CHECKS 291
#define PIDX_PROV_PARAM_SELF_TEST_DESC 292
#define PIDX_PROV_PARAM_SELF_TEST_PHASE 293
#define PIDX_PROV_PARAM_SELF_TEST_TYPE 294
#define PIDX_PROV_PARAM_SIGNATURE_DIGEST_CHECK 295
#define PIDX_PROV_PARAM_SSHKDF_DIGEST_CHECK 296
#define PIDX_PROV_PARAM_SSHKDF_KEY_CHECK 297
#define PIDX_PROV_PARAM_SSKDF_DIGEST_CHECK 298
#define PIDX_PROV_PARAM_SSKDF_KEY_CHECK 299
#define PIDX_PROV_PARAM_STATUS 300
#define PIDX_PROV_PARAM_TDES_ENCRYPT_DISABLED 301
#define PIDX_PROV_PARAM_TLS13_KDF_DIGEST_CHECK 302
#define PIDX_PROV_PARAM_TLS13_KDF_KEY_CHECK 303
#define PIDX_PROV_PARAM_TLS1_PRF_DIGEST_CHECK 304
#define PIDX_PROV_PARAM_TLS1_PRF_EMS_CHECK 305
#define PIDX_PROV_PARAM_TLS1_PRF_KEY_CHECK 306
#define PIDX_PROV_PARAM_VERSION 114
#define PIDX_PROV_PARAM_X942KDF_KEY_CHECK 307
#define PIDX_PROV_PARAM_X963KDF_DIGEST_CHECK 308
#define PIDX_PROV_PARAM_X963KDF_KEY_CHECK 309
#define PIDX_RAND_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_RAND_PARAM_GENERATE 310
#define PIDX_RAND_PARAM_MAX_REQUEST 311
#define PIDX_RAND_PARAM_STATE 312
#define PIDX_RAND_PARAM_STRENGTH 313
#define PIDX_RAND_PARAM_TEST_ENTROPY 314
#define PIDX_RAND_PARAM_TEST_NONCE 315
#define PIDX_SIGNATURE_PARAM_ALGORITHM_ID PIDX_PKEY_PARAM_ALGORITHM_ID
#define PIDX_SIGNATURE_PARAM_ALGORITHM_ID_PARAMS PIDX_PKEY_PARAM_ALGORITHM_ID_PARAMS
#define PIDX_SIGNATURE_PARAM_CONTEXT_STRING 316
#define PIDX_SIGNATURE_PARAM_DIGEST PIDX_PKEY_PARAM_DIGEST
#define PIDX_SIGNATURE_PARAM_DIGEST_SIZE PIDX_PKEY_PARAM_DIGEST_SIZE
#define PIDX_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR PIDX_ALG_PARAM_FIPS_APPROVED_INDICATOR
#define PIDX_SIGNATURE_PARAM_FIPS_DIGEST_CHECK PIDX_PKEY_PARAM_FIPS_DIGEST_CHECK
#define PIDX_SIGNATURE_PARAM_FIPS_KEY_CHECK PIDX_PKEY_PARAM_FIPS_KEY_CHECK
#define PIDX_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK 289
#define PIDX_SIGNATURE_PARAM_FIPS_SIGN_CHECK PIDX_PKEY_PARAM_FIPS_SIGN_CHECK
#define PIDX_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK 317
#define PIDX_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE 318
#define PIDX_SIGNATURE_PARAM_INSTANCE 319
#define PIDX_SIGNATURE_PARAM_KAT 320
#define PIDX_SIGNATURE_PARAM_MGF1_DIGEST PIDX_PKEY_PARAM_MGF1_DIGEST
#define PIDX_SIGNATURE_PARAM_MGF1_PROPERTIES PIDX_PKEY_PARAM_MGF1_PROPERTIES
#define PIDX_SIGNATURE_PARAM_NONCE_TYPE 321
#define PIDX_SIGNATURE_PARAM_PAD_MODE PIDX_PKEY_PARAM_PAD_MODE
#define PIDX_SIGNATURE_PARAM_PROPERTIES PIDX_PKEY_PARAM_PROPERTIES
#define PIDX_SIGNATURE_PARAM_PSS_SALTLEN 260
#define PIDX_SIGNATURE_PARAM_SIGNATURE 322
#define PIDX_STORE_PARAM_ALIAS 323
#define PIDX_STORE_PARAM_DIGEST 3
#define PIDX_STORE_PARAM_EXPECT 324
#define PIDX_STORE_PARAM_FINGERPRINT 325
#define PIDX_STORE_PARAM_INPUT_TYPE 326
#define PIDX_STORE_PARAM_ISSUER 285
#define PIDX_STORE_PARAM_PROPERTIES 7
#define PIDX_STORE_PARAM_SERIAL 327
#define PIDX_STORE_PARAM_SUBJECT 328

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/asn1.h.in
*
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -21,6 +21,9 @@
# define HEADER_ASN1_H
# endif
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
# include <time.h>
# include <openssl/e_os2.h>
# include <openssl/opensslconf.h>
@ -155,7 +158,7 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_ALGOR, X509_ALGOR, X509_ALGOR)
# define ASN1_STRING_FLAG_BITS_LEFT 0x08/* Set if 0x07 has bits left value */
# define ASN1_STRING_FLAG_BITS_LEFT 0x08 /* Set if 0x07 has bits left value */
/*
* This indicates that the ASN1_STRING is not a real value but just a place
* holder for the location where indefinite length constructed data should be
@ -996,6 +999,8 @@ int ASN1_TYPE_get_int_octetstring(const ASN1_TYPE *a, long *num,
unsigned char *data, int max_len);
void *ASN1_item_unpack(const ASN1_STRING *oct, const ASN1_ITEM *it);
void *ASN1_item_unpack_ex(const ASN1_STRING *oct, const ASN1_ITEM *it,
OSSL_LIB_CTX *libctx, const char *propq);
ASN1_STRING *ASN1_item_pack(void *obj, const ASN1_ITEM *it,
ASN1_OCTET_STRING **oct);

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/bio.h.in
*
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -67,8 +67,13 @@ extern "C" {
# define BIO_TYPE_DGRAM_SCTP (24|BIO_TYPE_SOURCE_SINK|BIO_TYPE_DESCRIPTOR)
# endif
# define BIO_TYPE_CORE_TO_PROV (25|BIO_TYPE_SOURCE_SINK)
# define BIO_TYPE_DGRAM_PAIR (26|BIO_TYPE_SOURCE_SINK)
# define BIO_TYPE_DGRAM_MEM (27|BIO_TYPE_SOURCE_SINK)
/* Custom type starting index returned by BIO_get_new_index() */
#define BIO_TYPE_START 128
/* Custom type maximum index that can be returned by BIO_get_new_index() */
#define BIO_TYPE_MASK 0xFF
/*
* BIO_FILENAME_READ|BIO_CLOSE to open or close on free.
@ -171,6 +176,30 @@ extern "C" {
# define BIO_CTRL_SET_INDENT 80
# define BIO_CTRL_GET_INDENT 81
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP 82
# define BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE 83
# define BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE 84
# define BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS 85
# define BIO_CTRL_DGRAM_GET_CAPS 86
# define BIO_CTRL_DGRAM_SET_CAPS 87
# define BIO_CTRL_DGRAM_GET_NO_TRUNC 88
# define BIO_CTRL_DGRAM_SET_NO_TRUNC 89
/*
* internal BIO:
* # define BIO_CTRL_SET_KTLS_TX_ZEROCOPY_SENDFILE 90
*/
# define BIO_CTRL_GET_RPOLL_DESCRIPTOR 91
# define BIO_CTRL_GET_WPOLL_DESCRIPTOR 92
# define BIO_CTRL_DGRAM_DETECT_PEER_ADDR 93
# define BIO_DGRAM_CAP_NONE 0U
# define BIO_DGRAM_CAP_HANDLES_SRC_ADDR (1U << 0)
# define BIO_DGRAM_CAP_HANDLES_DST_ADDR (1U << 1)
# define BIO_DGRAM_CAP_PROVIDES_SRC_ADDR (1U << 2)
# define BIO_DGRAM_CAP_PROVIDES_DST_ADDR (1U << 3)
# ifndef OPENSSL_NO_KTLS
# define BIO_get_ktls_send(b) \
(BIO_ctrl(b, BIO_CTRL_GET_KTLS_SEND, 0, NULL) > 0)
@ -208,7 +237,7 @@ extern "C" {
# define BIO_FLAGS_NONCLEAR_RST 0x400
# define BIO_FLAGS_IN_EOF 0x800
/* the BIO FLAGS values 0x1000 to 0x4000 are reserved for internal KTLS flags */
/* the BIO FLAGS values 0x1000 to 0x8000 are reserved for internal KTLS flags */
typedef union bio_addr_st BIO_ADDR;
typedef struct bio_addrinfo_st BIO_ADDRINFO;
@ -256,12 +285,14 @@ void BIO_clear_flags(BIO *b, int flags);
# define BIO_RR_ACCEPT 0x03
/* These are passed by the BIO callback */
# define BIO_CB_FREE 0x01
# define BIO_CB_READ 0x02
# define BIO_CB_WRITE 0x03
# define BIO_CB_PUTS 0x04
# define BIO_CB_GETS 0x05
# define BIO_CB_CTRL 0x06
# define BIO_CB_FREE 0x01
# define BIO_CB_READ 0x02
# define BIO_CB_WRITE 0x03
# define BIO_CB_PUTS 0x04
# define BIO_CB_GETS 0x05
# define BIO_CB_CTRL 0x06
# define BIO_CB_RECVMMSG 0x07
# define BIO_CB_SENDMMSG 0x08
/*
* The callback is called before and after the underling operation, The
@ -362,6 +393,36 @@ struct bio_dgram_sctp_prinfo {
};
# endif
/* BIO_sendmmsg/BIO_recvmmsg-related definitions */
typedef struct bio_msg_st {
void *data;
size_t data_len;
BIO_ADDR *peer, *local;
uint64_t flags;
} BIO_MSG;
typedef struct bio_mmsg_cb_args_st {
BIO_MSG *msg;
size_t stride, num_msg;
uint64_t flags;
size_t *msgs_processed;
} BIO_MMSG_CB_ARGS;
#define BIO_POLL_DESCRIPTOR_TYPE_NONE 0
#define BIO_POLL_DESCRIPTOR_TYPE_SOCK_FD 1
#define BIO_POLL_DESCRIPTOR_TYPE_SSL 2
#define BIO_POLL_DESCRIPTOR_CUSTOM_START 8192
typedef struct bio_poll_descriptor_st {
uint32_t type;
union {
int fd;
void *custom;
uintptr_t custom_ui;
SSL *ssl;
} value;
} BIO_POLL_DESCRIPTOR;
/*
* #define BIO_CONN_get_param_hostname BIO_ctrl
*/
@ -428,10 +489,17 @@ struct bio_dgram_sctp_prinfo {
# define BIO_C_SET_CONNECT_MODE 155
# define BIO_C_SET_TFO 156 /* like BIO_C_SET_NBIO */
# define BIO_C_SET_SOCK_TYPE 157
# define BIO_C_GET_SOCK_TYPE 158
# define BIO_C_GET_DGRAM_BIO 159
# define BIO_set_app_data(s,arg) BIO_set_ex_data(s,0,arg)
# define BIO_get_app_data(s) BIO_get_ex_data(s,0)
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
# define BIO_set_nbio(b,n) BIO_ctrl(b,BIO_C_SET_NBIO,(n),NULL)
# define BIO_set_tfo(b,n) BIO_ctrl(b,BIO_C_SET_TFO,(n),NULL)
# ifndef OPENSSL_NO_SOCK
/* IP families we support, for BIO_s_connect() and BIO_s_accept() */
@ -452,7 +520,11 @@ struct bio_dgram_sctp_prinfo {
# define BIO_get_conn_port(b) ((const char *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,1))
# define BIO_get_conn_address(b) ((const BIO_ADDR *)BIO_ptr_ctrl(b,BIO_C_GET_CONNECT,2))
# define BIO_get_conn_ip_family(b) BIO_ctrl(b,BIO_C_GET_CONNECT,3,NULL)
# define BIO_get_conn_mode(b) BIO_ctrl(b,BIO_C_GET_CONNECT,4,NULL)
# define BIO_set_conn_mode(b,n) BIO_ctrl(b,BIO_C_SET_CONNECT_MODE,(n),NULL)
# define BIO_set_sock_type(b,t) BIO_ctrl(b,BIO_C_SET_SOCK_TYPE,(t),NULL)
# define BIO_get_sock_type(b) BIO_ctrl(b,BIO_C_GET_SOCK_TYPE,0,NULL)
# define BIO_get0_dgram_bio(b, p) BIO_ctrl(b,BIO_C_GET_DGRAM_BIO,0,(void *)(BIO **)(p))
/* BIO_s_accept() */
# define BIO_set_accept_name(b,name) BIO_ctrl(b,BIO_C_SET_ACCEPT,0, \
@ -469,6 +541,7 @@ struct bio_dgram_sctp_prinfo {
(char *)(bio))
# define BIO_set_accept_ip_family(b,f) BIO_int_ctrl(b,BIO_C_SET_ACCEPT,4,f)
# define BIO_get_accept_ip_family(b) BIO_ctrl(b,BIO_C_GET_ACCEPT,4,NULL)
# define BIO_set_tfo_accept(b,n) BIO_ctrl(b,BIO_C_SET_ACCEPT,5,(n)?(void *)"a":NULL)
/* Aliases kept for backward compatibility */
# define BIO_BIND_NORMAL 0
@ -596,8 +669,30 @@ int BIO_ctrl_reset_read_request(BIO *b);
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_GET_PEER, 0, (char *)(peer))
# define BIO_dgram_set_peer(b,peer) \
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_SET_PEER, 0, (char *)(peer))
# define BIO_dgram_detect_peer_addr(b,peer) \
(int)BIO_ctrl(b, BIO_CTRL_DGRAM_DETECT_PEER_ADDR, 0, (char *)(peer))
# define BIO_dgram_get_mtu_overhead(b) \
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU_OVERHEAD, 0, NULL)
# define BIO_dgram_get_local_addr_cap(b) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_CAP, 0, NULL)
# define BIO_dgram_get_local_addr_enable(b, penable) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_LOCAL_ADDR_ENABLE, 0, (char *)(penable))
# define BIO_dgram_set_local_addr_enable(b, enable) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_LOCAL_ADDR_ENABLE, (enable), NULL)
# define BIO_dgram_get_effective_caps(b) \
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_EFFECTIVE_CAPS, 0, NULL)
# define BIO_dgram_get_caps(b) \
(uint32_t)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_CAPS, 0, NULL)
# define BIO_dgram_set_caps(b, caps) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_CAPS, (long)(caps), NULL)
# define BIO_dgram_get_no_trunc(b) \
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_NO_TRUNC, 0, NULL)
# define BIO_dgram_set_no_trunc(b, enable) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_NO_TRUNC, (enable), NULL)
# define BIO_dgram_get_mtu(b) \
(unsigned int)BIO_ctrl((b), BIO_CTRL_DGRAM_GET_MTU, 0, NULL)
# define BIO_dgram_set_mtu(b, mtu) \
(int)BIO_ctrl((b), BIO_CTRL_DGRAM_SET_MTU, (mtu), NULL)
/* ctrl macros for BIO_f_prefix */
# define BIO_set_prefix(b,p) BIO_ctrl((b), BIO_CTRL_SET_PREFIX, 0, (void *)(p))
@ -640,10 +735,18 @@ void BIO_vfree(BIO *a);
int BIO_up_ref(BIO *a);
int BIO_read(BIO *b, void *data, int dlen);
int BIO_read_ex(BIO *b, void *data, size_t dlen, size_t *readbytes);
__owur int BIO_recvmmsg(BIO *b, BIO_MSG *msg,
size_t stride, size_t num_msg, uint64_t flags,
size_t *msgs_processed);
int BIO_gets(BIO *bp, char *buf, int size);
int BIO_get_line(BIO *bio, char *buf, int size);
int BIO_write(BIO *b, const void *data, int dlen);
int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written);
__owur int BIO_sendmmsg(BIO *b, BIO_MSG *msg,
size_t stride, size_t num_msg, uint64_t flags,
size_t *msgs_processed);
__owur int BIO_get_rpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
__owur int BIO_get_wpoll_descriptor(BIO *b, BIO_POLL_DESCRIPTOR *desc);
int BIO_puts(BIO *bp, const char *buf);
int BIO_indent(BIO *b, int indent, int max);
long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg);
@ -667,6 +770,9 @@ int BIO_nwrite0(BIO *bio, char **buf);
int BIO_nwrite(BIO *bio, char **buf, int num);
const BIO_METHOD *BIO_s_mem(void);
# ifndef OPENSSL_NO_DGRAM
const BIO_METHOD *BIO_s_dgram_mem(void);
# endif
const BIO_METHOD *BIO_s_secmem(void);
BIO *BIO_new_mem_buf(const void *buf, int len);
# ifndef OPENSSL_NO_SOCK
@ -686,6 +792,7 @@ const BIO_METHOD *BIO_f_nbio_test(void);
const BIO_METHOD *BIO_f_prefix(void);
const BIO_METHOD *BIO_s_core(void);
# ifndef OPENSSL_NO_DGRAM
const BIO_METHOD *BIO_s_dgram_pair(void);
const BIO_METHOD *BIO_s_datagram(void);
int BIO_dgram_non_fatal_error(int error);
BIO *BIO_new_dgram(int fd, int close_flag);
@ -704,6 +811,7 @@ int BIO_dgram_sctp_msg_waiting(BIO *b);
# ifndef OPENSSL_NO_SOCK
int BIO_sock_should_retry(int i);
int BIO_sock_non_fatal_error(int error);
int BIO_err_is_non_fatal(unsigned int errcode);
int BIO_socket_wait(int fd, int for_read, time_t max_time);
# endif
int BIO_wait(BIO *bio, time_t max_time, unsigned int nap_milliseconds);
@ -726,6 +834,8 @@ int BIO_hex_string(BIO *out, int indent, int width, const void *data,
# ifndef OPENSSL_NO_SOCK
BIO_ADDR *BIO_ADDR_new(void);
int BIO_ADDR_copy(BIO_ADDR *dst, const BIO_ADDR *src);
BIO_ADDR *BIO_ADDR_dup(const BIO_ADDR *ap);
int BIO_ADDR_rawmake(BIO_ADDR *ap, int family,
const void *where, size_t wherelen, unsigned short port);
void BIO_ADDR_free(BIO_ADDR *);
@ -788,6 +898,7 @@ int BIO_sock_info(int sock,
# define BIO_SOCK_KEEPALIVE 0x04
# define BIO_SOCK_NONBLOCK 0x08
# define BIO_SOCK_NODELAY 0x10
# define BIO_SOCK_TFO 0x20
int BIO_socket(int domain, int socktype, int protocol, int options);
int BIO_connect(int sock, const BIO_ADDR *addr, int options);
@ -805,6 +916,11 @@ BIO *BIO_new_fd(int fd, int close_flag);
int BIO_new_bio_pair(BIO **bio1, size_t writebuf1,
BIO **bio2, size_t writebuf2);
# ifndef OPENSSL_NO_DGRAM
int BIO_new_bio_dgram_pair(BIO **bio1, size_t writebuf1,
BIO **bio2, size_t writebuf2);
# endif
/*
* If successful, returns 1 and in *bio1, *bio2 two BIO pair endpoints.
* Otherwise returns 0 and sets *bio1 and *bio2 to NULL. Size 0 uses default
@ -856,12 +972,24 @@ int BIO_meth_set_write(BIO_METHOD *biom,
int (*write) (BIO *, const char *, int));
int BIO_meth_set_write_ex(BIO_METHOD *biom,
int (*bwrite) (BIO *, const char *, size_t, size_t *));
int BIO_meth_set_sendmmsg(BIO_METHOD *biom,
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
uint64_t, size_t *));
int (*BIO_meth_get_sendmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
size_t, size_t,
uint64_t, size_t *);
int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int);
int (*BIO_meth_get_read_ex(const BIO_METHOD *biom)) (BIO *, char *, size_t, size_t *);
int BIO_meth_set_read(BIO_METHOD *biom,
int (*read) (BIO *, char *, int));
int BIO_meth_set_read_ex(BIO_METHOD *biom,
int (*bread) (BIO *, char *, size_t, size_t *));
int BIO_meth_set_recvmmsg(BIO_METHOD *biom,
int (*f) (BIO *, BIO_MSG *, size_t, size_t,
uint64_t, size_t *));
int (*BIO_meth_get_recvmmsg(const BIO_METHOD *biom))(BIO *, BIO_MSG *,
size_t, size_t,
uint64_t, size_t *);
int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *);
int BIO_meth_set_puts(BIO_METHOD *biom,
int (*puts) (BIO *, const char *));

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/cmp.h.in
*
* Copyright 2007-2023 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 2007-2024 The OpenSSL Project Authors. All Rights Reserved.
* Copyright Nokia 2007-2019
* Copyright Siemens AG 2015-2019
*
@ -35,7 +35,9 @@
extern "C" {
# endif
# define OSSL_CMP_PVNO 2
# define OSSL_CMP_PVNO_2 2
# define OSSL_CMP_PVNO_3 3
# define OSSL_CMP_PVNO OSSL_CMP_PVNO_2 /* v2 is the default */
/*-
* PKIFailureInfo ::= BIT STRING {
@ -137,7 +139,6 @@ extern "C" {
# if OSSL_CMP_PKIFAILUREINFO_MAX_BIT_PATTERN > INT_MAX
# error CMP_PKIFAILUREINFO_MAX bit pattern does not fit in type int
# endif
typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
# define OSSL_CMP_CTX_FAILINFO_badAlg (1 << 0)
@ -203,8 +204,8 @@ typedef ASN1_BIT_STRING OSSL_CMP_PKIFAILUREINFO;
# define OSSL_CMP_PKISTATUS_revocationWarning 4
# define OSSL_CMP_PKISTATUS_revocationNotification 5
# define OSSL_CMP_PKISTATUS_keyUpdateWarning 6
typedef ASN1_INTEGER OSSL_CMP_PKISTATUS;
DECLARE_ASN1_ITEM(OSSL_CMP_PKISTATUS)
# define OSSL_CMP_CERTORENCCERT_CERTIFICATE 0
@ -274,6 +275,46 @@ SKM_DEFINE_STACK_OF_INTERNAL(OSSL_CMP_ITAV, OSSL_CMP_ITAV, OSSL_CMP_ITAV)
#define sk_OSSL_CMP_ITAV_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_CMP_ITAV) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_CMP_ITAV_sk_type(sk), ossl_check_OSSL_CMP_ITAV_copyfunc_type(copyfunc), ossl_check_OSSL_CMP_ITAV_freefunc_type(freefunc)))
#define sk_OSSL_CMP_ITAV_set_cmp_func(sk, cmp) ((sk_OSSL_CMP_ITAV_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_CMP_ITAV_sk_type(sk), ossl_check_OSSL_CMP_ITAV_compfunc_type(cmp)))
typedef struct ossl_cmp_crlstatus_st OSSL_CMP_CRLSTATUS;
SKM_DEFINE_STACK_OF_INTERNAL(OSSL_CMP_CRLSTATUS, OSSL_CMP_CRLSTATUS, OSSL_CMP_CRLSTATUS)
#define sk_OSSL_CMP_CRLSTATUS_num(sk) OPENSSL_sk_num(ossl_check_const_OSSL_CMP_CRLSTATUS_sk_type(sk))
#define sk_OSSL_CMP_CRLSTATUS_value(sk, idx) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_value(ossl_check_const_OSSL_CMP_CRLSTATUS_sk_type(sk), (idx)))
#define sk_OSSL_CMP_CRLSTATUS_new(cmp) ((STACK_OF(OSSL_CMP_CRLSTATUS) *)OPENSSL_sk_new(ossl_check_OSSL_CMP_CRLSTATUS_compfunc_type(cmp)))
#define sk_OSSL_CMP_CRLSTATUS_new_null() ((STACK_OF(OSSL_CMP_CRLSTATUS) *)OPENSSL_sk_new_null())
#define sk_OSSL_CMP_CRLSTATUS_new_reserve(cmp, n) ((STACK_OF(OSSL_CMP_CRLSTATUS) *)OPENSSL_sk_new_reserve(ossl_check_OSSL_CMP_CRLSTATUS_compfunc_type(cmp), (n)))
#define sk_OSSL_CMP_CRLSTATUS_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), (n))
#define sk_OSSL_CMP_CRLSTATUS_free(sk) OPENSSL_sk_free(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk))
#define sk_OSSL_CMP_CRLSTATUS_zero(sk) OPENSSL_sk_zero(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk))
#define sk_OSSL_CMP_CRLSTATUS_delete(sk, i) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_delete(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), (i)))
#define sk_OSSL_CMP_CRLSTATUS_delete_ptr(sk, ptr) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_delete_ptr(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr)))
#define sk_OSSL_CMP_CRLSTATUS_push(sk, ptr) OPENSSL_sk_push(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr))
#define sk_OSSL_CMP_CRLSTATUS_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr))
#define sk_OSSL_CMP_CRLSTATUS_pop(sk) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_pop(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk)))
#define sk_OSSL_CMP_CRLSTATUS_shift(sk) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_shift(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk)))
#define sk_OSSL_CMP_CRLSTATUS_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk),ossl_check_OSSL_CMP_CRLSTATUS_freefunc_type(freefunc))
#define sk_OSSL_CMP_CRLSTATUS_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr), (idx))
#define sk_OSSL_CMP_CRLSTATUS_set(sk, idx, ptr) ((OSSL_CMP_CRLSTATUS *)OPENSSL_sk_set(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), (idx), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr)))
#define sk_OSSL_CMP_CRLSTATUS_find(sk, ptr) OPENSSL_sk_find(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr))
#define sk_OSSL_CMP_CRLSTATUS_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr))
#define sk_OSSL_CMP_CRLSTATUS_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_type(ptr), pnum)
#define sk_OSSL_CMP_CRLSTATUS_sort(sk) OPENSSL_sk_sort(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk))
#define sk_OSSL_CMP_CRLSTATUS_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OSSL_CMP_CRLSTATUS_sk_type(sk))
#define sk_OSSL_CMP_CRLSTATUS_dup(sk) ((STACK_OF(OSSL_CMP_CRLSTATUS) *)OPENSSL_sk_dup(ossl_check_const_OSSL_CMP_CRLSTATUS_sk_type(sk)))
#define sk_OSSL_CMP_CRLSTATUS_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_CMP_CRLSTATUS) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_copyfunc_type(copyfunc), ossl_check_OSSL_CMP_CRLSTATUS_freefunc_type(freefunc)))
#define sk_OSSL_CMP_CRLSTATUS_set_cmp_func(sk, cmp) ((sk_OSSL_CMP_CRLSTATUS_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_CMP_CRLSTATUS_sk_type(sk), ossl_check_OSSL_CMP_CRLSTATUS_compfunc_type(cmp)))
typedef OSSL_CRMF_ATTRIBUTETYPEANDVALUE OSSL_CMP_ATAV;
# define OSSL_CMP_ATAV_free OSSL_CRMF_ATTRIBUTETYPEANDVALUE_free
typedef STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) OSSL_CMP_ATAVS;
DECLARE_ASN1_FUNCTIONS(OSSL_CMP_ATAVS)
# define stack_st_OSSL_CMP_ATAV stack_st_OSSL_CRMF_ATTRIBUTETYPEANDVALUE
# define sk_OSSL_CMP_ATAV_num sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_num
# define sk_OSSL_CMP_ATAV_value sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_value
# define sk_OSSL_CMP_ATAV_push sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_push
# define sk_OSSL_CMP_ATAV_pop_free sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_pop_free
typedef struct ossl_cmp_revrepcontent_st OSSL_CMP_REVREPCONTENT;
typedef struct ossl_cmp_pkisi_st OSSL_CMP_PKISI;
DECLARE_ASN1_FUNCTIONS(OSSL_CMP_PKISI)
@ -375,21 +416,75 @@ void OSSL_CMP_ITAV_set0(OSSL_CMP_ITAV *itav, ASN1_OBJECT *type,
ASN1_TYPE *value);
ASN1_OBJECT *OSSL_CMP_ITAV_get0_type(const OSSL_CMP_ITAV *itav);
ASN1_TYPE *OSSL_CMP_ITAV_get0_value(const OSSL_CMP_ITAV *itav);
int OSSL_CMP_ITAV_push0_stack_item(STACK_OF(OSSL_CMP_ITAV) **itav_sk_p,
int OSSL_CMP_ITAV_push0_stack_item(STACK_OF(OSSL_CMP_ITAV) **sk_p,
OSSL_CMP_ITAV *itav);
void OSSL_CMP_ITAV_free(OSSL_CMP_ITAV *itav);
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new0_certProfile(STACK_OF(ASN1_UTF8STRING)
*certProfile);
int OSSL_CMP_ITAV_get0_certProfile(const OSSL_CMP_ITAV *itav,
STACK_OF(ASN1_UTF8STRING) **out);
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_caCerts(const STACK_OF(X509) *caCerts);
int OSSL_CMP_ITAV_get0_caCerts(const OSSL_CMP_ITAV *itav, STACK_OF(X509) **out);
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaCert(const X509 *rootCaCert);
int OSSL_CMP_ITAV_get0_rootCaCert(const OSSL_CMP_ITAV *itav, X509 **out);
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_rootCaKeyUpdate(const X509 *newWithNew,
const X509 *newWithOld,
const X509 *oldWithNew);
int OSSL_CMP_ITAV_get0_rootCaKeyUpdate(const OSSL_CMP_ITAV *itav,
X509 **newWithNew,
X509 **newWithOld,
X509 **oldWithNew);
OSSL_CMP_CRLSTATUS *OSSL_CMP_CRLSTATUS_create(const X509_CRL *crl,
const X509 *cert, int only_DN);
OSSL_CMP_CRLSTATUS *OSSL_CMP_CRLSTATUS_new1(const DIST_POINT_NAME *dpn,
const GENERAL_NAMES *issuer,
const ASN1_TIME *thisUpdate);
int OSSL_CMP_CRLSTATUS_get0(const OSSL_CMP_CRLSTATUS *crlstatus,
DIST_POINT_NAME **dpn, GENERAL_NAMES **issuer,
ASN1_TIME **thisUpdate);
void OSSL_CMP_CRLSTATUS_free(OSSL_CMP_CRLSTATUS *crlstatus);
OSSL_CMP_ITAV
*OSSL_CMP_ITAV_new0_crlStatusList(STACK_OF(OSSL_CMP_CRLSTATUS) *crlStatusList);
int OSSL_CMP_ITAV_get0_crlStatusList(const OSSL_CMP_ITAV *itav,
STACK_OF(OSSL_CMP_CRLSTATUS) **out);
OSSL_CMP_ITAV *OSSL_CMP_ITAV_new_crls(const X509_CRL *crls);
int OSSL_CMP_ITAV_get0_crls(const OSSL_CMP_ITAV *it, STACK_OF(X509_CRL) **out);
OSSL_CMP_ITAV
*OSSL_CMP_ITAV_new0_certReqTemplate(OSSL_CRMF_CERTTEMPLATE *certTemplate,
OSSL_CMP_ATAVS *keySpec);
int OSSL_CMP_ITAV_get1_certReqTemplate(const OSSL_CMP_ITAV *itav,
OSSL_CRMF_CERTTEMPLATE **certTemplate,
OSSL_CMP_ATAVS **keySpec);
OSSL_CMP_ATAV *OSSL_CMP_ATAV_create(ASN1_OBJECT *type, ASN1_TYPE *value);
void OSSL_CMP_ATAV_set0(OSSL_CMP_ATAV *itav, ASN1_OBJECT *type,
ASN1_TYPE *value);
ASN1_OBJECT *OSSL_CMP_ATAV_get0_type(const OSSL_CMP_ATAV *itav);
ASN1_TYPE *OSSL_CMP_ATAV_get0_value(const OSSL_CMP_ATAV *itav);
OSSL_CMP_ATAV *OSSL_CMP_ATAV_new_algId(const X509_ALGOR *alg);
X509_ALGOR *OSSL_CMP_ATAV_get0_algId(const OSSL_CMP_ATAV *atav);
OSSL_CMP_ATAV *OSSL_CMP_ATAV_new_rsaKeyLen(int len);
int OSSL_CMP_ATAV_get_rsaKeyLen(const OSSL_CMP_ATAV *atav);
int OSSL_CMP_ATAV_push1(OSSL_CMP_ATAVS **sk_p, const OSSL_CMP_ATAV *atav);
void OSSL_CMP_MSG_free(OSSL_CMP_MSG *msg);
/* from cmp_ctx.c */
OSSL_CMP_CTX *OSSL_CMP_CTX_new(OSSL_LIB_CTX *libctx, const char *propq);
void OSSL_CMP_CTX_free(OSSL_CMP_CTX *ctx);
int OSSL_CMP_CTX_reinit(OSSL_CMP_CTX *ctx);
OSSL_LIB_CTX *OSSL_CMP_CTX_get0_libctx(const OSSL_CMP_CTX *ctx);
const char *OSSL_CMP_CTX_get0_propq(const OSSL_CMP_CTX *ctx);
/* CMP general options: */
# define OSSL_CMP_OPT_LOG_VERBOSITY 0
/* CMP transfer options: */
# define OSSL_CMP_OPT_KEEP_ALIVE 10
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
# define OSSL_CMP_OPT_KEEP_ALIVE 10
# define OSSL_CMP_OPT_MSG_TIMEOUT 11
# define OSSL_CMP_OPT_TOTAL_TIMEOUT 12
# define OSSL_CMP_OPT_USE_TLS 13
/* CMP request options: */
# define OSSL_CMP_OPT_VALIDITY_DAYS 20
# define OSSL_CMP_OPT_SUBJECTALTNAME_NODEFAULT 21
@ -407,6 +502,7 @@ int OSSL_CMP_CTX_reinit(OSSL_CMP_CTX *ctx);
# define OSSL_CMP_OPT_DIGEST_ALGNID 34
# define OSSL_CMP_OPT_IGNORE_KEYUSAGE 35
# define OSSL_CMP_OPT_PERMIT_TA_IN_EXTRACERTS_FOR_IR 36
# define OSSL_CMP_OPT_NO_CACHE_EXTRACERTS 37
int OSSL_CMP_CTX_set_option(OSSL_CMP_CTX *ctx, int opt, int val);
int OSSL_CMP_CTX_get_option(const OSSL_CMP_CTX *ctx, int opt);
/* CMP-specific callback for logging and outputting the error queue: */
@ -420,9 +516,11 @@ int OSSL_CMP_CTX_set1_server(OSSL_CMP_CTX *ctx, const char *address);
int OSSL_CMP_CTX_set_serverPort(OSSL_CMP_CTX *ctx, int port);
int OSSL_CMP_CTX_set1_proxy(OSSL_CMP_CTX *ctx, const char *name);
int OSSL_CMP_CTX_set1_no_proxy(OSSL_CMP_CTX *ctx, const char *names);
# ifndef OPENSSL_NO_HTTP
int OSSL_CMP_CTX_set_http_cb(OSSL_CMP_CTX *ctx, OSSL_HTTP_bio_cb_t cb);
int OSSL_CMP_CTX_set_http_cb_arg(OSSL_CMP_CTX *ctx, void *arg);
void *OSSL_CMP_CTX_get_http_cb_arg(const OSSL_CMP_CTX *ctx);
# endif
typedef OSSL_CMP_MSG *(*OSSL_CMP_transfer_cb_t) (OSSL_CMP_CTX *ctx,
const OSSL_CMP_MSG *req);
int OSSL_CMP_CTX_set_transfer_cb(OSSL_CMP_CTX *ctx, OSSL_CMP_transfer_cb_t cb);
@ -432,7 +530,9 @@ void *OSSL_CMP_CTX_get_transfer_cb_arg(const OSSL_CMP_CTX *ctx);
int OSSL_CMP_CTX_set1_srvCert(OSSL_CMP_CTX *ctx, X509 *cert);
int OSSL_CMP_CTX_set1_expected_sender(OSSL_CMP_CTX *ctx, const X509_NAME *name);
int OSSL_CMP_CTX_set0_trustedStore(OSSL_CMP_CTX *ctx, X509_STORE *store);
# define OSSL_CMP_CTX_set0_trusted OSSL_CMP_CTX_set0_trustedStore
X509_STORE *OSSL_CMP_CTX_get0_trustedStore(const OSSL_CMP_CTX *ctx);
# define OSSL_CMP_CTX_get0_trusted OSSL_CMP_CTX_get0_trustedStore
int OSSL_CMP_CTX_set1_untrusted(OSSL_CMP_CTX *ctx, STACK_OF(X509) *certs);
STACK_OF(X509) *OSSL_CMP_CTX_get0_untrusted(const OSSL_CMP_CTX *ctx);
/* client authentication: */
@ -448,12 +548,15 @@ int OSSL_CMP_CTX_set1_secretValue(OSSL_CMP_CTX *ctx,
int OSSL_CMP_CTX_set1_recipient(OSSL_CMP_CTX *ctx, const X509_NAME *name);
int OSSL_CMP_CTX_push0_geninfo_ITAV(OSSL_CMP_CTX *ctx, OSSL_CMP_ITAV *itav);
int OSSL_CMP_CTX_reset_geninfo_ITAVs(OSSL_CMP_CTX *ctx);
STACK_OF(OSSL_CMP_ITAV)
*OSSL_CMP_CTX_get0_geninfo_ITAVs(const OSSL_CMP_CTX *ctx);
int OSSL_CMP_CTX_set1_extraCertsOut(OSSL_CMP_CTX *ctx,
STACK_OF(X509) *extraCertsOut);
/* certificate template: */
int OSSL_CMP_CTX_set0_newPkey(OSSL_CMP_CTX *ctx, int priv, EVP_PKEY *pkey);
EVP_PKEY *OSSL_CMP_CTX_get0_newPkey(const OSSL_CMP_CTX *ctx, int priv);
int OSSL_CMP_CTX_set1_issuer(OSSL_CMP_CTX *ctx, const X509_NAME *name);
int OSSL_CMP_CTX_set1_serialNumber(OSSL_CMP_CTX *ctx, const ASN1_INTEGER *sn);
int OSSL_CMP_CTX_set1_subjectName(OSSL_CMP_CTX *ctx, const X509_NAME *name);
int OSSL_CMP_CTX_push1_subjectAltName(OSSL_CMP_CTX *ctx,
const GENERAL_NAME *name);
@ -477,6 +580,7 @@ int OSSL_CMP_CTX_get_status(const OSSL_CMP_CTX *ctx);
OSSL_CMP_PKIFREETEXT *OSSL_CMP_CTX_get0_statusString(const OSSL_CMP_CTX *ctx);
int OSSL_CMP_CTX_get_failInfoCode(const OSSL_CMP_CTX *ctx);
# define OSSL_CMP_PKISI_BUFLEN 1024
X509 *OSSL_CMP_CTX_get0_validatedSrvCert(const OSSL_CMP_CTX *ctx);
X509 *OSSL_CMP_CTX_get0_newCert(const OSSL_CMP_CTX *ctx);
STACK_OF(X509) *OSSL_CMP_CTX_get1_newChain(const OSSL_CMP_CTX *ctx);
STACK_OF(X509) *OSSL_CMP_CTX_get1_caPubs(const OSSL_CMP_CTX *ctx);
@ -498,10 +602,13 @@ OSSL_CMP_STATUSINFO_new(int status, int fail_info, const char *text);
ASN1_OCTET_STRING *OSSL_CMP_HDR_get0_transactionID(const
OSSL_CMP_PKIHEADER *hdr);
ASN1_OCTET_STRING *OSSL_CMP_HDR_get0_recipNonce(const OSSL_CMP_PKIHEADER *hdr);
STACK_OF(OSSL_CMP_ITAV)
*OSSL_CMP_HDR_get0_geninfo_ITAVs(const OSSL_CMP_PKIHEADER *hdr);
/* from cmp_msg.c */
OSSL_CMP_PKIHEADER *OSSL_CMP_MSG_get0_header(const OSSL_CMP_MSG *msg);
int OSSL_CMP_MSG_get_bodytype(const OSSL_CMP_MSG *msg);
X509_PUBKEY *OSSL_CMP_MSG_get0_certreq_publickey(const OSSL_CMP_MSG *msg);
int OSSL_CMP_MSG_update_transactionID(OSSL_CMP_CTX *ctx, OSSL_CMP_MSG *msg);
int OSSL_CMP_MSG_update_recipNonce(OSSL_CMP_CTX *ctx, OSSL_CMP_MSG *msg);
OSSL_CRMF_MSG *OSSL_CMP_CTX_setup_CRM(OSSL_CMP_CTX *ctx, int for_KUR, int rid);
@ -517,8 +624,10 @@ int OSSL_CMP_validate_cert_path(const OSSL_CMP_CTX *ctx,
X509_STORE *trusted_store, X509 *cert);
/* from cmp_http.c */
# ifndef OPENSSL_NO_HTTP
OSSL_CMP_MSG *OSSL_CMP_MSG_http_perform(OSSL_CMP_CTX *ctx,
const OSSL_CMP_MSG *req);
# endif
/* from cmp_server.c */
typedef struct ossl_cmp_srv_ctx_st OSSL_CMP_SRV_CTX;
@ -561,6 +670,13 @@ int OSSL_CMP_SRV_CTX_init(OSSL_CMP_SRV_CTX *srv_ctx, void *custom_ctx,
OSSL_CMP_SRV_error_cb_t process_error,
OSSL_CMP_SRV_certConf_cb_t process_certConf,
OSSL_CMP_SRV_pollReq_cb_t process_pollReq);
typedef int (*OSSL_CMP_SRV_delayed_delivery_cb_t)(OSSL_CMP_SRV_CTX *srv_ctx,
const OSSL_CMP_MSG *req);
typedef int (*OSSL_CMP_SRV_clean_transaction_cb_t)(OSSL_CMP_SRV_CTX *srv_ctx,
const ASN1_OCTET_STRING *id);
int OSSL_CMP_SRV_CTX_init_trans(OSSL_CMP_SRV_CTX *srv_ctx,
OSSL_CMP_SRV_delayed_delivery_cb_t delay,
OSSL_CMP_SRV_clean_transaction_cb_t clean);
OSSL_CMP_CTX *OSSL_CMP_SRV_CTX_get0_cmp_ctx(const OSSL_CMP_SRV_CTX *srv_ctx);
void *OSSL_CMP_SRV_CTX_get0_custom_ctx(const OSSL_CMP_SRV_CTX *srv_ctx);
int OSSL_CMP_SRV_CTX_set_send_unprotected_errors(OSSL_CMP_SRV_CTX *srv_ctx,
@ -577,6 +693,8 @@ X509 *OSSL_CMP_exec_certreq(OSSL_CMP_CTX *ctx, int req_type,
# define OSSL_CMP_CR 2
# define OSSL_CMP_P10CR 4
# define OSSL_CMP_KUR 7
# define OSSL_CMP_GENM 21
# define OSSL_CMP_ERROR 23
# define OSSL_CMP_exec_IR_ses(ctx) \
OSSL_CMP_exec_certreq(ctx, OSSL_CMP_IR, NULL)
# define OSSL_CMP_exec_CR_ses(ctx) \
@ -590,6 +708,18 @@ int OSSL_CMP_try_certreq(OSSL_CMP_CTX *ctx, int req_type,
int OSSL_CMP_exec_RR_ses(OSSL_CMP_CTX *ctx);
STACK_OF(OSSL_CMP_ITAV) *OSSL_CMP_exec_GENM_ses(OSSL_CMP_CTX *ctx);
/* from cmp_genm.c */
int OSSL_CMP_get1_caCerts(OSSL_CMP_CTX *ctx, STACK_OF(X509) **out);
int OSSL_CMP_get1_rootCaKeyUpdate(OSSL_CMP_CTX *ctx,
const X509 *oldWithOld, X509 **newWithNew,
X509 **newWithOld, X509 **oldWithNew);
int OSSL_CMP_get1_crlUpdate(OSSL_CMP_CTX *ctx, const X509 *crlcert,
const X509_CRL *last_crl,
X509_CRL **crl);
int OSSL_CMP_get1_certReqTemplate(OSSL_CMP_CTX *ctx,
OSSL_CRMF_CERTTEMPLATE **certTemplate,
OSSL_CMP_ATAVS **keySpec);
# ifdef __cplusplus
}
# endif

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/cms.h.in
*
* Copyright 2008-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 2008-2022 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -31,8 +31,10 @@
extern "C" {
# endif
typedef struct CMS_EnvelopedData_st CMS_EnvelopedData;
typedef struct CMS_ContentInfo_st CMS_ContentInfo;
typedef struct CMS_SignerInfo_st CMS_SignerInfo;
typedef struct CMS_SignedData_st CMS_SignedData;
typedef struct CMS_CertificateChoices CMS_CertificateChoices;
typedef struct CMS_RevocationInfoChoice_st CMS_RevocationInfoChoice;
typedef struct CMS_RecipientInfo_st CMS_RecipientInfo;
@ -147,6 +149,8 @@ SKM_DEFINE_STACK_OF_INTERNAL(CMS_RevocationInfoChoice, CMS_RevocationInfoChoice,
#define sk_CMS_RevocationInfoChoice_set_cmp_func(sk, cmp) ((sk_CMS_RevocationInfoChoice_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_CMS_RevocationInfoChoice_sk_type(sk), ossl_check_CMS_RevocationInfoChoice_compfunc_type(cmp)))
DECLARE_ASN1_ITEM(CMS_EnvelopedData)
DECLARE_ASN1_ALLOC_FUNCTIONS(CMS_SignedData)
DECLARE_ASN1_FUNCTIONS(CMS_ContentInfo)
DECLARE_ASN1_FUNCTIONS(CMS_ReceiptRequest)
DECLARE_ASN1_PRINT_FUNCTION(CMS_ContentInfo)
@ -217,13 +221,16 @@ int SMIME_write_CMS(BIO *bio, CMS_ContentInfo *cms, BIO *data, int flags);
int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont,
unsigned int flags);
int CMS_final_digest(CMS_ContentInfo *cms,
const unsigned char *md, unsigned int mdlen, BIO *dcont,
unsigned int flags);
CMS_ContentInfo *CMS_sign(X509 *signcert, EVP_PKEY *pkey,
STACK_OF(X509) *certs, BIO *data,
unsigned int flags);
CMS_ContentInfo *CMS_sign_ex(X509 *signcert, EVP_PKEY *pkey,
STACK_OF(X509) *certs, BIO *data,
unsigned int flags, OSSL_LIB_CTX *ctx,
unsigned int flags, OSSL_LIB_CTX *libctx,
const char *propq);
CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
@ -233,27 +240,26 @@ CMS_ContentInfo *CMS_sign_receipt(CMS_SignerInfo *si,
int CMS_data(CMS_ContentInfo *cms, BIO *out, unsigned int flags);
CMS_ContentInfo *CMS_data_create(BIO *in, unsigned int flags);
CMS_ContentInfo *CMS_data_create_ex(BIO *in, unsigned int flags,
OSSL_LIB_CTX *ctx, const char *propq);
OSSL_LIB_CTX *libctx, const char *propq);
int CMS_digest_verify(CMS_ContentInfo *cms, BIO *dcont, BIO *out,
unsigned int flags);
CMS_ContentInfo *CMS_digest_create(BIO *in, const EVP_MD *md,
unsigned int flags);
CMS_ContentInfo *CMS_digest_create_ex(BIO *in, const EVP_MD *md,
unsigned int flags, OSSL_LIB_CTX *ctx,
unsigned int flags, OSSL_LIB_CTX *libctx,
const char *propq);
int CMS_EncryptedData_decrypt(CMS_ContentInfo *cms,
const unsigned char *key, size_t keylen,
BIO *dcont, BIO *out, unsigned int flags);
CMS_ContentInfo *CMS_EncryptedData_encrypt(BIO *in, const EVP_CIPHER *cipher,
const unsigned char *key,
size_t keylen, unsigned int flags);
CMS_ContentInfo *CMS_EncryptedData_encrypt_ex(BIO *in, const EVP_CIPHER *cipher,
const unsigned char *key,
size_t keylen, unsigned int flags,
OSSL_LIB_CTX *ctx,
OSSL_LIB_CTX *libctx,
const char *propq);
int CMS_EncryptedData_set1_key(CMS_ContentInfo *cms, const EVP_CIPHER *ciph,
@ -272,7 +278,7 @@ CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in,
const EVP_CIPHER *cipher, unsigned int flags);
CMS_ContentInfo *CMS_encrypt_ex(STACK_OF(X509) *certs, BIO *in,
const EVP_CIPHER *cipher, unsigned int flags,
OSSL_LIB_CTX *ctx, const char *propq);
OSSL_LIB_CTX *libctx, const char *propq);
int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert,
BIO *dcont, BIO *out, unsigned int flags);
@ -291,12 +297,16 @@ int CMS_RecipientInfo_type(CMS_RecipientInfo *ri);
EVP_PKEY_CTX *CMS_RecipientInfo_get0_pkey_ctx(CMS_RecipientInfo *ri);
CMS_ContentInfo *CMS_AuthEnvelopedData_create(const EVP_CIPHER *cipher);
CMS_ContentInfo *
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *ctx,
CMS_AuthEnvelopedData_create_ex(const EVP_CIPHER *cipher, OSSL_LIB_CTX *libctx,
const char *propq);
CMS_ContentInfo *CMS_EnvelopedData_create(const EVP_CIPHER *cipher);
CMS_ContentInfo *CMS_EnvelopedData_create_ex(const EVP_CIPHER *cipher,
OSSL_LIB_CTX *ctx,
OSSL_LIB_CTX *libctx,
const char *propq);
BIO *CMS_EnvelopedData_decrypt(CMS_EnvelopedData *env, BIO *detached_data,
EVP_PKEY *pkey, X509 *cert,
ASN1_OCTET_STRING *secret, unsigned int flags,
OSSL_LIB_CTX *libctx, const char *propq);
CMS_RecipientInfo *CMS_add1_recipient_cert(CMS_ContentInfo *cms,
X509 *recip, unsigned int flags);
@ -385,6 +395,11 @@ ASN1_OCTET_STRING *CMS_SignerInfo_get0_signature(CMS_SignerInfo *si);
int CMS_SignerInfo_sign(CMS_SignerInfo *si);
int CMS_SignerInfo_verify(CMS_SignerInfo *si);
int CMS_SignerInfo_verify_content(CMS_SignerInfo *si, BIO *chain);
BIO *CMS_SignedData_verify(CMS_SignedData *sd, BIO *detached_data,
STACK_OF(X509) *scerts, X509_STORE *store,
STACK_OF(X509) *extra, STACK_OF(X509_CRL) *crls,
unsigned int flags,
OSSL_LIB_CTX *libctx, const char *propq);
int CMS_add_smimecap(CMS_SignerInfo *si, STACK_OF(X509_ALGOR) *algs);
int CMS_add_simple_smimecap(STACK_OF(X509_ALGOR) **algs,
@ -441,7 +456,7 @@ CMS_ReceiptRequest *CMS_ReceiptRequest_create0_ex(
unsigned char *id, int idlen, int allorfirst,
STACK_OF(GENERAL_NAMES) *receiptList,
STACK_OF(GENERAL_NAMES) *receiptsTo,
OSSL_LIB_CTX *ctx);
OSSL_LIB_CTX *libctx);
int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr);
void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr,

View File

@ -0,0 +1,98 @@
/*
* Copyright 2015-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
#ifndef OPENSSL_COMP_H
# define OPENSSL_COMP_H
# pragma once
# include <openssl/macros.h>
# ifndef OPENSSL_NO_DEPRECATED_3_0
# define HEADER_COMP_H
# endif
# include <openssl/opensslconf.h>
# include <openssl/crypto.h>
# include <openssl/comperr.h>
# ifdef __cplusplus
extern "C" {
# endif
# ifndef OPENSSL_NO_COMP
COMP_CTX *COMP_CTX_new(COMP_METHOD *meth);
const COMP_METHOD *COMP_CTX_get_method(const COMP_CTX *ctx);
int COMP_CTX_get_type(const COMP_CTX* comp);
int COMP_get_type(const COMP_METHOD *meth);
const char *COMP_get_name(const COMP_METHOD *meth);
void COMP_CTX_free(COMP_CTX *ctx);
int COMP_compress_block(COMP_CTX *ctx, unsigned char *out, int olen,
unsigned char *in, int ilen);
int COMP_expand_block(COMP_CTX *ctx, unsigned char *out, int olen,
unsigned char *in, int ilen);
COMP_METHOD *COMP_zlib(void);
COMP_METHOD *COMP_zlib_oneshot(void);
COMP_METHOD *COMP_brotli(void);
COMP_METHOD *COMP_brotli_oneshot(void);
COMP_METHOD *COMP_zstd(void);
COMP_METHOD *COMP_zstd_oneshot(void);
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
# define COMP_zlib_cleanup() while(0) continue
# endif
# ifdef OPENSSL_BIO_H
const BIO_METHOD *BIO_f_zlib(void);
const BIO_METHOD *BIO_f_brotli(void);
const BIO_METHOD *BIO_f_zstd(void);
# endif
# endif
typedef struct ssl_comp_st SSL_COMP;
SKM_DEFINE_STACK_OF_INTERNAL(SSL_COMP, SSL_COMP, SSL_COMP)
#define sk_SSL_COMP_num(sk) OPENSSL_sk_num(ossl_check_const_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_value(sk, idx) ((SSL_COMP *)OPENSSL_sk_value(ossl_check_const_SSL_COMP_sk_type(sk), (idx)))
#define sk_SSL_COMP_new(cmp) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new(ossl_check_SSL_COMP_compfunc_type(cmp)))
#define sk_SSL_COMP_new_null() ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new_null())
#define sk_SSL_COMP_new_reserve(cmp, n) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new_reserve(ossl_check_SSL_COMP_compfunc_type(cmp), (n)))
#define sk_SSL_COMP_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SSL_COMP_sk_type(sk), (n))
#define sk_SSL_COMP_free(sk) OPENSSL_sk_free(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_zero(sk) OPENSSL_sk_zero(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_delete(sk, i) ((SSL_COMP *)OPENSSL_sk_delete(ossl_check_SSL_COMP_sk_type(sk), (i)))
#define sk_SSL_COMP_delete_ptr(sk, ptr) ((SSL_COMP *)OPENSSL_sk_delete_ptr(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr)))
#define sk_SSL_COMP_push(sk, ptr) OPENSSL_sk_push(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_pop(sk) ((SSL_COMP *)OPENSSL_sk_pop(ossl_check_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_shift(sk) ((SSL_COMP *)OPENSSL_sk_shift(ossl_check_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SSL_COMP_sk_type(sk),ossl_check_SSL_COMP_freefunc_type(freefunc))
#define sk_SSL_COMP_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr), (idx))
#define sk_SSL_COMP_set(sk, idx, ptr) ((SSL_COMP *)OPENSSL_sk_set(ossl_check_SSL_COMP_sk_type(sk), (idx), ossl_check_SSL_COMP_type(ptr)))
#define sk_SSL_COMP_find(sk, ptr) OPENSSL_sk_find(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr), pnum)
#define sk_SSL_COMP_sort(sk) OPENSSL_sk_sort(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_dup(sk) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_dup(ossl_check_const_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_deep_copy(ossl_check_const_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_copyfunc_type(copyfunc), ossl_check_SSL_COMP_freefunc_type(freefunc)))
#define sk_SSL_COMP_set_cmp_func(sk, cmp) ((sk_SSL_COMP_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_compfunc_type(cmp)))
# ifdef __cplusplus
}
# endif
#endif

View File

@ -27,6 +27,9 @@
# include <openssl/e_os2.h>
# include <openssl/types.h>
# include <openssl/conferr.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -65,7 +68,7 @@ SKM_DEFINE_STACK_OF_INTERNAL(CONF_VALUE, CONF_VALUE, CONF_VALUE)
#define sk_CONF_VALUE_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(CONF_VALUE) *)OPENSSL_sk_deep_copy(ossl_check_const_CONF_VALUE_sk_type(sk), ossl_check_CONF_VALUE_copyfunc_type(copyfunc), ossl_check_CONF_VALUE_freefunc_type(freefunc)))
#define sk_CONF_VALUE_set_cmp_func(sk, cmp) ((sk_CONF_VALUE_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_CONF_VALUE_sk_type(sk), ossl_check_CONF_VALUE_compfunc_type(cmp)))
DEFINE_LHASH_OF_INTERNAL(CONF_VALUE);
#define lh_CONF_VALUE_new(hfn, cmp) ((LHASH_OF(CONF_VALUE) *)OPENSSL_LH_new(ossl_check_CONF_VALUE_lh_hashfunc_type(hfn), ossl_check_CONF_VALUE_lh_compfunc_type(cmp)))
#define lh_CONF_VALUE_new(hfn, cmp) ((LHASH_OF(CONF_VALUE) *)OPENSSL_LH_set_thunks(OPENSSL_LH_new(ossl_check_CONF_VALUE_lh_hashfunc_type(hfn), ossl_check_CONF_VALUE_lh_compfunc_type(cmp)), lh_CONF_VALUE_hash_thunk, lh_CONF_VALUE_comp_thunk, lh_CONF_VALUE_doall_thunk, lh_CONF_VALUE_doall_arg_thunk))
#define lh_CONF_VALUE_free(lh) OPENSSL_LH_free(ossl_check_CONF_VALUE_lh_type(lh))
#define lh_CONF_VALUE_flush(lh) OPENSSL_LH_flush(ossl_check_CONF_VALUE_lh_type(lh))
#define lh_CONF_VALUE_insert(lh, ptr) ((CONF_VALUE *)OPENSSL_LH_insert(ossl_check_CONF_VALUE_lh_type(lh), ossl_check_CONF_VALUE_lh_plain_type(ptr)))

View File

@ -43,6 +43,9 @@ extern "C" {
# ifndef OPENSSL_NO_APPS
# define OPENSSL_NO_APPS
# endif
# ifndef OPENSSL_NO_ARGON2
# define OPENSSL_NO_ARGON2
# endif
# ifndef OPENSSL_NO_ARIA
# define OPENSSL_NO_ARIA
# endif
@ -64,6 +67,12 @@ extern "C" {
# ifndef OPENSSL_NO_BLAKE2
# define OPENSSL_NO_BLAKE2
# endif
# ifndef OPENSSL_NO_BROTLI
# define OPENSSL_NO_BROTLI
# endif
# ifndef OPENSSL_NO_BROTLI_DYNAMIC
# define OPENSSL_NO_BROTLI_DYNAMIC
# endif
# ifndef OPENSSL_NO_CAMELLIA
# define OPENSSL_NO_CAMELLIA
# endif
@ -97,6 +106,12 @@ extern "C" {
# ifndef OPENSSL_NO_CT
# define OPENSSL_NO_CT
# endif
# ifndef OPENSSL_NO_DEFAULT_THREAD_POOL
# define OPENSSL_NO_DEFAULT_THREAD_POOL
# endif
# ifndef OPENSSL_NO_DEMOS
# define OPENSSL_NO_DEMOS
# endif
# ifndef OPENSSL_NO_DEPRECATED
# define OPENSSL_NO_DEPRECATED
# endif
@ -151,6 +166,9 @@ extern "C" {
# ifndef OPENSSL_NO_FILENAMES
# define OPENSSL_NO_FILENAMES
# endif
# ifndef OPENSSL_NO_FIPS_POST
# define OPENSSL_NO_FIPS_POST
# endif
# ifndef OPENSSL_NO_FIPS_SECURITYCHECKS
# define OPENSSL_NO_FIPS_SECURITYCHECKS
# endif
@ -163,9 +181,15 @@ extern "C" {
# ifndef OPENSSL_NO_GOST
# define OPENSSL_NO_GOST
# endif
# ifndef OPENSSL_NO_H3DEMO
# define OPENSSL_NO_H3DEMO
# endif
# ifndef OPENSSL_NO_IDEA
# define OPENSSL_NO_IDEA
# endif
# ifndef OPENSSL_NO_JITTER
# define OPENSSL_NO_JITTER
# endif
# ifndef OPENSSL_NO_KTLS
# define OPENSSL_NO_KTLS
# endif
@ -199,6 +223,9 @@ extern "C" {
# ifndef OPENSSL_NO_PADLOCKENG
# define OPENSSL_NO_PADLOCKENG
# endif
# ifndef OPENSSL_NO_PIE
# define OPENSSL_NO_PIE
# endif
# ifndef OPENSSL_NO_POLY1305
# define OPENSSL_NO_POLY1305
# endif
@ -208,6 +235,12 @@ extern "C" {
# ifndef OPENSSL_NO_PSK
# define OPENSSL_NO_PSK
# endif
# ifndef OPENSSL_NO_QLOG
# define OPENSSL_NO_QLOG
# endif
# ifndef OPENSSL_NO_QUIC
# define OPENSSL_NO_QUIC
# endif
# ifndef OPENSSL_NO_RC2
# define OPENSSL_NO_RC2
# endif
@ -268,6 +301,12 @@ extern "C" {
# ifndef OPENSSL_NO_TESTS
# define OPENSSL_NO_TESTS
# endif
# ifndef OPENSSL_NO_TFO
# define OPENSSL_NO_TFO
# endif
# ifndef OPENSSL_NO_THREAD_POOL
# define OPENSSL_NO_THREAD_POOL
# endif
# ifndef OPENSSL_NO_TLS1_3
# define OPENSSL_NO_TLS1_3
# endif
@ -286,6 +325,9 @@ extern "C" {
# ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
# endif
# ifndef OPENSSL_NO_UNSTABLE_QLOG
# define OPENSSL_NO_UNSTABLE_QLOG
# endif
# ifndef OPENSSL_NO_UPLINK
# define OPENSSL_NO_UPLINK
# endif
@ -295,6 +337,21 @@ extern "C" {
# ifndef OPENSSL_NO_WHIRLPOOL
# define OPENSSL_NO_WHIRLPOOL
# endif
# ifndef OPENSSL_NO_WINSTORE
# define OPENSSL_NO_WINSTORE
# endif
# ifndef OPENSSL_NO_ZLIB
# define OPENSSL_NO_ZLIB
# endif
# ifndef OPENSSL_NO_ZLIB_DYNAMIC
# define OPENSSL_NO_ZLIB_DYNAMIC
# endif
# ifndef OPENSSL_NO_ZSTD
# define OPENSSL_NO_ZSTD
# endif
# ifndef OPENSSL_NO_ZSTD_DYNAMIC
# define OPENSSL_NO_ZSTD_DYNAMIC
# endif
# ifndef OPENSSL_NO_DYNAMIC_ENGINE
# define OPENSSL_NO_DYNAMIC_ENGINE
# endif
@ -316,6 +373,12 @@ extern "C" {
# define RC4_INT unsigned int
# if defined(OPENSSL_NO_COMP) || (defined(OPENSSL_NO_BROTLI) && defined(OPENSSL_NO_ZSTD) && defined(OPENSSL_NO_ZLIB))
# define OPENSSL_NO_COMP_ALG
# else
# undef OPENSSL_NO_COMP_ALG
# endif
# ifdef __cplusplus
}
# endif

View File

@ -43,6 +43,9 @@ extern "C" {
# ifndef OPENSSL_NO_APPS
# define OPENSSL_NO_APPS
# endif
# ifndef OPENSSL_NO_ARGON2
# define OPENSSL_NO_ARGON2
# endif
# ifndef OPENSSL_NO_ARIA
# define OPENSSL_NO_ARIA
# endif
@ -64,6 +67,12 @@ extern "C" {
# ifndef OPENSSL_NO_BLAKE2
# define OPENSSL_NO_BLAKE2
# endif
# ifndef OPENSSL_NO_BROTLI
# define OPENSSL_NO_BROTLI
# endif
# ifndef OPENSSL_NO_BROTLI_DYNAMIC
# define OPENSSL_NO_BROTLI_DYNAMIC
# endif
# ifndef OPENSSL_NO_CAMELLIA
# define OPENSSL_NO_CAMELLIA
# endif
@ -97,6 +106,12 @@ extern "C" {
# ifndef OPENSSL_NO_CT
# define OPENSSL_NO_CT
# endif
# ifndef OPENSSL_NO_DEFAULT_THREAD_POOL
# define OPENSSL_NO_DEFAULT_THREAD_POOL
# endif
# ifndef OPENSSL_NO_DEMOS
# define OPENSSL_NO_DEMOS
# endif
# ifndef OPENSSL_NO_DEPRECATED
# define OPENSSL_NO_DEPRECATED
# endif
@ -145,6 +160,9 @@ extern "C" {
# ifndef OPENSSL_NO_ECDSA
# define OPENSSL_NO_ECDSA
# endif
# ifndef OPENSSL_NO_ECX
# define OPENSSL_NO_ECX
# endif
# ifndef OPENSSL_NO_EGD
# define OPENSSL_NO_EGD
# endif
@ -160,6 +178,9 @@ extern "C" {
# ifndef OPENSSL_NO_FILENAMES
# define OPENSSL_NO_FILENAMES
# endif
# ifndef OPENSSL_NO_FIPS_POST
# define OPENSSL_NO_FIPS_POST
# endif
# ifndef OPENSSL_NO_FIPS_SECURITYCHECKS
# define OPENSSL_NO_FIPS_SECURITYCHECKS
# endif
@ -172,9 +193,15 @@ extern "C" {
# ifndef OPENSSL_NO_GOST
# define OPENSSL_NO_GOST
# endif
# ifndef OPENSSL_NO_H3DEMO
# define OPENSSL_NO_H3DEMO
# endif
# ifndef OPENSSL_NO_IDEA
# define OPENSSL_NO_IDEA
# endif
# ifndef OPENSSL_NO_JITTER
# define OPENSSL_NO_JITTER
# endif
# ifndef OPENSSL_NO_KTLS
# define OPENSSL_NO_KTLS
# endif
@ -208,6 +235,9 @@ extern "C" {
# ifndef OPENSSL_NO_PADLOCKENG
# define OPENSSL_NO_PADLOCKENG
# endif
# ifndef OPENSSL_NO_PIE
# define OPENSSL_NO_PIE
# endif
# ifndef OPENSSL_NO_POLY1305
# define OPENSSL_NO_POLY1305
# endif
@ -217,6 +247,12 @@ extern "C" {
# ifndef OPENSSL_NO_PSK
# define OPENSSL_NO_PSK
# endif
# ifndef OPENSSL_NO_QLOG
# define OPENSSL_NO_QLOG
# endif
# ifndef OPENSSL_NO_QUIC
# define OPENSSL_NO_QUIC
# endif
# ifndef OPENSSL_NO_RC2
# define OPENSSL_NO_RC2
# endif
@ -277,6 +313,12 @@ extern "C" {
# ifndef OPENSSL_NO_TESTS
# define OPENSSL_NO_TESTS
# endif
# ifndef OPENSSL_NO_TFO
# define OPENSSL_NO_TFO
# endif
# ifndef OPENSSL_NO_THREAD_POOL
# define OPENSSL_NO_THREAD_POOL
# endif
# ifndef OPENSSL_NO_TLS1_3
# define OPENSSL_NO_TLS1_3
# endif
@ -295,6 +337,9 @@ extern "C" {
# ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
# endif
# ifndef OPENSSL_NO_UNSTABLE_QLOG
# define OPENSSL_NO_UNSTABLE_QLOG
# endif
# ifndef OPENSSL_NO_UPLINK
# define OPENSSL_NO_UPLINK
# endif
@ -304,6 +349,21 @@ extern "C" {
# ifndef OPENSSL_NO_WHIRLPOOL
# define OPENSSL_NO_WHIRLPOOL
# endif
# ifndef OPENSSL_NO_WINSTORE
# define OPENSSL_NO_WINSTORE
# endif
# ifndef OPENSSL_NO_ZLIB
# define OPENSSL_NO_ZLIB
# endif
# ifndef OPENSSL_NO_ZLIB_DYNAMIC
# define OPENSSL_NO_ZLIB_DYNAMIC
# endif
# ifndef OPENSSL_NO_ZSTD
# define OPENSSL_NO_ZSTD
# endif
# ifndef OPENSSL_NO_ZSTD_DYNAMIC
# define OPENSSL_NO_ZSTD_DYNAMIC
# endif
# ifndef OPENSSL_NO_DYNAMIC_ENGINE
# define OPENSSL_NO_DYNAMIC_ENGINE
# endif
@ -325,6 +385,12 @@ extern "C" {
# define RC4_INT unsigned int
# if defined(OPENSSL_NO_COMP) || (defined(OPENSSL_NO_BROTLI) && defined(OPENSSL_NO_ZSTD) && defined(OPENSSL_NO_ZLIB))
# define OPENSSL_NO_COMP_ALG
# else
# undef OPENSSL_NO_COMP_ALG
# endif
# ifdef __cplusplus
}
# endif

View File

@ -0,0 +1,545 @@
/*
* WARNING: do not edit!
* Generated by Makefile from include/openssl/core_names.h.in
*
* Copyright 2019-2023 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
#ifndef OPENSSL_CORE_NAMES_H
# define OPENSSL_CORE_NAMES_H
# pragma once
# ifdef __cplusplus
extern "C" {
# endif
/* OSSL_CIPHER_PARAM_CTS_MODE Values */
# define OSSL_CIPHER_CTS_MODE_CS1 "CS1"
# define OSSL_CIPHER_CTS_MODE_CS2 "CS2"
# define OSSL_CIPHER_CTS_MODE_CS3 "CS3"
/* Known CIPHER names (not a complete list) */
# define OSSL_CIPHER_NAME_AES_128_GCM_SIV "AES-128-GCM-SIV"
# define OSSL_CIPHER_NAME_AES_192_GCM_SIV "AES-192-GCM-SIV"
# define OSSL_CIPHER_NAME_AES_256_GCM_SIV "AES-256-GCM-SIV"
/* Known DIGEST names (not a complete list) */
# define OSSL_DIGEST_NAME_MD5 "MD5"
# define OSSL_DIGEST_NAME_MD5_SHA1 "MD5-SHA1"
# define OSSL_DIGEST_NAME_SHA1 "SHA1"
# define OSSL_DIGEST_NAME_SHA2_224 "SHA2-224"
# define OSSL_DIGEST_NAME_SHA2_256 "SHA2-256"
# define OSSL_DIGEST_NAME_SHA2_256_192 "SHA2-256/192"
# define OSSL_DIGEST_NAME_SHA2_384 "SHA2-384"
# define OSSL_DIGEST_NAME_SHA2_512 "SHA2-512"
# define OSSL_DIGEST_NAME_SHA2_512_224 "SHA2-512/224"
# define OSSL_DIGEST_NAME_SHA2_512_256 "SHA2-512/256"
# define OSSL_DIGEST_NAME_MD2 "MD2"
# define OSSL_DIGEST_NAME_MD4 "MD4"
# define OSSL_DIGEST_NAME_MDC2 "MDC2"
# define OSSL_DIGEST_NAME_RIPEMD160 "RIPEMD160"
# define OSSL_DIGEST_NAME_SHA3_224 "SHA3-224"
# define OSSL_DIGEST_NAME_SHA3_256 "SHA3-256"
# define OSSL_DIGEST_NAME_SHA3_384 "SHA3-384"
# define OSSL_DIGEST_NAME_SHA3_512 "SHA3-512"
# define OSSL_DIGEST_NAME_KECCAK_KMAC128 "KECCAK-KMAC-128"
# define OSSL_DIGEST_NAME_KECCAK_KMAC256 "KECCAK-KMAC-256"
# define OSSL_DIGEST_NAME_SM3 "SM3"
/* Known MAC names */
# define OSSL_MAC_NAME_BLAKE2BMAC "BLAKE2BMAC"
# define OSSL_MAC_NAME_BLAKE2SMAC "BLAKE2SMAC"
# define OSSL_MAC_NAME_CMAC "CMAC"
# define OSSL_MAC_NAME_GMAC "GMAC"
# define OSSL_MAC_NAME_HMAC "HMAC"
# define OSSL_MAC_NAME_KMAC128 "KMAC128"
# define OSSL_MAC_NAME_KMAC256 "KMAC256"
# define OSSL_MAC_NAME_POLY1305 "POLY1305"
# define OSSL_MAC_NAME_SIPHASH "SIPHASH"
/* Known KDF names */
# define OSSL_KDF_NAME_HKDF "HKDF"
# define OSSL_KDF_NAME_TLS1_3_KDF "TLS13-KDF"
# define OSSL_KDF_NAME_PBKDF1 "PBKDF1"
# define OSSL_KDF_NAME_PBKDF2 "PBKDF2"
# define OSSL_KDF_NAME_SCRYPT "SCRYPT"
# define OSSL_KDF_NAME_SSHKDF "SSHKDF"
# define OSSL_KDF_NAME_SSKDF "SSKDF"
# define OSSL_KDF_NAME_TLS1_PRF "TLS1-PRF"
# define OSSL_KDF_NAME_X942KDF_ASN1 "X942KDF-ASN1"
# define OSSL_KDF_NAME_X942KDF_CONCAT "X942KDF-CONCAT"
# define OSSL_KDF_NAME_X963KDF "X963KDF"
# define OSSL_KDF_NAME_KBKDF "KBKDF"
# define OSSL_KDF_NAME_KRB5KDF "KRB5KDF"
# define OSSL_KDF_NAME_HMACDRBGKDF "HMAC-DRBG-KDF"
/* RSA padding modes */
# define OSSL_PKEY_RSA_PAD_MODE_NONE "none"
# define OSSL_PKEY_RSA_PAD_MODE_PKCSV15 "pkcs1"
# define OSSL_PKEY_RSA_PAD_MODE_OAEP "oaep"
# define OSSL_PKEY_RSA_PAD_MODE_X931 "x931"
# define OSSL_PKEY_RSA_PAD_MODE_PSS "pss"
/* RSA pss padding salt length */
# define OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST "digest"
# define OSSL_PKEY_RSA_PSS_SALT_LEN_MAX "max"
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO "auto"
# define OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX "auto-digestmax"
/* OSSL_PKEY_PARAM_EC_ENCODING values */
# define OSSL_PKEY_EC_ENCODING_EXPLICIT "explicit"
# define OSSL_PKEY_EC_ENCODING_GROUP "named_curve"
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_UNCOMPRESSED "uncompressed"
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_COMPRESSED "compressed"
# define OSSL_PKEY_EC_POINT_CONVERSION_FORMAT_HYBRID "hybrid"
# define OSSL_PKEY_EC_GROUP_CHECK_DEFAULT "default"
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED "named"
# define OSSL_PKEY_EC_GROUP_CHECK_NAMED_NIST "named-nist"
/* OSSL_KEM_PARAM_OPERATION values */
#define OSSL_KEM_PARAM_OPERATION_RSASVE "RSASVE"
#define OSSL_KEM_PARAM_OPERATION_DHKEM "DHKEM"
/* Parameter name definitions - generated by util/perl/OpenSSL/paramnames.pm */
# define OSSL_ALG_PARAM_ALGORITHM_ID "algorithm-id"
# define OSSL_ALG_PARAM_ALGORITHM_ID_PARAMS "algorithm-id-params"
# define OSSL_ALG_PARAM_CIPHER "cipher"
# define OSSL_ALG_PARAM_DIGEST "digest"
# define OSSL_ALG_PARAM_ENGINE "engine"
# define OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR "fips-indicator"
# define OSSL_ALG_PARAM_MAC "mac"
# define OSSL_ALG_PARAM_PROPERTIES "properties"
# define OSSL_ASYM_CIPHER_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
# define OSSL_ASYM_CIPHER_PARAM_ENGINE OSSL_PKEY_PARAM_ENGINE
# define OSSL_ASYM_CIPHER_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_ASYM_CIPHER_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_ASYM_CIPHER_PARAM_FIPS_RSA_PKCS15_PAD_DISABLED OSSL_PROV_PARAM_RSA_PKCS15_PAD_DISABLED
# define OSSL_ASYM_CIPHER_PARAM_IMPLICIT_REJECTION "implicit-rejection"
# define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
# define OSSL_ASYM_CIPHER_PARAM_MGF1_DIGEST_PROPS OSSL_PKEY_PARAM_MGF1_PROPERTIES
# define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST OSSL_ALG_PARAM_DIGEST
# define OSSL_ASYM_CIPHER_PARAM_OAEP_DIGEST_PROPS "digest-props"
# define OSSL_ASYM_CIPHER_PARAM_OAEP_LABEL "oaep-label"
# define OSSL_ASYM_CIPHER_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
# define OSSL_ASYM_CIPHER_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
# define OSSL_ASYM_CIPHER_PARAM_TLS_CLIENT_VERSION "tls-client-version"
# define OSSL_ASYM_CIPHER_PARAM_TLS_NEGOTIATED_VERSION "tls-negotiated-version"
# define OSSL_CAPABILITY_TLS_GROUP_ALG "tls-group-alg"
# define OSSL_CAPABILITY_TLS_GROUP_ID "tls-group-id"
# define OSSL_CAPABILITY_TLS_GROUP_IS_KEM "tls-group-is-kem"
# define OSSL_CAPABILITY_TLS_GROUP_MAX_DTLS "tls-max-dtls"
# define OSSL_CAPABILITY_TLS_GROUP_MAX_TLS "tls-max-tls"
# define OSSL_CAPABILITY_TLS_GROUP_MIN_DTLS "tls-min-dtls"
# define OSSL_CAPABILITY_TLS_GROUP_MIN_TLS "tls-min-tls"
# define OSSL_CAPABILITY_TLS_GROUP_NAME "tls-group-name"
# define OSSL_CAPABILITY_TLS_GROUP_NAME_INTERNAL "tls-group-name-internal"
# define OSSL_CAPABILITY_TLS_GROUP_SECURITY_BITS "tls-group-sec-bits"
# define OSSL_CAPABILITY_TLS_SIGALG_CODE_POINT "tls-sigalg-code-point"
# define OSSL_CAPABILITY_TLS_SIGALG_HASH_NAME "tls-sigalg-hash-name"
# define OSSL_CAPABILITY_TLS_SIGALG_HASH_OID "tls-sigalg-hash-oid"
# define OSSL_CAPABILITY_TLS_SIGALG_IANA_NAME "tls-sigalg-iana-name"
# define OSSL_CAPABILITY_TLS_SIGALG_KEYTYPE "tls-sigalg-keytype"
# define OSSL_CAPABILITY_TLS_SIGALG_KEYTYPE_OID "tls-sigalg-keytype-oid"
# define OSSL_CAPABILITY_TLS_SIGALG_MAX_TLS "tls-max-tls"
# define OSSL_CAPABILITY_TLS_SIGALG_MIN_TLS "tls-min-tls"
# define OSSL_CAPABILITY_TLS_SIGALG_NAME "tls-sigalg-name"
# define OSSL_CAPABILITY_TLS_SIGALG_OID "tls-sigalg-oid"
# define OSSL_CAPABILITY_TLS_SIGALG_SECURITY_BITS "tls-sigalg-sec-bits"
# define OSSL_CAPABILITY_TLS_SIGALG_SIG_NAME "tls-sigalg-sig-name"
# define OSSL_CAPABILITY_TLS_SIGALG_SIG_OID "tls-sigalg-sig-oid"
# define OSSL_CIPHER_PARAM_AEAD "aead"
# define OSSL_CIPHER_PARAM_AEAD_IVLEN OSSL_CIPHER_PARAM_IVLEN
# define OSSL_CIPHER_PARAM_AEAD_IV_GENERATED "iv-generated"
# define OSSL_CIPHER_PARAM_AEAD_MAC_KEY "mackey"
# define OSSL_CIPHER_PARAM_AEAD_TAG "tag"
# define OSSL_CIPHER_PARAM_AEAD_TAGLEN "taglen"
# define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD "tlsaad"
# define OSSL_CIPHER_PARAM_AEAD_TLS1_AAD_PAD "tlsaadpad"
# define OSSL_CIPHER_PARAM_AEAD_TLS1_GET_IV_GEN "tlsivgen"
# define OSSL_CIPHER_PARAM_AEAD_TLS1_IV_FIXED "tlsivfixed"
# define OSSL_CIPHER_PARAM_AEAD_TLS1_SET_IV_INV "tlsivinv"
# define OSSL_CIPHER_PARAM_ALGORITHM_ID OSSL_ALG_PARAM_ALGORITHM_ID
# define OSSL_CIPHER_PARAM_ALGORITHM_ID_PARAMS OSSL_ALG_PARAM_ALGORITHM_ID_PARAMS
# define OSSL_CIPHER_PARAM_ALGORITHM_ID_PARAMS_OLD "alg_id_param"
# define OSSL_CIPHER_PARAM_BLOCK_SIZE "blocksize"
# define OSSL_CIPHER_PARAM_CTS "cts"
# define OSSL_CIPHER_PARAM_CTS_MODE "cts_mode"
# define OSSL_CIPHER_PARAM_CUSTOM_IV "custom-iv"
# define OSSL_CIPHER_PARAM_DECRYPT_ONLY "decrypt-only"
# define OSSL_CIPHER_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_CIPHER_PARAM_FIPS_ENCRYPT_CHECK "encrypt-check"
# define OSSL_CIPHER_PARAM_HAS_RAND_KEY "has-randkey"
# define OSSL_CIPHER_PARAM_IV "iv"
# define OSSL_CIPHER_PARAM_IVLEN "ivlen"
# define OSSL_CIPHER_PARAM_KEYLEN "keylen"
# define OSSL_CIPHER_PARAM_MODE "mode"
# define OSSL_CIPHER_PARAM_NUM "num"
# define OSSL_CIPHER_PARAM_PADDING "padding"
# define OSSL_CIPHER_PARAM_RANDOM_KEY "randkey"
# define OSSL_CIPHER_PARAM_RC2_KEYBITS "keybits"
# define OSSL_CIPHER_PARAM_ROUNDS "rounds"
# define OSSL_CIPHER_PARAM_SPEED "speed"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK "tls-multi"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD "tls1multi_aad"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_AAD_PACKLEN "tls1multi_aadpacklen"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC "tls1multi_enc"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_IN "tls1multi_encin"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_ENC_LEN "tls1multi_enclen"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_INTERLEAVE "tls1multi_interleave"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_BUFSIZE "tls1multi_maxbufsz"
# define OSSL_CIPHER_PARAM_TLS1_MULTIBLOCK_MAX_SEND_FRAGMENT "tls1multi_maxsndfrag"
# define OSSL_CIPHER_PARAM_TLS_MAC "tls-mac"
# define OSSL_CIPHER_PARAM_TLS_MAC_SIZE "tls-mac-size"
# define OSSL_CIPHER_PARAM_TLS_VERSION "tls-version"
# define OSSL_CIPHER_PARAM_UPDATED_IV "updated-iv"
# define OSSL_CIPHER_PARAM_USE_BITS "use-bits"
# define OSSL_CIPHER_PARAM_XTS_STANDARD "xts_standard"
# define OSSL_DECODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_DIGEST_PARAM_ALGID_ABSENT "algid-absent"
# define OSSL_DIGEST_PARAM_BLOCK_SIZE "blocksize"
# define OSSL_DIGEST_PARAM_MICALG "micalg"
# define OSSL_DIGEST_PARAM_PAD_TYPE "pad-type"
# define OSSL_DIGEST_PARAM_SIZE "size"
# define OSSL_DIGEST_PARAM_SSL3_MS "ssl3-ms"
# define OSSL_DIGEST_PARAM_XOF "xof"
# define OSSL_DIGEST_PARAM_XOFLEN "xoflen"
# define OSSL_DRBG_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
# define OSSL_DRBG_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
# define OSSL_DRBG_PARAM_ENTROPY_REQUIRED "entropy_required"
# define OSSL_DRBG_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_DRBG_PARAM_FIPS_DIGEST_CHECK OSSL_PKEY_PARAM_FIPS_DIGEST_CHECK
# define OSSL_DRBG_PARAM_MAC OSSL_ALG_PARAM_MAC
# define OSSL_DRBG_PARAM_MAX_ADINLEN "max_adinlen"
# define OSSL_DRBG_PARAM_MAX_ENTROPYLEN "max_entropylen"
# define OSSL_DRBG_PARAM_MAX_LENGTH "maxium_length"
# define OSSL_DRBG_PARAM_MAX_NONCELEN "max_noncelen"
# define OSSL_DRBG_PARAM_MAX_PERSLEN "max_perslen"
# define OSSL_DRBG_PARAM_MIN_ENTROPYLEN "min_entropylen"
# define OSSL_DRBG_PARAM_MIN_LENGTH "minium_length"
# define OSSL_DRBG_PARAM_MIN_NONCELEN "min_noncelen"
# define OSSL_DRBG_PARAM_PREDICTION_RESISTANCE "prediction_resistance"
# define OSSL_DRBG_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_DRBG_PARAM_RANDOM_DATA "random_data"
# define OSSL_DRBG_PARAM_RESEED_COUNTER "reseed_counter"
# define OSSL_DRBG_PARAM_RESEED_REQUESTS "reseed_requests"
# define OSSL_DRBG_PARAM_RESEED_TIME "reseed_time"
# define OSSL_DRBG_PARAM_RESEED_TIME_INTERVAL "reseed_time_interval"
# define OSSL_DRBG_PARAM_SIZE "size"
# define OSSL_DRBG_PARAM_USE_DF "use_derivation_function"
# define OSSL_ENCODER_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
# define OSSL_ENCODER_PARAM_ENCRYPT_LEVEL "encrypt-level"
# define OSSL_ENCODER_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_ENCODER_PARAM_SAVE_PARAMETERS "save-parameters"
# define OSSL_EXCHANGE_PARAM_EC_ECDH_COFACTOR_MODE "ecdh-cofactor-mode"
# define OSSL_EXCHANGE_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_EXCHANGE_PARAM_FIPS_DIGEST_CHECK OSSL_PKEY_PARAM_FIPS_DIGEST_CHECK
# define OSSL_EXCHANGE_PARAM_FIPS_ECDH_COFACTOR_CHECK OSSL_PROV_PARAM_ECDH_COFACTOR_CHECK
# define OSSL_EXCHANGE_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_EXCHANGE_PARAM_KDF_DIGEST "kdf-digest"
# define OSSL_EXCHANGE_PARAM_KDF_DIGEST_PROPS "kdf-digest-props"
# define OSSL_EXCHANGE_PARAM_KDF_OUTLEN "kdf-outlen"
# define OSSL_EXCHANGE_PARAM_KDF_TYPE "kdf-type"
# define OSSL_EXCHANGE_PARAM_KDF_UKM "kdf-ukm"
# define OSSL_EXCHANGE_PARAM_PAD "pad"
# define OSSL_GEN_PARAM_ITERATION "iteration"
# define OSSL_GEN_PARAM_POTENTIAL "potential"
# define OSSL_KDF_PARAM_ARGON2_AD "ad"
# define OSSL_KDF_PARAM_ARGON2_LANES "lanes"
# define OSSL_KDF_PARAM_ARGON2_MEMCOST "memcost"
# define OSSL_KDF_PARAM_ARGON2_VERSION "version"
# define OSSL_KDF_PARAM_CEK_ALG "cekalg"
# define OSSL_KDF_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
# define OSSL_KDF_PARAM_CONSTANT "constant"
# define OSSL_KDF_PARAM_DATA "data"
# define OSSL_KDF_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
# define OSSL_KDF_PARAM_EARLY_CLEAN "early_clean"
# define OSSL_KDF_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_KDF_PARAM_FIPS_DIGEST_CHECK OSSL_PKEY_PARAM_FIPS_DIGEST_CHECK
# define OSSL_KDF_PARAM_FIPS_EMS_CHECK "ems_check"
# define OSSL_KDF_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_KDF_PARAM_HMACDRBG_ENTROPY "entropy"
# define OSSL_KDF_PARAM_HMACDRBG_NONCE "nonce"
# define OSSL_KDF_PARAM_INFO "info"
# define OSSL_KDF_PARAM_ITER "iter"
# define OSSL_KDF_PARAM_KBKDF_R "r"
# define OSSL_KDF_PARAM_KBKDF_USE_L "use-l"
# define OSSL_KDF_PARAM_KBKDF_USE_SEPARATOR "use-separator"
# define OSSL_KDF_PARAM_KEY "key"
# define OSSL_KDF_PARAM_LABEL "label"
# define OSSL_KDF_PARAM_MAC OSSL_ALG_PARAM_MAC
# define OSSL_KDF_PARAM_MAC_SIZE "maclen"
# define OSSL_KDF_PARAM_MODE "mode"
# define OSSL_KDF_PARAM_PASSWORD "pass"
# define OSSL_KDF_PARAM_PKCS12_ID "id"
# define OSSL_KDF_PARAM_PKCS5 "pkcs5"
# define OSSL_KDF_PARAM_PREFIX "prefix"
# define OSSL_KDF_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_KDF_PARAM_SALT "salt"
# define OSSL_KDF_PARAM_SCRYPT_MAXMEM "maxmem_bytes"
# define OSSL_KDF_PARAM_SCRYPT_N "n"
# define OSSL_KDF_PARAM_SCRYPT_P "p"
# define OSSL_KDF_PARAM_SCRYPT_R "r"
# define OSSL_KDF_PARAM_SECRET "secret"
# define OSSL_KDF_PARAM_SEED "seed"
# define OSSL_KDF_PARAM_SIZE "size"
# define OSSL_KDF_PARAM_SSHKDF_SESSION_ID "session_id"
# define OSSL_KDF_PARAM_SSHKDF_TYPE "type"
# define OSSL_KDF_PARAM_SSHKDF_XCGHASH "xcghash"
# define OSSL_KDF_PARAM_THREADS "threads"
# define OSSL_KDF_PARAM_UKM "ukm"
# define OSSL_KDF_PARAM_X942_ACVPINFO "acvp-info"
# define OSSL_KDF_PARAM_X942_PARTYUINFO "partyu-info"
# define OSSL_KDF_PARAM_X942_PARTYVINFO "partyv-info"
# define OSSL_KDF_PARAM_X942_SUPP_PRIVINFO "supp-privinfo"
# define OSSL_KDF_PARAM_X942_SUPP_PUBINFO "supp-pubinfo"
# define OSSL_KDF_PARAM_X942_USE_KEYBITS "use-keybits"
# define OSSL_KEM_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_KEM_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_KEM_PARAM_IKME "ikme"
# define OSSL_KEM_PARAM_OPERATION "operation"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_BLOCK_PADDING "block_padding"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_HS_PADDING "hs_padding"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MAX_EARLY_DATA "max_early_data"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MAX_FRAG_LEN "max_frag_len"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_MODE "mode"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_OPTIONS "options"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_READ_AHEAD "read_ahead"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_STREAM_MAC "stream_mac"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_TLSTREE "tlstree"
# define OSSL_LIBSSL_RECORD_LAYER_PARAM_USE_ETM "use_etm"
# define OSSL_LIBSSL_RECORD_LAYER_READ_BUFFER_LEN "read_buffer_len"
# define OSSL_MAC_PARAM_BLOCK_SIZE "block-size"
# define OSSL_MAC_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
# define OSSL_MAC_PARAM_CUSTOM "custom"
# define OSSL_MAC_PARAM_C_ROUNDS "c-rounds"
# define OSSL_MAC_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
# define OSSL_MAC_PARAM_DIGEST_NOINIT "digest-noinit"
# define OSSL_MAC_PARAM_DIGEST_ONESHOT "digest-oneshot"
# define OSSL_MAC_PARAM_D_ROUNDS "d-rounds"
# define OSSL_MAC_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_MAC_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_MAC_PARAM_FIPS_NO_SHORT_MAC OSSL_PROV_PARAM_NO_SHORT_MAC
# define OSSL_MAC_PARAM_IV "iv"
# define OSSL_MAC_PARAM_KEY "key"
# define OSSL_MAC_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_MAC_PARAM_SALT "salt"
# define OSSL_MAC_PARAM_SIZE "size"
# define OSSL_MAC_PARAM_TLS_DATA_SIZE "tls-data-size"
# define OSSL_MAC_PARAM_XOF "xof"
# define OSSL_OBJECT_PARAM_DATA "data"
# define OSSL_OBJECT_PARAM_DATA_STRUCTURE "data-structure"
# define OSSL_OBJECT_PARAM_DATA_TYPE "data-type"
# define OSSL_OBJECT_PARAM_DESC "desc"
# define OSSL_OBJECT_PARAM_REFERENCE "reference"
# define OSSL_OBJECT_PARAM_TYPE "type"
# define OSSL_PASSPHRASE_PARAM_INFO "info"
# define OSSL_PKEY_PARAM_ALGORITHM_ID OSSL_ALG_PARAM_ALGORITHM_ID
# define OSSL_PKEY_PARAM_ALGORITHM_ID_PARAMS OSSL_ALG_PARAM_ALGORITHM_ID_PARAMS
# define OSSL_PKEY_PARAM_BITS "bits"
# define OSSL_PKEY_PARAM_CIPHER OSSL_ALG_PARAM_CIPHER
# define OSSL_PKEY_PARAM_DEFAULT_DIGEST "default-digest"
# define OSSL_PKEY_PARAM_DHKEM_IKM "dhkem-ikm"
# define OSSL_PKEY_PARAM_DH_GENERATOR "safeprime-generator"
# define OSSL_PKEY_PARAM_DH_PRIV_LEN "priv_len"
# define OSSL_PKEY_PARAM_DIGEST OSSL_ALG_PARAM_DIGEST
# define OSSL_PKEY_PARAM_DIGEST_SIZE "digest-size"
# define OSSL_PKEY_PARAM_DIST_ID "distid"
# define OSSL_PKEY_PARAM_EC_A "a"
# define OSSL_PKEY_PARAM_EC_B "b"
# define OSSL_PKEY_PARAM_EC_CHAR2_M "m"
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K1 "k1"
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K2 "k2"
# define OSSL_PKEY_PARAM_EC_CHAR2_PP_K3 "k3"
# define OSSL_PKEY_PARAM_EC_CHAR2_TP_BASIS "tp"
# define OSSL_PKEY_PARAM_EC_CHAR2_TYPE "basis-type"
# define OSSL_PKEY_PARAM_EC_COFACTOR "cofactor"
# define OSSL_PKEY_PARAM_EC_DECODED_FROM_EXPLICIT_PARAMS "decoded-from-explicit"
# define OSSL_PKEY_PARAM_EC_ENCODING "encoding"
# define OSSL_PKEY_PARAM_EC_FIELD_TYPE "field-type"
# define OSSL_PKEY_PARAM_EC_GENERATOR "generator"
# define OSSL_PKEY_PARAM_EC_GROUP_CHECK_TYPE "group-check"
# define OSSL_PKEY_PARAM_EC_INCLUDE_PUBLIC "include-public"
# define OSSL_PKEY_PARAM_EC_ORDER "order"
# define OSSL_PKEY_PARAM_EC_P "p"
# define OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT "point-format"
# define OSSL_PKEY_PARAM_EC_PUB_X "qx"
# define OSSL_PKEY_PARAM_EC_PUB_Y "qy"
# define OSSL_PKEY_PARAM_EC_SEED "seed"
# define OSSL_PKEY_PARAM_ENCODED_PUBLIC_KEY "encoded-pub-key"
# define OSSL_PKEY_PARAM_ENGINE OSSL_ALG_PARAM_ENGINE
# define OSSL_PKEY_PARAM_FFC_COFACTOR "j"
# define OSSL_PKEY_PARAM_FFC_DIGEST OSSL_PKEY_PARAM_DIGEST
# define OSSL_PKEY_PARAM_FFC_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
# define OSSL_PKEY_PARAM_FFC_G "g"
# define OSSL_PKEY_PARAM_FFC_GINDEX "gindex"
# define OSSL_PKEY_PARAM_FFC_H "hindex"
# define OSSL_PKEY_PARAM_FFC_P "p"
# define OSSL_PKEY_PARAM_FFC_PBITS "pbits"
# define OSSL_PKEY_PARAM_FFC_PCOUNTER "pcounter"
# define OSSL_PKEY_PARAM_FFC_Q "q"
# define OSSL_PKEY_PARAM_FFC_QBITS "qbits"
# define OSSL_PKEY_PARAM_FFC_SEED "seed"
# define OSSL_PKEY_PARAM_FFC_TYPE "type"
# define OSSL_PKEY_PARAM_FFC_VALIDATE_G "validate-g"
# define OSSL_PKEY_PARAM_FFC_VALIDATE_LEGACY "validate-legacy"
# define OSSL_PKEY_PARAM_FFC_VALIDATE_PQ "validate-pq"
# define OSSL_PKEY_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_PKEY_PARAM_FIPS_DIGEST_CHECK "digest-check"
# define OSSL_PKEY_PARAM_FIPS_KEY_CHECK "key-check"
# define OSSL_PKEY_PARAM_FIPS_SIGN_CHECK "sign-check"
# define OSSL_PKEY_PARAM_GROUP_NAME "group"
# define OSSL_PKEY_PARAM_IMPLICIT_REJECTION "implicit-rejection"
# define OSSL_PKEY_PARAM_MANDATORY_DIGEST "mandatory-digest"
# define OSSL_PKEY_PARAM_MASKGENFUNC "mgf"
# define OSSL_PKEY_PARAM_MAX_SIZE "max-size"
# define OSSL_PKEY_PARAM_MGF1_DIGEST "mgf1-digest"
# define OSSL_PKEY_PARAM_MGF1_PROPERTIES "mgf1-properties"
# define OSSL_PKEY_PARAM_PAD_MODE "pad-mode"
# define OSSL_PKEY_PARAM_PRIV_KEY "priv"
# define OSSL_PKEY_PARAM_PROPERTIES OSSL_ALG_PARAM_PROPERTIES
# define OSSL_PKEY_PARAM_PUB_KEY "pub"
# define OSSL_PKEY_PARAM_RSA_BITS OSSL_PKEY_PARAM_BITS
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT "rsa-coefficient"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT1 "rsa-coefficient1"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT2 "rsa-coefficient2"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT3 "rsa-coefficient3"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT4 "rsa-coefficient4"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT5 "rsa-coefficient5"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT6 "rsa-coefficient6"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT7 "rsa-coefficient7"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT8 "rsa-coefficient8"
# define OSSL_PKEY_PARAM_RSA_COEFFICIENT9 "rsa-coefficient9"
# define OSSL_PKEY_PARAM_RSA_D "d"
# define OSSL_PKEY_PARAM_RSA_DERIVE_FROM_PQ "rsa-derive-from-pq"
# define OSSL_PKEY_PARAM_RSA_DIGEST OSSL_PKEY_PARAM_DIGEST
# define OSSL_PKEY_PARAM_RSA_DIGEST_PROPS OSSL_PKEY_PARAM_PROPERTIES
# define OSSL_PKEY_PARAM_RSA_E "e"
# define OSSL_PKEY_PARAM_RSA_EXPONENT "rsa-exponent"
# define OSSL_PKEY_PARAM_RSA_EXPONENT1 "rsa-exponent1"
# define OSSL_PKEY_PARAM_RSA_EXPONENT10 "rsa-exponent10"
# define OSSL_PKEY_PARAM_RSA_EXPONENT2 "rsa-exponent2"
# define OSSL_PKEY_PARAM_RSA_EXPONENT3 "rsa-exponent3"
# define OSSL_PKEY_PARAM_RSA_EXPONENT4 "rsa-exponent4"
# define OSSL_PKEY_PARAM_RSA_EXPONENT5 "rsa-exponent5"
# define OSSL_PKEY_PARAM_RSA_EXPONENT6 "rsa-exponent6"
# define OSSL_PKEY_PARAM_RSA_EXPONENT7 "rsa-exponent7"
# define OSSL_PKEY_PARAM_RSA_EXPONENT8 "rsa-exponent8"
# define OSSL_PKEY_PARAM_RSA_EXPONENT9 "rsa-exponent9"
# define OSSL_PKEY_PARAM_RSA_FACTOR "rsa-factor"
# define OSSL_PKEY_PARAM_RSA_FACTOR1 "rsa-factor1"
# define OSSL_PKEY_PARAM_RSA_FACTOR10 "rsa-factor10"
# define OSSL_PKEY_PARAM_RSA_FACTOR2 "rsa-factor2"
# define OSSL_PKEY_PARAM_RSA_FACTOR3 "rsa-factor3"
# define OSSL_PKEY_PARAM_RSA_FACTOR4 "rsa-factor4"
# define OSSL_PKEY_PARAM_RSA_FACTOR5 "rsa-factor5"
# define OSSL_PKEY_PARAM_RSA_FACTOR6 "rsa-factor6"
# define OSSL_PKEY_PARAM_RSA_FACTOR7 "rsa-factor7"
# define OSSL_PKEY_PARAM_RSA_FACTOR8 "rsa-factor8"
# define OSSL_PKEY_PARAM_RSA_FACTOR9 "rsa-factor9"
# define OSSL_PKEY_PARAM_RSA_MASKGENFUNC OSSL_PKEY_PARAM_MASKGENFUNC
# define OSSL_PKEY_PARAM_RSA_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
# define OSSL_PKEY_PARAM_RSA_N "n"
# define OSSL_PKEY_PARAM_RSA_PRIMES "primes"
# define OSSL_PKEY_PARAM_RSA_PSS_SALTLEN "saltlen"
# define OSSL_PKEY_PARAM_RSA_TEST_P1 "p1"
# define OSSL_PKEY_PARAM_RSA_TEST_P2 "p2"
# define OSSL_PKEY_PARAM_RSA_TEST_Q1 "q1"
# define OSSL_PKEY_PARAM_RSA_TEST_Q2 "q2"
# define OSSL_PKEY_PARAM_RSA_TEST_XP "xp"
# define OSSL_PKEY_PARAM_RSA_TEST_XP1 "xp1"
# define OSSL_PKEY_PARAM_RSA_TEST_XP2 "xp2"
# define OSSL_PKEY_PARAM_RSA_TEST_XQ "xq"
# define OSSL_PKEY_PARAM_RSA_TEST_XQ1 "xq1"
# define OSSL_PKEY_PARAM_RSA_TEST_XQ2 "xq2"
# define OSSL_PKEY_PARAM_SECURITY_BITS "security-bits"
# define OSSL_PKEY_PARAM_USE_COFACTOR_ECDH OSSL_PKEY_PARAM_USE_COFACTOR_FLAG
# define OSSL_PKEY_PARAM_USE_COFACTOR_FLAG "use-cofactor-flag"
# define OSSL_PROV_PARAM_BUILDINFO "buildinfo"
# define OSSL_PROV_PARAM_CORE_MODULE_FILENAME "module-filename"
# define OSSL_PROV_PARAM_CORE_PROV_NAME "provider-name"
# define OSSL_PROV_PARAM_CORE_VERSION "openssl-version"
# define OSSL_PROV_PARAM_DRBG_TRUNC_DIGEST "drbg-no-trunc-md"
# define OSSL_PROV_PARAM_DSA_SIGN_DISABLED "dsa-sign-disabled"
# define OSSL_PROV_PARAM_ECDH_COFACTOR_CHECK "ecdh-cofactor-check"
# define OSSL_PROV_PARAM_HKDF_DIGEST_CHECK "hkdf-digest-check"
# define OSSL_PROV_PARAM_HKDF_KEY_CHECK "hkdf-key-check"
# define OSSL_PROV_PARAM_HMAC_KEY_CHECK "hmac-key-check"
# define OSSL_PROV_PARAM_KBKDF_KEY_CHECK "kbkdf-key-check"
# define OSSL_PROV_PARAM_KMAC_KEY_CHECK "kmac-key-check"
# define OSSL_PROV_PARAM_NAME "name"
# define OSSL_PROV_PARAM_NO_SHORT_MAC "no-short-mac"
# define OSSL_PROV_PARAM_PBKDF2_LOWER_BOUND_CHECK "pbkdf2-lower-bound-check"
# define OSSL_PROV_PARAM_RSA_PKCS15_PAD_DISABLED "rsa-pkcs15-pad-disabled"
# define OSSL_PROV_PARAM_RSA_PSS_SALTLEN_CHECK "rsa-pss-saltlen-check"
# define OSSL_PROV_PARAM_RSA_SIGN_X931_PAD_DISABLED "rsa-sign-x931-pad-disabled"
# define OSSL_PROV_PARAM_SECURITY_CHECKS "security-checks"
# define OSSL_PROV_PARAM_SELF_TEST_DESC "st-desc"
# define OSSL_PROV_PARAM_SELF_TEST_PHASE "st-phase"
# define OSSL_PROV_PARAM_SELF_TEST_TYPE "st-type"
# define OSSL_PROV_PARAM_SIGNATURE_DIGEST_CHECK "signature-digest-check"
# define OSSL_PROV_PARAM_SSHKDF_DIGEST_CHECK "sshkdf-digest-check"
# define OSSL_PROV_PARAM_SSHKDF_KEY_CHECK "sshkdf-key-check"
# define OSSL_PROV_PARAM_SSKDF_DIGEST_CHECK "sskdf-digest-check"
# define OSSL_PROV_PARAM_SSKDF_KEY_CHECK "sskdf-key-check"
# define OSSL_PROV_PARAM_STATUS "status"
# define OSSL_PROV_PARAM_TDES_ENCRYPT_DISABLED "tdes-encrypt-disabled"
# define OSSL_PROV_PARAM_TLS13_KDF_DIGEST_CHECK "tls13-kdf-digest-check"
# define OSSL_PROV_PARAM_TLS13_KDF_KEY_CHECK "tls13-kdf-key-check"
# define OSSL_PROV_PARAM_TLS1_PRF_DIGEST_CHECK "tls1-prf-digest-check"
# define OSSL_PROV_PARAM_TLS1_PRF_EMS_CHECK "tls1-prf-ems-check"
# define OSSL_PROV_PARAM_TLS1_PRF_KEY_CHECK "tls1-prf-key-check"
# define OSSL_PROV_PARAM_VERSION "version"
# define OSSL_PROV_PARAM_X942KDF_KEY_CHECK "x942kdf-key-check"
# define OSSL_PROV_PARAM_X963KDF_DIGEST_CHECK "x963kdf-digest-check"
# define OSSL_PROV_PARAM_X963KDF_KEY_CHECK "x963kdf-key-check"
# define OSSL_RAND_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_RAND_PARAM_GENERATE "generate"
# define OSSL_RAND_PARAM_MAX_REQUEST "max_request"
# define OSSL_RAND_PARAM_STATE "state"
# define OSSL_RAND_PARAM_STRENGTH "strength"
# define OSSL_RAND_PARAM_TEST_ENTROPY "test_entropy"
# define OSSL_RAND_PARAM_TEST_NONCE "test_nonce"
# define OSSL_SIGNATURE_PARAM_ALGORITHM_ID OSSL_PKEY_PARAM_ALGORITHM_ID
# define OSSL_SIGNATURE_PARAM_ALGORITHM_ID_PARAMS OSSL_PKEY_PARAM_ALGORITHM_ID_PARAMS
# define OSSL_SIGNATURE_PARAM_CONTEXT_STRING "context-string"
# define OSSL_SIGNATURE_PARAM_DIGEST OSSL_PKEY_PARAM_DIGEST
# define OSSL_SIGNATURE_PARAM_DIGEST_SIZE OSSL_PKEY_PARAM_DIGEST_SIZE
# define OSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR OSSL_ALG_PARAM_FIPS_APPROVED_INDICATOR
# define OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK OSSL_PKEY_PARAM_FIPS_DIGEST_CHECK
# define OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK OSSL_PKEY_PARAM_FIPS_KEY_CHECK
# define OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK "rsa-pss-saltlen-check"
# define OSSL_SIGNATURE_PARAM_FIPS_SIGN_CHECK OSSL_PKEY_PARAM_FIPS_SIGN_CHECK
# define OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK "sign-x931-pad-check"
# define OSSL_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE "verify-message"
# define OSSL_SIGNATURE_PARAM_INSTANCE "instance"
# define OSSL_SIGNATURE_PARAM_KAT "kat"
# define OSSL_SIGNATURE_PARAM_MGF1_DIGEST OSSL_PKEY_PARAM_MGF1_DIGEST
# define OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES OSSL_PKEY_PARAM_MGF1_PROPERTIES
# define OSSL_SIGNATURE_PARAM_NONCE_TYPE "nonce-type"
# define OSSL_SIGNATURE_PARAM_PAD_MODE OSSL_PKEY_PARAM_PAD_MODE
# define OSSL_SIGNATURE_PARAM_PROPERTIES OSSL_PKEY_PARAM_PROPERTIES
# define OSSL_SIGNATURE_PARAM_PSS_SALTLEN "saltlen"
# define OSSL_SIGNATURE_PARAM_SIGNATURE "signature"
# define OSSL_STORE_PARAM_ALIAS "alias"
# define OSSL_STORE_PARAM_DIGEST "digest"
# define OSSL_STORE_PARAM_EXPECT "expect"
# define OSSL_STORE_PARAM_FINGERPRINT "fingerprint"
# define OSSL_STORE_PARAM_INPUT_TYPE "input-type"
# define OSSL_STORE_PARAM_ISSUER "name"
# define OSSL_STORE_PARAM_PROPERTIES "properties"
# define OSSL_STORE_PARAM_SERIAL "serial"
# define OSSL_STORE_PARAM_SUBJECT "subject"
# ifdef __cplusplus
}
# endif
#endif

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/crmf.h.in
*
* Copyright 2007-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 2007-2024 The OpenSSL Project Authors. All Rights Reserved.
* Copyright Nokia 2007-2019
* Copyright Siemens AG 2015-2019
*
@ -43,8 +43,8 @@ extern "C" {
# define OSSL_CRMF_SUBSEQUENTMESSAGE_ENCRCERT 0
# define OSSL_CRMF_SUBSEQUENTMESSAGE_CHALLENGERESP 1
typedef struct ossl_crmf_encryptedvalue_st OSSL_CRMF_ENCRYPTEDVALUE;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_ENCRYPTEDVALUE)
typedef struct ossl_crmf_msg_st OSSL_CRMF_MSG;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSG)
@ -77,6 +77,36 @@ SKM_DEFINE_STACK_OF_INTERNAL(OSSL_CRMF_MSG, OSSL_CRMF_MSG, OSSL_CRMF_MSG)
#define sk_OSSL_CRMF_MSG_set_cmp_func(sk, cmp) ((sk_OSSL_CRMF_MSG_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_CRMF_MSG_sk_type(sk), ossl_check_OSSL_CRMF_MSG_compfunc_type(cmp)))
typedef struct ossl_crmf_attributetypeandvalue_st OSSL_CRMF_ATTRIBUTETYPEANDVALUE;
void OSSL_CRMF_ATTRIBUTETYPEANDVALUE_free(OSSL_CRMF_ATTRIBUTETYPEANDVALUE *v);
DECLARE_ASN1_DUP_FUNCTION(OSSL_CRMF_ATTRIBUTETYPEANDVALUE)
SKM_DEFINE_STACK_OF_INTERNAL(OSSL_CRMF_ATTRIBUTETYPEANDVALUE, OSSL_CRMF_ATTRIBUTETYPEANDVALUE, OSSL_CRMF_ATTRIBUTETYPEANDVALUE)
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_num(sk) OPENSSL_sk_num(ossl_check_const_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_value(sk, idx) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_value(ossl_check_const_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), (idx)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_new(cmp) ((STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) *)OPENSSL_sk_new(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_compfunc_type(cmp)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_new_null() ((STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) *)OPENSSL_sk_new_null())
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_new_reserve(cmp, n) ((STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) *)OPENSSL_sk_new_reserve(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_compfunc_type(cmp), (n)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), (n))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_free(sk) OPENSSL_sk_free(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_zero(sk) OPENSSL_sk_zero(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_delete(sk, i) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_delete(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), (i)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_delete_ptr(sk, ptr) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_delete_ptr(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_push(sk, ptr) OPENSSL_sk_push(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_pop(sk) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_pop(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_shift(sk) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_shift(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk),ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_freefunc_type(freefunc))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr), (idx))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_set(sk, idx, ptr) ((OSSL_CRMF_ATTRIBUTETYPEANDVALUE *)OPENSSL_sk_set(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), (idx), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_find(sk, ptr) OPENSSL_sk_find(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_type(ptr), pnum)
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sort(sk) OPENSSL_sk_sort(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_dup(sk) ((STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) *)OPENSSL_sk_dup(ossl_check_const_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_CRMF_ATTRIBUTETYPEANDVALUE) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_copyfunc_type(copyfunc), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_freefunc_type(freefunc)))
#define sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_set_cmp_func(sk, cmp) ((sk_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_sk_type(sk), ossl_check_OSSL_CRMF_ATTRIBUTETYPEANDVALUE_compfunc_type(cmp)))
typedef struct ossl_crmf_pbmparameter_st OSSL_CRMF_PBMPARAMETER;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_PBMPARAMETER)
typedef struct ossl_crmf_poposigningkey_st OSSL_CRMF_POPOSIGNINGKEY;
@ -118,6 +148,7 @@ typedef struct ossl_crmf_singlepubinfo_st OSSL_CRMF_SINGLEPUBINFO;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_SINGLEPUBINFO)
typedef struct ossl_crmf_certtemplate_st OSSL_CRMF_CERTTEMPLATE;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_CERTTEMPLATE)
DECLARE_ASN1_DUP_FUNCTION(OSSL_CRMF_CERTTEMPLATE)
typedef STACK_OF(OSSL_CRMF_MSG) OSSL_CRMF_MSGS;
DECLARE_ASN1_FUNCTIONS(OSSL_CRMF_MSGS)
@ -198,12 +229,14 @@ int OSSL_CRMF_MSGS_verify_popo(const OSSL_CRMF_MSGS *reqs,
int rid, int acceptRAVerified,
OSSL_LIB_CTX *libctx, const char *propq);
OSSL_CRMF_CERTTEMPLATE *OSSL_CRMF_MSG_get0_tmpl(const OSSL_CRMF_MSG *crm);
const ASN1_INTEGER
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
X509_PUBKEY
*OSSL_CRMF_CERTTEMPLATE_get0_publicKey(const OSSL_CRMF_CERTTEMPLATE *tmpl);
const X509_NAME
*OSSL_CRMF_CERTTEMPLATE_get0_subject(const OSSL_CRMF_CERTTEMPLATE *tmpl);
const X509_NAME
*OSSL_CRMF_CERTTEMPLATE_get0_issuer(const OSSL_CRMF_CERTTEMPLATE *tmpl);
const ASN1_INTEGER
*OSSL_CRMF_CERTTEMPLATE_get0_serialNumber(const OSSL_CRMF_CERTTEMPLATE *tmpl);
X509_EXTENSIONS
*OSSL_CRMF_CERTTEMPLATE_get0_extensions(const OSSL_CRMF_CERTTEMPLATE *tmpl);
const X509_NAME

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/crypto.h.in
*
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
@ -85,9 +85,15 @@ int CRYPTO_THREAD_unlock(CRYPTO_RWLOCK *lock);
void CRYPTO_THREAD_lock_free(CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_add(int *val, int amount, int *ret, CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_add64(uint64_t *val, uint64_t op, uint64_t *ret,
CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_and(uint64_t *val, uint64_t op, uint64_t *ret,
CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_or(uint64_t *val, uint64_t op, uint64_t *ret,
CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_load_int(int *val, int *ret, CRYPTO_RWLOCK *lock);
int CRYPTO_atomic_store(uint64_t *dst, uint64_t val, CRYPTO_RWLOCK *lock);
/* No longer needed, so this is a no-op */
#define OPENSSL_malloc_init() while(0) continue
@ -96,6 +102,9 @@ int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
CRYPTO_malloc(num, OPENSSL_FILE, OPENSSL_LINE)
# define OPENSSL_zalloc(num) \
CRYPTO_zalloc(num, OPENSSL_FILE, OPENSSL_LINE)
# define OPENSSL_aligned_alloc(num, alignment, freeptr) \
CRYPTO_aligned_alloc(num, alignment, freeptr, \
OPENSSL_FILE, OPENSSL_LINE)
# define OPENSSL_realloc(addr, num) \
CRYPTO_realloc(addr, num, OPENSSL_FILE, OPENSSL_LINE)
# define OPENSSL_clear_realloc(addr, old_num, num) \
@ -124,6 +133,7 @@ int CRYPTO_atomic_load(uint64_t *val, uint64_t *ret, CRYPTO_RWLOCK *lock);
size_t OPENSSL_strlcpy(char *dst, const char *src, size_t siz);
size_t OPENSSL_strlcat(char *dst, const char *src, size_t siz);
size_t OPENSSL_strnlen(const char *str, size_t maxlen);
int OPENSSL_strtoul(const char *str, char **endptr, int base, unsigned long *num);
int OPENSSL_buf2hexstr_ex(char *str, size_t str_n, size_t *strlength,
const unsigned char *buf, size_t buflen,
const char sep);
@ -160,6 +170,7 @@ const char *OpenSSL_version(int type);
# define OPENSSL_FULL_VERSION_STRING 7
# define OPENSSL_MODULES_DIR 8
# define OPENSSL_CPU_INFO 9
# define OPENSSL_WINCTX 10
const char *OPENSSL_info(int type);
/*
@ -174,6 +185,7 @@ const char *OPENSSL_info(int type);
# define OPENSSL_INFO_LIST_SEPARATOR 1006
# define OPENSSL_INFO_SEED_SOURCE 1007
# define OPENSSL_INFO_CPU_SETTINGS 1008
# define OPENSSL_INFO_WINDOWS_CONTEXT 1009
int OPENSSL_issetugid(void);
@ -341,11 +353,14 @@ void CRYPTO_get_mem_functions(CRYPTO_malloc_fn *malloc_fn,
CRYPTO_realloc_fn *realloc_fn,
CRYPTO_free_fn *free_fn);
void *CRYPTO_malloc(size_t num, const char *file, int line);
void *CRYPTO_zalloc(size_t num, const char *file, int line);
void *CRYPTO_memdup(const void *str, size_t siz, const char *file, int line);
char *CRYPTO_strdup(const char *str, const char *file, int line);
char *CRYPTO_strndup(const char *str, size_t s, const char *file, int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_malloc(size_t num, const char *file, int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_zalloc(size_t num, const char *file, int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_aligned_alloc(size_t num, size_t align,
void **freeptr, const char *file,
int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_memdup(const void *str, size_t siz, const char *file, int line);
OSSL_CRYPTO_ALLOC char *CRYPTO_strdup(const char *str, const char *file, int line);
OSSL_CRYPTO_ALLOC char *CRYPTO_strndup(const char *str, size_t s, const char *file, int line);
void CRYPTO_free(void *ptr, const char *file, int line);
void CRYPTO_clear_free(void *ptr, size_t num, const char *file, int line);
void *CRYPTO_realloc(void *addr, size_t num, const char *file, int line);
@ -354,8 +369,8 @@ void *CRYPTO_clear_realloc(void *addr, size_t old_num, size_t num,
int CRYPTO_secure_malloc_init(size_t sz, size_t minsize);
int CRYPTO_secure_malloc_done(void);
void *CRYPTO_secure_malloc(size_t num, const char *file, int line);
void *CRYPTO_secure_zalloc(size_t num, const char *file, int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_secure_malloc(size_t num, const char *file, int line);
OSSL_CRYPTO_ALLOC void *CRYPTO_secure_zalloc(size_t num, const char *file, int line);
void CRYPTO_secure_free(void *ptr, const char *file, int line);
void CRYPTO_secure_clear_free(void *ptr, size_t num,
const char *file, int line);
@ -551,6 +566,13 @@ int OSSL_LIB_CTX_load_config(OSSL_LIB_CTX *ctx, const char *config_file);
void OSSL_LIB_CTX_free(OSSL_LIB_CTX *);
OSSL_LIB_CTX *OSSL_LIB_CTX_get0_global_default(void);
OSSL_LIB_CTX *OSSL_LIB_CTX_set0_default(OSSL_LIB_CTX *libctx);
int OSSL_LIB_CTX_get_conf_diagnostics(OSSL_LIB_CTX *ctx);
void OSSL_LIB_CTX_set_conf_diagnostics(OSSL_LIB_CTX *ctx, int value);
void OSSL_sleep(uint64_t millis);
void *OSSL_LIB_CTX_get_data(OSSL_LIB_CTX *ctx, int index);
# ifdef __cplusplus
}

View File

@ -1,5 +1,5 @@
/*
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -372,7 +372,7 @@ typedef struct ERR_string_data_st {
} ERR_STRING_DATA;
DEFINE_LHASH_OF_INTERNAL(ERR_STRING_DATA);
#define lh_ERR_STRING_DATA_new(hfn, cmp) ((LHASH_OF(ERR_STRING_DATA) *)OPENSSL_LH_new(ossl_check_ERR_STRING_DATA_lh_hashfunc_type(hfn), ossl_check_ERR_STRING_DATA_lh_compfunc_type(cmp)))
#define lh_ERR_STRING_DATA_new(hfn, cmp) ((LHASH_OF(ERR_STRING_DATA) *)OPENSSL_LH_set_thunks(OPENSSL_LH_new(ossl_check_ERR_STRING_DATA_lh_hashfunc_type(hfn), ossl_check_ERR_STRING_DATA_lh_compfunc_type(cmp)), lh_ERR_STRING_DATA_hash_thunk, lh_ERR_STRING_DATA_comp_thunk, lh_ERR_STRING_DATA_doall_thunk, lh_ERR_STRING_DATA_doall_arg_thunk))
#define lh_ERR_STRING_DATA_free(lh) OPENSSL_LH_free(ossl_check_ERR_STRING_DATA_lh_type(lh))
#define lh_ERR_STRING_DATA_flush(lh) OPENSSL_LH_flush(ossl_check_ERR_STRING_DATA_lh_type(lh))
#define lh_ERR_STRING_DATA_insert(lh, ptr) ((ERR_STRING_DATA *)OPENSSL_LH_insert(ossl_check_ERR_STRING_DATA_lh_type(lh), ossl_check_ERR_STRING_DATA_lh_plain_type(ptr)))
@ -496,6 +496,14 @@ int ERR_get_next_error_library(void);
int ERR_set_mark(void);
int ERR_pop_to_mark(void);
int ERR_clear_last_mark(void);
int ERR_count_to_mark(void);
int ERR_pop(void);
ERR_STATE *OSSL_ERR_STATE_new(void);
void OSSL_ERR_STATE_save(ERR_STATE *es);
void OSSL_ERR_STATE_save_to_mark(ERR_STATE *es);
void OSSL_ERR_STATE_restore(const ERR_STATE *es);
void OSSL_ERR_STATE_free(ERR_STATE *es);
#ifdef __cplusplus
}

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/fipskey.h.in
*
* Copyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 2020-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -29,6 +29,11 @@ extern "C" {
*/
#define FIPS_KEY_STRING "f4556650ac31d35461610bac4ed81b1a181b2d8a43ea2854cbae22ca74560813"
/*
* The FIPS provider vendor name, as a string.
*/
#define FIPS_VENDOR "OpenSSL non-compliant FIPS Provider"
# ifdef __cplusplus
}
# endif

View File

@ -1,5 +1,5 @@
/*
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -24,6 +24,9 @@
# include <openssl/e_os2.h>
# include <openssl/bio.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -31,9 +34,13 @@ extern "C" {
typedef struct lhash_node_st OPENSSL_LH_NODE;
typedef int (*OPENSSL_LH_COMPFUNC) (const void *, const void *);
typedef int (*OPENSSL_LH_COMPFUNCTHUNK) (const void *, const void *, OPENSSL_LH_COMPFUNC cfn);
typedef unsigned long (*OPENSSL_LH_HASHFUNC) (const void *);
typedef unsigned long (*OPENSSL_LH_HASHFUNCTHUNK) (const void *, OPENSSL_LH_HASHFUNC hfn);
typedef void (*OPENSSL_LH_DOALL_FUNC) (void *);
typedef void (*OPENSSL_LH_DOALL_FUNC_THUNK) (void *, OPENSSL_LH_DOALL_FUNC doall);
typedef void (*OPENSSL_LH_DOALL_FUNCARG) (void *, void *);
typedef void (*OPENSSL_LH_DOALL_FUNCARG_THUNK) (void *, void *, OPENSSL_LH_DOALL_FUNCARG doall);
typedef struct lhash_st OPENSSL_LHASH;
/*
@ -79,26 +86,40 @@ typedef struct lhash_st OPENSSL_LHASH;
int OPENSSL_LH_error(OPENSSL_LHASH *lh);
OPENSSL_LHASH *OPENSSL_LH_new(OPENSSL_LH_HASHFUNC h, OPENSSL_LH_COMPFUNC c);
OPENSSL_LHASH *OPENSSL_LH_set_thunks(OPENSSL_LHASH *lh,
OPENSSL_LH_HASHFUNCTHUNK hw,
OPENSSL_LH_COMPFUNCTHUNK cw,
OPENSSL_LH_DOALL_FUNC_THUNK daw,
OPENSSL_LH_DOALL_FUNCARG_THUNK daaw);
void OPENSSL_LH_free(OPENSSL_LHASH *lh);
void OPENSSL_LH_flush(OPENSSL_LHASH *lh);
void *OPENSSL_LH_insert(OPENSSL_LHASH *lh, void *data);
void *OPENSSL_LH_delete(OPENSSL_LHASH *lh, const void *data);
void *OPENSSL_LH_retrieve(OPENSSL_LHASH *lh, const void *data);
void OPENSSL_LH_doall(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNC func);
void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh, OPENSSL_LH_DOALL_FUNCARG func, void *arg);
void OPENSSL_LH_doall_arg(OPENSSL_LHASH *lh,
OPENSSL_LH_DOALL_FUNCARG func, void *arg);
void OPENSSL_LH_doall_arg_thunk(OPENSSL_LHASH *lh,
OPENSSL_LH_DOALL_FUNCARG_THUNK daaw,
OPENSSL_LH_DOALL_FUNCARG fn, void *arg);
unsigned long OPENSSL_LH_strhash(const char *c);
unsigned long OPENSSL_LH_num_items(const OPENSSL_LHASH *lh);
unsigned long OPENSSL_LH_get_down_load(const OPENSSL_LHASH *lh);
void OPENSSL_LH_set_down_load(OPENSSL_LHASH *lh, unsigned long down_load);
# ifndef OPENSSL_NO_STDIO
void OPENSSL_LH_stats(const OPENSSL_LHASH *lh, FILE *fp);
void OPENSSL_LH_node_stats(const OPENSSL_LHASH *lh, FILE *fp);
void OPENSSL_LH_node_usage_stats(const OPENSSL_LHASH *lh, FILE *fp);
# ifndef OPENSSL_NO_DEPRECATED_3_1
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_stats(const OPENSSL_LHASH *lh, FILE *fp);
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_node_stats(const OPENSSL_LHASH *lh, FILE *fp);
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_node_usage_stats(const OPENSSL_LHASH *lh, FILE *fp);
# endif
# endif
# ifndef OPENSSL_NO_DEPRECATED_3_1
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_node_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
OSSL_DEPRECATEDIN_3_1 void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
# endif
void OPENSSL_LH_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
void OPENSSL_LH_node_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
# define _LHASH OPENSSL_LHASH
@ -129,110 +150,190 @@ void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
/* Helper macro for internal use */
# define DEFINE_LHASH_OF_INTERNAL(type) \
LHASH_OF(type) { union lh_##type##_dummy { void* d1; unsigned long d2; int d3; } dummy; }; \
LHASH_OF(type) { \
union lh_##type##_dummy { void* d1; unsigned long d2; int d3; } dummy; \
}; \
typedef int (*lh_##type##_compfunc)(const type *a, const type *b); \
typedef unsigned long (*lh_##type##_hashfunc)(const type *a); \
typedef void (*lh_##type##_doallfunc)(type *a); \
static ossl_unused ossl_inline type *ossl_check_##type##_lh_plain_type(type *ptr) \
static ossl_inline unsigned long lh_##type##_hash_thunk(const void *data, OPENSSL_LH_HASHFUNC hfn) \
{ \
unsigned long (*hfn_conv)(const type *) = (unsigned long (*)(const type *))hfn; \
return hfn_conv((const type *)data); \
} \
static ossl_inline int lh_##type##_comp_thunk(const void *da, const void *db, OPENSSL_LH_COMPFUNC cfn) \
{ \
int (*cfn_conv)(const type *, const type *) = (int (*)(const type *, const type *))cfn; \
return cfn_conv((const type *)da, (const type *)db); \
} \
static ossl_inline void lh_##type##_doall_thunk(void *node, OPENSSL_LH_DOALL_FUNC doall) \
{ \
void (*doall_conv)(type *) = (void (*)(type *))doall; \
doall_conv((type *)node); \
} \
static ossl_inline void lh_##type##_doall_arg_thunk(void *node, void *arg, OPENSSL_LH_DOALL_FUNCARG doall) \
{ \
void (*doall_conv)(type *, void *) = (void (*)(type *, void *))doall; \
doall_conv((type *)node, arg); \
} \
static ossl_unused ossl_inline type *\
ossl_check_##type##_lh_plain_type(type *ptr) \
{ \
return ptr; \
} \
static ossl_unused ossl_inline const type *ossl_check_const_##type##_lh_plain_type(const type *ptr) \
static ossl_unused ossl_inline const type * \
ossl_check_const_##type##_lh_plain_type(const type *ptr) \
{ \
return ptr; \
} \
static ossl_unused ossl_inline const OPENSSL_LHASH *ossl_check_const_##type##_lh_type(const LHASH_OF(type) *lh) \
static ossl_unused ossl_inline const OPENSSL_LHASH * \
ossl_check_const_##type##_lh_type(const LHASH_OF(type) *lh) \
{ \
return (const OPENSSL_LHASH *)lh; \
} \
static ossl_unused ossl_inline OPENSSL_LHASH *ossl_check_##type##_lh_type(LHASH_OF(type) *lh) \
static ossl_unused ossl_inline OPENSSL_LHASH * \
ossl_check_##type##_lh_type(LHASH_OF(type) *lh) \
{ \
return (OPENSSL_LHASH *)lh; \
} \
static ossl_unused ossl_inline OPENSSL_LH_COMPFUNC ossl_check_##type##_lh_compfunc_type(lh_##type##_compfunc cmp) \
static ossl_unused ossl_inline OPENSSL_LH_COMPFUNC \
ossl_check_##type##_lh_compfunc_type(lh_##type##_compfunc cmp) \
{ \
return (OPENSSL_LH_COMPFUNC)cmp; \
} \
static ossl_unused ossl_inline OPENSSL_LH_HASHFUNC ossl_check_##type##_lh_hashfunc_type(lh_##type##_hashfunc hfn) \
static ossl_unused ossl_inline OPENSSL_LH_HASHFUNC \
ossl_check_##type##_lh_hashfunc_type(lh_##type##_hashfunc hfn) \
{ \
return (OPENSSL_LH_HASHFUNC)hfn; \
} \
static ossl_unused ossl_inline OPENSSL_LH_DOALL_FUNC ossl_check_##type##_lh_doallfunc_type(lh_##type##_doallfunc dfn) \
static ossl_unused ossl_inline OPENSSL_LH_DOALL_FUNC \
ossl_check_##type##_lh_doallfunc_type(lh_##type##_doallfunc dfn) \
{ \
return (OPENSSL_LH_DOALL_FUNC)dfn; \
} \
LHASH_OF(type)
# define DEFINE_LHASH_OF(type) \
LHASH_OF(type) { union lh_##type##_dummy { void* d1; unsigned long d2; int d3; } dummy; }; \
static ossl_unused ossl_inline LHASH_OF(type) *lh_##type##_new(unsigned long (*hfn)(const type *), \
int (*cfn)(const type *, const type *)) \
{ \
return (LHASH_OF(type) *) \
OPENSSL_LH_new((OPENSSL_LH_HASHFUNC)hfn, (OPENSSL_LH_COMPFUNC)cfn); \
} \
static ossl_unused ossl_inline void lh_##type##_free(LHASH_OF(type) *lh) \
{ \
OPENSSL_LH_free((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline void lh_##type##_flush(LHASH_OF(type) *lh) \
{ \
OPENSSL_LH_flush((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline type *lh_##type##_insert(LHASH_OF(type) *lh, type *d) \
{ \
return (type *)OPENSSL_LH_insert((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline type *lh_##type##_delete(LHASH_OF(type) *lh, const type *d) \
{ \
return (type *)OPENSSL_LH_delete((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline type *lh_##type##_retrieve(LHASH_OF(type) *lh, const type *d) \
{ \
return (type *)OPENSSL_LH_retrieve((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline int lh_##type##_error(LHASH_OF(type) *lh) \
{ \
return OPENSSL_LH_error((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline unsigned long lh_##type##_num_items(LHASH_OF(type) *lh) \
{ \
return OPENSSL_LH_num_items((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline void lh_##type##_node_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
# ifndef OPENSSL_NO_DEPRECATED_3_1
# define DEFINE_LHASH_OF_DEPRECATED(type) \
static ossl_unused ossl_inline void \
lh_##type##_node_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
{ \
OPENSSL_LH_node_stats_bio((const OPENSSL_LHASH *)lh, out); \
} \
static ossl_unused ossl_inline void lh_##type##_node_usage_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
static ossl_unused ossl_inline void \
lh_##type##_node_usage_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
{ \
OPENSSL_LH_node_usage_stats_bio((const OPENSSL_LHASH *)lh, out); \
} \
static ossl_unused ossl_inline void lh_##type##_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
static ossl_unused ossl_inline void \
lh_##type##_stats_bio(const LHASH_OF(type) *lh, BIO *out) \
{ \
OPENSSL_LH_stats_bio((const OPENSSL_LHASH *)lh, out); \
}
# else
# define DEFINE_LHASH_OF_DEPRECATED(type)
# endif
# define DEFINE_LHASH_OF_EX(type) \
LHASH_OF(type) { \
union lh_##type##_dummy { void* d1; unsigned long d2; int d3; } dummy; \
}; \
static unsigned long \
lh_##type##_hfn_thunk(const void *data, OPENSSL_LH_HASHFUNC hfn) \
{ \
unsigned long (*hfn_conv)(const type *) = (unsigned long (*)(const type *))hfn; \
return hfn_conv((const type *)data); \
} \
static ossl_unused ossl_inline unsigned long lh_##type##_get_down_load(LHASH_OF(type) *lh) \
static int lh_##type##_cfn_thunk(const void *da, const void *db, OPENSSL_LH_COMPFUNC cfn) \
{ \
int (*cfn_conv)(const type *, const type *) = (int (*)(const type *, const type *))cfn; \
return cfn_conv((const type *)da, (const type *)db); \
} \
static ossl_unused ossl_inline void \
lh_##type##_free(LHASH_OF(type) *lh) \
{ \
OPENSSL_LH_free((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline void \
lh_##type##_flush(LHASH_OF(type) *lh) \
{ \
OPENSSL_LH_flush((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline type * \
lh_##type##_insert(LHASH_OF(type) *lh, type *d) \
{ \
return (type *)OPENSSL_LH_insert((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline type * \
lh_##type##_delete(LHASH_OF(type) *lh, const type *d) \
{ \
return (type *)OPENSSL_LH_delete((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline type * \
lh_##type##_retrieve(LHASH_OF(type) *lh, const type *d) \
{ \
return (type *)OPENSSL_LH_retrieve((OPENSSL_LHASH *)lh, d); \
} \
static ossl_unused ossl_inline int \
lh_##type##_error(LHASH_OF(type) *lh) \
{ \
return OPENSSL_LH_error((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline unsigned long \
lh_##type##_num_items(LHASH_OF(type) *lh) \
{ \
return OPENSSL_LH_num_items((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline unsigned long \
lh_##type##_get_down_load(LHASH_OF(type) *lh) \
{ \
return OPENSSL_LH_get_down_load((OPENSSL_LHASH *)lh); \
} \
static ossl_unused ossl_inline void lh_##type##_set_down_load(LHASH_OF(type) *lh, unsigned long dl) \
static ossl_unused ossl_inline void \
lh_##type##_set_down_load(LHASH_OF(type) *lh, unsigned long dl) \
{ \
OPENSSL_LH_set_down_load((OPENSSL_LHASH *)lh, dl); \
} \
static ossl_unused ossl_inline void lh_##type##_doall(LHASH_OF(type) *lh, \
void (*doall)(type *)) \
static ossl_unused ossl_inline void \
lh_##type##_doall_thunk(void *node, OPENSSL_LH_DOALL_FUNC doall) \
{ \
void (*doall_conv)(type *) = (void (*)(type *))doall; \
doall_conv((type *)node); \
} \
static ossl_unused ossl_inline void \
lh_##type##_doall_arg_thunk(void *node, void *arg, OPENSSL_LH_DOALL_FUNCARG doall) \
{ \
void (*doall_conv)(type *, void *) = (void (*)(type *, void *))doall; \
doall_conv((type *)node, arg); \
} \
static ossl_unused ossl_inline void \
lh_##type##_doall(LHASH_OF(type) *lh, void (*doall)(type *)) \
{ \
OPENSSL_LH_doall((OPENSSL_LHASH *)lh, (OPENSSL_LH_DOALL_FUNC)doall); \
} \
static ossl_unused ossl_inline void lh_##type##_doall_arg(LHASH_OF(type) *lh, \
void (*doallarg)(type *, void *), \
void *arg) \
static ossl_unused ossl_inline LHASH_OF(type) * \
lh_##type##_new(unsigned long (*hfn)(const type *), \
int (*cfn)(const type *, const type *)) \
{ \
return (LHASH_OF(type) *)OPENSSL_LH_set_thunks(OPENSSL_LH_new((OPENSSL_LH_HASHFUNC)hfn, (OPENSSL_LH_COMPFUNC)cfn), \
lh_##type##_hfn_thunk, lh_##type##_cfn_thunk, \
lh_##type##_doall_thunk, \
lh_##type##_doall_arg_thunk); \
} \
static ossl_unused ossl_inline void \
lh_##type##_doall_arg(LHASH_OF(type) *lh, \
void (*doallarg)(type *, void *), void *arg) \
{ \
OPENSSL_LH_doall_arg((OPENSSL_LHASH *)lh, \
(OPENSSL_LH_DOALL_FUNCARG)doallarg, arg); \
} \
LHASH_OF(type)
# define DEFINE_LHASH_OF(type) \
DEFINE_LHASH_OF_EX(type); \
DEFINE_LHASH_OF_DEPRECATED(type) \
LHASH_OF(type)
#define IMPLEMENT_LHASH_DOALL_ARG_CONST(type, argtype) \
int_implement_lhash_doall(type, argtype, const type)
@ -240,17 +341,26 @@ void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out);
int_implement_lhash_doall(type, argtype, type)
#define int_implement_lhash_doall(type, argtype, cbargtype) \
static ossl_unused ossl_inline void \
lh_##type##_doall_##argtype##_thunk(void *node, void *arg, OPENSSL_LH_DOALL_FUNCARG fn) \
{ \
void (*fn_conv)(cbargtype *, argtype *) = (void (*)(cbargtype *, argtype *))fn; \
fn_conv((cbargtype *)node, (argtype *)arg); \
} \
static ossl_unused ossl_inline void \
lh_##type##_doall_##argtype(LHASH_OF(type) *lh, \
void (*fn)(cbargtype *, argtype *), \
argtype *arg) \
{ \
OPENSSL_LH_doall_arg((OPENSSL_LHASH *)lh, (OPENSSL_LH_DOALL_FUNCARG)fn, (void *)arg); \
OPENSSL_LH_doall_arg_thunk((OPENSSL_LHASH *)lh, \
lh_##type##_doall_##argtype##_thunk, \
(OPENSSL_LH_DOALL_FUNCARG)fn, \
(void *)arg); \
} \
LHASH_OF(type)
DEFINE_LHASH_OF_INTERNAL(OPENSSL_STRING);
#define lh_OPENSSL_STRING_new(hfn, cmp) ((LHASH_OF(OPENSSL_STRING) *)OPENSSL_LH_new(ossl_check_OPENSSL_STRING_lh_hashfunc_type(hfn), ossl_check_OPENSSL_STRING_lh_compfunc_type(cmp)))
#define lh_OPENSSL_STRING_new(hfn, cmp) ((LHASH_OF(OPENSSL_STRING) *)OPENSSL_LH_set_thunks(OPENSSL_LH_new(ossl_check_OPENSSL_STRING_lh_hashfunc_type(hfn), ossl_check_OPENSSL_STRING_lh_compfunc_type(cmp)), lh_OPENSSL_STRING_hash_thunk, lh_OPENSSL_STRING_comp_thunk, lh_OPENSSL_STRING_doall_thunk, lh_OPENSSL_STRING_doall_arg_thunk))
#define lh_OPENSSL_STRING_free(lh) OPENSSL_LH_free(ossl_check_OPENSSL_STRING_lh_type(lh))
#define lh_OPENSSL_STRING_flush(lh) OPENSSL_LH_flush(ossl_check_OPENSSL_STRING_lh_type(lh))
#define lh_OPENSSL_STRING_insert(lh, ptr) ((OPENSSL_STRING *)OPENSSL_LH_insert(ossl_check_OPENSSL_STRING_lh_type(lh), ossl_check_OPENSSL_STRING_lh_plain_type(ptr)))
@ -265,7 +375,7 @@ DEFINE_LHASH_OF_INTERNAL(OPENSSL_STRING);
#define lh_OPENSSL_STRING_set_down_load(lh, dl) OPENSSL_LH_set_down_load(ossl_check_OPENSSL_STRING_lh_type(lh), dl)
#define lh_OPENSSL_STRING_doall(lh, dfn) OPENSSL_LH_doall(ossl_check_OPENSSL_STRING_lh_type(lh), ossl_check_OPENSSL_STRING_lh_doallfunc_type(dfn))
DEFINE_LHASH_OF_INTERNAL(OPENSSL_CSTRING);
#define lh_OPENSSL_CSTRING_new(hfn, cmp) ((LHASH_OF(OPENSSL_CSTRING) *)OPENSSL_LH_new(ossl_check_OPENSSL_CSTRING_lh_hashfunc_type(hfn), ossl_check_OPENSSL_CSTRING_lh_compfunc_type(cmp)))
#define lh_OPENSSL_CSTRING_new(hfn, cmp) ((LHASH_OF(OPENSSL_CSTRING) *)OPENSSL_LH_set_thunks(OPENSSL_LH_new(ossl_check_OPENSSL_CSTRING_lh_hashfunc_type(hfn), ossl_check_OPENSSL_CSTRING_lh_compfunc_type(cmp)), lh_OPENSSL_CSTRING_hash_thunk, lh_OPENSSL_CSTRING_comp_thunk, lh_OPENSSL_CSTRING_doall_thunk, lh_OPENSSL_CSTRING_doall_arg_thunk))
#define lh_OPENSSL_CSTRING_free(lh) OPENSSL_LH_free(ossl_check_OPENSSL_CSTRING_lh_type(lh))
#define lh_OPENSSL_CSTRING_flush(lh) OPENSSL_LH_flush(ossl_check_OPENSSL_CSTRING_lh_type(lh))
#define lh_OPENSSL_CSTRING_insert(lh, ptr) ((OPENSSL_CSTRING *)OPENSSL_LH_insert(ossl_check_OPENSSL_CSTRING_lh_type(lh), ossl_check_OPENSSL_CSTRING_lh_plain_type(ptr)))

View File

@ -28,8 +28,8 @@ extern "C" {
* These macros express version number MAJOR.MINOR.PATCH exactly
*/
# define OPENSSL_VERSION_MAJOR 3
# define OPENSSL_VERSION_MINOR 0
# define OPENSSL_VERSION_PATCH 15
# define OPENSSL_VERSION_MINOR 4
# define OPENSSL_VERSION_PATCH 0
/*
* Additional version information
@ -74,21 +74,21 @@ extern "C" {
* longer variant with OPENSSL_VERSION_PRE_RELEASE_STR and
* OPENSSL_VERSION_BUILD_METADATA_STR appended.
*/
# define OPENSSL_VERSION_STR "3.0.15"
# define OPENSSL_FULL_VERSION_STR "3.0.15"
# define OPENSSL_VERSION_STR "3.4.0"
# define OPENSSL_FULL_VERSION_STR "3.4.0"
/*
* SECTION 3: ADDITIONAL METADATA
*
* These strings are defined separately to allow them to be parsable.
*/
# define OPENSSL_RELEASE_DATE "3 Sep 2024"
# define OPENSSL_RELEASE_DATE "22 Oct 2024"
/*
* SECTION 4: BACKWARD COMPATIBILITY
*/
# define OPENSSL_VERSION_TEXT "OpenSSL 3.0.15 3 Sep 2024"
# define OPENSSL_VERSION_TEXT "OpenSSL 3.4.0 22 Oct 2024"
/* Synthesize OPENSSL_VERSION_NUMBER with the layout 0xMNN00PPSL */
# ifdef OPENSSL_VERSION_PRE_RELEASE

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/pkcs12.h.in
*
* Copyright 1999-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1999-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -25,6 +25,9 @@
# include <openssl/core.h>
# include <openssl/x509.h>
# include <openssl/pkcs12err.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -41,6 +44,7 @@ extern "C" {
# define PKCS12_MAC_KEY_LENGTH 20
/* The macro is expected to be used only internally. Kept for backwards compatibility. */
# define PKCS12_SALT_LEN 8
/* It's not clear if these are actually needed... */
@ -130,7 +134,9 @@ int PKCS12_SAFEBAG_get_bag_nid(const PKCS12_SAFEBAG *bag);
const ASN1_TYPE *PKCS12_SAFEBAG_get0_bag_obj(const PKCS12_SAFEBAG *bag);
const ASN1_OBJECT *PKCS12_SAFEBAG_get0_bag_type(const PKCS12_SAFEBAG *bag);
X509 *PKCS12_SAFEBAG_get1_cert_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
X509 *PKCS12_SAFEBAG_get1_cert(const PKCS12_SAFEBAG *bag);
X509_CRL *PKCS12_SAFEBAG_get1_crl_ex(const PKCS12_SAFEBAG *bag, OSSL_LIB_CTX *libctx, const char *propq);
X509_CRL *PKCS12_SAFEBAG_get1_crl(const PKCS12_SAFEBAG *bag);
const STACK_OF(PKCS12_SAFEBAG) *
PKCS12_SAFEBAG_get0_safes(const PKCS12_SAFEBAG *bag);
@ -218,6 +224,7 @@ ASN1_TYPE *PKCS12_get_attr_gen(const STACK_OF(X509_ATTRIBUTE) *attrs,
char *PKCS12_get_friendlyname(PKCS12_SAFEBAG *bag);
const STACK_OF(X509_ATTRIBUTE) *
PKCS12_SAFEBAG_get0_attrs(const PKCS12_SAFEBAG *bag);
void PKCS12_SAFEBAG_set0_attrs(PKCS12_SAFEBAG *bag, STACK_OF(X509_ATTRIBUTE) *attrs);
unsigned char *PKCS12_pbe_crypt(const X509_ALGOR *algor,
const char *pass, int passlen,
const unsigned char *in, int inlen,
@ -285,6 +292,9 @@ int PKCS12_verify_mac(PKCS12 *p12, const char *pass, int passlen);
int PKCS12_set_mac(PKCS12 *p12, const char *pass, int passlen,
unsigned char *salt, int saltlen, int iter,
const EVP_MD *md_type);
int PKCS12_set_pbmac1_pbkdf2(PKCS12 *p12, const char *pass, int passlen,
unsigned char *salt, int saltlen, int iter,
const EVP_MD *md_type, const char *prf_md_name);
int PKCS12_setup_mac(PKCS12 *p12, int iter, unsigned char *salt,
int saltlen, const EVP_MD *md_type);
unsigned char *OPENSSL_asc2uni(const char *asc, int asclen,
@ -305,6 +315,7 @@ DECLARE_ASN1_ITEM(PKCS12_AUTHSAFES)
void PKCS12_PBE_add(void);
int PKCS12_parse(PKCS12 *p12, const char *pass, EVP_PKEY **pkey, X509 **cert,
STACK_OF(X509) **ca);
typedef int PKCS12_create_cb(PKCS12_SAFEBAG *bag, void *cbarg);
PKCS12 *PKCS12_create(const char *pass, const char *name, EVP_PKEY *pkey,
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
int iter, int mac_iter, int keytype);
@ -312,6 +323,11 @@ PKCS12 *PKCS12_create_ex(const char *pass, const char *name, EVP_PKEY *pkey,
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
int iter, int mac_iter, int keytype,
OSSL_LIB_CTX *ctx, const char *propq);
PKCS12 *PKCS12_create_ex2(const char *pass, const char *name, EVP_PKEY *pkey,
X509 *cert, STACK_OF(X509) *ca, int nid_key, int nid_cert,
int iter, int mac_iter, int keytype,
OSSL_LIB_CTX *ctx, const char *propq,
PKCS12_create_cb *cb, void *cbarg);
PKCS12_SAFEBAG *PKCS12_add_cert(STACK_OF(PKCS12_SAFEBAG) **pbags, X509 *cert);
PKCS12_SAFEBAG *PKCS12_add_key(STACK_OF(PKCS12_SAFEBAG) **pbags,

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/pkcs7.h.in
*
* Copyright 1995-2023 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -28,6 +28,9 @@
# include <openssl/symhacks.h>
# include <openssl/types.h>
# include <openssl/pkcs7err.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -131,8 +134,8 @@ SKM_DEFINE_STACK_OF_INTERNAL(PKCS7_RECIP_INFO, PKCS7_RECIP_INFO, PKCS7_RECIP_INF
typedef struct pkcs7_signed_st {
ASN1_INTEGER *version; /* version 1 */
STACK_OF(X509_ALGOR) *md_algs; /* md used */
STACK_OF(X509) *cert; /* [ 0 ] */
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
struct pkcs7_st *contents;
} PKCS7_SIGNED;
@ -158,8 +161,8 @@ typedef struct pkcs7_enveloped_st {
typedef struct pkcs7_signedandenveloped_st {
ASN1_INTEGER *version; /* version 1 */
STACK_OF(X509_ALGOR) *md_algs; /* md used */
STACK_OF(X509) *cert; /* [ 0 ] */
STACK_OF(X509_CRL) *crl; /* [ 1 ] */
STACK_OF(X509) *cert; /* [ 0 ] */ /* name should be 'certificates' */
STACK_OF(X509_CRL) *crl; /* [ 1 ] */ /* name should be 'crls' */
STACK_OF(PKCS7_SIGNER_INFO) *signer_info;
PKCS7_ENC_CONTENT *enc_data;
STACK_OF(PKCS7_RECIP_INFO) *recipientinfo;
@ -200,7 +203,7 @@ typedef struct pkcs7_st {
/* NID_pkcs7_data */
ASN1_OCTET_STRING *data;
/* NID_pkcs7_signed */
PKCS7_SIGNED *sign;
PKCS7_SIGNED *sign; /* field name 'signed' would clash with C keyword */
/* NID_pkcs7_enveloped */
PKCS7_ENVELOPE *enveloped;
/* NID_pkcs7_signedAndEnveloped */
@ -341,13 +344,13 @@ int PKCS7_SIGNER_INFO_set(PKCS7_SIGNER_INFO *p7i, X509 *x509, EVP_PKEY *pkey,
const EVP_MD *dgst);
int PKCS7_SIGNER_INFO_sign(PKCS7_SIGNER_INFO *si);
int PKCS7_add_signer(PKCS7 *p7, PKCS7_SIGNER_INFO *p7i);
int PKCS7_add_certificate(PKCS7 *p7, X509 *x509);
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *x509);
int PKCS7_add_certificate(PKCS7 *p7, X509 *cert);
int PKCS7_add_crl(PKCS7 *p7, X509_CRL *crl);
int PKCS7_content_new(PKCS7 *p7, int nid);
int PKCS7_dataVerify(X509_STORE *cert_store, X509_STORE_CTX *ctx,
BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si);
int PKCS7_signatureVerify(BIO *bio, PKCS7 *p7, PKCS7_SIGNER_INFO *si,
X509 *x509);
X509 *signer);
BIO *PKCS7_dataInit(PKCS7 *p7, BIO *bio);
int PKCS7_dataFinal(PKCS7 *p7, BIO *bio);

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/ssl.h.in
*
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
* Copyright 2005 Nokia. All rights reserved.
*
@ -24,6 +24,7 @@
# endif
# include <openssl/e_os2.h>
# include <openssl/e_ostime.h>
# include <openssl/opensslconf.h>
# include <openssl/comp.h>
# include <openssl/bio.h>
@ -42,6 +43,9 @@
# include <openssl/ct.h>
# include <openssl/sslerr.h>
# include <openssl/prov_ssl.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -231,10 +235,8 @@ typedef struct ssl_cipher_st SSL_CIPHER;
typedef struct ssl_session_st SSL_SESSION;
typedef struct tls_sigalgs_st TLS_SIGALGS;
typedef struct ssl_conf_ctx_st SSL_CONF_CTX;
typedef struct ssl_comp_st SSL_COMP;
STACK_OF(SSL_CIPHER);
STACK_OF(SSL_COMP);
/* SRTP protection profiles for use with the use_srtp extension (RFC 5764)*/
typedef struct srtp_protection_profile_st {
@ -278,28 +280,31 @@ typedef int (*tls_session_secret_cb_fn)(SSL *s, void *secret, int *secret_len,
/* Extension context codes */
/* This extension is only allowed in TLS */
#define SSL_EXT_TLS_ONLY 0x0001
#define SSL_EXT_TLS_ONLY 0x00001
/* This extension is only allowed in DTLS */
#define SSL_EXT_DTLS_ONLY 0x0002
#define SSL_EXT_DTLS_ONLY 0x00002
/* Some extensions may be allowed in DTLS but we don't implement them for it */
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x0004
#define SSL_EXT_TLS_IMPLEMENTATION_ONLY 0x00004
/* Most extensions are not defined for SSLv3 but EXT_TYPE_renegotiate is */
#define SSL_EXT_SSL3_ALLOWED 0x0008
#define SSL_EXT_SSL3_ALLOWED 0x00008
/* Extension is only defined for TLS1.2 and below */
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x0010
#define SSL_EXT_TLS1_2_AND_BELOW_ONLY 0x00010
/* Extension is only defined for TLS1.3 and above */
#define SSL_EXT_TLS1_3_ONLY 0x0020
#define SSL_EXT_TLS1_3_ONLY 0x00020
/* Ignore this extension during parsing if we are resuming */
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x0040
#define SSL_EXT_CLIENT_HELLO 0x0080
#define SSL_EXT_IGNORE_ON_RESUMPTION 0x00040
#define SSL_EXT_CLIENT_HELLO 0x00080
/* Really means TLS1.2 or below */
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x0100
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x0200
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x0400
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x0800
#define SSL_EXT_TLS1_3_CERTIFICATE 0x1000
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x2000
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x4000
#define SSL_EXT_TLS1_2_SERVER_HELLO 0x00100
#define SSL_EXT_TLS1_3_SERVER_HELLO 0x00200
#define SSL_EXT_TLS1_3_ENCRYPTED_EXTENSIONS 0x00400
#define SSL_EXT_TLS1_3_HELLO_RETRY_REQUEST 0x00800
#define SSL_EXT_TLS1_3_CERTIFICATE 0x01000
#define SSL_EXT_TLS1_3_NEW_SESSION_TICKET 0x02000
#define SSL_EXT_TLS1_3_CERTIFICATE_REQUEST 0x04000
#define SSL_EXT_TLS1_3_CERTIFICATE_COMPRESSION 0x08000
/* When sending a raw public key in a certificate message */
#define SSL_EXT_TLS1_3_RAW_PUBLIC_KEY 0x10000
/* Typedefs for handling custom extensions */
@ -430,6 +435,19 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
* interoperability with CryptoPro CSP 3.x
*/
# define SSL_OP_CRYPTOPRO_TLSEXT_BUG SSL_OP_BIT(31)
/*
* Disable RFC8879 certificate compression
* SSL_OP_NO_TX_CERTIFICATE_COMPRESSION: don't send compressed certificates,
* and ignore the extension when received.
* SSL_OP_NO_RX_CERTIFICATE_COMPRESSION: don't send the extension, and
* subsequently indicating that receiving is not supported
*/
# define SSL_OP_NO_TX_CERTIFICATE_COMPRESSION SSL_OP_BIT(32)
# define SSL_OP_NO_RX_CERTIFICATE_COMPRESSION SSL_OP_BIT(33)
/* Enable KTLS TX zerocopy on Linux */
# define SSL_OP_ENABLE_KTLS_TX_ZEROCOPY_SENDFILE SSL_OP_BIT(34)
#define SSL_OP_PREFER_NO_DHE_KEX SSL_OP_BIT(35)
/*
* Option "collections."
@ -574,6 +592,8 @@ typedef int (*SSL_async_callback_fn)(SSL *s, void *arg);
# define CERT_PKEY_CERT_TYPE 0x400
/* Cert chain suitable to Suite B */
# define CERT_PKEY_SUITEB 0x800
/* Cert pkey valid for raw public key use */
# define CERT_PKEY_RPK 0x1000
# define SSL_CONF_FLAG_CMDLINE 0x1
# define SSL_CONF_FLAG_FILE 0x2
@ -965,6 +985,7 @@ uint32_t SSL_get_recv_max_early_data(const SSL *s);
# include <openssl/tls1.h> /* This is mostly sslv3 with a few tweaks */
# include <openssl/dtls1.h> /* Datagram TLS */
# include <openssl/srtp.h> /* Support for the use_srtp extension */
# include <openssl/quic.h>
#ifdef __cplusplus
extern "C" {
@ -1000,32 +1021,6 @@ SKM_DEFINE_STACK_OF_INTERNAL(SSL_CIPHER, const SSL_CIPHER, SSL_CIPHER)
#define sk_SSL_CIPHER_dup(sk) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_dup(ossl_check_const_SSL_CIPHER_sk_type(sk)))
#define sk_SSL_CIPHER_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_deep_copy(ossl_check_const_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_copyfunc_type(copyfunc), ossl_check_SSL_CIPHER_freefunc_type(freefunc)))
#define sk_SSL_CIPHER_set_cmp_func(sk, cmp) ((sk_SSL_CIPHER_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_compfunc_type(cmp)))
SKM_DEFINE_STACK_OF_INTERNAL(SSL_COMP, SSL_COMP, SSL_COMP)
#define sk_SSL_COMP_num(sk) OPENSSL_sk_num(ossl_check_const_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_value(sk, idx) ((SSL_COMP *)OPENSSL_sk_value(ossl_check_const_SSL_COMP_sk_type(sk), (idx)))
#define sk_SSL_COMP_new(cmp) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new(ossl_check_SSL_COMP_compfunc_type(cmp)))
#define sk_SSL_COMP_new_null() ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new_null())
#define sk_SSL_COMP_new_reserve(cmp, n) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_new_reserve(ossl_check_SSL_COMP_compfunc_type(cmp), (n)))
#define sk_SSL_COMP_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SSL_COMP_sk_type(sk), (n))
#define sk_SSL_COMP_free(sk) OPENSSL_sk_free(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_zero(sk) OPENSSL_sk_zero(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_delete(sk, i) ((SSL_COMP *)OPENSSL_sk_delete(ossl_check_SSL_COMP_sk_type(sk), (i)))
#define sk_SSL_COMP_delete_ptr(sk, ptr) ((SSL_COMP *)OPENSSL_sk_delete_ptr(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr)))
#define sk_SSL_COMP_push(sk, ptr) OPENSSL_sk_push(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_pop(sk) ((SSL_COMP *)OPENSSL_sk_pop(ossl_check_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_shift(sk) ((SSL_COMP *)OPENSSL_sk_shift(ossl_check_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SSL_COMP_sk_type(sk),ossl_check_SSL_COMP_freefunc_type(freefunc))
#define sk_SSL_COMP_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr), (idx))
#define sk_SSL_COMP_set(sk, idx, ptr) ((SSL_COMP *)OPENSSL_sk_set(ossl_check_SSL_COMP_sk_type(sk), (idx), ossl_check_SSL_COMP_type(ptr)))
#define sk_SSL_COMP_find(sk, ptr) OPENSSL_sk_find(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr))
#define sk_SSL_COMP_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_type(ptr), pnum)
#define sk_SSL_COMP_sort(sk) OPENSSL_sk_sort(ossl_check_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SSL_COMP_sk_type(sk))
#define sk_SSL_COMP_dup(sk) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_dup(ossl_check_const_SSL_COMP_sk_type(sk)))
#define sk_SSL_COMP_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SSL_COMP) *)OPENSSL_sk_deep_copy(ossl_check_const_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_copyfunc_type(copyfunc), ossl_check_SSL_COMP_freefunc_type(freefunc)))
#define sk_SSL_COMP_set_cmp_func(sk, cmp) ((sk_SSL_COMP_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SSL_COMP_sk_type(sk), ossl_check_SSL_COMP_compfunc_type(cmp)))
/* compatibility */
@ -1066,6 +1061,7 @@ typedef enum {
DTLS_ST_CR_HELLO_VERIFY_REQUEST,
TLS_ST_CR_SRVR_HELLO,
TLS_ST_CR_CERT,
TLS_ST_CR_COMP_CERT,
TLS_ST_CR_CERT_STATUS,
TLS_ST_CR_KEY_EXCH,
TLS_ST_CR_CERT_REQ,
@ -1075,6 +1071,7 @@ typedef enum {
TLS_ST_CR_FINISHED,
TLS_ST_CW_CLNT_HELLO,
TLS_ST_CW_CERT,
TLS_ST_CW_COMP_CERT,
TLS_ST_CW_KEY_EXCH,
TLS_ST_CW_CERT_VRFY,
TLS_ST_CW_CHANGE,
@ -1085,10 +1082,12 @@ typedef enum {
DTLS_ST_SW_HELLO_VERIFY_REQUEST,
TLS_ST_SW_SRVR_HELLO,
TLS_ST_SW_CERT,
TLS_ST_SW_COMP_CERT,
TLS_ST_SW_KEY_EXCH,
TLS_ST_SW_CERT_REQ,
TLS_ST_SW_SRVR_DONE,
TLS_ST_SR_CERT,
TLS_ST_SR_COMP_CERT,
TLS_ST_SR_KEY_EXCH,
TLS_ST_SR_CERT_VRFY,
TLS_ST_SR_NEXT_PROTO,
@ -1380,6 +1379,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
# define SSL_CTRL_GET_SIGNATURE_NID 132
# define SSL_CTRL_GET_TMP_KEY 133
# define SSL_CTRL_GET_NEGOTIATED_GROUP 134
# define SSL_CTRL_GET_IANA_GROUPS 135
# define SSL_CTRL_SET_RETRY_VERIFY 136
# define SSL_CTRL_GET_VERIFY_CERT_STORE 137
# define SSL_CTRL_GET_CHAIN_CERT_STORE 138
@ -1485,6 +1485,8 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
# define SSL_get1_groups(s, glist) \
SSL_ctrl(s,SSL_CTRL_GET_GROUPS,0,(int*)(glist))
# define SSL_get0_iana_groups(s, plst) \
SSL_ctrl(s,SSL_CTRL_GET_IANA_GROUPS,0,(uint16_t **)(plst))
# define SSL_CTX_set1_groups(ctx, glist, glistlen) \
SSL_CTX_ctrl(ctx,SSL_CTRL_SET_GROUPS,glistlen,(int *)(glist))
# define SSL_CTX_set1_groups_list(ctx, s) \
@ -1549,6 +1551,7 @@ DECLARE_PEM_rw(SSL_SESSION, SSL_SESSION)
# define SSL_get_max_proto_version(s) \
SSL_ctrl(s, SSL_CTRL_GET_MAX_PROTO_VERSION, 0, NULL)
const char *SSL_get0_group_name(SSL *s);
const char *SSL_group_to_name(SSL *s, int id);
/* Backwards compatibility, original 1.1.0 names */
@ -1613,7 +1616,11 @@ void SSL_CTX_set1_cert_store(SSL_CTX *, X509_STORE *);
__owur int SSL_want(const SSL *s);
__owur int SSL_clear(SSL *s);
#ifndef OPENSSL_NO_DEPRECATED_3_4
OSSL_DEPRECATEDIN_3_4_FOR("not Y2038-safe, replace with SSL_CTX_flush_sessions_ex()")
void SSL_CTX_flush_sessions(SSL_CTX *ctx, long tm);
#endif
void SSL_CTX_flush_sessions_ex(SSL_CTX *ctx, time_t tm);
__owur const SSL_CIPHER *SSL_get_current_cipher(const SSL *s);
__owur const SSL_CIPHER *SSL_get_pending_cipher(const SSL *s);
@ -1725,13 +1732,21 @@ __owur const char *SSL_state_string(const SSL *s);
__owur const char *SSL_rstate_string(const SSL *s);
__owur const char *SSL_state_string_long(const SSL *s);
__owur const char *SSL_rstate_string_long(const SSL *s);
#ifndef OPENSSL_NO_DEPRECATED_3_4
OSSL_DEPRECATEDIN_3_4_FOR("not Y2038-safe, replace with SSL_SESSION_get_time_ex()")
__owur long SSL_SESSION_get_time(const SSL_SESSION *s);
OSSL_DEPRECATEDIN_3_4_FOR("not Y2038-safe, replace with SSL_SESSION_set_time_ex()")
__owur long SSL_SESSION_set_time(SSL_SESSION *s, long t);
#endif
__owur long SSL_SESSION_get_timeout(const SSL_SESSION *s);
__owur long SSL_SESSION_set_timeout(SSL_SESSION *s, long t);
__owur int SSL_SESSION_get_protocol_version(const SSL_SESSION *s);
__owur int SSL_SESSION_set_protocol_version(SSL_SESSION *s, int version);
__owur time_t SSL_SESSION_get_time_ex(const SSL_SESSION *s);
__owur time_t SSL_SESSION_set_time_ex(SSL_SESSION *s, time_t t);
__owur const char *SSL_SESSION_get0_hostname(const SSL_SESSION *s);
__owur int SSL_SESSION_set1_hostname(SSL_SESSION *s, const char *hostname);
void SSL_SESSION_get0_alpn_selected(const SSL_SESSION *s,
@ -1783,6 +1798,9 @@ __owur int SSL_has_matching_session_id(const SSL *s,
unsigned int id_len);
SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,
long length);
SSL_SESSION *d2i_SSL_SESSION_ex(SSL_SESSION **a, const unsigned char **pp,
long length, OSSL_LIB_CTX *libctx,
const char *propq);
# ifdef OPENSSL_X509_H
__owur X509 *SSL_get0_peer_certificate(const SSL *s);
@ -1840,6 +1858,8 @@ __owur int SSL_CTX_set_session_id_context(SSL_CTX *ctx,
SSL *SSL_new(SSL_CTX *ctx);
int SSL_up_ref(SSL *s);
int SSL_is_dtls(const SSL *s);
int SSL_is_tls(const SSL *s);
int SSL_is_quic(const SSL *s);
__owur int SSL_set_session_id_context(SSL *ssl, const unsigned char *sid_ctx,
unsigned int sid_ctx_len);
@ -1932,6 +1952,8 @@ size_t SSL_client_hello_get0_ciphers(SSL *s, const unsigned char **out);
size_t SSL_client_hello_get0_compression_methods(SSL *s,
const unsigned char **out);
int SSL_client_hello_get1_extensions_present(SSL *s, int **out, size_t *outlen);
int SSL_client_hello_get_extension_order(SSL *s, uint16_t *exts,
size_t *num_exts);
int SSL_client_hello_get0_ext(SSL *s, unsigned int type,
const unsigned char **out, size_t *outlen);
@ -1978,6 +2000,12 @@ long SSL_callback_ctrl(SSL *, int, void (*)(void));
long SSL_CTX_ctrl(SSL_CTX *ctx, int cmd, long larg, void *parg);
long SSL_CTX_callback_ctrl(SSL_CTX *, int, void (*)(void));
# define SSL_WRITE_FLAG_CONCLUDE (1U << 0)
__owur int SSL_write_ex2(SSL *s, const void *buf, size_t num,
uint64_t flags,
size_t *written);
# define SSL_EARLY_DATA_NOT_SENT 0
# define SSL_EARLY_DATA_REJECTED 1
# define SSL_EARLY_DATA_ACCEPTED 2
@ -1986,6 +2014,7 @@ __owur int SSL_get_early_data_status(const SSL *s);
__owur int SSL_get_error(const SSL *s, int ret_code);
__owur const char *SSL_get_version(const SSL *s);
__owur int SSL_get_handshake_rtt(const SSL *s, uint64_t *rtt);
/* This sets the 'default' SSL version that SSL_new() will create */
# ifndef OPENSSL_NO_DEPRECATED_3_0
@ -2281,6 +2310,8 @@ void SSL_CTX_set_record_padding_callback(SSL_CTX *ctx,
void SSL_CTX_set_record_padding_callback_arg(SSL_CTX *ctx, void *arg);
void *SSL_CTX_get_record_padding_callback_arg(const SSL_CTX *ctx);
int SSL_CTX_set_block_padding(SSL_CTX *ctx, size_t block_size);
int SSL_CTX_set_block_padding_ex(SSL_CTX *ctx, size_t app_block_size,
size_t hs_block_size);
int SSL_set_record_padding_callback(SSL *ssl,
size_t (*cb) (SSL *ssl, int type,
@ -2288,12 +2319,230 @@ int SSL_set_record_padding_callback(SSL *ssl,
void SSL_set_record_padding_callback_arg(SSL *ssl, void *arg);
void *SSL_get_record_padding_callback_arg(const SSL *ssl);
int SSL_set_block_padding(SSL *ssl, size_t block_size);
int SSL_set_block_padding_ex(SSL *ssl, size_t app_block_size,
size_t hs_block_size);
int SSL_set_num_tickets(SSL *s, size_t num_tickets);
size_t SSL_get_num_tickets(const SSL *s);
int SSL_CTX_set_num_tickets(SSL_CTX *ctx, size_t num_tickets);
size_t SSL_CTX_get_num_tickets(const SSL_CTX *ctx);
/* QUIC support */
int SSL_handle_events(SSL *s);
__owur int SSL_get_event_timeout(SSL *s, struct timeval *tv, int *is_infinite);
__owur int SSL_get_rpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
__owur int SSL_get_wpoll_descriptor(SSL *s, BIO_POLL_DESCRIPTOR *desc);
__owur int SSL_net_read_desired(SSL *s);
__owur int SSL_net_write_desired(SSL *s);
__owur int SSL_set_blocking_mode(SSL *s, int blocking);
__owur int SSL_get_blocking_mode(SSL *s);
__owur int SSL_set1_initial_peer_addr(SSL *s, const BIO_ADDR *peer_addr);
__owur SSL *SSL_get0_connection(SSL *s);
__owur int SSL_is_connection(SSL *s);
#define SSL_STREAM_TYPE_NONE 0
#define SSL_STREAM_TYPE_READ (1U << 0)
#define SSL_STREAM_TYPE_WRITE (1U << 1)
#define SSL_STREAM_TYPE_BIDI (SSL_STREAM_TYPE_READ | SSL_STREAM_TYPE_WRITE)
__owur int SSL_get_stream_type(SSL *s);
__owur uint64_t SSL_get_stream_id(SSL *s);
__owur int SSL_is_stream_local(SSL *s);
#define SSL_DEFAULT_STREAM_MODE_NONE 0
#define SSL_DEFAULT_STREAM_MODE_AUTO_BIDI 1
#define SSL_DEFAULT_STREAM_MODE_AUTO_UNI 2
__owur int SSL_set_default_stream_mode(SSL *s, uint32_t mode);
#define SSL_STREAM_FLAG_UNI (1U << 0)
#define SSL_STREAM_FLAG_NO_BLOCK (1U << 1)
#define SSL_STREAM_FLAG_ADVANCE (1U << 2)
__owur SSL *SSL_new_stream(SSL *s, uint64_t flags);
#define SSL_INCOMING_STREAM_POLICY_AUTO 0
#define SSL_INCOMING_STREAM_POLICY_ACCEPT 1
#define SSL_INCOMING_STREAM_POLICY_REJECT 2
__owur int SSL_set_incoming_stream_policy(SSL *s, int policy, uint64_t aec);
#define SSL_ACCEPT_STREAM_NO_BLOCK (1U << 0)
__owur SSL *SSL_accept_stream(SSL *s, uint64_t flags);
__owur size_t SSL_get_accept_stream_queue_len(SSL *s);
# ifndef OPENSSL_NO_QUIC
__owur int SSL_inject_net_dgram(SSL *s, const unsigned char *buf,
size_t buf_len,
const BIO_ADDR *peer,
const BIO_ADDR *local);
# endif
typedef struct ssl_shutdown_ex_args_st {
uint64_t quic_error_code;
const char *quic_reason;
} SSL_SHUTDOWN_EX_ARGS;
#define SSL_SHUTDOWN_FLAG_RAPID (1U << 0)
#define SSL_SHUTDOWN_FLAG_NO_STREAM_FLUSH (1U << 1)
#define SSL_SHUTDOWN_FLAG_NO_BLOCK (1U << 2)
#define SSL_SHUTDOWN_FLAG_WAIT_PEER (1U << 3)
__owur int SSL_shutdown_ex(SSL *ssl, uint64_t flags,
const SSL_SHUTDOWN_EX_ARGS *args,
size_t args_len);
__owur int SSL_stream_conclude(SSL *ssl, uint64_t flags);
typedef struct ssl_stream_reset_args_st {
uint64_t quic_error_code;
} SSL_STREAM_RESET_ARGS;
__owur int SSL_stream_reset(SSL *ssl,
const SSL_STREAM_RESET_ARGS *args,
size_t args_len);
#define SSL_STREAM_STATE_NONE 0
#define SSL_STREAM_STATE_OK 1
#define SSL_STREAM_STATE_WRONG_DIR 2
#define SSL_STREAM_STATE_FINISHED 3
#define SSL_STREAM_STATE_RESET_LOCAL 4
#define SSL_STREAM_STATE_RESET_REMOTE 5
#define SSL_STREAM_STATE_CONN_CLOSED 6
__owur int SSL_get_stream_read_state(SSL *ssl);
__owur int SSL_get_stream_write_state(SSL *ssl);
__owur int SSL_get_stream_read_error_code(SSL *ssl, uint64_t *app_error_code);
__owur int SSL_get_stream_write_error_code(SSL *ssl, uint64_t *app_error_code);
#define SSL_CONN_CLOSE_FLAG_LOCAL (1U << 0)
#define SSL_CONN_CLOSE_FLAG_TRANSPORT (1U << 1)
typedef struct ssl_conn_close_info_st {
uint64_t error_code, frame_type;
const char *reason;
size_t reason_len;
uint32_t flags;
} SSL_CONN_CLOSE_INFO;
__owur int SSL_get_conn_close_info(SSL *ssl,
SSL_CONN_CLOSE_INFO *info,
size_t info_len);
# define SSL_VALUE_CLASS_GENERIC 0
# define SSL_VALUE_CLASS_FEATURE_REQUEST 1
# define SSL_VALUE_CLASS_FEATURE_PEER_REQUEST 2
# define SSL_VALUE_CLASS_FEATURE_NEGOTIATED 3
# define SSL_VALUE_NONE 0
# define SSL_VALUE_QUIC_STREAM_BIDI_LOCAL_AVAIL 1
# define SSL_VALUE_QUIC_STREAM_BIDI_REMOTE_AVAIL 2
# define SSL_VALUE_QUIC_STREAM_UNI_LOCAL_AVAIL 3
# define SSL_VALUE_QUIC_STREAM_UNI_REMOTE_AVAIL 4
# define SSL_VALUE_QUIC_IDLE_TIMEOUT 5
# define SSL_VALUE_EVENT_HANDLING_MODE 6
# define SSL_VALUE_STREAM_WRITE_BUF_SIZE 7
# define SSL_VALUE_STREAM_WRITE_BUF_USED 8
# define SSL_VALUE_STREAM_WRITE_BUF_AVAIL 9
# define SSL_VALUE_EVENT_HANDLING_MODE_INHERIT 0
# define SSL_VALUE_EVENT_HANDLING_MODE_IMPLICIT 1
# define SSL_VALUE_EVENT_HANDLING_MODE_EXPLICIT 2
int SSL_get_value_uint(SSL *s, uint32_t class_, uint32_t id, uint64_t *v);
int SSL_set_value_uint(SSL *s, uint32_t class_, uint32_t id, uint64_t v);
# define SSL_get_generic_value_uint(ssl, id, v) \
SSL_get_value_uint((ssl), SSL_VALUE_CLASS_GENERIC, (id), (v))
# define SSL_set_generic_value_uint(ssl, id, v) \
SSL_set_value_uint((ssl), SSL_VALUE_CLASS_GENERIC, (id), (v))
# define SSL_get_feature_request_uint(ssl, id, v) \
SSL_get_value_uint((ssl), SSL_VALUE_CLASS_FEATURE_REQUEST, (id), (v))
# define SSL_set_feature_request_uint(ssl, id, v) \
SSL_set_value_uint((ssl), SSL_VALUE_CLASS_FEATURE_REQUEST, (id), (v))
# define SSL_get_feature_peer_request_uint(ssl, id, v) \
SSL_get_value_uint((ssl), SSL_VALUE_CLASS_FEATURE_PEER_REQUEST, (id), (v))
# define SSL_get_feature_negotiated_uint(ssl, id, v) \
SSL_get_value_uint((ssl), SSL_VALUE_CLASS_FEATURE_NEGOTIATED, (id), (v))
# define SSL_get_quic_stream_bidi_local_avail(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_QUIC_STREAM_BIDI_LOCAL_AVAIL, \
(value))
# define SSL_get_quic_stream_bidi_remote_avail(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_QUIC_STREAM_BIDI_REMOTE_AVAIL, \
(value))
# define SSL_get_quic_stream_uni_local_avail(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_QUIC_STREAM_UNI_LOCAL_AVAIL, \
(value))
# define SSL_get_quic_stream_uni_remote_avail(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_QUIC_STREAM_UNI_REMOTE_AVAIL, \
(value))
# define SSL_get_event_handling_mode(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_EVENT_HANDLING_MODE, \
(value))
# define SSL_set_event_handling_mode(ssl, value) \
SSL_set_generic_value_uint((ssl), SSL_VALUE_EVENT_HANDLING_MODE, \
(value))
# define SSL_get_stream_write_buf_size(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_STREAM_WRITE_BUF_SIZE, \
(value))
# define SSL_get_stream_write_buf_used(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_STREAM_WRITE_BUF_USED, \
(value))
# define SSL_get_stream_write_buf_avail(ssl, value) \
SSL_get_generic_value_uint((ssl), SSL_VALUE_STREAM_WRITE_BUF_AVAIL, \
(value))
# define SSL_POLL_EVENT_NONE 0
# define SSL_POLL_EVENT_F (1U << 0) /* F (Failure) */
# define SSL_POLL_EVENT_EL (1U << 1) /* EL (Exception on Listener) */
# define SSL_POLL_EVENT_EC (1U << 2) /* EC (Exception on Conn) */
# define SSL_POLL_EVENT_ECD (1U << 3) /* ECD (Exception on Conn Drained) */
# define SSL_POLL_EVENT_ER (1U << 4) /* ER (Exception on Read) */
# define SSL_POLL_EVENT_EW (1U << 5) /* EW (Exception on Write) */
# define SSL_POLL_EVENT_R (1U << 6) /* R (Readable) */
# define SSL_POLL_EVENT_W (1U << 7) /* W (Writable) */
# define SSL_POLL_EVENT_IC (1U << 8) /* IC (Incoming Connection) */
# define SSL_POLL_EVENT_ISB (1U << 9) /* ISB (Incoming Stream: Bidi) */
# define SSL_POLL_EVENT_ISU (1U << 10) /* ISU (Incoming Stream: Uni) */
# define SSL_POLL_EVENT_OSB (1U << 11) /* OSB (Outgoing Stream: Bidi) */
# define SSL_POLL_EVENT_OSU (1U << 12) /* OSU (Outgoing Stream: Uni) */
# define SSL_POLL_EVENT_RW (SSL_POLL_EVENT_R | SSL_POLL_EVENT_W)
# define SSL_POLL_EVENT_RE (SSL_POLL_EVENT_R | SSL_POLL_EVENT_ER)
# define SSL_POLL_EVENT_WE (SSL_POLL_EVENT_W | SSL_POLL_EVENT_EW)
# define SSL_POLL_EVENT_RWE (SSL_POLL_EVENT_RE | SSL_POLL_EVENT_WE)
# define SSL_POLL_EVENT_E (SSL_POLL_EVENT_EL | SSL_POLL_EVENT_EC \
| SSL_POLL_EVENT_ER | SSL_POLL_EVENT_EW)
# define SSL_POLL_EVENT_IS (SSL_POLL_EVENT_ISB | SSL_POLL_EVENT_ISU)
# define SSL_POLL_EVENT_ISE (SSL_POLL_EVENT_IS | SSL_POLL_EVENT_EC)
# define SSL_POLL_EVENT_I (SSL_POLL_EVENT_IS | SSL_POLL_EVENT_IC)
# define SSL_POLL_EVENT_OS (SSL_POLL_EVENT_OSB | SSL_POLL_EVENT_OSU)
# define SSL_POLL_EVENT_OSE (SSL_POLL_EVENT_OS | SSL_POLL_EVENT_EC)
typedef struct ssl_poll_item_st {
BIO_POLL_DESCRIPTOR desc;
uint64_t events, revents;
} SSL_POLL_ITEM;
# define SSL_POLL_FLAG_NO_HANDLE_EVENTS (1U << 0)
__owur int SSL_poll(SSL_POLL_ITEM *items,
size_t num_items,
size_t stride,
const struct timeval *timeout,
uint64_t flags,
size_t *result_count);
static ossl_inline ossl_unused BIO_POLL_DESCRIPTOR
SSL_as_poll_descriptor(SSL *s)
{
BIO_POLL_DESCRIPTOR d;
d.type = BIO_POLL_DESCRIPTOR_TYPE_SSL;
d.value.ssl = s;
return d;
}
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
# define SSL_cache_hit(s) SSL_session_reused(s)
# endif
@ -2593,6 +2842,36 @@ void SSL_set_allow_early_data_cb(SSL *s,
const char *OSSL_default_cipher_list(void);
const char *OSSL_default_ciphersuites(void);
/* RFC8879 Certificate compression APIs */
int SSL_CTX_compress_certs(SSL_CTX *ctx, int alg);
int SSL_compress_certs(SSL *ssl, int alg);
int SSL_CTX_set1_cert_comp_preference(SSL_CTX *ctx, int *algs, size_t len);
int SSL_set1_cert_comp_preference(SSL *ssl, int *algs, size_t len);
int SSL_CTX_set1_compressed_cert(SSL_CTX *ctx, int algorithm, unsigned char *comp_data,
size_t comp_length, size_t orig_length);
int SSL_set1_compressed_cert(SSL *ssl, int algorithm, unsigned char *comp_data,
size_t comp_length, size_t orig_length);
size_t SSL_CTX_get1_compressed_cert(SSL_CTX *ctx, int alg, unsigned char **data, size_t *orig_len);
size_t SSL_get1_compressed_cert(SSL *ssl, int alg, unsigned char **data, size_t *orig_len);
__owur int SSL_add_expected_rpk(SSL *s, EVP_PKEY *rpk);
__owur EVP_PKEY *SSL_get0_peer_rpk(const SSL *s);
__owur EVP_PKEY *SSL_SESSION_get0_peer_rpk(SSL_SESSION *s);
__owur int SSL_get_negotiated_client_cert_type(const SSL *s);
__owur int SSL_get_negotiated_server_cert_type(const SSL *s);
__owur int SSL_set1_client_cert_type(SSL *s, const unsigned char *val, size_t len);
__owur int SSL_set1_server_cert_type(SSL *s, const unsigned char *val, size_t len);
__owur int SSL_CTX_set1_client_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
__owur int SSL_CTX_set1_server_cert_type(SSL_CTX *ctx, const unsigned char *val, size_t len);
__owur int SSL_get0_client_cert_type(const SSL *s, unsigned char **t, size_t *len);
__owur int SSL_get0_server_cert_type(const SSL *s, unsigned char **t, size_t *len);
__owur int SSL_CTX_get0_client_cert_type(const SSL_CTX *ctx, unsigned char **t, size_t *len);
__owur int SSL_CTX_get0_server_cert_type(const SSL_CTX *s, unsigned char **t, size_t *len);
# ifdef __cplusplus
}
# endif

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/x509.h.in
*
* Copyright 1995-2022 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
* Copyright (c) 2002, Oracle and/or its affiliates. All rights reserved
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
@ -40,6 +40,9 @@
# include <openssl/sha.h>
# include <openssl/x509err.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -162,16 +165,24 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_CRL, X509_CRL, X509_CRL)
# define X509_FILETYPE_ASN1 2
# define X509_FILETYPE_DEFAULT 3
# define X509v3_KU_DIGITAL_SIGNATURE 0x0080
# define X509v3_KU_NON_REPUDIATION 0x0040
# define X509v3_KU_KEY_ENCIPHERMENT 0x0020
# define X509v3_KU_DATA_ENCIPHERMENT 0x0010
# define X509v3_KU_KEY_AGREEMENT 0x0008
# define X509v3_KU_KEY_CERT_SIGN 0x0004
# define X509v3_KU_CRL_SIGN 0x0002
# define X509v3_KU_ENCIPHER_ONLY 0x0001
# define X509v3_KU_DECIPHER_ONLY 0x8000
# define X509v3_KU_UNDEF 0xffff
/*-
* <https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3>:
* The KeyUsage BITSTRING is treated as a little-endian integer, hence bit `0`
* is 0x80, while bit `7` is 0x01 (the LSB of the integer value), bit `8` is
* then the MSB of the second octet, or 0x8000.
*/
# define X509v3_KU_DIGITAL_SIGNATURE 0x0080 /* (0) */
# define X509v3_KU_NON_REPUDIATION 0x0040 /* (1) */
# define X509v3_KU_KEY_ENCIPHERMENT 0x0020 /* (2) */
# define X509v3_KU_DATA_ENCIPHERMENT 0x0010 /* (3) */
# define X509v3_KU_KEY_AGREEMENT 0x0008 /* (4) */
# define X509v3_KU_KEY_CERT_SIGN 0x0004 /* (5) */
# define X509v3_KU_CRL_SIGN 0x0002 /* (6) */
# define X509v3_KU_ENCIPHER_ONLY 0x0001 /* (7) */
# define X509v3_KU_DECIPHER_ONLY 0x8000 /* (8) */
# ifndef OPENSSL_NO_DEPRECATED_3_4
# define X509v3_KU_UNDEF 0xffff /* vestigial, not used */
# endif
struct X509_algor_st {
ASN1_OBJECT *algorithm;
@ -462,7 +473,12 @@ typedef struct PBKDF2PARAM_st {
X509_ALGOR *prf;
} PBKDF2PARAM;
#ifndef OPENSSL_NO_SCRYPT
typedef struct {
X509_ALGOR *keyDerivationFunc;
X509_ALGOR *messageAuthScheme;
} PBMAC1PARAM;
# ifndef OPENSSL_NO_SCRYPT
typedef struct SCRYPT_PARAMS_st {
ASN1_OCTET_STRING *salt;
ASN1_INTEGER *costParameter;
@ -470,7 +486,7 @@ typedef struct SCRYPT_PARAMS_st {
ASN1_INTEGER *parallelizationParameter;
ASN1_INTEGER *keyLength;
} SCRYPT_PARAMS;
#endif
# endif
#ifdef __cplusplus
}
@ -603,6 +619,8 @@ EVP_PKEY *d2i_PrivateKey_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
const char *propq);
EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
int i2d_PUBKEY_fp(FILE *fp, const EVP_PKEY *pkey);
EVP_PKEY *d2i_PUBKEY_ex_fp(FILE *fp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
const char *propq);
EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
# endif
@ -651,6 +669,8 @@ EVP_PKEY *d2i_PrivateKey_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
const char *propq);
EVP_PKEY *d2i_PrivateKey_bio(BIO *bp, EVP_PKEY **a);
int i2d_PUBKEY_bio(BIO *bp, const EVP_PKEY *pkey);
EVP_PKEY *d2i_PUBKEY_ex_bio(BIO *bp, EVP_PKEY **a, OSSL_LIB_CTX *libctx,
const char *propq);
EVP_PKEY *d2i_PUBKEY_bio(BIO *bp, EVP_PKEY **a);
DECLARE_ASN1_DUP_FUNCTION(X509)
@ -884,12 +904,12 @@ int X509_REQ_get_signature_nid(const X509_REQ *req);
int i2d_re_X509_REQ_tbs(X509_REQ *req, unsigned char **pp);
int X509_REQ_set_pubkey(X509_REQ *x, EVP_PKEY *pkey);
EVP_PKEY *X509_REQ_get_pubkey(X509_REQ *req);
EVP_PKEY *X509_REQ_get0_pubkey(X509_REQ *req);
EVP_PKEY *X509_REQ_get0_pubkey(const X509_REQ *req);
X509_PUBKEY *X509_REQ_get_X509_PUBKEY(X509_REQ *req);
int X509_REQ_extension_nid(int nid);
int *X509_REQ_get_extension_nids(void);
void X509_REQ_set_extension_nids(int *nids);
STACK_OF(X509_EXTENSION) *X509_REQ_get_extensions(X509_REQ *req);
STACK_OF(X509_EXTENSION) *X509_REQ_get_extensions(OSSL_FUTURE_CONST X509_REQ *req);
int X509_REQ_add_extensions_nid(X509_REQ *req,
const STACK_OF(X509_EXTENSION) *exts, int nid);
int X509_REQ_add_extensions(X509_REQ *req, const STACK_OF(X509_EXTENSION) *ext);
@ -950,13 +970,14 @@ X509_REVOKED_get0_extensions(const X509_REVOKED *r);
X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer,
EVP_PKEY *skey, const EVP_MD *md, unsigned int flags);
int X509_REQ_check_private_key(X509_REQ *x509, EVP_PKEY *pkey);
int X509_REQ_check_private_key(const X509_REQ *req, EVP_PKEY *pkey);
int X509_check_private_key(const X509 *x509, const EVP_PKEY *pkey);
int X509_check_private_key(const X509 *cert, const EVP_PKEY *pkey);
int X509_chain_check_suiteb(int *perror_depth,
X509 *x, STACK_OF(X509) *chain,
unsigned long flags);
int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk, unsigned long flags);
void OSSL_STACK_OF_X509_free(STACK_OF(X509) *certs);
STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain);
int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b);
@ -1077,6 +1098,9 @@ X509_EXTENSION *X509v3_get_ext(const STACK_OF(X509_EXTENSION) *x, int loc);
X509_EXTENSION *X509v3_delete_ext(STACK_OF(X509_EXTENSION) *x, int loc);
STACK_OF(X509_EXTENSION) *X509v3_add_ext(STACK_OF(X509_EXTENSION) **x,
X509_EXTENSION *ex, int loc);
STACK_OF(X509_EXTENSION)
*X509v3_add_extensions(STACK_OF(X509_EXTENSION) **target,
const STACK_OF(X509_EXTENSION) *exts);
int X509_get_ext_count(const X509 *x);
int X509_get_ext_by_NID(const X509 *x, int nid, int lastpos);
@ -1198,9 +1222,10 @@ X509 *X509_find_by_subject(STACK_OF(X509) *sk, const X509_NAME *name);
DECLARE_ASN1_FUNCTIONS(PBEPARAM)
DECLARE_ASN1_FUNCTIONS(PBE2PARAM)
DECLARE_ASN1_FUNCTIONS(PBKDF2PARAM)
#ifndef OPENSSL_NO_SCRYPT
DECLARE_ASN1_FUNCTIONS(PBMAC1PARAM)
# ifndef OPENSSL_NO_SCRYPT
DECLARE_ASN1_FUNCTIONS(SCRYPT_PARAMS)
#endif
# endif
int PKCS5_pbe_set0_algor(X509_ALGOR *algor, int alg, int iter,
const unsigned char *salt, int saltlen);
@ -1237,6 +1262,7 @@ X509_ALGOR *PKCS5_pbkdf2_set_ex(int iter, unsigned char *salt, int saltlen,
int prf_nid, int keylen,
OSSL_LIB_CTX *libctx);
PBKDF2PARAM *PBMAC1_get1_pbkdf2_param(const X509_ALGOR *macalg);
/* PKCS#8 utilities */
DECLARE_ASN1_FUNCTIONS(PKCS8_PRIV_KEY_INFO)
@ -1262,6 +1288,8 @@ int PKCS8_pkey_add1_attr_by_OBJ(PKCS8_PRIV_KEY_INFO *p8, const ASN1_OBJECT *obj,
int type, const unsigned char *bytes, int len);
void X509_PUBKEY_set0_public_key(X509_PUBKEY *pub,
unsigned char *penc, int penclen);
int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *aobj,
int ptype, void *pval,
unsigned char *penc, int penclen);

View File

@ -0,0 +1,263 @@
/*
* WARNING: do not edit!
* Generated by Makefile from include/openssl/x509_acert.h.in
*
* Copyright 2022-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
* in the file LICENSE in the source distribution or at
* https://www.openssl.org/source/license.html
*/
#ifndef OPENSSL_X509_ACERT_H
# define OPENSSL_X509_ACERT_H
# pragma once
# include <openssl/x509v3.h>
# include <openssl/x509.h>
# include <openssl/pem.h>
typedef struct X509_acert_st X509_ACERT;
typedef struct X509_acert_info_st X509_ACERT_INFO;
typedef struct ossl_object_digest_info_st OSSL_OBJECT_DIGEST_INFO;
typedef struct ossl_issuer_serial_st OSSL_ISSUER_SERIAL;
typedef struct X509_acert_issuer_v2form_st X509_ACERT_ISSUER_V2FORM;
DECLARE_ASN1_FUNCTIONS(X509_ACERT)
DECLARE_ASN1_DUP_FUNCTION(X509_ACERT)
DECLARE_ASN1_ITEM(X509_ACERT_INFO)
DECLARE_ASN1_ALLOC_FUNCTIONS(X509_ACERT_INFO)
DECLARE_ASN1_ALLOC_FUNCTIONS(OSSL_OBJECT_DIGEST_INFO)
DECLARE_ASN1_ALLOC_FUNCTIONS(OSSL_ISSUER_SERIAL)
DECLARE_ASN1_ALLOC_FUNCTIONS(X509_ACERT_ISSUER_V2FORM)
# ifndef OPENSSL_NO_STDIO
X509_ACERT *d2i_X509_ACERT_fp(FILE *fp, X509_ACERT **acert);
int i2d_X509_ACERT_fp(FILE *fp, const X509_ACERT *acert);
# endif
DECLARE_PEM_rw(X509_ACERT, X509_ACERT)
X509_ACERT *d2i_X509_ACERT_bio(BIO *bp, X509_ACERT **acert);
int i2d_X509_ACERT_bio(BIO *bp, const X509_ACERT *acert);
int X509_ACERT_sign(X509_ACERT *x, EVP_PKEY *pkey, const EVP_MD *md);
int X509_ACERT_sign_ctx(X509_ACERT *x, EVP_MD_CTX *ctx);
int X509_ACERT_verify(X509_ACERT *a, EVP_PKEY *r);
# define X509_ACERT_VERSION_2 1
const GENERAL_NAMES *X509_ACERT_get0_holder_entityName(const X509_ACERT *x);
const OSSL_ISSUER_SERIAL *X509_ACERT_get0_holder_baseCertId(const X509_ACERT *x);
const OSSL_OBJECT_DIGEST_INFO * X509_ACERT_get0_holder_digest(const X509_ACERT *x);
const X509_NAME *X509_ACERT_get0_issuerName(const X509_ACERT *x);
long X509_ACERT_get_version(const X509_ACERT *x);
void X509_ACERT_get0_signature(const X509_ACERT *x,
const ASN1_BIT_STRING **psig,
const X509_ALGOR **palg);
int X509_ACERT_get_signature_nid(const X509_ACERT *x);
const X509_ALGOR *X509_ACERT_get0_info_sigalg(const X509_ACERT *x);
const ASN1_INTEGER *X509_ACERT_get0_serialNumber(const X509_ACERT *x);
const ASN1_TIME *X509_ACERT_get0_notBefore(const X509_ACERT *x);
const ASN1_TIME *X509_ACERT_get0_notAfter(const X509_ACERT *x);
const ASN1_BIT_STRING *X509_ACERT_get0_issuerUID(const X509_ACERT *x);
int X509_ACERT_print(BIO *bp, X509_ACERT *x);
int X509_ACERT_print_ex(BIO *bp, X509_ACERT *x, unsigned long nmflags,
unsigned long cflag);
int X509_ACERT_get_attr_count(const X509_ACERT *x);
int X509_ACERT_get_attr_by_NID(const X509_ACERT *x, int nid, int lastpos);
int X509_ACERT_get_attr_by_OBJ(const X509_ACERT *x, const ASN1_OBJECT *obj,
int lastpos);
X509_ATTRIBUTE *X509_ACERT_get_attr(const X509_ACERT *x, int loc);
X509_ATTRIBUTE *X509_ACERT_delete_attr(X509_ACERT *x, int loc);
void *X509_ACERT_get_ext_d2i(const X509_ACERT *x, int nid, int *crit, int *idx);
int X509_ACERT_add1_ext_i2d(X509_ACERT *x, int nid, void *value, int crit,
unsigned long flags);
const STACK_OF(X509_EXTENSION) *X509_ACERT_get0_extensions(const X509_ACERT *x);
# define OSSL_OBJECT_DIGEST_INFO_PUBLIC_KEY 0
# define OSSL_OBJECT_DIGEST_INFO_PUBLIC_KEY_CERT 1
# define OSSL_OBJECT_DIGEST_INFO_OTHER 2 /* must not be used in RFC 5755 profile */
int X509_ACERT_set_version(X509_ACERT *x, long version);
void X509_ACERT_set0_holder_entityName(X509_ACERT *x, GENERAL_NAMES *name);
void X509_ACERT_set0_holder_baseCertId(X509_ACERT *x, OSSL_ISSUER_SERIAL *isss);
void X509_ACERT_set0_holder_digest(X509_ACERT *x,
OSSL_OBJECT_DIGEST_INFO *dinfo);
int X509_ACERT_add1_attr(X509_ACERT *x, X509_ATTRIBUTE *attr);
int X509_ACERT_add1_attr_by_OBJ(X509_ACERT *x, const ASN1_OBJECT *obj,
int type, const void *bytes, int len);
int X509_ACERT_add1_attr_by_NID(X509_ACERT *x, int nid, int type,
const void *bytes, int len);
int X509_ACERT_add1_attr_by_txt(X509_ACERT *x, const char *attrname, int type,
const unsigned char *bytes, int len);
int X509_ACERT_add_attr_nconf(CONF *conf, const char *section,
X509_ACERT *acert);
int X509_ACERT_set1_issuerName(X509_ACERT *x, const X509_NAME *name);
int X509_ACERT_set1_serialNumber(X509_ACERT *x, const ASN1_INTEGER *serial);
int X509_ACERT_set1_notBefore(X509_ACERT *x, const ASN1_GENERALIZEDTIME *time);
int X509_ACERT_set1_notAfter(X509_ACERT *x, const ASN1_GENERALIZEDTIME *time);
void OSSL_OBJECT_DIGEST_INFO_get0_digest(const OSSL_OBJECT_DIGEST_INFO *o,
int *digestedObjectType,
const X509_ALGOR **digestAlgorithm,
const ASN1_BIT_STRING **digest);
int OSSL_OBJECT_DIGEST_INFO_set1_digest(OSSL_OBJECT_DIGEST_INFO *o,
int digestedObjectType,
X509_ALGOR *digestAlgorithm,
ASN1_BIT_STRING *digest);
const X509_NAME *OSSL_ISSUER_SERIAL_get0_issuer(const OSSL_ISSUER_SERIAL *isss);
const ASN1_INTEGER *OSSL_ISSUER_SERIAL_get0_serial(const OSSL_ISSUER_SERIAL *isss);
const ASN1_BIT_STRING *OSSL_ISSUER_SERIAL_get0_issuerUID(const OSSL_ISSUER_SERIAL *isss);
int OSSL_ISSUER_SERIAL_set1_issuer(OSSL_ISSUER_SERIAL *isss,
const X509_NAME *issuer);
int OSSL_ISSUER_SERIAL_set1_serial(OSSL_ISSUER_SERIAL *isss,
const ASN1_INTEGER *serial);
int OSSL_ISSUER_SERIAL_set1_issuerUID(OSSL_ISSUER_SERIAL *isss,
const ASN1_BIT_STRING *uid);
# define OSSL_IETFAS_OCTETS 0
# define OSSL_IETFAS_OID 1
# define OSSL_IETFAS_STRING 2
typedef struct OSSL_IETF_ATTR_SYNTAX_VALUE_st OSSL_IETF_ATTR_SYNTAX_VALUE;
typedef struct OSSL_IETF_ATTR_SYNTAX_st OSSL_IETF_ATTR_SYNTAX;
SKM_DEFINE_STACK_OF_INTERNAL(OSSL_IETF_ATTR_SYNTAX_VALUE, OSSL_IETF_ATTR_SYNTAX_VALUE, OSSL_IETF_ATTR_SYNTAX_VALUE)
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_num(sk) OPENSSL_sk_num(ossl_check_const_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_value(sk, idx) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_value(ossl_check_const_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), (idx)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_new(cmp) ((STACK_OF(OSSL_IETF_ATTR_SYNTAX_VALUE) *)OPENSSL_sk_new(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_compfunc_type(cmp)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_new_null() ((STACK_OF(OSSL_IETF_ATTR_SYNTAX_VALUE) *)OPENSSL_sk_new_null())
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_new_reserve(cmp, n) ((STACK_OF(OSSL_IETF_ATTR_SYNTAX_VALUE) *)OPENSSL_sk_new_reserve(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_compfunc_type(cmp), (n)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), (n))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_free(sk) OPENSSL_sk_free(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_zero(sk) OPENSSL_sk_zero(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_delete(sk, i) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_delete(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), (i)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_delete_ptr(sk, ptr) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_delete_ptr(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_push(sk, ptr) OPENSSL_sk_push(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_pop(sk) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_pop(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_shift(sk) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_shift(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk),ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_freefunc_type(freefunc))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr), (idx))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_set(sk, idx, ptr) ((OSSL_IETF_ATTR_SYNTAX_VALUE *)OPENSSL_sk_set(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), (idx), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_find(sk, ptr) OPENSSL_sk_find(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_type(ptr), pnum)
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_sort(sk) OPENSSL_sk_sort(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_dup(sk) ((STACK_OF(OSSL_IETF_ATTR_SYNTAX_VALUE) *)OPENSSL_sk_dup(ossl_check_const_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_IETF_ATTR_SYNTAX_VALUE) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_copyfunc_type(copyfunc), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_freefunc_type(freefunc)))
#define sk_OSSL_IETF_ATTR_SYNTAX_VALUE_set_cmp_func(sk, cmp) ((sk_OSSL_IETF_ATTR_SYNTAX_VALUE_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_sk_type(sk), ossl_check_OSSL_IETF_ATTR_SYNTAX_VALUE_compfunc_type(cmp)))
DECLARE_ASN1_ITEM(OSSL_IETF_ATTR_SYNTAX_VALUE)
DECLARE_ASN1_ALLOC_FUNCTIONS(OSSL_IETF_ATTR_SYNTAX_VALUE)
DECLARE_ASN1_FUNCTIONS(OSSL_IETF_ATTR_SYNTAX)
const GENERAL_NAMES *
OSSL_IETF_ATTR_SYNTAX_get0_policyAuthority(const OSSL_IETF_ATTR_SYNTAX *a);
void OSSL_IETF_ATTR_SYNTAX_set0_policyAuthority(OSSL_IETF_ATTR_SYNTAX *a,
GENERAL_NAMES *names);
int OSSL_IETF_ATTR_SYNTAX_get_value_num(const OSSL_IETF_ATTR_SYNTAX *a);
void *OSSL_IETF_ATTR_SYNTAX_get0_value(const OSSL_IETF_ATTR_SYNTAX *a,
int ind, int *type);
int OSSL_IETF_ATTR_SYNTAX_add1_value(OSSL_IETF_ATTR_SYNTAX *a, int type,
void *data);
int OSSL_IETF_ATTR_SYNTAX_print(BIO *bp, OSSL_IETF_ATTR_SYNTAX *a, int indent);
struct TARGET_CERT_st {
OSSL_ISSUER_SERIAL *targetCertificate;
GENERAL_NAME *targetName;
OSSL_OBJECT_DIGEST_INFO *certDigestInfo;
};
typedef struct TARGET_CERT_st OSSL_TARGET_CERT;
# define OSSL_TGT_TARGET_NAME 0
# define OSSL_TGT_TARGET_GROUP 1
# define OSSL_TGT_TARGET_CERT 2
typedef struct TARGET_st {
int type;
union {
GENERAL_NAME *targetName;
GENERAL_NAME *targetGroup;
OSSL_TARGET_CERT *targetCert;
} choice;
} OSSL_TARGET;
typedef STACK_OF(OSSL_TARGET) OSSL_TARGETS;
typedef STACK_OF(OSSL_TARGETS) OSSL_TARGETING_INFORMATION;
SKM_DEFINE_STACK_OF_INTERNAL(OSSL_TARGET, OSSL_TARGET, OSSL_TARGET)
#define sk_OSSL_TARGET_num(sk) OPENSSL_sk_num(ossl_check_const_OSSL_TARGET_sk_type(sk))
#define sk_OSSL_TARGET_value(sk, idx) ((OSSL_TARGET *)OPENSSL_sk_value(ossl_check_const_OSSL_TARGET_sk_type(sk), (idx)))
#define sk_OSSL_TARGET_new(cmp) ((STACK_OF(OSSL_TARGET) *)OPENSSL_sk_new(ossl_check_OSSL_TARGET_compfunc_type(cmp)))
#define sk_OSSL_TARGET_new_null() ((STACK_OF(OSSL_TARGET) *)OPENSSL_sk_new_null())
#define sk_OSSL_TARGET_new_reserve(cmp, n) ((STACK_OF(OSSL_TARGET) *)OPENSSL_sk_new_reserve(ossl_check_OSSL_TARGET_compfunc_type(cmp), (n)))
#define sk_OSSL_TARGET_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OSSL_TARGET_sk_type(sk), (n))
#define sk_OSSL_TARGET_free(sk) OPENSSL_sk_free(ossl_check_OSSL_TARGET_sk_type(sk))
#define sk_OSSL_TARGET_zero(sk) OPENSSL_sk_zero(ossl_check_OSSL_TARGET_sk_type(sk))
#define sk_OSSL_TARGET_delete(sk, i) ((OSSL_TARGET *)OPENSSL_sk_delete(ossl_check_OSSL_TARGET_sk_type(sk), (i)))
#define sk_OSSL_TARGET_delete_ptr(sk, ptr) ((OSSL_TARGET *)OPENSSL_sk_delete_ptr(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr)))
#define sk_OSSL_TARGET_push(sk, ptr) OPENSSL_sk_push(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr))
#define sk_OSSL_TARGET_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr))
#define sk_OSSL_TARGET_pop(sk) ((OSSL_TARGET *)OPENSSL_sk_pop(ossl_check_OSSL_TARGET_sk_type(sk)))
#define sk_OSSL_TARGET_shift(sk) ((OSSL_TARGET *)OPENSSL_sk_shift(ossl_check_OSSL_TARGET_sk_type(sk)))
#define sk_OSSL_TARGET_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OSSL_TARGET_sk_type(sk),ossl_check_OSSL_TARGET_freefunc_type(freefunc))
#define sk_OSSL_TARGET_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr), (idx))
#define sk_OSSL_TARGET_set(sk, idx, ptr) ((OSSL_TARGET *)OPENSSL_sk_set(ossl_check_OSSL_TARGET_sk_type(sk), (idx), ossl_check_OSSL_TARGET_type(ptr)))
#define sk_OSSL_TARGET_find(sk, ptr) OPENSSL_sk_find(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr))
#define sk_OSSL_TARGET_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr))
#define sk_OSSL_TARGET_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_type(ptr), pnum)
#define sk_OSSL_TARGET_sort(sk) OPENSSL_sk_sort(ossl_check_OSSL_TARGET_sk_type(sk))
#define sk_OSSL_TARGET_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OSSL_TARGET_sk_type(sk))
#define sk_OSSL_TARGET_dup(sk) ((STACK_OF(OSSL_TARGET) *)OPENSSL_sk_dup(ossl_check_const_OSSL_TARGET_sk_type(sk)))
#define sk_OSSL_TARGET_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_TARGET) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_copyfunc_type(copyfunc), ossl_check_OSSL_TARGET_freefunc_type(freefunc)))
#define sk_OSSL_TARGET_set_cmp_func(sk, cmp) ((sk_OSSL_TARGET_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_TARGET_sk_type(sk), ossl_check_OSSL_TARGET_compfunc_type(cmp)))
SKM_DEFINE_STACK_OF_INTERNAL(OSSL_TARGETS, OSSL_TARGETS, OSSL_TARGETS)
#define sk_OSSL_TARGETS_num(sk) OPENSSL_sk_num(ossl_check_const_OSSL_TARGETS_sk_type(sk))
#define sk_OSSL_TARGETS_value(sk, idx) ((OSSL_TARGETS *)OPENSSL_sk_value(ossl_check_const_OSSL_TARGETS_sk_type(sk), (idx)))
#define sk_OSSL_TARGETS_new(cmp) ((STACK_OF(OSSL_TARGETS) *)OPENSSL_sk_new(ossl_check_OSSL_TARGETS_compfunc_type(cmp)))
#define sk_OSSL_TARGETS_new_null() ((STACK_OF(OSSL_TARGETS) *)OPENSSL_sk_new_null())
#define sk_OSSL_TARGETS_new_reserve(cmp, n) ((STACK_OF(OSSL_TARGETS) *)OPENSSL_sk_new_reserve(ossl_check_OSSL_TARGETS_compfunc_type(cmp), (n)))
#define sk_OSSL_TARGETS_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OSSL_TARGETS_sk_type(sk), (n))
#define sk_OSSL_TARGETS_free(sk) OPENSSL_sk_free(ossl_check_OSSL_TARGETS_sk_type(sk))
#define sk_OSSL_TARGETS_zero(sk) OPENSSL_sk_zero(ossl_check_OSSL_TARGETS_sk_type(sk))
#define sk_OSSL_TARGETS_delete(sk, i) ((OSSL_TARGETS *)OPENSSL_sk_delete(ossl_check_OSSL_TARGETS_sk_type(sk), (i)))
#define sk_OSSL_TARGETS_delete_ptr(sk, ptr) ((OSSL_TARGETS *)OPENSSL_sk_delete_ptr(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr)))
#define sk_OSSL_TARGETS_push(sk, ptr) OPENSSL_sk_push(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr))
#define sk_OSSL_TARGETS_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr))
#define sk_OSSL_TARGETS_pop(sk) ((OSSL_TARGETS *)OPENSSL_sk_pop(ossl_check_OSSL_TARGETS_sk_type(sk)))
#define sk_OSSL_TARGETS_shift(sk) ((OSSL_TARGETS *)OPENSSL_sk_shift(ossl_check_OSSL_TARGETS_sk_type(sk)))
#define sk_OSSL_TARGETS_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OSSL_TARGETS_sk_type(sk),ossl_check_OSSL_TARGETS_freefunc_type(freefunc))
#define sk_OSSL_TARGETS_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr), (idx))
#define sk_OSSL_TARGETS_set(sk, idx, ptr) ((OSSL_TARGETS *)OPENSSL_sk_set(ossl_check_OSSL_TARGETS_sk_type(sk), (idx), ossl_check_OSSL_TARGETS_type(ptr)))
#define sk_OSSL_TARGETS_find(sk, ptr) OPENSSL_sk_find(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr))
#define sk_OSSL_TARGETS_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr))
#define sk_OSSL_TARGETS_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_type(ptr), pnum)
#define sk_OSSL_TARGETS_sort(sk) OPENSSL_sk_sort(ossl_check_OSSL_TARGETS_sk_type(sk))
#define sk_OSSL_TARGETS_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OSSL_TARGETS_sk_type(sk))
#define sk_OSSL_TARGETS_dup(sk) ((STACK_OF(OSSL_TARGETS) *)OPENSSL_sk_dup(ossl_check_const_OSSL_TARGETS_sk_type(sk)))
#define sk_OSSL_TARGETS_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OSSL_TARGETS) *)OPENSSL_sk_deep_copy(ossl_check_const_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_copyfunc_type(copyfunc), ossl_check_OSSL_TARGETS_freefunc_type(freefunc)))
#define sk_OSSL_TARGETS_set_cmp_func(sk, cmp) ((sk_OSSL_TARGETS_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OSSL_TARGETS_sk_type(sk), ossl_check_OSSL_TARGETS_compfunc_type(cmp)))
DECLARE_ASN1_FUNCTIONS(OSSL_TARGET)
DECLARE_ASN1_FUNCTIONS(OSSL_TARGETS)
DECLARE_ASN1_FUNCTIONS(OSSL_TARGETING_INFORMATION)
#endif

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/x509_vfy.h.in
*
* Copyright 1995-2021 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1995-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -411,6 +411,7 @@ X509_LOOKUP_ctrl_ex((x), X509_L_ADD_STORE, (name), 0, NULL, \
# define X509_V_ERR_CA_CERT_MISSING_KEY_USAGE 92
# define X509_V_ERR_EXTENSIONS_REQUIRE_VERSION_3 93
# define X509_V_ERR_EC_KEY_EXPLICIT_PARAMS 94
# define X509_V_ERR_RPK_UNTRUSTED 95
/* Certificate verify flags */
# ifndef OPENSSL_NO_DEPRECATED_1_1_0
@ -491,71 +492,72 @@ int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj);
X509_CRL *X509_OBJECT_get0_X509_CRL(const X509_OBJECT *a);
int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj);
X509_STORE *X509_STORE_new(void);
void X509_STORE_free(X509_STORE *v);
int X509_STORE_lock(X509_STORE *ctx);
int X509_STORE_unlock(X509_STORE *ctx);
int X509_STORE_up_ref(X509_STORE *v);
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *v);
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *st);
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *st,
void X509_STORE_free(X509_STORE *xs);
int X509_STORE_lock(X509_STORE *xs);
int X509_STORE_unlock(X509_STORE *xs);
int X509_STORE_up_ref(X509_STORE *xs);
STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(const X509_STORE *xs);
STACK_OF(X509_OBJECT) *X509_STORE_get1_objects(X509_STORE *xs);
STACK_OF(X509) *X509_STORE_get1_all_certs(X509_STORE *xs);
STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *xs,
const X509_NAME *nm);
STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(const X509_STORE_CTX *st,
const X509_NAME *nm);
int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
int X509_STORE_set_trust(X509_STORE *ctx, int trust);
int X509_STORE_set1_param(X509_STORE *ctx, const X509_VERIFY_PARAM *pm);
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *ctx);
int X509_STORE_set_flags(X509_STORE *xs, unsigned long flags);
int X509_STORE_set_purpose(X509_STORE *xs, int purpose);
int X509_STORE_set_trust(X509_STORE *xs, int trust);
int X509_STORE_set1_param(X509_STORE *xs, const X509_VERIFY_PARAM *pm);
X509_VERIFY_PARAM *X509_STORE_get0_param(const X509_STORE *xs);
void X509_STORE_set_verify(X509_STORE *ctx, X509_STORE_CTX_verify_fn verify);
void X509_STORE_set_verify(X509_STORE *xs, X509_STORE_CTX_verify_fn verify);
#define X509_STORE_set_verify_func(ctx, func) \
X509_STORE_set_verify((ctx),(func))
void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx,
X509_STORE_CTX_verify_fn verify);
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *ctx);
void X509_STORE_set_verify_cb(X509_STORE *ctx,
X509_STORE_CTX_verify_fn X509_STORE_get_verify(const X509_STORE *xs);
void X509_STORE_set_verify_cb(X509_STORE *xs,
X509_STORE_CTX_verify_cb verify_cb);
# define X509_STORE_set_verify_cb_func(ctx,func) \
X509_STORE_set_verify_cb((ctx),(func))
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *ctx);
void X509_STORE_set_get_issuer(X509_STORE *ctx,
X509_STORE_CTX_verify_cb X509_STORE_get_verify_cb(const X509_STORE *xs);
void X509_STORE_set_get_issuer(X509_STORE *xs,
X509_STORE_CTX_get_issuer_fn get_issuer);
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *ctx);
void X509_STORE_set_check_issued(X509_STORE *ctx,
X509_STORE_CTX_get_issuer_fn X509_STORE_get_get_issuer(const X509_STORE *xs);
void X509_STORE_set_check_issued(X509_STORE *xs,
X509_STORE_CTX_check_issued_fn check_issued);
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *ctx);
void X509_STORE_set_check_revocation(X509_STORE *ctx,
X509_STORE_CTX_check_issued_fn X509_STORE_get_check_issued(const X509_STORE *s);
void X509_STORE_set_check_revocation(X509_STORE *xs,
X509_STORE_CTX_check_revocation_fn check_revocation);
X509_STORE_CTX_check_revocation_fn
X509_STORE_get_check_revocation(const X509_STORE *ctx);
void X509_STORE_set_get_crl(X509_STORE *ctx,
X509_STORE_get_check_revocation(const X509_STORE *xs);
void X509_STORE_set_get_crl(X509_STORE *xs,
X509_STORE_CTX_get_crl_fn get_crl);
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *ctx);
void X509_STORE_set_check_crl(X509_STORE *ctx,
X509_STORE_CTX_get_crl_fn X509_STORE_get_get_crl(const X509_STORE *xs);
void X509_STORE_set_check_crl(X509_STORE *xs,
X509_STORE_CTX_check_crl_fn check_crl);
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *ctx);
void X509_STORE_set_cert_crl(X509_STORE *ctx,
X509_STORE_CTX_check_crl_fn X509_STORE_get_check_crl(const X509_STORE *xs);
void X509_STORE_set_cert_crl(X509_STORE *xs,
X509_STORE_CTX_cert_crl_fn cert_crl);
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *ctx);
void X509_STORE_set_check_policy(X509_STORE *ctx,
X509_STORE_CTX_cert_crl_fn X509_STORE_get_cert_crl(const X509_STORE *xs);
void X509_STORE_set_check_policy(X509_STORE *xs,
X509_STORE_CTX_check_policy_fn check_policy);
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *ctx);
void X509_STORE_set_lookup_certs(X509_STORE *ctx,
X509_STORE_CTX_check_policy_fn X509_STORE_get_check_policy(const X509_STORE *s);
void X509_STORE_set_lookup_certs(X509_STORE *xs,
X509_STORE_CTX_lookup_certs_fn lookup_certs);
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *ctx);
void X509_STORE_set_lookup_crls(X509_STORE *ctx,
X509_STORE_CTX_lookup_certs_fn X509_STORE_get_lookup_certs(const X509_STORE *s);
void X509_STORE_set_lookup_crls(X509_STORE *xs,
X509_STORE_CTX_lookup_crls_fn lookup_crls);
#define X509_STORE_set_lookup_crls_cb(ctx, func) \
X509_STORE_set_lookup_crls((ctx), (func))
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *ctx);
void X509_STORE_set_cleanup(X509_STORE *ctx,
X509_STORE_CTX_lookup_crls_fn X509_STORE_get_lookup_crls(const X509_STORE *xs);
void X509_STORE_set_cleanup(X509_STORE *xs,
X509_STORE_CTX_cleanup_fn cleanup);
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *ctx);
X509_STORE_CTX_cleanup_fn X509_STORE_get_cleanup(const X509_STORE *xs);
#define X509_STORE_get_ex_new_index(l, p, newf, dupf, freef) \
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE, l, p, newf, dupf, freef)
int X509_STORE_set_ex_data(X509_STORE *ctx, int idx, void *data);
void *X509_STORE_get_ex_data(const X509_STORE *ctx, int idx);
int X509_STORE_set_ex_data(X509_STORE *xs, int idx, void *data);
void *X509_STORE_get_ex_data(const X509_STORE *xs, int idx);
X509_STORE_CTX *X509_STORE_CTX_new_ex(OSSL_LIB_CTX *libctx, const char *propq);
X509_STORE_CTX *X509_STORE_CTX_new(void);
@ -565,11 +567,14 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x);
void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *trust_store,
X509 *target, STACK_OF(X509) *untrusted);
int X509_STORE_CTX_init_rpk(X509_STORE_CTX *ctx, X509_STORE *trust_store,
EVP_PKEY* rpk);
void X509_STORE_CTX_set0_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
X509_STORE *X509_STORE_CTX_get0_store(const X509_STORE_CTX *ctx);
X509 *X509_STORE_CTX_get0_cert(const X509_STORE_CTX *ctx);
EVP_PKEY *X509_STORE_CTX_get0_rpk(const X509_STORE_CTX *ctx);
STACK_OF(X509)* X509_STORE_CTX_get0_untrusted(const X509_STORE_CTX *ctx);
void X509_STORE_CTX_set0_untrusted(X509_STORE_CTX *ctx, STACK_OF(X509) *sk);
void X509_STORE_CTX_set_verify_cb(X509_STORE_CTX *ctx,
@ -579,6 +584,8 @@ X509_STORE_CTX_verify_fn X509_STORE_CTX_get_verify(const X509_STORE_CTX *ctx);
X509_STORE_CTX_get_issuer_fn X509_STORE_CTX_get_get_issuer(const X509_STORE_CTX *ctx);
X509_STORE_CTX_check_issued_fn X509_STORE_CTX_get_check_issued(const X509_STORE_CTX *ctx);
X509_STORE_CTX_check_revocation_fn X509_STORE_CTX_get_check_revocation(const X509_STORE_CTX *ctx);
void X509_STORE_CTX_set_get_crl(X509_STORE_CTX *ctx,
X509_STORE_CTX_get_crl_fn get_crl);
X509_STORE_CTX_get_crl_fn X509_STORE_CTX_get_get_crl(const X509_STORE_CTX *ctx);
X509_STORE_CTX_check_crl_fn X509_STORE_CTX_get_check_crl(const X509_STORE_CTX *ctx);
X509_STORE_CTX_cert_crl_fn X509_STORE_CTX_get_cert_crl(const X509_STORE_CTX *ctx);
@ -600,7 +607,7 @@ X509_STORE_CTX_cleanup_fn X509_STORE_CTX_get_cleanup(const X509_STORE_CTX *ctx);
# define X509_STORE_get1_crl X509_STORE_CTX_get1_crls
#endif
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *xs, X509_LOOKUP_METHOD *m);
X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
X509_LOOKUP_METHOD *X509_LOOKUP_store(void);
@ -685,8 +692,8 @@ X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias(
const X509_LOOKUP_METHOD *method);
int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
int X509_STORE_add_cert(X509_STORE *xs, X509 *x);
int X509_STORE_add_crl(X509_STORE *xs, X509_CRL *x);
int X509_STORE_CTX_get_by_subject(const X509_STORE_CTX *vs,
X509_LOOKUP_TYPE type,
@ -730,23 +737,21 @@ void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx);
X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx);
int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
int X509_STORE_load_file(X509_STORE *ctx, const char *file);
int X509_STORE_load_path(X509_STORE *ctx, const char *path);
int X509_STORE_load_store(X509_STORE *ctx, const char *store);
int X509_STORE_load_locations(X509_STORE *ctx,
const char *file,
const char *dir);
int X509_STORE_set_default_paths(X509_STORE *ctx);
int X509_STORE_load_file(X509_STORE *xs, const char *file);
int X509_STORE_load_path(X509_STORE *xs, const char *path);
int X509_STORE_load_store(X509_STORE *xs, const char *store);
int X509_STORE_load_locations(X509_STORE *s, const char *file, const char *dir);
int X509_STORE_set_default_paths(X509_STORE *xs);
int X509_STORE_load_file_ex(X509_STORE *ctx, const char *file,
int X509_STORE_load_file_ex(X509_STORE *xs, const char *file,
OSSL_LIB_CTX *libctx, const char *propq);
int X509_STORE_load_store_ex(X509_STORE *ctx, const char *store,
int X509_STORE_load_store_ex(X509_STORE *xs, const char *store,
OSSL_LIB_CTX *libctx, const char *propq);
int X509_STORE_load_locations_ex(X509_STORE *ctx, const char *file,
const char *dir, OSSL_LIB_CTX *libctx,
const char *propq);
int X509_STORE_set_default_paths_ex(X509_STORE *ctx, OSSL_LIB_CTX *libctx,
const char *propq);
int X509_STORE_load_locations_ex(X509_STORE *xs,
const char *file, const char *dir,
OSSL_LIB_CTX *libctx, const char *propq);
int X509_STORE_set_default_paths_ex(X509_STORE *xs,
OSSL_LIB_CTX *libctx, const char *propq);
#define X509_STORE_CTX_get_ex_new_index(l, p, newf, dupf, freef) \
CRYPTO_get_ex_new_index(CRYPTO_EX_INDEX_X509_STORE_CTX, l, p, newf, dupf, freef)
@ -764,6 +769,7 @@ X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(const X509_STORE_CTX *ctx);
STACK_OF(X509) *X509_STORE_CTX_get0_chain(const X509_STORE_CTX *ctx);
STACK_OF(X509) *X509_STORE_CTX_get1_chain(const X509_STORE_CTX *ctx);
void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx, X509 *target);
void X509_STORE_CTX_set0_rpk(X509_STORE_CTX *ctx, EVP_PKEY *target);
void X509_STORE_CTX_set0_verified_chain(X509_STORE_CTX *c, STACK_OF(X509) *sk);
void X509_STORE_CTX_set0_crls(X509_STORE_CTX *ctx, STACK_OF(X509_CRL) *sk);
int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
@ -773,6 +779,8 @@ int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx, int def_purpose,
void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx, unsigned long flags);
void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx, unsigned long flags,
time_t t);
void X509_STORE_CTX_set_current_reasons(X509_STORE_CTX *ctx,
unsigned int current_reasons);
X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(const X509_STORE_CTX *ctx);
int X509_STORE_CTX_get_explicit_policy(const X509_STORE_CTX *ctx);

View File

@ -2,7 +2,7 @@
* WARNING: do not edit!
* Generated by Makefile from include/openssl/x509v3.h.in
*
* Copyright 1999-2023 The OpenSSL Project Authors. All Rights Reserved.
* Copyright 1999-2024 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the Apache License 2.0 (the "License"). You may not use
* this file except in compliance with the License. You can obtain a copy
@ -25,6 +25,9 @@
# include <openssl/x509.h>
# include <openssl/conf.h>
# include <openssl/x509v3err.h>
# ifndef OPENSSL_NO_STDIO
# include <stdio.h>
# endif
#ifdef __cplusplus
extern "C" {
@ -146,6 +149,11 @@ typedef struct BASIC_CONSTRAINTS_st {
ASN1_INTEGER *pathlen;
} BASIC_CONSTRAINTS;
typedef struct OSSL_BASIC_ATTR_CONSTRAINTS_st {
int authority;
ASN1_INTEGER *pathlen;
} OSSL_BASIC_ATTR_CONSTRAINTS;
typedef struct PKEY_USAGE_PERIOD_st {
ASN1_GENERALIZEDTIME *notBefore;
ASN1_GENERALIZEDTIME *notAfter;
@ -198,6 +206,8 @@ typedef struct ACCESS_DESCRIPTION_st {
GENERAL_NAME *location;
} ACCESS_DESCRIPTION;
int GENERAL_NAME_set1_X509_NAME(GENERAL_NAME **tgt, const X509_NAME *src);
SKM_DEFINE_STACK_OF_INTERNAL(ACCESS_DESCRIPTION, ACCESS_DESCRIPTION, ACCESS_DESCRIPTION)
#define sk_ACCESS_DESCRIPTION_num(sk) OPENSSL_sk_num(ossl_check_const_ACCESS_DESCRIPTION_sk_type(sk))
#define sk_ACCESS_DESCRIPTION_value(sk, idx) ((ACCESS_DESCRIPTION *)OPENSSL_sk_value(ossl_check_const_ACCESS_DESCRIPTION_sk_type(sk), (idx)))
@ -294,6 +304,7 @@ typedef struct DIST_POINT_NAME_st {
/* If relativename then this contains the full distribution point name */
X509_NAME *dpname;
} DIST_POINT_NAME;
DECLARE_ASN1_DUP_FUNCTION(DIST_POINT_NAME)
/* All existing reasons */
# define CRLDP_ALL_REASONS 0x807f
@ -659,15 +670,16 @@ struct ISSUING_DIST_POINT_st {
# define EXFLAG_SAN_CRITICAL 0x80000
# define EXFLAG_NO_FINGERPRINT 0x100000
# define KU_DIGITAL_SIGNATURE 0x0080
# define KU_NON_REPUDIATION 0x0040
# define KU_KEY_ENCIPHERMENT 0x0020
# define KU_DATA_ENCIPHERMENT 0x0010
# define KU_KEY_AGREEMENT 0x0008
# define KU_KEY_CERT_SIGN 0x0004
# define KU_CRL_SIGN 0x0002
# define KU_ENCIPHER_ONLY 0x0001
# define KU_DECIPHER_ONLY 0x8000
/* https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.3 */
# define KU_DIGITAL_SIGNATURE X509v3_KU_DIGITAL_SIGNATURE
# define KU_NON_REPUDIATION X509v3_KU_NON_REPUDIATION
# define KU_KEY_ENCIPHERMENT X509v3_KU_KEY_ENCIPHERMENT
# define KU_DATA_ENCIPHERMENT X509v3_KU_DATA_ENCIPHERMENT
# define KU_KEY_AGREEMENT X509v3_KU_KEY_AGREEMENT
# define KU_KEY_CERT_SIGN X509v3_KU_KEY_CERT_SIGN
# define KU_CRL_SIGN X509v3_KU_CRL_SIGN
# define KU_ENCIPHER_ONLY X509v3_KU_ENCIPHER_ONLY
# define KU_DECIPHER_ONLY X509v3_KU_DECIPHER_ONLY
# define NS_SSL_CLIENT 0x80
# define NS_SSL_SERVER 0x40
@ -739,9 +751,10 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_PURPOSE, X509_PURPOSE, X509_PURPOSE)
# define X509_PURPOSE_ANY 7
# define X509_PURPOSE_OCSP_HELPER 8
# define X509_PURPOSE_TIMESTAMP_SIGN 9
# define X509_PURPOSE_CODE_SIGN 10
# define X509_PURPOSE_MIN 1
# define X509_PURPOSE_MAX 9
# define X509_PURPOSE_MAX 10
/* Flags for X509V3_EXT_print() */
@ -767,6 +780,7 @@ SKM_DEFINE_STACK_OF_INTERNAL(X509_PURPOSE, X509_PURPOSE, X509_PURPOSE)
# define X509V3_ADD_SILENT 0x10
DECLARE_ASN1_FUNCTIONS(BASIC_CONSTRAINTS)
DECLARE_ASN1_FUNCTIONS(OSSL_BASIC_ATTR_CONSTRAINTS)
DECLARE_ASN1_FUNCTIONS(SXNET)
DECLARE_ASN1_FUNCTIONS(SXNETID)
@ -1444,6 +1458,42 @@ const ASN1_PRINTABLESTRING *PROFESSION_INFO_get0_registrationNumber(
void PROFESSION_INFO_set0_registrationNumber(
PROFESSION_INFO *pi, ASN1_PRINTABLESTRING *rn);
int OSSL_GENERAL_NAMES_print(BIO *out, GENERAL_NAMES *gens, int indent);
typedef STACK_OF(X509_ATTRIBUTE) OSSL_ATTRIBUTES_SYNTAX;
DECLARE_ASN1_FUNCTIONS(OSSL_ATTRIBUTES_SYNTAX)
typedef STACK_OF(USERNOTICE) OSSL_USER_NOTICE_SYNTAX;
DECLARE_ASN1_FUNCTIONS(OSSL_USER_NOTICE_SYNTAX)
SKM_DEFINE_STACK_OF_INTERNAL(USERNOTICE, USERNOTICE, USERNOTICE)
#define sk_USERNOTICE_num(sk) OPENSSL_sk_num(ossl_check_const_USERNOTICE_sk_type(sk))
#define sk_USERNOTICE_value(sk, idx) ((USERNOTICE *)OPENSSL_sk_value(ossl_check_const_USERNOTICE_sk_type(sk), (idx)))
#define sk_USERNOTICE_new(cmp) ((STACK_OF(USERNOTICE) *)OPENSSL_sk_new(ossl_check_USERNOTICE_compfunc_type(cmp)))
#define sk_USERNOTICE_new_null() ((STACK_OF(USERNOTICE) *)OPENSSL_sk_new_null())
#define sk_USERNOTICE_new_reserve(cmp, n) ((STACK_OF(USERNOTICE) *)OPENSSL_sk_new_reserve(ossl_check_USERNOTICE_compfunc_type(cmp), (n)))
#define sk_USERNOTICE_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_USERNOTICE_sk_type(sk), (n))
#define sk_USERNOTICE_free(sk) OPENSSL_sk_free(ossl_check_USERNOTICE_sk_type(sk))
#define sk_USERNOTICE_zero(sk) OPENSSL_sk_zero(ossl_check_USERNOTICE_sk_type(sk))
#define sk_USERNOTICE_delete(sk, i) ((USERNOTICE *)OPENSSL_sk_delete(ossl_check_USERNOTICE_sk_type(sk), (i)))
#define sk_USERNOTICE_delete_ptr(sk, ptr) ((USERNOTICE *)OPENSSL_sk_delete_ptr(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr)))
#define sk_USERNOTICE_push(sk, ptr) OPENSSL_sk_push(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr))
#define sk_USERNOTICE_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr))
#define sk_USERNOTICE_pop(sk) ((USERNOTICE *)OPENSSL_sk_pop(ossl_check_USERNOTICE_sk_type(sk)))
#define sk_USERNOTICE_shift(sk) ((USERNOTICE *)OPENSSL_sk_shift(ossl_check_USERNOTICE_sk_type(sk)))
#define sk_USERNOTICE_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_USERNOTICE_sk_type(sk),ossl_check_USERNOTICE_freefunc_type(freefunc))
#define sk_USERNOTICE_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr), (idx))
#define sk_USERNOTICE_set(sk, idx, ptr) ((USERNOTICE *)OPENSSL_sk_set(ossl_check_USERNOTICE_sk_type(sk), (idx), ossl_check_USERNOTICE_type(ptr)))
#define sk_USERNOTICE_find(sk, ptr) OPENSSL_sk_find(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr))
#define sk_USERNOTICE_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr))
#define sk_USERNOTICE_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_type(ptr), pnum)
#define sk_USERNOTICE_sort(sk) OPENSSL_sk_sort(ossl_check_USERNOTICE_sk_type(sk))
#define sk_USERNOTICE_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_USERNOTICE_sk_type(sk))
#define sk_USERNOTICE_dup(sk) ((STACK_OF(USERNOTICE) *)OPENSSL_sk_dup(ossl_check_const_USERNOTICE_sk_type(sk)))
#define sk_USERNOTICE_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(USERNOTICE) *)OPENSSL_sk_deep_copy(ossl_check_const_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_copyfunc_type(copyfunc), ossl_check_USERNOTICE_freefunc_type(freefunc)))
#define sk_USERNOTICE_set_cmp_func(sk, cmp) ((sk_USERNOTICE_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_USERNOTICE_sk_type(sk), ossl_check_USERNOTICE_compfunc_type(cmp)))
# ifdef __cplusplus
}
# endif

View File

@ -128,6 +128,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -169,7 +170,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -209,7 +212,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -292,7 +297,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -301,6 +309,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -310,10 +319,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -337,12 +349,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -359,6 +374,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -395,6 +411,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -429,6 +446,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -444,14 +463,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -460,12 +483,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -474,12 +502,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -497,6 +530,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -506,6 +540,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -552,7 +587,9 @@
$(OPENSSL_PATH)/providers/implementations/encode_decode/endecoder_common.c
$(OPENSSL_PATH)/providers/implementations/exchange/dh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -571,12 +608,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -584,7 +621,8 @@
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_win.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_rsa_key.c
$(OPENSSL_PATH)/providers/common/provider_ctx.c
$(OPENSSL_PATH)/providers/common/provider_err.c
@ -596,7 +634,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_rsa_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_wrap_gen.c
@ -611,6 +649,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -630,12 +669,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c

View File

@ -25,7 +25,7 @@
DEFINE OPENSSL_FLAGS = -DL_ENDIAN -DOPENSSL_SMALL_FOOTPRINT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DEDK2_OPENSSL_NOEC=1
DEFINE OPENSSL_FLAGS_IA32 = -DAES_ASM -DGHASH_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_X64 = -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_AARCH64 = -DKECCAK1600_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_AARCH64 = -DBSAES_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
#
# VALID_ARCHITECTURES = IA32 X64 AARCH64
@ -146,6 +146,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -186,7 +187,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -226,7 +229,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -309,7 +314,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -318,6 +326,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -327,10 +336,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -353,12 +365,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -375,6 +390,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -411,6 +427,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -445,6 +462,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -460,14 +479,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -476,12 +499,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -490,12 +518,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -513,6 +546,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -522,6 +556,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -568,7 +603,9 @@
$(OPENSSL_PATH)/providers/implementations/encode_decode/endecoder_common.c
$(OPENSSL_PATH)/providers/implementations/exchange/dh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -587,12 +624,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -600,7 +637,8 @@
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_win.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_rsa_key.c
$(OPENSSL_PATH)/providers/common/provider_ctx.c
$(OPENSSL_PATH)/providers/common/provider_err.c
@ -612,7 +650,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_rsa_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_wrap_gen.c
@ -627,6 +665,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -646,12 +685,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -777,6 +820,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -819,7 +863,9 @@
$(OPENSSL_PATH)/crypto/bn/rsaz_exp_x2.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -859,7 +905,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -942,7 +990,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -951,6 +1002,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -960,10 +1012,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -986,12 +1041,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -1008,6 +1066,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -1044,6 +1103,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -1077,6 +1137,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -1092,14 +1154,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -1108,12 +1174,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -1122,12 +1193,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -1145,6 +1221,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -1154,6 +1231,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -1200,7 +1278,9 @@
$(OPENSSL_PATH)/providers/implementations/encode_decode/endecoder_common.c
$(OPENSSL_PATH)/providers/implementations/exchange/dh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -1219,12 +1299,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -1232,7 +1312,8 @@
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_win.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_rsa_key.c
$(OPENSSL_PATH)/providers/common/provider_ctx.c
$(OPENSSL_PATH)/providers/common/provider_err.c
@ -1244,7 +1325,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_rsa_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_wrap_gen.c
@ -1259,6 +1340,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -1278,12 +1360,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -1300,6 +1386,7 @@
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/aes/vpaes-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/x86_64cpuid.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/md5/md5-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/aes-gcm-avx512.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/aesni-gcm-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/ghash-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/sha/keccak1600-x86_64.nasm | MSFT
@ -1317,6 +1404,7 @@
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/aes/vpaes-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/x86_64cpuid.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/md5/md5-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/aes-gcm-avx512.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/aesni-gcm-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/ghash-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/sha/keccak1600-x86_64.s | GCC
@ -1427,6 +1515,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -1468,7 +1557,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -1508,7 +1599,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -1591,7 +1684,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -1600,6 +1696,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -1609,10 +1706,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -1635,12 +1735,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -1657,6 +1760,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -1693,6 +1797,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -1726,6 +1831,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -1741,14 +1848,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -1757,12 +1868,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -1771,12 +1887,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -1794,6 +1915,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -1803,6 +1925,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -1849,7 +1972,9 @@
$(OPENSSL_PATH)/providers/implementations/encode_decode/endecoder_common.c
$(OPENSSL_PATH)/providers/implementations/exchange/dh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -1868,12 +1993,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -1881,7 +2006,8 @@
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_win.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_rsa_key.c
$(OPENSSL_PATH)/providers/common/provider_ctx.c
$(OPENSSL_PATH)/providers/common/provider_err.c
@ -1893,7 +2019,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_rsa_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_wrap_gen.c
@ -1908,6 +2034,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -1927,12 +2054,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -1941,14 +2072,18 @@
$(OPENSSL_PATH)/ssl/statem/statem_dtls.c
$(OPENSSL_PATH)/ssl/statem/statem_lib.c
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/aesv8-armx.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/bsaes-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/vpaes-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/arm64cpuid.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/md5/md5-aarch64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/aes-gcm-armv8-unroll8_64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/aes-gcm-armv8_64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/ghashv8-armx.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/keccak1600-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha1-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha256-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha512-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sm3/sm3-armv8.S | GCC
# Autogenerated files list ends here
[Packages]

View File

@ -129,6 +129,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -170,7 +171,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -210,7 +213,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -293,7 +298,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -302,6 +310,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -311,10 +320,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -338,12 +350,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -360,6 +375,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -396,6 +412,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -430,6 +447,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -445,14 +464,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -461,12 +484,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -475,12 +503,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -498,6 +531,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -507,6 +541,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -553,7 +588,9 @@
$(OPENSSL_PATH)/providers/implementations/encode_decode/endecoder_common.c
$(OPENSSL_PATH)/providers/implementations/exchange/dh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -572,12 +609,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -585,7 +622,8 @@
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_win.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_rsa_key.c
$(OPENSSL_PATH)/providers/common/provider_ctx.c
$(OPENSSL_PATH)/providers/common/provider_err.c
@ -597,7 +635,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_rsa_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_wrap_gen.c

View File

@ -133,6 +133,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -174,7 +175,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -252,7 +255,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -335,7 +340,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -344,6 +352,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -353,10 +362,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -380,12 +392,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -402,6 +417,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -438,6 +454,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -472,6 +489,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -487,14 +506,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -503,12 +526,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -517,12 +545,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -540,6 +573,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -549,6 +583,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -597,7 +632,9 @@
$(OPENSSL_PATH)/providers/implementations/exchange/ecdh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/ecx_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -608,6 +645,9 @@
$(OPENSSL_PATH)/providers/implementations/kdfs/sskdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/tls1_prf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/x942kdf.c
$(OPENSSL_PATH)/providers/implementations/kem/ec_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/ecx_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/kem_util.c
$(OPENSSL_PATH)/providers/implementations/kem/rsa_kem.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/dh_kmgmt.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/ec_kmgmt.c
@ -618,12 +658,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -633,7 +673,8 @@
$(OPENSSL_PATH)/providers/implementations/signature/eddsa_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_ec_key.c
$(OPENSSL_PATH)/providers/common/der/der_ec_sig.c
$(OPENSSL_PATH)/providers/common/der/der_ecx_key.c
@ -648,7 +689,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ec_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ecx_gen.c
@ -665,6 +706,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -684,12 +726,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c

View File

@ -30,7 +30,7 @@
DEFINE OPENSSL_FLAGS = -DL_ENDIAN -DOPENSSL_SMALL_FOOTPRINT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE
DEFINE OPENSSL_FLAGS_IA32 = -DAES_ASM -DGHASH_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_X64 = -DAES_ASM -DBSAES_ASM -DGHASH_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_AARCH64 = -DKECCAK1600_ASM -DOPENSSL_CPUID_OBJ -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
DEFINE OPENSSL_FLAGS_AARCH64 = -DBSAES_ASM -DKECCAK1600_ASM -DMD5_ASM -DOPENSSL_CPUID_OBJ -DOPENSSL_SM3_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DVPAES_ASM
#
# VALID_ARCHITECTURES = IA32 X64 AARCH64
@ -151,6 +151,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -191,7 +192,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -269,7 +272,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -352,7 +357,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -361,6 +369,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -370,10 +379,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -396,12 +408,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -418,6 +433,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -454,6 +470,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -488,6 +505,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -503,14 +522,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -519,12 +542,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -533,12 +561,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -556,6 +589,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -565,6 +599,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -613,7 +648,9 @@
$(OPENSSL_PATH)/providers/implementations/exchange/ecdh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/ecx_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -624,6 +661,9 @@
$(OPENSSL_PATH)/providers/implementations/kdfs/sskdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/tls1_prf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/x942kdf.c
$(OPENSSL_PATH)/providers/implementations/kem/ec_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/ecx_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/kem_util.c
$(OPENSSL_PATH)/providers/implementations/kem/rsa_kem.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/dh_kmgmt.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/ec_kmgmt.c
@ -634,12 +674,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -649,7 +689,8 @@
$(OPENSSL_PATH)/providers/implementations/signature/eddsa_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_ec_key.c
$(OPENSSL_PATH)/providers/common/der/der_ec_sig.c
$(OPENSSL_PATH)/providers/common/der/der_ecx_key.c
@ -664,7 +705,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ec_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ecx_gen.c
@ -681,6 +722,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -700,12 +742,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -831,6 +877,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -873,7 +920,9 @@
$(OPENSSL_PATH)/crypto/bn/rsaz_exp_x2.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -951,7 +1000,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -1034,7 +1085,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -1043,6 +1097,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -1052,10 +1107,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -1078,12 +1136,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -1100,6 +1161,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -1136,6 +1198,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -1169,6 +1232,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -1184,14 +1249,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -1200,12 +1269,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -1214,12 +1288,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -1237,6 +1316,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -1246,6 +1326,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -1294,7 +1375,9 @@
$(OPENSSL_PATH)/providers/implementations/exchange/ecdh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/ecx_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -1305,6 +1388,9 @@
$(OPENSSL_PATH)/providers/implementations/kdfs/sskdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/tls1_prf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/x942kdf.c
$(OPENSSL_PATH)/providers/implementations/kem/ec_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/ecx_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/kem_util.c
$(OPENSSL_PATH)/providers/implementations/kem/rsa_kem.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/dh_kmgmt.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/ec_kmgmt.c
@ -1315,12 +1401,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -1330,7 +1416,8 @@
$(OPENSSL_PATH)/providers/implementations/signature/eddsa_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_ec_key.c
$(OPENSSL_PATH)/providers/common/der/der_ec_sig.c
$(OPENSSL_PATH)/providers/common/der/der_ecx_key.c
@ -1345,7 +1432,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ec_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ecx_gen.c
@ -1362,6 +1449,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -1381,12 +1469,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -1403,6 +1495,7 @@
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/aes/vpaes-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/x86_64cpuid.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/md5/md5-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/aes-gcm-avx512.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/aesni-gcm-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/modes/ghash-x86_64.nasm | MSFT
$(OPENSSL_GEN_PATH)/X64-MSFT/crypto/sha/keccak1600-x86_64.nasm | MSFT
@ -1420,6 +1513,7 @@
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/aes/vpaes-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/x86_64cpuid.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/md5/md5-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/aes-gcm-avx512.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/aesni-gcm-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/modes/ghash-x86_64.s | GCC
$(OPENSSL_GEN_PATH)/X64-GCC/crypto/sha/keccak1600-x86_64.s | GCC
@ -1530,6 +1624,7 @@
$(OPENSSL_PATH)/crypto/bio/bss_conn.c
$(OPENSSL_PATH)/crypto/bio/bss_core.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram.c
$(OPENSSL_PATH)/crypto/bio/bss_dgram_pair.c
$(OPENSSL_PATH)/crypto/bio/bss_fd.c
$(OPENSSL_PATH)/crypto/bio/bss_file.c
$(OPENSSL_PATH)/crypto/bio/bss_log.c
@ -1571,7 +1666,9 @@
$(OPENSSL_PATH)/crypto/bn/bn_x931p.c
$(OPENSSL_PATH)/crypto/buffer/buf_err.c
$(OPENSSL_PATH)/crypto/buffer/buffer.c
$(OPENSSL_PATH)/crypto/comp/c_brotli.c
$(OPENSSL_PATH)/crypto/comp/c_zlib.c
$(OPENSSL_PATH)/crypto/comp/c_zstd.c
$(OPENSSL_PATH)/crypto/comp/comp_err.c
$(OPENSSL_PATH)/crypto/comp/comp_lib.c
$(OPENSSL_PATH)/crypto/conf/conf_api.c
@ -1649,7 +1746,9 @@
$(OPENSSL_PATH)/crypto/err/err_all.c
$(OPENSSL_PATH)/crypto/err/err_all_legacy.c
$(OPENSSL_PATH)/crypto/err/err_blocks.c
$(OPENSSL_PATH)/crypto/err/err_mark.c
$(OPENSSL_PATH)/crypto/err/err_prn.c
$(OPENSSL_PATH)/crypto/err/err_save.c
$(OPENSSL_PATH)/crypto/ess/ess_asn1.c
$(OPENSSL_PATH)/crypto/ess/ess_err.c
$(OPENSSL_PATH)/crypto/ess/ess_lib.c
@ -1732,7 +1831,10 @@
$(OPENSSL_PATH)/crypto/ffc/ffc_params.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_generate.c
$(OPENSSL_PATH)/crypto/ffc/ffc_params_validate.c
$(OPENSSL_PATH)/crypto/hashtable/hashtable.c
$(OPENSSL_PATH)/crypto/hmac/hmac.c
$(OPENSSL_PATH)/crypto/hpke/hpke.c
$(OPENSSL_PATH)/crypto/hpke/hpke_util.c
$(OPENSSL_PATH)/crypto/http/http_client.c
$(OPENSSL_PATH)/crypto/http/http_err.c
$(OPENSSL_PATH)/crypto/http/http_lib.c
@ -1741,6 +1843,7 @@
$(OPENSSL_PATH)/crypto/lhash/lhash.c
$(OPENSSL_PATH)/crypto/asn1_dsa.c
$(OPENSSL_PATH)/crypto/bsearch.c
$(OPENSSL_PATH)/crypto/comp_methods.c
$(OPENSSL_PATH)/crypto/context.c
$(OPENSSL_PATH)/crypto/core_algorithm.c
$(OPENSSL_PATH)/crypto/core_fetch.c
@ -1750,10 +1853,13 @@
$(OPENSSL_PATH)/crypto/cryptlib.c
$(OPENSSL_PATH)/crypto/ctype.c
$(OPENSSL_PATH)/crypto/cversion.c
$(OPENSSL_PATH)/crypto/defaults.c
$(OPENSSL_PATH)/crypto/der_writer.c
$(OPENSSL_PATH)/crypto/deterministic_nonce.c
$(OPENSSL_PATH)/crypto/ebcdic.c
$(OPENSSL_PATH)/crypto/ex_data.c
$(OPENSSL_PATH)/crypto/getenv.c
$(OPENSSL_PATH)/crypto/indicator_core.c
$(OPENSSL_PATH)/crypto/info.c
$(OPENSSL_PATH)/crypto/init.c
$(OPENSSL_PATH)/crypto/initthread.c
@ -1776,12 +1882,15 @@
$(OPENSSL_PATH)/crypto/provider_conf.c
$(OPENSSL_PATH)/crypto/provider_core.c
$(OPENSSL_PATH)/crypto/punycode.c
$(OPENSSL_PATH)/crypto/quic_vlint.c
$(OPENSSL_PATH)/crypto/self_test_core.c
$(OPENSSL_PATH)/crypto/sleep.c
$(OPENSSL_PATH)/crypto/sparse_array.c
$(OPENSSL_PATH)/crypto/threads_lib.c
$(OPENSSL_PATH)/crypto/threads_none.c
$(OPENSSL_PATH)/crypto/threads_pthread.c
$(OPENSSL_PATH)/crypto/threads_win.c
$(OPENSSL_PATH)/crypto/time.c
$(OPENSSL_PATH)/crypto/trace.c
$(OPENSSL_PATH)/crypto/uid.c
$(OPENSSL_PATH)/crypto/md5/md5_dgst.c
@ -1798,6 +1907,7 @@
$(OPENSSL_PATH)/crypto/modes/siv128.c
$(OPENSSL_PATH)/crypto/modes/wrap128.c
$(OPENSSL_PATH)/crypto/modes/xts128.c
$(OPENSSL_PATH)/crypto/modes/xts128gb.c
$(OPENSSL_PATH)/crypto/objects/o_names.c
$(OPENSSL_PATH)/crypto/objects/obj_dat.c
$(OPENSSL_PATH)/crypto/objects/obj_err.c
@ -1834,6 +1944,7 @@
$(OPENSSL_PATH)/crypto/rand/rand_lib.c
$(OPENSSL_PATH)/crypto/rand/rand_meth.c
$(OPENSSL_PATH)/crypto/rand/rand_pool.c
$(OPENSSL_PATH)/crypto/rand/rand_uniform.c
$(OPENSSL_PATH)/crypto/rsa/rsa_ameth.c
$(OPENSSL_PATH)/crypto/rsa/rsa_asn1.c
$(OPENSSL_PATH)/crypto/rsa/rsa_backend.c
@ -1867,6 +1978,8 @@
$(OPENSSL_PATH)/crypto/sm3/legacy_sm3.c
$(OPENSSL_PATH)/crypto/sm3/sm3.c
$(OPENSSL_PATH)/crypto/stack/stack.c
$(OPENSSL_PATH)/crypto/thread/arch/thread_win.c
$(OPENSSL_PATH)/crypto/thread/api.c
$(OPENSSL_PATH)/crypto/txt_db/txt_db.c
$(OPENSSL_PATH)/crypto/ui/ui_err.c
$(OPENSSL_PATH)/crypto/ui/ui_lib.c
@ -1882,14 +1995,18 @@
$(OPENSSL_PATH)/crypto/x509/pcy_map.c
$(OPENSSL_PATH)/crypto/x509/pcy_node.c
$(OPENSSL_PATH)/crypto/x509/pcy_tree.c
$(OPENSSL_PATH)/crypto/x509/t_acert.c
$(OPENSSL_PATH)/crypto/x509/t_crl.c
$(OPENSSL_PATH)/crypto/x509/t_req.c
$(OPENSSL_PATH)/crypto/x509/t_x509.c
$(OPENSSL_PATH)/crypto/x509/v3_ac_tgt.c
$(OPENSSL_PATH)/crypto/x509/v3_addr.c
$(OPENSSL_PATH)/crypto/x509/v3_admis.c
$(OPENSSL_PATH)/crypto/x509/v3_akeya.c
$(OPENSSL_PATH)/crypto/x509/v3_akid.c
$(OPENSSL_PATH)/crypto/x509/v3_asid.c
$(OPENSSL_PATH)/crypto/x509/v3_audit_id.c
$(OPENSSL_PATH)/crypto/x509/v3_battcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bcons.c
$(OPENSSL_PATH)/crypto/x509/v3_bitst.c
$(OPENSSL_PATH)/crypto/x509/v3_conf.c
@ -1898,12 +2015,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_enum.c
$(OPENSSL_PATH)/crypto/x509/v3_extku.c
$(OPENSSL_PATH)/crypto/x509/v3_genn.c
$(OPENSSL_PATH)/crypto/x509/v3_group_ac.c
$(OPENSSL_PATH)/crypto/x509/v3_ia5.c
$(OPENSSL_PATH)/crypto/x509/v3_ind_iss.c
$(OPENSSL_PATH)/crypto/x509/v3_info.c
$(OPENSSL_PATH)/crypto/x509/v3_int.c
$(OPENSSL_PATH)/crypto/x509/v3_iobo.c
$(OPENSSL_PATH)/crypto/x509/v3_ist.c
$(OPENSSL_PATH)/crypto/x509/v3_lib.c
$(OPENSSL_PATH)/crypto/x509/v3_ncons.c
$(OPENSSL_PATH)/crypto/x509/v3_no_ass.c
$(OPENSSL_PATH)/crypto/x509/v3_no_rev_avail.c
$(OPENSSL_PATH)/crypto/x509/v3_pci.c
$(OPENSSL_PATH)/crypto/x509/v3_pcia.c
$(OPENSSL_PATH)/crypto/x509/v3_pcons.c
@ -1912,12 +2034,17 @@
$(OPENSSL_PATH)/crypto/x509/v3_prn.c
$(OPENSSL_PATH)/crypto/x509/v3_purp.c
$(OPENSSL_PATH)/crypto/x509/v3_san.c
$(OPENSSL_PATH)/crypto/x509/v3_sda.c
$(OPENSSL_PATH)/crypto/x509/v3_single_use.c
$(OPENSSL_PATH)/crypto/x509/v3_skid.c
$(OPENSSL_PATH)/crypto/x509/v3_soa_id.c
$(OPENSSL_PATH)/crypto/x509/v3_sxnet.c
$(OPENSSL_PATH)/crypto/x509/v3_tlsf.c
$(OPENSSL_PATH)/crypto/x509/v3_usernotice.c
$(OPENSSL_PATH)/crypto/x509/v3_utf8.c
$(OPENSSL_PATH)/crypto/x509/v3_utl.c
$(OPENSSL_PATH)/crypto/x509/v3err.c
$(OPENSSL_PATH)/crypto/x509/x509_acert.c
$(OPENSSL_PATH)/crypto/x509/x509_att.c
$(OPENSSL_PATH)/crypto/x509/x509_cmp.c
$(OPENSSL_PATH)/crypto/x509/x509_d2.c
@ -1935,6 +2062,7 @@
$(OPENSSL_PATH)/crypto/x509/x509_v3.c
$(OPENSSL_PATH)/crypto/x509/x509_vfy.c
$(OPENSSL_PATH)/crypto/x509/x509_vpm.c
$(OPENSSL_PATH)/crypto/x509/x509aset.c
$(OPENSSL_PATH)/crypto/x509/x509cset.c
$(OPENSSL_PATH)/crypto/x509/x509name.c
$(OPENSSL_PATH)/crypto/x509/x509rset.c
@ -1944,6 +2072,7 @@
$(OPENSSL_PATH)/crypto/x509/x_attrib.c
$(OPENSSL_PATH)/crypto/x509/x_crl.c
$(OPENSSL_PATH)/crypto/x509/x_exten.c
$(OPENSSL_PATH)/crypto/x509/x_ietfatt.c
$(OPENSSL_PATH)/crypto/x509/x_name.c
$(OPENSSL_PATH)/crypto/x509/x_pubkey.c
$(OPENSSL_PATH)/crypto/x509/x_req.c
@ -1992,7 +2121,9 @@
$(OPENSSL_PATH)/providers/implementations/exchange/ecdh_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/ecx_exch.c
$(OPENSSL_PATH)/providers/implementations/exchange/kdf_exch.c
$(OPENSSL_PATH)/providers/implementations/kdfs/argon2.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/hmacdrbg_kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/kbkdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/krb5kdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/pbkdf2.c
@ -2003,6 +2134,9 @@
$(OPENSSL_PATH)/providers/implementations/kdfs/sskdf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/tls1_prf.c
$(OPENSSL_PATH)/providers/implementations/kdfs/x942kdf.c
$(OPENSSL_PATH)/providers/implementations/kem/ec_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/ecx_kem.c
$(OPENSSL_PATH)/providers/implementations/kem/kem_util.c
$(OPENSSL_PATH)/providers/implementations/kem/rsa_kem.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/dh_kmgmt.c
$(OPENSSL_PATH)/providers/implementations/keymgmt/ec_kmgmt.c
@ -2013,12 +2147,12 @@
$(OPENSSL_PATH)/providers/implementations/macs/gmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/hmac_prov.c
$(OPENSSL_PATH)/providers/implementations/macs/kmac_prov.c
$(OPENSSL_PATH)/providers/implementations/rands/crngt.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_ctr.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hash.c
$(OPENSSL_PATH)/providers/implementations/rands/drbg_hmac.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src.c
$(OPENSSL_PATH)/providers/implementations/rands/seed_src_jitter.c
$(OPENSSL_PATH)/providers/implementations/rands/test_rng.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_cpu_x86.c
$(OPENSSL_PATH)/providers/implementations/rands/seeding/rand_tsc.c
@ -2028,7 +2162,8 @@
$(OPENSSL_PATH)/providers/implementations/signature/eddsa_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/mac_legacy_sig.c
$(OPENSSL_PATH)/providers/implementations/signature/rsa_sig.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_cbc.c
$(OPENSSL_GEN_PATH)/crypto/params_idx.c
$(OPENSSL_PATH)/providers/common/der/der_ec_key.c
$(OPENSSL_PATH)/providers/common/der/der_ec_sig.c
$(OPENSSL_PATH)/providers/common/der/der_ecx_key.c
@ -2043,7 +2178,7 @@
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_gcm_hw.c
$(OPENSSL_PATH)/providers/implementations/ciphers/ciphercommon_hw.c
$(OPENSSL_PATH)/providers/implementations/digests/digestcommon.c
$(OPENSSL_PATH)/ssl/record/tls_pad.c
$(OPENSSL_PATH)/ssl/record/methods/tls_pad.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_digests_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ec_gen.c
$(OPENSSL_GEN_PATH)/providers/common/der/der_ecx_gen.c
@ -2060,6 +2195,7 @@
$(OPENSSL_PATH)/ssl/s3_msg.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_cert_comp.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_conf.c
$(OPENSSL_PATH)/ssl/ssl_err.c
@ -2079,12 +2215,16 @@
$(OPENSSL_PATH)/ssl/tls13_enc.c
$(OPENSSL_PATH)/ssl/tls_depr.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/record/dtls1_bitmap.c
$(OPENSSL_PATH)/ssl/record/rec_layer_d1.c
$(OPENSSL_PATH)/ssl/record/rec_layer_s3.c
$(OPENSSL_PATH)/ssl/record/ssl3_buffer.c
$(OPENSSL_PATH)/ssl/record/ssl3_record.c
$(OPENSSL_PATH)/ssl/record/ssl3_record_tls13.c
$(OPENSSL_PATH)/ssl/record/methods/dtls_meth.c
$(OPENSSL_PATH)/ssl/record/methods/ssl3_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls13_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls1_meth.c
$(OPENSSL_PATH)/ssl/record/methods/tls_common.c
$(OPENSSL_PATH)/ssl/record/methods/tls_multib.c
$(OPENSSL_PATH)/ssl/record/methods/tlsany_meth.c
$(OPENSSL_PATH)/ssl/rio/poll_immediate.c
$(OPENSSL_PATH)/ssl/statem/extensions.c
$(OPENSSL_PATH)/ssl/statem/extensions_clnt.c
$(OPENSSL_PATH)/ssl/statem/extensions_cust.c
@ -2093,14 +2233,18 @@
$(OPENSSL_PATH)/ssl/statem/statem_dtls.c
$(OPENSSL_PATH)/ssl/statem/statem_lib.c
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/aesv8-armx.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/bsaes-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/aes/vpaes-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/arm64cpuid.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/md5/md5-aarch64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/aes-gcm-armv8-unroll8_64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/aes-gcm-armv8_64.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/modes/ghashv8-armx.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/keccak1600-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha1-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha256-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sha/sha512-armv8.S | GCC
$(OPENSSL_GEN_PATH)/AARCH64-GCC/crypto/sm3/sm3-armv8.S | GCC
# Autogenerated files list ends here
[Packages]