deps: update archs files for OpenSSL-1.1.0

`cd deps/openssl/config; make` updates all archs dependant files.

Fixes: https://github.com/nodejs/node/issues/4270
PR-URL: https://github.com/nodejs/node/pull/19794
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rod Vagg <rod@vagg.org>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
This commit is contained in:
Shigeki Ohtsu committed 2018-04-10 06:45:44 +09:00
1 parent 99eb744842
commit 7812ec735b
700 files changed
+1343015 -8935

No files matched your search

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
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
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,827 @@
.text
.type _vpaes_encrypt_core,@function
.align 16
_vpaes_encrypt_core:
movq %rdx,%r9
movq $16,%r11
movl 240(%rdx),%eax
movdqa %xmm9,%xmm1
movdqa .Lk_ipt(%rip),%xmm2
pandn %xmm0,%xmm1
movdqu (%r9),%xmm5
psrld $4,%xmm1
pand %xmm9,%xmm0
.byte 102,15,56,0,208
movdqa .Lk_ipt+16(%rip),%xmm0
.byte 102,15,56,0,193
pxor %xmm5,%xmm2
addq $16,%r9
pxor %xmm2,%xmm0
leaq .Lk_mc_backward(%rip),%r10
jmp .Lenc_entry
.align 16
.Lenc_loop:
movdqa %xmm13,%xmm4
movdqa %xmm12,%xmm0
.byte 102,15,56,0,226
.byte 102,15,56,0,195
pxor %xmm5,%xmm4
movdqa %xmm15,%xmm5
pxor %xmm4,%xmm0
movdqa -64(%r11,%r10,1),%xmm1
.byte 102,15,56,0,234
movdqa (%r11,%r10,1),%xmm4
movdqa %xmm14,%xmm2
.byte 102,15,56,0,211
movdqa %xmm0,%xmm3
pxor %xmm5,%xmm2
.byte 102,15,56,0,193
addq $16,%r9
pxor %xmm2,%xmm0
.byte 102,15,56,0,220
addq $16,%r11
pxor %xmm0,%xmm3
.byte 102,15,56,0,193
andq $0x30,%r11
subq $1,%rax
pxor %xmm3,%xmm0
.Lenc_entry:
movdqa %xmm9,%xmm1
movdqa %xmm11,%xmm5
pandn %xmm0,%xmm1
psrld $4,%xmm1
pand %xmm9,%xmm0
.byte 102,15,56,0,232
movdqa %xmm10,%xmm3
pxor %xmm1,%xmm0
.byte 102,15,56,0,217
movdqa %xmm10,%xmm4
pxor %xmm5,%xmm3
.byte 102,15,56,0,224
movdqa %xmm10,%xmm2
pxor %xmm5,%xmm4
.byte 102,15,56,0,211
movdqa %xmm10,%xmm3
pxor %xmm0,%xmm2
.byte 102,15,56,0,220
movdqu (%r9),%xmm5
pxor %xmm1,%xmm3
jnz .Lenc_loop
movdqa -96(%r10),%xmm4
movdqa -80(%r10),%xmm0
.byte 102,15,56,0,226
pxor %xmm5,%xmm4
.byte 102,15,56,0,195
movdqa 64(%r11,%r10,1),%xmm1
pxor %xmm4,%xmm0
.byte 102,15,56,0,193
.byte 0xf3,0xc3
.size _vpaes_encrypt_core,.-_vpaes_encrypt_core
.type _vpaes_decrypt_core,@function
.align 16
_vpaes_decrypt_core:
movq %rdx,%r9
movl 240(%rdx),%eax
movdqa %xmm9,%xmm1
movdqa .Lk_dipt(%rip),%xmm2
pandn %xmm0,%xmm1
movq %rax,%r11
psrld $4,%xmm1
movdqu (%r9),%xmm5
shlq $4,%r11
pand %xmm9,%xmm0
.byte 102,15,56,0,208
movdqa .Lk_dipt+16(%rip),%xmm0
xorq $0x30,%r11
leaq .Lk_dsbd(%rip),%r10
.byte 102,15,56,0,193
andq $0x30,%r11
pxor %xmm5,%xmm2
movdqa .Lk_mc_forward+48(%rip),%xmm5
pxor %xmm2,%xmm0
addq $16,%r9
addq %r10,%r11
jmp .Ldec_entry
.align 16
.Ldec_loop:
movdqa -32(%r10),%xmm4
movdqa -16(%r10),%xmm1
.byte 102,15,56,0,226
.byte 102,15,56,0,203
pxor %xmm4,%xmm0
movdqa 0(%r10),%xmm4
pxor %xmm1,%xmm0
movdqa 16(%r10),%xmm1
.byte 102,15,56,0,226
.byte 102,15,56,0,197
.byte 102,15,56,0,203
pxor %xmm4,%xmm0
movdqa 32(%r10),%xmm4
pxor %xmm1,%xmm0
movdqa 48(%r10),%xmm1
.byte 102,15,56,0,226
.byte 102,15,56,0,197
.byte 102,15,56,0,203
pxor %xmm4,%xmm0
movdqa 64(%r10),%xmm4
pxor %xmm1,%xmm0
movdqa 80(%r10),%xmm1
.byte 102,15,56,0,226
.byte 102,15,56,0,197
.byte 102,15,56,0,203
pxor %xmm4,%xmm0
addq $16,%r9
.byte 102,15,58,15,237,12
pxor %xmm1,%xmm0
subq $1,%rax
.Ldec_entry:
movdqa %xmm9,%xmm1
pandn %xmm0,%xmm1
movdqa %xmm11,%xmm2
psrld $4,%xmm1
pand %xmm9,%xmm0
.byte 102,15,56,0,208
movdqa %xmm10,%xmm3
pxor %xmm1,%xmm0
.byte 102,15,56,0,217
movdqa %xmm10,%xmm4
pxor %xmm2,%xmm3
.byte 102,15,56,0,224
pxor %xmm2,%xmm4
movdqa %xmm10,%xmm2
.byte 102,15,56,0,211
movdqa %xmm10,%xmm3
pxor %xmm0,%xmm2
.byte 102,15,56,0,220
movdqu (%r9),%xmm0
pxor %xmm1,%xmm3
jnz .Ldec_loop
movdqa 96(%r10),%xmm4
.byte 102,15,56,0,226
pxor %xmm0,%xmm4
movdqa 112(%r10),%xmm0
movdqa -352(%r11),%xmm2
.byte 102,15,56,0,195
pxor %xmm4,%xmm0
.byte 102,15,56,0,194
.byte 0xf3,0xc3
.size _vpaes_decrypt_core,.-_vpaes_decrypt_core
.type _vpaes_schedule_core,@function
.align 16
_vpaes_schedule_core:
call _vpaes_preheat
movdqa .Lk_rcon(%rip),%xmm8
movdqu (%rdi),%xmm0
movdqa %xmm0,%xmm3
leaq .Lk_ipt(%rip),%r11
call _vpaes_schedule_transform
movdqa %xmm0,%xmm7
leaq .Lk_sr(%rip),%r10
testq %rcx,%rcx
jnz .Lschedule_am_decrypting
movdqu %xmm0,(%rdx)
jmp .Lschedule_go
.Lschedule_am_decrypting:
movdqa (%r8,%r10,1),%xmm1
.byte 102,15,56,0,217
movdqu %xmm3,(%rdx)
xorq $0x30,%r8
.Lschedule_go:
cmpl $192,%esi
ja .Lschedule_256
je .Lschedule_192
.Lschedule_128:
movl $10,%esi
.Loop_schedule_128:
call _vpaes_schedule_round
decq %rsi
jz .Lschedule_mangle_last
call _vpaes_schedule_mangle
jmp .Loop_schedule_128
.align 16
.Lschedule_192:
movdqu 8(%rdi),%xmm0
call _vpaes_schedule_transform
movdqa %xmm0,%xmm6
pxor %xmm4,%xmm4
movhlps %xmm4,%xmm6
movl $4,%esi
.Loop_schedule_192:
call _vpaes_schedule_round
.byte 102,15,58,15,198,8
call _vpaes_schedule_mangle
call _vpaes_schedule_192_smear
call _vpaes_schedule_mangle
call _vpaes_schedule_round
decq %rsi
jz .Lschedule_mangle_last
call _vpaes_schedule_mangle
call _vpaes_schedule_192_smear
jmp .Loop_schedule_192
.align 16
.Lschedule_256:
movdqu 16(%rdi),%xmm0
call _vpaes_schedule_transform
movl $7,%esi
.Loop_schedule_256:
call _vpaes_schedule_mangle
movdqa %xmm0,%xmm6
call _vpaes_schedule_round
decq %rsi
jz .Lschedule_mangle_last
call _vpaes_schedule_mangle
pshufd $0xFF,%xmm0,%xmm0
movdqa %xmm7,%xmm5
movdqa %xmm6,%xmm7
call _vpaes_schedule_low_round
movdqa %xmm5,%xmm7
jmp .Loop_schedule_256
.align 16
.Lschedule_mangle_last:
leaq .Lk_deskew(%rip),%r11
testq %rcx,%rcx
jnz .Lschedule_mangle_last_dec
movdqa (%r8,%r10,1),%xmm1
.byte 102,15,56,0,193
leaq .Lk_opt(%rip),%r11
addq $32,%rdx
.Lschedule_mangle_last_dec:
addq $-16,%rdx
pxor .Lk_s63(%rip),%xmm0
call _vpaes_schedule_transform
movdqu %xmm0,(%rdx)
pxor %xmm0,%xmm0
pxor %xmm1,%xmm1
pxor %xmm2,%xmm2
pxor %xmm3,%xmm3
pxor %xmm4,%xmm4
pxor %xmm5,%xmm5
pxor %xmm6,%xmm6
pxor %xmm7,%xmm7
.byte 0xf3,0xc3
.size _vpaes_schedule_core,.-_vpaes_schedule_core
.type _vpaes_schedule_192_smear,@function
.align 16
_vpaes_schedule_192_smear:
pshufd $0x80,%xmm6,%xmm1
pshufd $0xFE,%xmm7,%xmm0
pxor %xmm1,%xmm6
pxor %xmm1,%xmm1
pxor %xmm0,%xmm6
movdqa %xmm6,%xmm0
movhlps %xmm1,%xmm6
.byte 0xf3,0xc3
.size _vpaes_schedule_192_smear,.-_vpaes_schedule_192_smear
.type _vpaes_schedule_round,@function
.align 16
_vpaes_schedule_round:
pxor %xmm1,%xmm1
.byte 102,65,15,58,15,200,15
.byte 102,69,15,58,15,192,15
pxor %xmm1,%xmm7
pshufd $0xFF,%xmm0,%xmm0
.byte 102,15,58,15,192,1
_vpaes_schedule_low_round:
movdqa %xmm7,%xmm1
pslldq $4,%xmm7
pxor %xmm1,%xmm7
movdqa %xmm7,%xmm1
pslldq $8,%xmm7
pxor %xmm1,%xmm7
pxor .Lk_s63(%rip),%xmm7
movdqa %xmm9,%xmm1
pandn %xmm0,%xmm1
psrld $4,%xmm1
pand %xmm9,%xmm0
movdqa %xmm11,%xmm2
.byte 102,15,56,0,208
pxor %xmm1,%xmm0
movdqa %xmm10,%xmm3
.byte 102,15,56,0,217
pxor %xmm2,%xmm3
movdqa %xmm10,%xmm4
.byte 102,15,56,0,224
pxor %xmm2,%xmm4
movdqa %xmm10,%xmm2
.byte 102,15,56,0,211
pxor %xmm0,%xmm2
movdqa %xmm10,%xmm3
.byte 102,15,56,0,220
pxor %xmm1,%xmm3
movdqa %xmm13,%xmm4
.byte 102,15,56,0,226
movdqa %xmm12,%xmm0
.byte 102,15,56,0,195
pxor %xmm4,%xmm0
pxor %xmm7,%xmm0
movdqa %xmm0,%xmm7
.byte 0xf3,0xc3
.size _vpaes_schedule_round,.-_vpaes_schedule_round
.type _vpaes_schedule_transform,@function
.align 16
_vpaes_schedule_transform:
movdqa %xmm9,%xmm1
pandn %xmm0,%xmm1
psrld $4,%xmm1
pand %xmm9,%xmm0
movdqa (%r11),%xmm2
.byte 102,15,56,0,208
movdqa 16(%r11),%xmm0
.byte 102,15,56,0,193
pxor %xmm2,%xmm0
.byte 0xf3,0xc3
.size _vpaes_schedule_transform,.-_vpaes_schedule_transform
.type _vpaes_schedule_mangle,@function
.align 16
_vpaes_schedule_mangle:
movdqa %xmm0,%xmm4
movdqa .Lk_mc_forward(%rip),%xmm5
testq %rcx,%rcx
jnz .Lschedule_mangle_dec
addq $16,%rdx
pxor .Lk_s63(%rip),%xmm4
.byte 102,15,56,0,229
movdqa %xmm4,%xmm3
.byte 102,15,56,0,229
pxor %xmm4,%xmm3
.byte 102,15,56,0,229
pxor %xmm4,%xmm3
jmp .Lschedule_mangle_both
.align 16
.Lschedule_mangle_dec:
leaq .Lk_dksd(%rip),%r11
movdqa %xmm9,%xmm1
pandn %xmm4,%xmm1
psrld $4,%xmm1
pand %xmm9,%xmm4
movdqa 0(%r11),%xmm2
.byte 102,15,56,0,212
movdqa 16(%r11),%xmm3
.byte 102,15,56,0,217
pxor %xmm2,%xmm3
.byte 102,15,56,0,221
movdqa 32(%r11),%xmm2
.byte 102,15,56,0,212
pxor %xmm3,%xmm2
movdqa 48(%r11),%xmm3
.byte 102,15,56,0,217
pxor %xmm2,%xmm3
.byte 102,15,56,0,221
movdqa 64(%r11),%xmm2
.byte 102,15,56,0,212
pxor %xmm3,%xmm2
movdqa 80(%r11),%xmm3
.byte 102,15,56,0,217
pxor %xmm2,%xmm3
.byte 102,15,56,0,221
movdqa 96(%r11),%xmm2
.byte 102,15,56,0,212
pxor %xmm3,%xmm2
movdqa 112(%r11),%xmm3
.byte 102,15,56,0,217
pxor %xmm2,%xmm3
addq $-16,%rdx
.Lschedule_mangle_both:
movdqa (%r8,%r10,1),%xmm1
.byte 102,15,56,0,217
addq $-16,%r8
andq $0x30,%r8
movdqu %xmm3,(%rdx)
.byte 0xf3,0xc3
.size _vpaes_schedule_mangle,.-_vpaes_schedule_mangle
.globl vpaes_set_encrypt_key
.type vpaes_set_encrypt_key,@function
.align 16
vpaes_set_encrypt_key:
movl %esi,%eax
shrl $5,%eax
addl $5,%eax
movl %eax,240(%rdx)
movl $0,%ecx
movl $0x30,%r8d
call _vpaes_schedule_core
xorl %eax,%eax
.byte 0xf3,0xc3
.size vpaes_set_encrypt_key,.-vpaes_set_encrypt_key
.globl vpaes_set_decrypt_key
.type vpaes_set_decrypt_key,@function
.align 16
vpaes_set_decrypt_key:
movl %esi,%eax
shrl $5,%eax
addl $5,%eax
movl %eax,240(%rdx)
shll $4,%eax
leaq 16(%rdx,%rax,1),%rdx
movl $1,%ecx
movl %esi,%r8d
shrl $1,%r8d
andl $32,%r8d
xorl $32,%r8d
call _vpaes_schedule_core
xorl %eax,%eax
.byte 0xf3,0xc3
.size vpaes_set_decrypt_key,.-vpaes_set_decrypt_key
.globl vpaes_encrypt
.type vpaes_encrypt,@function
.align 16
vpaes_encrypt:
movdqu (%rdi),%xmm0
call _vpaes_preheat
call _vpaes_encrypt_core
movdqu %xmm0,(%rsi)
.byte 0xf3,0xc3
.size vpaes_encrypt,.-vpaes_encrypt
.globl vpaes_decrypt
.type vpaes_decrypt,@function
.align 16
vpaes_decrypt:
movdqu (%rdi),%xmm0
call _vpaes_preheat
call _vpaes_decrypt_core
movdqu %xmm0,(%rsi)
.byte 0xf3,0xc3
.size vpaes_decrypt,.-vpaes_decrypt
.globl vpaes_cbc_encrypt
.type vpaes_cbc_encrypt,@function
.align 16
vpaes_cbc_encrypt:
xchgq %rcx,%rdx
subq $16,%rcx
jc .Lcbc_abort
movdqu (%r8),%xmm6
subq %rdi,%rsi
call _vpaes_preheat
cmpl $0,%r9d
je .Lcbc_dec_loop
jmp .Lcbc_enc_loop
.align 16
.Lcbc_enc_loop:
movdqu (%rdi),%xmm0
pxor %xmm6,%xmm0
call _vpaes_encrypt_core
movdqa %xmm0,%xmm6
movdqu %xmm0,(%rsi,%rdi,1)
leaq 16(%rdi),%rdi
subq $16,%rcx
jnc .Lcbc_enc_loop
jmp .Lcbc_done
.align 16
.Lcbc_dec_loop:
movdqu (%rdi),%xmm0
movdqa %xmm0,%xmm7
call _vpaes_decrypt_core
pxor %xmm6,%xmm0
movdqa %xmm7,%xmm6
movdqu %xmm0,(%rsi,%rdi,1)
leaq 16(%rdi),%rdi
subq $16,%rcx
jnc .Lcbc_dec_loop
.Lcbc_done:
movdqu %xmm6,(%r8)
.Lcbc_abort:
.byte 0xf3,0xc3
.size vpaes_cbc_encrypt,.-vpaes_cbc_encrypt
.type _vpaes_preheat,@function
.align 16
_vpaes_preheat:
leaq .Lk_s0F(%rip),%r10
movdqa -32(%r10),%xmm10
movdqa -16(%r10),%xmm11
movdqa 0(%r10),%xmm9
movdqa 48(%r10),%xmm13
movdqa 64(%r10),%xmm12
movdqa 80(%r10),%xmm15
movdqa 96(%r10),%xmm14
.byte 0xf3,0xc3
.size _vpaes_preheat,.-_vpaes_preheat
.type _vpaes_consts,@object
.align 64
_vpaes_consts:
.Lk_inv:
.quad 0x0E05060F0D080180, 0x040703090A0B0C02
.quad 0x01040A060F0B0780, 0x030D0E0C02050809
.Lk_s0F:
.quad 0x0F0F0F0F0F0F0F0F, 0x0F0F0F0F0F0F0F0F
.Lk_ipt:
.quad 0xC2B2E8985A2A7000, 0xCABAE09052227808
.quad 0x4C01307D317C4D00, 0xCD80B1FCB0FDCC81
.Lk_sb1:
.quad 0xB19BE18FCB503E00, 0xA5DF7A6E142AF544
.quad 0x3618D415FAE22300, 0x3BF7CCC10D2ED9EF
.Lk_sb2:
.quad 0xE27A93C60B712400, 0x5EB7E955BC982FCD
.quad 0x69EB88400AE12900, 0xC2A163C8AB82234A
.Lk_sbo:
.quad 0xD0D26D176FBDC700, 0x15AABF7AC502A878
.quad 0xCFE474A55FBB6A00, 0x8E1E90D1412B35FA
.Lk_mc_forward:
.quad 0x0407060500030201, 0x0C0F0E0D080B0A09
.quad 0x080B0A0904070605, 0x000302010C0F0E0D
.quad 0x0C0F0E0D080B0A09, 0x0407060500030201
.quad 0x000302010C0F0E0D, 0x080B0A0904070605
.Lk_mc_backward:
.quad 0x0605040702010003, 0x0E0D0C0F0A09080B
.quad 0x020100030E0D0C0F, 0x0A09080B06050407
.quad 0x0E0D0C0F0A09080B, 0x0605040702010003
.quad 0x0A09080B06050407, 0x020100030E0D0C0F
.Lk_sr:
.quad 0x0706050403020100, 0x0F0E0D0C0B0A0908
.quad 0x030E09040F0A0500, 0x0B06010C07020D08
.quad 0x0F060D040B020900, 0x070E050C030A0108
.quad 0x0B0E0104070A0D00, 0x0306090C0F020508
.Lk_rcon:
.quad 0x1F8391B9AF9DEEB6, 0x702A98084D7C7D81
.Lk_s63:
.quad 0x5B5B5B5B5B5B5B5B, 0x5B5B5B5B5B5B5B5B
.Lk_opt:
.quad 0xFF9F4929D6B66000, 0xF7974121DEBE6808
.quad 0x01EDBD5150BCEC00, 0xE10D5DB1B05C0CE0
.Lk_deskew:
.quad 0x07E4A34047A4E300, 0x1DFEB95A5DBEF91A
.quad 0x5F36B5DC83EA6900, 0x2841C2ABF49D1E77
.Lk_dksd:
.quad 0xFEB91A5DA3E44700, 0x0740E3A45A1DBEF9
.quad 0x41C277F4B5368300, 0x5FDC69EAAB289D1E
.Lk_dksb:
.quad 0x9A4FCA1F8550D500, 0x03D653861CC94C99
.quad 0x115BEDA7B6FC4A00, 0xD993256F7E3482C8
.Lk_dkse:
.quad 0xD5031CCA1FC9D600, 0x53859A4C994F5086
.quad 0xA23196054FDC7BE8, 0xCD5EF96A20B31487
.Lk_dks9:
.quad 0xB6116FC87ED9A700, 0x4AED933482255BFC
.quad 0x4576516227143300, 0x8BB89FACE9DAFDCE
.Lk_dipt:
.quad 0x0F505B040B545F00, 0x154A411E114E451A
.quad 0x86E383E660056500, 0x12771772F491F194
.Lk_dsb9:
.quad 0x851C03539A86D600, 0xCAD51F504F994CC9
.quad 0xC03B1789ECD74900, 0x725E2C9EB2FBA565
.Lk_dsbd:
.quad 0x7D57CCDFE6B1A200, 0xF56E9B13882A4439
.quad 0x3CE2FAF724C6CB00, 0x2931180D15DEEFD3
.Lk_dsbb:
.quad 0xD022649296B44200, 0x602646F6B0F2D404
.quad 0xC19498A6CD596700, 0xF3FF0C3E3255AA6B
.Lk_dsbe:
.quad 0x46F2929626D4D000, 0x2242600464B4F6B0
.quad 0x0C55A6CDFFAAC100, 0x9467F36B98593E32
.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
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,291 @@
.text
.type _mul_1x1,@function
.align 16
_mul_1x1:
subq $128+8,%rsp
movq $-1,%r9
leaq (%rax,%rax,1),%rsi
shrq $3,%r9
leaq (,%rax,4),%rdi
andq %rax,%r9
leaq (,%rax,8),%r12
sarq $63,%rax
leaq (%r9,%r9,1),%r10
sarq $63,%rsi
leaq (,%r9,4),%r11
andq %rbp,%rax
sarq $63,%rdi
movq %rax,%rdx
shlq $63,%rax
andq %rbp,%rsi
shrq $1,%rdx
movq %rsi,%rcx
shlq $62,%rsi
andq %rbp,%rdi
shrq $2,%rcx
xorq %rsi,%rax
movq %rdi,%rbx
shlq $61,%rdi
xorq %rcx,%rdx
shrq $3,%rbx
xorq %rdi,%rax
xorq %rbx,%rdx
movq %r9,%r13
movq $0,0(%rsp)
xorq %r10,%r13
movq %r9,8(%rsp)
movq %r11,%r14
movq %r10,16(%rsp)
xorq %r12,%r14
movq %r13,24(%rsp)
xorq %r11,%r9
movq %r11,32(%rsp)
xorq %r11,%r10
movq %r9,40(%rsp)
xorq %r11,%r13
movq %r10,48(%rsp)
xorq %r14,%r9
movq %r13,56(%rsp)
xorq %r14,%r10
movq %r12,64(%rsp)
xorq %r14,%r13
movq %r9,72(%rsp)
xorq %r11,%r9
movq %r10,80(%rsp)
xorq %r11,%r10
movq %r13,88(%rsp)
xorq %r11,%r13
movq %r14,96(%rsp)
movq %r8,%rsi
movq %r9,104(%rsp)
andq %rbp,%rsi
movq %r10,112(%rsp)
shrq $4,%rbp
movq %r13,120(%rsp)
movq %r8,%rdi
andq %rbp,%rdi
shrq $4,%rbp
movq (%rsp,%rsi,8),%xmm0
movq %r8,%rsi
andq %rbp,%rsi
shrq $4,%rbp
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $4,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $60,%rbx
xorq %rcx,%rax
pslldq $1,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $12,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $52,%rbx
xorq %rcx,%rax
pslldq $2,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $20,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $44,%rbx
xorq %rcx,%rax
pslldq $3,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $28,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $36,%rbx
xorq %rcx,%rax
pslldq $4,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $36,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $28,%rbx
xorq %rcx,%rax
pslldq $5,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $44,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $20,%rbx
xorq %rcx,%rax
pslldq $6,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %r8,%rdi
movq %rcx,%rbx
shlq $52,%rcx
andq %rbp,%rdi
movq (%rsp,%rsi,8),%xmm1
shrq $12,%rbx
xorq %rcx,%rax
pslldq $7,%xmm1
movq %r8,%rsi
shrq $4,%rbp
xorq %rbx,%rdx
andq %rbp,%rsi
shrq $4,%rbp
pxor %xmm1,%xmm0
movq (%rsp,%rdi,8),%rcx
movq %rcx,%rbx
shlq $60,%rcx
.byte 102,72,15,126,198
shrq $4,%rbx
xorq %rcx,%rax
psrldq $8,%xmm0
xorq %rbx,%rdx
.byte 102,72,15,126,199
xorq %rsi,%rax
xorq %rdi,%rdx
addq $128+8,%rsp
.byte 0xf3,0xc3
.Lend_mul_1x1:
.size _mul_1x1,.-_mul_1x1
.globl bn_GF2m_mul_2x2
.type bn_GF2m_mul_2x2,@function
.align 16
bn_GF2m_mul_2x2:
movq OPENSSL_ia32cap_P(%rip),%rax
btq $33,%rax
jnc .Lvanilla_mul_2x2
.byte 102,72,15,110,198
.byte 102,72,15,110,201
.byte 102,72,15,110,210
.byte 102,73,15,110,216
movdqa %xmm0,%xmm4
movdqa %xmm1,%xmm5
.byte 102,15,58,68,193,0
pxor %xmm2,%xmm4
pxor %xmm3,%xmm5
.byte 102,15,58,68,211,0
.byte 102,15,58,68,229,0
xorps %xmm0,%xmm4
xorps %xmm2,%xmm4
movdqa %xmm4,%xmm5
pslldq $8,%xmm4
psrldq $8,%xmm5
pxor %xmm4,%xmm2
pxor %xmm5,%xmm0
movdqu %xmm2,0(%rdi)
movdqu %xmm0,16(%rdi)
.byte 0xf3,0xc3
.align 16
.Lvanilla_mul_2x2:
leaq -136(%rsp),%rsp
movq %r14,80(%rsp)
movq %r13,88(%rsp)
movq %r12,96(%rsp)
movq %rbp,104(%rsp)
movq %rbx,112(%rsp)
.Lbody_mul_2x2:
movq %rdi,32(%rsp)
movq %rsi,40(%rsp)
movq %rdx,48(%rsp)
movq %rcx,56(%rsp)
movq %r8,64(%rsp)
movq $0xf,%r8
movq %rsi,%rax
movq %rcx,%rbp
call _mul_1x1
movq %rax,16(%rsp)
movq %rdx,24(%rsp)
movq 48(%rsp),%rax
movq 64(%rsp),%rbp
call _mul_1x1
movq %rax,0(%rsp)
movq %rdx,8(%rsp)
movq 40(%rsp),%rax
movq 56(%rsp),%rbp
xorq 48(%rsp),%rax
xorq 64(%rsp),%rbp
call _mul_1x1
movq 0(%rsp),%rbx
movq 8(%rsp),%rcx
movq 16(%rsp),%rdi
movq 24(%rsp),%rsi
movq 32(%rsp),%rbp
xorq %rdx,%rax
xorq %rcx,%rdx
xorq %rbx,%rax
movq %rbx,0(%rbp)
xorq %rdi,%rdx
movq %rsi,24(%rbp)
xorq %rsi,%rax
xorq %rsi,%rdx
xorq %rdx,%rax
movq %rdx,16(%rbp)
movq %rax,8(%rbp)
movq 80(%rsp),%r14
movq 88(%rsp),%r13
movq 96(%rsp),%r12
movq 104(%rsp),%rbp
movq 112(%rsp),%rbx
leaq 136(%rsp),%rsp
.byte 0xf3,0xc3
.Lend_mul_2x2:
.size bn_GF2m_mul_2x2,.-bn_GF2m_mul_2x2
.byte 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105,99,97,116,105,111,110,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 16
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,38 @@
/* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
#define CFLAGS cflags
/*
* Generate CFLAGS as an array of individual characters. This is a
* workaround for the situation where CFLAGS gets too long for a C90 string
* literal
*/
static const char cflags[] = {
'c','o','m','p','i','l','e','r',':',' ','c','c',' ','-','D','D',
'S','O','_','D','L','F','C','N',' ','-','D','H','A','V','E','_',
'D','L','F','C','N','_','H',' ','-','D','N','D','E','B','U','G',
' ','-','D','O','P','E','N','S','S','L','_','T','H','R','E','A',
'D','S',' ','-','D','O','P','E','N','S','S','L','_','N','O','_',
'D','Y','N','A','M','I','C','_','E','N','G','I','N','E',' ','-',
'D','O','P','E','N','S','S','L','_','P','I','C',' ','-','D','O',
'P','E','N','S','S','L','_','I','A','3','2','_','S','S','E','2',
' ','-','D','O','P','E','N','S','S','L','_','B','N','_','A','S',
'M','_','M','O','N','T',' ','-','D','O','P','E','N','S','S','L',
'_','B','N','_','A','S','M','_','M','O','N','T','5',' ','-','D',
'O','P','E','N','S','S','L','_','B','N','_','A','S','M','_','G',
'F','2','m',' ','-','D','S','H','A','1','_','A','S','M',' ','-',
'D','S','H','A','2','5','6','_','A','S','M',' ','-','D','S','H',
'A','5','1','2','_','A','S','M',' ','-','D','R','C','4','_','A',
'S','M',' ','-','D','M','D','5','_','A','S','M',' ','-','D','A',
'E','S','_','A','S','M',' ','-','D','V','P','A','E','S','_','A',
'S','M',' ','-','D','B','S','A','E','S','_','A','S','M',' ','-',
'D','G','H','A','S','H','_','A','S','M',' ','-','D','E','C','P',
'_','N','I','S','T','Z','2','5','6','_','A','S','M',' ','-','D',
'P','A','D','L','O','C','K','_','A','S','M',' ','-','D','P','O',
'L','Y','1','3','0','5','_','A','S','M',' ','-','D','O','P','E',
'N','S','S','L','D','I','R','=','"','\\','"','/','u','s','r','/',
'l','o','c','a','l','/','s','s','l','\\','"','"',' ','-','D','E',
'N','G','I','N','E','S','D','I','R','=','"','\\','"','/','u','s',
'r','/','l','o','c','a','l','/','l','i','b','/','e','n','g','i',
'n','e','s','-','1','.','1','\\','"','"',' ','\0'
};
#define PLATFORM "platform: BSD-x86_64"
#define DATE "built on: Tue Apr 3 00:38:12 2018"
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
@@ -0,0 +1,28 @@
/* WARNING: do not edit! */
/* Generated by Makefile from crypto/include/internal/bn_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_BN_CONF_H
# define HEADER_BN_CONF_H
/*
* The contents of this file are not used in the UEFI build, as
* both 32-bit and 64-bit builds are supported from a single run
* of the Configure script.
*/
/* Should we define BN_DIV2W here? */
/* Only one for the following should be defined */
#define SIXTY_FOUR_BIT_LONG
#undef SIXTY_FOUR_BIT
#undef THIRTY_TWO_BIT
#endif
@@ -0,0 +1,16 @@
/* WARNING: do not edit! */
/* Generated by Makefile from crypto/include/internal/dso_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_DSO_CONF_H
# define HEADER_DSO_CONF_H
# define DSO_EXTENSION ".so"
#endif
@@ -0,0 +1,665 @@
.text
.align 16
.globl md5_block_asm_data_order
.type md5_block_asm_data_order,@function
md5_block_asm_data_order:
pushq %rbp
pushq %rbx
pushq %r12
pushq %r14
pushq %r15
.Lprologue:
movq %rdi,%rbp
shlq $6,%rdx
leaq (%rsi,%rdx,1),%rdi
movl 0(%rbp),%eax
movl 4(%rbp),%ebx
movl 8(%rbp),%ecx
movl 12(%rbp),%edx
cmpq %rdi,%rsi
je .Lend
.Lloop:
movl %eax,%r8d
movl %ebx,%r9d
movl %ecx,%r14d
movl %edx,%r15d
movl 0(%rsi),%r10d
movl %edx,%r11d
xorl %ecx,%r11d
leal -680876936(%rax,%r10,1),%eax
andl %ebx,%r11d
movl 4(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%eax
roll $7,%eax
movl %ecx,%r11d
addl %ebx,%eax
xorl %ebx,%r11d
leal -389564586(%rdx,%r10,1),%edx
andl %eax,%r11d
movl 8(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%edx
roll $12,%edx
movl %ebx,%r11d
addl %eax,%edx
xorl %eax,%r11d
leal 606105819(%rcx,%r10,1),%ecx
andl %edx,%r11d
movl 12(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%ecx
roll $17,%ecx
movl %eax,%r11d
addl %edx,%ecx
xorl %edx,%r11d
leal -1044525330(%rbx,%r10,1),%ebx
andl %ecx,%r11d
movl 16(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ebx
roll $22,%ebx
movl %edx,%r11d
addl %ecx,%ebx
xorl %ecx,%r11d
leal -176418897(%rax,%r10,1),%eax
andl %ebx,%r11d
movl 20(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%eax
roll $7,%eax
movl %ecx,%r11d
addl %ebx,%eax
xorl %ebx,%r11d
leal 1200080426(%rdx,%r10,1),%edx
andl %eax,%r11d
movl 24(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%edx
roll $12,%edx
movl %ebx,%r11d
addl %eax,%edx
xorl %eax,%r11d
leal -1473231341(%rcx,%r10,1),%ecx
andl %edx,%r11d
movl 28(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%ecx
roll $17,%ecx
movl %eax,%r11d
addl %edx,%ecx
xorl %edx,%r11d
leal -45705983(%rbx,%r10,1),%ebx
andl %ecx,%r11d
movl 32(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ebx
roll $22,%ebx
movl %edx,%r11d
addl %ecx,%ebx
xorl %ecx,%r11d
leal 1770035416(%rax,%r10,1),%eax
andl %ebx,%r11d
movl 36(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%eax
roll $7,%eax
movl %ecx,%r11d
addl %ebx,%eax
xorl %ebx,%r11d
leal -1958414417(%rdx,%r10,1),%edx
andl %eax,%r11d
movl 40(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%edx
roll $12,%edx
movl %ebx,%r11d
addl %eax,%edx
xorl %eax,%r11d
leal -42063(%rcx,%r10,1),%ecx
andl %edx,%r11d
movl 44(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%ecx
roll $17,%ecx
movl %eax,%r11d
addl %edx,%ecx
xorl %edx,%r11d
leal -1990404162(%rbx,%r10,1),%ebx
andl %ecx,%r11d
movl 48(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ebx
roll $22,%ebx
movl %edx,%r11d
addl %ecx,%ebx
xorl %ecx,%r11d
leal 1804603682(%rax,%r10,1),%eax
andl %ebx,%r11d
movl 52(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%eax
roll $7,%eax
movl %ecx,%r11d
addl %ebx,%eax
xorl %ebx,%r11d
leal -40341101(%rdx,%r10,1),%edx
andl %eax,%r11d
movl 56(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%edx
roll $12,%edx
movl %ebx,%r11d
addl %eax,%edx
xorl %eax,%r11d
leal -1502002290(%rcx,%r10,1),%ecx
andl %edx,%r11d
movl 60(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%ecx
roll $17,%ecx
movl %eax,%r11d
addl %edx,%ecx
xorl %edx,%r11d
leal 1236535329(%rbx,%r10,1),%ebx
andl %ecx,%r11d
movl 4(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ebx
roll $22,%ebx
movl %edx,%r11d
addl %ecx,%ebx
movl %edx,%r11d
movl %edx,%r12d
notl %r11d
andl %ebx,%r12d
leal -165796510(%rax,%r10,1),%eax
andl %ecx,%r11d
movl 24(%rsi),%r10d
orl %r11d,%r12d
movl %ecx,%r11d
addl %r12d,%eax
movl %ecx,%r12d
roll $5,%eax
addl %ebx,%eax
notl %r11d
andl %eax,%r12d
leal -1069501632(%rdx,%r10,1),%edx
andl %ebx,%r11d
movl 44(%rsi),%r10d
orl %r11d,%r12d
movl %ebx,%r11d
addl %r12d,%edx
movl %ebx,%r12d
roll $9,%edx
addl %eax,%edx
notl %r11d
andl %edx,%r12d
leal 643717713(%rcx,%r10,1),%ecx
andl %eax,%r11d
movl 0(%rsi),%r10d
orl %r11d,%r12d
movl %eax,%r11d
addl %r12d,%ecx
movl %eax,%r12d
roll $14,%ecx
addl %edx,%ecx
notl %r11d
andl %ecx,%r12d
leal -373897302(%rbx,%r10,1),%ebx
andl %edx,%r11d
movl 20(%rsi),%r10d
orl %r11d,%r12d
movl %edx,%r11d
addl %r12d,%ebx
movl %edx,%r12d
roll $20,%ebx
addl %ecx,%ebx
notl %r11d
andl %ebx,%r12d
leal -701558691(%rax,%r10,1),%eax
andl %ecx,%r11d
movl 40(%rsi),%r10d
orl %r11d,%r12d
movl %ecx,%r11d
addl %r12d,%eax
movl %ecx,%r12d
roll $5,%eax
addl %ebx,%eax
notl %r11d
andl %eax,%r12d
leal 38016083(%rdx,%r10,1),%edx
andl %ebx,%r11d
movl 60(%rsi),%r10d
orl %r11d,%r12d
movl %ebx,%r11d
addl %r12d,%edx
movl %ebx,%r12d
roll $9,%edx
addl %eax,%edx
notl %r11d
andl %edx,%r12d
leal -660478335(%rcx,%r10,1),%ecx
andl %eax,%r11d
movl 16(%rsi),%r10d
orl %r11d,%r12d
movl %eax,%r11d
addl %r12d,%ecx
movl %eax,%r12d
roll $14,%ecx
addl %edx,%ecx
notl %r11d
andl %ecx,%r12d
leal -405537848(%rbx,%r10,1),%ebx
andl %edx,%r11d
movl 36(%rsi),%r10d
orl %r11d,%r12d
movl %edx,%r11d
addl %r12d,%ebx
movl %edx,%r12d
roll $20,%ebx
addl %ecx,%ebx
notl %r11d
andl %ebx,%r12d
leal 568446438(%rax,%r10,1),%eax
andl %ecx,%r11d
movl 56(%rsi),%r10d
orl %r11d,%r12d
movl %ecx,%r11d
addl %r12d,%eax
movl %ecx,%r12d
roll $5,%eax
addl %ebx,%eax
notl %r11d
andl %eax,%r12d
leal -1019803690(%rdx,%r10,1),%edx
andl %ebx,%r11d
movl 12(%rsi),%r10d
orl %r11d,%r12d
movl %ebx,%r11d
addl %r12d,%edx
movl %ebx,%r12d
roll $9,%edx
addl %eax,%edx
notl %r11d
andl %edx,%r12d
leal -187363961(%rcx,%r10,1),%ecx
andl %eax,%r11d
movl 32(%rsi),%r10d
orl %r11d,%r12d
movl %eax,%r11d
addl %r12d,%ecx
movl %eax,%r12d
roll $14,%ecx
addl %edx,%ecx
notl %r11d
andl %ecx,%r12d
leal 1163531501(%rbx,%r10,1),%ebx
andl %edx,%r11d
movl 52(%rsi),%r10d
orl %r11d,%r12d
movl %edx,%r11d
addl %r12d,%ebx
movl %edx,%r12d
roll $20,%ebx
addl %ecx,%ebx
notl %r11d
andl %ebx,%r12d
leal -1444681467(%rax,%r10,1),%eax
andl %ecx,%r11d
movl 8(%rsi),%r10d
orl %r11d,%r12d
movl %ecx,%r11d
addl %r12d,%eax
movl %ecx,%r12d
roll $5,%eax
addl %ebx,%eax
notl %r11d
andl %eax,%r12d
leal -51403784(%rdx,%r10,1),%edx
andl %ebx,%r11d
movl 28(%rsi),%r10d
orl %r11d,%r12d
movl %ebx,%r11d
addl %r12d,%edx
movl %ebx,%r12d
roll $9,%edx
addl %eax,%edx
notl %r11d
andl %edx,%r12d
leal 1735328473(%rcx,%r10,1),%ecx
andl %eax,%r11d
movl 48(%rsi),%r10d
orl %r11d,%r12d
movl %eax,%r11d
addl %r12d,%ecx
movl %eax,%r12d
roll $14,%ecx
addl %edx,%ecx
notl %r11d
andl %ecx,%r12d
leal -1926607734(%rbx,%r10,1),%ebx
andl %edx,%r11d
movl 20(%rsi),%r10d
orl %r11d,%r12d
movl %edx,%r11d
addl %r12d,%ebx
movl %edx,%r12d
roll $20,%ebx
addl %ecx,%ebx
movl %ecx,%r11d
leal -378558(%rax,%r10,1),%eax
xorl %edx,%r11d
movl 32(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%eax
movl %ebx,%r11d
roll $4,%eax
addl %ebx,%eax
leal -2022574463(%rdx,%r10,1),%edx
xorl %ecx,%r11d
movl 44(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%edx
roll $11,%edx
movl %eax,%r11d
addl %eax,%edx
leal 1839030562(%rcx,%r10,1),%ecx
xorl %ebx,%r11d
movl 56(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ecx
movl %edx,%r11d
roll $16,%ecx
addl %edx,%ecx
leal -35309556(%rbx,%r10,1),%ebx
xorl %eax,%r11d
movl 4(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%ebx
roll $23,%ebx
movl %ecx,%r11d
addl %ecx,%ebx
leal -1530992060(%rax,%r10,1),%eax
xorl %edx,%r11d
movl 16(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%eax
movl %ebx,%r11d
roll $4,%eax
addl %ebx,%eax
leal 1272893353(%rdx,%r10,1),%edx
xorl %ecx,%r11d
movl 28(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%edx
roll $11,%edx
movl %eax,%r11d
addl %eax,%edx
leal -155497632(%rcx,%r10,1),%ecx
xorl %ebx,%r11d
movl 40(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ecx
movl %edx,%r11d
roll $16,%ecx
addl %edx,%ecx
leal -1094730640(%rbx,%r10,1),%ebx
xorl %eax,%r11d
movl 52(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%ebx
roll $23,%ebx
movl %ecx,%r11d
addl %ecx,%ebx
leal 681279174(%rax,%r10,1),%eax
xorl %edx,%r11d
movl 0(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%eax
movl %ebx,%r11d
roll $4,%eax
addl %ebx,%eax
leal -358537222(%rdx,%r10,1),%edx
xorl %ecx,%r11d
movl 12(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%edx
roll $11,%edx
movl %eax,%r11d
addl %eax,%edx
leal -722521979(%rcx,%r10,1),%ecx
xorl %ebx,%r11d
movl 24(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ecx
movl %edx,%r11d
roll $16,%ecx
addl %edx,%ecx
leal 76029189(%rbx,%r10,1),%ebx
xorl %eax,%r11d
movl 36(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%ebx
roll $23,%ebx
movl %ecx,%r11d
addl %ecx,%ebx
leal -640364487(%rax,%r10,1),%eax
xorl %edx,%r11d
movl 48(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%eax
movl %ebx,%r11d
roll $4,%eax
addl %ebx,%eax
leal -421815835(%rdx,%r10,1),%edx
xorl %ecx,%r11d
movl 60(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%edx
roll $11,%edx
movl %eax,%r11d
addl %eax,%edx
leal 530742520(%rcx,%r10,1),%ecx
xorl %ebx,%r11d
movl 8(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ecx
movl %edx,%r11d
roll $16,%ecx
addl %edx,%ecx
leal -995338651(%rbx,%r10,1),%ebx
xorl %eax,%r11d
movl 0(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%ebx
roll $23,%ebx
movl %ecx,%r11d
addl %ecx,%ebx
movl $0xffffffff,%r11d
xorl %edx,%r11d
leal -198630844(%rax,%r10,1),%eax
orl %ebx,%r11d
movl 28(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%eax
movl $0xffffffff,%r11d
roll $6,%eax
xorl %ecx,%r11d
addl %ebx,%eax
leal 1126891415(%rdx,%r10,1),%edx
orl %eax,%r11d
movl 56(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%edx
movl $0xffffffff,%r11d
roll $10,%edx
xorl %ebx,%r11d
addl %eax,%edx
leal -1416354905(%rcx,%r10,1),%ecx
orl %edx,%r11d
movl 20(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ecx
movl $0xffffffff,%r11d
roll $15,%ecx
xorl %eax,%r11d
addl %edx,%ecx
leal -57434055(%rbx,%r10,1),%ebx
orl %ecx,%r11d
movl 48(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ebx
movl $0xffffffff,%r11d
roll $21,%ebx
xorl %edx,%r11d
addl %ecx,%ebx
leal 1700485571(%rax,%r10,1),%eax
orl %ebx,%r11d
movl 12(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%eax
movl $0xffffffff,%r11d
roll $6,%eax
xorl %ecx,%r11d
addl %ebx,%eax
leal -1894986606(%rdx,%r10,1),%edx
orl %eax,%r11d
movl 40(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%edx
movl $0xffffffff,%r11d
roll $10,%edx
xorl %ebx,%r11d
addl %eax,%edx
leal -1051523(%rcx,%r10,1),%ecx
orl %edx,%r11d
movl 4(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ecx
movl $0xffffffff,%r11d
roll $15,%ecx
xorl %eax,%r11d
addl %edx,%ecx
leal -2054922799(%rbx,%r10,1),%ebx
orl %ecx,%r11d
movl 32(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ebx
movl $0xffffffff,%r11d
roll $21,%ebx
xorl %edx,%r11d
addl %ecx,%ebx
leal 1873313359(%rax,%r10,1),%eax
orl %ebx,%r11d
movl 60(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%eax
movl $0xffffffff,%r11d
roll $6,%eax
xorl %ecx,%r11d
addl %ebx,%eax
leal -30611744(%rdx,%r10,1),%edx
orl %eax,%r11d
movl 24(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%edx
movl $0xffffffff,%r11d
roll $10,%edx
xorl %ebx,%r11d
addl %eax,%edx
leal -1560198380(%rcx,%r10,1),%ecx
orl %edx,%r11d
movl 52(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ecx
movl $0xffffffff,%r11d
roll $15,%ecx
xorl %eax,%r11d
addl %edx,%ecx
leal 1309151649(%rbx,%r10,1),%ebx
orl %ecx,%r11d
movl 16(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ebx
movl $0xffffffff,%r11d
roll $21,%ebx
xorl %edx,%r11d
addl %ecx,%ebx
leal -145523070(%rax,%r10,1),%eax
orl %ebx,%r11d
movl 44(%rsi),%r10d
xorl %ecx,%r11d
addl %r11d,%eax
movl $0xffffffff,%r11d
roll $6,%eax
xorl %ecx,%r11d
addl %ebx,%eax
leal -1120210379(%rdx,%r10,1),%edx
orl %eax,%r11d
movl 8(%rsi),%r10d
xorl %ebx,%r11d
addl %r11d,%edx
movl $0xffffffff,%r11d
roll $10,%edx
xorl %ebx,%r11d
addl %eax,%edx
leal 718787259(%rcx,%r10,1),%ecx
orl %edx,%r11d
movl 36(%rsi),%r10d
xorl %eax,%r11d
addl %r11d,%ecx
movl $0xffffffff,%r11d
roll $15,%ecx
xorl %eax,%r11d
addl %edx,%ecx
leal -343485551(%rbx,%r10,1),%ebx
orl %ecx,%r11d
movl 0(%rsi),%r10d
xorl %edx,%r11d
addl %r11d,%ebx
movl $0xffffffff,%r11d
roll $21,%ebx
xorl %edx,%r11d
addl %ecx,%ebx
addl %r8d,%eax
addl %r9d,%ebx
addl %r14d,%ecx
addl %r15d,%edx
addq $64,%rsi
cmpq %rdi,%rsi
jb .Lloop
.Lend:
movl %eax,0(%rbp)
movl %ebx,4(%rbp)
movl %ecx,8(%rbp)
movl %edx,12(%rbp)
movq (%rsp),%r15
movq 8(%rsp),%r14
movq 16(%rsp),%r12
movq 24(%rsp),%rbx
movq 32(%rsp),%rbp
addq $40,%rsp
.Lepilogue:
.byte 0xf3,0xc3
.size md5_block_asm_data_order,.-md5_block_asm_data_order
@@ -0,0 +1,794 @@
.text
.type _aesni_ctr32_ghash_6x,@function
.align 32
_aesni_ctr32_ghash_6x:
vmovdqu 32(%r11),%xmm2
subq $6,%rdx
vpxor %xmm4,%xmm4,%xmm4
vmovdqu 0-128(%rcx),%xmm15
vpaddb %xmm2,%xmm1,%xmm10
vpaddb %xmm2,%xmm10,%xmm11
vpaddb %xmm2,%xmm11,%xmm12
vpaddb %xmm2,%xmm12,%xmm13
vpaddb %xmm2,%xmm13,%xmm14
vpxor %xmm15,%xmm1,%xmm9
vmovdqu %xmm4,16+8(%rsp)
jmp .Loop6x
.align 32
.Loop6x:
addl $100663296,%ebx
jc .Lhandle_ctr32
vmovdqu 0-32(%r9),%xmm3
vpaddb %xmm2,%xmm14,%xmm1
vpxor %xmm15,%xmm10,%xmm10
vpxor %xmm15,%xmm11,%xmm11
.Lresume_ctr32:
vmovdqu %xmm1,(%r8)
vpclmulqdq $0x10,%xmm3,%xmm7,%xmm5
vpxor %xmm15,%xmm12,%xmm12
vmovups 16-128(%rcx),%xmm2
vpclmulqdq $0x01,%xmm3,%xmm7,%xmm6
xorq %r12,%r12
cmpq %r14,%r15
vaesenc %xmm2,%xmm9,%xmm9
vmovdqu 48+8(%rsp),%xmm0
vpxor %xmm15,%xmm13,%xmm13
vpclmulqdq $0x00,%xmm3,%xmm7,%xmm1
vaesenc %xmm2,%xmm10,%xmm10
vpxor %xmm15,%xmm14,%xmm14
setnc %r12b
vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7
vaesenc %xmm2,%xmm11,%xmm11
vmovdqu 16-32(%r9),%xmm3
negq %r12
vaesenc %xmm2,%xmm12,%xmm12
vpxor %xmm5,%xmm6,%xmm6
vpclmulqdq $0x00,%xmm3,%xmm0,%xmm5
vpxor %xmm4,%xmm8,%xmm8
vaesenc %xmm2,%xmm13,%xmm13
vpxor %xmm5,%xmm1,%xmm4
andq $0x60,%r12
vmovups 32-128(%rcx),%xmm15
vpclmulqdq $0x10,%xmm3,%xmm0,%xmm1
vaesenc %xmm2,%xmm14,%xmm14
vpclmulqdq $0x01,%xmm3,%xmm0,%xmm2
leaq (%r14,%r12,1),%r14
vaesenc %xmm15,%xmm9,%xmm9
vpxor 16+8(%rsp),%xmm8,%xmm8
vpclmulqdq $0x11,%xmm3,%xmm0,%xmm3
vmovdqu 64+8(%rsp),%xmm0
vaesenc %xmm15,%xmm10,%xmm10
movbeq 88(%r14),%r13
vaesenc %xmm15,%xmm11,%xmm11
movbeq 80(%r14),%r12
vaesenc %xmm15,%xmm12,%xmm12
movq %r13,32+8(%rsp)
vaesenc %xmm15,%xmm13,%xmm13
movq %r12,40+8(%rsp)
vmovdqu 48-32(%r9),%xmm5
vaesenc %xmm15,%xmm14,%xmm14
vmovups 48-128(%rcx),%xmm15
vpxor %xmm1,%xmm6,%xmm6
vpclmulqdq $0x00,%xmm5,%xmm0,%xmm1
vaesenc %xmm15,%xmm9,%xmm9
vpxor %xmm2,%xmm6,%xmm6
vpclmulqdq $0x10,%xmm5,%xmm0,%xmm2
vaesenc %xmm15,%xmm10,%xmm10
vpxor %xmm3,%xmm7,%xmm7
vpclmulqdq $0x01,%xmm5,%xmm0,%xmm3
vaesenc %xmm15,%xmm11,%xmm11
vpclmulqdq $0x11,%xmm5,%xmm0,%xmm5
vmovdqu 80+8(%rsp),%xmm0
vaesenc %xmm15,%xmm12,%xmm12
vaesenc %xmm15,%xmm13,%xmm13
vpxor %xmm1,%xmm4,%xmm4
vmovdqu 64-32(%r9),%xmm1
vaesenc %xmm15,%xmm14,%xmm14
vmovups 64-128(%rcx),%xmm15
vpxor %xmm2,%xmm6,%xmm6
vpclmulqdq $0x00,%xmm1,%xmm0,%xmm2
vaesenc %xmm15,%xmm9,%xmm9
vpxor %xmm3,%xmm6,%xmm6
vpclmulqdq $0x10,%xmm1,%xmm0,%xmm3
vaesenc %xmm15,%xmm10,%xmm10
movbeq 72(%r14),%r13
vpxor %xmm5,%xmm7,%xmm7
vpclmulqdq $0x01,%xmm1,%xmm0,%xmm5
vaesenc %xmm15,%xmm11,%xmm11
movbeq 64(%r14),%r12
vpclmulqdq $0x11,%xmm1,%xmm0,%xmm1
vmovdqu 96+8(%rsp),%xmm0
vaesenc %xmm15,%xmm12,%xmm12
movq %r13,48+8(%rsp)
vaesenc %xmm15,%xmm13,%xmm13
movq %r12,56+8(%rsp)
vpxor %xmm2,%xmm4,%xmm4
vmovdqu 96-32(%r9),%xmm2
vaesenc %xmm15,%xmm14,%xmm14
vmovups 80-128(%rcx),%xmm15
vpxor %xmm3,%xmm6,%xmm6
vpclmulqdq $0x00,%xmm2,%xmm0,%xmm3
vaesenc %xmm15,%xmm9,%xmm9
vpxor %xmm5,%xmm6,%xmm6
vpclmulqdq $0x10,%xmm2,%xmm0,%xmm5
vaesenc %xmm15,%xmm10,%xmm10
movbeq 56(%r14),%r13
vpxor %xmm1,%xmm7,%xmm7
vpclmulqdq $0x01,%xmm2,%xmm0,%xmm1
vpxor 112+8(%rsp),%xmm8,%xmm8
vaesenc %xmm15,%xmm11,%xmm11
movbeq 48(%r14),%r12
vpclmulqdq $0x11,%xmm2,%xmm0,%xmm2
vaesenc %xmm15,%xmm12,%xmm12
movq %r13,64+8(%rsp)
vaesenc %xmm15,%xmm13,%xmm13
movq %r12,72+8(%rsp)
vpxor %xmm3,%xmm4,%xmm4
vmovdqu 112-32(%r9),%xmm3
vaesenc %xmm15,%xmm14,%xmm14
vmovups 96-128(%rcx),%xmm15
vpxor %xmm5,%xmm6,%xmm6
vpclmulqdq $0x10,%xmm3,%xmm8,%xmm5
vaesenc %xmm15,%xmm9,%xmm9
vpxor %xmm1,%xmm6,%xmm6
vpclmulqdq $0x01,%xmm3,%xmm8,%xmm1
vaesenc %xmm15,%xmm10,%xmm10
movbeq 40(%r14),%r13
vpxor %xmm2,%xmm7,%xmm7
vpclmulqdq $0x00,%xmm3,%xmm8,%xmm2
vaesenc %xmm15,%xmm11,%xmm11
movbeq 32(%r14),%r12
vpclmulqdq $0x11,%xmm3,%xmm8,%xmm8
vaesenc %xmm15,%xmm12,%xmm12
movq %r13,80+8(%rsp)
vaesenc %xmm15,%xmm13,%xmm13
movq %r12,88+8(%rsp)
vpxor %xmm5,%xmm6,%xmm6
vaesenc %xmm15,%xmm14,%xmm14
vpxor %xmm1,%xmm6,%xmm6
vmovups 112-128(%rcx),%xmm15
vpslldq $8,%xmm6,%xmm5
vpxor %xmm2,%xmm4,%xmm4
vmovdqu 16(%r11),%xmm3
vaesenc %xmm15,%xmm9,%xmm9
vpxor %xmm8,%xmm7,%xmm7
vaesenc %xmm15,%xmm10,%xmm10
vpxor %xmm5,%xmm4,%xmm4
movbeq 24(%r14),%r13
vaesenc %xmm15,%xmm11,%xmm11
movbeq 16(%r14),%r12
vpalignr $8,%xmm4,%xmm4,%xmm0
vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4
movq %r13,96+8(%rsp)
vaesenc %xmm15,%xmm12,%xmm12
movq %r12,104+8(%rsp)
vaesenc %xmm15,%xmm13,%xmm13
vmovups 128-128(%rcx),%xmm1
vaesenc %xmm15,%xmm14,%xmm14
vaesenc %xmm1,%xmm9,%xmm9
vmovups 144-128(%rcx),%xmm15
vaesenc %xmm1,%xmm10,%xmm10
vpsrldq $8,%xmm6,%xmm6
vaesenc %xmm1,%xmm11,%xmm11
vpxor %xmm6,%xmm7,%xmm7
vaesenc %xmm1,%xmm12,%xmm12
vpxor %xmm0,%xmm4,%xmm4
movbeq 8(%r14),%r13
vaesenc %xmm1,%xmm13,%xmm13
movbeq 0(%r14),%r12
vaesenc %xmm1,%xmm14,%xmm14
vmovups 160-128(%rcx),%xmm1
cmpl $11,%ebp
jb .Lenc_tail
vaesenc %xmm15,%xmm9,%xmm9
vaesenc %xmm15,%xmm10,%xmm10
vaesenc %xmm15,%xmm11,%xmm11
vaesenc %xmm15,%xmm12,%xmm12
vaesenc %xmm15,%xmm13,%xmm13
vaesenc %xmm15,%xmm14,%xmm14
vaesenc %xmm1,%xmm9,%xmm9
vaesenc %xmm1,%xmm10,%xmm10
vaesenc %xmm1,%xmm11,%xmm11
vaesenc %xmm1,%xmm12,%xmm12
vaesenc %xmm1,%xmm13,%xmm13
vmovups 176-128(%rcx),%xmm15
vaesenc %xmm1,%xmm14,%xmm14
vmovups 192-128(%rcx),%xmm1
je .Lenc_tail
vaesenc %xmm15,%xmm9,%xmm9
vaesenc %xmm15,%xmm10,%xmm10
vaesenc %xmm15,%xmm11,%xmm11
vaesenc %xmm15,%xmm12,%xmm12
vaesenc %xmm15,%xmm13,%xmm13
vaesenc %xmm15,%xmm14,%xmm14
vaesenc %xmm1,%xmm9,%xmm9
vaesenc %xmm1,%xmm10,%xmm10
vaesenc %xmm1,%xmm11,%xmm11
vaesenc %xmm1,%xmm12,%xmm12
vaesenc %xmm1,%xmm13,%xmm13
vmovups 208-128(%rcx),%xmm15
vaesenc %xmm1,%xmm14,%xmm14
vmovups 224-128(%rcx),%xmm1
jmp .Lenc_tail
.align 32
.Lhandle_ctr32:
vmovdqu (%r11),%xmm0
vpshufb %xmm0,%xmm1,%xmm6
vmovdqu 48(%r11),%xmm5
vpaddd 64(%r11),%xmm6,%xmm10
vpaddd %xmm5,%xmm6,%xmm11
vmovdqu 0-32(%r9),%xmm3
vpaddd %xmm5,%xmm10,%xmm12
vpshufb %xmm0,%xmm10,%xmm10
vpaddd %xmm5,%xmm11,%xmm13
vpshufb %xmm0,%xmm11,%xmm11
vpxor %xmm15,%xmm10,%xmm10
vpaddd %xmm5,%xmm12,%xmm14
vpshufb %xmm0,%xmm12,%xmm12
vpxor %xmm15,%xmm11,%xmm11
vpaddd %xmm5,%xmm13,%xmm1
vpshufb %xmm0,%xmm13,%xmm13
vpshufb %xmm0,%xmm14,%xmm14
vpshufb %xmm0,%xmm1,%xmm1
jmp .Lresume_ctr32
.align 32
.Lenc_tail:
vaesenc %xmm15,%xmm9,%xmm9
vmovdqu %xmm7,16+8(%rsp)
vpalignr $8,%xmm4,%xmm4,%xmm8
vaesenc %xmm15,%xmm10,%xmm10
vpclmulqdq $0x10,%xmm3,%xmm4,%xmm4
vpxor 0(%rdi),%xmm1,%xmm2
vaesenc %xmm15,%xmm11,%xmm11
vpxor 16(%rdi),%xmm1,%xmm0
vaesenc %xmm15,%xmm12,%xmm12
vpxor 32(%rdi),%xmm1,%xmm5
vaesenc %xmm15,%xmm13,%xmm13
vpxor 48(%rdi),%xmm1,%xmm6
vaesenc %xmm15,%xmm14,%xmm14
vpxor 64(%rdi),%xmm1,%xmm7
vpxor 80(%rdi),%xmm1,%xmm3
vmovdqu (%r8),%xmm1
vaesenclast %xmm2,%xmm9,%xmm9
vmovdqu 32(%r11),%xmm2
vaesenclast %xmm0,%xmm10,%xmm10
vpaddb %xmm2,%xmm1,%xmm0
movq %r13,112+8(%rsp)
leaq 96(%rdi),%rdi
vaesenclast %xmm5,%xmm11,%xmm11
vpaddb %xmm2,%xmm0,%xmm5
movq %r12,120+8(%rsp)
leaq 96(%rsi),%rsi
vmovdqu 0-128(%rcx),%xmm15
vaesenclast %xmm6,%xmm12,%xmm12
vpaddb %xmm2,%xmm5,%xmm6
vaesenclast %xmm7,%xmm13,%xmm13
vpaddb %xmm2,%xmm6,%xmm7
vaesenclast %xmm3,%xmm14,%xmm14
vpaddb %xmm2,%xmm7,%xmm3
addq $0x60,%r10
subq $0x6,%rdx
jc .L6x_done
vmovups %xmm9,-96(%rsi)
vpxor %xmm15,%xmm1,%xmm9
vmovups %xmm10,-80(%rsi)
vmovdqa %xmm0,%xmm10
vmovups %xmm11,-64(%rsi)
vmovdqa %xmm5,%xmm11
vmovups %xmm12,-48(%rsi)
vmovdqa %xmm6,%xmm12
vmovups %xmm13,-32(%rsi)
vmovdqa %xmm7,%xmm13
vmovups %xmm14,-16(%rsi)
vmovdqa %xmm3,%xmm14
vmovdqu 32+8(%rsp),%xmm7
jmp .Loop6x
.L6x_done:
vpxor 16+8(%rsp),%xmm8,%xmm8
vpxor %xmm4,%xmm8,%xmm8
.byte 0xf3,0xc3
.size _aesni_ctr32_ghash_6x,.-_aesni_ctr32_ghash_6x
.globl aesni_gcm_decrypt
.type aesni_gcm_decrypt,@function
.align 32
aesni_gcm_decrypt:
xorq %r10,%r10
cmpq $0x60,%rdx
jb .Lgcm_dec_abort
leaq (%rsp),%rax
pushq %rbx
pushq %rbp
pushq %r12
pushq %r13
pushq %r14
pushq %r15
vzeroupper
vmovdqu (%r8),%xmm1
addq $-128,%rsp
movl 12(%r8),%ebx
leaq .Lbswap_mask(%rip),%r11
leaq -128(%rcx),%r14
movq $0xf80,%r15
vmovdqu (%r9),%xmm8
andq $-128,%rsp
vmovdqu (%r11),%xmm0
leaq 128(%rcx),%rcx
leaq 32+32(%r9),%r9
movl 240-128(%rcx),%ebp
vpshufb %xmm0,%xmm8,%xmm8
andq %r15,%r14
andq %rsp,%r15
subq %r14,%r15
jc .Ldec_no_key_aliasing
cmpq $768,%r15
jnc .Ldec_no_key_aliasing
subq %r15,%rsp
.Ldec_no_key_aliasing:
vmovdqu 80(%rdi),%xmm7
leaq (%rdi),%r14
vmovdqu 64(%rdi),%xmm4
leaq -192(%rdi,%rdx,1),%r15
vmovdqu 48(%rdi),%xmm5
shrq $4,%rdx
xorq %r10,%r10
vmovdqu 32(%rdi),%xmm6
vpshufb %xmm0,%xmm7,%xmm7
vmovdqu 16(%rdi),%xmm2
vpshufb %xmm0,%xmm4,%xmm4
vmovdqu (%rdi),%xmm3
vpshufb %xmm0,%xmm5,%xmm5
vmovdqu %xmm4,48(%rsp)
vpshufb %xmm0,%xmm6,%xmm6
vmovdqu %xmm5,64(%rsp)
vpshufb %xmm0,%xmm2,%xmm2
vmovdqu %xmm6,80(%rsp)
vpshufb %xmm0,%xmm3,%xmm3
vmovdqu %xmm2,96(%rsp)
vmovdqu %xmm3,112(%rsp)
call _aesni_ctr32_ghash_6x
vmovups %xmm9,-96(%rsi)
vmovups %xmm10,-80(%rsi)
vmovups %xmm11,-64(%rsi)
vmovups %xmm12,-48(%rsi)
vmovups %xmm13,-32(%rsi)
vmovups %xmm14,-16(%rsi)
vpshufb (%r11),%xmm8,%xmm8
vmovdqu %xmm8,-64(%r9)
vzeroupper
movq -48(%rax),%r15
movq -40(%rax),%r14
movq -32(%rax),%r13
movq -24(%rax),%r12
movq -16(%rax),%rbp
movq -8(%rax),%rbx
leaq (%rax),%rsp
.Lgcm_dec_abort:
movq %r10,%rax
.byte 0xf3,0xc3
.size aesni_gcm_decrypt,.-aesni_gcm_decrypt
.type _aesni_ctr32_6x,@function
.align 32
_aesni_ctr32_6x:
vmovdqu 0-128(%rcx),%xmm4
vmovdqu 32(%r11),%xmm2
leaq -1(%rbp),%r13
vmovups 16-128(%rcx),%xmm15
leaq 32-128(%rcx),%r12
vpxor %xmm4,%xmm1,%xmm9
addl $100663296,%ebx
jc .Lhandle_ctr32_2
vpaddb %xmm2,%xmm1,%xmm10
vpaddb %xmm2,%xmm10,%xmm11
vpxor %xmm4,%xmm10,%xmm10
vpaddb %xmm2,%xmm11,%xmm12
vpxor %xmm4,%xmm11,%xmm11
vpaddb %xmm2,%xmm12,%xmm13
vpxor %xmm4,%xmm12,%xmm12
vpaddb %xmm2,%xmm13,%xmm14
vpxor %xmm4,%xmm13,%xmm13
vpaddb %xmm2,%xmm14,%xmm1
vpxor %xmm4,%xmm14,%xmm14
jmp .Loop_ctr32
.align 16
.Loop_ctr32:
vaesenc %xmm15,%xmm9,%xmm9
vaesenc %xmm15,%xmm10,%xmm10
vaesenc %xmm15,%xmm11,%xmm11
vaesenc %xmm15,%xmm12,%xmm12
vaesenc %xmm15,%xmm13,%xmm13
vaesenc %xmm15,%xmm14,%xmm14
vmovups (%r12),%xmm15
leaq 16(%r12),%r12
decl %r13d
jnz .Loop_ctr32
vmovdqu (%r12),%xmm3
vaesenc %xmm15,%xmm9,%xmm9
vpxor 0(%rdi),%xmm3,%xmm4
vaesenc %xmm15,%xmm10,%xmm10
vpxor 16(%rdi),%xmm3,%xmm5
vaesenc %xmm15,%xmm11,%xmm11
vpxor 32(%rdi),%xmm3,%xmm6
vaesenc %xmm15,%xmm12,%xmm12
vpxor 48(%rdi),%xmm3,%xmm8
vaesenc %xmm15,%xmm13,%xmm13
vpxor 64(%rdi),%xmm3,%xmm2
vaesenc %xmm15,%xmm14,%xmm14
vpxor 80(%rdi),%xmm3,%xmm3
leaq 96(%rdi),%rdi
vaesenclast %xmm4,%xmm9,%xmm9
vaesenclast %xmm5,%xmm10,%xmm10
vaesenclast %xmm6,%xmm11,%xmm11
vaesenclast %xmm8,%xmm12,%xmm12
vaesenclast %xmm2,%xmm13,%xmm13
vaesenclast %xmm3,%xmm14,%xmm14
vmovups %xmm9,0(%rsi)
vmovups %xmm10,16(%rsi)
vmovups %xmm11,32(%rsi)
vmovups %xmm12,48(%rsi)
vmovups %xmm13,64(%rsi)
vmovups %xmm14,80(%rsi)
leaq 96(%rsi),%rsi
.byte 0xf3,0xc3
.align 32
.Lhandle_ctr32_2:
vpshufb %xmm0,%xmm1,%xmm6
vmovdqu 48(%r11),%xmm5
vpaddd 64(%r11),%xmm6,%xmm10
vpaddd %xmm5,%xmm6,%xmm11
vpaddd %xmm5,%xmm10,%xmm12
vpshufb %xmm0,%xmm10,%xmm10
vpaddd %xmm5,%xmm11,%xmm13
vpshufb %xmm0,%xmm11,%xmm11
vpxor %xmm4,%xmm10,%xmm10
vpaddd %xmm5,%xmm12,%xmm14
vpshufb %xmm0,%xmm12,%xmm12
vpxor %xmm4,%xmm11,%xmm11
vpaddd %xmm5,%xmm13,%xmm1
vpshufb %xmm0,%xmm13,%xmm13
vpxor %xmm4,%xmm12,%xmm12
vpshufb %xmm0,%xmm14,%xmm14
vpxor %xmm4,%xmm13,%xmm13
vpshufb %xmm0,%xmm1,%xmm1
vpxor %xmm4,%xmm14,%xmm14
jmp .Loop_ctr32
.size _aesni_ctr32_6x,.-_aesni_ctr32_6x
.globl aesni_gcm_encrypt
.type aesni_gcm_encrypt,@function
.align 32
aesni_gcm_encrypt:
xorq %r10,%r10
cmpq $288,%rdx
jb .Lgcm_enc_abort
leaq (%rsp),%rax
pushq %rbx
pushq %rbp
pushq %r12
pushq %r13
pushq %r14
pushq %r15
vzeroupper
vmovdqu (%r8),%xmm1
addq $-128,%rsp
movl 12(%r8),%ebx
leaq .Lbswap_mask(%rip),%r11
leaq -128(%rcx),%r14
movq $0xf80,%r15
leaq 128(%rcx),%rcx
vmovdqu (%r11),%xmm0
andq $-128,%rsp
movl 240-128(%rcx),%ebp
andq %r15,%r14
andq %rsp,%r15
subq %r14,%r15
jc .Lenc_no_key_aliasing
cmpq $768,%r15
jnc .Lenc_no_key_aliasing
subq %r15,%rsp
.Lenc_no_key_aliasing:
leaq (%rsi),%r14
leaq -192(%rsi,%rdx,1),%r15
shrq $4,%rdx
call _aesni_ctr32_6x
vpshufb %xmm0,%xmm9,%xmm8
vpshufb %xmm0,%xmm10,%xmm2
vmovdqu %xmm8,112(%rsp)
vpshufb %xmm0,%xmm11,%xmm4
vmovdqu %xmm2,96(%rsp)
vpshufb %xmm0,%xmm12,%xmm5
vmovdqu %xmm4,80(%rsp)
vpshufb %xmm0,%xmm13,%xmm6
vmovdqu %xmm5,64(%rsp)
vpshufb %xmm0,%xmm14,%xmm7
vmovdqu %xmm6,48(%rsp)
call _aesni_ctr32_6x
vmovdqu (%r9),%xmm8
leaq 32+32(%r9),%r9
subq $12,%rdx
movq $192,%r10
vpshufb %xmm0,%xmm8,%xmm8
call _aesni_ctr32_ghash_6x
vmovdqu 32(%rsp),%xmm7
vmovdqu (%r11),%xmm0
vmovdqu 0-32(%r9),%xmm3
vpunpckhqdq %xmm7,%xmm7,%xmm1
vmovdqu 32-32(%r9),%xmm15
vmovups %xmm9,-96(%rsi)
vpshufb %xmm0,%xmm9,%xmm9
vpxor %xmm7,%xmm1,%xmm1
vmovups %xmm10,-80(%rsi)
vpshufb %xmm0,%xmm10,%xmm10
vmovups %xmm11,-64(%rsi)
vpshufb %xmm0,%xmm11,%xmm11
vmovups %xmm12,-48(%rsi)
vpshufb %xmm0,%xmm12,%xmm12
vmovups %xmm13,-32(%rsi)
vpshufb %xmm0,%xmm13,%xmm13
vmovups %xmm14,-16(%rsi)
vpshufb %xmm0,%xmm14,%xmm14
vmovdqu %xmm9,16(%rsp)
vmovdqu 48(%rsp),%xmm6
vmovdqu 16-32(%r9),%xmm0
vpunpckhqdq %xmm6,%xmm6,%xmm2
vpclmulqdq $0x00,%xmm3,%xmm7,%xmm5
vpxor %xmm6,%xmm2,%xmm2
vpclmulqdq $0x11,%xmm3,%xmm7,%xmm7
vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
vmovdqu 64(%rsp),%xmm9
vpclmulqdq $0x00,%xmm0,%xmm6,%xmm4
vmovdqu 48-32(%r9),%xmm3
vpxor %xmm5,%xmm4,%xmm4
vpunpckhqdq %xmm9,%xmm9,%xmm5
vpclmulqdq $0x11,%xmm0,%xmm6,%xmm6
vpxor %xmm9,%xmm5,%xmm5
vpxor %xmm7,%xmm6,%xmm6
vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
vmovdqu 80-32(%r9),%xmm15
vpxor %xmm1,%xmm2,%xmm2
vmovdqu 80(%rsp),%xmm1
vpclmulqdq $0x00,%xmm3,%xmm9,%xmm7
vmovdqu 64-32(%r9),%xmm0
vpxor %xmm4,%xmm7,%xmm7
vpunpckhqdq %xmm1,%xmm1,%xmm4
vpclmulqdq $0x11,%xmm3,%xmm9,%xmm9
vpxor %xmm1,%xmm4,%xmm4
vpxor %xmm6,%xmm9,%xmm9
vpclmulqdq $0x00,%xmm15,%xmm5,%xmm5
vpxor %xmm2,%xmm5,%xmm5
vmovdqu 96(%rsp),%xmm2
vpclmulqdq $0x00,%xmm0,%xmm1,%xmm6
vmovdqu 96-32(%r9),%xmm3
vpxor %xmm7,%xmm6,%xmm6
vpunpckhqdq %xmm2,%xmm2,%xmm7
vpclmulqdq $0x11,%xmm0,%xmm1,%xmm1
vpxor %xmm2,%xmm7,%xmm7
vpxor %xmm9,%xmm1,%xmm1
vpclmulqdq $0x10,%xmm15,%xmm4,%xmm4
vmovdqu 128-32(%r9),%xmm15
vpxor %xmm5,%xmm4,%xmm4
vpxor 112(%rsp),%xmm8,%xmm8
vpclmulqdq $0x00,%xmm3,%xmm2,%xmm5
vmovdqu 112-32(%r9),%xmm0
vpunpckhqdq %xmm8,%xmm8,%xmm9
vpxor %xmm6,%xmm5,%xmm5
vpclmulqdq $0x11,%xmm3,%xmm2,%xmm2
vpxor %xmm8,%xmm9,%xmm9
vpxor %xmm1,%xmm2,%xmm2
vpclmulqdq $0x00,%xmm15,%xmm7,%xmm7
vpxor %xmm4,%xmm7,%xmm4
vpclmulqdq $0x00,%xmm0,%xmm8,%xmm6
vmovdqu 0-32(%r9),%xmm3
vpunpckhqdq %xmm14,%xmm14,%xmm1
vpclmulqdq $0x11,%xmm0,%xmm8,%xmm8
vpxor %xmm14,%xmm1,%xmm1
vpxor %xmm5,%xmm6,%xmm5
vpclmulqdq $0x10,%xmm15,%xmm9,%xmm9
vmovdqu 32-32(%r9),%xmm15
vpxor %xmm2,%xmm8,%xmm7
vpxor %xmm4,%xmm9,%xmm6
vmovdqu 16-32(%r9),%xmm0
vpxor %xmm5,%xmm7,%xmm9
vpclmulqdq $0x00,%xmm3,%xmm14,%xmm4
vpxor %xmm9,%xmm6,%xmm6
vpunpckhqdq %xmm13,%xmm13,%xmm2
vpclmulqdq $0x11,%xmm3,%xmm14,%xmm14
vpxor %xmm13,%xmm2,%xmm2
vpslldq $8,%xmm6,%xmm9
vpclmulqdq $0x00,%xmm15,%xmm1,%xmm1
vpxor %xmm9,%xmm5,%xmm8
vpsrldq $8,%xmm6,%xmm6
vpxor %xmm6,%xmm7,%xmm7
vpclmulqdq $0x00,%xmm0,%xmm13,%xmm5
vmovdqu 48-32(%r9),%xmm3
vpxor %xmm4,%xmm5,%xmm5
vpunpckhqdq %xmm12,%xmm12,%xmm9
vpclmulqdq $0x11,%xmm0,%xmm13,%xmm13
vpxor %xmm12,%xmm9,%xmm9
vpxor %xmm14,%xmm13,%xmm13
vpalignr $8,%xmm8,%xmm8,%xmm14
vpclmulqdq $0x10,%xmm15,%xmm2,%xmm2
vmovdqu 80-32(%r9),%xmm15
vpxor %xmm1,%xmm2,%xmm2
vpclmulqdq $0x00,%xmm3,%xmm12,%xmm4
vmovdqu 64-32(%r9),%xmm0
vpxor %xmm5,%xmm4,%xmm4
vpunpckhqdq %xmm11,%xmm11,%xmm1
vpclmulqdq $0x11,%xmm3,%xmm12,%xmm12
vpxor %xmm11,%xmm1,%xmm1
vpxor %xmm13,%xmm12,%xmm12
vxorps 16(%rsp),%xmm7,%xmm7
vpclmulqdq $0x00,%xmm15,%xmm9,%xmm9
vpxor %xmm2,%xmm9,%xmm9
vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
vxorps %xmm14,%xmm8,%xmm8
vpclmulqdq $0x00,%xmm0,%xmm11,%xmm5
vmovdqu 96-32(%r9),%xmm3
vpxor %xmm4,%xmm5,%xmm5
vpunpckhqdq %xmm10,%xmm10,%xmm2
vpclmulqdq $0x11,%xmm0,%xmm11,%xmm11
vpxor %xmm10,%xmm2,%xmm2
vpalignr $8,%xmm8,%xmm8,%xmm14
vpxor %xmm12,%xmm11,%xmm11
vpclmulqdq $0x10,%xmm15,%xmm1,%xmm1
vmovdqu 128-32(%r9),%xmm15
vpxor %xmm9,%xmm1,%xmm1
vxorps %xmm7,%xmm14,%xmm14
vpclmulqdq $0x10,16(%r11),%xmm8,%xmm8
vxorps %xmm14,%xmm8,%xmm8
vpclmulqdq $0x00,%xmm3,%xmm10,%xmm4
vmovdqu 112-32(%r9),%xmm0
vpxor %xmm5,%xmm4,%xmm4
vpunpckhqdq %xmm8,%xmm8,%xmm9
vpclmulqdq $0x11,%xmm3,%xmm10,%xmm10
vpxor %xmm8,%xmm9,%xmm9
vpxor %xmm11,%xmm10,%xmm10
vpclmulqdq $0x00,%xmm15,%xmm2,%xmm2
vpxor %xmm1,%xmm2,%xmm2
vpclmulqdq $0x00,%xmm0,%xmm8,%xmm5
vpclmulqdq $0x11,%xmm0,%xmm8,%xmm7
vpxor %xmm4,%xmm5,%xmm5
vpclmulqdq $0x10,%xmm15,%xmm9,%xmm6
vpxor %xmm10,%xmm7,%xmm7
vpxor %xmm2,%xmm6,%xmm6
vpxor %xmm5,%xmm7,%xmm4
vpxor %xmm4,%xmm6,%xmm6
vpslldq $8,%xmm6,%xmm1
vmovdqu 16(%r11),%xmm3
vpsrldq $8,%xmm6,%xmm6
vpxor %xmm1,%xmm5,%xmm8
vpxor %xmm6,%xmm7,%xmm7
vpalignr $8,%xmm8,%xmm8,%xmm2
vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
vpxor %xmm2,%xmm8,%xmm8
vpalignr $8,%xmm8,%xmm8,%xmm2
vpclmulqdq $0x10,%xmm3,%xmm8,%xmm8
vpxor %xmm7,%xmm2,%xmm2
vpxor %xmm2,%xmm8,%xmm8
vpshufb (%r11),%xmm8,%xmm8
vmovdqu %xmm8,-64(%r9)
vzeroupper
movq -48(%rax),%r15
movq -40(%rax),%r14
movq -32(%rax),%r13
movq -24(%rax),%r12
movq -16(%rax),%rbp
movq -8(%rax),%rbx
leaq (%rax),%rsp
.Lgcm_enc_abort:
movq %r10,%rax
.byte 0xf3,0xc3
.size aesni_gcm_encrypt,.-aesni_gcm_encrypt
.align 64
.Lbswap_mask:
.byte 15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0
.Lpoly:
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0xc2
.Lone_msb:
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1
.Ltwo_lsb:
.byte 2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
.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
.align 64
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
@@ -0,0 +1,615 @@
.text
.globl RC4
.type RC4,@function
.align 16
RC4: orq %rsi,%rsi
jne .Lentry
.byte 0xf3,0xc3
.Lentry:
pushq %rbx
pushq %r12
pushq %r13
.Lprologue:
movq %rsi,%r11
movq %rdx,%r12
movq %rcx,%r13
xorq %r10,%r10
xorq %rcx,%rcx
leaq 8(%rdi),%rdi
movb -8(%rdi),%r10b
movb -4(%rdi),%cl
cmpl $-1,256(%rdi)
je .LRC4_CHAR
movl OPENSSL_ia32cap_P(%rip),%r8d
xorq %rbx,%rbx
incb %r10b
subq %r10,%rbx
subq %r12,%r13
movl (%rdi,%r10,4),%eax
testq $-16,%r11
jz .Lloop1
btl $30,%r8d
jc .Lintel
andq $7,%rbx
leaq 1(%r10),%rsi
jz .Loop8
subq %rbx,%r11
.Loop8_warmup:
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl %edx,(%rdi,%r10,4)
addb %dl,%al
incb %r10b
movl (%rdi,%rax,4),%edx
movl (%rdi,%r10,4),%eax
xorb (%r12),%dl
movb %dl,(%r12,%r13,1)
leaq 1(%r12),%r12
decq %rbx
jnz .Loop8_warmup
leaq 1(%r10),%rsi
jmp .Loop8
.align 16
.Loop8:
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl 0(%rdi,%rsi,4),%ebx
rorq $8,%r8
movl %edx,0(%rdi,%r10,4)
addb %al,%dl
movb (%rdi,%rdx,4),%r8b
addb %bl,%cl
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
movl 4(%rdi,%rsi,4),%eax
rorq $8,%r8
movl %edx,4(%rdi,%r10,4)
addb %bl,%dl
movb (%rdi,%rdx,4),%r8b
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl 8(%rdi,%rsi,4),%ebx
rorq $8,%r8
movl %edx,8(%rdi,%r10,4)
addb %al,%dl
movb (%rdi,%rdx,4),%r8b
addb %bl,%cl
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
movl 12(%rdi,%rsi,4),%eax
rorq $8,%r8
movl %edx,12(%rdi,%r10,4)
addb %bl,%dl
movb (%rdi,%rdx,4),%r8b
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl 16(%rdi,%rsi,4),%ebx
rorq $8,%r8
movl %edx,16(%rdi,%r10,4)
addb %al,%dl
movb (%rdi,%rdx,4),%r8b
addb %bl,%cl
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
movl 20(%rdi,%rsi,4),%eax
rorq $8,%r8
movl %edx,20(%rdi,%r10,4)
addb %bl,%dl
movb (%rdi,%rdx,4),%r8b
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl 24(%rdi,%rsi,4),%ebx
rorq $8,%r8
movl %edx,24(%rdi,%r10,4)
addb %al,%dl
movb (%rdi,%rdx,4),%r8b
addb $8,%sil
addb %bl,%cl
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
movl -4(%rdi,%rsi,4),%eax
rorq $8,%r8
movl %edx,28(%rdi,%r10,4)
addb %bl,%dl
movb (%rdi,%rdx,4),%r8b
addb $8,%r10b
rorq $8,%r8
subq $8,%r11
xorq (%r12),%r8
movq %r8,(%r12,%r13,1)
leaq 8(%r12),%r12
testq $-8,%r11
jnz .Loop8
cmpq $0,%r11
jne .Lloop1
jmp .Lexit
.align 16
.Lintel:
testq $-32,%r11
jz .Lloop1
andq $15,%rbx
jz .Loop16_is_hot
subq %rbx,%r11
.Loop16_warmup:
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl %edx,(%rdi,%r10,4)
addb %dl,%al
incb %r10b
movl (%rdi,%rax,4),%edx
movl (%rdi,%r10,4),%eax
xorb (%r12),%dl
movb %dl,(%r12,%r13,1)
leaq 1(%r12),%r12
decq %rbx
jnz .Loop16_warmup
movq %rcx,%rbx
xorq %rcx,%rcx
movb %bl,%cl
.Loop16_is_hot:
leaq (%rdi,%r10,4),%rsi
addb %al,%cl
movl (%rdi,%rcx,4),%edx
pxor %xmm0,%xmm0
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 4(%rsi),%ebx
movzbl %al,%eax
movl %edx,0(%rsi)
addb %bl,%cl
pinsrw $0,(%rdi,%rax,4),%xmm0
jmp .Loop16_enter
.align 16
.Loop16:
addb %al,%cl
movl (%rdi,%rcx,4),%edx
pxor %xmm0,%xmm2
psllq $8,%xmm1
pxor %xmm0,%xmm0
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 4(%rsi),%ebx
movzbl %al,%eax
movl %edx,0(%rsi)
pxor %xmm1,%xmm2
addb %bl,%cl
pinsrw $0,(%rdi,%rax,4),%xmm0
movdqu %xmm2,(%r12,%r13,1)
leaq 16(%r12),%r12
.Loop16_enter:
movl (%rdi,%rcx,4),%edx
pxor %xmm1,%xmm1
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 8(%rsi),%eax
movzbl %bl,%ebx
movl %edx,4(%rsi)
addb %al,%cl
pinsrw $0,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 12(%rsi),%ebx
movzbl %al,%eax
movl %edx,8(%rsi)
addb %bl,%cl
pinsrw $1,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 16(%rsi),%eax
movzbl %bl,%ebx
movl %edx,12(%rsi)
addb %al,%cl
pinsrw $1,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 20(%rsi),%ebx
movzbl %al,%eax
movl %edx,16(%rsi)
addb %bl,%cl
pinsrw $2,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 24(%rsi),%eax
movzbl %bl,%ebx
movl %edx,20(%rsi)
addb %al,%cl
pinsrw $2,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 28(%rsi),%ebx
movzbl %al,%eax
movl %edx,24(%rsi)
addb %bl,%cl
pinsrw $3,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 32(%rsi),%eax
movzbl %bl,%ebx
movl %edx,28(%rsi)
addb %al,%cl
pinsrw $3,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 36(%rsi),%ebx
movzbl %al,%eax
movl %edx,32(%rsi)
addb %bl,%cl
pinsrw $4,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 40(%rsi),%eax
movzbl %bl,%ebx
movl %edx,36(%rsi)
addb %al,%cl
pinsrw $4,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 44(%rsi),%ebx
movzbl %al,%eax
movl %edx,40(%rsi)
addb %bl,%cl
pinsrw $5,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 48(%rsi),%eax
movzbl %bl,%ebx
movl %edx,44(%rsi)
addb %al,%cl
pinsrw $5,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 52(%rsi),%ebx
movzbl %al,%eax
movl %edx,48(%rsi)
addb %bl,%cl
pinsrw $6,(%rdi,%rax,4),%xmm0
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movl 56(%rsi),%eax
movzbl %bl,%ebx
movl %edx,52(%rsi)
addb %al,%cl
pinsrw $6,(%rdi,%rbx,4),%xmm1
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
addb %dl,%al
movl 60(%rsi),%ebx
movzbl %al,%eax
movl %edx,56(%rsi)
addb %bl,%cl
pinsrw $7,(%rdi,%rax,4),%xmm0
addb $16,%r10b
movdqu (%r12),%xmm2
movl (%rdi,%rcx,4),%edx
movl %ebx,(%rdi,%rcx,4)
addb %dl,%bl
movzbl %bl,%ebx
movl %edx,60(%rsi)
leaq (%rdi,%r10,4),%rsi
pinsrw $7,(%rdi,%rbx,4),%xmm1
movl (%rsi),%eax
movq %rcx,%rbx
xorq %rcx,%rcx
subq $16,%r11
movb %bl,%cl
testq $-16,%r11
jnz .Loop16
psllq $8,%xmm1
pxor %xmm0,%xmm2
pxor %xmm1,%xmm2
movdqu %xmm2,(%r12,%r13,1)
leaq 16(%r12),%r12
cmpq $0,%r11
jne .Lloop1
jmp .Lexit
.align 16
.Lloop1:
addb %al,%cl
movl (%rdi,%rcx,4),%edx
movl %eax,(%rdi,%rcx,4)
movl %edx,(%rdi,%r10,4)
addb %dl,%al
incb %r10b
movl (%rdi,%rax,4),%edx
movl (%rdi,%r10,4),%eax
xorb (%r12),%dl
movb %dl,(%r12,%r13,1)
leaq 1(%r12),%r12
decq %r11
jnz .Lloop1
jmp .Lexit
.align 16
.LRC4_CHAR:
addb $1,%r10b
movzbl (%rdi,%r10,1),%eax
testq $-8,%r11
jz .Lcloop1
jmp .Lcloop8
.align 16
.Lcloop8:
movl (%r12),%r8d
movl 4(%r12),%r9d
addb %al,%cl
leaq 1(%r10),%rsi
movzbl (%rdi,%rcx,1),%edx
movzbl %sil,%esi
movzbl (%rdi,%rsi,1),%ebx
movb %al,(%rdi,%rcx,1)
cmpq %rsi,%rcx
movb %dl,(%rdi,%r10,1)
jne .Lcmov0
movq %rax,%rbx
.Lcmov0:
addb %al,%dl
xorb (%rdi,%rdx,1),%r8b
rorl $8,%r8d
addb %bl,%cl
leaq 1(%rsi),%r10
movzbl (%rdi,%rcx,1),%edx
movzbl %r10b,%r10d
movzbl (%rdi,%r10,1),%eax
movb %bl,(%rdi,%rcx,1)
cmpq %r10,%rcx
movb %dl,(%rdi,%rsi,1)
jne .Lcmov1
movq %rbx,%rax
.Lcmov1:
addb %bl,%dl
xorb (%rdi,%rdx,1),%r8b
rorl $8,%r8d
addb %al,%cl
leaq 1(%r10),%rsi
movzbl (%rdi,%rcx,1),%edx
movzbl %sil,%esi
movzbl (%rdi,%rsi,1),%ebx
movb %al,(%rdi,%rcx,1)
cmpq %rsi,%rcx
movb %dl,(%rdi,%r10,1)
jne .Lcmov2
movq %rax,%rbx
.Lcmov2:
addb %al,%dl
xorb (%rdi,%rdx,1),%r8b
rorl $8,%r8d
addb %bl,%cl
leaq 1(%rsi),%r10
movzbl (%rdi,%rcx,1),%edx
movzbl %r10b,%r10d
movzbl (%rdi,%r10,1),%eax
movb %bl,(%rdi,%rcx,1)
cmpq %r10,%rcx
movb %dl,(%rdi,%rsi,1)
jne .Lcmov3
movq %rbx,%rax
.Lcmov3:
addb %bl,%dl
xorb (%rdi,%rdx,1),%r8b
rorl $8,%r8d
addb %al,%cl
leaq 1(%r10),%rsi
movzbl (%rdi,%rcx,1),%edx
movzbl %sil,%esi
movzbl (%rdi,%rsi,1),%ebx
movb %al,(%rdi,%rcx,1)
cmpq %rsi,%rcx
movb %dl,(%rdi,%r10,1)
jne .Lcmov4
movq %rax,%rbx
.Lcmov4:
addb %al,%dl
xorb (%rdi,%rdx,1),%r9b
rorl $8,%r9d
addb %bl,%cl
leaq 1(%rsi),%r10
movzbl (%rdi,%rcx,1),%edx
movzbl %r10b,%r10d
movzbl (%rdi,%r10,1),%eax
movb %bl,(%rdi,%rcx,1)
cmpq %r10,%rcx
movb %dl,(%rdi,%rsi,1)
jne .Lcmov5
movq %rbx,%rax
.Lcmov5:
addb %bl,%dl
xorb (%rdi,%rdx,1),%r9b
rorl $8,%r9d
addb %al,%cl
leaq 1(%r10),%rsi
movzbl (%rdi,%rcx,1),%edx
movzbl %sil,%esi
movzbl (%rdi,%rsi,1),%ebx
movb %al,(%rdi,%rcx,1)
cmpq %rsi,%rcx
movb %dl,(%rdi,%r10,1)
jne .Lcmov6
movq %rax,%rbx
.Lcmov6:
addb %al,%dl
xorb (%rdi,%rdx,1),%r9b
rorl $8,%r9d
addb %bl,%cl
leaq 1(%rsi),%r10
movzbl (%rdi,%rcx,1),%edx
movzbl %r10b,%r10d
movzbl (%rdi,%r10,1),%eax
movb %bl,(%rdi,%rcx,1)
cmpq %r10,%rcx
movb %dl,(%rdi,%rsi,1)
jne .Lcmov7
movq %rbx,%rax
.Lcmov7:
addb %bl,%dl
xorb (%rdi,%rdx,1),%r9b
rorl $8,%r9d
leaq -8(%r11),%r11
movl %r8d,(%r13)
leaq 8(%r12),%r12
movl %r9d,4(%r13)
leaq 8(%r13),%r13
testq $-8,%r11
jnz .Lcloop8
cmpq $0,%r11
jne .Lcloop1
jmp .Lexit
.align 16
.Lcloop1:
addb %al,%cl
movzbl %cl,%ecx
movzbl (%rdi,%rcx,1),%edx
movb %al,(%rdi,%rcx,1)
movb %dl,(%rdi,%r10,1)
addb %al,%dl
addb $1,%r10b
movzbl %dl,%edx
movzbl %r10b,%r10d
movzbl (%rdi,%rdx,1),%edx
movzbl (%rdi,%r10,1),%eax
xorb (%r12),%dl
leaq 1(%r12),%r12
movb %dl,(%r13)
leaq 1(%r13),%r13
subq $1,%r11
jnz .Lcloop1
jmp .Lexit
.align 16
.Lexit:
subb $1,%r10b
movl %r10d,-8(%rdi)
movl %ecx,-4(%rdi)
movq (%rsp),%r13
movq 8(%rsp),%r12
movq 16(%rsp),%rbx
addq $24,%rsp
.Lepilogue:
.byte 0xf3,0xc3
.size RC4,.-RC4
.globl RC4_set_key
.type RC4_set_key,@function
.align 16
RC4_set_key:
leaq 8(%rdi),%rdi
leaq (%rdx,%rsi,1),%rdx
negq %rsi
movq %rsi,%rcx
xorl %eax,%eax
xorq %r9,%r9
xorq %r10,%r10
xorq %r11,%r11
movl OPENSSL_ia32cap_P(%rip),%r8d
btl $20,%r8d
jc .Lc1stloop
jmp .Lw1stloop
.align 16
.Lw1stloop:
movl %eax,(%rdi,%rax,4)
addb $1,%al
jnc .Lw1stloop
xorq %r9,%r9
xorq %r8,%r8
.align 16
.Lw2ndloop:
movl (%rdi,%r9,4),%r10d
addb (%rdx,%rsi,1),%r8b
addb %r10b,%r8b
addq $1,%rsi
movl (%rdi,%r8,4),%r11d
cmovzq %rcx,%rsi
movl %r10d,(%rdi,%r8,4)
movl %r11d,(%rdi,%r9,4)
addb $1,%r9b
jnc .Lw2ndloop
jmp .Lexit_key
.align 16
.Lc1stloop:
movb %al,(%rdi,%rax,1)
addb $1,%al
jnc .Lc1stloop
xorq %r9,%r9
xorq %r8,%r8
.align 16
.Lc2ndloop:
movb (%rdi,%r9,1),%r10b
addb (%rdx,%rsi,1),%r8b
addb %r10b,%r8b
addq $1,%rsi
movb (%rdi,%r8,1),%r11b
jnz .Lcnowrap
movq %rcx,%rsi
.Lcnowrap:
movb %r10b,(%rdi,%r8,1)
movb %r11b,(%rdi,%r9,1)
addb $1,%r9b
jnc .Lc2ndloop
movl $-1,256(%rdi)
.align 16
.Lexit_key:
xorl %eax,%eax
movl %eax,-8(%rdi)
movl %eax,-4(%rdi)
.byte 0xf3,0xc3
.size RC4_set_key,.-RC4_set_key
.globl RC4_options
.type RC4_options,@function
.align 16
RC4_options:
leaq .Lopts(%rip),%rax
movl OPENSSL_ia32cap_P(%rip),%edx
btl $20,%edx
jc .L8xchar
btl $30,%edx
jnc .Ldone
addq $25,%rax
.byte 0xf3,0xc3
.L8xchar:
addq $12,%rax
.Ldone:
.byte 0xf3,0xc3
.align 64
.Lopts:
.byte 114,99,52,40,56,120,44,105,110,116,41,0
.byte 114,99,52,40,56,120,44,99,104,97,114,41,0
.byte 114,99,52,40,49,54,120,44,105,110,116,41,0
.byte 82,67,52,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
.size RC4_options,.-RC4_options
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
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,861 @@
.text
.globl whirlpool_block
.type whirlpool_block,@function
.align 16
whirlpool_block:
pushq %rbx
pushq %rbp
pushq %r12
pushq %r13
pushq %r14
pushq %r15
movq %rsp,%r11
subq $128+40,%rsp
andq $-64,%rsp
leaq 128(%rsp),%r10
movq %rdi,0(%r10)
movq %rsi,8(%r10)
movq %rdx,16(%r10)
movq %r11,32(%r10)
.Lprologue:
movq %r10,%rbx
leaq .Ltable(%rip),%rbp
xorq %rcx,%rcx
xorq %rdx,%rdx
movq 0(%rdi),%r8
movq 8(%rdi),%r9
movq 16(%rdi),%r10
movq 24(%rdi),%r11
movq 32(%rdi),%r12
movq 40(%rdi),%r13
movq 48(%rdi),%r14
movq 56(%rdi),%r15
.Louterloop:
movq %r8,0(%rsp)
movq %r9,8(%rsp)
movq %r10,16(%rsp)
movq %r11,24(%rsp)
movq %r12,32(%rsp)
movq %r13,40(%rsp)
movq %r14,48(%rsp)
movq %r15,56(%rsp)
xorq 0(%rsi),%r8
xorq 8(%rsi),%r9
xorq 16(%rsi),%r10
xorq 24(%rsi),%r11
xorq 32(%rsi),%r12
xorq 40(%rsi),%r13
xorq 48(%rsi),%r14
xorq 56(%rsi),%r15
movq %r8,64+0(%rsp)
movq %r9,64+8(%rsp)
movq %r10,64+16(%rsp)
movq %r11,64+24(%rsp)
movq %r12,64+32(%rsp)
movq %r13,64+40(%rsp)
movq %r14,64+48(%rsp)
movq %r15,64+56(%rsp)
xorq %rsi,%rsi
movq %rsi,24(%rbx)
jmp .Lround
.align 16
.Lround:
movq 4096(%rbp,%rsi,8),%r8
movl 0(%rsp),%eax
movl 4(%rsp),%ebx
movzbl %al,%ecx
movzbl %ah,%edx
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r8
movq 7(%rbp,%rdi,8),%r9
movl 0+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
movq 6(%rbp,%rsi,8),%r10
movq 5(%rbp,%rdi,8),%r11
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
movq 4(%rbp,%rsi,8),%r12
movq 3(%rbp,%rdi,8),%r13
movl 0+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
movq 2(%rbp,%rsi,8),%r14
movq 1(%rbp,%rdi,8),%r15
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r9
xorq 7(%rbp,%rdi,8),%r10
movl 8+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r11
xorq 5(%rbp,%rdi,8),%r12
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r13
xorq 3(%rbp,%rdi,8),%r14
movl 8+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r15
xorq 1(%rbp,%rdi,8),%r8
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r10
xorq 7(%rbp,%rdi,8),%r11
movl 16+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r12
xorq 5(%rbp,%rdi,8),%r13
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r14
xorq 3(%rbp,%rdi,8),%r15
movl 16+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r8
xorq 1(%rbp,%rdi,8),%r9
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r11
xorq 7(%rbp,%rdi,8),%r12
movl 24+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r13
xorq 5(%rbp,%rdi,8),%r14
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r15
xorq 3(%rbp,%rdi,8),%r8
movl 24+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r9
xorq 1(%rbp,%rdi,8),%r10
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r12
xorq 7(%rbp,%rdi,8),%r13
movl 32+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r14
xorq 5(%rbp,%rdi,8),%r15
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r8
xorq 3(%rbp,%rdi,8),%r9
movl 32+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r10
xorq 1(%rbp,%rdi,8),%r11
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r13
xorq 7(%rbp,%rdi,8),%r14
movl 40+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r15
xorq 5(%rbp,%rdi,8),%r8
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r9
xorq 3(%rbp,%rdi,8),%r10
movl 40+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r11
xorq 1(%rbp,%rdi,8),%r12
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r14
xorq 7(%rbp,%rdi,8),%r15
movl 48+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r8
xorq 5(%rbp,%rdi,8),%r9
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r10
xorq 3(%rbp,%rdi,8),%r11
movl 48+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r12
xorq 1(%rbp,%rdi,8),%r13
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r15
xorq 7(%rbp,%rdi,8),%r8
movl 56+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r9
xorq 5(%rbp,%rdi,8),%r10
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r11
xorq 3(%rbp,%rdi,8),%r12
movl 56+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r13
xorq 1(%rbp,%rdi,8),%r14
movq %r8,0(%rsp)
movq %r9,8(%rsp)
movq %r10,16(%rsp)
movq %r11,24(%rsp)
movq %r12,32(%rsp)
movq %r13,40(%rsp)
movq %r14,48(%rsp)
movq %r15,56(%rsp)
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r8
xorq 7(%rbp,%rdi,8),%r9
movl 64+0+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r10
xorq 5(%rbp,%rdi,8),%r11
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r12
xorq 3(%rbp,%rdi,8),%r13
movl 64+0+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r14
xorq 1(%rbp,%rdi,8),%r15
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r9
xorq 7(%rbp,%rdi,8),%r10
movl 64+8+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r11
xorq 5(%rbp,%rdi,8),%r12
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r13
xorq 3(%rbp,%rdi,8),%r14
movl 64+8+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r15
xorq 1(%rbp,%rdi,8),%r8
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r10
xorq 7(%rbp,%rdi,8),%r11
movl 64+16+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r12
xorq 5(%rbp,%rdi,8),%r13
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r14
xorq 3(%rbp,%rdi,8),%r15
movl 64+16+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r8
xorq 1(%rbp,%rdi,8),%r9
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r11
xorq 7(%rbp,%rdi,8),%r12
movl 64+24+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r13
xorq 5(%rbp,%rdi,8),%r14
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r15
xorq 3(%rbp,%rdi,8),%r8
movl 64+24+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r9
xorq 1(%rbp,%rdi,8),%r10
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r12
xorq 7(%rbp,%rdi,8),%r13
movl 64+32+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r14
xorq 5(%rbp,%rdi,8),%r15
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r8
xorq 3(%rbp,%rdi,8),%r9
movl 64+32+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r10
xorq 1(%rbp,%rdi,8),%r11
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r13
xorq 7(%rbp,%rdi,8),%r14
movl 64+40+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r15
xorq 5(%rbp,%rdi,8),%r8
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r9
xorq 3(%rbp,%rdi,8),%r10
movl 64+40+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r11
xorq 1(%rbp,%rdi,8),%r12
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r14
xorq 7(%rbp,%rdi,8),%r15
movl 64+48+8(%rsp),%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r8
xorq 5(%rbp,%rdi,8),%r9
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r10
xorq 3(%rbp,%rdi,8),%r11
movl 64+48+8+4(%rsp),%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r12
xorq 1(%rbp,%rdi,8),%r13
shrl $16,%eax
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 0(%rbp,%rsi,8),%r15
xorq 7(%rbp,%rdi,8),%r8
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 6(%rbp,%rsi,8),%r9
xorq 5(%rbp,%rdi,8),%r10
shrl $16,%ebx
leaq (%rcx,%rcx,1),%rsi
movzbl %bl,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %bh,%edx
xorq 4(%rbp,%rsi,8),%r11
xorq 3(%rbp,%rdi,8),%r12
leaq (%rcx,%rcx,1),%rsi
movzbl %al,%ecx
leaq (%rdx,%rdx,1),%rdi
movzbl %ah,%edx
xorq 2(%rbp,%rsi,8),%r13
xorq 1(%rbp,%rdi,8),%r14
leaq 128(%rsp),%rbx
movq 24(%rbx),%rsi
addq $1,%rsi
cmpq $10,%rsi
je .Lroundsdone
movq %rsi,24(%rbx)
movq %r8,64+0(%rsp)
movq %r9,64+8(%rsp)
movq %r10,64+16(%rsp)
movq %r11,64+24(%rsp)
movq %r12,64+32(%rsp)
movq %r13,64+40(%rsp)
movq %r14,64+48(%rsp)
movq %r15,64+56(%rsp)
jmp .Lround
.align 16
.Lroundsdone:
movq 0(%rbx),%rdi
movq 8(%rbx),%rsi
movq 16(%rbx),%rax
xorq 0(%rsi),%r8
xorq 8(%rsi),%r9
xorq 16(%rsi),%r10
xorq 24(%rsi),%r11
xorq 32(%rsi),%r12
xorq 40(%rsi),%r13
xorq 48(%rsi),%r14
xorq 56(%rsi),%r15
xorq 0(%rdi),%r8
xorq 8(%rdi),%r9
xorq 16(%rdi),%r10
xorq 24(%rdi),%r11
xorq 32(%rdi),%r12
xorq 40(%rdi),%r13
xorq 48(%rdi),%r14
xorq 56(%rdi),%r15
movq %r8,0(%rdi)
movq %r9,8(%rdi)
movq %r10,16(%rdi)
movq %r11,24(%rdi)
movq %r12,32(%rdi)
movq %r13,40(%rdi)
movq %r14,48(%rdi)
movq %r15,56(%rdi)
leaq 64(%rsi),%rsi
subq $1,%rax
jz .Lalldone
movq %rsi,8(%rbx)
movq %rax,16(%rbx)
jmp .Louterloop
.Lalldone:
movq 32(%rbx),%rsi
movq (%rsi),%r15
movq 8(%rsi),%r14
movq 16(%rsi),%r13
movq 24(%rsi),%r12
movq 32(%rsi),%rbp
movq 40(%rsi),%rbx
leaq 48(%rsi),%rsp
.Lepilogue:
.byte 0xf3,0xc3
.size whirlpool_block,.-whirlpool_block
.align 64
.type .Ltable,@object
.Ltable:
.byte 24,24,96,24,192,120,48,216,24,24,96,24,192,120,48,216
.byte 35,35,140,35,5,175,70,38,35,35,140,35,5,175,70,38
.byte 198,198,63,198,126,249,145,184,198,198,63,198,126,249,145,184
.byte 232,232,135,232,19,111,205,251,232,232,135,232,19,111,205,251
.byte 135,135,38,135,76,161,19,203,135,135,38,135,76,161,19,203
.byte 184,184,218,184,169,98,109,17,184,184,218,184,169,98,109,17
.byte 1,1,4,1,8,5,2,9,1,1,4,1,8,5,2,9
.byte 79,79,33,79,66,110,158,13,79,79,33,79,66,110,158,13
.byte 54,54,216,54,173,238,108,155,54,54,216,54,173,238,108,155
.byte 166,166,162,166,89,4,81,255,166,166,162,166,89,4,81,255
.byte 210,210,111,210,222,189,185,12,210,210,111,210,222,189,185,12
.byte 245,245,243,245,251,6,247,14,245,245,243,245,251,6,247,14
.byte 121,121,249,121,239,128,242,150,121,121,249,121,239,128,242,150
.byte 111,111,161,111,95,206,222,48,111,111,161,111,95,206,222,48
.byte 145,145,126,145,252,239,63,109,145,145,126,145,252,239,63,109
.byte 82,82,85,82,170,7,164,248,82,82,85,82,170,7,164,248
.byte 96,96,157,96,39,253,192,71,96,96,157,96,39,253,192,71
.byte 188,188,202,188,137,118,101,53,188,188,202,188,137,118,101,53
.byte 155,155,86,155,172,205,43,55,155,155,86,155,172,205,43,55
.byte 142,142,2,142,4,140,1,138,142,142,2,142,4,140,1,138
.byte 163,163,182,163,113,21,91,210,163,163,182,163,113,21,91,210
.byte 12,12,48,12,96,60,24,108,12,12,48,12,96,60,24,108
.byte 123,123,241,123,255,138,246,132,123,123,241,123,255,138,246,132
.byte 53,53,212,53,181,225,106,128,53,53,212,53,181,225,106,128
.byte 29,29,116,29,232,105,58,245,29,29,116,29,232,105,58,245
.byte 224,224,167,224,83,71,221,179,224,224,167,224,83,71,221,179
.byte 215,215,123,215,246,172,179,33,215,215,123,215,246,172,179,33
.byte 194,194,47,194,94,237,153,156,194,194,47,194,94,237,153,156
.byte 46,46,184,46,109,150,92,67,46,46,184,46,109,150,92,67
.byte 75,75,49,75,98,122,150,41,75,75,49,75,98,122,150,41
.byte 254,254,223,254,163,33,225,93,254,254,223,254,163,33,225,93
.byte 87,87,65,87,130,22,174,213,87,87,65,87,130,22,174,213
.byte 21,21,84,21,168,65,42,189,21,21,84,21,168,65,42,189
.byte 119,119,193,119,159,182,238,232,119,119,193,119,159,182,238,232
.byte 55,55,220,55,165,235,110,146,55,55,220,55,165,235,110,146
.byte 229,229,179,229,123,86,215,158,229,229,179,229,123,86,215,158
.byte 159,159,70,159,140,217,35,19,159,159,70,159,140,217,35,19
.byte 240,240,231,240,211,23,253,35,240,240,231,240,211,23,253,35
.byte 74,74,53,74,106,127,148,32,74,74,53,74,106,127,148,32
.byte 218,218,79,218,158,149,169,68,218,218,79,218,158,149,169,68
.byte 88,88,125,88,250,37,176,162,88,88,125,88,250,37,176,162
.byte 201,201,3,201,6,202,143,207,201,201,3,201,6,202,143,207
.byte 41,41,164,41,85,141,82,124,41,41,164,41,85,141,82,124
.byte 10,10,40,10,80,34,20,90,10,10,40,10,80,34,20,90
.byte 177,177,254,177,225,79,127,80,177,177,254,177,225,79,127,80
.byte 160,160,186,160,105,26,93,201,160,160,186,160,105,26,93,201
.byte 107,107,177,107,127,218,214,20,107,107,177,107,127,218,214,20
.byte 133,133,46,133,92,171,23,217,133,133,46,133,92,171,23,217
.byte 189,189,206,189,129,115,103,60,189,189,206,189,129,115,103,60
.byte 93,93,105,93,210,52,186,143,93,93,105,93,210,52,186,143
.byte 16,16,64,16,128,80,32,144,16,16,64,16,128,80,32,144
.byte 244,244,247,244,243,3,245,7,244,244,247,244,243,3,245,7
.byte 203,203,11,203,22,192,139,221,203,203,11,203,22,192,139,221
.byte 62,62,248,62,237,198,124,211,62,62,248,62,237,198,124,211
.byte 5,5,20,5,40,17,10,45,5,5,20,5,40,17,10,45
.byte 103,103,129,103,31,230,206,120,103,103,129,103,31,230,206,120
.byte 228,228,183,228,115,83,213,151,228,228,183,228,115,83,213,151
.byte 39,39,156,39,37,187,78,2,39,39,156,39,37,187,78,2
.byte 65,65,25,65,50,88,130,115,65,65,25,65,50,88,130,115
.byte 139,139,22,139,44,157,11,167,139,139,22,139,44,157,11,167
.byte 167,167,166,167,81,1,83,246,167,167,166,167,81,1,83,246
.byte 125,125,233,125,207,148,250,178,125,125,233,125,207,148,250,178
.byte 149,149,110,149,220,251,55,73,149,149,110,149,220,251,55,73
.byte 216,216,71,216,142,159,173,86,216,216,71,216,142,159,173,86
.byte 251,251,203,251,139,48,235,112,251,251,203,251,139,48,235,112
.byte 238,238,159,238,35,113,193,205,238,238,159,238,35,113,193,205
.byte 124,124,237,124,199,145,248,187,124,124,237,124,199,145,248,187
.byte 102,102,133,102,23,227,204,113,102,102,133,102,23,227,204,113
.byte 221,221,83,221,166,142,167,123,221,221,83,221,166,142,167,123
.byte 23,23,92,23,184,75,46,175,23,23,92,23,184,75,46,175
.byte 71,71,1,71,2,70,142,69,71,71,1,71,2,70,142,69
.byte 158,158,66,158,132,220,33,26,158,158,66,158,132,220,33,26
.byte 202,202,15,202,30,197,137,212,202,202,15,202,30,197,137,212
.byte 45,45,180,45,117,153,90,88,45,45,180,45,117,153,90,88
.byte 191,191,198,191,145,121,99,46,191,191,198,191,145,121,99,46
.byte 7,7,28,7,56,27,14,63,7,7,28,7,56,27,14,63
.byte 173,173,142,173,1,35,71,172,173,173,142,173,1,35,71,172
.byte 90,90,117,90,234,47,180,176,90,90,117,90,234,47,180,176
.byte 131,131,54,131,108,181,27,239,131,131,54,131,108,181,27,239
.byte 51,51,204,51,133,255,102,182,51,51,204,51,133,255,102,182
.byte 99,99,145,99,63,242,198,92,99,99,145,99,63,242,198,92
.byte 2,2,8,2,16,10,4,18,2,2,8,2,16,10,4,18
.byte 170,170,146,170,57,56,73,147,170,170,146,170,57,56,73,147
.byte 113,113,217,113,175,168,226,222,113,113,217,113,175,168,226,222
.byte 200,200,7,200,14,207,141,198,200,200,7,200,14,207,141,198
.byte 25,25,100,25,200,125,50,209,25,25,100,25,200,125,50,209
.byte 73,73,57,73,114,112,146,59,73,73,57,73,114,112,146,59
.byte 217,217,67,217,134,154,175,95,217,217,67,217,134,154,175,95
.byte 242,242,239,242,195,29,249,49,242,242,239,242,195,29,249,49
.byte 227,227,171,227,75,72,219,168,227,227,171,227,75,72,219,168
.byte 91,91,113,91,226,42,182,185,91,91,113,91,226,42,182,185
.byte 136,136,26,136,52,146,13,188,136,136,26,136,52,146,13,188
.byte 154,154,82,154,164,200,41,62,154,154,82,154,164,200,41,62
.byte 38,38,152,38,45,190,76,11,38,38,152,38,45,190,76,11
.byte 50,50,200,50,141,250,100,191,50,50,200,50,141,250,100,191
.byte 176,176,250,176,233,74,125,89,176,176,250,176,233,74,125,89
.byte 233,233,131,233,27,106,207,242,233,233,131,233,27,106,207,242
.byte 15,15,60,15,120,51,30,119,15,15,60,15,120,51,30,119
.byte 213,213,115,213,230,166,183,51,213,213,115,213,230,166,183,51
.byte 128,128,58,128,116,186,29,244,128,128,58,128,116,186,29,244
.byte 190,190,194,190,153,124,97,39,190,190,194,190,153,124,97,39
.byte 205,205,19,205,38,222,135,235,205,205,19,205,38,222,135,235
.byte 52,52,208,52,189,228,104,137,52,52,208,52,189,228,104,137
.byte 72,72,61,72,122,117,144,50,72,72,61,72,122,117,144,50
.byte 255,255,219,255,171,36,227,84,255,255,219,255,171,36,227,84
.byte 122,122,245,122,247,143,244,141,122,122,245,122,247,143,244,141
.byte 144,144,122,144,244,234,61,100,144,144,122,144,244,234,61,100
.byte 95,95,97,95,194,62,190,157,95,95,97,95,194,62,190,157
.byte 32,32,128,32,29,160,64,61,32,32,128,32,29,160,64,61
.byte 104,104,189,104,103,213,208,15,104,104,189,104,103,213,208,15
.byte 26,26,104,26,208,114,52,202,26,26,104,26,208,114,52,202
.byte 174,174,130,174,25,44,65,183,174,174,130,174,25,44,65,183
.byte 180,180,234,180,201,94,117,125,180,180,234,180,201,94,117,125
.byte 84,84,77,84,154,25,168,206,84,84,77,84,154,25,168,206
.byte 147,147,118,147,236,229,59,127,147,147,118,147,236,229,59,127
.byte 34,34,136,34,13,170,68,47,34,34,136,34,13,170,68,47
.byte 100,100,141,100,7,233,200,99,100,100,141,100,7,233,200,99
.byte 241,241,227,241,219,18,255,42,241,241,227,241,219,18,255,42
.byte 115,115,209,115,191,162,230,204,115,115,209,115,191,162,230,204
.byte 18,18,72,18,144,90,36,130,18,18,72,18,144,90,36,130
.byte 64,64,29,64,58,93,128,122,64,64,29,64,58,93,128,122
.byte 8,8,32,8,64,40,16,72,8,8,32,8,64,40,16,72
.byte 195,195,43,195,86,232,155,149,195,195,43,195,86,232,155,149
.byte 236,236,151,236,51,123,197,223,236,236,151,236,51,123,197,223
.byte 219,219,75,219,150,144,171,77,219,219,75,219,150,144,171,77
.byte 161,161,190,161,97,31,95,192,161,161,190,161,97,31,95,192
.byte 141,141,14,141,28,131,7,145,141,141,14,141,28,131,7,145
.byte 61,61,244,61,245,201,122,200,61,61,244,61,245,201,122,200
.byte 151,151,102,151,204,241,51,91,151,151,102,151,204,241,51,91
.byte 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
.byte 207,207,27,207,54,212,131,249,207,207,27,207,54,212,131,249
.byte 43,43,172,43,69,135,86,110,43,43,172,43,69,135,86,110
.byte 118,118,197,118,151,179,236,225,118,118,197,118,151,179,236,225
.byte 130,130,50,130,100,176,25,230,130,130,50,130,100,176,25,230
.byte 214,214,127,214,254,169,177,40,214,214,127,214,254,169,177,40
.byte 27,27,108,27,216,119,54,195,27,27,108,27,216,119,54,195
.byte 181,181,238,181,193,91,119,116,181,181,238,181,193,91,119,116
.byte 175,175,134,175,17,41,67,190,175,175,134,175,17,41,67,190
.byte 106,106,181,106,119,223,212,29,106,106,181,106,119,223,212,29
.byte 80,80,93,80,186,13,160,234,80,80,93,80,186,13,160,234
.byte 69,69,9,69,18,76,138,87,69,69,9,69,18,76,138,87
.byte 243,243,235,243,203,24,251,56,243,243,235,243,203,24,251,56
.byte 48,48,192,48,157,240,96,173,48,48,192,48,157,240,96,173
.byte 239,239,155,239,43,116,195,196,239,239,155,239,43,116,195,196
.byte 63,63,252,63,229,195,126,218,63,63,252,63,229,195,126,218
.byte 85,85,73,85,146,28,170,199,85,85,73,85,146,28,170,199
.byte 162,162,178,162,121,16,89,219,162,162,178,162,121,16,89,219
.byte 234,234,143,234,3,101,201,233,234,234,143,234,3,101,201,233
.byte 101,101,137,101,15,236,202,106,101,101,137,101,15,236,202,106
.byte 186,186,210,186,185,104,105,3,186,186,210,186,185,104,105,3
.byte 47,47,188,47,101,147,94,74,47,47,188,47,101,147,94,74
.byte 192,192,39,192,78,231,157,142,192,192,39,192,78,231,157,142
.byte 222,222,95,222,190,129,161,96,222,222,95,222,190,129,161,96
.byte 28,28,112,28,224,108,56,252,28,28,112,28,224,108,56,252
.byte 253,253,211,253,187,46,231,70,253,253,211,253,187,46,231,70
.byte 77,77,41,77,82,100,154,31,77,77,41,77,82,100,154,31
.byte 146,146,114,146,228,224,57,118,146,146,114,146,228,224,57,118
.byte 117,117,201,117,143,188,234,250,117,117,201,117,143,188,234,250
.byte 6,6,24,6,48,30,12,54,6,6,24,6,48,30,12,54
.byte 138,138,18,138,36,152,9,174,138,138,18,138,36,152,9,174
.byte 178,178,242,178,249,64,121,75,178,178,242,178,249,64,121,75
.byte 230,230,191,230,99,89,209,133,230,230,191,230,99,89,209,133
.byte 14,14,56,14,112,54,28,126,14,14,56,14,112,54,28,126
.byte 31,31,124,31,248,99,62,231,31,31,124,31,248,99,62,231
.byte 98,98,149,98,55,247,196,85,98,98,149,98,55,247,196,85
.byte 212,212,119,212,238,163,181,58,212,212,119,212,238,163,181,58
.byte 168,168,154,168,41,50,77,129,168,168,154,168,41,50,77,129
.byte 150,150,98,150,196,244,49,82,150,150,98,150,196,244,49,82
.byte 249,249,195,249,155,58,239,98,249,249,195,249,155,58,239,98
.byte 197,197,51,197,102,246,151,163,197,197,51,197,102,246,151,163
.byte 37,37,148,37,53,177,74,16,37,37,148,37,53,177,74,16
.byte 89,89,121,89,242,32,178,171,89,89,121,89,242,32,178,171
.byte 132,132,42,132,84,174,21,208,132,132,42,132,84,174,21,208
.byte 114,114,213,114,183,167,228,197,114,114,213,114,183,167,228,197
.byte 57,57,228,57,213,221,114,236,57,57,228,57,213,221,114,236
.byte 76,76,45,76,90,97,152,22,76,76,45,76,90,97,152,22
.byte 94,94,101,94,202,59,188,148,94,94,101,94,202,59,188,148
.byte 120,120,253,120,231,133,240,159,120,120,253,120,231,133,240,159
.byte 56,56,224,56,221,216,112,229,56,56,224,56,221,216,112,229
.byte 140,140,10,140,20,134,5,152,140,140,10,140,20,134,5,152
.byte 209,209,99,209,198,178,191,23,209,209,99,209,198,178,191,23
.byte 165,165,174,165,65,11,87,228,165,165,174,165,65,11,87,228
.byte 226,226,175,226,67,77,217,161,226,226,175,226,67,77,217,161
.byte 97,97,153,97,47,248,194,78,97,97,153,97,47,248,194,78
.byte 179,179,246,179,241,69,123,66,179,179,246,179,241,69,123,66
.byte 33,33,132,33,21,165,66,52,33,33,132,33,21,165,66,52
.byte 156,156,74,156,148,214,37,8,156,156,74,156,148,214,37,8
.byte 30,30,120,30,240,102,60,238,30,30,120,30,240,102,60,238
.byte 67,67,17,67,34,82,134,97,67,67,17,67,34,82,134,97
.byte 199,199,59,199,118,252,147,177,199,199,59,199,118,252,147,177
.byte 252,252,215,252,179,43,229,79,252,252,215,252,179,43,229,79
.byte 4,4,16,4,32,20,8,36,4,4,16,4,32,20,8,36
.byte 81,81,89,81,178,8,162,227,81,81,89,81,178,8,162,227
.byte 153,153,94,153,188,199,47,37,153,153,94,153,188,199,47,37
.byte 109,109,169,109,79,196,218,34,109,109,169,109,79,196,218,34
.byte 13,13,52,13,104,57,26,101,13,13,52,13,104,57,26,101
.byte 250,250,207,250,131,53,233,121,250,250,207,250,131,53,233,121
.byte 223,223,91,223,182,132,163,105,223,223,91,223,182,132,163,105
.byte 126,126,229,126,215,155,252,169,126,126,229,126,215,155,252,169
.byte 36,36,144,36,61,180,72,25,36,36,144,36,61,180,72,25
.byte 59,59,236,59,197,215,118,254,59,59,236,59,197,215,118,254
.byte 171,171,150,171,49,61,75,154,171,171,150,171,49,61,75,154
.byte 206,206,31,206,62,209,129,240,206,206,31,206,62,209,129,240
.byte 17,17,68,17,136,85,34,153,17,17,68,17,136,85,34,153
.byte 143,143,6,143,12,137,3,131,143,143,6,143,12,137,3,131
.byte 78,78,37,78,74,107,156,4,78,78,37,78,74,107,156,4
.byte 183,183,230,183,209,81,115,102,183,183,230,183,209,81,115,102
.byte 235,235,139,235,11,96,203,224,235,235,139,235,11,96,203,224
.byte 60,60,240,60,253,204,120,193,60,60,240,60,253,204,120,193
.byte 129,129,62,129,124,191,31,253,129,129,62,129,124,191,31,253
.byte 148,148,106,148,212,254,53,64,148,148,106,148,212,254,53,64
.byte 247,247,251,247,235,12,243,28,247,247,251,247,235,12,243,28
.byte 185,185,222,185,161,103,111,24,185,185,222,185,161,103,111,24
.byte 19,19,76,19,152,95,38,139,19,19,76,19,152,95,38,139
.byte 44,44,176,44,125,156,88,81,44,44,176,44,125,156,88,81
.byte 211,211,107,211,214,184,187,5,211,211,107,211,214,184,187,5
.byte 231,231,187,231,107,92,211,140,231,231,187,231,107,92,211,140
.byte 110,110,165,110,87,203,220,57,110,110,165,110,87,203,220,57
.byte 196,196,55,196,110,243,149,170,196,196,55,196,110,243,149,170
.byte 3,3,12,3,24,15,6,27,3,3,12,3,24,15,6,27
.byte 86,86,69,86,138,19,172,220,86,86,69,86,138,19,172,220
.byte 68,68,13,68,26,73,136,94,68,68,13,68,26,73,136,94
.byte 127,127,225,127,223,158,254,160,127,127,225,127,223,158,254,160
.byte 169,169,158,169,33,55,79,136,169,169,158,169,33,55,79,136
.byte 42,42,168,42,77,130,84,103,42,42,168,42,77,130,84,103
.byte 187,187,214,187,177,109,107,10,187,187,214,187,177,109,107,10
.byte 193,193,35,193,70,226,159,135,193,193,35,193,70,226,159,135
.byte 83,83,81,83,162,2,166,241,83,83,81,83,162,2,166,241
.byte 220,220,87,220,174,139,165,114,220,220,87,220,174,139,165,114
.byte 11,11,44,11,88,39,22,83,11,11,44,11,88,39,22,83
.byte 157,157,78,157,156,211,39,1,157,157,78,157,156,211,39,1
.byte 108,108,173,108,71,193,216,43,108,108,173,108,71,193,216,43
.byte 49,49,196,49,149,245,98,164,49,49,196,49,149,245,98,164
.byte 116,116,205,116,135,185,232,243,116,116,205,116,135,185,232,243
.byte 246,246,255,246,227,9,241,21,246,246,255,246,227,9,241,21
.byte 70,70,5,70,10,67,140,76,70,70,5,70,10,67,140,76
.byte 172,172,138,172,9,38,69,165,172,172,138,172,9,38,69,165
.byte 137,137,30,137,60,151,15,181,137,137,30,137,60,151,15,181
.byte 20,20,80,20,160,68,40,180,20,20,80,20,160,68,40,180
.byte 225,225,163,225,91,66,223,186,225,225,163,225,91,66,223,186
.byte 22,22,88,22,176,78,44,166,22,22,88,22,176,78,44,166
.byte 58,58,232,58,205,210,116,247,58,58,232,58,205,210,116,247
.byte 105,105,185,105,111,208,210,6,105,105,185,105,111,208,210,6
.byte 9,9,36,9,72,45,18,65,9,9,36,9,72,45,18,65
.byte 112,112,221,112,167,173,224,215,112,112,221,112,167,173,224,215
.byte 182,182,226,182,217,84,113,111,182,182,226,182,217,84,113,111
.byte 208,208,103,208,206,183,189,30,208,208,103,208,206,183,189,30
.byte 237,237,147,237,59,126,199,214,237,237,147,237,59,126,199,214
.byte 204,204,23,204,46,219,133,226,204,204,23,204,46,219,133,226
.byte 66,66,21,66,42,87,132,104,66,66,21,66,42,87,132,104
.byte 152,152,90,152,180,194,45,44,152,152,90,152,180,194,45,44
.byte 164,164,170,164,73,14,85,237,164,164,170,164,73,14,85,237
.byte 40,40,160,40,93,136,80,117,40,40,160,40,93,136,80,117
.byte 92,92,109,92,218,49,184,134,92,92,109,92,218,49,184,134
.byte 248,248,199,248,147,63,237,107,248,248,199,248,147,63,237,107
.byte 134,134,34,134,68,164,17,194,134,134,34,134,68,164,17,194
.byte 24,35,198,232,135,184,1,79
.byte 54,166,210,245,121,111,145,82
.byte 96,188,155,142,163,12,123,53
.byte 29,224,215,194,46,75,254,87
.byte 21,119,55,229,159,240,74,218
.byte 88,201,41,10,177,160,107,133
.byte 189,93,16,244,203,62,5,103
.byte 228,39,65,139,167,125,149,216
.byte 251,238,124,102,221,23,71,158
.byte 202,45,191,7,173,90,131,51
@@ -0,0 +1,457 @@
.hidden OPENSSL_cpuid_setup
.section .init
call OPENSSL_cpuid_setup
.hidden OPENSSL_ia32cap_P
.comm OPENSSL_ia32cap_P,16,4
.text
.globl OPENSSL_atomic_add
.type OPENSSL_atomic_add,@function
.align 16
OPENSSL_atomic_add:
movl (%rdi),%eax
.Lspin: leaq (%rsi,%rax,1),%r8
.byte 0xf0
cmpxchgl %r8d,(%rdi)
jne .Lspin
movl %r8d,%eax
.byte 0x48,0x98
.byte 0xf3,0xc3
.size OPENSSL_atomic_add,.-OPENSSL_atomic_add
.globl OPENSSL_rdtsc
.type OPENSSL_rdtsc,@function
.align 16
OPENSSL_rdtsc:
rdtsc
shlq $32,%rdx
orq %rdx,%rax
.byte 0xf3,0xc3
.size OPENSSL_rdtsc,.-OPENSSL_rdtsc
.globl OPENSSL_ia32_cpuid
.type OPENSSL_ia32_cpuid,@function
.align 16
OPENSSL_ia32_cpuid:
movq %rbx,%r8
xorl %eax,%eax
movl %eax,8(%rdi)
cpuid
movl %eax,%r11d
xorl %eax,%eax
cmpl $0x756e6547,%ebx
setne %al
movl %eax,%r9d
cmpl $0x49656e69,%edx
setne %al
orl %eax,%r9d
cmpl $0x6c65746e,%ecx
setne %al
orl %eax,%r9d
jz .Lintel
cmpl $0x68747541,%ebx
setne %al
movl %eax,%r10d
cmpl $0x69746E65,%edx
setne %al
orl %eax,%r10d
cmpl $0x444D4163,%ecx
setne %al
orl %eax,%r10d
jnz .Lintel
movl $0x80000000,%eax
cpuid
cmpl $0x80000001,%eax
jb .Lintel
movl %eax,%r10d
movl $0x80000001,%eax
cpuid
orl %ecx,%r9d
andl $0x00000801,%r9d
cmpl $0x80000008,%r10d
jb .Lintel
movl $0x80000008,%eax
cpuid
movzbq %cl,%r10
incq %r10
movl $1,%eax
cpuid
btl $28,%edx
jnc .Lgeneric
shrl $16,%ebx
cmpb %r10b,%bl
ja .Lgeneric
andl $0xefffffff,%edx
jmp .Lgeneric
.Lintel:
cmpl $4,%r11d
movl $-1,%r10d
jb .Lnocacheinfo
movl $4,%eax
movl $0,%ecx
cpuid
movl %eax,%r10d
shrl $14,%r10d
andl $0xfff,%r10d
.Lnocacheinfo:
movl $1,%eax
cpuid
andl $0xbfefffff,%edx
cmpl $0,%r9d
jne .Lnotintel
orl $0x40000000,%edx
andb $15,%ah
cmpb $15,%ah
jne .LnotP4
orl $0x00100000,%edx
.LnotP4:
cmpb $6,%ah
jne .Lnotintel
andl $0x0fff0ff0,%eax
cmpl $0x00050670,%eax
je .Lknights
cmpl $0x00080650,%eax
jne .Lnotintel
.Lknights:
andl $0xfbffffff,%ecx
.Lnotintel:
btl $28,%edx
jnc .Lgeneric
andl $0xefffffff,%edx
cmpl $0,%r10d
je .Lgeneric
orl $0x10000000,%edx
shrl $16,%ebx
cmpb $1,%bl
ja .Lgeneric
andl $0xefffffff,%edx
.Lgeneric:
andl $0x00000800,%r9d
andl $0xfffff7ff,%ecx
orl %ecx,%r9d
movl %edx,%r10d
cmpl $7,%r11d
jb .Lno_extended_info
movl $7,%eax
xorl %ecx,%ecx
cpuid
btl $26,%r9d
jc .Lnotknights
andl $0xfff7ffff,%ebx
.Lnotknights:
movl %ebx,8(%rdi)
.Lno_extended_info:
btl $27,%r9d
jnc .Lclear_avx
xorl %ecx,%ecx
.byte 0x0f,0x01,0xd0
andl $6,%eax
cmpl $6,%eax
je .Ldone
.Lclear_avx:
movl $0xefffe7ff,%eax
andl %eax,%r9d
andl $0xffffffdf,8(%rdi)
.Ldone:
shlq $32,%r9
movl %r10d,%eax
movq %r8,%rbx
orq %r9,%rax
.byte 0xf3,0xc3
.size OPENSSL_ia32_cpuid,.-OPENSSL_ia32_cpuid
.globl OPENSSL_cleanse
.type OPENSSL_cleanse,@function
.align 16
OPENSSL_cleanse:
xorq %rax,%rax
cmpq $15,%rsi
jae .Lot
cmpq $0,%rsi
je .Lret
.Little:
movb %al,(%rdi)
subq $1,%rsi
leaq 1(%rdi),%rdi
jnz .Little
.Lret:
.byte 0xf3,0xc3
.align 16
.Lot:
testq $7,%rdi
jz .Laligned
movb %al,(%rdi)
leaq -1(%rsi),%rsi
leaq 1(%rdi),%rdi
jmp .Lot
.Laligned:
movq %rax,(%rdi)
leaq -8(%rsi),%rsi
testq $-8,%rsi
leaq 8(%rdi),%rdi
jnz .Laligned
cmpq $0,%rsi
jne .Little
.byte 0xf3,0xc3
.size OPENSSL_cleanse,.-OPENSSL_cleanse
.globl CRYPTO_memcmp
.type CRYPTO_memcmp,@function
.align 16
CRYPTO_memcmp:
xorq %rax,%rax
xorq %r10,%r10
cmpq $0,%rdx
je .Lno_data
.Loop_cmp:
movb (%rdi),%r10b
leaq 1(%rdi),%rdi
xorb (%rsi),%r10b
leaq 1(%rsi),%rsi
orb %r10b,%al
decq %rdx
jnz .Loop_cmp
negq %rax
shrq $63,%rax
.Lno_data:
.byte 0xf3,0xc3
.size CRYPTO_memcmp,.-CRYPTO_memcmp
.globl OPENSSL_wipe_cpu
.type OPENSSL_wipe_cpu,@function
.align 16
OPENSSL_wipe_cpu:
pxor %xmm0,%xmm0
pxor %xmm1,%xmm1
pxor %xmm2,%xmm2
pxor %xmm3,%xmm3
pxor %xmm4,%xmm4
pxor %xmm5,%xmm5
pxor %xmm6,%xmm6
pxor %xmm7,%xmm7
pxor %xmm8,%xmm8
pxor %xmm9,%xmm9
pxor %xmm10,%xmm10
pxor %xmm11,%xmm11
pxor %xmm12,%xmm12
pxor %xmm13,%xmm13
pxor %xmm14,%xmm14
pxor %xmm15,%xmm15
xorq %rcx,%rcx
xorq %rdx,%rdx
xorq %rsi,%rsi
xorq %rdi,%rdi
xorq %r8,%r8
xorq %r9,%r9
xorq %r10,%r10
xorq %r11,%r11
leaq 8(%rsp),%rax
.byte 0xf3,0xc3
.size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu
.globl OPENSSL_instrument_bus
.type OPENSSL_instrument_bus,@function
.align 16
OPENSSL_instrument_bus:
movq %rdi,%r10
movq %rsi,%rcx
movq %rsi,%r11
rdtsc
movl %eax,%r8d
movl $0,%r9d
clflush (%r10)
.byte 0xf0
addl %r9d,(%r10)
jmp .Loop
.align 16
.Loop: rdtsc
movl %eax,%edx
subl %r8d,%eax
movl %edx,%r8d
movl %eax,%r9d
clflush (%r10)
.byte 0xf0
addl %eax,(%r10)
leaq 4(%r10),%r10
subq $1,%rcx
jnz .Loop
movq %r11,%rax
.byte 0xf3,0xc3
.size OPENSSL_instrument_bus,.-OPENSSL_instrument_bus
.globl OPENSSL_instrument_bus2
.type OPENSSL_instrument_bus2,@function
.align 16
OPENSSL_instrument_bus2:
movq %rdi,%r10
movq %rsi,%rcx
movq %rdx,%r11
movq %rcx,8(%rsp)
rdtsc
movl %eax,%r8d
movl $0,%r9d
clflush (%r10)
.byte 0xf0
addl %r9d,(%r10)
rdtsc
movl %eax,%edx
subl %r8d,%eax
movl %edx,%r8d
movl %eax,%r9d
.Loop2:
clflush (%r10)
.byte 0xf0
addl %eax,(%r10)
subq $1,%r11
jz .Ldone2
rdtsc
movl %eax,%edx
subl %r8d,%eax
movl %edx,%r8d
cmpl %r9d,%eax
movl %eax,%r9d
movl $0,%edx
setne %dl
subq %rdx,%rcx
leaq (%r10,%rdx,4),%r10
jnz .Loop2
.Ldone2:
movq 8(%rsp),%rax
subq %rcx,%rax
.byte 0xf3,0xc3
.size OPENSSL_instrument_bus2,.-OPENSSL_instrument_bus2
.globl OPENSSL_ia32_rdrand
.type OPENSSL_ia32_rdrand,@function
.align 16
OPENSSL_ia32_rdrand:
movl $8,%ecx
.Loop_rdrand:
.byte 72,15,199,240
jc .Lbreak_rdrand
loop .Loop_rdrand
.Lbreak_rdrand:
cmpq $0,%rax
cmoveq %rcx,%rax
.byte 0xf3,0xc3
.size OPENSSL_ia32_rdrand,.-OPENSSL_ia32_rdrand
.globl OPENSSL_ia32_rdrand_bytes
.type OPENSSL_ia32_rdrand_bytes,@function
.align 16
OPENSSL_ia32_rdrand_bytes:
xorq %rax,%rax
cmpq $0,%rsi
je .Ldone_rdrand_bytes
movq $8,%r11
.Loop_rdrand_bytes:
.byte 73,15,199,242
jc .Lbreak_rdrand_bytes
decq %r11
jnz .Loop_rdrand_bytes
jmp .Ldone_rdrand_bytes
.align 16
.Lbreak_rdrand_bytes:
cmpq $8,%rsi
jb .Ltail_rdrand_bytes
movq %r10,(%rdi)
leaq 8(%rdi),%rdi
addq $8,%rax
subq $8,%rsi
jz .Ldone_rdrand_bytes
movq $8,%r11
jmp .Loop_rdrand_bytes
.align 16
.Ltail_rdrand_bytes:
movb %r10b,(%rdi)
leaq 1(%rdi),%rdi
incq %rax
shrq $8,%r8
decq %rsi
jnz .Ltail_rdrand_bytes
.Ldone_rdrand_bytes:
.byte 0xf3,0xc3
.size OPENSSL_ia32_rdrand_bytes,.-OPENSSL_ia32_rdrand_bytes
.globl OPENSSL_ia32_rdseed
.type OPENSSL_ia32_rdseed,@function
.align 16
OPENSSL_ia32_rdseed:
movl $8,%ecx
.Loop_rdseed:
.byte 72,15,199,248
jc .Lbreak_rdseed
loop .Loop_rdseed
.Lbreak_rdseed:
cmpq $0,%rax
cmoveq %rcx,%rax
.byte 0xf3,0xc3
.size OPENSSL_ia32_rdseed,.-OPENSSL_ia32_rdseed
.globl OPENSSL_ia32_rdseed_bytes
.type OPENSSL_ia32_rdseed_bytes,@function
.align 16
OPENSSL_ia32_rdseed_bytes:
xorq %rax,%rax
cmpq $0,%rsi
je .Ldone_rdseed_bytes
movq $8,%r11
.Loop_rdseed_bytes:
.byte 73,15,199,250
jc .Lbreak_rdseed_bytes
decq %r11
jnz .Loop_rdseed_bytes
jmp .Ldone_rdseed_bytes
.align 16
.Lbreak_rdseed_bytes:
cmpq $8,%rsi
jb .Ltail_rdseed_bytes
movq %r10,(%rdi)
leaq 8(%rdi),%rdi
addq $8,%rax
subq $8,%rsi
jz .Ldone_rdseed_bytes
movq $8,%r11
jmp .Loop_rdseed_bytes
.align 16
.Ltail_rdseed_bytes:
movb %r10b,(%rdi)
leaq 1(%rdi),%rdi
incq %rax
shrq $8,%r8
decq %rsi
jnz .Ltail_rdseed_bytes
.Ldone_rdseed_bytes:
.byte 0xf3,0xc3
.size OPENSSL_ia32_rdseed_bytes,.-OPENSSL_ia32_rdseed_bytes
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,175 @@
/*
* WARNING: do not edit!
* Generated by Makefile from include/openssl/opensslconf.h.in
*
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
#ifdef __cplusplus
extern "C" {
#endif
#ifdef OPENSSL_ALGORITHM_DEFINES
# error OPENSSL_ALGORITHM_DEFINES no longer supported
#endif
/*
* OpenSSL was configured with the following options:
*/
#ifndef OPENSSL_NO_COMP
# define OPENSSL_NO_COMP
#endif
#ifndef OPENSSL_NO_MD2
# define OPENSSL_NO_MD2
#endif
#ifndef OPENSSL_NO_RC5
# define OPENSSL_NO_RC5
#endif
#ifndef OPENSSL_THREADS
# define OPENSSL_THREADS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
#ifndef OPENSSL_NO_ASAN
# define OPENSSL_NO_ASAN
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG
# define OPENSSL_NO_CRYPTO_MDEBUG
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
#endif
#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
# define OPENSSL_NO_EC_NISTP_64_GCC_128
#endif
#ifndef OPENSSL_NO_EGD
# define OPENSSL_NO_EGD
#endif
#ifndef OPENSSL_NO_FUZZ_AFL
# define OPENSSL_NO_FUZZ_AFL
#endif
#ifndef OPENSSL_NO_FUZZ_LIBFUZZER
# define OPENSSL_NO_FUZZ_LIBFUZZER
#endif
#ifndef OPENSSL_NO_HEARTBEATS
# define OPENSSL_NO_HEARTBEATS
#endif
#ifndef OPENSSL_NO_MSAN
# define OPENSSL_NO_MSAN
#endif
#ifndef OPENSSL_NO_SCTP
# define OPENSSL_NO_SCTP
#endif
#ifndef OPENSSL_NO_SSL_TRACE
# define OPENSSL_NO_SSL_TRACE
#endif
#ifndef OPENSSL_NO_SSL3
# define OPENSSL_NO_SSL3
#endif
#ifndef OPENSSL_NO_SSL3_METHOD
# define OPENSSL_NO_SSL3_METHOD
#endif
#ifndef OPENSSL_NO_UBSAN
# define OPENSSL_NO_UBSAN
#endif
#ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
#endif
#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
# define OPENSSL_NO_WEAK_SSL_CIPHERS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
/*
* Sometimes OPENSSSL_NO_xxx ends up with an empty file and some compilers
* don't like that. This will hopefully silence them.
*/
#define NON_EMPTY_TRANSLATION_UNIT static void *dummy = &dummy;
/*
* Applications should use -DOPENSSL_API_COMPAT=<version> to suppress the
* declarations of functions deprecated in or before <version>. Otherwise, they
* still won't see them if the library has been built to disable deprecated
* functions.
*/
#if defined(OPENSSL_NO_DEPRECATED)
# define DECLARE_DEPRECATED(f)
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
#else
# define DECLARE_DEPRECATED(f) f;
#endif
#ifndef OPENSSL_FILE
# ifdef OPENSSL_NO_FILENAMES
# define OPENSSL_FILE ""
# define OPENSSL_LINE 0
# else
# define OPENSSL_FILE __FILE__
# define OPENSSL_LINE __LINE__
# endif
#endif
#ifndef OPENSSL_MIN_API
# define OPENSSL_MIN_API 0
#endif
#if !defined(OPENSSL_API_COMPAT) || OPENSSL_API_COMPAT < OPENSSL_MIN_API
# undef OPENSSL_API_COMPAT
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
#endif
#if OPENSSL_API_COMPAT < 0x10100000L
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_1_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x10000000L
# define DEPRECATEDIN_1_0_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_0_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x00908000L
# define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_0_9_8(f)
#endif
#define OPENSSL_CPUID_OBJ
/* Generate 80386 code? */
#undef I386_ONLY
#undef OPENSSL_UNISTD
#define OPENSSL_UNISTD <unistd.h>
#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
/*
* The following are cipher-specific, but are part of the public API.
*/
#if !defined(OPENSSL_SYS_UEFI)
# undef BN_LLONG
/* Only one for the following should be defined */
# define SIXTY_FOUR_BIT_LONG
# undef SIXTY_FOUR_BIT
# undef THIRTY_TWO_BIT
#endif
#define RC4_INT unsigned int
#ifdef __cplusplus
}
#endif
+418
View File
@@ -0,0 +1,418 @@
/*
* WARNING: do not edit!
* Generated by apps/progs.pl
*
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
typedef enum FUNC_TYPE {
FT_none, FT_general, FT_md, FT_cipher, FT_pkey,
FT_md_alg, FT_cipher_alg
} FUNC_TYPE;
typedef struct function_st {
FUNC_TYPE type;
const char *name;
int (*func)(int argc, char *argv[]);
const OPTIONS *help;
} FUNCTION;
DEFINE_LHASH_OF(FUNCTION);
extern int asn1parse_main(int argc, char *argv[]);
extern int ca_main(int argc, char *argv[]);
extern int ciphers_main(int argc, char *argv[]);
extern int cms_main(int argc, char *argv[]);
extern int crl_main(int argc, char *argv[]);
extern int crl2pkcs7_main(int argc, char *argv[]);
extern int dgst_main(int argc, char *argv[]);
extern int dhparam_main(int argc, char *argv[]);
extern int dsa_main(int argc, char *argv[]);
extern int dsaparam_main(int argc, char *argv[]);
extern int ec_main(int argc, char *argv[]);
extern int ecparam_main(int argc, char *argv[]);
extern int enc_main(int argc, char *argv[]);
extern int engine_main(int argc, char *argv[]);
extern int errstr_main(int argc, char *argv[]);
extern int exit_main(int argc, char *argv[]);
extern int gendsa_main(int argc, char *argv[]);
extern int genpkey_main(int argc, char *argv[]);
extern int genrsa_main(int argc, char *argv[]);
extern int help_main(int argc, char *argv[]);
extern int list_main(int argc, char *argv[]);
extern int nseq_main(int argc, char *argv[]);
extern int ocsp_main(int argc, char *argv[]);
extern int passwd_main(int argc, char *argv[]);
extern int pkcs12_main(int argc, char *argv[]);
extern int pkcs7_main(int argc, char *argv[]);
extern int pkcs8_main(int argc, char *argv[]);
extern int pkey_main(int argc, char *argv[]);
extern int pkeyparam_main(int argc, char *argv[]);
extern int pkeyutl_main(int argc, char *argv[]);
extern int prime_main(int argc, char *argv[]);
extern int rand_main(int argc, char *argv[]);
extern int rehash_main(int argc, char *argv[]);
extern int req_main(int argc, char *argv[]);
extern int rsa_main(int argc, char *argv[]);
extern int rsautl_main(int argc, char *argv[]);
extern int s_client_main(int argc, char *argv[]);
extern int s_server_main(int argc, char *argv[]);
extern int s_time_main(int argc, char *argv[]);
extern int sess_id_main(int argc, char *argv[]);
extern int smime_main(int argc, char *argv[]);
extern int speed_main(int argc, char *argv[]);
extern int spkac_main(int argc, char *argv[]);
extern int srp_main(int argc, char *argv[]);
extern int ts_main(int argc, char *argv[]);
extern int verify_main(int argc, char *argv[]);
extern int version_main(int argc, char *argv[]);
extern int x509_main(int argc, char *argv[]);
extern OPTIONS asn1parse_options[];
extern OPTIONS ca_options[];
extern OPTIONS ciphers_options[];
extern OPTIONS cms_options[];
extern OPTIONS crl_options[];
extern OPTIONS crl2pkcs7_options[];
extern OPTIONS dgst_options[];
extern OPTIONS dhparam_options[];
extern OPTIONS dsa_options[];
extern OPTIONS dsaparam_options[];
extern OPTIONS ec_options[];
extern OPTIONS ecparam_options[];
extern OPTIONS enc_options[];
extern OPTIONS engine_options[];
extern OPTIONS errstr_options[];
extern OPTIONS exit_options[];
extern OPTIONS gendsa_options[];
extern OPTIONS genpkey_options[];
extern OPTIONS genrsa_options[];
extern OPTIONS help_options[];
extern OPTIONS list_options[];
extern OPTIONS nseq_options[];
extern OPTIONS ocsp_options[];
extern OPTIONS passwd_options[];
extern OPTIONS pkcs12_options[];
extern OPTIONS pkcs7_options[];
extern OPTIONS pkcs8_options[];
extern OPTIONS pkey_options[];
extern OPTIONS pkeyparam_options[];
extern OPTIONS pkeyutl_options[];
extern OPTIONS prime_options[];
extern OPTIONS rand_options[];
extern OPTIONS rehash_options[];
extern OPTIONS req_options[];
extern OPTIONS rsa_options[];
extern OPTIONS rsautl_options[];
extern OPTIONS s_client_options[];
extern OPTIONS s_server_options[];
extern OPTIONS s_time_options[];
extern OPTIONS sess_id_options[];
extern OPTIONS smime_options[];
extern OPTIONS speed_options[];
extern OPTIONS spkac_options[];
extern OPTIONS srp_options[];
extern OPTIONS ts_options[];
extern OPTIONS verify_options[];
extern OPTIONS version_options[];
extern OPTIONS x509_options[];
#ifdef INCLUDE_FUNCTION_TABLE
static FUNCTION functions[] = {
{ FT_general, "asn1parse", asn1parse_main, asn1parse_options },
{ FT_general, "ca", ca_main, ca_options },
#ifndef OPENSSL_NO_SOCK
{ FT_general, "ciphers", ciphers_main, ciphers_options },
#endif
#ifndef OPENSSL_NO_CMS
{ FT_general, "cms", cms_main, cms_options },
#endif
{ FT_general, "crl", crl_main, crl_options },
{ FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options },
{ FT_general, "dgst", dgst_main, dgst_options },
#ifndef OPENSSL_NO_DH
{ FT_general, "dhparam", dhparam_main, dhparam_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsa", dsa_main, dsa_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsaparam", dsaparam_main, dsaparam_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ec", ec_main, ec_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ecparam", ecparam_main, ecparam_options },
#endif
{ FT_general, "enc", enc_main, enc_options },
#ifndef OPENSSL_NO_ENGINE
{ FT_general, "engine", engine_main, engine_options },
#endif
{ FT_general, "errstr", errstr_main, errstr_options },
{ FT_general, "exit", exit_main, exit_options },
#ifndef OPENSSL_NO_DSA
{ FT_general, "gendsa", gendsa_main, gendsa_options },
#endif
{ FT_general, "genpkey", genpkey_main, genpkey_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "genrsa", genrsa_main, genrsa_options },
#endif
{ FT_general, "help", help_main, help_options },
{ FT_general, "list", list_main, list_options },
{ FT_general, "nseq", nseq_main, nseq_options },
#ifndef OPENSSL_NO_OCSP
{ FT_general, "ocsp", ocsp_main, ocsp_options },
#endif
{ FT_general, "passwd", passwd_main, passwd_options },
#ifndef OPENSSL_NO_DES
{ FT_general, "pkcs12", pkcs12_main, pkcs12_options },
#endif
{ FT_general, "pkcs7", pkcs7_main, pkcs7_options },
{ FT_general, "pkcs8", pkcs8_main, pkcs8_options },
{ FT_general, "pkey", pkey_main, pkey_options },
{ FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options },
{ FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options },
{ FT_general, "prime", prime_main, prime_options },
{ FT_general, "rand", rand_main, rand_options },
{ FT_general, "rehash", rehash_main, rehash_options },
{ FT_general, "req", req_main, req_options },
{ FT_general, "rsa", rsa_main, rsa_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "rsautl", rsautl_main, rsautl_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_client", s_client_main, s_client_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_server", s_server_main, s_server_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_time", s_time_main, s_time_options },
#endif
{ FT_general, "sess_id", sess_id_main, sess_id_options },
{ FT_general, "smime", smime_main, smime_options },
{ FT_general, "speed", speed_main, speed_options },
{ FT_general, "spkac", spkac_main, spkac_options },
#ifndef OPENSSL_NO_SRP
{ FT_general, "srp", srp_main, srp_options },
#endif
#ifndef OPENSSL_NO_TS
{ FT_general, "ts", ts_main, ts_options },
#endif
{ FT_general, "verify", verify_main, verify_options },
{ FT_general, "version", version_main, version_options },
{ FT_general, "x509", x509_main, x509_options },
#ifndef OPENSSL_NO_MD2
{ FT_md, "md2", dgst_main},
#endif
#ifndef OPENSSL_NO_MD4
{ FT_md, "md4", dgst_main},
#endif
{ FT_md, "md5", dgst_main},
#ifndef OPENSSL_NO_GOST
{ FT_md, "gost", dgst_main},
#endif
{ FT_md, "sha1", dgst_main},
{ FT_md, "sha224", dgst_main},
{ FT_md, "sha256", dgst_main},
{ FT_md, "sha384", dgst_main},
{ FT_md, "sha512", dgst_main},
#ifndef OPENSSL_NO_MDC2
{ FT_md, "mdc2", dgst_main},
#endif
#ifndef OPENSSL_NO_RMD160
{ FT_md, "rmd160", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2b512", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2s256", dgst_main},
#endif
{ FT_cipher, "aes-128-cbc", enc_main, enc_options },
{ FT_cipher, "aes-128-ecb", enc_main, enc_options },
{ FT_cipher, "aes-192-cbc", enc_main, enc_options },
{ FT_cipher, "aes-192-ecb", enc_main, enc_options },
{ FT_cipher, "aes-256-cbc", enc_main, enc_options },
{ FT_cipher, "aes-256-ecb", enc_main, enc_options },
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-ecb", enc_main, enc_options },
#endif
{ FT_cipher, "base64", enc_main, enc_options },
#ifdef ZLIB
{ FT_cipher, "zlib", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "desx", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4-40", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-64-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-40-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ofb", enc_main, enc_options },
#endif
{ 0, NULL, NULL}
};
#endif
@@ -0,0 +1,94 @@
{
'variables': {
'openssl_defines_BSD-x86_64': [
'DSO_DLFCN',
'HAVE_DLFCN_H',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
'OPENSSL_IA32_SSE2',
'OPENSSL_BN_ASM_MONT',
'OPENSSL_BN_ASM_MONT5',
'OPENSSL_BN_ASM_GF2m',
'SHA1_ASM',
'SHA256_ASM',
'SHA512_ASM',
'RC4_ASM',
'MD5_ASM',
'AES_ASM',
'VPAES_ASM',
'BSAES_ASM',
'GHASH_ASM',
'ECP_NISTZ256_ASM',
'PADLOCK_ASM',
'POLY1305_ASM',
],
'openssl_cflags_BSD-x86_64': [
'-DL_ENDIAN -Wall -O3 -pthread -D_THREAD_SAFE -D_REENTRANT',
],
'openssl_ex_libs_BSD-x86_64': [
'',
],
'openssl_cli_srcs_BSD-x86_64': [
'openssl/apps/app_rand.c',
'openssl/apps/apps.c',
'openssl/apps/asn1pars.c',
'openssl/apps/ca.c',
'openssl/apps/ciphers.c',
'openssl/apps/cms.c',
'openssl/apps/crl.c',
'openssl/apps/crl2p7.c',
'openssl/apps/dgst.c',
'openssl/apps/dhparam.c',
'openssl/apps/dsa.c',
'openssl/apps/dsaparam.c',
'openssl/apps/ec.c',
'openssl/apps/ecparam.c',
'openssl/apps/enc.c',
'openssl/apps/engine.c',
'openssl/apps/errstr.c',
'openssl/apps/gendsa.c',
'openssl/apps/genpkey.c',
'openssl/apps/genrsa.c',
'openssl/apps/nseq.c',
'openssl/apps/ocsp.c',
'openssl/apps/openssl.c',
'openssl/apps/opt.c',
'openssl/apps/passwd.c',
'openssl/apps/pkcs12.c',
'openssl/apps/pkcs7.c',
'openssl/apps/pkcs8.c',
'openssl/apps/pkey.c',
'openssl/apps/pkeyparam.c',
'openssl/apps/pkeyutl.c',
'openssl/apps/prime.c',
'openssl/apps/rand.c',
'openssl/apps/rehash.c',
'openssl/apps/req.c',
'openssl/apps/rsa.c',
'openssl/apps/rsautl.c',
'openssl/apps/s_cb.c',
'openssl/apps/s_client.c',
'openssl/apps/s_server.c',
'openssl/apps/s_socket.c',
'openssl/apps/s_time.c',
'openssl/apps/sess_id.c',
'openssl/apps/smime.c',
'openssl/apps/speed.c',
'openssl/apps/spkac.c',
'openssl/apps/srp.c',
'openssl/apps/ts.c',
'openssl/apps/verify.c',
'openssl/apps/version.c',
'openssl/apps/x509.c',
],
},
'defines': ['<@(openssl_defines_BSD-x86_64)'],
'include_dirs': [
'./include',
],
'cflags' : ['<@(openssl_cflags_BSD-x86_64)'],
'libraries': ['<@(openssl_ex_libs_BSD-x86_64)'],
'sources': ['<@(openssl_cli_srcs_BSD-x86_64)'],
}
+709
View File
@@ -0,0 +1,709 @@
{
'variables': {
'openssl_sources': [
'openssl/ssl/bio_ssl.c',
'openssl/ssl/d1_lib.c',
'openssl/ssl/d1_msg.c',
'openssl/ssl/d1_srtp.c',
'openssl/ssl/methods.c',
'openssl/ssl/pqueue.c',
'openssl/ssl/record/dtls1_bitmap.c',
'openssl/ssl/record/rec_layer_d1.c',
'openssl/ssl/record/rec_layer_s3.c',
'openssl/ssl/record/ssl3_buffer.c',
'openssl/ssl/record/ssl3_record.c',
'openssl/ssl/s3_cbc.c',
'openssl/ssl/s3_enc.c',
'openssl/ssl/s3_lib.c',
'openssl/ssl/s3_msg.c',
'openssl/ssl/ssl_asn1.c',
'openssl/ssl/ssl_cert.c',
'openssl/ssl/ssl_ciph.c',
'openssl/ssl/ssl_conf.c',
'openssl/ssl/ssl_err.c',
'openssl/ssl/ssl_init.c',
'openssl/ssl/ssl_lib.c',
'openssl/ssl/ssl_mcnf.c',
'openssl/ssl/ssl_rsa.c',
'openssl/ssl/ssl_sess.c',
'openssl/ssl/ssl_stat.c',
'openssl/ssl/ssl_txt.c',
'openssl/ssl/ssl_utst.c',
'openssl/ssl/statem/statem.c',
'openssl/ssl/statem/statem_clnt.c',
'openssl/ssl/statem/statem_dtls.c',
'openssl/ssl/statem/statem_lib.c',
'openssl/ssl/statem/statem_srvr.c',
'openssl/ssl/t1_enc.c',
'openssl/ssl/t1_ext.c',
'openssl/ssl/t1_lib.c',
'openssl/ssl/t1_reneg.c',
'openssl/ssl/t1_trce.c',
'openssl/ssl/tls_srp.c',
'openssl/crypto/aes/aes_cfb.c',
'openssl/crypto/aes/aes_ecb.c',
'openssl/crypto/aes/aes_ige.c',
'openssl/crypto/aes/aes_misc.c',
'openssl/crypto/aes/aes_ofb.c',
'openssl/crypto/aes/aes_wrap.c',
'openssl/crypto/asn1/a_bitstr.c',
'openssl/crypto/asn1/a_d2i_fp.c',
'openssl/crypto/asn1/a_digest.c',
'openssl/crypto/asn1/a_dup.c',
'openssl/crypto/asn1/a_gentm.c',
'openssl/crypto/asn1/a_i2d_fp.c',
'openssl/crypto/asn1/a_int.c',
'openssl/crypto/asn1/a_mbstr.c',
'openssl/crypto/asn1/a_object.c',
'openssl/crypto/asn1/a_octet.c',
'openssl/crypto/asn1/a_print.c',
'openssl/crypto/asn1/a_sign.c',
'openssl/crypto/asn1/a_strex.c',
'openssl/crypto/asn1/a_strnid.c',
'openssl/crypto/asn1/a_time.c',
'openssl/crypto/asn1/a_type.c',
'openssl/crypto/asn1/a_utctm.c',
'openssl/crypto/asn1/a_utf8.c',
'openssl/crypto/asn1/a_verify.c',
'openssl/crypto/asn1/ameth_lib.c',
'openssl/crypto/asn1/asn1_err.c',
'openssl/crypto/asn1/asn1_gen.c',
'openssl/crypto/asn1/asn1_lib.c',
'openssl/crypto/asn1/asn1_par.c',
'openssl/crypto/asn1/asn_mime.c',
'openssl/crypto/asn1/asn_moid.c',
'openssl/crypto/asn1/asn_mstbl.c',
'openssl/crypto/asn1/asn_pack.c',
'openssl/crypto/asn1/bio_asn1.c',
'openssl/crypto/asn1/bio_ndef.c',
'openssl/crypto/asn1/d2i_pr.c',
'openssl/crypto/asn1/d2i_pu.c',
'openssl/crypto/asn1/evp_asn1.c',
'openssl/crypto/asn1/f_int.c',
'openssl/crypto/asn1/f_string.c',
'openssl/crypto/asn1/i2d_pr.c',
'openssl/crypto/asn1/i2d_pu.c',
'openssl/crypto/asn1/n_pkey.c',
'openssl/crypto/asn1/nsseq.c',
'openssl/crypto/asn1/p5_pbe.c',
'openssl/crypto/asn1/p5_pbev2.c',
'openssl/crypto/asn1/p5_scrypt.c',
'openssl/crypto/asn1/p8_pkey.c',
'openssl/crypto/asn1/t_bitst.c',
'openssl/crypto/asn1/t_pkey.c',
'openssl/crypto/asn1/t_spki.c',
'openssl/crypto/asn1/tasn_dec.c',
'openssl/crypto/asn1/tasn_enc.c',
'openssl/crypto/asn1/tasn_fre.c',
'openssl/crypto/asn1/tasn_new.c',
'openssl/crypto/asn1/tasn_prn.c',
'openssl/crypto/asn1/tasn_scn.c',
'openssl/crypto/asn1/tasn_typ.c',
'openssl/crypto/asn1/tasn_utl.c',
'openssl/crypto/asn1/x_algor.c',
'openssl/crypto/asn1/x_bignum.c',
'openssl/crypto/asn1/x_info.c',
'openssl/crypto/asn1/x_int64.c',
'openssl/crypto/asn1/x_long.c',
'openssl/crypto/asn1/x_pkey.c',
'openssl/crypto/asn1/x_sig.c',
'openssl/crypto/asn1/x_spki.c',
'openssl/crypto/asn1/x_val.c',
'openssl/crypto/async/arch/async_null.c',
'openssl/crypto/async/arch/async_posix.c',
'openssl/crypto/async/arch/async_win.c',
'openssl/crypto/async/async.c',
'openssl/crypto/async/async_err.c',
'openssl/crypto/async/async_wait.c',
'openssl/crypto/bf/bf_cfb64.c',
'openssl/crypto/bf/bf_ecb.c',
'openssl/crypto/bf/bf_enc.c',
'openssl/crypto/bf/bf_ofb64.c',
'openssl/crypto/bf/bf_skey.c',
'openssl/crypto/bio/b_addr.c',
'openssl/crypto/bio/b_dump.c',
'openssl/crypto/bio/b_print.c',
'openssl/crypto/bio/b_sock.c',
'openssl/crypto/bio/b_sock2.c',
'openssl/crypto/bio/bf_buff.c',
'openssl/crypto/bio/bf_lbuf.c',
'openssl/crypto/bio/bf_nbio.c',
'openssl/crypto/bio/bf_null.c',
'openssl/crypto/bio/bio_cb.c',
'openssl/crypto/bio/bio_err.c',
'openssl/crypto/bio/bio_lib.c',
'openssl/crypto/bio/bio_meth.c',
'openssl/crypto/bio/bss_acpt.c',
'openssl/crypto/bio/bss_bio.c',
'openssl/crypto/bio/bss_conn.c',
'openssl/crypto/bio/bss_dgram.c',
'openssl/crypto/bio/bss_fd.c',
'openssl/crypto/bio/bss_file.c',
'openssl/crypto/bio/bss_log.c',
'openssl/crypto/bio/bss_mem.c',
'openssl/crypto/bio/bss_null.c',
'openssl/crypto/bio/bss_sock.c',
'openssl/crypto/blake2/blake2b.c',
'openssl/crypto/blake2/blake2s.c',
'openssl/crypto/blake2/m_blake2b.c',
'openssl/crypto/blake2/m_blake2s.c',
'openssl/crypto/bn/asm/x86_64-gcc.c',
'openssl/crypto/bn/bn_add.c',
'openssl/crypto/bn/bn_blind.c',
'openssl/crypto/bn/bn_const.c',
'openssl/crypto/bn/bn_ctx.c',
'openssl/crypto/bn/bn_depr.c',
'openssl/crypto/bn/bn_dh.c',
'openssl/crypto/bn/bn_div.c',
'openssl/crypto/bn/bn_err.c',
'openssl/crypto/bn/bn_exp.c',
'openssl/crypto/bn/bn_exp2.c',
'openssl/crypto/bn/bn_gcd.c',
'openssl/crypto/bn/bn_gf2m.c',
'openssl/crypto/bn/bn_intern.c',
'openssl/crypto/bn/bn_kron.c',
'openssl/crypto/bn/bn_lib.c',
'openssl/crypto/bn/bn_mod.c',
'openssl/crypto/bn/bn_mont.c',
'openssl/crypto/bn/bn_mpi.c',
'openssl/crypto/bn/bn_mul.c',
'openssl/crypto/bn/bn_nist.c',
'openssl/crypto/bn/bn_prime.c',
'openssl/crypto/bn/bn_print.c',
'openssl/crypto/bn/bn_rand.c',
'openssl/crypto/bn/bn_recp.c',
'openssl/crypto/bn/bn_shift.c',
'openssl/crypto/bn/bn_sqr.c',
'openssl/crypto/bn/bn_sqrt.c',
'openssl/crypto/bn/bn_srp.c',
'openssl/crypto/bn/bn_word.c',
'openssl/crypto/bn/bn_x931p.c',
'openssl/crypto/bn/rsaz_exp.c',
'openssl/crypto/buffer/buf_err.c',
'openssl/crypto/buffer/buffer.c',
'openssl/crypto/camellia/cmll_cfb.c',
'openssl/crypto/camellia/cmll_ctr.c',
'openssl/crypto/camellia/cmll_ecb.c',
'openssl/crypto/camellia/cmll_misc.c',
'openssl/crypto/camellia/cmll_ofb.c',
'openssl/crypto/cast/c_cfb64.c',
'openssl/crypto/cast/c_ecb.c',
'openssl/crypto/cast/c_enc.c',
'openssl/crypto/cast/c_ofb64.c',
'openssl/crypto/cast/c_skey.c',
'openssl/crypto/cmac/cm_ameth.c',
'openssl/crypto/cmac/cm_pmeth.c',
'openssl/crypto/cmac/cmac.c',
'openssl/crypto/cms/cms_asn1.c',
'openssl/crypto/cms/cms_att.c',
'openssl/crypto/cms/cms_cd.c',
'openssl/crypto/cms/cms_dd.c',
'openssl/crypto/cms/cms_enc.c',
'openssl/crypto/cms/cms_env.c',
'openssl/crypto/cms/cms_err.c',
'openssl/crypto/cms/cms_ess.c',
'openssl/crypto/cms/cms_io.c',
'openssl/crypto/cms/cms_kari.c',
'openssl/crypto/cms/cms_lib.c',
'openssl/crypto/cms/cms_pwri.c',
'openssl/crypto/cms/cms_sd.c',
'openssl/crypto/cms/cms_smime.c',
'openssl/crypto/conf/conf_api.c',
'openssl/crypto/conf/conf_def.c',
'openssl/crypto/conf/conf_err.c',
'openssl/crypto/conf/conf_lib.c',
'openssl/crypto/conf/conf_mall.c',
'openssl/crypto/conf/conf_mod.c',
'openssl/crypto/conf/conf_sap.c',
'openssl/crypto/cpt_err.c',
'openssl/crypto/cryptlib.c',
'openssl/crypto/ct/ct_b64.c',
'openssl/crypto/ct/ct_err.c',
'openssl/crypto/ct/ct_log.c',
'openssl/crypto/ct/ct_oct.c',
'openssl/crypto/ct/ct_policy.c',
'openssl/crypto/ct/ct_prn.c',
'openssl/crypto/ct/ct_sct.c',
'openssl/crypto/ct/ct_sct_ctx.c',
'openssl/crypto/ct/ct_vfy.c',
'openssl/crypto/ct/ct_x509v3.c',
'openssl/crypto/cversion.c',
'openssl/crypto/des/cbc_cksm.c',
'openssl/crypto/des/cbc_enc.c',
'openssl/crypto/des/cfb64ede.c',
'openssl/crypto/des/cfb64enc.c',
'openssl/crypto/des/cfb_enc.c',
'openssl/crypto/des/des_enc.c',
'openssl/crypto/des/ecb3_enc.c',
'openssl/crypto/des/ecb_enc.c',
'openssl/crypto/des/fcrypt.c',
'openssl/crypto/des/fcrypt_b.c',
'openssl/crypto/des/ofb64ede.c',
'openssl/crypto/des/ofb64enc.c',
'openssl/crypto/des/ofb_enc.c',
'openssl/crypto/des/pcbc_enc.c',
'openssl/crypto/des/qud_cksm.c',
'openssl/crypto/des/rand_key.c',
'openssl/crypto/des/rpc_enc.c',
'openssl/crypto/des/set_key.c',
'openssl/crypto/des/str2key.c',
'openssl/crypto/des/xcbc_enc.c',
'openssl/crypto/dh/dh_ameth.c',
'openssl/crypto/dh/dh_asn1.c',
'openssl/crypto/dh/dh_check.c',
'openssl/crypto/dh/dh_depr.c',
'openssl/crypto/dh/dh_err.c',
'openssl/crypto/dh/dh_gen.c',
'openssl/crypto/dh/dh_kdf.c',
'openssl/crypto/dh/dh_key.c',
'openssl/crypto/dh/dh_lib.c',
'openssl/crypto/dh/dh_meth.c',
'openssl/crypto/dh/dh_pmeth.c',
'openssl/crypto/dh/dh_prn.c',
'openssl/crypto/dh/dh_rfc5114.c',
'openssl/crypto/dsa/dsa_ameth.c',
'openssl/crypto/dsa/dsa_asn1.c',
'openssl/crypto/dsa/dsa_depr.c',
'openssl/crypto/dsa/dsa_err.c',
'openssl/crypto/dsa/dsa_gen.c',
'openssl/crypto/dsa/dsa_key.c',
'openssl/crypto/dsa/dsa_lib.c',
'openssl/crypto/dsa/dsa_meth.c',
'openssl/crypto/dsa/dsa_ossl.c',
'openssl/crypto/dsa/dsa_pmeth.c',
'openssl/crypto/dsa/dsa_prn.c',
'openssl/crypto/dsa/dsa_sign.c',
'openssl/crypto/dsa/dsa_vrf.c',
'openssl/crypto/dso/dso_dl.c',
'openssl/crypto/dso/dso_dlfcn.c',
'openssl/crypto/dso/dso_err.c',
'openssl/crypto/dso/dso_lib.c',
'openssl/crypto/dso/dso_openssl.c',
'openssl/crypto/dso/dso_vms.c',
'openssl/crypto/dso/dso_win32.c',
'openssl/crypto/ebcdic.c',
'openssl/crypto/ec/curve25519.c',
'openssl/crypto/ec/ec2_mult.c',
'openssl/crypto/ec/ec2_oct.c',
'openssl/crypto/ec/ec2_smpl.c',
'openssl/crypto/ec/ec_ameth.c',
'openssl/crypto/ec/ec_asn1.c',
'openssl/crypto/ec/ec_check.c',
'openssl/crypto/ec/ec_curve.c',
'openssl/crypto/ec/ec_cvt.c',
'openssl/crypto/ec/ec_err.c',
'openssl/crypto/ec/ec_key.c',
'openssl/crypto/ec/ec_kmeth.c',
'openssl/crypto/ec/ec_lib.c',
'openssl/crypto/ec/ec_mult.c',
'openssl/crypto/ec/ec_oct.c',
'openssl/crypto/ec/ec_pmeth.c',
'openssl/crypto/ec/ec_print.c',
'openssl/crypto/ec/ecdh_kdf.c',
'openssl/crypto/ec/ecdh_ossl.c',
'openssl/crypto/ec/ecdsa_ossl.c',
'openssl/crypto/ec/ecdsa_sign.c',
'openssl/crypto/ec/ecdsa_vrf.c',
'openssl/crypto/ec/eck_prn.c',
'openssl/crypto/ec/ecp_mont.c',
'openssl/crypto/ec/ecp_nist.c',
'openssl/crypto/ec/ecp_nistp224.c',
'openssl/crypto/ec/ecp_nistp256.c',
'openssl/crypto/ec/ecp_nistp521.c',
'openssl/crypto/ec/ecp_nistputil.c',
'openssl/crypto/ec/ecp_nistz256.c',
'openssl/crypto/ec/ecp_oct.c',
'openssl/crypto/ec/ecp_smpl.c',
'openssl/crypto/ec/ecx_meth.c',
'openssl/crypto/engine/eng_all.c',
'openssl/crypto/engine/eng_cnf.c',
'openssl/crypto/engine/eng_cryptodev.c',
'openssl/crypto/engine/eng_ctrl.c',
'openssl/crypto/engine/eng_dyn.c',
'openssl/crypto/engine/eng_err.c',
'openssl/crypto/engine/eng_fat.c',
'openssl/crypto/engine/eng_init.c',
'openssl/crypto/engine/eng_lib.c',
'openssl/crypto/engine/eng_list.c',
'openssl/crypto/engine/eng_openssl.c',
'openssl/crypto/engine/eng_pkey.c',
'openssl/crypto/engine/eng_rdrand.c',
'openssl/crypto/engine/eng_table.c',
'openssl/crypto/engine/tb_asnmth.c',
'openssl/crypto/engine/tb_cipher.c',
'openssl/crypto/engine/tb_dh.c',
'openssl/crypto/engine/tb_digest.c',
'openssl/crypto/engine/tb_dsa.c',
'openssl/crypto/engine/tb_eckey.c',
'openssl/crypto/engine/tb_pkmeth.c',
'openssl/crypto/engine/tb_rand.c',
'openssl/crypto/engine/tb_rsa.c',
'openssl/crypto/err/err.c',
'openssl/crypto/err/err_all.c',
'openssl/crypto/err/err_prn.c',
'openssl/crypto/evp/bio_b64.c',
'openssl/crypto/evp/bio_enc.c',
'openssl/crypto/evp/bio_md.c',
'openssl/crypto/evp/bio_ok.c',
'openssl/crypto/evp/c_allc.c',
'openssl/crypto/evp/c_alld.c',
'openssl/crypto/evp/cmeth_lib.c',
'openssl/crypto/evp/digest.c',
'openssl/crypto/evp/e_aes.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha1.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha256.c',
'openssl/crypto/evp/e_bf.c',
'openssl/crypto/evp/e_camellia.c',
'openssl/crypto/evp/e_cast.c',
'openssl/crypto/evp/e_chacha20_poly1305.c',
'openssl/crypto/evp/e_des.c',
'openssl/crypto/evp/e_des3.c',
'openssl/crypto/evp/e_idea.c',
'openssl/crypto/evp/e_null.c',
'openssl/crypto/evp/e_old.c',
'openssl/crypto/evp/e_rc2.c',
'openssl/crypto/evp/e_rc4.c',
'openssl/crypto/evp/e_rc4_hmac_md5.c',
'openssl/crypto/evp/e_rc5.c',
'openssl/crypto/evp/e_seed.c',
'openssl/crypto/evp/e_xcbc_d.c',
'openssl/crypto/evp/encode.c',
'openssl/crypto/evp/evp_cnf.c',
'openssl/crypto/evp/evp_enc.c',
'openssl/crypto/evp/evp_err.c',
'openssl/crypto/evp/evp_key.c',
'openssl/crypto/evp/evp_lib.c',
'openssl/crypto/evp/evp_pbe.c',
'openssl/crypto/evp/evp_pkey.c',
'openssl/crypto/evp/m_md2.c',
'openssl/crypto/evp/m_md4.c',
'openssl/crypto/evp/m_md5.c',
'openssl/crypto/evp/m_md5_sha1.c',
'openssl/crypto/evp/m_mdc2.c',
'openssl/crypto/evp/m_null.c',
'openssl/crypto/evp/m_ripemd.c',
'openssl/crypto/evp/m_sha1.c',
'openssl/crypto/evp/m_sigver.c',
'openssl/crypto/evp/m_wp.c',
'openssl/crypto/evp/names.c',
'openssl/crypto/evp/p5_crpt.c',
'openssl/crypto/evp/p5_crpt2.c',
'openssl/crypto/evp/p_dec.c',
'openssl/crypto/evp/p_enc.c',
'openssl/crypto/evp/p_lib.c',
'openssl/crypto/evp/p_open.c',
'openssl/crypto/evp/p_seal.c',
'openssl/crypto/evp/p_sign.c',
'openssl/crypto/evp/p_verify.c',
'openssl/crypto/evp/pmeth_fn.c',
'openssl/crypto/evp/pmeth_gn.c',
'openssl/crypto/evp/pmeth_lib.c',
'openssl/crypto/evp/scrypt.c',
'openssl/crypto/ex_data.c',
'openssl/crypto/hmac/hm_ameth.c',
'openssl/crypto/hmac/hm_pmeth.c',
'openssl/crypto/hmac/hmac.c',
'openssl/crypto/idea/i_cbc.c',
'openssl/crypto/idea/i_cfb64.c',
'openssl/crypto/idea/i_ecb.c',
'openssl/crypto/idea/i_ofb64.c',
'openssl/crypto/idea/i_skey.c',
'openssl/crypto/init.c',
'openssl/crypto/kdf/hkdf.c',
'openssl/crypto/kdf/kdf_err.c',
'openssl/crypto/kdf/tls1_prf.c',
'openssl/crypto/lhash/lh_stats.c',
'openssl/crypto/lhash/lhash.c',
'openssl/crypto/md4/md4_dgst.c',
'openssl/crypto/md4/md4_one.c',
'openssl/crypto/md5/md5_dgst.c',
'openssl/crypto/md5/md5_one.c',
'openssl/crypto/mdc2/mdc2_one.c',
'openssl/crypto/mdc2/mdc2dgst.c',
'openssl/crypto/mem.c',
'openssl/crypto/mem_dbg.c',
'openssl/crypto/mem_sec.c',
'openssl/crypto/modes/cbc128.c',
'openssl/crypto/modes/ccm128.c',
'openssl/crypto/modes/cfb128.c',
'openssl/crypto/modes/ctr128.c',
'openssl/crypto/modes/cts128.c',
'openssl/crypto/modes/gcm128.c',
'openssl/crypto/modes/ocb128.c',
'openssl/crypto/modes/ofb128.c',
'openssl/crypto/modes/wrap128.c',
'openssl/crypto/modes/xts128.c',
'openssl/crypto/o_dir.c',
'openssl/crypto/o_fips.c',
'openssl/crypto/o_fopen.c',
'openssl/crypto/o_init.c',
'openssl/crypto/o_str.c',
'openssl/crypto/o_time.c',
'openssl/crypto/objects/o_names.c',
'openssl/crypto/objects/obj_dat.c',
'openssl/crypto/objects/obj_err.c',
'openssl/crypto/objects/obj_lib.c',
'openssl/crypto/objects/obj_xref.c',
'openssl/crypto/ocsp/ocsp_asn.c',
'openssl/crypto/ocsp/ocsp_cl.c',
'openssl/crypto/ocsp/ocsp_err.c',
'openssl/crypto/ocsp/ocsp_ext.c',
'openssl/crypto/ocsp/ocsp_ht.c',
'openssl/crypto/ocsp/ocsp_lib.c',
'openssl/crypto/ocsp/ocsp_prn.c',
'openssl/crypto/ocsp/ocsp_srv.c',
'openssl/crypto/ocsp/ocsp_vfy.c',
'openssl/crypto/ocsp/v3_ocsp.c',
'openssl/crypto/pem/pem_all.c',
'openssl/crypto/pem/pem_err.c',
'openssl/crypto/pem/pem_info.c',
'openssl/crypto/pem/pem_lib.c',
'openssl/crypto/pem/pem_oth.c',
'openssl/crypto/pem/pem_pk8.c',
'openssl/crypto/pem/pem_pkey.c',
'openssl/crypto/pem/pem_sign.c',
'openssl/crypto/pem/pem_x509.c',
'openssl/crypto/pem/pem_xaux.c',
'openssl/crypto/pem/pvkfmt.c',
'openssl/crypto/pkcs12/p12_add.c',
'openssl/crypto/pkcs12/p12_asn.c',
'openssl/crypto/pkcs12/p12_attr.c',
'openssl/crypto/pkcs12/p12_crpt.c',
'openssl/crypto/pkcs12/p12_crt.c',
'openssl/crypto/pkcs12/p12_decr.c',
'openssl/crypto/pkcs12/p12_init.c',
'openssl/crypto/pkcs12/p12_key.c',
'openssl/crypto/pkcs12/p12_kiss.c',
'openssl/crypto/pkcs12/p12_mutl.c',
'openssl/crypto/pkcs12/p12_npas.c',
'openssl/crypto/pkcs12/p12_p8d.c',
'openssl/crypto/pkcs12/p12_p8e.c',
'openssl/crypto/pkcs12/p12_sbag.c',
'openssl/crypto/pkcs12/p12_utl.c',
'openssl/crypto/pkcs12/pk12err.c',
'openssl/crypto/pkcs7/bio_pk7.c',
'openssl/crypto/pkcs7/pk7_asn1.c',
'openssl/crypto/pkcs7/pk7_attr.c',
'openssl/crypto/pkcs7/pk7_doit.c',
'openssl/crypto/pkcs7/pk7_lib.c',
'openssl/crypto/pkcs7/pk7_mime.c',
'openssl/crypto/pkcs7/pk7_smime.c',
'openssl/crypto/pkcs7/pkcs7err.c',
'openssl/crypto/poly1305/poly1305.c',
'openssl/crypto/rand/md_rand.c',
'openssl/crypto/rand/rand_egd.c',
'openssl/crypto/rand/rand_err.c',
'openssl/crypto/rand/rand_lib.c',
'openssl/crypto/rand/rand_unix.c',
'openssl/crypto/rand/rand_vms.c',
'openssl/crypto/rand/rand_win.c',
'openssl/crypto/rand/randfile.c',
'openssl/crypto/rc2/rc2_cbc.c',
'openssl/crypto/rc2/rc2_ecb.c',
'openssl/crypto/rc2/rc2_skey.c',
'openssl/crypto/rc2/rc2cfb64.c',
'openssl/crypto/rc2/rc2ofb64.c',
'openssl/crypto/ripemd/rmd_dgst.c',
'openssl/crypto/ripemd/rmd_one.c',
'openssl/crypto/rsa/rsa_ameth.c',
'openssl/crypto/rsa/rsa_asn1.c',
'openssl/crypto/rsa/rsa_chk.c',
'openssl/crypto/rsa/rsa_crpt.c',
'openssl/crypto/rsa/rsa_depr.c',
'openssl/crypto/rsa/rsa_err.c',
'openssl/crypto/rsa/rsa_gen.c',
'openssl/crypto/rsa/rsa_lib.c',
'openssl/crypto/rsa/rsa_meth.c',
'openssl/crypto/rsa/rsa_none.c',
'openssl/crypto/rsa/rsa_null.c',
'openssl/crypto/rsa/rsa_oaep.c',
'openssl/crypto/rsa/rsa_ossl.c',
'openssl/crypto/rsa/rsa_pk1.c',
'openssl/crypto/rsa/rsa_pmeth.c',
'openssl/crypto/rsa/rsa_prn.c',
'openssl/crypto/rsa/rsa_pss.c',
'openssl/crypto/rsa/rsa_saos.c',
'openssl/crypto/rsa/rsa_sign.c',
'openssl/crypto/rsa/rsa_ssl.c',
'openssl/crypto/rsa/rsa_x931.c',
'openssl/crypto/rsa/rsa_x931g.c',
'openssl/crypto/seed/seed.c',
'openssl/crypto/seed/seed_cbc.c',
'openssl/crypto/seed/seed_cfb.c',
'openssl/crypto/seed/seed_ecb.c',
'openssl/crypto/seed/seed_ofb.c',
'openssl/crypto/sha/sha1_one.c',
'openssl/crypto/sha/sha1dgst.c',
'openssl/crypto/sha/sha256.c',
'openssl/crypto/sha/sha512.c',
'openssl/crypto/srp/srp_lib.c',
'openssl/crypto/srp/srp_vfy.c',
'openssl/crypto/stack/stack.c',
'openssl/crypto/threads_none.c',
'openssl/crypto/threads_pthread.c',
'openssl/crypto/threads_win.c',
'openssl/crypto/ts/ts_asn1.c',
'openssl/crypto/ts/ts_conf.c',
'openssl/crypto/ts/ts_err.c',
'openssl/crypto/ts/ts_lib.c',
'openssl/crypto/ts/ts_req_print.c',
'openssl/crypto/ts/ts_req_utils.c',
'openssl/crypto/ts/ts_rsp_print.c',
'openssl/crypto/ts/ts_rsp_sign.c',
'openssl/crypto/ts/ts_rsp_utils.c',
'openssl/crypto/ts/ts_rsp_verify.c',
'openssl/crypto/ts/ts_verify_ctx.c',
'openssl/crypto/txt_db/txt_db.c',
'openssl/crypto/ui/ui_err.c',
'openssl/crypto/ui/ui_lib.c',
'openssl/crypto/ui/ui_openssl.c',
'openssl/crypto/ui/ui_util.c',
'openssl/crypto/uid.c',
'openssl/crypto/whrlpool/wp_dgst.c',
'openssl/crypto/x509/by_dir.c',
'openssl/crypto/x509/by_file.c',
'openssl/crypto/x509/t_crl.c',
'openssl/crypto/x509/t_req.c',
'openssl/crypto/x509/t_x509.c',
'openssl/crypto/x509/x509_att.c',
'openssl/crypto/x509/x509_cmp.c',
'openssl/crypto/x509/x509_d2.c',
'openssl/crypto/x509/x509_def.c',
'openssl/crypto/x509/x509_err.c',
'openssl/crypto/x509/x509_ext.c',
'openssl/crypto/x509/x509_lu.c',
'openssl/crypto/x509/x509_obj.c',
'openssl/crypto/x509/x509_r2x.c',
'openssl/crypto/x509/x509_req.c',
'openssl/crypto/x509/x509_set.c',
'openssl/crypto/x509/x509_trs.c',
'openssl/crypto/x509/x509_txt.c',
'openssl/crypto/x509/x509_v3.c',
'openssl/crypto/x509/x509_vfy.c',
'openssl/crypto/x509/x509_vpm.c',
'openssl/crypto/x509/x509cset.c',
'openssl/crypto/x509/x509name.c',
'openssl/crypto/x509/x509rset.c',
'openssl/crypto/x509/x509spki.c',
'openssl/crypto/x509/x509type.c',
'openssl/crypto/x509/x_all.c',
'openssl/crypto/x509/x_attrib.c',
'openssl/crypto/x509/x_crl.c',
'openssl/crypto/x509/x_exten.c',
'openssl/crypto/x509/x_name.c',
'openssl/crypto/x509/x_pubkey.c',
'openssl/crypto/x509/x_req.c',
'openssl/crypto/x509/x_x509.c',
'openssl/crypto/x509/x_x509a.c',
'openssl/crypto/x509v3/pcy_cache.c',
'openssl/crypto/x509v3/pcy_data.c',
'openssl/crypto/x509v3/pcy_lib.c',
'openssl/crypto/x509v3/pcy_map.c',
'openssl/crypto/x509v3/pcy_node.c',
'openssl/crypto/x509v3/pcy_tree.c',
'openssl/crypto/x509v3/v3_addr.c',
'openssl/crypto/x509v3/v3_akey.c',
'openssl/crypto/x509v3/v3_akeya.c',
'openssl/crypto/x509v3/v3_alt.c',
'openssl/crypto/x509v3/v3_asid.c',
'openssl/crypto/x509v3/v3_bcons.c',
'openssl/crypto/x509v3/v3_bitst.c',
'openssl/crypto/x509v3/v3_conf.c',
'openssl/crypto/x509v3/v3_cpols.c',
'openssl/crypto/x509v3/v3_crld.c',
'openssl/crypto/x509v3/v3_enum.c',
'openssl/crypto/x509v3/v3_extku.c',
'openssl/crypto/x509v3/v3_genn.c',
'openssl/crypto/x509v3/v3_ia5.c',
'openssl/crypto/x509v3/v3_info.c',
'openssl/crypto/x509v3/v3_int.c',
'openssl/crypto/x509v3/v3_lib.c',
'openssl/crypto/x509v3/v3_ncons.c',
'openssl/crypto/x509v3/v3_pci.c',
'openssl/crypto/x509v3/v3_pcia.c',
'openssl/crypto/x509v3/v3_pcons.c',
'openssl/crypto/x509v3/v3_pku.c',
'openssl/crypto/x509v3/v3_pmaps.c',
'openssl/crypto/x509v3/v3_prn.c',
'openssl/crypto/x509v3/v3_purp.c',
'openssl/crypto/x509v3/v3_skey.c',
'openssl/crypto/x509v3/v3_sxnet.c',
'openssl/crypto/x509v3/v3_tlsf.c',
'openssl/crypto/x509v3/v3_utl.c',
'openssl/crypto/x509v3/v3err.c',
'openssl/engines/e_capi.c',
'openssl/engines/e_padlock.c',
],
'openssl_sources_BSD-x86_64': [
'./config/archs/BSD-x86_64/asm/crypto/aes/aes-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/aesni-mb-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/aesni-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/bsaes-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/aes/vpaes-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/bn/rsaz-avx2.s',
'./config/archs/BSD-x86_64/asm/crypto/bn/rsaz-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/bn/x86_64-gf2m.s',
'./config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont.s',
'./config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont5.s',
'./config/archs/BSD-x86_64/asm/crypto/camellia/cmll-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/chacha/chacha-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/md5/md5-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/modes/ghash-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/poly1305/poly1305-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/rc4/rc4-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/sha/sha1-mb-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/sha/sha1-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/sha/sha256-mb-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/sha/sha256-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/sha/sha512-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/whrlpool/wp-x86_64.s',
'./config/archs/BSD-x86_64/asm/crypto/x86_64cpuid.s',
'./config/archs/BSD-x86_64/asm/engines/e_padlock-x86_64.s',
],
'openssl_defines_BSD-x86_64': [
'DSO_DLFCN',
'HAVE_DLFCN_H',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
'OPENSSL_IA32_SSE2',
'OPENSSL_BN_ASM_MONT',
'OPENSSL_BN_ASM_MONT5',
'OPENSSL_BN_ASM_GF2m',
'SHA1_ASM',
'SHA256_ASM',
'SHA512_ASM',
'RC4_ASM',
'MD5_ASM',
'AES_ASM',
'VPAES_ASM',
'BSAES_ASM',
'GHASH_ASM',
'ECP_NISTZ256_ASM',
'PADLOCK_ASM',
'POLY1305_ASM',
],
'openssl_cflags_BSD-x86_64': [
'-DL_ENDIAN -Wall -O3 -pthread -D_THREAD_SAFE -D_REENTRANT',
],
'openssl_ex_libs_BSD-x86_64': [
'',
],
},
'include_dirs': [
'.',
'./include',
'./crypto',
'./crypto/include/internal',
],
'defines': ['<@(openssl_defines_BSD-x86_64)'],
'cflags' : ['<@(openssl_cflags_BSD-x86_64)'],
'libraries': ['<@(openssl_ex_libs_BSD-x86_64)'],
'sources': ['<@(openssl_sources)', '<@(openssl_sources_BSD-x86_64)'],
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,23 @@
/* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
#define CFLAGS cflags
/*
* Generate CFLAGS as an array of individual characters. This is a
* workaround for the situation where CFLAGS gets too long for a C90 string
* literal
*/
static const char cflags[] = {
'c','o','m','p','i','l','e','r',':',' ','c','c',' ','-','D','D',
'S','O','_','D','L','F','C','N',' ','-','D','H','A','V','E','_',
'D','L','F','C','N','_','H',' ','-','D','N','D','E','B','U','G',
' ','-','D','O','P','E','N','S','S','L','_','T','H','R','E','A',
'D','S',' ','-','D','O','P','E','N','S','S','L','_','N','O','_',
'D','Y','N','A','M','I','C','_','E','N','G','I','N','E',' ','-',
'D','O','P','E','N','S','S','L','_','P','I','C',' ','-','D','O',
'P','E','N','S','S','L','D','I','R','=','"','\\','"','/','u','s',
'r','/','l','o','c','a','l','/','s','s','l','\\','"','"',' ','-',
'D','E','N','G','I','N','E','S','D','I','R','=','"','\\','"','/',
'u','s','r','/','l','o','c','a','l','/','l','i','b','/','e','n',
'g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0'
};
#define PLATFORM "platform: BSD-x86_64"
#define DATE "built on: Tue Apr 3 00:38:16 2018"
@@ -0,0 +1,28 @@
/* WARNING: do not edit! */
/* Generated by Makefile from crypto/include/internal/bn_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_BN_CONF_H
# define HEADER_BN_CONF_H
/*
* The contents of this file are not used in the UEFI build, as
* both 32-bit and 64-bit builds are supported from a single run
* of the Configure script.
*/
/* Should we define BN_DIV2W here? */
/* Only one for the following should be defined */
#define SIXTY_FOUR_BIT_LONG
#undef SIXTY_FOUR_BIT
#undef THIRTY_TWO_BIT
#endif
@@ -0,0 +1,16 @@
/* WARNING: do not edit! */
/* Generated by Makefile from crypto/include/internal/dso_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_DSO_CONF_H
# define HEADER_DSO_CONF_H
# define DSO_EXTENSION ".so"
#endif
@@ -0,0 +1,178 @@
/*
* WARNING: do not edit!
* Generated by Makefile from include/openssl/opensslconf.h.in
*
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
#ifdef __cplusplus
extern "C" {
#endif
#ifdef OPENSSL_ALGORITHM_DEFINES
# error OPENSSL_ALGORITHM_DEFINES no longer supported
#endif
/*
* OpenSSL was configured with the following options:
*/
#ifndef OPENSSL_NO_COMP
# define OPENSSL_NO_COMP
#endif
#ifndef OPENSSL_NO_MD2
# define OPENSSL_NO_MD2
#endif
#ifndef OPENSSL_NO_RC5
# define OPENSSL_NO_RC5
#endif
#ifndef OPENSSL_THREADS
# define OPENSSL_THREADS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
#ifndef OPENSSL_NO_ASAN
# define OPENSSL_NO_ASAN
#endif
#ifndef OPENSSL_NO_ASM
# define OPENSSL_NO_ASM
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG
# define OPENSSL_NO_CRYPTO_MDEBUG
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
#endif
#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
# define OPENSSL_NO_EC_NISTP_64_GCC_128
#endif
#ifndef OPENSSL_NO_EGD
# define OPENSSL_NO_EGD
#endif
#ifndef OPENSSL_NO_FUZZ_AFL
# define OPENSSL_NO_FUZZ_AFL
#endif
#ifndef OPENSSL_NO_FUZZ_LIBFUZZER
# define OPENSSL_NO_FUZZ_LIBFUZZER
#endif
#ifndef OPENSSL_NO_HEARTBEATS
# define OPENSSL_NO_HEARTBEATS
#endif
#ifndef OPENSSL_NO_MSAN
# define OPENSSL_NO_MSAN
#endif
#ifndef OPENSSL_NO_SCTP
# define OPENSSL_NO_SCTP
#endif
#ifndef OPENSSL_NO_SSL_TRACE
# define OPENSSL_NO_SSL_TRACE
#endif
#ifndef OPENSSL_NO_SSL3
# define OPENSSL_NO_SSL3
#endif
#ifndef OPENSSL_NO_SSL3_METHOD
# define OPENSSL_NO_SSL3_METHOD
#endif
#ifndef OPENSSL_NO_UBSAN
# define OPENSSL_NO_UBSAN
#endif
#ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
#endif
#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
# define OPENSSL_NO_WEAK_SSL_CIPHERS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
/*
* Sometimes OPENSSSL_NO_xxx ends up with an empty file and some compilers
* don't like that. This will hopefully silence them.
*/
#define NON_EMPTY_TRANSLATION_UNIT static void *dummy = &dummy;
/*
* Applications should use -DOPENSSL_API_COMPAT=<version> to suppress the
* declarations of functions deprecated in or before <version>. Otherwise, they
* still won't see them if the library has been built to disable deprecated
* functions.
*/
#if defined(OPENSSL_NO_DEPRECATED)
# define DECLARE_DEPRECATED(f)
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
#else
# define DECLARE_DEPRECATED(f) f;
#endif
#ifndef OPENSSL_FILE
# ifdef OPENSSL_NO_FILENAMES
# define OPENSSL_FILE ""
# define OPENSSL_LINE 0
# else
# define OPENSSL_FILE __FILE__
# define OPENSSL_LINE __LINE__
# endif
#endif
#ifndef OPENSSL_MIN_API
# define OPENSSL_MIN_API 0
#endif
#if !defined(OPENSSL_API_COMPAT) || OPENSSL_API_COMPAT < OPENSSL_MIN_API
# undef OPENSSL_API_COMPAT
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
#endif
#if OPENSSL_API_COMPAT < 0x10100000L
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_1_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x10000000L
# define DEPRECATEDIN_1_0_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_0_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x00908000L
# define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_0_9_8(f)
#endif
/* Generate 80386 code? */
#undef I386_ONLY
#undef OPENSSL_UNISTD
#define OPENSSL_UNISTD <unistd.h>
#undef OPENSSL_EXPORT_VAR_AS_FUNCTION
/*
* The following are cipher-specific, but are part of the public API.
*/
#if !defined(OPENSSL_SYS_UEFI)
# undef BN_LLONG
/* Only one for the following should be defined */
# define SIXTY_FOUR_BIT_LONG
# undef SIXTY_FOUR_BIT
# undef THIRTY_TWO_BIT
#endif
#define RC4_INT unsigned int
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,418 @@
/*
* WARNING: do not edit!
* Generated by apps/progs.pl
*
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
typedef enum FUNC_TYPE {
FT_none, FT_general, FT_md, FT_cipher, FT_pkey,
FT_md_alg, FT_cipher_alg
} FUNC_TYPE;
typedef struct function_st {
FUNC_TYPE type;
const char *name;
int (*func)(int argc, char *argv[]);
const OPTIONS *help;
} FUNCTION;
DEFINE_LHASH_OF(FUNCTION);
extern int asn1parse_main(int argc, char *argv[]);
extern int ca_main(int argc, char *argv[]);
extern int ciphers_main(int argc, char *argv[]);
extern int cms_main(int argc, char *argv[]);
extern int crl_main(int argc, char *argv[]);
extern int crl2pkcs7_main(int argc, char *argv[]);
extern int dgst_main(int argc, char *argv[]);
extern int dhparam_main(int argc, char *argv[]);
extern int dsa_main(int argc, char *argv[]);
extern int dsaparam_main(int argc, char *argv[]);
extern int ec_main(int argc, char *argv[]);
extern int ecparam_main(int argc, char *argv[]);
extern int enc_main(int argc, char *argv[]);
extern int engine_main(int argc, char *argv[]);
extern int errstr_main(int argc, char *argv[]);
extern int exit_main(int argc, char *argv[]);
extern int gendsa_main(int argc, char *argv[]);
extern int genpkey_main(int argc, char *argv[]);
extern int genrsa_main(int argc, char *argv[]);
extern int help_main(int argc, char *argv[]);
extern int list_main(int argc, char *argv[]);
extern int nseq_main(int argc, char *argv[]);
extern int ocsp_main(int argc, char *argv[]);
extern int passwd_main(int argc, char *argv[]);
extern int pkcs12_main(int argc, char *argv[]);
extern int pkcs7_main(int argc, char *argv[]);
extern int pkcs8_main(int argc, char *argv[]);
extern int pkey_main(int argc, char *argv[]);
extern int pkeyparam_main(int argc, char *argv[]);
extern int pkeyutl_main(int argc, char *argv[]);
extern int prime_main(int argc, char *argv[]);
extern int rand_main(int argc, char *argv[]);
extern int rehash_main(int argc, char *argv[]);
extern int req_main(int argc, char *argv[]);
extern int rsa_main(int argc, char *argv[]);
extern int rsautl_main(int argc, char *argv[]);
extern int s_client_main(int argc, char *argv[]);
extern int s_server_main(int argc, char *argv[]);
extern int s_time_main(int argc, char *argv[]);
extern int sess_id_main(int argc, char *argv[]);
extern int smime_main(int argc, char *argv[]);
extern int speed_main(int argc, char *argv[]);
extern int spkac_main(int argc, char *argv[]);
extern int srp_main(int argc, char *argv[]);
extern int ts_main(int argc, char *argv[]);
extern int verify_main(int argc, char *argv[]);
extern int version_main(int argc, char *argv[]);
extern int x509_main(int argc, char *argv[]);
extern OPTIONS asn1parse_options[];
extern OPTIONS ca_options[];
extern OPTIONS ciphers_options[];
extern OPTIONS cms_options[];
extern OPTIONS crl_options[];
extern OPTIONS crl2pkcs7_options[];
extern OPTIONS dgst_options[];
extern OPTIONS dhparam_options[];
extern OPTIONS dsa_options[];
extern OPTIONS dsaparam_options[];
extern OPTIONS ec_options[];
extern OPTIONS ecparam_options[];
extern OPTIONS enc_options[];
extern OPTIONS engine_options[];
extern OPTIONS errstr_options[];
extern OPTIONS exit_options[];
extern OPTIONS gendsa_options[];
extern OPTIONS genpkey_options[];
extern OPTIONS genrsa_options[];
extern OPTIONS help_options[];
extern OPTIONS list_options[];
extern OPTIONS nseq_options[];
extern OPTIONS ocsp_options[];
extern OPTIONS passwd_options[];
extern OPTIONS pkcs12_options[];
extern OPTIONS pkcs7_options[];
extern OPTIONS pkcs8_options[];
extern OPTIONS pkey_options[];
extern OPTIONS pkeyparam_options[];
extern OPTIONS pkeyutl_options[];
extern OPTIONS prime_options[];
extern OPTIONS rand_options[];
extern OPTIONS rehash_options[];
extern OPTIONS req_options[];
extern OPTIONS rsa_options[];
extern OPTIONS rsautl_options[];
extern OPTIONS s_client_options[];
extern OPTIONS s_server_options[];
extern OPTIONS s_time_options[];
extern OPTIONS sess_id_options[];
extern OPTIONS smime_options[];
extern OPTIONS speed_options[];
extern OPTIONS spkac_options[];
extern OPTIONS srp_options[];
extern OPTIONS ts_options[];
extern OPTIONS verify_options[];
extern OPTIONS version_options[];
extern OPTIONS x509_options[];
#ifdef INCLUDE_FUNCTION_TABLE
static FUNCTION functions[] = {
{ FT_general, "asn1parse", asn1parse_main, asn1parse_options },
{ FT_general, "ca", ca_main, ca_options },
#ifndef OPENSSL_NO_SOCK
{ FT_general, "ciphers", ciphers_main, ciphers_options },
#endif
#ifndef OPENSSL_NO_CMS
{ FT_general, "cms", cms_main, cms_options },
#endif
{ FT_general, "crl", crl_main, crl_options },
{ FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options },
{ FT_general, "dgst", dgst_main, dgst_options },
#ifndef OPENSSL_NO_DH
{ FT_general, "dhparam", dhparam_main, dhparam_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsa", dsa_main, dsa_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsaparam", dsaparam_main, dsaparam_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ec", ec_main, ec_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ecparam", ecparam_main, ecparam_options },
#endif
{ FT_general, "enc", enc_main, enc_options },
#ifndef OPENSSL_NO_ENGINE
{ FT_general, "engine", engine_main, engine_options },
#endif
{ FT_general, "errstr", errstr_main, errstr_options },
{ FT_general, "exit", exit_main, exit_options },
#ifndef OPENSSL_NO_DSA
{ FT_general, "gendsa", gendsa_main, gendsa_options },
#endif
{ FT_general, "genpkey", genpkey_main, genpkey_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "genrsa", genrsa_main, genrsa_options },
#endif
{ FT_general, "help", help_main, help_options },
{ FT_general, "list", list_main, list_options },
{ FT_general, "nseq", nseq_main, nseq_options },
#ifndef OPENSSL_NO_OCSP
{ FT_general, "ocsp", ocsp_main, ocsp_options },
#endif
{ FT_general, "passwd", passwd_main, passwd_options },
#ifndef OPENSSL_NO_DES
{ FT_general, "pkcs12", pkcs12_main, pkcs12_options },
#endif
{ FT_general, "pkcs7", pkcs7_main, pkcs7_options },
{ FT_general, "pkcs8", pkcs8_main, pkcs8_options },
{ FT_general, "pkey", pkey_main, pkey_options },
{ FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options },
{ FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options },
{ FT_general, "prime", prime_main, prime_options },
{ FT_general, "rand", rand_main, rand_options },
{ FT_general, "rehash", rehash_main, rehash_options },
{ FT_general, "req", req_main, req_options },
{ FT_general, "rsa", rsa_main, rsa_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "rsautl", rsautl_main, rsautl_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_client", s_client_main, s_client_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_server", s_server_main, s_server_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_time", s_time_main, s_time_options },
#endif
{ FT_general, "sess_id", sess_id_main, sess_id_options },
{ FT_general, "smime", smime_main, smime_options },
{ FT_general, "speed", speed_main, speed_options },
{ FT_general, "spkac", spkac_main, spkac_options },
#ifndef OPENSSL_NO_SRP
{ FT_general, "srp", srp_main, srp_options },
#endif
#ifndef OPENSSL_NO_TS
{ FT_general, "ts", ts_main, ts_options },
#endif
{ FT_general, "verify", verify_main, verify_options },
{ FT_general, "version", version_main, version_options },
{ FT_general, "x509", x509_main, x509_options },
#ifndef OPENSSL_NO_MD2
{ FT_md, "md2", dgst_main},
#endif
#ifndef OPENSSL_NO_MD4
{ FT_md, "md4", dgst_main},
#endif
{ FT_md, "md5", dgst_main},
#ifndef OPENSSL_NO_GOST
{ FT_md, "gost", dgst_main},
#endif
{ FT_md, "sha1", dgst_main},
{ FT_md, "sha224", dgst_main},
{ FT_md, "sha256", dgst_main},
{ FT_md, "sha384", dgst_main},
{ FT_md, "sha512", dgst_main},
#ifndef OPENSSL_NO_MDC2
{ FT_md, "mdc2", dgst_main},
#endif
#ifndef OPENSSL_NO_RMD160
{ FT_md, "rmd160", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2b512", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2s256", dgst_main},
#endif
{ FT_cipher, "aes-128-cbc", enc_main, enc_options },
{ FT_cipher, "aes-128-ecb", enc_main, enc_options },
{ FT_cipher, "aes-192-cbc", enc_main, enc_options },
{ FT_cipher, "aes-192-ecb", enc_main, enc_options },
{ FT_cipher, "aes-256-cbc", enc_main, enc_options },
{ FT_cipher, "aes-256-ecb", enc_main, enc_options },
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-ecb", enc_main, enc_options },
#endif
{ FT_cipher, "base64", enc_main, enc_options },
#ifdef ZLIB
{ FT_cipher, "zlib", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "desx", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4-40", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-64-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-40-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ofb", enc_main, enc_options },
#endif
{ 0, NULL, NULL}
};
#endif
@@ -0,0 +1,78 @@
{
'variables': {
'openssl_defines_BSD-x86_64': [
'DSO_DLFCN',
'HAVE_DLFCN_H',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
],
'openssl_cflags_BSD-x86_64': [
'-DL_ENDIAN -Wall -O3 -pthread -D_THREAD_SAFE -D_REENTRANT',
],
'openssl_ex_libs_BSD-x86_64': [
'',
],
'openssl_cli_srcs_BSD-x86_64': [
'openssl/apps/app_rand.c',
'openssl/apps/apps.c',
'openssl/apps/asn1pars.c',
'openssl/apps/ca.c',
'openssl/apps/ciphers.c',
'openssl/apps/cms.c',
'openssl/apps/crl.c',
'openssl/apps/crl2p7.c',
'openssl/apps/dgst.c',
'openssl/apps/dhparam.c',
'openssl/apps/dsa.c',
'openssl/apps/dsaparam.c',
'openssl/apps/ec.c',
'openssl/apps/ecparam.c',
'openssl/apps/enc.c',
'openssl/apps/engine.c',
'openssl/apps/errstr.c',
'openssl/apps/gendsa.c',
'openssl/apps/genpkey.c',
'openssl/apps/genrsa.c',
'openssl/apps/nseq.c',
'openssl/apps/ocsp.c',
'openssl/apps/openssl.c',
'openssl/apps/opt.c',
'openssl/apps/passwd.c',
'openssl/apps/pkcs12.c',
'openssl/apps/pkcs7.c',
'openssl/apps/pkcs8.c',
'openssl/apps/pkey.c',
'openssl/apps/pkeyparam.c',
'openssl/apps/pkeyutl.c',
'openssl/apps/prime.c',
'openssl/apps/rand.c',
'openssl/apps/rehash.c',
'openssl/apps/req.c',
'openssl/apps/rsa.c',
'openssl/apps/rsautl.c',
'openssl/apps/s_cb.c',
'openssl/apps/s_client.c',
'openssl/apps/s_server.c',
'openssl/apps/s_socket.c',
'openssl/apps/s_time.c',
'openssl/apps/sess_id.c',
'openssl/apps/smime.c',
'openssl/apps/speed.c',
'openssl/apps/spkac.c',
'openssl/apps/srp.c',
'openssl/apps/ts.c',
'openssl/apps/verify.c',
'openssl/apps/version.c',
'openssl/apps/x509.c',
],
},
'defines': ['<@(openssl_defines_BSD-x86_64)'],
'include_dirs': [
'./include',
],
'cflags' : ['<@(openssl_cflags_BSD-x86_64)'],
'libraries': ['<@(openssl_ex_libs_BSD-x86_64)'],
'sources': ['<@(openssl_cli_srcs_BSD-x86_64)'],
}
+671
View File
@@ -0,0 +1,671 @@
{
'variables': {
'openssl_sources': [
'openssl/ssl/bio_ssl.c',
'openssl/ssl/d1_lib.c',
'openssl/ssl/d1_msg.c',
'openssl/ssl/d1_srtp.c',
'openssl/ssl/methods.c',
'openssl/ssl/pqueue.c',
'openssl/ssl/record/dtls1_bitmap.c',
'openssl/ssl/record/rec_layer_d1.c',
'openssl/ssl/record/rec_layer_s3.c',
'openssl/ssl/record/ssl3_buffer.c',
'openssl/ssl/record/ssl3_record.c',
'openssl/ssl/s3_cbc.c',
'openssl/ssl/s3_enc.c',
'openssl/ssl/s3_lib.c',
'openssl/ssl/s3_msg.c',
'openssl/ssl/ssl_asn1.c',
'openssl/ssl/ssl_cert.c',
'openssl/ssl/ssl_ciph.c',
'openssl/ssl/ssl_conf.c',
'openssl/ssl/ssl_err.c',
'openssl/ssl/ssl_init.c',
'openssl/ssl/ssl_lib.c',
'openssl/ssl/ssl_mcnf.c',
'openssl/ssl/ssl_rsa.c',
'openssl/ssl/ssl_sess.c',
'openssl/ssl/ssl_stat.c',
'openssl/ssl/ssl_txt.c',
'openssl/ssl/ssl_utst.c',
'openssl/ssl/statem/statem.c',
'openssl/ssl/statem/statem_clnt.c',
'openssl/ssl/statem/statem_dtls.c',
'openssl/ssl/statem/statem_lib.c',
'openssl/ssl/statem/statem_srvr.c',
'openssl/ssl/t1_enc.c',
'openssl/ssl/t1_ext.c',
'openssl/ssl/t1_lib.c',
'openssl/ssl/t1_reneg.c',
'openssl/ssl/t1_trce.c',
'openssl/ssl/tls_srp.c',
'openssl/crypto/aes/aes_cbc.c',
'openssl/crypto/aes/aes_cfb.c',
'openssl/crypto/aes/aes_core.c',
'openssl/crypto/aes/aes_ecb.c',
'openssl/crypto/aes/aes_ige.c',
'openssl/crypto/aes/aes_misc.c',
'openssl/crypto/aes/aes_ofb.c',
'openssl/crypto/aes/aes_wrap.c',
'openssl/crypto/asn1/a_bitstr.c',
'openssl/crypto/asn1/a_d2i_fp.c',
'openssl/crypto/asn1/a_digest.c',
'openssl/crypto/asn1/a_dup.c',
'openssl/crypto/asn1/a_gentm.c',
'openssl/crypto/asn1/a_i2d_fp.c',
'openssl/crypto/asn1/a_int.c',
'openssl/crypto/asn1/a_mbstr.c',
'openssl/crypto/asn1/a_object.c',
'openssl/crypto/asn1/a_octet.c',
'openssl/crypto/asn1/a_print.c',
'openssl/crypto/asn1/a_sign.c',
'openssl/crypto/asn1/a_strex.c',
'openssl/crypto/asn1/a_strnid.c',
'openssl/crypto/asn1/a_time.c',
'openssl/crypto/asn1/a_type.c',
'openssl/crypto/asn1/a_utctm.c',
'openssl/crypto/asn1/a_utf8.c',
'openssl/crypto/asn1/a_verify.c',
'openssl/crypto/asn1/ameth_lib.c',
'openssl/crypto/asn1/asn1_err.c',
'openssl/crypto/asn1/asn1_gen.c',
'openssl/crypto/asn1/asn1_lib.c',
'openssl/crypto/asn1/asn1_par.c',
'openssl/crypto/asn1/asn_mime.c',
'openssl/crypto/asn1/asn_moid.c',
'openssl/crypto/asn1/asn_mstbl.c',
'openssl/crypto/asn1/asn_pack.c',
'openssl/crypto/asn1/bio_asn1.c',
'openssl/crypto/asn1/bio_ndef.c',
'openssl/crypto/asn1/d2i_pr.c',
'openssl/crypto/asn1/d2i_pu.c',
'openssl/crypto/asn1/evp_asn1.c',
'openssl/crypto/asn1/f_int.c',
'openssl/crypto/asn1/f_string.c',
'openssl/crypto/asn1/i2d_pr.c',
'openssl/crypto/asn1/i2d_pu.c',
'openssl/crypto/asn1/n_pkey.c',
'openssl/crypto/asn1/nsseq.c',
'openssl/crypto/asn1/p5_pbe.c',
'openssl/crypto/asn1/p5_pbev2.c',
'openssl/crypto/asn1/p5_scrypt.c',
'openssl/crypto/asn1/p8_pkey.c',
'openssl/crypto/asn1/t_bitst.c',
'openssl/crypto/asn1/t_pkey.c',
'openssl/crypto/asn1/t_spki.c',
'openssl/crypto/asn1/tasn_dec.c',
'openssl/crypto/asn1/tasn_enc.c',
'openssl/crypto/asn1/tasn_fre.c',
'openssl/crypto/asn1/tasn_new.c',
'openssl/crypto/asn1/tasn_prn.c',
'openssl/crypto/asn1/tasn_scn.c',
'openssl/crypto/asn1/tasn_typ.c',
'openssl/crypto/asn1/tasn_utl.c',
'openssl/crypto/asn1/x_algor.c',
'openssl/crypto/asn1/x_bignum.c',
'openssl/crypto/asn1/x_info.c',
'openssl/crypto/asn1/x_int64.c',
'openssl/crypto/asn1/x_long.c',
'openssl/crypto/asn1/x_pkey.c',
'openssl/crypto/asn1/x_sig.c',
'openssl/crypto/asn1/x_spki.c',
'openssl/crypto/asn1/x_val.c',
'openssl/crypto/async/arch/async_null.c',
'openssl/crypto/async/arch/async_posix.c',
'openssl/crypto/async/arch/async_win.c',
'openssl/crypto/async/async.c',
'openssl/crypto/async/async_err.c',
'openssl/crypto/async/async_wait.c',
'openssl/crypto/bf/bf_cfb64.c',
'openssl/crypto/bf/bf_ecb.c',
'openssl/crypto/bf/bf_enc.c',
'openssl/crypto/bf/bf_ofb64.c',
'openssl/crypto/bf/bf_skey.c',
'openssl/crypto/bio/b_addr.c',
'openssl/crypto/bio/b_dump.c',
'openssl/crypto/bio/b_print.c',
'openssl/crypto/bio/b_sock.c',
'openssl/crypto/bio/b_sock2.c',
'openssl/crypto/bio/bf_buff.c',
'openssl/crypto/bio/bf_lbuf.c',
'openssl/crypto/bio/bf_nbio.c',
'openssl/crypto/bio/bf_null.c',
'openssl/crypto/bio/bio_cb.c',
'openssl/crypto/bio/bio_err.c',
'openssl/crypto/bio/bio_lib.c',
'openssl/crypto/bio/bio_meth.c',
'openssl/crypto/bio/bss_acpt.c',
'openssl/crypto/bio/bss_bio.c',
'openssl/crypto/bio/bss_conn.c',
'openssl/crypto/bio/bss_dgram.c',
'openssl/crypto/bio/bss_fd.c',
'openssl/crypto/bio/bss_file.c',
'openssl/crypto/bio/bss_log.c',
'openssl/crypto/bio/bss_mem.c',
'openssl/crypto/bio/bss_null.c',
'openssl/crypto/bio/bss_sock.c',
'openssl/crypto/blake2/blake2b.c',
'openssl/crypto/blake2/blake2s.c',
'openssl/crypto/blake2/m_blake2b.c',
'openssl/crypto/blake2/m_blake2s.c',
'openssl/crypto/bn/bn_add.c',
'openssl/crypto/bn/bn_asm.c',
'openssl/crypto/bn/bn_blind.c',
'openssl/crypto/bn/bn_const.c',
'openssl/crypto/bn/bn_ctx.c',
'openssl/crypto/bn/bn_depr.c',
'openssl/crypto/bn/bn_dh.c',
'openssl/crypto/bn/bn_div.c',
'openssl/crypto/bn/bn_err.c',
'openssl/crypto/bn/bn_exp.c',
'openssl/crypto/bn/bn_exp2.c',
'openssl/crypto/bn/bn_gcd.c',
'openssl/crypto/bn/bn_gf2m.c',
'openssl/crypto/bn/bn_intern.c',
'openssl/crypto/bn/bn_kron.c',
'openssl/crypto/bn/bn_lib.c',
'openssl/crypto/bn/bn_mod.c',
'openssl/crypto/bn/bn_mont.c',
'openssl/crypto/bn/bn_mpi.c',
'openssl/crypto/bn/bn_mul.c',
'openssl/crypto/bn/bn_nist.c',
'openssl/crypto/bn/bn_prime.c',
'openssl/crypto/bn/bn_print.c',
'openssl/crypto/bn/bn_rand.c',
'openssl/crypto/bn/bn_recp.c',
'openssl/crypto/bn/bn_shift.c',
'openssl/crypto/bn/bn_sqr.c',
'openssl/crypto/bn/bn_sqrt.c',
'openssl/crypto/bn/bn_srp.c',
'openssl/crypto/bn/bn_word.c',
'openssl/crypto/bn/bn_x931p.c',
'openssl/crypto/buffer/buf_err.c',
'openssl/crypto/buffer/buffer.c',
'openssl/crypto/camellia/camellia.c',
'openssl/crypto/camellia/cmll_cbc.c',
'openssl/crypto/camellia/cmll_cfb.c',
'openssl/crypto/camellia/cmll_ctr.c',
'openssl/crypto/camellia/cmll_ecb.c',
'openssl/crypto/camellia/cmll_misc.c',
'openssl/crypto/camellia/cmll_ofb.c',
'openssl/crypto/cast/c_cfb64.c',
'openssl/crypto/cast/c_ecb.c',
'openssl/crypto/cast/c_enc.c',
'openssl/crypto/cast/c_ofb64.c',
'openssl/crypto/cast/c_skey.c',
'openssl/crypto/chacha/chacha_enc.c',
'openssl/crypto/cmac/cm_ameth.c',
'openssl/crypto/cmac/cm_pmeth.c',
'openssl/crypto/cmac/cmac.c',
'openssl/crypto/cms/cms_asn1.c',
'openssl/crypto/cms/cms_att.c',
'openssl/crypto/cms/cms_cd.c',
'openssl/crypto/cms/cms_dd.c',
'openssl/crypto/cms/cms_enc.c',
'openssl/crypto/cms/cms_env.c',
'openssl/crypto/cms/cms_err.c',
'openssl/crypto/cms/cms_ess.c',
'openssl/crypto/cms/cms_io.c',
'openssl/crypto/cms/cms_kari.c',
'openssl/crypto/cms/cms_lib.c',
'openssl/crypto/cms/cms_pwri.c',
'openssl/crypto/cms/cms_sd.c',
'openssl/crypto/cms/cms_smime.c',
'openssl/crypto/conf/conf_api.c',
'openssl/crypto/conf/conf_def.c',
'openssl/crypto/conf/conf_err.c',
'openssl/crypto/conf/conf_lib.c',
'openssl/crypto/conf/conf_mall.c',
'openssl/crypto/conf/conf_mod.c',
'openssl/crypto/conf/conf_sap.c',
'openssl/crypto/cpt_err.c',
'openssl/crypto/cryptlib.c',
'openssl/crypto/ct/ct_b64.c',
'openssl/crypto/ct/ct_err.c',
'openssl/crypto/ct/ct_log.c',
'openssl/crypto/ct/ct_oct.c',
'openssl/crypto/ct/ct_policy.c',
'openssl/crypto/ct/ct_prn.c',
'openssl/crypto/ct/ct_sct.c',
'openssl/crypto/ct/ct_sct_ctx.c',
'openssl/crypto/ct/ct_vfy.c',
'openssl/crypto/ct/ct_x509v3.c',
'openssl/crypto/cversion.c',
'openssl/crypto/des/cbc_cksm.c',
'openssl/crypto/des/cbc_enc.c',
'openssl/crypto/des/cfb64ede.c',
'openssl/crypto/des/cfb64enc.c',
'openssl/crypto/des/cfb_enc.c',
'openssl/crypto/des/des_enc.c',
'openssl/crypto/des/ecb3_enc.c',
'openssl/crypto/des/ecb_enc.c',
'openssl/crypto/des/fcrypt.c',
'openssl/crypto/des/fcrypt_b.c',
'openssl/crypto/des/ofb64ede.c',
'openssl/crypto/des/ofb64enc.c',
'openssl/crypto/des/ofb_enc.c',
'openssl/crypto/des/pcbc_enc.c',
'openssl/crypto/des/qud_cksm.c',
'openssl/crypto/des/rand_key.c',
'openssl/crypto/des/rpc_enc.c',
'openssl/crypto/des/set_key.c',
'openssl/crypto/des/str2key.c',
'openssl/crypto/des/xcbc_enc.c',
'openssl/crypto/dh/dh_ameth.c',
'openssl/crypto/dh/dh_asn1.c',
'openssl/crypto/dh/dh_check.c',
'openssl/crypto/dh/dh_depr.c',
'openssl/crypto/dh/dh_err.c',
'openssl/crypto/dh/dh_gen.c',
'openssl/crypto/dh/dh_kdf.c',
'openssl/crypto/dh/dh_key.c',
'openssl/crypto/dh/dh_lib.c',
'openssl/crypto/dh/dh_meth.c',
'openssl/crypto/dh/dh_pmeth.c',
'openssl/crypto/dh/dh_prn.c',
'openssl/crypto/dh/dh_rfc5114.c',
'openssl/crypto/dsa/dsa_ameth.c',
'openssl/crypto/dsa/dsa_asn1.c',
'openssl/crypto/dsa/dsa_depr.c',
'openssl/crypto/dsa/dsa_err.c',
'openssl/crypto/dsa/dsa_gen.c',
'openssl/crypto/dsa/dsa_key.c',
'openssl/crypto/dsa/dsa_lib.c',
'openssl/crypto/dsa/dsa_meth.c',
'openssl/crypto/dsa/dsa_ossl.c',
'openssl/crypto/dsa/dsa_pmeth.c',
'openssl/crypto/dsa/dsa_prn.c',
'openssl/crypto/dsa/dsa_sign.c',
'openssl/crypto/dsa/dsa_vrf.c',
'openssl/crypto/dso/dso_dl.c',
'openssl/crypto/dso/dso_dlfcn.c',
'openssl/crypto/dso/dso_err.c',
'openssl/crypto/dso/dso_lib.c',
'openssl/crypto/dso/dso_openssl.c',
'openssl/crypto/dso/dso_vms.c',
'openssl/crypto/dso/dso_win32.c',
'openssl/crypto/ebcdic.c',
'openssl/crypto/ec/curve25519.c',
'openssl/crypto/ec/ec2_mult.c',
'openssl/crypto/ec/ec2_oct.c',
'openssl/crypto/ec/ec2_smpl.c',
'openssl/crypto/ec/ec_ameth.c',
'openssl/crypto/ec/ec_asn1.c',
'openssl/crypto/ec/ec_check.c',
'openssl/crypto/ec/ec_curve.c',
'openssl/crypto/ec/ec_cvt.c',
'openssl/crypto/ec/ec_err.c',
'openssl/crypto/ec/ec_key.c',
'openssl/crypto/ec/ec_kmeth.c',
'openssl/crypto/ec/ec_lib.c',
'openssl/crypto/ec/ec_mult.c',
'openssl/crypto/ec/ec_oct.c',
'openssl/crypto/ec/ec_pmeth.c',
'openssl/crypto/ec/ec_print.c',
'openssl/crypto/ec/ecdh_kdf.c',
'openssl/crypto/ec/ecdh_ossl.c',
'openssl/crypto/ec/ecdsa_ossl.c',
'openssl/crypto/ec/ecdsa_sign.c',
'openssl/crypto/ec/ecdsa_vrf.c',
'openssl/crypto/ec/eck_prn.c',
'openssl/crypto/ec/ecp_mont.c',
'openssl/crypto/ec/ecp_nist.c',
'openssl/crypto/ec/ecp_nistp224.c',
'openssl/crypto/ec/ecp_nistp256.c',
'openssl/crypto/ec/ecp_nistp521.c',
'openssl/crypto/ec/ecp_nistputil.c',
'openssl/crypto/ec/ecp_oct.c',
'openssl/crypto/ec/ecp_smpl.c',
'openssl/crypto/ec/ecx_meth.c',
'openssl/crypto/engine/eng_all.c',
'openssl/crypto/engine/eng_cnf.c',
'openssl/crypto/engine/eng_cryptodev.c',
'openssl/crypto/engine/eng_ctrl.c',
'openssl/crypto/engine/eng_dyn.c',
'openssl/crypto/engine/eng_err.c',
'openssl/crypto/engine/eng_fat.c',
'openssl/crypto/engine/eng_init.c',
'openssl/crypto/engine/eng_lib.c',
'openssl/crypto/engine/eng_list.c',
'openssl/crypto/engine/eng_openssl.c',
'openssl/crypto/engine/eng_pkey.c',
'openssl/crypto/engine/eng_rdrand.c',
'openssl/crypto/engine/eng_table.c',
'openssl/crypto/engine/tb_asnmth.c',
'openssl/crypto/engine/tb_cipher.c',
'openssl/crypto/engine/tb_dh.c',
'openssl/crypto/engine/tb_digest.c',
'openssl/crypto/engine/tb_dsa.c',
'openssl/crypto/engine/tb_eckey.c',
'openssl/crypto/engine/tb_pkmeth.c',
'openssl/crypto/engine/tb_rand.c',
'openssl/crypto/engine/tb_rsa.c',
'openssl/crypto/err/err.c',
'openssl/crypto/err/err_all.c',
'openssl/crypto/err/err_prn.c',
'openssl/crypto/evp/bio_b64.c',
'openssl/crypto/evp/bio_enc.c',
'openssl/crypto/evp/bio_md.c',
'openssl/crypto/evp/bio_ok.c',
'openssl/crypto/evp/c_allc.c',
'openssl/crypto/evp/c_alld.c',
'openssl/crypto/evp/cmeth_lib.c',
'openssl/crypto/evp/digest.c',
'openssl/crypto/evp/e_aes.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha1.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha256.c',
'openssl/crypto/evp/e_bf.c',
'openssl/crypto/evp/e_camellia.c',
'openssl/crypto/evp/e_cast.c',
'openssl/crypto/evp/e_chacha20_poly1305.c',
'openssl/crypto/evp/e_des.c',
'openssl/crypto/evp/e_des3.c',
'openssl/crypto/evp/e_idea.c',
'openssl/crypto/evp/e_null.c',
'openssl/crypto/evp/e_old.c',
'openssl/crypto/evp/e_rc2.c',
'openssl/crypto/evp/e_rc4.c',
'openssl/crypto/evp/e_rc4_hmac_md5.c',
'openssl/crypto/evp/e_rc5.c',
'openssl/crypto/evp/e_seed.c',
'openssl/crypto/evp/e_xcbc_d.c',
'openssl/crypto/evp/encode.c',
'openssl/crypto/evp/evp_cnf.c',
'openssl/crypto/evp/evp_enc.c',
'openssl/crypto/evp/evp_err.c',
'openssl/crypto/evp/evp_key.c',
'openssl/crypto/evp/evp_lib.c',
'openssl/crypto/evp/evp_pbe.c',
'openssl/crypto/evp/evp_pkey.c',
'openssl/crypto/evp/m_md2.c',
'openssl/crypto/evp/m_md4.c',
'openssl/crypto/evp/m_md5.c',
'openssl/crypto/evp/m_md5_sha1.c',
'openssl/crypto/evp/m_mdc2.c',
'openssl/crypto/evp/m_null.c',
'openssl/crypto/evp/m_ripemd.c',
'openssl/crypto/evp/m_sha1.c',
'openssl/crypto/evp/m_sigver.c',
'openssl/crypto/evp/m_wp.c',
'openssl/crypto/evp/names.c',
'openssl/crypto/evp/p5_crpt.c',
'openssl/crypto/evp/p5_crpt2.c',
'openssl/crypto/evp/p_dec.c',
'openssl/crypto/evp/p_enc.c',
'openssl/crypto/evp/p_lib.c',
'openssl/crypto/evp/p_open.c',
'openssl/crypto/evp/p_seal.c',
'openssl/crypto/evp/p_sign.c',
'openssl/crypto/evp/p_verify.c',
'openssl/crypto/evp/pmeth_fn.c',
'openssl/crypto/evp/pmeth_gn.c',
'openssl/crypto/evp/pmeth_lib.c',
'openssl/crypto/evp/scrypt.c',
'openssl/crypto/ex_data.c',
'openssl/crypto/hmac/hm_ameth.c',
'openssl/crypto/hmac/hm_pmeth.c',
'openssl/crypto/hmac/hmac.c',
'openssl/crypto/idea/i_cbc.c',
'openssl/crypto/idea/i_cfb64.c',
'openssl/crypto/idea/i_ecb.c',
'openssl/crypto/idea/i_ofb64.c',
'openssl/crypto/idea/i_skey.c',
'openssl/crypto/init.c',
'openssl/crypto/kdf/hkdf.c',
'openssl/crypto/kdf/kdf_err.c',
'openssl/crypto/kdf/tls1_prf.c',
'openssl/crypto/lhash/lh_stats.c',
'openssl/crypto/lhash/lhash.c',
'openssl/crypto/md4/md4_dgst.c',
'openssl/crypto/md4/md4_one.c',
'openssl/crypto/md5/md5_dgst.c',
'openssl/crypto/md5/md5_one.c',
'openssl/crypto/mdc2/mdc2_one.c',
'openssl/crypto/mdc2/mdc2dgst.c',
'openssl/crypto/mem.c',
'openssl/crypto/mem_clr.c',
'openssl/crypto/mem_dbg.c',
'openssl/crypto/mem_sec.c',
'openssl/crypto/modes/cbc128.c',
'openssl/crypto/modes/ccm128.c',
'openssl/crypto/modes/cfb128.c',
'openssl/crypto/modes/ctr128.c',
'openssl/crypto/modes/cts128.c',
'openssl/crypto/modes/gcm128.c',
'openssl/crypto/modes/ocb128.c',
'openssl/crypto/modes/ofb128.c',
'openssl/crypto/modes/wrap128.c',
'openssl/crypto/modes/xts128.c',
'openssl/crypto/o_dir.c',
'openssl/crypto/o_fips.c',
'openssl/crypto/o_fopen.c',
'openssl/crypto/o_init.c',
'openssl/crypto/o_str.c',
'openssl/crypto/o_time.c',
'openssl/crypto/objects/o_names.c',
'openssl/crypto/objects/obj_dat.c',
'openssl/crypto/objects/obj_err.c',
'openssl/crypto/objects/obj_lib.c',
'openssl/crypto/objects/obj_xref.c',
'openssl/crypto/ocsp/ocsp_asn.c',
'openssl/crypto/ocsp/ocsp_cl.c',
'openssl/crypto/ocsp/ocsp_err.c',
'openssl/crypto/ocsp/ocsp_ext.c',
'openssl/crypto/ocsp/ocsp_ht.c',
'openssl/crypto/ocsp/ocsp_lib.c',
'openssl/crypto/ocsp/ocsp_prn.c',
'openssl/crypto/ocsp/ocsp_srv.c',
'openssl/crypto/ocsp/ocsp_vfy.c',
'openssl/crypto/ocsp/v3_ocsp.c',
'openssl/crypto/pem/pem_all.c',
'openssl/crypto/pem/pem_err.c',
'openssl/crypto/pem/pem_info.c',
'openssl/crypto/pem/pem_lib.c',
'openssl/crypto/pem/pem_oth.c',
'openssl/crypto/pem/pem_pk8.c',
'openssl/crypto/pem/pem_pkey.c',
'openssl/crypto/pem/pem_sign.c',
'openssl/crypto/pem/pem_x509.c',
'openssl/crypto/pem/pem_xaux.c',
'openssl/crypto/pem/pvkfmt.c',
'openssl/crypto/pkcs12/p12_add.c',
'openssl/crypto/pkcs12/p12_asn.c',
'openssl/crypto/pkcs12/p12_attr.c',
'openssl/crypto/pkcs12/p12_crpt.c',
'openssl/crypto/pkcs12/p12_crt.c',
'openssl/crypto/pkcs12/p12_decr.c',
'openssl/crypto/pkcs12/p12_init.c',
'openssl/crypto/pkcs12/p12_key.c',
'openssl/crypto/pkcs12/p12_kiss.c',
'openssl/crypto/pkcs12/p12_mutl.c',
'openssl/crypto/pkcs12/p12_npas.c',
'openssl/crypto/pkcs12/p12_p8d.c',
'openssl/crypto/pkcs12/p12_p8e.c',
'openssl/crypto/pkcs12/p12_sbag.c',
'openssl/crypto/pkcs12/p12_utl.c',
'openssl/crypto/pkcs12/pk12err.c',
'openssl/crypto/pkcs7/bio_pk7.c',
'openssl/crypto/pkcs7/pk7_asn1.c',
'openssl/crypto/pkcs7/pk7_attr.c',
'openssl/crypto/pkcs7/pk7_doit.c',
'openssl/crypto/pkcs7/pk7_lib.c',
'openssl/crypto/pkcs7/pk7_mime.c',
'openssl/crypto/pkcs7/pk7_smime.c',
'openssl/crypto/pkcs7/pkcs7err.c',
'openssl/crypto/poly1305/poly1305.c',
'openssl/crypto/rand/md_rand.c',
'openssl/crypto/rand/rand_egd.c',
'openssl/crypto/rand/rand_err.c',
'openssl/crypto/rand/rand_lib.c',
'openssl/crypto/rand/rand_unix.c',
'openssl/crypto/rand/rand_vms.c',
'openssl/crypto/rand/rand_win.c',
'openssl/crypto/rand/randfile.c',
'openssl/crypto/rc2/rc2_cbc.c',
'openssl/crypto/rc2/rc2_ecb.c',
'openssl/crypto/rc2/rc2_skey.c',
'openssl/crypto/rc2/rc2cfb64.c',
'openssl/crypto/rc2/rc2ofb64.c',
'openssl/crypto/rc4/rc4_enc.c',
'openssl/crypto/rc4/rc4_skey.c',
'openssl/crypto/ripemd/rmd_dgst.c',
'openssl/crypto/ripemd/rmd_one.c',
'openssl/crypto/rsa/rsa_ameth.c',
'openssl/crypto/rsa/rsa_asn1.c',
'openssl/crypto/rsa/rsa_chk.c',
'openssl/crypto/rsa/rsa_crpt.c',
'openssl/crypto/rsa/rsa_depr.c',
'openssl/crypto/rsa/rsa_err.c',
'openssl/crypto/rsa/rsa_gen.c',
'openssl/crypto/rsa/rsa_lib.c',
'openssl/crypto/rsa/rsa_meth.c',
'openssl/crypto/rsa/rsa_none.c',
'openssl/crypto/rsa/rsa_null.c',
'openssl/crypto/rsa/rsa_oaep.c',
'openssl/crypto/rsa/rsa_ossl.c',
'openssl/crypto/rsa/rsa_pk1.c',
'openssl/crypto/rsa/rsa_pmeth.c',
'openssl/crypto/rsa/rsa_prn.c',
'openssl/crypto/rsa/rsa_pss.c',
'openssl/crypto/rsa/rsa_saos.c',
'openssl/crypto/rsa/rsa_sign.c',
'openssl/crypto/rsa/rsa_ssl.c',
'openssl/crypto/rsa/rsa_x931.c',
'openssl/crypto/rsa/rsa_x931g.c',
'openssl/crypto/seed/seed.c',
'openssl/crypto/seed/seed_cbc.c',
'openssl/crypto/seed/seed_cfb.c',
'openssl/crypto/seed/seed_ecb.c',
'openssl/crypto/seed/seed_ofb.c',
'openssl/crypto/sha/sha1_one.c',
'openssl/crypto/sha/sha1dgst.c',
'openssl/crypto/sha/sha256.c',
'openssl/crypto/sha/sha512.c',
'openssl/crypto/srp/srp_lib.c',
'openssl/crypto/srp/srp_vfy.c',
'openssl/crypto/stack/stack.c',
'openssl/crypto/threads_none.c',
'openssl/crypto/threads_pthread.c',
'openssl/crypto/threads_win.c',
'openssl/crypto/ts/ts_asn1.c',
'openssl/crypto/ts/ts_conf.c',
'openssl/crypto/ts/ts_err.c',
'openssl/crypto/ts/ts_lib.c',
'openssl/crypto/ts/ts_req_print.c',
'openssl/crypto/ts/ts_req_utils.c',
'openssl/crypto/ts/ts_rsp_print.c',
'openssl/crypto/ts/ts_rsp_sign.c',
'openssl/crypto/ts/ts_rsp_utils.c',
'openssl/crypto/ts/ts_rsp_verify.c',
'openssl/crypto/ts/ts_verify_ctx.c',
'openssl/crypto/txt_db/txt_db.c',
'openssl/crypto/ui/ui_err.c',
'openssl/crypto/ui/ui_lib.c',
'openssl/crypto/ui/ui_openssl.c',
'openssl/crypto/ui/ui_util.c',
'openssl/crypto/uid.c',
'openssl/crypto/whrlpool/wp_block.c',
'openssl/crypto/whrlpool/wp_dgst.c',
'openssl/crypto/x509/by_dir.c',
'openssl/crypto/x509/by_file.c',
'openssl/crypto/x509/t_crl.c',
'openssl/crypto/x509/t_req.c',
'openssl/crypto/x509/t_x509.c',
'openssl/crypto/x509/x509_att.c',
'openssl/crypto/x509/x509_cmp.c',
'openssl/crypto/x509/x509_d2.c',
'openssl/crypto/x509/x509_def.c',
'openssl/crypto/x509/x509_err.c',
'openssl/crypto/x509/x509_ext.c',
'openssl/crypto/x509/x509_lu.c',
'openssl/crypto/x509/x509_obj.c',
'openssl/crypto/x509/x509_r2x.c',
'openssl/crypto/x509/x509_req.c',
'openssl/crypto/x509/x509_set.c',
'openssl/crypto/x509/x509_trs.c',
'openssl/crypto/x509/x509_txt.c',
'openssl/crypto/x509/x509_v3.c',
'openssl/crypto/x509/x509_vfy.c',
'openssl/crypto/x509/x509_vpm.c',
'openssl/crypto/x509/x509cset.c',
'openssl/crypto/x509/x509name.c',
'openssl/crypto/x509/x509rset.c',
'openssl/crypto/x509/x509spki.c',
'openssl/crypto/x509/x509type.c',
'openssl/crypto/x509/x_all.c',
'openssl/crypto/x509/x_attrib.c',
'openssl/crypto/x509/x_crl.c',
'openssl/crypto/x509/x_exten.c',
'openssl/crypto/x509/x_name.c',
'openssl/crypto/x509/x_pubkey.c',
'openssl/crypto/x509/x_req.c',
'openssl/crypto/x509/x_x509.c',
'openssl/crypto/x509/x_x509a.c',
'openssl/crypto/x509v3/pcy_cache.c',
'openssl/crypto/x509v3/pcy_data.c',
'openssl/crypto/x509v3/pcy_lib.c',
'openssl/crypto/x509v3/pcy_map.c',
'openssl/crypto/x509v3/pcy_node.c',
'openssl/crypto/x509v3/pcy_tree.c',
'openssl/crypto/x509v3/v3_addr.c',
'openssl/crypto/x509v3/v3_akey.c',
'openssl/crypto/x509v3/v3_akeya.c',
'openssl/crypto/x509v3/v3_alt.c',
'openssl/crypto/x509v3/v3_asid.c',
'openssl/crypto/x509v3/v3_bcons.c',
'openssl/crypto/x509v3/v3_bitst.c',
'openssl/crypto/x509v3/v3_conf.c',
'openssl/crypto/x509v3/v3_cpols.c',
'openssl/crypto/x509v3/v3_crld.c',
'openssl/crypto/x509v3/v3_enum.c',
'openssl/crypto/x509v3/v3_extku.c',
'openssl/crypto/x509v3/v3_genn.c',
'openssl/crypto/x509v3/v3_ia5.c',
'openssl/crypto/x509v3/v3_info.c',
'openssl/crypto/x509v3/v3_int.c',
'openssl/crypto/x509v3/v3_lib.c',
'openssl/crypto/x509v3/v3_ncons.c',
'openssl/crypto/x509v3/v3_pci.c',
'openssl/crypto/x509v3/v3_pcia.c',
'openssl/crypto/x509v3/v3_pcons.c',
'openssl/crypto/x509v3/v3_pku.c',
'openssl/crypto/x509v3/v3_pmaps.c',
'openssl/crypto/x509v3/v3_prn.c',
'openssl/crypto/x509v3/v3_purp.c',
'openssl/crypto/x509v3/v3_skey.c',
'openssl/crypto/x509v3/v3_sxnet.c',
'openssl/crypto/x509v3/v3_tlsf.c',
'openssl/crypto/x509v3/v3_utl.c',
'openssl/crypto/x509v3/v3err.c',
'openssl/engines/e_capi.c',
'openssl/engines/e_padlock.c',
],
'openssl_sources_BSD-x86_64': [
],
'openssl_defines_BSD-x86_64': [
'DSO_DLFCN',
'HAVE_DLFCN_H',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
],
'openssl_cflags_BSD-x86_64': [
'-DL_ENDIAN -Wall -O3 -pthread -D_THREAD_SAFE -D_REENTRANT',
],
'openssl_ex_libs_BSD-x86_64': [
'',
],
},
'include_dirs': [
'.',
'./include',
'./crypto',
'./crypto/include/internal',
],
'defines': ['<@(openssl_defines_BSD-x86_64)'],
'cflags' : ['<@(openssl_cflags_BSD-x86_64)'],
'libraries': ['<@(openssl_ex_libs_BSD-x86_64)'],
'sources': ['<@(openssl_sources)', '<@(openssl_sources_BSD-x86_64)'],
}
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
@@ -0,0 +1,641 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
align 64
L$_vpaes_consts:
dd 218628480,235210255,168496130,67568393
dd 252381056,17041926,33884169,51187212
dd 252645135,252645135,252645135,252645135
dd 1512730624,3266504856,1377990664,3401244816
dd 830229760,1275146365,2969422977,3447763452
dd 3411033600,2979783055,338359620,2782886510
dd 4209124096,907596821,221174255,1006095553
dd 191964160,3799684038,3164090317,1589111125
dd 182528256,1777043520,2877432650,3265356744
dd 1874708224,3503451415,3305285752,363511674
dd 1606117888,3487855781,1093350906,2384367825
dd 197121,67569157,134941193,202313229
dd 67569157,134941193,202313229,197121
dd 134941193,202313229,197121,67569157
dd 202313229,197121,67569157,134941193
dd 33619971,100992007,168364043,235736079
dd 235736079,33619971,100992007,168364043
dd 168364043,235736079,33619971,100992007
dd 100992007,168364043,235736079,33619971
dd 50462976,117835012,185207048,252579084
dd 252314880,51251460,117574920,184942860
dd 184682752,252054788,50987272,118359308
dd 118099200,185467140,251790600,50727180
dd 2946363062,528716217,1300004225,1881839624
dd 1532713819,1532713819,1532713819,1532713819
dd 3602276352,4288629033,3737020424,4153884961
dd 1354558464,32357713,2958822624,3775749553
dd 1201988352,132424512,1572796698,503232858
dd 2213177600,1597421020,4103937655,675398315
dd 2749646592,4273543773,1511898873,121693092
dd 3040248576,1103263732,2871565598,1608280554
dd 2236667136,2588920351,482954393,64377734
dd 3069987328,291237287,2117370568,3650299247
dd 533321216,3573750986,2572112006,1401264716
dd 1339849704,2721158661,548607111,3445553514
dd 2128193280,3054596040,2183486460,1257083700
dd 655635200,1165381986,3923443150,2344132524
dd 190078720,256924420,290342170,357187870
dd 1610966272,2263057382,4103205268,309794674
dd 2592527872,2233205587,1335446729,3402964816
dd 3973531904,3225098121,3002836325,1918774430
dd 3870401024,2102906079,2284471353,4117666579
dd 617007872,1021508343,366931923,691083277
dd 2528395776,3491914898,2968704004,1613121270
dd 3445188352,3247741094,844474987,4093578302
dd 651481088,1190302358,1689581232,574775300
dd 4289380608,206939853,2555985458,2489840491
dd 2130264064,327674451,3566485037,3349835193
dd 2470714624,316102159,3636825756,3393945945
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,47,83
db 83,83,69,51,44,32,77,105,107,101,32,72,97,109,98,117
db 114,103,32,40,83,116,97,110,102,111,114,100,32,85,110,105
db 118,101,114,115,105,116,121,41,0
align 64
align 16
__vpaes_preheat:
add ebp,DWORD [esp]
movdqa xmm7,[ebp-48]
movdqa xmm6,[ebp-16]
ret
align 16
__vpaes_encrypt_core:
mov ecx,16
mov eax,DWORD [240+edx]
movdqa xmm1,xmm6
movdqa xmm2,[ebp]
pandn xmm1,xmm0
pand xmm0,xmm6
movdqu xmm5,[edx]
db 102,15,56,0,208
movdqa xmm0,[16+ebp]
pxor xmm2,xmm5
psrld xmm1,4
add edx,16
db 102,15,56,0,193
lea ebx,[192+ebp]
pxor xmm0,xmm2
jmp NEAR L$000enc_entry
align 16
L$001enc_loop:
movdqa xmm4,[32+ebp]
movdqa xmm0,[48+ebp]
db 102,15,56,0,226
db 102,15,56,0,195
pxor xmm4,xmm5
movdqa xmm5,[64+ebp]
pxor xmm0,xmm4
movdqa xmm1,[ecx*1+ebx-64]
db 102,15,56,0,234
movdqa xmm2,[80+ebp]
movdqa xmm4,[ecx*1+ebx]
db 102,15,56,0,211
movdqa xmm3,xmm0
pxor xmm2,xmm5
db 102,15,56,0,193
add edx,16
pxor xmm0,xmm2
db 102,15,56,0,220
add ecx,16
pxor xmm3,xmm0
db 102,15,56,0,193
and ecx,48
sub eax,1
pxor xmm0,xmm3
L$000enc_entry:
movdqa xmm1,xmm6
movdqa xmm5,[ebp-32]
pandn xmm1,xmm0
psrld xmm1,4
pand xmm0,xmm6
db 102,15,56,0,232
movdqa xmm3,xmm7
pxor xmm0,xmm1
db 102,15,56,0,217
movdqa xmm4,xmm7
pxor xmm3,xmm5
db 102,15,56,0,224
movdqa xmm2,xmm7
pxor xmm4,xmm5
db 102,15,56,0,211
movdqa xmm3,xmm7
pxor xmm2,xmm0
db 102,15,56,0,220
movdqu xmm5,[edx]
pxor xmm3,xmm1
jnz NEAR L$001enc_loop
movdqa xmm4,[96+ebp]
movdqa xmm0,[112+ebp]
db 102,15,56,0,226
pxor xmm4,xmm5
db 102,15,56,0,195
movdqa xmm1,[64+ecx*1+ebx]
pxor xmm0,xmm4
db 102,15,56,0,193
ret
align 16
__vpaes_decrypt_core:
lea ebx,[608+ebp]
mov eax,DWORD [240+edx]
movdqa xmm1,xmm6
movdqa xmm2,[ebx-64]
pandn xmm1,xmm0
mov ecx,eax
psrld xmm1,4
movdqu xmm5,[edx]
shl ecx,4
pand xmm0,xmm6
db 102,15,56,0,208
movdqa xmm0,[ebx-48]
xor ecx,48
db 102,15,56,0,193
and ecx,48
pxor xmm2,xmm5
movdqa xmm5,[176+ebp]
pxor xmm0,xmm2
add edx,16
lea ecx,[ecx*1+ebx-352]
jmp NEAR L$002dec_entry
align 16
L$003dec_loop:
movdqa xmm4,[ebx-32]
movdqa xmm1,[ebx-16]
db 102,15,56,0,226
db 102,15,56,0,203
pxor xmm0,xmm4
movdqa xmm4,[ebx]
pxor xmm0,xmm1
movdqa xmm1,[16+ebx]
db 102,15,56,0,226
db 102,15,56,0,197
db 102,15,56,0,203
pxor xmm0,xmm4
movdqa xmm4,[32+ebx]
pxor xmm0,xmm1
movdqa xmm1,[48+ebx]
db 102,15,56,0,226
db 102,15,56,0,197
db 102,15,56,0,203
pxor xmm0,xmm4
movdqa xmm4,[64+ebx]
pxor xmm0,xmm1
movdqa xmm1,[80+ebx]
db 102,15,56,0,226
db 102,15,56,0,197
db 102,15,56,0,203
pxor xmm0,xmm4
add edx,16
db 102,15,58,15,237,12
pxor xmm0,xmm1
sub eax,1
L$002dec_entry:
movdqa xmm1,xmm6
movdqa xmm2,[ebp-32]
pandn xmm1,xmm0
pand xmm0,xmm6
psrld xmm1,4
db 102,15,56,0,208
movdqa xmm3,xmm7
pxor xmm0,xmm1
db 102,15,56,0,217
movdqa xmm4,xmm7
pxor xmm3,xmm2
db 102,15,56,0,224
pxor xmm4,xmm2
movdqa xmm2,xmm7
db 102,15,56,0,211
movdqa xmm3,xmm7
pxor xmm2,xmm0
db 102,15,56,0,220
movdqu xmm0,[edx]
pxor xmm3,xmm1
jnz NEAR L$003dec_loop
movdqa xmm4,[96+ebx]
db 102,15,56,0,226
pxor xmm4,xmm0
movdqa xmm0,[112+ebx]
movdqa xmm2,[ecx]
db 102,15,56,0,195
pxor xmm0,xmm4
db 102,15,56,0,194
ret
align 16
__vpaes_schedule_core:
add ebp,DWORD [esp]
movdqu xmm0,[esi]
movdqa xmm2,[320+ebp]
movdqa xmm3,xmm0
lea ebx,[ebp]
movdqa [4+esp],xmm2
call __vpaes_schedule_transform
movdqa xmm7,xmm0
test edi,edi
jnz NEAR L$004schedule_am_decrypting
movdqu [edx],xmm0
jmp NEAR L$005schedule_go
L$004schedule_am_decrypting:
movdqa xmm1,[256+ecx*1+ebp]
db 102,15,56,0,217
movdqu [edx],xmm3
xor ecx,48
L$005schedule_go:
cmp eax,192
ja NEAR L$006schedule_256
je NEAR L$007schedule_192
L$008schedule_128:
mov eax,10
L$009loop_schedule_128:
call __vpaes_schedule_round
dec eax
jz NEAR L$010schedule_mangle_last
call __vpaes_schedule_mangle
jmp NEAR L$009loop_schedule_128
align 16
L$007schedule_192:
movdqu xmm0,[8+esi]
call __vpaes_schedule_transform
movdqa xmm6,xmm0
pxor xmm4,xmm4
movhlps xmm6,xmm4
mov eax,4
L$011loop_schedule_192:
call __vpaes_schedule_round
db 102,15,58,15,198,8
call __vpaes_schedule_mangle
call __vpaes_schedule_192_smear
call __vpaes_schedule_mangle
call __vpaes_schedule_round
dec eax
jz NEAR L$010schedule_mangle_last
call __vpaes_schedule_mangle
call __vpaes_schedule_192_smear
jmp NEAR L$011loop_schedule_192
align 16
L$006schedule_256:
movdqu xmm0,[16+esi]
call __vpaes_schedule_transform
mov eax,7
L$012loop_schedule_256:
call __vpaes_schedule_mangle
movdqa xmm6,xmm0
call __vpaes_schedule_round
dec eax
jz NEAR L$010schedule_mangle_last
call __vpaes_schedule_mangle
pshufd xmm0,xmm0,255
movdqa [20+esp],xmm7
movdqa xmm7,xmm6
call L$_vpaes_schedule_low_round
movdqa xmm7,[20+esp]
jmp NEAR L$012loop_schedule_256
align 16
L$010schedule_mangle_last:
lea ebx,[384+ebp]
test edi,edi
jnz NEAR L$013schedule_mangle_last_dec
movdqa xmm1,[256+ecx*1+ebp]
db 102,15,56,0,193
lea ebx,[352+ebp]
add edx,32
L$013schedule_mangle_last_dec:
add edx,-16
pxor xmm0,[336+ebp]
call __vpaes_schedule_transform
movdqu [edx],xmm0
pxor xmm0,xmm0
pxor xmm1,xmm1
pxor xmm2,xmm2
pxor xmm3,xmm3
pxor xmm4,xmm4
pxor xmm5,xmm5
pxor xmm6,xmm6
pxor xmm7,xmm7
ret
align 16
__vpaes_schedule_192_smear:
pshufd xmm1,xmm6,128
pshufd xmm0,xmm7,254
pxor xmm6,xmm1
pxor xmm1,xmm1
pxor xmm6,xmm0
movdqa xmm0,xmm6
movhlps xmm6,xmm1
ret
align 16
__vpaes_schedule_round:
movdqa xmm2,[8+esp]
pxor xmm1,xmm1
db 102,15,58,15,202,15
db 102,15,58,15,210,15
pxor xmm7,xmm1
pshufd xmm0,xmm0,255
db 102,15,58,15,192,1
movdqa [8+esp],xmm2
L$_vpaes_schedule_low_round:
movdqa xmm1,xmm7
pslldq xmm7,4
pxor xmm7,xmm1
movdqa xmm1,xmm7
pslldq xmm7,8
pxor xmm7,xmm1
pxor xmm7,[336+ebp]
movdqa xmm4,[ebp-16]
movdqa xmm5,[ebp-48]
movdqa xmm1,xmm4
pandn xmm1,xmm0
psrld xmm1,4
pand xmm0,xmm4
movdqa xmm2,[ebp-32]
db 102,15,56,0,208
pxor xmm0,xmm1
movdqa xmm3,xmm5
db 102,15,56,0,217
pxor xmm3,xmm2
movdqa xmm4,xmm5
db 102,15,56,0,224
pxor xmm4,xmm2
movdqa xmm2,xmm5
db 102,15,56,0,211
pxor xmm2,xmm0
movdqa xmm3,xmm5
db 102,15,56,0,220
pxor xmm3,xmm1
movdqa xmm4,[32+ebp]
db 102,15,56,0,226
movdqa xmm0,[48+ebp]
db 102,15,56,0,195
pxor xmm0,xmm4
pxor xmm0,xmm7
movdqa xmm7,xmm0
ret
align 16
__vpaes_schedule_transform:
movdqa xmm2,[ebp-16]
movdqa xmm1,xmm2
pandn xmm1,xmm0
psrld xmm1,4
pand xmm0,xmm2
movdqa xmm2,[ebx]
db 102,15,56,0,208
movdqa xmm0,[16+ebx]
db 102,15,56,0,193
pxor xmm0,xmm2
ret
align 16
__vpaes_schedule_mangle:
movdqa xmm4,xmm0
movdqa xmm5,[128+ebp]
test edi,edi
jnz NEAR L$014schedule_mangle_dec
add edx,16
pxor xmm4,[336+ebp]
db 102,15,56,0,229
movdqa xmm3,xmm4
db 102,15,56,0,229
pxor xmm3,xmm4
db 102,15,56,0,229
pxor xmm3,xmm4
jmp NEAR L$015schedule_mangle_both
align 16
L$014schedule_mangle_dec:
movdqa xmm2,[ebp-16]
lea esi,[416+ebp]
movdqa xmm1,xmm2
pandn xmm1,xmm4
psrld xmm1,4
pand xmm4,xmm2
movdqa xmm2,[esi]
db 102,15,56,0,212
movdqa xmm3,[16+esi]
db 102,15,56,0,217
pxor xmm3,xmm2
db 102,15,56,0,221
movdqa xmm2,[32+esi]
db 102,15,56,0,212
pxor xmm2,xmm3
movdqa xmm3,[48+esi]
db 102,15,56,0,217
pxor xmm3,xmm2
db 102,15,56,0,221
movdqa xmm2,[64+esi]
db 102,15,56,0,212
pxor xmm2,xmm3
movdqa xmm3,[80+esi]
db 102,15,56,0,217
pxor xmm3,xmm2
db 102,15,56,0,221
movdqa xmm2,[96+esi]
db 102,15,56,0,212
pxor xmm2,xmm3
movdqa xmm3,[112+esi]
db 102,15,56,0,217
pxor xmm3,xmm2
add edx,-16
L$015schedule_mangle_both:
movdqa xmm1,[256+ecx*1+ebp]
db 102,15,56,0,217
add ecx,-16
and ecx,48
movdqu [edx],xmm3
ret
global _vpaes_set_encrypt_key
align 16
_vpaes_set_encrypt_key:
L$_vpaes_set_encrypt_key_begin:
push ebp
push ebx
push esi
push edi
mov esi,DWORD [20+esp]
lea ebx,[esp-56]
mov eax,DWORD [24+esp]
and ebx,-16
mov edx,DWORD [28+esp]
xchg ebx,esp
mov DWORD [48+esp],ebx
mov ebx,eax
shr ebx,5
add ebx,5
mov DWORD [240+edx],ebx
mov ecx,48
mov edi,0
lea ebp,[(L$_vpaes_consts+0x30-L$016pic_point)]
call __vpaes_schedule_core
L$016pic_point:
mov esp,DWORD [48+esp]
xor eax,eax
pop edi
pop esi
pop ebx
pop ebp
ret
global _vpaes_set_decrypt_key
align 16
_vpaes_set_decrypt_key:
L$_vpaes_set_decrypt_key_begin:
push ebp
push ebx
push esi
push edi
mov esi,DWORD [20+esp]
lea ebx,[esp-56]
mov eax,DWORD [24+esp]
and ebx,-16
mov edx,DWORD [28+esp]
xchg ebx,esp
mov DWORD [48+esp],ebx
mov ebx,eax
shr ebx,5
add ebx,5
mov DWORD [240+edx],ebx
shl ebx,4
lea edx,[16+ebx*1+edx]
mov edi,1
mov ecx,eax
shr ecx,1
and ecx,32
xor ecx,32
lea ebp,[(L$_vpaes_consts+0x30-L$017pic_point)]
call __vpaes_schedule_core
L$017pic_point:
mov esp,DWORD [48+esp]
xor eax,eax
pop edi
pop esi
pop ebx
pop ebp
ret
global _vpaes_encrypt
align 16
_vpaes_encrypt:
L$_vpaes_encrypt_begin:
push ebp
push ebx
push esi
push edi
lea ebp,[(L$_vpaes_consts+0x30-L$018pic_point)]
call __vpaes_preheat
L$018pic_point:
mov esi,DWORD [20+esp]
lea ebx,[esp-56]
mov edi,DWORD [24+esp]
and ebx,-16
mov edx,DWORD [28+esp]
xchg ebx,esp
mov DWORD [48+esp],ebx
movdqu xmm0,[esi]
call __vpaes_encrypt_core
movdqu [edi],xmm0
mov esp,DWORD [48+esp]
pop edi
pop esi
pop ebx
pop ebp
ret
global _vpaes_decrypt
align 16
_vpaes_decrypt:
L$_vpaes_decrypt_begin:
push ebp
push ebx
push esi
push edi
lea ebp,[(L$_vpaes_consts+0x30-L$019pic_point)]
call __vpaes_preheat
L$019pic_point:
mov esi,DWORD [20+esp]
lea ebx,[esp-56]
mov edi,DWORD [24+esp]
and ebx,-16
mov edx,DWORD [28+esp]
xchg ebx,esp
mov DWORD [48+esp],ebx
movdqu xmm0,[esi]
call __vpaes_decrypt_core
movdqu [edi],xmm0
mov esp,DWORD [48+esp]
pop edi
pop esi
pop ebx
pop ebp
ret
global _vpaes_cbc_encrypt
align 16
_vpaes_cbc_encrypt:
L$_vpaes_cbc_encrypt_begin:
push ebp
push ebx
push esi
push edi
mov esi,DWORD [20+esp]
mov edi,DWORD [24+esp]
mov eax,DWORD [28+esp]
mov edx,DWORD [32+esp]
sub eax,16
jc NEAR L$020cbc_abort
lea ebx,[esp-56]
mov ebp,DWORD [36+esp]
and ebx,-16
mov ecx,DWORD [40+esp]
xchg ebx,esp
movdqu xmm1,[ebp]
sub edi,esi
mov DWORD [48+esp],ebx
mov DWORD [esp],edi
mov DWORD [4+esp],edx
mov DWORD [8+esp],ebp
mov edi,eax
lea ebp,[(L$_vpaes_consts+0x30-L$021pic_point)]
call __vpaes_preheat
L$021pic_point:
cmp ecx,0
je NEAR L$022cbc_dec_loop
jmp NEAR L$023cbc_enc_loop
align 16
L$023cbc_enc_loop:
movdqu xmm0,[esi]
pxor xmm0,xmm1
call __vpaes_encrypt_core
mov ebx,DWORD [esp]
mov edx,DWORD [4+esp]
movdqa xmm1,xmm0
movdqu [esi*1+ebx],xmm0
lea esi,[16+esi]
sub edi,16
jnc NEAR L$023cbc_enc_loop
jmp NEAR L$024cbc_done
align 16
L$022cbc_dec_loop:
movdqu xmm0,[esi]
movdqa [16+esp],xmm1
movdqa [32+esp],xmm0
call __vpaes_decrypt_core
mov ebx,DWORD [esp]
mov edx,DWORD [4+esp]
pxor xmm0,[16+esp]
movdqa xmm1,[32+esp]
movdqu [esi*1+ebx],xmm0
lea esi,[16+esi]
sub edi,16
jnc NEAR L$022cbc_dec_loop
L$024cbc_done:
mov ebx,DWORD [8+esp]
mov esp,DWORD [48+esp]
movdqu [ebx],xmm1
L$020cbc_abort:
pop edi
pop esi
pop ebx
pop ebp
ret
@@ -0,0 +1,896 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
global _BF_encrypt
align 16
_BF_encrypt:
L$_BF_encrypt_begin:
;
push ebp
push ebx
mov ebx,DWORD [12+esp]
mov ebp,DWORD [16+esp]
push esi
push edi
; Load the 2 words
mov edi,DWORD [ebx]
mov esi,DWORD [4+ebx]
xor eax,eax
mov ebx,DWORD [ebp]
xor ecx,ecx
xor edi,ebx
;
; Round 0
mov edx,DWORD [4+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 1
mov edx,DWORD [8+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 2
mov edx,DWORD [12+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 3
mov edx,DWORD [16+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 4
mov edx,DWORD [20+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 5
mov edx,DWORD [24+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 6
mov edx,DWORD [28+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 7
mov edx,DWORD [32+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 8
mov edx,DWORD [36+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 9
mov edx,DWORD [40+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 10
mov edx,DWORD [44+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 11
mov edx,DWORD [48+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 12
mov edx,DWORD [52+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 13
mov edx,DWORD [56+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 14
mov edx,DWORD [60+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 15
mov edx,DWORD [64+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
; Load parameter 0 (16) enc=1
mov eax,DWORD [20+esp]
xor edi,ebx
mov edx,DWORD [68+ebp]
xor esi,edx
mov DWORD [4+eax],edi
mov DWORD [eax],esi
pop edi
pop esi
pop ebx
pop ebp
ret
global _BF_decrypt
align 16
_BF_decrypt:
L$_BF_decrypt_begin:
;
push ebp
push ebx
mov ebx,DWORD [12+esp]
mov ebp,DWORD [16+esp]
push esi
push edi
; Load the 2 words
mov edi,DWORD [ebx]
mov esi,DWORD [4+ebx]
xor eax,eax
mov ebx,DWORD [68+ebp]
xor ecx,ecx
xor edi,ebx
;
; Round 16
mov edx,DWORD [64+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 15
mov edx,DWORD [60+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 14
mov edx,DWORD [56+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 13
mov edx,DWORD [52+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 12
mov edx,DWORD [48+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 11
mov edx,DWORD [44+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 10
mov edx,DWORD [40+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 9
mov edx,DWORD [36+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 8
mov edx,DWORD [32+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 7
mov edx,DWORD [28+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 6
mov edx,DWORD [24+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 5
mov edx,DWORD [20+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 4
mov edx,DWORD [16+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 3
mov edx,DWORD [12+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor edi,ebx
;
; Round 2
mov edx,DWORD [8+ebp]
mov ebx,edi
xor esi,edx
shr ebx,16
mov edx,edi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
xor eax,eax
xor esi,ebx
;
; Round 1
mov edx,DWORD [4+ebp]
mov ebx,esi
xor edi,edx
shr ebx,16
mov edx,esi
mov al,bh
and ebx,255
mov cl,dh
and edx,255
mov eax,DWORD [72+eax*4+ebp]
mov ebx,DWORD [1096+ebx*4+ebp]
add ebx,eax
mov eax,DWORD [2120+ecx*4+ebp]
xor ebx,eax
mov edx,DWORD [3144+edx*4+ebp]
add ebx,edx
; Load parameter 0 (1) enc=0
mov eax,DWORD [20+esp]
xor edi,ebx
mov edx,DWORD [ebp]
xor esi,edx
mov DWORD [4+eax],edi
mov DWORD [eax],esi
pop edi
pop esi
pop ebx
pop ebp
ret
global _BF_cbc_encrypt
align 16
_BF_cbc_encrypt:
L$_BF_cbc_encrypt_begin:
;
push ebp
push ebx
push esi
push edi
mov ebp,DWORD [28+esp]
; getting iv ptr from parameter 4
mov ebx,DWORD [36+esp]
mov esi,DWORD [ebx]
mov edi,DWORD [4+ebx]
push edi
push esi
push edi
push esi
mov ebx,esp
mov esi,DWORD [36+esp]
mov edi,DWORD [40+esp]
; getting encrypt flag from parameter 5
mov ecx,DWORD [56+esp]
; get and push parameter 3
mov eax,DWORD [48+esp]
push eax
push ebx
cmp ecx,0
jz NEAR L$000decrypt
and ebp,4294967288
mov eax,DWORD [8+esp]
mov ebx,DWORD [12+esp]
jz NEAR L$001encrypt_finish
L$002encrypt_loop:
mov ecx,DWORD [esi]
mov edx,DWORD [4+esi]
xor eax,ecx
xor ebx,edx
bswap eax
bswap ebx
mov DWORD [8+esp],eax
mov DWORD [12+esp],ebx
call L$_BF_encrypt_begin
mov eax,DWORD [8+esp]
mov ebx,DWORD [12+esp]
bswap eax
bswap ebx
mov DWORD [edi],eax
mov DWORD [4+edi],ebx
add esi,8
add edi,8
sub ebp,8
jnz NEAR L$002encrypt_loop
L$001encrypt_finish:
mov ebp,DWORD [52+esp]
and ebp,7
jz NEAR L$003finish
call L$004PIC_point
L$004PIC_point:
pop edx
lea ecx,[(L$005cbc_enc_jmp_table-L$004PIC_point)+edx]
mov ebp,DWORD [ebp*4+ecx]
add ebp,edx
xor ecx,ecx
xor edx,edx
jmp ebp
L$006ej7:
mov dh,BYTE [6+esi]
shl edx,8
L$007ej6:
mov dh,BYTE [5+esi]
L$008ej5:
mov dl,BYTE [4+esi]
L$009ej4:
mov ecx,DWORD [esi]
jmp NEAR L$010ejend
L$011ej3:
mov ch,BYTE [2+esi]
shl ecx,8
L$012ej2:
mov ch,BYTE [1+esi]
L$013ej1:
mov cl,BYTE [esi]
L$010ejend:
xor eax,ecx
xor ebx,edx
bswap eax
bswap ebx
mov DWORD [8+esp],eax
mov DWORD [12+esp],ebx
call L$_BF_encrypt_begin
mov eax,DWORD [8+esp]
mov ebx,DWORD [12+esp]
bswap eax
bswap ebx
mov DWORD [edi],eax
mov DWORD [4+edi],ebx
jmp NEAR L$003finish
L$000decrypt:
and ebp,4294967288
mov eax,DWORD [16+esp]
mov ebx,DWORD [20+esp]
jz NEAR L$014decrypt_finish
L$015decrypt_loop:
mov eax,DWORD [esi]
mov ebx,DWORD [4+esi]
bswap eax
bswap ebx
mov DWORD [8+esp],eax
mov DWORD [12+esp],ebx
call L$_BF_decrypt_begin
mov eax,DWORD [8+esp]
mov ebx,DWORD [12+esp]
bswap eax
bswap ebx
mov ecx,DWORD [16+esp]
mov edx,DWORD [20+esp]
xor ecx,eax
xor edx,ebx
mov eax,DWORD [esi]
mov ebx,DWORD [4+esi]
mov DWORD [edi],ecx
mov DWORD [4+edi],edx
mov DWORD [16+esp],eax
mov DWORD [20+esp],ebx
add esi,8
add edi,8
sub ebp,8
jnz NEAR L$015decrypt_loop
L$014decrypt_finish:
mov ebp,DWORD [52+esp]
and ebp,7
jz NEAR L$003finish
mov eax,DWORD [esi]
mov ebx,DWORD [4+esi]
bswap eax
bswap ebx
mov DWORD [8+esp],eax
mov DWORD [12+esp],ebx
call L$_BF_decrypt_begin
mov eax,DWORD [8+esp]
mov ebx,DWORD [12+esp]
bswap eax
bswap ebx
mov ecx,DWORD [16+esp]
mov edx,DWORD [20+esp]
xor ecx,eax
xor edx,ebx
mov eax,DWORD [esi]
mov ebx,DWORD [4+esi]
L$016dj7:
ror edx,16
mov BYTE [6+edi],dl
shr edx,16
L$017dj6:
mov BYTE [5+edi],dh
L$018dj5:
mov BYTE [4+edi],dl
L$019dj4:
mov DWORD [edi],ecx
jmp NEAR L$020djend
L$021dj3:
ror ecx,16
mov BYTE [2+edi],cl
shl ecx,16
L$022dj2:
mov BYTE [1+esi],ch
L$023dj1:
mov BYTE [esi],cl
L$020djend:
jmp NEAR L$003finish
L$003finish:
mov ecx,DWORD [60+esp]
add esp,24
mov DWORD [ecx],eax
mov DWORD [4+ecx],ebx
pop edi
pop esi
pop ebx
pop ebp
ret
align 64
L$005cbc_enc_jmp_table:
dd 0
dd L$013ej1-L$004PIC_point
dd L$012ej2-L$004PIC_point
dd L$011ej3-L$004PIC_point
dd L$009ej4-L$004PIC_point
dd L$008ej5-L$004PIC_point
dd L$007ej6-L$004PIC_point
dd L$006ej7-L$004PIC_point
align 64
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,345 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
;extern _OPENSSL_ia32cap_P
align 16
__mul_1x1_mmx:
sub esp,36
mov ecx,eax
lea edx,[eax*1+eax]
and ecx,1073741823
lea ebp,[edx*1+edx]
mov DWORD [esp],0
and edx,2147483647
movd mm2,eax
movd mm3,ebx
mov DWORD [4+esp],ecx
xor ecx,edx
pxor mm5,mm5
pxor mm4,mm4
mov DWORD [8+esp],edx
xor edx,ebp
mov DWORD [12+esp],ecx
pcmpgtd mm5,mm2
paddd mm2,mm2
xor ecx,edx
mov DWORD [16+esp],ebp
xor ebp,edx
pand mm5,mm3
pcmpgtd mm4,mm2
mov DWORD [20+esp],ecx
xor ebp,ecx
psllq mm5,31
pand mm4,mm3
mov DWORD [24+esp],edx
mov esi,7
mov DWORD [28+esp],ebp
mov ebp,esi
and esi,ebx
shr ebx,3
mov edi,ebp
psllq mm4,30
and edi,ebx
shr ebx,3
movd mm0,DWORD [esi*4+esp]
mov esi,ebp
and esi,ebx
shr ebx,3
movd mm2,DWORD [edi*4+esp]
mov edi,ebp
psllq mm2,3
and edi,ebx
shr ebx,3
pxor mm0,mm2
movd mm1,DWORD [esi*4+esp]
mov esi,ebp
psllq mm1,6
and esi,ebx
shr ebx,3
pxor mm0,mm1
movd mm2,DWORD [edi*4+esp]
mov edi,ebp
psllq mm2,9
and edi,ebx
shr ebx,3
pxor mm0,mm2
movd mm1,DWORD [esi*4+esp]
mov esi,ebp
psllq mm1,12
and esi,ebx
shr ebx,3
pxor mm0,mm1
movd mm2,DWORD [edi*4+esp]
mov edi,ebp
psllq mm2,15
and edi,ebx
shr ebx,3
pxor mm0,mm2
movd mm1,DWORD [esi*4+esp]
mov esi,ebp
psllq mm1,18
and esi,ebx
shr ebx,3
pxor mm0,mm1
movd mm2,DWORD [edi*4+esp]
mov edi,ebp
psllq mm2,21
and edi,ebx
shr ebx,3
pxor mm0,mm2
movd mm1,DWORD [esi*4+esp]
mov esi,ebp
psllq mm1,24
and esi,ebx
shr ebx,3
pxor mm0,mm1
movd mm2,DWORD [edi*4+esp]
pxor mm0,mm4
psllq mm2,27
pxor mm0,mm2
movd mm1,DWORD [esi*4+esp]
pxor mm0,mm5
psllq mm1,30
add esp,36
pxor mm0,mm1
ret
align 16
__mul_1x1_ialu:
sub esp,36
mov ecx,eax
lea edx,[eax*1+eax]
lea ebp,[eax*4]
and ecx,1073741823
lea edi,[eax*1+eax]
sar eax,31
mov DWORD [esp],0
and edx,2147483647
mov DWORD [4+esp],ecx
xor ecx,edx
mov DWORD [8+esp],edx
xor edx,ebp
mov DWORD [12+esp],ecx
xor ecx,edx
mov DWORD [16+esp],ebp
xor ebp,edx
mov DWORD [20+esp],ecx
xor ebp,ecx
sar edi,31
and eax,ebx
mov DWORD [24+esp],edx
and edi,ebx
mov DWORD [28+esp],ebp
mov edx,eax
shl eax,31
mov ecx,edi
shr edx,1
mov esi,7
shl edi,30
and esi,ebx
shr ecx,2
xor eax,edi
shr ebx,3
mov edi,7
and edi,ebx
shr ebx,3
xor edx,ecx
xor eax,DWORD [esi*4+esp]
mov esi,7
and esi,ebx
shr ebx,3
mov ebp,DWORD [edi*4+esp]
mov edi,7
mov ecx,ebp
shl ebp,3
and edi,ebx
shr ecx,29
xor eax,ebp
shr ebx,3
xor edx,ecx
mov ecx,DWORD [esi*4+esp]
mov esi,7
mov ebp,ecx
shl ecx,6
and esi,ebx
shr ebp,26
xor eax,ecx
shr ebx,3
xor edx,ebp
mov ebp,DWORD [edi*4+esp]
mov edi,7
mov ecx,ebp
shl ebp,9
and edi,ebx
shr ecx,23
xor eax,ebp
shr ebx,3
xor edx,ecx
mov ecx,DWORD [esi*4+esp]
mov esi,7
mov ebp,ecx
shl ecx,12
and esi,ebx
shr ebp,20
xor eax,ecx
shr ebx,3
xor edx,ebp
mov ebp,DWORD [edi*4+esp]
mov edi,7
mov ecx,ebp
shl ebp,15
and edi,ebx
shr ecx,17
xor eax,ebp
shr ebx,3
xor edx,ecx
mov ecx,DWORD [esi*4+esp]
mov esi,7
mov ebp,ecx
shl ecx,18
and esi,ebx
shr ebp,14
xor eax,ecx
shr ebx,3
xor edx,ebp
mov ebp,DWORD [edi*4+esp]
mov edi,7
mov ecx,ebp
shl ebp,21
and edi,ebx
shr ecx,11
xor eax,ebp
shr ebx,3
xor edx,ecx
mov ecx,DWORD [esi*4+esp]
mov esi,7
mov ebp,ecx
shl ecx,24
and esi,ebx
shr ebp,8
xor eax,ecx
shr ebx,3
xor edx,ebp
mov ebp,DWORD [edi*4+esp]
mov ecx,ebp
shl ebp,27
mov edi,DWORD [esi*4+esp]
shr ecx,5
mov esi,edi
xor eax,ebp
shl edi,30
xor edx,ecx
shr esi,2
xor eax,edi
xor edx,esi
add esp,36
ret
global _bn_GF2m_mul_2x2
align 16
_bn_GF2m_mul_2x2:
L$_bn_GF2m_mul_2x2_begin:
lea edx,[_OPENSSL_ia32cap_P]
mov eax,DWORD [edx]
mov edx,DWORD [4+edx]
test eax,8388608
jz NEAR L$000ialu
test eax,16777216
jz NEAR L$001mmx
test edx,2
jz NEAR L$001mmx
movups xmm0,[8+esp]
shufps xmm0,xmm0,177
db 102,15,58,68,192,1
mov eax,DWORD [4+esp]
movups [eax],xmm0
ret
align 16
L$001mmx:
push ebp
push ebx
push esi
push edi
mov eax,DWORD [24+esp]
mov ebx,DWORD [32+esp]
call __mul_1x1_mmx
movq mm7,mm0
mov eax,DWORD [28+esp]
mov ebx,DWORD [36+esp]
call __mul_1x1_mmx
movq mm6,mm0
mov eax,DWORD [24+esp]
mov ebx,DWORD [32+esp]
xor eax,DWORD [28+esp]
xor ebx,DWORD [36+esp]
call __mul_1x1_mmx
pxor mm0,mm7
mov eax,DWORD [20+esp]
pxor mm0,mm6
movq mm2,mm0
psllq mm0,32
pop edi
psrlq mm2,32
pop esi
pxor mm0,mm6
pop ebx
pxor mm2,mm7
movq [eax],mm0
pop ebp
movq [8+eax],mm2
emms
ret
align 16
L$000ialu:
push ebp
push ebx
push esi
push edi
sub esp,20
mov eax,DWORD [44+esp]
mov ebx,DWORD [52+esp]
call __mul_1x1_ialu
mov DWORD [8+esp],eax
mov DWORD [12+esp],edx
mov eax,DWORD [48+esp]
mov ebx,DWORD [56+esp]
call __mul_1x1_ialu
mov DWORD [esp],eax
mov DWORD [4+esp],edx
mov eax,DWORD [44+esp]
mov ebx,DWORD [52+esp]
xor eax,DWORD [48+esp]
xor ebx,DWORD [56+esp]
call __mul_1x1_ialu
mov ebp,DWORD [40+esp]
mov ebx,DWORD [esp]
mov ecx,DWORD [4+esp]
mov edi,DWORD [8+esp]
mov esi,DWORD [12+esp]
xor eax,edx
xor edx,ecx
xor eax,ebx
mov DWORD [ebp],ebx
xor edx,edi
mov DWORD [12+ebp],esi
xor eax,esi
add esp,20
xor edx,esi
pop edi
xor eax,edx
pop esi
mov DWORD [8+ebp],edx
pop ebx
mov DWORD [4+ebp],eax
pop ebp
ret
db 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105
db 99,97,116,105,111,110,32,102,111,114,32,120,56,54,44,32
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
segment .bss
common _OPENSSL_ia32cap_P 16
@@ -0,0 +1,477 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
;extern _OPENSSL_ia32cap_P
global _bn_mul_mont
align 16
_bn_mul_mont:
L$_bn_mul_mont_begin:
push ebp
push ebx
push esi
push edi
xor eax,eax
mov edi,DWORD [40+esp]
cmp edi,4
jl NEAR L$000just_leave
lea esi,[20+esp]
lea edx,[24+esp]
add edi,2
neg edi
lea ebp,[edi*4+esp-32]
neg edi
mov eax,ebp
sub eax,edx
and eax,2047
sub ebp,eax
xor edx,ebp
and edx,2048
xor edx,2048
sub ebp,edx
and ebp,-64
mov eax,esp
sub eax,ebp
and eax,-4096
mov edx,esp
lea esp,[eax*1+ebp]
mov eax,DWORD [esp]
cmp esp,ebp
ja NEAR L$001page_walk
jmp NEAR L$002page_walk_done
align 16
L$001page_walk:
lea esp,[esp-4096]
mov eax,DWORD [esp]
cmp esp,ebp
ja NEAR L$001page_walk
L$002page_walk_done:
mov eax,DWORD [esi]
mov ebx,DWORD [4+esi]
mov ecx,DWORD [8+esi]
mov ebp,DWORD [12+esi]
mov esi,DWORD [16+esi]
mov esi,DWORD [esi]
mov DWORD [4+esp],eax
mov DWORD [8+esp],ebx
mov DWORD [12+esp],ecx
mov DWORD [16+esp],ebp
mov DWORD [20+esp],esi
lea ebx,[edi-3]
mov DWORD [24+esp],edx
lea eax,[_OPENSSL_ia32cap_P]
bt DWORD [eax],26
jnc NEAR L$003non_sse2
mov eax,-1
movd mm7,eax
mov esi,DWORD [8+esp]
mov edi,DWORD [12+esp]
mov ebp,DWORD [16+esp]
xor edx,edx
xor ecx,ecx
movd mm4,DWORD [edi]
movd mm5,DWORD [esi]
movd mm3,DWORD [ebp]
pmuludq mm5,mm4
movq mm2,mm5
movq mm0,mm5
pand mm0,mm7
pmuludq mm5,[20+esp]
pmuludq mm3,mm5
paddq mm3,mm0
movd mm1,DWORD [4+ebp]
movd mm0,DWORD [4+esi]
psrlq mm2,32
psrlq mm3,32
inc ecx
align 16
L$0041st:
pmuludq mm0,mm4
pmuludq mm1,mm5
paddq mm2,mm0
paddq mm3,mm1
movq mm0,mm2
pand mm0,mm7
movd mm1,DWORD [4+ecx*4+ebp]
paddq mm3,mm0
movd mm0,DWORD [4+ecx*4+esi]
psrlq mm2,32
movd DWORD [28+ecx*4+esp],mm3
psrlq mm3,32
lea ecx,[1+ecx]
cmp ecx,ebx
jl NEAR L$0041st
pmuludq mm0,mm4
pmuludq mm1,mm5
paddq mm2,mm0
paddq mm3,mm1
movq mm0,mm2
pand mm0,mm7
paddq mm3,mm0
movd DWORD [28+ecx*4+esp],mm3
psrlq mm2,32
psrlq mm3,32
paddq mm3,mm2
movq [32+ebx*4+esp],mm3
inc edx
L$005outer:
xor ecx,ecx
movd mm4,DWORD [edx*4+edi]
movd mm5,DWORD [esi]
movd mm6,DWORD [32+esp]
movd mm3,DWORD [ebp]
pmuludq mm5,mm4
paddq mm5,mm6
movq mm0,mm5
movq mm2,mm5
pand mm0,mm7
pmuludq mm5,[20+esp]
pmuludq mm3,mm5
paddq mm3,mm0
movd mm6,DWORD [36+esp]
movd mm1,DWORD [4+ebp]
movd mm0,DWORD [4+esi]
psrlq mm2,32
psrlq mm3,32
paddq mm2,mm6
inc ecx
dec ebx
L$006inner:
pmuludq mm0,mm4
pmuludq mm1,mm5
paddq mm2,mm0
paddq mm3,mm1
movq mm0,mm2
movd mm6,DWORD [36+ecx*4+esp]
pand mm0,mm7
movd mm1,DWORD [4+ecx*4+ebp]
paddq mm3,mm0
movd mm0,DWORD [4+ecx*4+esi]
psrlq mm2,32
movd DWORD [28+ecx*4+esp],mm3
psrlq mm3,32
paddq mm2,mm6
dec ebx
lea ecx,[1+ecx]
jnz NEAR L$006inner
mov ebx,ecx
pmuludq mm0,mm4
pmuludq mm1,mm5
paddq mm2,mm0
paddq mm3,mm1
movq mm0,mm2
pand mm0,mm7
paddq mm3,mm0
movd DWORD [28+ecx*4+esp],mm3
psrlq mm2,32
psrlq mm3,32
movd mm6,DWORD [36+ebx*4+esp]
paddq mm3,mm2
paddq mm3,mm6
movq [32+ebx*4+esp],mm3
lea edx,[1+edx]
cmp edx,ebx
jle NEAR L$005outer
emms
jmp NEAR L$007common_tail
align 16
L$003non_sse2:
mov esi,DWORD [8+esp]
lea ebp,[1+ebx]
mov edi,DWORD [12+esp]
xor ecx,ecx
mov edx,esi
and ebp,1
sub edx,edi
lea eax,[4+ebx*4+edi]
or ebp,edx
mov edi,DWORD [edi]
jz NEAR L$008bn_sqr_mont
mov DWORD [28+esp],eax
mov eax,DWORD [esi]
xor edx,edx
align 16
L$009mull:
mov ebp,edx
mul edi
add ebp,eax
lea ecx,[1+ecx]
adc edx,0
mov eax,DWORD [ecx*4+esi]
cmp ecx,ebx
mov DWORD [28+ecx*4+esp],ebp
jl NEAR L$009mull
mov ebp,edx
mul edi
mov edi,DWORD [20+esp]
add eax,ebp
mov esi,DWORD [16+esp]
adc edx,0
imul edi,DWORD [32+esp]
mov DWORD [32+ebx*4+esp],eax
xor ecx,ecx
mov DWORD [36+ebx*4+esp],edx
mov DWORD [40+ebx*4+esp],ecx
mov eax,DWORD [esi]
mul edi
add eax,DWORD [32+esp]
mov eax,DWORD [4+esi]
adc edx,0
inc ecx
jmp NEAR L$0102ndmadd
align 16
L$0111stmadd:
mov ebp,edx
mul edi
add ebp,DWORD [32+ecx*4+esp]
lea ecx,[1+ecx]
adc edx,0
add ebp,eax
mov eax,DWORD [ecx*4+esi]
adc edx,0
cmp ecx,ebx
mov DWORD [28+ecx*4+esp],ebp
jl NEAR L$0111stmadd
mov ebp,edx
mul edi
add eax,DWORD [32+ebx*4+esp]
mov edi,DWORD [20+esp]
adc edx,0
mov esi,DWORD [16+esp]
add ebp,eax
adc edx,0
imul edi,DWORD [32+esp]
xor ecx,ecx
add edx,DWORD [36+ebx*4+esp]
mov DWORD [32+ebx*4+esp],ebp
adc ecx,0
mov eax,DWORD [esi]
mov DWORD [36+ebx*4+esp],edx
mov DWORD [40+ebx*4+esp],ecx
mul edi
add eax,DWORD [32+esp]
mov eax,DWORD [4+esi]
adc edx,0
mov ecx,1
align 16
L$0102ndmadd:
mov ebp,edx
mul edi
add ebp,DWORD [32+ecx*4+esp]
lea ecx,[1+ecx]
adc edx,0
add ebp,eax
mov eax,DWORD [ecx*4+esi]
adc edx,0
cmp ecx,ebx
mov DWORD [24+ecx*4+esp],ebp
jl NEAR L$0102ndmadd
mov ebp,edx
mul edi
add ebp,DWORD [32+ebx*4+esp]
adc edx,0
add ebp,eax
adc edx,0
mov DWORD [28+ebx*4+esp],ebp
xor eax,eax
mov ecx,DWORD [12+esp]
add edx,DWORD [36+ebx*4+esp]
adc eax,DWORD [40+ebx*4+esp]
lea ecx,[4+ecx]
mov DWORD [32+ebx*4+esp],edx
cmp ecx,DWORD [28+esp]
mov DWORD [36+ebx*4+esp],eax
je NEAR L$007common_tail
mov edi,DWORD [ecx]
mov esi,DWORD [8+esp]
mov DWORD [12+esp],ecx
xor ecx,ecx
xor edx,edx
mov eax,DWORD [esi]
jmp NEAR L$0111stmadd
align 16
L$008bn_sqr_mont:
mov DWORD [esp],ebx
mov DWORD [12+esp],ecx
mov eax,edi
mul edi
mov DWORD [32+esp],eax
mov ebx,edx
shr edx,1
and ebx,1
inc ecx
align 16
L$012sqr:
mov eax,DWORD [ecx*4+esi]
mov ebp,edx
mul edi
add eax,ebp
lea ecx,[1+ecx]
adc edx,0
lea ebp,[eax*2+ebx]
shr eax,31
cmp ecx,DWORD [esp]
mov ebx,eax
mov DWORD [28+ecx*4+esp],ebp
jl NEAR L$012sqr
mov eax,DWORD [ecx*4+esi]
mov ebp,edx
mul edi
add eax,ebp
mov edi,DWORD [20+esp]
adc edx,0
mov esi,DWORD [16+esp]
lea ebp,[eax*2+ebx]
imul edi,DWORD [32+esp]
shr eax,31
mov DWORD [32+ecx*4+esp],ebp
lea ebp,[edx*2+eax]
mov eax,DWORD [esi]
shr edx,31
mov DWORD [36+ecx*4+esp],ebp
mov DWORD [40+ecx*4+esp],edx
mul edi
add eax,DWORD [32+esp]
mov ebx,ecx
adc edx,0
mov eax,DWORD [4+esi]
mov ecx,1
align 16
L$0133rdmadd:
mov ebp,edx
mul edi
add ebp,DWORD [32+ecx*4+esp]
adc edx,0
add ebp,eax
mov eax,DWORD [4+ecx*4+esi]
adc edx,0
mov DWORD [28+ecx*4+esp],ebp
mov ebp,edx
mul edi
add ebp,DWORD [36+ecx*4+esp]
lea ecx,[2+ecx]
adc edx,0
add ebp,eax
mov eax,DWORD [ecx*4+esi]
adc edx,0
cmp ecx,ebx
mov DWORD [24+ecx*4+esp],ebp
jl NEAR L$0133rdmadd
mov ebp,edx
mul edi
add ebp,DWORD [32+ebx*4+esp]
adc edx,0
add ebp,eax
adc edx,0
mov DWORD [28+ebx*4+esp],ebp
mov ecx,DWORD [12+esp]
xor eax,eax
mov esi,DWORD [8+esp]
add edx,DWORD [36+ebx*4+esp]
adc eax,DWORD [40+ebx*4+esp]
mov DWORD [32+ebx*4+esp],edx
cmp ecx,ebx
mov DWORD [36+ebx*4+esp],eax
je NEAR L$007common_tail
mov edi,DWORD [4+ecx*4+esi]
lea ecx,[1+ecx]
mov eax,edi
mov DWORD [12+esp],ecx
mul edi
add eax,DWORD [32+ecx*4+esp]
adc edx,0
mov DWORD [32+ecx*4+esp],eax
xor ebp,ebp
cmp ecx,ebx
lea ecx,[1+ecx]
je NEAR L$014sqrlast
mov ebx,edx
shr edx,1
and ebx,1
align 16
L$015sqradd:
mov eax,DWORD [ecx*4+esi]
mov ebp,edx
mul edi
add eax,ebp
lea ebp,[eax*1+eax]
adc edx,0
shr eax,31
add ebp,DWORD [32+ecx*4+esp]
lea ecx,[1+ecx]
adc eax,0
add ebp,ebx
adc eax,0
cmp ecx,DWORD [esp]
mov DWORD [28+ecx*4+esp],ebp
mov ebx,eax
jle NEAR L$015sqradd
mov ebp,edx
add edx,edx
shr ebp,31
add edx,ebx
adc ebp,0
L$014sqrlast:
mov edi,DWORD [20+esp]
mov esi,DWORD [16+esp]
imul edi,DWORD [32+esp]
add edx,DWORD [32+ecx*4+esp]
mov eax,DWORD [esi]
adc ebp,0
mov DWORD [32+ecx*4+esp],edx
mov DWORD [36+ecx*4+esp],ebp
mul edi
add eax,DWORD [32+esp]
lea ebx,[ecx-1]
adc edx,0
mov ecx,1
mov eax,DWORD [4+esi]
jmp NEAR L$0133rdmadd
align 16
L$007common_tail:
mov ebp,DWORD [16+esp]
mov edi,DWORD [4+esp]
lea esi,[32+esp]
mov eax,DWORD [esi]
mov ecx,ebx
xor edx,edx
align 16
L$016sub:
sbb eax,DWORD [edx*4+ebp]
mov DWORD [edx*4+edi],eax
dec ecx
mov eax,DWORD [4+edx*4+esi]
lea edx,[1+edx]
jge NEAR L$016sub
sbb eax,0
and esi,eax
not eax
mov ebp,edi
and ebp,eax
or esi,ebp
align 16
L$017copy:
mov eax,DWORD [ebx*4+esi]
mov DWORD [ebx*4+edi],eax
mov DWORD [32+ebx*4+esp],ecx
dec ebx
jge NEAR L$017copy
mov esp,DWORD [24+esp]
mov eax,1
L$000just_leave:
pop edi
pop esi
pop ebx
pop ebp
ret
db 77,111,110,116,103,111,109,101,114,121,32,77,117,108,116,105
db 112,108,105,99,97,116,105,111,110,32,102,111,114,32,120,56
db 54,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
segment .bss
common _OPENSSL_ia32cap_P 16
@@ -0,0 +1,12 @@
/* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
#define CFLAGS cflags
/*
* Generate CFLAGS as an array of individual characters. This is a
* workaround for the situation where CFLAGS gets too long for a C90 string
* literal
*/
static const char cflags[] = {
'c','o','m','p','i','l','e','r',':',' ','c','c','\0'
};
#define PLATFORM "platform: "
#define DATE "built on: Tue Apr 3 00:38:59 2018"
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,880 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
extern _DES_SPtrans
global _fcrypt_body
align 16
_fcrypt_body:
L$_fcrypt_body_begin:
push ebp
push ebx
push esi
push edi
;
; Load the 2 words
xor edi,edi
xor esi,esi
lea edx,[_DES_SPtrans]
push edx
mov ebp,DWORD [28+esp]
push DWORD 25
L$000start:
;
; Round 0
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [ebp]
xor eax,ebx
mov ecx,DWORD [4+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 1
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [8+ebp]
xor eax,ebx
mov ecx,DWORD [12+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 2
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [16+ebp]
xor eax,ebx
mov ecx,DWORD [20+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 3
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [24+ebp]
xor eax,ebx
mov ecx,DWORD [28+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 4
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [32+ebp]
xor eax,ebx
mov ecx,DWORD [36+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 5
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [40+ebp]
xor eax,ebx
mov ecx,DWORD [44+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 6
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [48+ebp]
xor eax,ebx
mov ecx,DWORD [52+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 7
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [56+ebp]
xor eax,ebx
mov ecx,DWORD [60+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 8
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [64+ebp]
xor eax,ebx
mov ecx,DWORD [68+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 9
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [72+ebp]
xor eax,ebx
mov ecx,DWORD [76+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 10
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [80+ebp]
xor eax,ebx
mov ecx,DWORD [84+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 11
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [88+ebp]
xor eax,ebx
mov ecx,DWORD [92+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 12
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [96+ebp]
xor eax,ebx
mov ecx,DWORD [100+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 13
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [104+ebp]
xor eax,ebx
mov ecx,DWORD [108+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
;
; Round 14
mov eax,DWORD [36+esp]
mov edx,esi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,esi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [112+ebp]
xor eax,ebx
mov ecx,DWORD [116+ebp]
xor eax,esi
xor edx,esi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor edi,DWORD [ebx*1+ebp]
mov bl,dl
xor edi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor edi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor edi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor edi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor edi,ebx
mov ebp,DWORD [32+esp]
;
; Round 15
mov eax,DWORD [36+esp]
mov edx,edi
shr edx,16
mov ecx,DWORD [40+esp]
xor edx,edi
and eax,edx
and edx,ecx
mov ebx,eax
shl ebx,16
mov ecx,edx
shl ecx,16
xor eax,ebx
xor edx,ecx
mov ebx,DWORD [120+ebp]
xor eax,ebx
mov ecx,DWORD [124+ebp]
xor eax,edi
xor edx,edi
xor edx,ecx
and eax,0xfcfcfcfc
xor ebx,ebx
and edx,0xcfcfcfcf
xor ecx,ecx
mov bl,al
mov cl,ah
ror edx,4
mov ebp,DWORD [4+esp]
xor esi,DWORD [ebx*1+ebp]
mov bl,dl
xor esi,DWORD [0x200+ecx*1+ebp]
mov cl,dh
shr eax,16
xor esi,DWORD [0x100+ebx*1+ebp]
mov bl,ah
shr edx,16
xor esi,DWORD [0x300+ecx*1+ebp]
mov cl,dh
and eax,0xff
and edx,0xff
mov ebx,DWORD [0x600+ebx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x700+ecx*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x400+eax*1+ebp]
xor esi,ebx
mov ebx,DWORD [0x500+edx*1+ebp]
xor esi,ebx
mov ebp,DWORD [32+esp]
mov ebx,DWORD [esp]
mov eax,edi
dec ebx
mov edi,esi
mov esi,eax
mov DWORD [esp],ebx
jnz NEAR L$000start
;
; FP
mov edx,DWORD [28+esp]
ror edi,1
mov eax,esi
xor esi,edi
and esi,0xaaaaaaaa
xor eax,esi
xor edi,esi
;
rol eax,23
mov esi,eax
xor eax,edi
and eax,0x03fc03fc
xor esi,eax
xor edi,eax
;
rol esi,10
mov eax,esi
xor esi,edi
and esi,0x33333333
xor eax,esi
xor edi,esi
;
rol edi,18
mov esi,edi
xor edi,eax
and edi,0xfff0000f
xor esi,edi
xor eax,edi
;
rol esi,12
mov edi,esi
xor esi,eax
and esi,0xf0f0f0f0
xor edi,esi
xor eax,esi
;
ror eax,4
mov DWORD [edx],eax
mov DWORD [4+edx],edi
add esp,8
pop edi
pop esi
pop ebx
pop ebp
ret
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,28 @@
/* WARNING: do not edit! */
/* Generated by makefile from crypto/include/internal/bn_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_BN_CONF_H
# define HEADER_BN_CONF_H
/*
* The contents of this file are not used in the UEFI build, as
* both 32-bit and 64-bit builds are supported from a single run
* of the Configure script.
*/
/* Should we define BN_DIV2W here? */
/* Only one for the following should be defined */
#undef SIXTY_FOUR_BIT_LONG
#undef SIXTY_FOUR_BIT
#define THIRTY_TWO_BIT
#endif
@@ -0,0 +1,16 @@
/* WARNING: do not edit! */
/* Generated by makefile from crypto/include/internal/dso_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_DSO_CONF_H
# define HEADER_DSO_CONF_H
# define DSO_EXTENSION ""
#endif
@@ -0,0 +1,683 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
global _md5_block_asm_data_order
align 16
_md5_block_asm_data_order:
L$_md5_block_asm_data_order_begin:
push esi
push edi
mov edi,DWORD [12+esp]
mov esi,DWORD [16+esp]
mov ecx,DWORD [20+esp]
push ebp
shl ecx,6
push ebx
add ecx,esi
sub ecx,64
mov eax,DWORD [edi]
push ecx
mov ebx,DWORD [4+edi]
mov ecx,DWORD [8+edi]
mov edx,DWORD [12+edi]
L$000start:
;
; R0 section
mov edi,ecx
mov ebp,DWORD [esi]
; R0 0
xor edi,edx
and edi,ebx
lea eax,[3614090360+ebp*1+eax]
xor edi,edx
mov ebp,DWORD [4+esi]
add eax,edi
rol eax,7
mov edi,ebx
add eax,ebx
; R0 1
xor edi,ecx
and edi,eax
lea edx,[3905402710+ebp*1+edx]
xor edi,ecx
mov ebp,DWORD [8+esi]
add edx,edi
rol edx,12
mov edi,eax
add edx,eax
; R0 2
xor edi,ebx
and edi,edx
lea ecx,[606105819+ebp*1+ecx]
xor edi,ebx
mov ebp,DWORD [12+esi]
add ecx,edi
rol ecx,17
mov edi,edx
add ecx,edx
; R0 3
xor edi,eax
and edi,ecx
lea ebx,[3250441966+ebp*1+ebx]
xor edi,eax
mov ebp,DWORD [16+esi]
add ebx,edi
rol ebx,22
mov edi,ecx
add ebx,ecx
; R0 4
xor edi,edx
and edi,ebx
lea eax,[4118548399+ebp*1+eax]
xor edi,edx
mov ebp,DWORD [20+esi]
add eax,edi
rol eax,7
mov edi,ebx
add eax,ebx
; R0 5
xor edi,ecx
and edi,eax
lea edx,[1200080426+ebp*1+edx]
xor edi,ecx
mov ebp,DWORD [24+esi]
add edx,edi
rol edx,12
mov edi,eax
add edx,eax
; R0 6
xor edi,ebx
and edi,edx
lea ecx,[2821735955+ebp*1+ecx]
xor edi,ebx
mov ebp,DWORD [28+esi]
add ecx,edi
rol ecx,17
mov edi,edx
add ecx,edx
; R0 7
xor edi,eax
and edi,ecx
lea ebx,[4249261313+ebp*1+ebx]
xor edi,eax
mov ebp,DWORD [32+esi]
add ebx,edi
rol ebx,22
mov edi,ecx
add ebx,ecx
; R0 8
xor edi,edx
and edi,ebx
lea eax,[1770035416+ebp*1+eax]
xor edi,edx
mov ebp,DWORD [36+esi]
add eax,edi
rol eax,7
mov edi,ebx
add eax,ebx
; R0 9
xor edi,ecx
and edi,eax
lea edx,[2336552879+ebp*1+edx]
xor edi,ecx
mov ebp,DWORD [40+esi]
add edx,edi
rol edx,12
mov edi,eax
add edx,eax
; R0 10
xor edi,ebx
and edi,edx
lea ecx,[4294925233+ebp*1+ecx]
xor edi,ebx
mov ebp,DWORD [44+esi]
add ecx,edi
rol ecx,17
mov edi,edx
add ecx,edx
; R0 11
xor edi,eax
and edi,ecx
lea ebx,[2304563134+ebp*1+ebx]
xor edi,eax
mov ebp,DWORD [48+esi]
add ebx,edi
rol ebx,22
mov edi,ecx
add ebx,ecx
; R0 12
xor edi,edx
and edi,ebx
lea eax,[1804603682+ebp*1+eax]
xor edi,edx
mov ebp,DWORD [52+esi]
add eax,edi
rol eax,7
mov edi,ebx
add eax,ebx
; R0 13
xor edi,ecx
and edi,eax
lea edx,[4254626195+ebp*1+edx]
xor edi,ecx
mov ebp,DWORD [56+esi]
add edx,edi
rol edx,12
mov edi,eax
add edx,eax
; R0 14
xor edi,ebx
and edi,edx
lea ecx,[2792965006+ebp*1+ecx]
xor edi,ebx
mov ebp,DWORD [60+esi]
add ecx,edi
rol ecx,17
mov edi,edx
add ecx,edx
; R0 15
xor edi,eax
and edi,ecx
lea ebx,[1236535329+ebp*1+ebx]
xor edi,eax
mov ebp,DWORD [4+esi]
add ebx,edi
rol ebx,22
mov edi,ecx
add ebx,ecx
;
; R1 section
; R1 16
xor edi,ebx
and edi,edx
lea eax,[4129170786+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [24+esi]
add eax,edi
mov edi,ebx
rol eax,5
add eax,ebx
; R1 17
xor edi,eax
and edi,ecx
lea edx,[3225465664+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [44+esi]
add edx,edi
mov edi,eax
rol edx,9
add edx,eax
; R1 18
xor edi,edx
and edi,ebx
lea ecx,[643717713+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [esi]
add ecx,edi
mov edi,edx
rol ecx,14
add ecx,edx
; R1 19
xor edi,ecx
and edi,eax
lea ebx,[3921069994+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [20+esi]
add ebx,edi
mov edi,ecx
rol ebx,20
add ebx,ecx
; R1 20
xor edi,ebx
and edi,edx
lea eax,[3593408605+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [40+esi]
add eax,edi
mov edi,ebx
rol eax,5
add eax,ebx
; R1 21
xor edi,eax
and edi,ecx
lea edx,[38016083+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [60+esi]
add edx,edi
mov edi,eax
rol edx,9
add edx,eax
; R1 22
xor edi,edx
and edi,ebx
lea ecx,[3634488961+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [16+esi]
add ecx,edi
mov edi,edx
rol ecx,14
add ecx,edx
; R1 23
xor edi,ecx
and edi,eax
lea ebx,[3889429448+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [36+esi]
add ebx,edi
mov edi,ecx
rol ebx,20
add ebx,ecx
; R1 24
xor edi,ebx
and edi,edx
lea eax,[568446438+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [56+esi]
add eax,edi
mov edi,ebx
rol eax,5
add eax,ebx
; R1 25
xor edi,eax
and edi,ecx
lea edx,[3275163606+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [12+esi]
add edx,edi
mov edi,eax
rol edx,9
add edx,eax
; R1 26
xor edi,edx
and edi,ebx
lea ecx,[4107603335+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [32+esi]
add ecx,edi
mov edi,edx
rol ecx,14
add ecx,edx
; R1 27
xor edi,ecx
and edi,eax
lea ebx,[1163531501+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [52+esi]
add ebx,edi
mov edi,ecx
rol ebx,20
add ebx,ecx
; R1 28
xor edi,ebx
and edi,edx
lea eax,[2850285829+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [8+esi]
add eax,edi
mov edi,ebx
rol eax,5
add eax,ebx
; R1 29
xor edi,eax
and edi,ecx
lea edx,[4243563512+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [28+esi]
add edx,edi
mov edi,eax
rol edx,9
add edx,eax
; R1 30
xor edi,edx
and edi,ebx
lea ecx,[1735328473+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [48+esi]
add ecx,edi
mov edi,edx
rol ecx,14
add ecx,edx
; R1 31
xor edi,ecx
and edi,eax
lea ebx,[2368359562+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [20+esi]
add ebx,edi
mov edi,ecx
rol ebx,20
add ebx,ecx
;
; R2 section
; R2 32
xor edi,edx
xor edi,ebx
lea eax,[4294588738+ebp*1+eax]
add eax,edi
mov ebp,DWORD [32+esi]
rol eax,4
mov edi,ebx
; R2 33
add eax,ebx
xor edi,ecx
lea edx,[2272392833+ebp*1+edx]
xor edi,eax
mov ebp,DWORD [44+esi]
add edx,edi
mov edi,eax
rol edx,11
add edx,eax
; R2 34
xor edi,ebx
xor edi,edx
lea ecx,[1839030562+ebp*1+ecx]
add ecx,edi
mov ebp,DWORD [56+esi]
rol ecx,16
mov edi,edx
; R2 35
add ecx,edx
xor edi,eax
lea ebx,[4259657740+ebp*1+ebx]
xor edi,ecx
mov ebp,DWORD [4+esi]
add ebx,edi
mov edi,ecx
rol ebx,23
add ebx,ecx
; R2 36
xor edi,edx
xor edi,ebx
lea eax,[2763975236+ebp*1+eax]
add eax,edi
mov ebp,DWORD [16+esi]
rol eax,4
mov edi,ebx
; R2 37
add eax,ebx
xor edi,ecx
lea edx,[1272893353+ebp*1+edx]
xor edi,eax
mov ebp,DWORD [28+esi]
add edx,edi
mov edi,eax
rol edx,11
add edx,eax
; R2 38
xor edi,ebx
xor edi,edx
lea ecx,[4139469664+ebp*1+ecx]
add ecx,edi
mov ebp,DWORD [40+esi]
rol ecx,16
mov edi,edx
; R2 39
add ecx,edx
xor edi,eax
lea ebx,[3200236656+ebp*1+ebx]
xor edi,ecx
mov ebp,DWORD [52+esi]
add ebx,edi
mov edi,ecx
rol ebx,23
add ebx,ecx
; R2 40
xor edi,edx
xor edi,ebx
lea eax,[681279174+ebp*1+eax]
add eax,edi
mov ebp,DWORD [esi]
rol eax,4
mov edi,ebx
; R2 41
add eax,ebx
xor edi,ecx
lea edx,[3936430074+ebp*1+edx]
xor edi,eax
mov ebp,DWORD [12+esi]
add edx,edi
mov edi,eax
rol edx,11
add edx,eax
; R2 42
xor edi,ebx
xor edi,edx
lea ecx,[3572445317+ebp*1+ecx]
add ecx,edi
mov ebp,DWORD [24+esi]
rol ecx,16
mov edi,edx
; R2 43
add ecx,edx
xor edi,eax
lea ebx,[76029189+ebp*1+ebx]
xor edi,ecx
mov ebp,DWORD [36+esi]
add ebx,edi
mov edi,ecx
rol ebx,23
add ebx,ecx
; R2 44
xor edi,edx
xor edi,ebx
lea eax,[3654602809+ebp*1+eax]
add eax,edi
mov ebp,DWORD [48+esi]
rol eax,4
mov edi,ebx
; R2 45
add eax,ebx
xor edi,ecx
lea edx,[3873151461+ebp*1+edx]
xor edi,eax
mov ebp,DWORD [60+esi]
add edx,edi
mov edi,eax
rol edx,11
add edx,eax
; R2 46
xor edi,ebx
xor edi,edx
lea ecx,[530742520+ebp*1+ecx]
add ecx,edi
mov ebp,DWORD [8+esi]
rol ecx,16
mov edi,edx
; R2 47
add ecx,edx
xor edi,eax
lea ebx,[3299628645+ebp*1+ebx]
xor edi,ecx
mov ebp,DWORD [esi]
add ebx,edi
mov edi,-1
rol ebx,23
add ebx,ecx
;
; R3 section
; R3 48
xor edi,edx
or edi,ebx
lea eax,[4096336452+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [28+esi]
add eax,edi
mov edi,-1
rol eax,6
xor edi,ecx
add eax,ebx
; R3 49
or edi,eax
lea edx,[1126891415+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [56+esi]
add edx,edi
mov edi,-1
rol edx,10
xor edi,ebx
add edx,eax
; R3 50
or edi,edx
lea ecx,[2878612391+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [20+esi]
add ecx,edi
mov edi,-1
rol ecx,15
xor edi,eax
add ecx,edx
; R3 51
or edi,ecx
lea ebx,[4237533241+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [48+esi]
add ebx,edi
mov edi,-1
rol ebx,21
xor edi,edx
add ebx,ecx
; R3 52
or edi,ebx
lea eax,[1700485571+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [12+esi]
add eax,edi
mov edi,-1
rol eax,6
xor edi,ecx
add eax,ebx
; R3 53
or edi,eax
lea edx,[2399980690+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [40+esi]
add edx,edi
mov edi,-1
rol edx,10
xor edi,ebx
add edx,eax
; R3 54
or edi,edx
lea ecx,[4293915773+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [4+esi]
add ecx,edi
mov edi,-1
rol ecx,15
xor edi,eax
add ecx,edx
; R3 55
or edi,ecx
lea ebx,[2240044497+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [32+esi]
add ebx,edi
mov edi,-1
rol ebx,21
xor edi,edx
add ebx,ecx
; R3 56
or edi,ebx
lea eax,[1873313359+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [60+esi]
add eax,edi
mov edi,-1
rol eax,6
xor edi,ecx
add eax,ebx
; R3 57
or edi,eax
lea edx,[4264355552+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [24+esi]
add edx,edi
mov edi,-1
rol edx,10
xor edi,ebx
add edx,eax
; R3 58
or edi,edx
lea ecx,[2734768916+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [52+esi]
add ecx,edi
mov edi,-1
rol ecx,15
xor edi,eax
add ecx,edx
; R3 59
or edi,ecx
lea ebx,[1309151649+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [16+esi]
add ebx,edi
mov edi,-1
rol ebx,21
xor edi,edx
add ebx,ecx
; R3 60
or edi,ebx
lea eax,[4149444226+ebp*1+eax]
xor edi,ecx
mov ebp,DWORD [44+esi]
add eax,edi
mov edi,-1
rol eax,6
xor edi,ecx
add eax,ebx
; R3 61
or edi,eax
lea edx,[3174756917+ebp*1+edx]
xor edi,ebx
mov ebp,DWORD [8+esi]
add edx,edi
mov edi,-1
rol edx,10
xor edi,ebx
add edx,eax
; R3 62
or edi,edx
lea ecx,[718787259+ebp*1+ecx]
xor edi,eax
mov ebp,DWORD [36+esi]
add ecx,edi
mov edi,-1
rol ecx,15
xor edi,eax
add ecx,edx
; R3 63
or edi,ecx
lea ebx,[3951481745+ebp*1+ebx]
xor edi,edx
mov ebp,DWORD [24+esp]
add ebx,edi
add esi,64
rol ebx,21
mov edi,DWORD [ebp]
add ebx,ecx
add eax,edi
mov edi,DWORD [4+ebp]
add ebx,edi
mov edi,DWORD [8+ebp]
add ecx,edi
mov edi,DWORD [12+ebp]
add edx,edi
mov DWORD [ebp],eax
mov DWORD [4+ebp],ebx
mov edi,DWORD [esp]
mov DWORD [8+ebp],ecx
mov DWORD [12+ebp],edx
cmp edi,esi
jae NEAR L$000start
pop eax
pop ebx
pop ebp
pop edi
pop esi
ret
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,374 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
;extern _OPENSSL_ia32cap_P
global _RC4
align 16
_RC4:
L$_RC4_begin:
push ebp
push ebx
push esi
push edi
mov edi,DWORD [20+esp]
mov edx,DWORD [24+esp]
mov esi,DWORD [28+esp]
mov ebp,DWORD [32+esp]
xor eax,eax
xor ebx,ebx
cmp edx,0
je NEAR L$000abort
mov al,BYTE [edi]
mov bl,BYTE [4+edi]
add edi,8
lea ecx,[edx*1+esi]
sub ebp,esi
mov DWORD [24+esp],ecx
inc al
cmp DWORD [256+edi],-1
je NEAR L$001RC4_CHAR
mov ecx,DWORD [eax*4+edi]
and edx,-4
jz NEAR L$002loop1
mov DWORD [32+esp],ebp
test edx,-8
jz NEAR L$003go4loop4
lea ebp,[_OPENSSL_ia32cap_P]
bt DWORD [ebp],26
jnc NEAR L$003go4loop4
mov ebp,DWORD [32+esp]
and edx,-8
lea edx,[edx*1+esi-8]
mov DWORD [edi-4],edx
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
movq mm0,[esi]
mov ecx,DWORD [eax*4+edi]
movd mm2,DWORD [edx*4+edi]
jmp NEAR L$004loop_mmx_enter
align 16
L$005loop_mmx:
add bl,cl
psllq mm1,56
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
movq mm0,[esi]
movq [esi*1+ebp-8],mm2
mov ecx,DWORD [eax*4+edi]
movd mm2,DWORD [edx*4+edi]
L$004loop_mmx_enter:
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm0
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,8
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,16
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,24
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,32
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,40
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
add bl,cl
psllq mm1,48
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
inc eax
add edx,ecx
movzx eax,al
movzx edx,dl
pxor mm2,mm1
mov ecx,DWORD [eax*4+edi]
movd mm1,DWORD [edx*4+edi]
mov edx,ebx
xor ebx,ebx
mov bl,dl
cmp esi,DWORD [edi-4]
lea esi,[8+esi]
jb NEAR L$005loop_mmx
psllq mm1,56
pxor mm2,mm1
movq [esi*1+ebp-8],mm2
emms
cmp esi,DWORD [24+esp]
je NEAR L$006done
jmp NEAR L$002loop1
align 16
L$003go4loop4:
lea edx,[edx*1+esi-4]
mov DWORD [28+esp],edx
L$007loop4:
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
add edx,ecx
inc al
and edx,255
mov ecx,DWORD [eax*4+edi]
mov ebp,DWORD [edx*4+edi]
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
add edx,ecx
inc al
and edx,255
ror ebp,8
mov ecx,DWORD [eax*4+edi]
or ebp,DWORD [edx*4+edi]
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
add edx,ecx
inc al
and edx,255
ror ebp,8
mov ecx,DWORD [eax*4+edi]
or ebp,DWORD [edx*4+edi]
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
add edx,ecx
inc al
and edx,255
ror ebp,8
mov ecx,DWORD [32+esp]
or ebp,DWORD [edx*4+edi]
ror ebp,8
xor ebp,DWORD [esi]
cmp esi,DWORD [28+esp]
mov DWORD [esi*1+ecx],ebp
lea esi,[4+esi]
mov ecx,DWORD [eax*4+edi]
jb NEAR L$007loop4
cmp esi,DWORD [24+esp]
je NEAR L$006done
mov ebp,DWORD [32+esp]
align 16
L$002loop1:
add bl,cl
mov edx,DWORD [ebx*4+edi]
mov DWORD [ebx*4+edi],ecx
mov DWORD [eax*4+edi],edx
add edx,ecx
inc al
and edx,255
mov edx,DWORD [edx*4+edi]
xor dl,BYTE [esi]
lea esi,[1+esi]
mov ecx,DWORD [eax*4+edi]
cmp esi,DWORD [24+esp]
mov BYTE [esi*1+ebp-1],dl
jb NEAR L$002loop1
jmp NEAR L$006done
align 16
L$001RC4_CHAR:
movzx ecx,BYTE [eax*1+edi]
L$008cloop1:
add bl,cl
movzx edx,BYTE [ebx*1+edi]
mov BYTE [ebx*1+edi],cl
mov BYTE [eax*1+edi],dl
add dl,cl
movzx edx,BYTE [edx*1+edi]
add al,1
xor dl,BYTE [esi]
lea esi,[1+esi]
movzx ecx,BYTE [eax*1+edi]
cmp esi,DWORD [24+esp]
mov BYTE [esi*1+ebp-1],dl
jb NEAR L$008cloop1
L$006done:
dec al
mov DWORD [edi-4],ebx
mov BYTE [edi-8],al
L$000abort:
pop edi
pop esi
pop ebx
pop ebp
ret
global _RC4_set_key
align 16
_RC4_set_key:
L$_RC4_set_key_begin:
push ebp
push ebx
push esi
push edi
mov edi,DWORD [20+esp]
mov ebp,DWORD [24+esp]
mov esi,DWORD [28+esp]
lea edx,[_OPENSSL_ia32cap_P]
lea edi,[8+edi]
lea esi,[ebp*1+esi]
neg ebp
xor eax,eax
mov DWORD [edi-4],ebp
bt DWORD [edx],20
jc NEAR L$009c1stloop
align 16
L$010w1stloop:
mov DWORD [eax*4+edi],eax
add al,1
jnc NEAR L$010w1stloop
xor ecx,ecx
xor edx,edx
align 16
L$011w2ndloop:
mov eax,DWORD [ecx*4+edi]
add dl,BYTE [ebp*1+esi]
add dl,al
add ebp,1
mov ebx,DWORD [edx*4+edi]
jnz NEAR L$012wnowrap
mov ebp,DWORD [edi-4]
L$012wnowrap:
mov DWORD [edx*4+edi],eax
mov DWORD [ecx*4+edi],ebx
add cl,1
jnc NEAR L$011w2ndloop
jmp NEAR L$013exit
align 16
L$009c1stloop:
mov BYTE [eax*1+edi],al
add al,1
jnc NEAR L$009c1stloop
xor ecx,ecx
xor edx,edx
xor ebx,ebx
align 16
L$014c2ndloop:
mov al,BYTE [ecx*1+edi]
add dl,BYTE [ebp*1+esi]
add dl,al
add ebp,1
mov bl,BYTE [edx*1+edi]
jnz NEAR L$015cnowrap
mov ebp,DWORD [edi-4]
L$015cnowrap:
mov BYTE [edx*1+edi],al
mov BYTE [ecx*1+edi],bl
add cl,1
jnc NEAR L$014c2ndloop
mov DWORD [256+edi],-1
L$013exit:
xor eax,eax
mov DWORD [edi-8],eax
mov DWORD [edi-4],eax
pop edi
pop esi
pop ebx
pop ebp
ret
global _RC4_options
align 16
_RC4_options:
L$_RC4_options_begin:
call L$016pic_point
L$016pic_point:
pop eax
lea eax,[(L$017opts-L$016pic_point)+eax]
lea edx,[_OPENSSL_ia32cap_P]
mov edx,DWORD [edx]
bt edx,20
jc NEAR L$0181xchar
bt edx,26
jnc NEAR L$019ret
add eax,25
ret
L$0181xchar:
add eax,12
L$019ret:
ret
align 64
L$017opts:
db 114,99,52,40,52,120,44,105,110,116,41,0
db 114,99,52,40,49,120,44,99,104,97,114,41,0
db 114,99,52,40,56,120,44,109,109,120,41,0
db 82,67,52,32,102,111,114,32,120,56,54,44,32,67,82,89
db 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
db 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
align 64
segment .bss
common _OPENSSL_ia32cap_P 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
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,555 @@
%ifidn __OUTPUT_FORMAT__,obj
section code use32 class=code align=64
%elifidn __OUTPUT_FORMAT__,win32
$@feat.00 equ 1
section .text code align=64
%else
section .text code
%endif
global _OPENSSL_ia32_cpuid
align 16
_OPENSSL_ia32_cpuid:
L$_OPENSSL_ia32_cpuid_begin:
push ebp
push ebx
push esi
push edi
xor edx,edx
pushfd
pop eax
mov ecx,eax
xor eax,2097152
push eax
popfd
pushfd
pop eax
xor ecx,eax
xor eax,eax
mov esi,DWORD [20+esp]
mov DWORD [8+esi],eax
bt ecx,21
jnc NEAR L$000nocpuid
cpuid
mov edi,eax
xor eax,eax
cmp ebx,1970169159
setne al
mov ebp,eax
cmp edx,1231384169
setne al
or ebp,eax
cmp ecx,1818588270
setne al
or ebp,eax
jz NEAR L$001intel
cmp ebx,1752462657
setne al
mov esi,eax
cmp edx,1769238117
setne al
or esi,eax
cmp ecx,1145913699
setne al
or esi,eax
jnz NEAR L$001intel
mov eax,2147483648
cpuid
cmp eax,2147483649
jb NEAR L$001intel
mov esi,eax
mov eax,2147483649
cpuid
or ebp,ecx
and ebp,2049
cmp esi,2147483656
jb NEAR L$001intel
mov eax,2147483656
cpuid
movzx esi,cl
inc esi
mov eax,1
xor ecx,ecx
cpuid
bt edx,28
jnc NEAR L$002generic
shr ebx,16
and ebx,255
cmp ebx,esi
ja NEAR L$002generic
and edx,4026531839
jmp NEAR L$002generic
L$001intel:
cmp edi,4
mov esi,-1
jb NEAR L$003nocacheinfo
mov eax,4
mov ecx,0
cpuid
mov esi,eax
shr esi,14
and esi,4095
L$003nocacheinfo:
mov eax,1
xor ecx,ecx
cpuid
and edx,3220176895
cmp ebp,0
jne NEAR L$004notintel
or edx,1073741824
and ah,15
cmp ah,15
jne NEAR L$004notintel
or edx,1048576
L$004notintel:
bt edx,28
jnc NEAR L$002generic
and edx,4026531839
cmp esi,0
je NEAR L$002generic
or edx,268435456
shr ebx,16
cmp bl,1
ja NEAR L$002generic
and edx,4026531839
L$002generic:
and ebp,2048
and ecx,4294965247
mov esi,edx
or ebp,ecx
cmp edi,7
mov edi,DWORD [20+esp]
jb NEAR L$005no_extended_info
mov eax,7
xor ecx,ecx
cpuid
mov DWORD [8+edi],ebx
L$005no_extended_info:
bt ebp,27
jnc NEAR L$006clear_avx
xor ecx,ecx
db 15,1,208
and eax,6
cmp eax,6
je NEAR L$007done
cmp eax,2
je NEAR L$006clear_avx
L$008clear_xmm:
and ebp,4261412861
and esi,4278190079
L$006clear_avx:
and ebp,4026525695
and DWORD [8+edi],4294967263
L$007done:
mov eax,esi
mov edx,ebp
L$000nocpuid:
pop edi
pop esi
pop ebx
pop ebp
ret
;extern _OPENSSL_ia32cap_P
global _OPENSSL_rdtsc
align 16
_OPENSSL_rdtsc:
L$_OPENSSL_rdtsc_begin:
xor eax,eax
xor edx,edx
lea ecx,[_OPENSSL_ia32cap_P]
bt DWORD [ecx],4
jnc NEAR L$009notsc
rdtsc
L$009notsc:
ret
global _OPENSSL_instrument_halt
align 16
_OPENSSL_instrument_halt:
L$_OPENSSL_instrument_halt_begin:
lea ecx,[_OPENSSL_ia32cap_P]
bt DWORD [ecx],4
jnc NEAR L$010nohalt
dd 2421723150
and eax,3
jnz NEAR L$010nohalt
pushfd
pop eax
bt eax,9
jnc NEAR L$010nohalt
rdtsc
push edx
push eax
hlt
rdtsc
sub eax,DWORD [esp]
sbb edx,DWORD [4+esp]
add esp,8
ret
L$010nohalt:
xor eax,eax
xor edx,edx
ret
global _OPENSSL_far_spin
align 16
_OPENSSL_far_spin:
L$_OPENSSL_far_spin_begin:
pushfd
pop eax
bt eax,9
jnc NEAR L$011nospin
mov eax,DWORD [4+esp]
mov ecx,DWORD [8+esp]
dd 2430111262
xor eax,eax
mov edx,DWORD [ecx]
jmp NEAR L$012spin
align 16
L$012spin:
inc eax
cmp edx,DWORD [ecx]
je NEAR L$012spin
dd 529567888
ret
L$011nospin:
xor eax,eax
xor edx,edx
ret
global _OPENSSL_wipe_cpu
align 16
_OPENSSL_wipe_cpu:
L$_OPENSSL_wipe_cpu_begin:
xor eax,eax
xor edx,edx
lea ecx,[_OPENSSL_ia32cap_P]
mov ecx,DWORD [ecx]
bt DWORD [ecx],1
jnc NEAR L$013no_x87
and ecx,83886080
cmp ecx,83886080
jne NEAR L$014no_sse2
pxor xmm0,xmm0
pxor xmm1,xmm1
pxor xmm2,xmm2
pxor xmm3,xmm3
pxor xmm4,xmm4
pxor xmm5,xmm5
pxor xmm6,xmm6
pxor xmm7,xmm7
L$014no_sse2:
dd 4007259865,4007259865,4007259865,4007259865,2430851995
L$013no_x87:
lea eax,[4+esp]
ret
global _OPENSSL_atomic_add
align 16
_OPENSSL_atomic_add:
L$_OPENSSL_atomic_add_begin:
mov edx,DWORD [4+esp]
mov ecx,DWORD [8+esp]
push ebx
nop
mov eax,DWORD [edx]
L$015spin:
lea ebx,[ecx*1+eax]
nop
dd 447811568
jne NEAR L$015spin
mov eax,ebx
pop ebx
ret
global _OPENSSL_indirect_call
align 16
_OPENSSL_indirect_call:
L$_OPENSSL_indirect_call_begin:
push ebp
mov ebp,esp
sub esp,28
mov ecx,DWORD [12+ebp]
mov DWORD [esp],ecx
mov edx,DWORD [16+ebp]
mov DWORD [4+esp],edx
mov eax,DWORD [20+ebp]
mov DWORD [8+esp],eax
mov eax,DWORD [24+ebp]
mov DWORD [12+esp],eax
mov eax,DWORD [28+ebp]
mov DWORD [16+esp],eax
mov eax,DWORD [32+ebp]
mov DWORD [20+esp],eax
mov eax,DWORD [36+ebp]
mov DWORD [24+esp],eax
call DWORD [8+ebp]
mov esp,ebp
pop ebp
ret
global _OPENSSL_cleanse
align 16
_OPENSSL_cleanse:
L$_OPENSSL_cleanse_begin:
mov edx,DWORD [4+esp]
mov ecx,DWORD [8+esp]
xor eax,eax
cmp ecx,7
jae NEAR L$016lot
cmp ecx,0
je NEAR L$017ret
L$018little:
mov BYTE [edx],al
sub ecx,1
lea edx,[1+edx]
jnz NEAR L$018little
L$017ret:
ret
align 16
L$016lot:
test edx,3
jz NEAR L$019aligned
mov BYTE [edx],al
lea ecx,[ecx-1]
lea edx,[1+edx]
jmp NEAR L$016lot
L$019aligned:
mov DWORD [edx],eax
lea ecx,[ecx-4]
test ecx,-4
lea edx,[4+edx]
jnz NEAR L$019aligned
cmp ecx,0
jne NEAR L$018little
ret
global _CRYPTO_memcmp
align 16
_CRYPTO_memcmp:
L$_CRYPTO_memcmp_begin:
push esi
push edi
mov esi,DWORD [12+esp]
mov edi,DWORD [16+esp]
mov ecx,DWORD [20+esp]
xor eax,eax
xor edx,edx
cmp ecx,0
je NEAR L$020no_data
L$021loop:
mov dl,BYTE [esi]
lea esi,[1+esi]
xor dl,BYTE [edi]
lea edi,[1+edi]
or al,dl
dec ecx
jnz NEAR L$021loop
neg eax
shr eax,31
L$020no_data:
pop edi
pop esi
ret
global _OPENSSL_instrument_bus
align 16
_OPENSSL_instrument_bus:
L$_OPENSSL_instrument_bus_begin:
push ebp
push ebx
push esi
push edi
mov eax,0
lea edx,[_OPENSSL_ia32cap_P]
bt DWORD [edx],4
jnc NEAR L$022nogo
bt DWORD [edx],19
jnc NEAR L$022nogo
mov edi,DWORD [20+esp]
mov ecx,DWORD [24+esp]
rdtsc
mov esi,eax
mov ebx,0
clflush [edi]
db 240
add DWORD [edi],ebx
jmp NEAR L$023loop
align 16
L$023loop:
rdtsc
mov edx,eax
sub eax,esi
mov esi,edx
mov ebx,eax
clflush [edi]
db 240
add DWORD [edi],eax
lea edi,[4+edi]
sub ecx,1
jnz NEAR L$023loop
mov eax,DWORD [24+esp]
L$022nogo:
pop edi
pop esi
pop ebx
pop ebp
ret
global _OPENSSL_instrument_bus2
align 16
_OPENSSL_instrument_bus2:
L$_OPENSSL_instrument_bus2_begin:
push ebp
push ebx
push esi
push edi
mov eax,0
lea edx,[_OPENSSL_ia32cap_P]
bt DWORD [edx],4
jnc NEAR L$024nogo
bt DWORD [edx],19
jnc NEAR L$024nogo
mov edi,DWORD [20+esp]
mov ecx,DWORD [24+esp]
mov ebp,DWORD [28+esp]
rdtsc
mov esi,eax
mov ebx,0
clflush [edi]
db 240
add DWORD [edi],ebx
rdtsc
mov edx,eax
sub eax,esi
mov esi,edx
mov ebx,eax
jmp NEAR L$025loop2
align 16
L$025loop2:
clflush [edi]
db 240
add DWORD [edi],eax
sub ebp,1
jz NEAR L$026done2
rdtsc
mov edx,eax
sub eax,esi
mov esi,edx
cmp eax,ebx
mov ebx,eax
mov edx,0
setne dl
sub ecx,edx
lea edi,[edx*4+edi]
jnz NEAR L$025loop2
L$026done2:
mov eax,DWORD [24+esp]
sub eax,ecx
L$024nogo:
pop edi
pop esi
pop ebx
pop ebp
ret
global _OPENSSL_ia32_rdrand
align 16
_OPENSSL_ia32_rdrand:
L$_OPENSSL_ia32_rdrand_begin:
mov ecx,8
L$027loop:
db 15,199,240
jc NEAR L$028break
loop L$027loop
L$028break:
cmp eax,0
cmove eax,ecx
ret
global _OPENSSL_ia32_rdrand_bytes
align 16
_OPENSSL_ia32_rdrand_bytes:
L$_OPENSSL_ia32_rdrand_bytes_begin:
push edi
push ebx
xor eax,eax
mov edi,DWORD [12+esp]
mov ebx,DWORD [16+esp]
cmp ebx,0
je NEAR L$029done
mov ecx,8
L$030loop:
db 15,199,242
jc NEAR L$031break
loop L$030loop
jmp NEAR L$029done
align 16
L$031break:
cmp ebx,4
jb NEAR L$032tail
mov DWORD [edi],edx
lea edi,[4+edi]
add eax,4
sub ebx,4
jz NEAR L$029done
mov ecx,8
jmp NEAR L$030loop
align 16
L$032tail:
mov BYTE [edi],dl
lea edi,[1+edi]
inc eax
shr edx,8
dec ebx
jnz NEAR L$032tail
L$029done:
pop ebx
pop edi
ret
global _OPENSSL_ia32_rdseed
align 16
_OPENSSL_ia32_rdseed:
L$_OPENSSL_ia32_rdseed_begin:
mov ecx,8
L$033loop:
db 15,199,248
jc NEAR L$034break
loop L$033loop
L$034break:
cmp eax,0
cmove eax,ecx
ret
global _OPENSSL_ia32_rdseed_bytes
align 16
_OPENSSL_ia32_rdseed_bytes:
L$_OPENSSL_ia32_rdseed_bytes_begin:
push edi
push ebx
xor eax,eax
mov edi,DWORD [12+esp]
mov ebx,DWORD [16+esp]
cmp ebx,0
je NEAR L$035done
mov ecx,8
L$036loop:
db 15,199,250
jc NEAR L$037break
loop L$036loop
jmp NEAR L$035done
align 16
L$037break:
cmp ebx,4
jb NEAR L$038tail
mov DWORD [edi],edx
lea edi,[4+edi]
add eax,4
sub ebx,4
jz NEAR L$035done
mov ecx,8
jmp NEAR L$036loop
align 16
L$038tail:
mov BYTE [edi],dl
lea edi,[1+edi]
inc eax
shr edx,8
dec ebx
jnz NEAR L$038tail
L$035done:
pop ebx
pop edi
ret
segment .bss
common _OPENSSL_ia32cap_P 16
segment .CRT$XCU data align=4
extern _OPENSSL_cpuid_setup
dd _OPENSSL_cpuid_setup
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,178 @@
/*
* WARNING: do not edit!
* Generated by makefile from include/openssl/opensslconf.h.in
*
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
#ifdef __cplusplus
extern "C" {
#endif
#ifdef OPENSSL_ALGORITHM_DEFINES
# error OPENSSL_ALGORITHM_DEFINES no longer supported
#endif
/*
* OpenSSL was configured with the following options:
*/
#ifndef OPENSSL_SYS_WIN32
# define OPENSSL_SYS_WIN32 1
#endif
#ifndef OPENSSL_NO_COMP
# define OPENSSL_NO_COMP
#endif
#ifndef OPENSSL_NO_MD2
# define OPENSSL_NO_MD2
#endif
#ifndef OPENSSL_NO_RC5
# define OPENSSL_NO_RC5
#endif
#ifndef OPENSSL_THREADS
# define OPENSSL_THREADS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
#ifndef OPENSSL_NO_ASAN
# define OPENSSL_NO_ASAN
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG
# define OPENSSL_NO_CRYPTO_MDEBUG
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
#endif
#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
# define OPENSSL_NO_EC_NISTP_64_GCC_128
#endif
#ifndef OPENSSL_NO_EGD
# define OPENSSL_NO_EGD
#endif
#ifndef OPENSSL_NO_FUZZ_AFL
# define OPENSSL_NO_FUZZ_AFL
#endif
#ifndef OPENSSL_NO_FUZZ_LIBFUZZER
# define OPENSSL_NO_FUZZ_LIBFUZZER
#endif
#ifndef OPENSSL_NO_HEARTBEATS
# define OPENSSL_NO_HEARTBEATS
#endif
#ifndef OPENSSL_NO_MSAN
# define OPENSSL_NO_MSAN
#endif
#ifndef OPENSSL_NO_SCTP
# define OPENSSL_NO_SCTP
#endif
#ifndef OPENSSL_NO_SSL_TRACE
# define OPENSSL_NO_SSL_TRACE
#endif
#ifndef OPENSSL_NO_SSL3
# define OPENSSL_NO_SSL3
#endif
#ifndef OPENSSL_NO_SSL3_METHOD
# define OPENSSL_NO_SSL3_METHOD
#endif
#ifndef OPENSSL_NO_UBSAN
# define OPENSSL_NO_UBSAN
#endif
#ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
#endif
#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
# define OPENSSL_NO_WEAK_SSL_CIPHERS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
/*
* Sometimes OPENSSSL_NO_xxx ends up with an empty file and some compilers
* don't like that. This will hopefully silence them.
*/
#define NON_EMPTY_TRANSLATION_UNIT static void *dummy = &dummy;
/*
* Applications should use -DOPENSSL_API_COMPAT=<version> to suppress the
* declarations of functions deprecated in or before <version>. Otherwise, they
* still won't see them if the library has been built to disable deprecated
* functions.
*/
#if defined(OPENSSL_NO_DEPRECATED)
# define DECLARE_DEPRECATED(f)
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
#else
# define DECLARE_DEPRECATED(f) f;
#endif
#ifndef OPENSSL_FILE
# ifdef OPENSSL_NO_FILENAMES
# define OPENSSL_FILE ""
# define OPENSSL_LINE 0
# else
# define OPENSSL_FILE __FILE__
# define OPENSSL_LINE __LINE__
# endif
#endif
#ifndef OPENSSL_MIN_API
# define OPENSSL_MIN_API 0
#endif
#if !defined(OPENSSL_API_COMPAT) || OPENSSL_API_COMPAT < OPENSSL_MIN_API
# undef OPENSSL_API_COMPAT
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
#endif
#if OPENSSL_API_COMPAT < 0x10100000L
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_1_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x10000000L
# define DEPRECATEDIN_1_0_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_0_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x00908000L
# define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_0_9_8(f)
#endif
#define OPENSSL_CPUID_OBJ
/* Generate 80386 code? */
#undef I386_ONLY
#undef OPENSSL_UNISTD
#define OPENSSL_UNISTD <unistd.h>
#define OPENSSL_EXPORT_VAR_AS_FUNCTION
/*
* The following are cipher-specific, but are part of the public API.
*/
#if !defined(OPENSSL_SYS_UEFI)
# define BN_LLONG
/* Only one for the following should be defined */
# undef SIXTY_FOUR_BIT_LONG
# undef SIXTY_FOUR_BIT
# define THIRTY_TWO_BIT
#endif
#define RC4_INT unsigned int
#ifdef __cplusplus
}
#endif
+418
View File
@@ -0,0 +1,418 @@
/*
* WARNING: do not edit!
* Generated by apps/progs.pl
*
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
typedef enum FUNC_TYPE {
FT_none, FT_general, FT_md, FT_cipher, FT_pkey,
FT_md_alg, FT_cipher_alg
} FUNC_TYPE;
typedef struct function_st {
FUNC_TYPE type;
const char *name;
int (*func)(int argc, char *argv[]);
const OPTIONS *help;
} FUNCTION;
DEFINE_LHASH_OF(FUNCTION);
extern int asn1parse_main(int argc, char *argv[]);
extern int ca_main(int argc, char *argv[]);
extern int ciphers_main(int argc, char *argv[]);
extern int cms_main(int argc, char *argv[]);
extern int crl_main(int argc, char *argv[]);
extern int crl2pkcs7_main(int argc, char *argv[]);
extern int dgst_main(int argc, char *argv[]);
extern int dhparam_main(int argc, char *argv[]);
extern int dsa_main(int argc, char *argv[]);
extern int dsaparam_main(int argc, char *argv[]);
extern int ec_main(int argc, char *argv[]);
extern int ecparam_main(int argc, char *argv[]);
extern int enc_main(int argc, char *argv[]);
extern int engine_main(int argc, char *argv[]);
extern int errstr_main(int argc, char *argv[]);
extern int exit_main(int argc, char *argv[]);
extern int gendsa_main(int argc, char *argv[]);
extern int genpkey_main(int argc, char *argv[]);
extern int genrsa_main(int argc, char *argv[]);
extern int help_main(int argc, char *argv[]);
extern int list_main(int argc, char *argv[]);
extern int nseq_main(int argc, char *argv[]);
extern int ocsp_main(int argc, char *argv[]);
extern int passwd_main(int argc, char *argv[]);
extern int pkcs12_main(int argc, char *argv[]);
extern int pkcs7_main(int argc, char *argv[]);
extern int pkcs8_main(int argc, char *argv[]);
extern int pkey_main(int argc, char *argv[]);
extern int pkeyparam_main(int argc, char *argv[]);
extern int pkeyutl_main(int argc, char *argv[]);
extern int prime_main(int argc, char *argv[]);
extern int rand_main(int argc, char *argv[]);
extern int rehash_main(int argc, char *argv[]);
extern int req_main(int argc, char *argv[]);
extern int rsa_main(int argc, char *argv[]);
extern int rsautl_main(int argc, char *argv[]);
extern int s_client_main(int argc, char *argv[]);
extern int s_server_main(int argc, char *argv[]);
extern int s_time_main(int argc, char *argv[]);
extern int sess_id_main(int argc, char *argv[]);
extern int smime_main(int argc, char *argv[]);
extern int speed_main(int argc, char *argv[]);
extern int spkac_main(int argc, char *argv[]);
extern int srp_main(int argc, char *argv[]);
extern int ts_main(int argc, char *argv[]);
extern int verify_main(int argc, char *argv[]);
extern int version_main(int argc, char *argv[]);
extern int x509_main(int argc, char *argv[]);
extern OPTIONS asn1parse_options[];
extern OPTIONS ca_options[];
extern OPTIONS ciphers_options[];
extern OPTIONS cms_options[];
extern OPTIONS crl_options[];
extern OPTIONS crl2pkcs7_options[];
extern OPTIONS dgst_options[];
extern OPTIONS dhparam_options[];
extern OPTIONS dsa_options[];
extern OPTIONS dsaparam_options[];
extern OPTIONS ec_options[];
extern OPTIONS ecparam_options[];
extern OPTIONS enc_options[];
extern OPTIONS engine_options[];
extern OPTIONS errstr_options[];
extern OPTIONS exit_options[];
extern OPTIONS gendsa_options[];
extern OPTIONS genpkey_options[];
extern OPTIONS genrsa_options[];
extern OPTIONS help_options[];
extern OPTIONS list_options[];
extern OPTIONS nseq_options[];
extern OPTIONS ocsp_options[];
extern OPTIONS passwd_options[];
extern OPTIONS pkcs12_options[];
extern OPTIONS pkcs7_options[];
extern OPTIONS pkcs8_options[];
extern OPTIONS pkey_options[];
extern OPTIONS pkeyparam_options[];
extern OPTIONS pkeyutl_options[];
extern OPTIONS prime_options[];
extern OPTIONS rand_options[];
extern OPTIONS rehash_options[];
extern OPTIONS req_options[];
extern OPTIONS rsa_options[];
extern OPTIONS rsautl_options[];
extern OPTIONS s_client_options[];
extern OPTIONS s_server_options[];
extern OPTIONS s_time_options[];
extern OPTIONS sess_id_options[];
extern OPTIONS smime_options[];
extern OPTIONS speed_options[];
extern OPTIONS spkac_options[];
extern OPTIONS srp_options[];
extern OPTIONS ts_options[];
extern OPTIONS verify_options[];
extern OPTIONS version_options[];
extern OPTIONS x509_options[];
#ifdef INCLUDE_FUNCTION_TABLE
static FUNCTION functions[] = {
{ FT_general, "asn1parse", asn1parse_main, asn1parse_options },
{ FT_general, "ca", ca_main, ca_options },
#ifndef OPENSSL_NO_SOCK
{ FT_general, "ciphers", ciphers_main, ciphers_options },
#endif
#ifndef OPENSSL_NO_CMS
{ FT_general, "cms", cms_main, cms_options },
#endif
{ FT_general, "crl", crl_main, crl_options },
{ FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options },
{ FT_general, "dgst", dgst_main, dgst_options },
#ifndef OPENSSL_NO_DH
{ FT_general, "dhparam", dhparam_main, dhparam_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsa", dsa_main, dsa_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsaparam", dsaparam_main, dsaparam_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ec", ec_main, ec_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ecparam", ecparam_main, ecparam_options },
#endif
{ FT_general, "enc", enc_main, enc_options },
#ifndef OPENSSL_NO_ENGINE
{ FT_general, "engine", engine_main, engine_options },
#endif
{ FT_general, "errstr", errstr_main, errstr_options },
{ FT_general, "exit", exit_main, exit_options },
#ifndef OPENSSL_NO_DSA
{ FT_general, "gendsa", gendsa_main, gendsa_options },
#endif
{ FT_general, "genpkey", genpkey_main, genpkey_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "genrsa", genrsa_main, genrsa_options },
#endif
{ FT_general, "help", help_main, help_options },
{ FT_general, "list", list_main, list_options },
{ FT_general, "nseq", nseq_main, nseq_options },
#ifndef OPENSSL_NO_OCSP
{ FT_general, "ocsp", ocsp_main, ocsp_options },
#endif
{ FT_general, "passwd", passwd_main, passwd_options },
#ifndef OPENSSL_NO_DES
{ FT_general, "pkcs12", pkcs12_main, pkcs12_options },
#endif
{ FT_general, "pkcs7", pkcs7_main, pkcs7_options },
{ FT_general, "pkcs8", pkcs8_main, pkcs8_options },
{ FT_general, "pkey", pkey_main, pkey_options },
{ FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options },
{ FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options },
{ FT_general, "prime", prime_main, prime_options },
{ FT_general, "rand", rand_main, rand_options },
{ FT_general, "rehash", rehash_main, rehash_options },
{ FT_general, "req", req_main, req_options },
{ FT_general, "rsa", rsa_main, rsa_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "rsautl", rsautl_main, rsautl_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_client", s_client_main, s_client_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_server", s_server_main, s_server_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_time", s_time_main, s_time_options },
#endif
{ FT_general, "sess_id", sess_id_main, sess_id_options },
{ FT_general, "smime", smime_main, smime_options },
{ FT_general, "speed", speed_main, speed_options },
{ FT_general, "spkac", spkac_main, spkac_options },
#ifndef OPENSSL_NO_SRP
{ FT_general, "srp", srp_main, srp_options },
#endif
#ifndef OPENSSL_NO_TS
{ FT_general, "ts", ts_main, ts_options },
#endif
{ FT_general, "verify", verify_main, verify_options },
{ FT_general, "version", version_main, version_options },
{ FT_general, "x509", x509_main, x509_options },
#ifndef OPENSSL_NO_MD2
{ FT_md, "md2", dgst_main},
#endif
#ifndef OPENSSL_NO_MD4
{ FT_md, "md4", dgst_main},
#endif
{ FT_md, "md5", dgst_main},
#ifndef OPENSSL_NO_GOST
{ FT_md, "gost", dgst_main},
#endif
{ FT_md, "sha1", dgst_main},
{ FT_md, "sha224", dgst_main},
{ FT_md, "sha256", dgst_main},
{ FT_md, "sha384", dgst_main},
{ FT_md, "sha512", dgst_main},
#ifndef OPENSSL_NO_MDC2
{ FT_md, "mdc2", dgst_main},
#endif
#ifndef OPENSSL_NO_RMD160
{ FT_md, "rmd160", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2b512", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2s256", dgst_main},
#endif
{ FT_cipher, "aes-128-cbc", enc_main, enc_options },
{ FT_cipher, "aes-128-ecb", enc_main, enc_options },
{ FT_cipher, "aes-192-cbc", enc_main, enc_options },
{ FT_cipher, "aes-192-ecb", enc_main, enc_options },
{ FT_cipher, "aes-256-cbc", enc_main, enc_options },
{ FT_cipher, "aes-256-ecb", enc_main, enc_options },
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-ecb", enc_main, enc_options },
#endif
{ FT_cipher, "base64", enc_main, enc_options },
#ifdef ZLIB
{ FT_cipher, "zlib", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "desx", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4-40", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-64-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-40-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ofb", enc_main, enc_options },
#endif
{ 0, NULL, NULL}
};
#endif
+94
View File
@@ -0,0 +1,94 @@
{
'variables': {
'openssl_defines_VC-WIN32': [
'DSO_WIN32',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
'OPENSSL_BN_ASM_PART_WORDS',
'OPENSSL_IA32_SSE2',
'OPENSSL_BN_ASM_MONT',
'OPENSSL_BN_ASM_GF2m',
'SHA1_ASM',
'SHA256_ASM',
'SHA512_ASM',
'RC4_ASM',
'MD5_ASM',
'RMD160_ASM',
'AES_ASM',
'VPAES_ASM',
'WHIRLPOOL_ASM',
'GHASH_ASM',
'ECP_NISTZ256_ASM',
'PADLOCK_ASM',
'POLY1305_ASM',
],
'openssl_cflags_VC-WIN32': [
'-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DUNICODE -D_UNICODE /O2',
],
'openssl_ex_libs_VC-WIN32': [
'ws2_32.lib gdi32.lib advapi32.lib crypt32.lib user32.lib',
],
'openssl_cli_srcs_VC-WIN32': [
'openssl/apps/app_rand.c',
'openssl/apps/apps.c',
'openssl/apps/asn1pars.c',
'openssl/apps/ca.c',
'openssl/apps/ciphers.c',
'openssl/apps/cms.c',
'openssl/apps/crl.c',
'openssl/apps/crl2p7.c',
'openssl/apps/dgst.c',
'openssl/apps/dhparam.c',
'openssl/apps/dsa.c',
'openssl/apps/dsaparam.c',
'openssl/apps/ec.c',
'openssl/apps/ecparam.c',
'openssl/apps/enc.c',
'openssl/apps/engine.c',
'openssl/apps/errstr.c',
'openssl/apps/gendsa.c',
'openssl/apps/genpkey.c',
'openssl/apps/genrsa.c',
'openssl/apps/nseq.c',
'openssl/apps/ocsp.c',
'openssl/apps/openssl.c',
'openssl/apps/opt.c',
'openssl/apps/passwd.c',
'openssl/apps/pkcs12.c',
'openssl/apps/pkcs7.c',
'openssl/apps/pkcs8.c',
'openssl/apps/pkey.c',
'openssl/apps/pkeyparam.c',
'openssl/apps/pkeyutl.c',
'openssl/apps/prime.c',
'openssl/apps/rand.c',
'openssl/apps/rehash.c',
'openssl/apps/req.c',
'openssl/apps/rsa.c',
'openssl/apps/rsautl.c',
'openssl/apps/s_cb.c',
'openssl/apps/s_client.c',
'openssl/apps/s_server.c',
'openssl/apps/s_socket.c',
'openssl/apps/s_time.c',
'openssl/apps/sess_id.c',
'openssl/apps/smime.c',
'openssl/apps/speed.c',
'openssl/apps/spkac.c',
'openssl/apps/srp.c',
'openssl/apps/ts.c',
'openssl/apps/verify.c',
'openssl/apps/version.c',
'openssl/apps/win32_init.c',
'openssl/apps/x509.c',
],
},
'defines': ['<@(openssl_defines_VC-WIN32)'],
'include_dirs': [
'./include',
],
'sources': ['<@(openssl_cli_srcs_VC-WIN32)'],
}
+698
View File
@@ -0,0 +1,698 @@
{
'variables': {
'openssl_sources': [
'openssl/ssl/bio_ssl.c',
'openssl/ssl/d1_lib.c',
'openssl/ssl/d1_msg.c',
'openssl/ssl/d1_srtp.c',
'openssl/ssl/methods.c',
'openssl/ssl/pqueue.c',
'openssl/ssl/record/dtls1_bitmap.c',
'openssl/ssl/record/rec_layer_d1.c',
'openssl/ssl/record/rec_layer_s3.c',
'openssl/ssl/record/ssl3_buffer.c',
'openssl/ssl/record/ssl3_record.c',
'openssl/ssl/s3_cbc.c',
'openssl/ssl/s3_enc.c',
'openssl/ssl/s3_lib.c',
'openssl/ssl/s3_msg.c',
'openssl/ssl/ssl_asn1.c',
'openssl/ssl/ssl_cert.c',
'openssl/ssl/ssl_ciph.c',
'openssl/ssl/ssl_conf.c',
'openssl/ssl/ssl_err.c',
'openssl/ssl/ssl_init.c',
'openssl/ssl/ssl_lib.c',
'openssl/ssl/ssl_mcnf.c',
'openssl/ssl/ssl_rsa.c',
'openssl/ssl/ssl_sess.c',
'openssl/ssl/ssl_stat.c',
'openssl/ssl/ssl_txt.c',
'openssl/ssl/ssl_utst.c',
'openssl/ssl/statem/statem.c',
'openssl/ssl/statem/statem_clnt.c',
'openssl/ssl/statem/statem_dtls.c',
'openssl/ssl/statem/statem_lib.c',
'openssl/ssl/statem/statem_srvr.c',
'openssl/ssl/t1_enc.c',
'openssl/ssl/t1_ext.c',
'openssl/ssl/t1_lib.c',
'openssl/ssl/t1_reneg.c',
'openssl/ssl/t1_trce.c',
'openssl/ssl/tls_srp.c',
'openssl/crypto/aes/aes_cfb.c',
'openssl/crypto/aes/aes_ecb.c',
'openssl/crypto/aes/aes_ige.c',
'openssl/crypto/aes/aes_misc.c',
'openssl/crypto/aes/aes_ofb.c',
'openssl/crypto/aes/aes_wrap.c',
'openssl/crypto/asn1/a_bitstr.c',
'openssl/crypto/asn1/a_d2i_fp.c',
'openssl/crypto/asn1/a_digest.c',
'openssl/crypto/asn1/a_dup.c',
'openssl/crypto/asn1/a_gentm.c',
'openssl/crypto/asn1/a_i2d_fp.c',
'openssl/crypto/asn1/a_int.c',
'openssl/crypto/asn1/a_mbstr.c',
'openssl/crypto/asn1/a_object.c',
'openssl/crypto/asn1/a_octet.c',
'openssl/crypto/asn1/a_print.c',
'openssl/crypto/asn1/a_sign.c',
'openssl/crypto/asn1/a_strex.c',
'openssl/crypto/asn1/a_strnid.c',
'openssl/crypto/asn1/a_time.c',
'openssl/crypto/asn1/a_type.c',
'openssl/crypto/asn1/a_utctm.c',
'openssl/crypto/asn1/a_utf8.c',
'openssl/crypto/asn1/a_verify.c',
'openssl/crypto/asn1/ameth_lib.c',
'openssl/crypto/asn1/asn1_err.c',
'openssl/crypto/asn1/asn1_gen.c',
'openssl/crypto/asn1/asn1_lib.c',
'openssl/crypto/asn1/asn1_par.c',
'openssl/crypto/asn1/asn_mime.c',
'openssl/crypto/asn1/asn_moid.c',
'openssl/crypto/asn1/asn_mstbl.c',
'openssl/crypto/asn1/asn_pack.c',
'openssl/crypto/asn1/bio_asn1.c',
'openssl/crypto/asn1/bio_ndef.c',
'openssl/crypto/asn1/d2i_pr.c',
'openssl/crypto/asn1/d2i_pu.c',
'openssl/crypto/asn1/evp_asn1.c',
'openssl/crypto/asn1/f_int.c',
'openssl/crypto/asn1/f_string.c',
'openssl/crypto/asn1/i2d_pr.c',
'openssl/crypto/asn1/i2d_pu.c',
'openssl/crypto/asn1/n_pkey.c',
'openssl/crypto/asn1/nsseq.c',
'openssl/crypto/asn1/p5_pbe.c',
'openssl/crypto/asn1/p5_pbev2.c',
'openssl/crypto/asn1/p5_scrypt.c',
'openssl/crypto/asn1/p8_pkey.c',
'openssl/crypto/asn1/t_bitst.c',
'openssl/crypto/asn1/t_pkey.c',
'openssl/crypto/asn1/t_spki.c',
'openssl/crypto/asn1/tasn_dec.c',
'openssl/crypto/asn1/tasn_enc.c',
'openssl/crypto/asn1/tasn_fre.c',
'openssl/crypto/asn1/tasn_new.c',
'openssl/crypto/asn1/tasn_prn.c',
'openssl/crypto/asn1/tasn_scn.c',
'openssl/crypto/asn1/tasn_typ.c',
'openssl/crypto/asn1/tasn_utl.c',
'openssl/crypto/asn1/x_algor.c',
'openssl/crypto/asn1/x_bignum.c',
'openssl/crypto/asn1/x_info.c',
'openssl/crypto/asn1/x_int64.c',
'openssl/crypto/asn1/x_long.c',
'openssl/crypto/asn1/x_pkey.c',
'openssl/crypto/asn1/x_sig.c',
'openssl/crypto/asn1/x_spki.c',
'openssl/crypto/asn1/x_val.c',
'openssl/crypto/async/arch/async_null.c',
'openssl/crypto/async/arch/async_posix.c',
'openssl/crypto/async/arch/async_win.c',
'openssl/crypto/async/async.c',
'openssl/crypto/async/async_err.c',
'openssl/crypto/async/async_wait.c',
'openssl/crypto/bf/bf_cfb64.c',
'openssl/crypto/bf/bf_ecb.c',
'openssl/crypto/bf/bf_ofb64.c',
'openssl/crypto/bf/bf_skey.c',
'openssl/crypto/bio/b_addr.c',
'openssl/crypto/bio/b_dump.c',
'openssl/crypto/bio/b_print.c',
'openssl/crypto/bio/b_sock.c',
'openssl/crypto/bio/b_sock2.c',
'openssl/crypto/bio/bf_buff.c',
'openssl/crypto/bio/bf_lbuf.c',
'openssl/crypto/bio/bf_nbio.c',
'openssl/crypto/bio/bf_null.c',
'openssl/crypto/bio/bio_cb.c',
'openssl/crypto/bio/bio_err.c',
'openssl/crypto/bio/bio_lib.c',
'openssl/crypto/bio/bio_meth.c',
'openssl/crypto/bio/bss_acpt.c',
'openssl/crypto/bio/bss_bio.c',
'openssl/crypto/bio/bss_conn.c',
'openssl/crypto/bio/bss_dgram.c',
'openssl/crypto/bio/bss_fd.c',
'openssl/crypto/bio/bss_file.c',
'openssl/crypto/bio/bss_log.c',
'openssl/crypto/bio/bss_mem.c',
'openssl/crypto/bio/bss_null.c',
'openssl/crypto/bio/bss_sock.c',
'openssl/crypto/blake2/blake2b.c',
'openssl/crypto/blake2/blake2s.c',
'openssl/crypto/blake2/m_blake2b.c',
'openssl/crypto/blake2/m_blake2s.c',
'openssl/crypto/bn/bn_add.c',
'openssl/crypto/bn/bn_blind.c',
'openssl/crypto/bn/bn_const.c',
'openssl/crypto/bn/bn_ctx.c',
'openssl/crypto/bn/bn_depr.c',
'openssl/crypto/bn/bn_dh.c',
'openssl/crypto/bn/bn_div.c',
'openssl/crypto/bn/bn_err.c',
'openssl/crypto/bn/bn_exp.c',
'openssl/crypto/bn/bn_exp2.c',
'openssl/crypto/bn/bn_gcd.c',
'openssl/crypto/bn/bn_gf2m.c',
'openssl/crypto/bn/bn_intern.c',
'openssl/crypto/bn/bn_kron.c',
'openssl/crypto/bn/bn_lib.c',
'openssl/crypto/bn/bn_mod.c',
'openssl/crypto/bn/bn_mont.c',
'openssl/crypto/bn/bn_mpi.c',
'openssl/crypto/bn/bn_mul.c',
'openssl/crypto/bn/bn_nist.c',
'openssl/crypto/bn/bn_prime.c',
'openssl/crypto/bn/bn_print.c',
'openssl/crypto/bn/bn_rand.c',
'openssl/crypto/bn/bn_recp.c',
'openssl/crypto/bn/bn_shift.c',
'openssl/crypto/bn/bn_sqr.c',
'openssl/crypto/bn/bn_sqrt.c',
'openssl/crypto/bn/bn_srp.c',
'openssl/crypto/bn/bn_word.c',
'openssl/crypto/bn/bn_x931p.c',
'openssl/crypto/buffer/buf_err.c',
'openssl/crypto/buffer/buffer.c',
'openssl/crypto/camellia/cmll_cfb.c',
'openssl/crypto/camellia/cmll_ctr.c',
'openssl/crypto/camellia/cmll_ecb.c',
'openssl/crypto/camellia/cmll_ofb.c',
'openssl/crypto/cast/c_cfb64.c',
'openssl/crypto/cast/c_ecb.c',
'openssl/crypto/cast/c_enc.c',
'openssl/crypto/cast/c_ofb64.c',
'openssl/crypto/cast/c_skey.c',
'openssl/crypto/cmac/cm_ameth.c',
'openssl/crypto/cmac/cm_pmeth.c',
'openssl/crypto/cmac/cmac.c',
'openssl/crypto/cms/cms_asn1.c',
'openssl/crypto/cms/cms_att.c',
'openssl/crypto/cms/cms_cd.c',
'openssl/crypto/cms/cms_dd.c',
'openssl/crypto/cms/cms_enc.c',
'openssl/crypto/cms/cms_env.c',
'openssl/crypto/cms/cms_err.c',
'openssl/crypto/cms/cms_ess.c',
'openssl/crypto/cms/cms_io.c',
'openssl/crypto/cms/cms_kari.c',
'openssl/crypto/cms/cms_lib.c',
'openssl/crypto/cms/cms_pwri.c',
'openssl/crypto/cms/cms_sd.c',
'openssl/crypto/cms/cms_smime.c',
'openssl/crypto/conf/conf_api.c',
'openssl/crypto/conf/conf_def.c',
'openssl/crypto/conf/conf_err.c',
'openssl/crypto/conf/conf_lib.c',
'openssl/crypto/conf/conf_mall.c',
'openssl/crypto/conf/conf_mod.c',
'openssl/crypto/conf/conf_sap.c',
'openssl/crypto/cpt_err.c',
'openssl/crypto/cryptlib.c',
'openssl/crypto/ct/ct_b64.c',
'openssl/crypto/ct/ct_err.c',
'openssl/crypto/ct/ct_log.c',
'openssl/crypto/ct/ct_oct.c',
'openssl/crypto/ct/ct_policy.c',
'openssl/crypto/ct/ct_prn.c',
'openssl/crypto/ct/ct_sct.c',
'openssl/crypto/ct/ct_sct_ctx.c',
'openssl/crypto/ct/ct_vfy.c',
'openssl/crypto/ct/ct_x509v3.c',
'openssl/crypto/cversion.c',
'openssl/crypto/des/cbc_cksm.c',
'openssl/crypto/des/cbc_enc.c',
'openssl/crypto/des/cfb64ede.c',
'openssl/crypto/des/cfb64enc.c',
'openssl/crypto/des/cfb_enc.c',
'openssl/crypto/des/ecb3_enc.c',
'openssl/crypto/des/ecb_enc.c',
'openssl/crypto/des/fcrypt.c',
'openssl/crypto/des/ofb64ede.c',
'openssl/crypto/des/ofb64enc.c',
'openssl/crypto/des/ofb_enc.c',
'openssl/crypto/des/pcbc_enc.c',
'openssl/crypto/des/qud_cksm.c',
'openssl/crypto/des/rand_key.c',
'openssl/crypto/des/rpc_enc.c',
'openssl/crypto/des/set_key.c',
'openssl/crypto/des/str2key.c',
'openssl/crypto/des/xcbc_enc.c',
'openssl/crypto/dh/dh_ameth.c',
'openssl/crypto/dh/dh_asn1.c',
'openssl/crypto/dh/dh_check.c',
'openssl/crypto/dh/dh_depr.c',
'openssl/crypto/dh/dh_err.c',
'openssl/crypto/dh/dh_gen.c',
'openssl/crypto/dh/dh_kdf.c',
'openssl/crypto/dh/dh_key.c',
'openssl/crypto/dh/dh_lib.c',
'openssl/crypto/dh/dh_meth.c',
'openssl/crypto/dh/dh_pmeth.c',
'openssl/crypto/dh/dh_prn.c',
'openssl/crypto/dh/dh_rfc5114.c',
'openssl/crypto/dsa/dsa_ameth.c',
'openssl/crypto/dsa/dsa_asn1.c',
'openssl/crypto/dsa/dsa_depr.c',
'openssl/crypto/dsa/dsa_err.c',
'openssl/crypto/dsa/dsa_gen.c',
'openssl/crypto/dsa/dsa_key.c',
'openssl/crypto/dsa/dsa_lib.c',
'openssl/crypto/dsa/dsa_meth.c',
'openssl/crypto/dsa/dsa_ossl.c',
'openssl/crypto/dsa/dsa_pmeth.c',
'openssl/crypto/dsa/dsa_prn.c',
'openssl/crypto/dsa/dsa_sign.c',
'openssl/crypto/dsa/dsa_vrf.c',
'openssl/crypto/dso/dso_dl.c',
'openssl/crypto/dso/dso_dlfcn.c',
'openssl/crypto/dso/dso_err.c',
'openssl/crypto/dso/dso_lib.c',
'openssl/crypto/dso/dso_openssl.c',
'openssl/crypto/dso/dso_vms.c',
'openssl/crypto/dso/dso_win32.c',
'openssl/crypto/ebcdic.c',
'openssl/crypto/ec/curve25519.c',
'openssl/crypto/ec/ec2_mult.c',
'openssl/crypto/ec/ec2_oct.c',
'openssl/crypto/ec/ec2_smpl.c',
'openssl/crypto/ec/ec_ameth.c',
'openssl/crypto/ec/ec_asn1.c',
'openssl/crypto/ec/ec_check.c',
'openssl/crypto/ec/ec_curve.c',
'openssl/crypto/ec/ec_cvt.c',
'openssl/crypto/ec/ec_err.c',
'openssl/crypto/ec/ec_key.c',
'openssl/crypto/ec/ec_kmeth.c',
'openssl/crypto/ec/ec_lib.c',
'openssl/crypto/ec/ec_mult.c',
'openssl/crypto/ec/ec_oct.c',
'openssl/crypto/ec/ec_pmeth.c',
'openssl/crypto/ec/ec_print.c',
'openssl/crypto/ec/ecdh_kdf.c',
'openssl/crypto/ec/ecdh_ossl.c',
'openssl/crypto/ec/ecdsa_ossl.c',
'openssl/crypto/ec/ecdsa_sign.c',
'openssl/crypto/ec/ecdsa_vrf.c',
'openssl/crypto/ec/eck_prn.c',
'openssl/crypto/ec/ecp_mont.c',
'openssl/crypto/ec/ecp_nist.c',
'openssl/crypto/ec/ecp_nistp224.c',
'openssl/crypto/ec/ecp_nistp256.c',
'openssl/crypto/ec/ecp_nistp521.c',
'openssl/crypto/ec/ecp_nistputil.c',
'openssl/crypto/ec/ecp_nistz256.c',
'openssl/crypto/ec/ecp_oct.c',
'openssl/crypto/ec/ecp_smpl.c',
'openssl/crypto/ec/ecx_meth.c',
'openssl/crypto/engine/eng_all.c',
'openssl/crypto/engine/eng_cnf.c',
'openssl/crypto/engine/eng_cryptodev.c',
'openssl/crypto/engine/eng_ctrl.c',
'openssl/crypto/engine/eng_dyn.c',
'openssl/crypto/engine/eng_err.c',
'openssl/crypto/engine/eng_fat.c',
'openssl/crypto/engine/eng_init.c',
'openssl/crypto/engine/eng_lib.c',
'openssl/crypto/engine/eng_list.c',
'openssl/crypto/engine/eng_openssl.c',
'openssl/crypto/engine/eng_pkey.c',
'openssl/crypto/engine/eng_rdrand.c',
'openssl/crypto/engine/eng_table.c',
'openssl/crypto/engine/tb_asnmth.c',
'openssl/crypto/engine/tb_cipher.c',
'openssl/crypto/engine/tb_dh.c',
'openssl/crypto/engine/tb_digest.c',
'openssl/crypto/engine/tb_dsa.c',
'openssl/crypto/engine/tb_eckey.c',
'openssl/crypto/engine/tb_pkmeth.c',
'openssl/crypto/engine/tb_rand.c',
'openssl/crypto/engine/tb_rsa.c',
'openssl/crypto/err/err.c',
'openssl/crypto/err/err_all.c',
'openssl/crypto/err/err_prn.c',
'openssl/crypto/evp/bio_b64.c',
'openssl/crypto/evp/bio_enc.c',
'openssl/crypto/evp/bio_md.c',
'openssl/crypto/evp/bio_ok.c',
'openssl/crypto/evp/c_allc.c',
'openssl/crypto/evp/c_alld.c',
'openssl/crypto/evp/cmeth_lib.c',
'openssl/crypto/evp/digest.c',
'openssl/crypto/evp/e_aes.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha1.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha256.c',
'openssl/crypto/evp/e_bf.c',
'openssl/crypto/evp/e_camellia.c',
'openssl/crypto/evp/e_cast.c',
'openssl/crypto/evp/e_chacha20_poly1305.c',
'openssl/crypto/evp/e_des.c',
'openssl/crypto/evp/e_des3.c',
'openssl/crypto/evp/e_idea.c',
'openssl/crypto/evp/e_null.c',
'openssl/crypto/evp/e_old.c',
'openssl/crypto/evp/e_rc2.c',
'openssl/crypto/evp/e_rc4.c',
'openssl/crypto/evp/e_rc4_hmac_md5.c',
'openssl/crypto/evp/e_rc5.c',
'openssl/crypto/evp/e_seed.c',
'openssl/crypto/evp/e_xcbc_d.c',
'openssl/crypto/evp/encode.c',
'openssl/crypto/evp/evp_cnf.c',
'openssl/crypto/evp/evp_enc.c',
'openssl/crypto/evp/evp_err.c',
'openssl/crypto/evp/evp_key.c',
'openssl/crypto/evp/evp_lib.c',
'openssl/crypto/evp/evp_pbe.c',
'openssl/crypto/evp/evp_pkey.c',
'openssl/crypto/evp/m_md2.c',
'openssl/crypto/evp/m_md4.c',
'openssl/crypto/evp/m_md5.c',
'openssl/crypto/evp/m_md5_sha1.c',
'openssl/crypto/evp/m_mdc2.c',
'openssl/crypto/evp/m_null.c',
'openssl/crypto/evp/m_ripemd.c',
'openssl/crypto/evp/m_sha1.c',
'openssl/crypto/evp/m_sigver.c',
'openssl/crypto/evp/m_wp.c',
'openssl/crypto/evp/names.c',
'openssl/crypto/evp/p5_crpt.c',
'openssl/crypto/evp/p5_crpt2.c',
'openssl/crypto/evp/p_dec.c',
'openssl/crypto/evp/p_enc.c',
'openssl/crypto/evp/p_lib.c',
'openssl/crypto/evp/p_open.c',
'openssl/crypto/evp/p_seal.c',
'openssl/crypto/evp/p_sign.c',
'openssl/crypto/evp/p_verify.c',
'openssl/crypto/evp/pmeth_fn.c',
'openssl/crypto/evp/pmeth_gn.c',
'openssl/crypto/evp/pmeth_lib.c',
'openssl/crypto/evp/scrypt.c',
'openssl/crypto/ex_data.c',
'openssl/crypto/hmac/hm_ameth.c',
'openssl/crypto/hmac/hm_pmeth.c',
'openssl/crypto/hmac/hmac.c',
'openssl/crypto/idea/i_cbc.c',
'openssl/crypto/idea/i_cfb64.c',
'openssl/crypto/idea/i_ecb.c',
'openssl/crypto/idea/i_ofb64.c',
'openssl/crypto/idea/i_skey.c',
'openssl/crypto/init.c',
'openssl/crypto/kdf/hkdf.c',
'openssl/crypto/kdf/kdf_err.c',
'openssl/crypto/kdf/tls1_prf.c',
'openssl/crypto/lhash/lh_stats.c',
'openssl/crypto/lhash/lhash.c',
'openssl/crypto/md4/md4_dgst.c',
'openssl/crypto/md4/md4_one.c',
'openssl/crypto/md5/md5_dgst.c',
'openssl/crypto/md5/md5_one.c',
'openssl/crypto/mdc2/mdc2_one.c',
'openssl/crypto/mdc2/mdc2dgst.c',
'openssl/crypto/mem.c',
'openssl/crypto/mem_dbg.c',
'openssl/crypto/mem_sec.c',
'openssl/crypto/modes/cbc128.c',
'openssl/crypto/modes/ccm128.c',
'openssl/crypto/modes/cfb128.c',
'openssl/crypto/modes/ctr128.c',
'openssl/crypto/modes/cts128.c',
'openssl/crypto/modes/gcm128.c',
'openssl/crypto/modes/ocb128.c',
'openssl/crypto/modes/ofb128.c',
'openssl/crypto/modes/wrap128.c',
'openssl/crypto/modes/xts128.c',
'openssl/crypto/o_dir.c',
'openssl/crypto/o_fips.c',
'openssl/crypto/o_fopen.c',
'openssl/crypto/o_init.c',
'openssl/crypto/o_str.c',
'openssl/crypto/o_time.c',
'openssl/crypto/objects/o_names.c',
'openssl/crypto/objects/obj_dat.c',
'openssl/crypto/objects/obj_err.c',
'openssl/crypto/objects/obj_lib.c',
'openssl/crypto/objects/obj_xref.c',
'openssl/crypto/ocsp/ocsp_asn.c',
'openssl/crypto/ocsp/ocsp_cl.c',
'openssl/crypto/ocsp/ocsp_err.c',
'openssl/crypto/ocsp/ocsp_ext.c',
'openssl/crypto/ocsp/ocsp_ht.c',
'openssl/crypto/ocsp/ocsp_lib.c',
'openssl/crypto/ocsp/ocsp_prn.c',
'openssl/crypto/ocsp/ocsp_srv.c',
'openssl/crypto/ocsp/ocsp_vfy.c',
'openssl/crypto/ocsp/v3_ocsp.c',
'openssl/crypto/pem/pem_all.c',
'openssl/crypto/pem/pem_err.c',
'openssl/crypto/pem/pem_info.c',
'openssl/crypto/pem/pem_lib.c',
'openssl/crypto/pem/pem_oth.c',
'openssl/crypto/pem/pem_pk8.c',
'openssl/crypto/pem/pem_pkey.c',
'openssl/crypto/pem/pem_sign.c',
'openssl/crypto/pem/pem_x509.c',
'openssl/crypto/pem/pem_xaux.c',
'openssl/crypto/pem/pvkfmt.c',
'openssl/crypto/pkcs12/p12_add.c',
'openssl/crypto/pkcs12/p12_asn.c',
'openssl/crypto/pkcs12/p12_attr.c',
'openssl/crypto/pkcs12/p12_crpt.c',
'openssl/crypto/pkcs12/p12_crt.c',
'openssl/crypto/pkcs12/p12_decr.c',
'openssl/crypto/pkcs12/p12_init.c',
'openssl/crypto/pkcs12/p12_key.c',
'openssl/crypto/pkcs12/p12_kiss.c',
'openssl/crypto/pkcs12/p12_mutl.c',
'openssl/crypto/pkcs12/p12_npas.c',
'openssl/crypto/pkcs12/p12_p8d.c',
'openssl/crypto/pkcs12/p12_p8e.c',
'openssl/crypto/pkcs12/p12_sbag.c',
'openssl/crypto/pkcs12/p12_utl.c',
'openssl/crypto/pkcs12/pk12err.c',
'openssl/crypto/pkcs7/bio_pk7.c',
'openssl/crypto/pkcs7/pk7_asn1.c',
'openssl/crypto/pkcs7/pk7_attr.c',
'openssl/crypto/pkcs7/pk7_doit.c',
'openssl/crypto/pkcs7/pk7_lib.c',
'openssl/crypto/pkcs7/pk7_mime.c',
'openssl/crypto/pkcs7/pk7_smime.c',
'openssl/crypto/pkcs7/pkcs7err.c',
'openssl/crypto/poly1305/poly1305.c',
'openssl/crypto/rand/md_rand.c',
'openssl/crypto/rand/rand_egd.c',
'openssl/crypto/rand/rand_err.c',
'openssl/crypto/rand/rand_lib.c',
'openssl/crypto/rand/rand_unix.c',
'openssl/crypto/rand/rand_vms.c',
'openssl/crypto/rand/rand_win.c',
'openssl/crypto/rand/randfile.c',
'openssl/crypto/rc2/rc2_cbc.c',
'openssl/crypto/rc2/rc2_ecb.c',
'openssl/crypto/rc2/rc2_skey.c',
'openssl/crypto/rc2/rc2cfb64.c',
'openssl/crypto/rc2/rc2ofb64.c',
'openssl/crypto/ripemd/rmd_dgst.c',
'openssl/crypto/ripemd/rmd_one.c',
'openssl/crypto/rsa/rsa_ameth.c',
'openssl/crypto/rsa/rsa_asn1.c',
'openssl/crypto/rsa/rsa_chk.c',
'openssl/crypto/rsa/rsa_crpt.c',
'openssl/crypto/rsa/rsa_depr.c',
'openssl/crypto/rsa/rsa_err.c',
'openssl/crypto/rsa/rsa_gen.c',
'openssl/crypto/rsa/rsa_lib.c',
'openssl/crypto/rsa/rsa_meth.c',
'openssl/crypto/rsa/rsa_none.c',
'openssl/crypto/rsa/rsa_null.c',
'openssl/crypto/rsa/rsa_oaep.c',
'openssl/crypto/rsa/rsa_ossl.c',
'openssl/crypto/rsa/rsa_pk1.c',
'openssl/crypto/rsa/rsa_pmeth.c',
'openssl/crypto/rsa/rsa_prn.c',
'openssl/crypto/rsa/rsa_pss.c',
'openssl/crypto/rsa/rsa_saos.c',
'openssl/crypto/rsa/rsa_sign.c',
'openssl/crypto/rsa/rsa_ssl.c',
'openssl/crypto/rsa/rsa_x931.c',
'openssl/crypto/rsa/rsa_x931g.c',
'openssl/crypto/seed/seed.c',
'openssl/crypto/seed/seed_cbc.c',
'openssl/crypto/seed/seed_cfb.c',
'openssl/crypto/seed/seed_ecb.c',
'openssl/crypto/seed/seed_ofb.c',
'openssl/crypto/sha/sha1_one.c',
'openssl/crypto/sha/sha1dgst.c',
'openssl/crypto/sha/sha256.c',
'openssl/crypto/sha/sha512.c',
'openssl/crypto/srp/srp_lib.c',
'openssl/crypto/srp/srp_vfy.c',
'openssl/crypto/stack/stack.c',
'openssl/crypto/threads_none.c',
'openssl/crypto/threads_pthread.c',
'openssl/crypto/threads_win.c',
'openssl/crypto/ts/ts_asn1.c',
'openssl/crypto/ts/ts_conf.c',
'openssl/crypto/ts/ts_err.c',
'openssl/crypto/ts/ts_lib.c',
'openssl/crypto/ts/ts_req_print.c',
'openssl/crypto/ts/ts_req_utils.c',
'openssl/crypto/ts/ts_rsp_print.c',
'openssl/crypto/ts/ts_rsp_sign.c',
'openssl/crypto/ts/ts_rsp_utils.c',
'openssl/crypto/ts/ts_rsp_verify.c',
'openssl/crypto/ts/ts_verify_ctx.c',
'openssl/crypto/txt_db/txt_db.c',
'openssl/crypto/ui/ui_err.c',
'openssl/crypto/ui/ui_lib.c',
'openssl/crypto/ui/ui_openssl.c',
'openssl/crypto/ui/ui_util.c',
'openssl/crypto/uid.c',
'openssl/crypto/whrlpool/wp_block.c',
'openssl/crypto/whrlpool/wp_dgst.c',
'openssl/crypto/x509/by_dir.c',
'openssl/crypto/x509/by_file.c',
'openssl/crypto/x509/t_crl.c',
'openssl/crypto/x509/t_req.c',
'openssl/crypto/x509/t_x509.c',
'openssl/crypto/x509/x509_att.c',
'openssl/crypto/x509/x509_cmp.c',
'openssl/crypto/x509/x509_d2.c',
'openssl/crypto/x509/x509_def.c',
'openssl/crypto/x509/x509_err.c',
'openssl/crypto/x509/x509_ext.c',
'openssl/crypto/x509/x509_lu.c',
'openssl/crypto/x509/x509_obj.c',
'openssl/crypto/x509/x509_r2x.c',
'openssl/crypto/x509/x509_req.c',
'openssl/crypto/x509/x509_set.c',
'openssl/crypto/x509/x509_trs.c',
'openssl/crypto/x509/x509_txt.c',
'openssl/crypto/x509/x509_v3.c',
'openssl/crypto/x509/x509_vfy.c',
'openssl/crypto/x509/x509_vpm.c',
'openssl/crypto/x509/x509cset.c',
'openssl/crypto/x509/x509name.c',
'openssl/crypto/x509/x509rset.c',
'openssl/crypto/x509/x509spki.c',
'openssl/crypto/x509/x509type.c',
'openssl/crypto/x509/x_all.c',
'openssl/crypto/x509/x_attrib.c',
'openssl/crypto/x509/x_crl.c',
'openssl/crypto/x509/x_exten.c',
'openssl/crypto/x509/x_name.c',
'openssl/crypto/x509/x_pubkey.c',
'openssl/crypto/x509/x_req.c',
'openssl/crypto/x509/x_x509.c',
'openssl/crypto/x509/x_x509a.c',
'openssl/crypto/x509v3/pcy_cache.c',
'openssl/crypto/x509v3/pcy_data.c',
'openssl/crypto/x509v3/pcy_lib.c',
'openssl/crypto/x509v3/pcy_map.c',
'openssl/crypto/x509v3/pcy_node.c',
'openssl/crypto/x509v3/pcy_tree.c',
'openssl/crypto/x509v3/v3_addr.c',
'openssl/crypto/x509v3/v3_akey.c',
'openssl/crypto/x509v3/v3_akeya.c',
'openssl/crypto/x509v3/v3_alt.c',
'openssl/crypto/x509v3/v3_asid.c',
'openssl/crypto/x509v3/v3_bcons.c',
'openssl/crypto/x509v3/v3_bitst.c',
'openssl/crypto/x509v3/v3_conf.c',
'openssl/crypto/x509v3/v3_cpols.c',
'openssl/crypto/x509v3/v3_crld.c',
'openssl/crypto/x509v3/v3_enum.c',
'openssl/crypto/x509v3/v3_extku.c',
'openssl/crypto/x509v3/v3_genn.c',
'openssl/crypto/x509v3/v3_ia5.c',
'openssl/crypto/x509v3/v3_info.c',
'openssl/crypto/x509v3/v3_int.c',
'openssl/crypto/x509v3/v3_lib.c',
'openssl/crypto/x509v3/v3_ncons.c',
'openssl/crypto/x509v3/v3_pci.c',
'openssl/crypto/x509v3/v3_pcia.c',
'openssl/crypto/x509v3/v3_pcons.c',
'openssl/crypto/x509v3/v3_pku.c',
'openssl/crypto/x509v3/v3_pmaps.c',
'openssl/crypto/x509v3/v3_prn.c',
'openssl/crypto/x509v3/v3_purp.c',
'openssl/crypto/x509v3/v3_skey.c',
'openssl/crypto/x509v3/v3_sxnet.c',
'openssl/crypto/x509v3/v3_tlsf.c',
'openssl/crypto/x509v3/v3_utl.c',
'openssl/crypto/x509v3/v3err.c',
'openssl/engines/e_capi.c',
'openssl/engines/e_padlock.c',
],
'openssl_sources_VC-WIN32': [
'./config/archs/VC-WIN32/asm/crypto/aes/aes-586.asm',
'./config/archs/VC-WIN32/asm/crypto/aes/aesni-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/aes/vpaes-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/bf/bf-586.asm',
'./config/archs/VC-WIN32/asm/crypto/bn/bn-586.asm',
'./config/archs/VC-WIN32/asm/crypto/bn/co-586.asm',
'./config/archs/VC-WIN32/asm/crypto/bn/x86-gf2m.asm',
'./config/archs/VC-WIN32/asm/crypto/bn/x86-mont.asm',
'./config/archs/VC-WIN32/asm/crypto/camellia/cmll-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/chacha/chacha-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/des/crypt586.asm',
'./config/archs/VC-WIN32/asm/crypto/des/des-586.asm',
'./config/archs/VC-WIN32/asm/crypto/ec/ecp_nistz256-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/md5/md5-586.asm',
'./config/archs/VC-WIN32/asm/crypto/modes/ghash-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/poly1305/poly1305-x86.asm',
'./config/archs/VC-WIN32/asm/crypto/rc4/rc4-586.asm',
'./config/archs/VC-WIN32/asm/crypto/ripemd/rmd-586.asm',
'./config/archs/VC-WIN32/asm/crypto/sha/sha1-586.asm',
'./config/archs/VC-WIN32/asm/crypto/sha/sha256-586.asm',
'./config/archs/VC-WIN32/asm/crypto/sha/sha512-586.asm',
'./config/archs/VC-WIN32/asm/crypto/whrlpool/wp-mmx.asm',
'./config/archs/VC-WIN32/asm/crypto/x86cpuid.asm',
'./config/archs/VC-WIN32/asm/engines/e_padlock-x86.asm',
],
'openssl_defines_VC-WIN32': [
'DSO_WIN32',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
'OPENSSL_BN_ASM_PART_WORDS',
'OPENSSL_IA32_SSE2',
'OPENSSL_BN_ASM_MONT',
'OPENSSL_BN_ASM_GF2m',
'SHA1_ASM',
'SHA256_ASM',
'SHA512_ASM',
'RC4_ASM',
'MD5_ASM',
'RMD160_ASM',
'AES_ASM',
'VPAES_ASM',
'WHIRLPOOL_ASM',
'GHASH_ASM',
'ECP_NISTZ256_ASM',
'PADLOCK_ASM',
'POLY1305_ASM',
],
'openssl_cflags_VC-WIN32': [
'-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DUNICODE -D_UNICODE /O2',
],
'openssl_ex_libs_VC-WIN32': [
'ws2_32.lib gdi32.lib advapi32.lib crypt32.lib user32.lib',
],
},
'include_dirs': [
'.',
'./include',
'./crypto',
'./crypto/include/internal',
],
'defines': ['<@(openssl_defines_VC-WIN32)'],
'sources': ['<@(openssl_sources)', '<@(openssl_sources_VC-WIN32)'],
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,12 @@
/* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
#define CFLAGS cflags
/*
* Generate CFLAGS as an array of individual characters. This is a
* workaround for the situation where CFLAGS gets too long for a C90 string
* literal
*/
static const char cflags[] = {
'c','o','m','p','i','l','e','r',':',' ','c','c','\0'
};
#define PLATFORM "platform: "
#define DATE "built on: Tue Apr 3 00:39:00 2018"
@@ -0,0 +1,28 @@
/* WARNING: do not edit! */
/* Generated by makefile from crypto/include/internal/bn_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_BN_CONF_H
# define HEADER_BN_CONF_H
/*
* The contents of this file are not used in the UEFI build, as
* both 32-bit and 64-bit builds are supported from a single run
* of the Configure script.
*/
/* Should we define BN_DIV2W here? */
/* Only one for the following should be defined */
#undef SIXTY_FOUR_BIT_LONG
#undef SIXTY_FOUR_BIT
#define THIRTY_TWO_BIT
#endif
@@ -0,0 +1,16 @@
/* WARNING: do not edit! */
/* Generated by makefile from crypto/include/internal/dso_conf.h.in */
/*
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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 HEADER_DSO_CONF_H
# define HEADER_DSO_CONF_H
# define DSO_EXTENSION ""
#endif
@@ -0,0 +1,181 @@
/*
* WARNING: do not edit!
* Generated by makefile from include/openssl/opensslconf.h.in
*
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
#ifdef __cplusplus
extern "C" {
#endif
#ifdef OPENSSL_ALGORITHM_DEFINES
# error OPENSSL_ALGORITHM_DEFINES no longer supported
#endif
/*
* OpenSSL was configured with the following options:
*/
#ifndef OPENSSL_SYS_WIN32
# define OPENSSL_SYS_WIN32 1
#endif
#ifndef OPENSSL_NO_COMP
# define OPENSSL_NO_COMP
#endif
#ifndef OPENSSL_NO_MD2
# define OPENSSL_NO_MD2
#endif
#ifndef OPENSSL_NO_RC5
# define OPENSSL_NO_RC5
#endif
#ifndef OPENSSL_THREADS
# define OPENSSL_THREADS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
#ifndef OPENSSL_NO_ASAN
# define OPENSSL_NO_ASAN
#endif
#ifndef OPENSSL_NO_ASM
# define OPENSSL_NO_ASM
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG
# define OPENSSL_NO_CRYPTO_MDEBUG
#endif
#ifndef OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
# define OPENSSL_NO_CRYPTO_MDEBUG_BACKTRACE
#endif
#ifndef OPENSSL_NO_EC_NISTP_64_GCC_128
# define OPENSSL_NO_EC_NISTP_64_GCC_128
#endif
#ifndef OPENSSL_NO_EGD
# define OPENSSL_NO_EGD
#endif
#ifndef OPENSSL_NO_FUZZ_AFL
# define OPENSSL_NO_FUZZ_AFL
#endif
#ifndef OPENSSL_NO_FUZZ_LIBFUZZER
# define OPENSSL_NO_FUZZ_LIBFUZZER
#endif
#ifndef OPENSSL_NO_HEARTBEATS
# define OPENSSL_NO_HEARTBEATS
#endif
#ifndef OPENSSL_NO_MSAN
# define OPENSSL_NO_MSAN
#endif
#ifndef OPENSSL_NO_SCTP
# define OPENSSL_NO_SCTP
#endif
#ifndef OPENSSL_NO_SSL_TRACE
# define OPENSSL_NO_SSL_TRACE
#endif
#ifndef OPENSSL_NO_SSL3
# define OPENSSL_NO_SSL3
#endif
#ifndef OPENSSL_NO_SSL3_METHOD
# define OPENSSL_NO_SSL3_METHOD
#endif
#ifndef OPENSSL_NO_UBSAN
# define OPENSSL_NO_UBSAN
#endif
#ifndef OPENSSL_NO_UNIT_TEST
# define OPENSSL_NO_UNIT_TEST
#endif
#ifndef OPENSSL_NO_WEAK_SSL_CIPHERS
# define OPENSSL_NO_WEAK_SSL_CIPHERS
#endif
#ifndef OPENSSL_NO_AFALGENG
# define OPENSSL_NO_AFALGENG
#endif
/*
* Sometimes OPENSSSL_NO_xxx ends up with an empty file and some compilers
* don't like that. This will hopefully silence them.
*/
#define NON_EMPTY_TRANSLATION_UNIT static void *dummy = &dummy;
/*
* Applications should use -DOPENSSL_API_COMPAT=<version> to suppress the
* declarations of functions deprecated in or before <version>. Otherwise, they
* still won't see them if the library has been built to disable deprecated
* functions.
*/
#if defined(OPENSSL_NO_DEPRECATED)
# define DECLARE_DEPRECATED(f)
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0)
# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated));
#else
# define DECLARE_DEPRECATED(f) f;
#endif
#ifndef OPENSSL_FILE
# ifdef OPENSSL_NO_FILENAMES
# define OPENSSL_FILE ""
# define OPENSSL_LINE 0
# else
# define OPENSSL_FILE __FILE__
# define OPENSSL_LINE __LINE__
# endif
#endif
#ifndef OPENSSL_MIN_API
# define OPENSSL_MIN_API 0
#endif
#if !defined(OPENSSL_API_COMPAT) || OPENSSL_API_COMPAT < OPENSSL_MIN_API
# undef OPENSSL_API_COMPAT
# define OPENSSL_API_COMPAT OPENSSL_MIN_API
#endif
#if OPENSSL_API_COMPAT < 0x10100000L
# define DEPRECATEDIN_1_1_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_1_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x10000000L
# define DEPRECATEDIN_1_0_0(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_1_0_0(f)
#endif
#if OPENSSL_API_COMPAT < 0x00908000L
# define DEPRECATEDIN_0_9_8(f) DECLARE_DEPRECATED(f)
#else
# define DEPRECATEDIN_0_9_8(f)
#endif
/* Generate 80386 code? */
#undef I386_ONLY
#undef OPENSSL_UNISTD
#define OPENSSL_UNISTD <unistd.h>
#define OPENSSL_EXPORT_VAR_AS_FUNCTION
/*
* The following are cipher-specific, but are part of the public API.
*/
#if !defined(OPENSSL_SYS_UEFI)
# define BN_LLONG
/* Only one for the following should be defined */
# undef SIXTY_FOUR_BIT_LONG
# undef SIXTY_FOUR_BIT
# define THIRTY_TWO_BIT
#endif
#define RC4_INT unsigned int
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,418 @@
/*
* WARNING: do not edit!
* Generated by apps/progs.pl
*
* Copyright 1995-2018 The OpenSSL Project Authors. All Rights Reserved.
*
* Licensed under the OpenSSL license (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
*/
typedef enum FUNC_TYPE {
FT_none, FT_general, FT_md, FT_cipher, FT_pkey,
FT_md_alg, FT_cipher_alg
} FUNC_TYPE;
typedef struct function_st {
FUNC_TYPE type;
const char *name;
int (*func)(int argc, char *argv[]);
const OPTIONS *help;
} FUNCTION;
DEFINE_LHASH_OF(FUNCTION);
extern int asn1parse_main(int argc, char *argv[]);
extern int ca_main(int argc, char *argv[]);
extern int ciphers_main(int argc, char *argv[]);
extern int cms_main(int argc, char *argv[]);
extern int crl_main(int argc, char *argv[]);
extern int crl2pkcs7_main(int argc, char *argv[]);
extern int dgst_main(int argc, char *argv[]);
extern int dhparam_main(int argc, char *argv[]);
extern int dsa_main(int argc, char *argv[]);
extern int dsaparam_main(int argc, char *argv[]);
extern int ec_main(int argc, char *argv[]);
extern int ecparam_main(int argc, char *argv[]);
extern int enc_main(int argc, char *argv[]);
extern int engine_main(int argc, char *argv[]);
extern int errstr_main(int argc, char *argv[]);
extern int exit_main(int argc, char *argv[]);
extern int gendsa_main(int argc, char *argv[]);
extern int genpkey_main(int argc, char *argv[]);
extern int genrsa_main(int argc, char *argv[]);
extern int help_main(int argc, char *argv[]);
extern int list_main(int argc, char *argv[]);
extern int nseq_main(int argc, char *argv[]);
extern int ocsp_main(int argc, char *argv[]);
extern int passwd_main(int argc, char *argv[]);
extern int pkcs12_main(int argc, char *argv[]);
extern int pkcs7_main(int argc, char *argv[]);
extern int pkcs8_main(int argc, char *argv[]);
extern int pkey_main(int argc, char *argv[]);
extern int pkeyparam_main(int argc, char *argv[]);
extern int pkeyutl_main(int argc, char *argv[]);
extern int prime_main(int argc, char *argv[]);
extern int rand_main(int argc, char *argv[]);
extern int rehash_main(int argc, char *argv[]);
extern int req_main(int argc, char *argv[]);
extern int rsa_main(int argc, char *argv[]);
extern int rsautl_main(int argc, char *argv[]);
extern int s_client_main(int argc, char *argv[]);
extern int s_server_main(int argc, char *argv[]);
extern int s_time_main(int argc, char *argv[]);
extern int sess_id_main(int argc, char *argv[]);
extern int smime_main(int argc, char *argv[]);
extern int speed_main(int argc, char *argv[]);
extern int spkac_main(int argc, char *argv[]);
extern int srp_main(int argc, char *argv[]);
extern int ts_main(int argc, char *argv[]);
extern int verify_main(int argc, char *argv[]);
extern int version_main(int argc, char *argv[]);
extern int x509_main(int argc, char *argv[]);
extern OPTIONS asn1parse_options[];
extern OPTIONS ca_options[];
extern OPTIONS ciphers_options[];
extern OPTIONS cms_options[];
extern OPTIONS crl_options[];
extern OPTIONS crl2pkcs7_options[];
extern OPTIONS dgst_options[];
extern OPTIONS dhparam_options[];
extern OPTIONS dsa_options[];
extern OPTIONS dsaparam_options[];
extern OPTIONS ec_options[];
extern OPTIONS ecparam_options[];
extern OPTIONS enc_options[];
extern OPTIONS engine_options[];
extern OPTIONS errstr_options[];
extern OPTIONS exit_options[];
extern OPTIONS gendsa_options[];
extern OPTIONS genpkey_options[];
extern OPTIONS genrsa_options[];
extern OPTIONS help_options[];
extern OPTIONS list_options[];
extern OPTIONS nseq_options[];
extern OPTIONS ocsp_options[];
extern OPTIONS passwd_options[];
extern OPTIONS pkcs12_options[];
extern OPTIONS pkcs7_options[];
extern OPTIONS pkcs8_options[];
extern OPTIONS pkey_options[];
extern OPTIONS pkeyparam_options[];
extern OPTIONS pkeyutl_options[];
extern OPTIONS prime_options[];
extern OPTIONS rand_options[];
extern OPTIONS rehash_options[];
extern OPTIONS req_options[];
extern OPTIONS rsa_options[];
extern OPTIONS rsautl_options[];
extern OPTIONS s_client_options[];
extern OPTIONS s_server_options[];
extern OPTIONS s_time_options[];
extern OPTIONS sess_id_options[];
extern OPTIONS smime_options[];
extern OPTIONS speed_options[];
extern OPTIONS spkac_options[];
extern OPTIONS srp_options[];
extern OPTIONS ts_options[];
extern OPTIONS verify_options[];
extern OPTIONS version_options[];
extern OPTIONS x509_options[];
#ifdef INCLUDE_FUNCTION_TABLE
static FUNCTION functions[] = {
{ FT_general, "asn1parse", asn1parse_main, asn1parse_options },
{ FT_general, "ca", ca_main, ca_options },
#ifndef OPENSSL_NO_SOCK
{ FT_general, "ciphers", ciphers_main, ciphers_options },
#endif
#ifndef OPENSSL_NO_CMS
{ FT_general, "cms", cms_main, cms_options },
#endif
{ FT_general, "crl", crl_main, crl_options },
{ FT_general, "crl2pkcs7", crl2pkcs7_main, crl2pkcs7_options },
{ FT_general, "dgst", dgst_main, dgst_options },
#ifndef OPENSSL_NO_DH
{ FT_general, "dhparam", dhparam_main, dhparam_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsa", dsa_main, dsa_options },
#endif
#ifndef OPENSSL_NO_DSA
{ FT_general, "dsaparam", dsaparam_main, dsaparam_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ec", ec_main, ec_options },
#endif
#ifndef OPENSSL_NO_EC
{ FT_general, "ecparam", ecparam_main, ecparam_options },
#endif
{ FT_general, "enc", enc_main, enc_options },
#ifndef OPENSSL_NO_ENGINE
{ FT_general, "engine", engine_main, engine_options },
#endif
{ FT_general, "errstr", errstr_main, errstr_options },
{ FT_general, "exit", exit_main, exit_options },
#ifndef OPENSSL_NO_DSA
{ FT_general, "gendsa", gendsa_main, gendsa_options },
#endif
{ FT_general, "genpkey", genpkey_main, genpkey_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "genrsa", genrsa_main, genrsa_options },
#endif
{ FT_general, "help", help_main, help_options },
{ FT_general, "list", list_main, list_options },
{ FT_general, "nseq", nseq_main, nseq_options },
#ifndef OPENSSL_NO_OCSP
{ FT_general, "ocsp", ocsp_main, ocsp_options },
#endif
{ FT_general, "passwd", passwd_main, passwd_options },
#ifndef OPENSSL_NO_DES
{ FT_general, "pkcs12", pkcs12_main, pkcs12_options },
#endif
{ FT_general, "pkcs7", pkcs7_main, pkcs7_options },
{ FT_general, "pkcs8", pkcs8_main, pkcs8_options },
{ FT_general, "pkey", pkey_main, pkey_options },
{ FT_general, "pkeyparam", pkeyparam_main, pkeyparam_options },
{ FT_general, "pkeyutl", pkeyutl_main, pkeyutl_options },
{ FT_general, "prime", prime_main, prime_options },
{ FT_general, "rand", rand_main, rand_options },
{ FT_general, "rehash", rehash_main, rehash_options },
{ FT_general, "req", req_main, req_options },
{ FT_general, "rsa", rsa_main, rsa_options },
#ifndef OPENSSL_NO_RSA
{ FT_general, "rsautl", rsautl_main, rsautl_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_client", s_client_main, s_client_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_server", s_server_main, s_server_options },
#endif
#ifndef OPENSSL_NO_SOCK
{ FT_general, "s_time", s_time_main, s_time_options },
#endif
{ FT_general, "sess_id", sess_id_main, sess_id_options },
{ FT_general, "smime", smime_main, smime_options },
{ FT_general, "speed", speed_main, speed_options },
{ FT_general, "spkac", spkac_main, spkac_options },
#ifndef OPENSSL_NO_SRP
{ FT_general, "srp", srp_main, srp_options },
#endif
#ifndef OPENSSL_NO_TS
{ FT_general, "ts", ts_main, ts_options },
#endif
{ FT_general, "verify", verify_main, verify_options },
{ FT_general, "version", version_main, version_options },
{ FT_general, "x509", x509_main, x509_options },
#ifndef OPENSSL_NO_MD2
{ FT_md, "md2", dgst_main},
#endif
#ifndef OPENSSL_NO_MD4
{ FT_md, "md4", dgst_main},
#endif
{ FT_md, "md5", dgst_main},
#ifndef OPENSSL_NO_GOST
{ FT_md, "gost", dgst_main},
#endif
{ FT_md, "sha1", dgst_main},
{ FT_md, "sha224", dgst_main},
{ FT_md, "sha256", dgst_main},
{ FT_md, "sha384", dgst_main},
{ FT_md, "sha512", dgst_main},
#ifndef OPENSSL_NO_MDC2
{ FT_md, "mdc2", dgst_main},
#endif
#ifndef OPENSSL_NO_RMD160
{ FT_md, "rmd160", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2b512", dgst_main},
#endif
#ifndef OPENSSL_NO_BLAKE2
{ FT_md, "blake2s256", dgst_main},
#endif
{ FT_cipher, "aes-128-cbc", enc_main, enc_options },
{ FT_cipher, "aes-128-ecb", enc_main, enc_options },
{ FT_cipher, "aes-192-cbc", enc_main, enc_options },
{ FT_cipher, "aes-192-ecb", enc_main, enc_options },
{ FT_cipher, "aes-256-cbc", enc_main, enc_options },
{ FT_cipher, "aes-256-ecb", enc_main, enc_options },
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-128-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-192-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAMELLIA
{ FT_cipher, "camellia-256-ecb", enc_main, enc_options },
#endif
{ FT_cipher, "base64", enc_main, enc_options },
#ifdef ZLIB
{ FT_cipher, "zlib", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "desx", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC4
{ FT_cipher, "rc4-40", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_DES
{ FT_cipher, "des-ede3-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_IDEA
{ FT_cipher, "idea-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_SEED
{ FT_cipher, "seed-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-64-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC2
{ FT_cipher, "rc2-40-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_BF
{ FT_cipher, "bf-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast5-ofb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_CAST
{ FT_cipher, "cast-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cbc", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ecb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-cfb", enc_main, enc_options },
#endif
#ifndef OPENSSL_NO_RC5
{ FT_cipher, "rc5-ofb", enc_main, enc_options },
#endif
{ 0, NULL, NULL}
};
#endif
@@ -0,0 +1,77 @@
{
'variables': {
'openssl_defines_VC-WIN32': [
'DSO_WIN32',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
],
'openssl_cflags_VC-WIN32': [
'-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DUNICODE -D_UNICODE /O2',
],
'openssl_ex_libs_VC-WIN32': [
'ws2_32.lib gdi32.lib advapi32.lib crypt32.lib user32.lib',
],
'openssl_cli_srcs_VC-WIN32': [
'openssl/apps/app_rand.c',
'openssl/apps/apps.c',
'openssl/apps/asn1pars.c',
'openssl/apps/ca.c',
'openssl/apps/ciphers.c',
'openssl/apps/cms.c',
'openssl/apps/crl.c',
'openssl/apps/crl2p7.c',
'openssl/apps/dgst.c',
'openssl/apps/dhparam.c',
'openssl/apps/dsa.c',
'openssl/apps/dsaparam.c',
'openssl/apps/ec.c',
'openssl/apps/ecparam.c',
'openssl/apps/enc.c',
'openssl/apps/engine.c',
'openssl/apps/errstr.c',
'openssl/apps/gendsa.c',
'openssl/apps/genpkey.c',
'openssl/apps/genrsa.c',
'openssl/apps/nseq.c',
'openssl/apps/ocsp.c',
'openssl/apps/openssl.c',
'openssl/apps/opt.c',
'openssl/apps/passwd.c',
'openssl/apps/pkcs12.c',
'openssl/apps/pkcs7.c',
'openssl/apps/pkcs8.c',
'openssl/apps/pkey.c',
'openssl/apps/pkeyparam.c',
'openssl/apps/pkeyutl.c',
'openssl/apps/prime.c',
'openssl/apps/rand.c',
'openssl/apps/rehash.c',
'openssl/apps/req.c',
'openssl/apps/rsa.c',
'openssl/apps/rsautl.c',
'openssl/apps/s_cb.c',
'openssl/apps/s_client.c',
'openssl/apps/s_server.c',
'openssl/apps/s_socket.c',
'openssl/apps/s_time.c',
'openssl/apps/sess_id.c',
'openssl/apps/smime.c',
'openssl/apps/speed.c',
'openssl/apps/spkac.c',
'openssl/apps/srp.c',
'openssl/apps/ts.c',
'openssl/apps/verify.c',
'openssl/apps/version.c',
'openssl/apps/win32_init.c',
'openssl/apps/x509.c',
],
},
'defines': ['<@(openssl_defines_VC-WIN32)'],
'include_dirs': [
'./include',
],
'sources': ['<@(openssl_cli_srcs_VC-WIN32)'],
}
+669
View File
@@ -0,0 +1,669 @@
{
'variables': {
'openssl_sources': [
'openssl/ssl/bio_ssl.c',
'openssl/ssl/d1_lib.c',
'openssl/ssl/d1_msg.c',
'openssl/ssl/d1_srtp.c',
'openssl/ssl/methods.c',
'openssl/ssl/pqueue.c',
'openssl/ssl/record/dtls1_bitmap.c',
'openssl/ssl/record/rec_layer_d1.c',
'openssl/ssl/record/rec_layer_s3.c',
'openssl/ssl/record/ssl3_buffer.c',
'openssl/ssl/record/ssl3_record.c',
'openssl/ssl/s3_cbc.c',
'openssl/ssl/s3_enc.c',
'openssl/ssl/s3_lib.c',
'openssl/ssl/s3_msg.c',
'openssl/ssl/ssl_asn1.c',
'openssl/ssl/ssl_cert.c',
'openssl/ssl/ssl_ciph.c',
'openssl/ssl/ssl_conf.c',
'openssl/ssl/ssl_err.c',
'openssl/ssl/ssl_init.c',
'openssl/ssl/ssl_lib.c',
'openssl/ssl/ssl_mcnf.c',
'openssl/ssl/ssl_rsa.c',
'openssl/ssl/ssl_sess.c',
'openssl/ssl/ssl_stat.c',
'openssl/ssl/ssl_txt.c',
'openssl/ssl/ssl_utst.c',
'openssl/ssl/statem/statem.c',
'openssl/ssl/statem/statem_clnt.c',
'openssl/ssl/statem/statem_dtls.c',
'openssl/ssl/statem/statem_lib.c',
'openssl/ssl/statem/statem_srvr.c',
'openssl/ssl/t1_enc.c',
'openssl/ssl/t1_ext.c',
'openssl/ssl/t1_lib.c',
'openssl/ssl/t1_reneg.c',
'openssl/ssl/t1_trce.c',
'openssl/ssl/tls_srp.c',
'openssl/crypto/aes/aes_cbc.c',
'openssl/crypto/aes/aes_cfb.c',
'openssl/crypto/aes/aes_core.c',
'openssl/crypto/aes/aes_ecb.c',
'openssl/crypto/aes/aes_ige.c',
'openssl/crypto/aes/aes_misc.c',
'openssl/crypto/aes/aes_ofb.c',
'openssl/crypto/aes/aes_wrap.c',
'openssl/crypto/asn1/a_bitstr.c',
'openssl/crypto/asn1/a_d2i_fp.c',
'openssl/crypto/asn1/a_digest.c',
'openssl/crypto/asn1/a_dup.c',
'openssl/crypto/asn1/a_gentm.c',
'openssl/crypto/asn1/a_i2d_fp.c',
'openssl/crypto/asn1/a_int.c',
'openssl/crypto/asn1/a_mbstr.c',
'openssl/crypto/asn1/a_object.c',
'openssl/crypto/asn1/a_octet.c',
'openssl/crypto/asn1/a_print.c',
'openssl/crypto/asn1/a_sign.c',
'openssl/crypto/asn1/a_strex.c',
'openssl/crypto/asn1/a_strnid.c',
'openssl/crypto/asn1/a_time.c',
'openssl/crypto/asn1/a_type.c',
'openssl/crypto/asn1/a_utctm.c',
'openssl/crypto/asn1/a_utf8.c',
'openssl/crypto/asn1/a_verify.c',
'openssl/crypto/asn1/ameth_lib.c',
'openssl/crypto/asn1/asn1_err.c',
'openssl/crypto/asn1/asn1_gen.c',
'openssl/crypto/asn1/asn1_lib.c',
'openssl/crypto/asn1/asn1_par.c',
'openssl/crypto/asn1/asn_mime.c',
'openssl/crypto/asn1/asn_moid.c',
'openssl/crypto/asn1/asn_mstbl.c',
'openssl/crypto/asn1/asn_pack.c',
'openssl/crypto/asn1/bio_asn1.c',
'openssl/crypto/asn1/bio_ndef.c',
'openssl/crypto/asn1/d2i_pr.c',
'openssl/crypto/asn1/d2i_pu.c',
'openssl/crypto/asn1/evp_asn1.c',
'openssl/crypto/asn1/f_int.c',
'openssl/crypto/asn1/f_string.c',
'openssl/crypto/asn1/i2d_pr.c',
'openssl/crypto/asn1/i2d_pu.c',
'openssl/crypto/asn1/n_pkey.c',
'openssl/crypto/asn1/nsseq.c',
'openssl/crypto/asn1/p5_pbe.c',
'openssl/crypto/asn1/p5_pbev2.c',
'openssl/crypto/asn1/p5_scrypt.c',
'openssl/crypto/asn1/p8_pkey.c',
'openssl/crypto/asn1/t_bitst.c',
'openssl/crypto/asn1/t_pkey.c',
'openssl/crypto/asn1/t_spki.c',
'openssl/crypto/asn1/tasn_dec.c',
'openssl/crypto/asn1/tasn_enc.c',
'openssl/crypto/asn1/tasn_fre.c',
'openssl/crypto/asn1/tasn_new.c',
'openssl/crypto/asn1/tasn_prn.c',
'openssl/crypto/asn1/tasn_scn.c',
'openssl/crypto/asn1/tasn_typ.c',
'openssl/crypto/asn1/tasn_utl.c',
'openssl/crypto/asn1/x_algor.c',
'openssl/crypto/asn1/x_bignum.c',
'openssl/crypto/asn1/x_info.c',
'openssl/crypto/asn1/x_int64.c',
'openssl/crypto/asn1/x_long.c',
'openssl/crypto/asn1/x_pkey.c',
'openssl/crypto/asn1/x_sig.c',
'openssl/crypto/asn1/x_spki.c',
'openssl/crypto/asn1/x_val.c',
'openssl/crypto/async/arch/async_null.c',
'openssl/crypto/async/arch/async_posix.c',
'openssl/crypto/async/arch/async_win.c',
'openssl/crypto/async/async.c',
'openssl/crypto/async/async_err.c',
'openssl/crypto/async/async_wait.c',
'openssl/crypto/bf/bf_cfb64.c',
'openssl/crypto/bf/bf_ecb.c',
'openssl/crypto/bf/bf_enc.c',
'openssl/crypto/bf/bf_ofb64.c',
'openssl/crypto/bf/bf_skey.c',
'openssl/crypto/bio/b_addr.c',
'openssl/crypto/bio/b_dump.c',
'openssl/crypto/bio/b_print.c',
'openssl/crypto/bio/b_sock.c',
'openssl/crypto/bio/b_sock2.c',
'openssl/crypto/bio/bf_buff.c',
'openssl/crypto/bio/bf_lbuf.c',
'openssl/crypto/bio/bf_nbio.c',
'openssl/crypto/bio/bf_null.c',
'openssl/crypto/bio/bio_cb.c',
'openssl/crypto/bio/bio_err.c',
'openssl/crypto/bio/bio_lib.c',
'openssl/crypto/bio/bio_meth.c',
'openssl/crypto/bio/bss_acpt.c',
'openssl/crypto/bio/bss_bio.c',
'openssl/crypto/bio/bss_conn.c',
'openssl/crypto/bio/bss_dgram.c',
'openssl/crypto/bio/bss_fd.c',
'openssl/crypto/bio/bss_file.c',
'openssl/crypto/bio/bss_log.c',
'openssl/crypto/bio/bss_mem.c',
'openssl/crypto/bio/bss_null.c',
'openssl/crypto/bio/bss_sock.c',
'openssl/crypto/blake2/blake2b.c',
'openssl/crypto/blake2/blake2s.c',
'openssl/crypto/blake2/m_blake2b.c',
'openssl/crypto/blake2/m_blake2s.c',
'openssl/crypto/bn/bn_add.c',
'openssl/crypto/bn/bn_asm.c',
'openssl/crypto/bn/bn_blind.c',
'openssl/crypto/bn/bn_const.c',
'openssl/crypto/bn/bn_ctx.c',
'openssl/crypto/bn/bn_depr.c',
'openssl/crypto/bn/bn_dh.c',
'openssl/crypto/bn/bn_div.c',
'openssl/crypto/bn/bn_err.c',
'openssl/crypto/bn/bn_exp.c',
'openssl/crypto/bn/bn_exp2.c',
'openssl/crypto/bn/bn_gcd.c',
'openssl/crypto/bn/bn_gf2m.c',
'openssl/crypto/bn/bn_intern.c',
'openssl/crypto/bn/bn_kron.c',
'openssl/crypto/bn/bn_lib.c',
'openssl/crypto/bn/bn_mod.c',
'openssl/crypto/bn/bn_mont.c',
'openssl/crypto/bn/bn_mpi.c',
'openssl/crypto/bn/bn_mul.c',
'openssl/crypto/bn/bn_nist.c',
'openssl/crypto/bn/bn_prime.c',
'openssl/crypto/bn/bn_print.c',
'openssl/crypto/bn/bn_rand.c',
'openssl/crypto/bn/bn_recp.c',
'openssl/crypto/bn/bn_shift.c',
'openssl/crypto/bn/bn_sqr.c',
'openssl/crypto/bn/bn_sqrt.c',
'openssl/crypto/bn/bn_srp.c',
'openssl/crypto/bn/bn_word.c',
'openssl/crypto/bn/bn_x931p.c',
'openssl/crypto/buffer/buf_err.c',
'openssl/crypto/buffer/buffer.c',
'openssl/crypto/camellia/camellia.c',
'openssl/crypto/camellia/cmll_cbc.c',
'openssl/crypto/camellia/cmll_cfb.c',
'openssl/crypto/camellia/cmll_ctr.c',
'openssl/crypto/camellia/cmll_ecb.c',
'openssl/crypto/camellia/cmll_misc.c',
'openssl/crypto/camellia/cmll_ofb.c',
'openssl/crypto/cast/c_cfb64.c',
'openssl/crypto/cast/c_ecb.c',
'openssl/crypto/cast/c_enc.c',
'openssl/crypto/cast/c_ofb64.c',
'openssl/crypto/cast/c_skey.c',
'openssl/crypto/chacha/chacha_enc.c',
'openssl/crypto/cmac/cm_ameth.c',
'openssl/crypto/cmac/cm_pmeth.c',
'openssl/crypto/cmac/cmac.c',
'openssl/crypto/cms/cms_asn1.c',
'openssl/crypto/cms/cms_att.c',
'openssl/crypto/cms/cms_cd.c',
'openssl/crypto/cms/cms_dd.c',
'openssl/crypto/cms/cms_enc.c',
'openssl/crypto/cms/cms_env.c',
'openssl/crypto/cms/cms_err.c',
'openssl/crypto/cms/cms_ess.c',
'openssl/crypto/cms/cms_io.c',
'openssl/crypto/cms/cms_kari.c',
'openssl/crypto/cms/cms_lib.c',
'openssl/crypto/cms/cms_pwri.c',
'openssl/crypto/cms/cms_sd.c',
'openssl/crypto/cms/cms_smime.c',
'openssl/crypto/conf/conf_api.c',
'openssl/crypto/conf/conf_def.c',
'openssl/crypto/conf/conf_err.c',
'openssl/crypto/conf/conf_lib.c',
'openssl/crypto/conf/conf_mall.c',
'openssl/crypto/conf/conf_mod.c',
'openssl/crypto/conf/conf_sap.c',
'openssl/crypto/cpt_err.c',
'openssl/crypto/cryptlib.c',
'openssl/crypto/ct/ct_b64.c',
'openssl/crypto/ct/ct_err.c',
'openssl/crypto/ct/ct_log.c',
'openssl/crypto/ct/ct_oct.c',
'openssl/crypto/ct/ct_policy.c',
'openssl/crypto/ct/ct_prn.c',
'openssl/crypto/ct/ct_sct.c',
'openssl/crypto/ct/ct_sct_ctx.c',
'openssl/crypto/ct/ct_vfy.c',
'openssl/crypto/ct/ct_x509v3.c',
'openssl/crypto/cversion.c',
'openssl/crypto/des/cbc_cksm.c',
'openssl/crypto/des/cbc_enc.c',
'openssl/crypto/des/cfb64ede.c',
'openssl/crypto/des/cfb64enc.c',
'openssl/crypto/des/cfb_enc.c',
'openssl/crypto/des/des_enc.c',
'openssl/crypto/des/ecb3_enc.c',
'openssl/crypto/des/ecb_enc.c',
'openssl/crypto/des/fcrypt.c',
'openssl/crypto/des/fcrypt_b.c',
'openssl/crypto/des/ofb64ede.c',
'openssl/crypto/des/ofb64enc.c',
'openssl/crypto/des/ofb_enc.c',
'openssl/crypto/des/pcbc_enc.c',
'openssl/crypto/des/qud_cksm.c',
'openssl/crypto/des/rand_key.c',
'openssl/crypto/des/rpc_enc.c',
'openssl/crypto/des/set_key.c',
'openssl/crypto/des/str2key.c',
'openssl/crypto/des/xcbc_enc.c',
'openssl/crypto/dh/dh_ameth.c',
'openssl/crypto/dh/dh_asn1.c',
'openssl/crypto/dh/dh_check.c',
'openssl/crypto/dh/dh_depr.c',
'openssl/crypto/dh/dh_err.c',
'openssl/crypto/dh/dh_gen.c',
'openssl/crypto/dh/dh_kdf.c',
'openssl/crypto/dh/dh_key.c',
'openssl/crypto/dh/dh_lib.c',
'openssl/crypto/dh/dh_meth.c',
'openssl/crypto/dh/dh_pmeth.c',
'openssl/crypto/dh/dh_prn.c',
'openssl/crypto/dh/dh_rfc5114.c',
'openssl/crypto/dsa/dsa_ameth.c',
'openssl/crypto/dsa/dsa_asn1.c',
'openssl/crypto/dsa/dsa_depr.c',
'openssl/crypto/dsa/dsa_err.c',
'openssl/crypto/dsa/dsa_gen.c',
'openssl/crypto/dsa/dsa_key.c',
'openssl/crypto/dsa/dsa_lib.c',
'openssl/crypto/dsa/dsa_meth.c',
'openssl/crypto/dsa/dsa_ossl.c',
'openssl/crypto/dsa/dsa_pmeth.c',
'openssl/crypto/dsa/dsa_prn.c',
'openssl/crypto/dsa/dsa_sign.c',
'openssl/crypto/dsa/dsa_vrf.c',
'openssl/crypto/dso/dso_dl.c',
'openssl/crypto/dso/dso_dlfcn.c',
'openssl/crypto/dso/dso_err.c',
'openssl/crypto/dso/dso_lib.c',
'openssl/crypto/dso/dso_openssl.c',
'openssl/crypto/dso/dso_vms.c',
'openssl/crypto/dso/dso_win32.c',
'openssl/crypto/ebcdic.c',
'openssl/crypto/ec/curve25519.c',
'openssl/crypto/ec/ec2_mult.c',
'openssl/crypto/ec/ec2_oct.c',
'openssl/crypto/ec/ec2_smpl.c',
'openssl/crypto/ec/ec_ameth.c',
'openssl/crypto/ec/ec_asn1.c',
'openssl/crypto/ec/ec_check.c',
'openssl/crypto/ec/ec_curve.c',
'openssl/crypto/ec/ec_cvt.c',
'openssl/crypto/ec/ec_err.c',
'openssl/crypto/ec/ec_key.c',
'openssl/crypto/ec/ec_kmeth.c',
'openssl/crypto/ec/ec_lib.c',
'openssl/crypto/ec/ec_mult.c',
'openssl/crypto/ec/ec_oct.c',
'openssl/crypto/ec/ec_pmeth.c',
'openssl/crypto/ec/ec_print.c',
'openssl/crypto/ec/ecdh_kdf.c',
'openssl/crypto/ec/ecdh_ossl.c',
'openssl/crypto/ec/ecdsa_ossl.c',
'openssl/crypto/ec/ecdsa_sign.c',
'openssl/crypto/ec/ecdsa_vrf.c',
'openssl/crypto/ec/eck_prn.c',
'openssl/crypto/ec/ecp_mont.c',
'openssl/crypto/ec/ecp_nist.c',
'openssl/crypto/ec/ecp_nistp224.c',
'openssl/crypto/ec/ecp_nistp256.c',
'openssl/crypto/ec/ecp_nistp521.c',
'openssl/crypto/ec/ecp_nistputil.c',
'openssl/crypto/ec/ecp_oct.c',
'openssl/crypto/ec/ecp_smpl.c',
'openssl/crypto/ec/ecx_meth.c',
'openssl/crypto/engine/eng_all.c',
'openssl/crypto/engine/eng_cnf.c',
'openssl/crypto/engine/eng_cryptodev.c',
'openssl/crypto/engine/eng_ctrl.c',
'openssl/crypto/engine/eng_dyn.c',
'openssl/crypto/engine/eng_err.c',
'openssl/crypto/engine/eng_fat.c',
'openssl/crypto/engine/eng_init.c',
'openssl/crypto/engine/eng_lib.c',
'openssl/crypto/engine/eng_list.c',
'openssl/crypto/engine/eng_openssl.c',
'openssl/crypto/engine/eng_pkey.c',
'openssl/crypto/engine/eng_rdrand.c',
'openssl/crypto/engine/eng_table.c',
'openssl/crypto/engine/tb_asnmth.c',
'openssl/crypto/engine/tb_cipher.c',
'openssl/crypto/engine/tb_dh.c',
'openssl/crypto/engine/tb_digest.c',
'openssl/crypto/engine/tb_dsa.c',
'openssl/crypto/engine/tb_eckey.c',
'openssl/crypto/engine/tb_pkmeth.c',
'openssl/crypto/engine/tb_rand.c',
'openssl/crypto/engine/tb_rsa.c',
'openssl/crypto/err/err.c',
'openssl/crypto/err/err_all.c',
'openssl/crypto/err/err_prn.c',
'openssl/crypto/evp/bio_b64.c',
'openssl/crypto/evp/bio_enc.c',
'openssl/crypto/evp/bio_md.c',
'openssl/crypto/evp/bio_ok.c',
'openssl/crypto/evp/c_allc.c',
'openssl/crypto/evp/c_alld.c',
'openssl/crypto/evp/cmeth_lib.c',
'openssl/crypto/evp/digest.c',
'openssl/crypto/evp/e_aes.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha1.c',
'openssl/crypto/evp/e_aes_cbc_hmac_sha256.c',
'openssl/crypto/evp/e_bf.c',
'openssl/crypto/evp/e_camellia.c',
'openssl/crypto/evp/e_cast.c',
'openssl/crypto/evp/e_chacha20_poly1305.c',
'openssl/crypto/evp/e_des.c',
'openssl/crypto/evp/e_des3.c',
'openssl/crypto/evp/e_idea.c',
'openssl/crypto/evp/e_null.c',
'openssl/crypto/evp/e_old.c',
'openssl/crypto/evp/e_rc2.c',
'openssl/crypto/evp/e_rc4.c',
'openssl/crypto/evp/e_rc4_hmac_md5.c',
'openssl/crypto/evp/e_rc5.c',
'openssl/crypto/evp/e_seed.c',
'openssl/crypto/evp/e_xcbc_d.c',
'openssl/crypto/evp/encode.c',
'openssl/crypto/evp/evp_cnf.c',
'openssl/crypto/evp/evp_enc.c',
'openssl/crypto/evp/evp_err.c',
'openssl/crypto/evp/evp_key.c',
'openssl/crypto/evp/evp_lib.c',
'openssl/crypto/evp/evp_pbe.c',
'openssl/crypto/evp/evp_pkey.c',
'openssl/crypto/evp/m_md2.c',
'openssl/crypto/evp/m_md4.c',
'openssl/crypto/evp/m_md5.c',
'openssl/crypto/evp/m_md5_sha1.c',
'openssl/crypto/evp/m_mdc2.c',
'openssl/crypto/evp/m_null.c',
'openssl/crypto/evp/m_ripemd.c',
'openssl/crypto/evp/m_sha1.c',
'openssl/crypto/evp/m_sigver.c',
'openssl/crypto/evp/m_wp.c',
'openssl/crypto/evp/names.c',
'openssl/crypto/evp/p5_crpt.c',
'openssl/crypto/evp/p5_crpt2.c',
'openssl/crypto/evp/p_dec.c',
'openssl/crypto/evp/p_enc.c',
'openssl/crypto/evp/p_lib.c',
'openssl/crypto/evp/p_open.c',
'openssl/crypto/evp/p_seal.c',
'openssl/crypto/evp/p_sign.c',
'openssl/crypto/evp/p_verify.c',
'openssl/crypto/evp/pmeth_fn.c',
'openssl/crypto/evp/pmeth_gn.c',
'openssl/crypto/evp/pmeth_lib.c',
'openssl/crypto/evp/scrypt.c',
'openssl/crypto/ex_data.c',
'openssl/crypto/hmac/hm_ameth.c',
'openssl/crypto/hmac/hm_pmeth.c',
'openssl/crypto/hmac/hmac.c',
'openssl/crypto/idea/i_cbc.c',
'openssl/crypto/idea/i_cfb64.c',
'openssl/crypto/idea/i_ecb.c',
'openssl/crypto/idea/i_ofb64.c',
'openssl/crypto/idea/i_skey.c',
'openssl/crypto/init.c',
'openssl/crypto/kdf/hkdf.c',
'openssl/crypto/kdf/kdf_err.c',
'openssl/crypto/kdf/tls1_prf.c',
'openssl/crypto/lhash/lh_stats.c',
'openssl/crypto/lhash/lhash.c',
'openssl/crypto/md4/md4_dgst.c',
'openssl/crypto/md4/md4_one.c',
'openssl/crypto/md5/md5_dgst.c',
'openssl/crypto/md5/md5_one.c',
'openssl/crypto/mdc2/mdc2_one.c',
'openssl/crypto/mdc2/mdc2dgst.c',
'openssl/crypto/mem.c',
'openssl/crypto/mem_clr.c',
'openssl/crypto/mem_dbg.c',
'openssl/crypto/mem_sec.c',
'openssl/crypto/modes/cbc128.c',
'openssl/crypto/modes/ccm128.c',
'openssl/crypto/modes/cfb128.c',
'openssl/crypto/modes/ctr128.c',
'openssl/crypto/modes/cts128.c',
'openssl/crypto/modes/gcm128.c',
'openssl/crypto/modes/ocb128.c',
'openssl/crypto/modes/ofb128.c',
'openssl/crypto/modes/wrap128.c',
'openssl/crypto/modes/xts128.c',
'openssl/crypto/o_dir.c',
'openssl/crypto/o_fips.c',
'openssl/crypto/o_fopen.c',
'openssl/crypto/o_init.c',
'openssl/crypto/o_str.c',
'openssl/crypto/o_time.c',
'openssl/crypto/objects/o_names.c',
'openssl/crypto/objects/obj_dat.c',
'openssl/crypto/objects/obj_err.c',
'openssl/crypto/objects/obj_lib.c',
'openssl/crypto/objects/obj_xref.c',
'openssl/crypto/ocsp/ocsp_asn.c',
'openssl/crypto/ocsp/ocsp_cl.c',
'openssl/crypto/ocsp/ocsp_err.c',
'openssl/crypto/ocsp/ocsp_ext.c',
'openssl/crypto/ocsp/ocsp_ht.c',
'openssl/crypto/ocsp/ocsp_lib.c',
'openssl/crypto/ocsp/ocsp_prn.c',
'openssl/crypto/ocsp/ocsp_srv.c',
'openssl/crypto/ocsp/ocsp_vfy.c',
'openssl/crypto/ocsp/v3_ocsp.c',
'openssl/crypto/pem/pem_all.c',
'openssl/crypto/pem/pem_err.c',
'openssl/crypto/pem/pem_info.c',
'openssl/crypto/pem/pem_lib.c',
'openssl/crypto/pem/pem_oth.c',
'openssl/crypto/pem/pem_pk8.c',
'openssl/crypto/pem/pem_pkey.c',
'openssl/crypto/pem/pem_sign.c',
'openssl/crypto/pem/pem_x509.c',
'openssl/crypto/pem/pem_xaux.c',
'openssl/crypto/pem/pvkfmt.c',
'openssl/crypto/pkcs12/p12_add.c',
'openssl/crypto/pkcs12/p12_asn.c',
'openssl/crypto/pkcs12/p12_attr.c',
'openssl/crypto/pkcs12/p12_crpt.c',
'openssl/crypto/pkcs12/p12_crt.c',
'openssl/crypto/pkcs12/p12_decr.c',
'openssl/crypto/pkcs12/p12_init.c',
'openssl/crypto/pkcs12/p12_key.c',
'openssl/crypto/pkcs12/p12_kiss.c',
'openssl/crypto/pkcs12/p12_mutl.c',
'openssl/crypto/pkcs12/p12_npas.c',
'openssl/crypto/pkcs12/p12_p8d.c',
'openssl/crypto/pkcs12/p12_p8e.c',
'openssl/crypto/pkcs12/p12_sbag.c',
'openssl/crypto/pkcs12/p12_utl.c',
'openssl/crypto/pkcs12/pk12err.c',
'openssl/crypto/pkcs7/bio_pk7.c',
'openssl/crypto/pkcs7/pk7_asn1.c',
'openssl/crypto/pkcs7/pk7_attr.c',
'openssl/crypto/pkcs7/pk7_doit.c',
'openssl/crypto/pkcs7/pk7_lib.c',
'openssl/crypto/pkcs7/pk7_mime.c',
'openssl/crypto/pkcs7/pk7_smime.c',
'openssl/crypto/pkcs7/pkcs7err.c',
'openssl/crypto/poly1305/poly1305.c',
'openssl/crypto/rand/md_rand.c',
'openssl/crypto/rand/rand_egd.c',
'openssl/crypto/rand/rand_err.c',
'openssl/crypto/rand/rand_lib.c',
'openssl/crypto/rand/rand_unix.c',
'openssl/crypto/rand/rand_vms.c',
'openssl/crypto/rand/rand_win.c',
'openssl/crypto/rand/randfile.c',
'openssl/crypto/rc2/rc2_cbc.c',
'openssl/crypto/rc2/rc2_ecb.c',
'openssl/crypto/rc2/rc2_skey.c',
'openssl/crypto/rc2/rc2cfb64.c',
'openssl/crypto/rc2/rc2ofb64.c',
'openssl/crypto/rc4/rc4_enc.c',
'openssl/crypto/rc4/rc4_skey.c',
'openssl/crypto/ripemd/rmd_dgst.c',
'openssl/crypto/ripemd/rmd_one.c',
'openssl/crypto/rsa/rsa_ameth.c',
'openssl/crypto/rsa/rsa_asn1.c',
'openssl/crypto/rsa/rsa_chk.c',
'openssl/crypto/rsa/rsa_crpt.c',
'openssl/crypto/rsa/rsa_depr.c',
'openssl/crypto/rsa/rsa_err.c',
'openssl/crypto/rsa/rsa_gen.c',
'openssl/crypto/rsa/rsa_lib.c',
'openssl/crypto/rsa/rsa_meth.c',
'openssl/crypto/rsa/rsa_none.c',
'openssl/crypto/rsa/rsa_null.c',
'openssl/crypto/rsa/rsa_oaep.c',
'openssl/crypto/rsa/rsa_ossl.c',
'openssl/crypto/rsa/rsa_pk1.c',
'openssl/crypto/rsa/rsa_pmeth.c',
'openssl/crypto/rsa/rsa_prn.c',
'openssl/crypto/rsa/rsa_pss.c',
'openssl/crypto/rsa/rsa_saos.c',
'openssl/crypto/rsa/rsa_sign.c',
'openssl/crypto/rsa/rsa_ssl.c',
'openssl/crypto/rsa/rsa_x931.c',
'openssl/crypto/rsa/rsa_x931g.c',
'openssl/crypto/seed/seed.c',
'openssl/crypto/seed/seed_cbc.c',
'openssl/crypto/seed/seed_cfb.c',
'openssl/crypto/seed/seed_ecb.c',
'openssl/crypto/seed/seed_ofb.c',
'openssl/crypto/sha/sha1_one.c',
'openssl/crypto/sha/sha1dgst.c',
'openssl/crypto/sha/sha256.c',
'openssl/crypto/sha/sha512.c',
'openssl/crypto/srp/srp_lib.c',
'openssl/crypto/srp/srp_vfy.c',
'openssl/crypto/stack/stack.c',
'openssl/crypto/threads_none.c',
'openssl/crypto/threads_pthread.c',
'openssl/crypto/threads_win.c',
'openssl/crypto/ts/ts_asn1.c',
'openssl/crypto/ts/ts_conf.c',
'openssl/crypto/ts/ts_err.c',
'openssl/crypto/ts/ts_lib.c',
'openssl/crypto/ts/ts_req_print.c',
'openssl/crypto/ts/ts_req_utils.c',
'openssl/crypto/ts/ts_rsp_print.c',
'openssl/crypto/ts/ts_rsp_sign.c',
'openssl/crypto/ts/ts_rsp_utils.c',
'openssl/crypto/ts/ts_rsp_verify.c',
'openssl/crypto/ts/ts_verify_ctx.c',
'openssl/crypto/txt_db/txt_db.c',
'openssl/crypto/ui/ui_err.c',
'openssl/crypto/ui/ui_lib.c',
'openssl/crypto/ui/ui_openssl.c',
'openssl/crypto/ui/ui_util.c',
'openssl/crypto/uid.c',
'openssl/crypto/whrlpool/wp_block.c',
'openssl/crypto/whrlpool/wp_dgst.c',
'openssl/crypto/x509/by_dir.c',
'openssl/crypto/x509/by_file.c',
'openssl/crypto/x509/t_crl.c',
'openssl/crypto/x509/t_req.c',
'openssl/crypto/x509/t_x509.c',
'openssl/crypto/x509/x509_att.c',
'openssl/crypto/x509/x509_cmp.c',
'openssl/crypto/x509/x509_d2.c',
'openssl/crypto/x509/x509_def.c',
'openssl/crypto/x509/x509_err.c',
'openssl/crypto/x509/x509_ext.c',
'openssl/crypto/x509/x509_lu.c',
'openssl/crypto/x509/x509_obj.c',
'openssl/crypto/x509/x509_r2x.c',
'openssl/crypto/x509/x509_req.c',
'openssl/crypto/x509/x509_set.c',
'openssl/crypto/x509/x509_trs.c',
'openssl/crypto/x509/x509_txt.c',
'openssl/crypto/x509/x509_v3.c',
'openssl/crypto/x509/x509_vfy.c',
'openssl/crypto/x509/x509_vpm.c',
'openssl/crypto/x509/x509cset.c',
'openssl/crypto/x509/x509name.c',
'openssl/crypto/x509/x509rset.c',
'openssl/crypto/x509/x509spki.c',
'openssl/crypto/x509/x509type.c',
'openssl/crypto/x509/x_all.c',
'openssl/crypto/x509/x_attrib.c',
'openssl/crypto/x509/x_crl.c',
'openssl/crypto/x509/x_exten.c',
'openssl/crypto/x509/x_name.c',
'openssl/crypto/x509/x_pubkey.c',
'openssl/crypto/x509/x_req.c',
'openssl/crypto/x509/x_x509.c',
'openssl/crypto/x509/x_x509a.c',
'openssl/crypto/x509v3/pcy_cache.c',
'openssl/crypto/x509v3/pcy_data.c',
'openssl/crypto/x509v3/pcy_lib.c',
'openssl/crypto/x509v3/pcy_map.c',
'openssl/crypto/x509v3/pcy_node.c',
'openssl/crypto/x509v3/pcy_tree.c',
'openssl/crypto/x509v3/v3_addr.c',
'openssl/crypto/x509v3/v3_akey.c',
'openssl/crypto/x509v3/v3_akeya.c',
'openssl/crypto/x509v3/v3_alt.c',
'openssl/crypto/x509v3/v3_asid.c',
'openssl/crypto/x509v3/v3_bcons.c',
'openssl/crypto/x509v3/v3_bitst.c',
'openssl/crypto/x509v3/v3_conf.c',
'openssl/crypto/x509v3/v3_cpols.c',
'openssl/crypto/x509v3/v3_crld.c',
'openssl/crypto/x509v3/v3_enum.c',
'openssl/crypto/x509v3/v3_extku.c',
'openssl/crypto/x509v3/v3_genn.c',
'openssl/crypto/x509v3/v3_ia5.c',
'openssl/crypto/x509v3/v3_info.c',
'openssl/crypto/x509v3/v3_int.c',
'openssl/crypto/x509v3/v3_lib.c',
'openssl/crypto/x509v3/v3_ncons.c',
'openssl/crypto/x509v3/v3_pci.c',
'openssl/crypto/x509v3/v3_pcia.c',
'openssl/crypto/x509v3/v3_pcons.c',
'openssl/crypto/x509v3/v3_pku.c',
'openssl/crypto/x509v3/v3_pmaps.c',
'openssl/crypto/x509v3/v3_prn.c',
'openssl/crypto/x509v3/v3_purp.c',
'openssl/crypto/x509v3/v3_skey.c',
'openssl/crypto/x509v3/v3_sxnet.c',
'openssl/crypto/x509v3/v3_tlsf.c',
'openssl/crypto/x509v3/v3_utl.c',
'openssl/crypto/x509v3/v3err.c',
'openssl/engines/e_capi.c',
'openssl/engines/e_padlock.c',
],
'openssl_sources_VC-WIN32': [
],
'openssl_defines_VC-WIN32': [
'DSO_WIN32',
'NDEBUG',
'OPENSSL_THREADS',
'OPENSSL_NO_DYNAMIC_ENGINE',
'OPENSSL_PIC',
],
'openssl_cflags_VC-WIN32': [
'-W3 -wd4090 -Gs0 -GF -Gy -nologo -DOPENSSL_SYS_WIN32 -DWIN32_LEAN_AND_MEAN -DL_ENDIAN -D_CRT_SECURE_NO_DEPRECATE -DUNICODE -D_UNICODE /O2',
],
'openssl_ex_libs_VC-WIN32': [
'ws2_32.lib gdi32.lib advapi32.lib crypt32.lib user32.lib',
],
},
'include_dirs': [
'.',
'./include',
'./crypto',
'./crypto/include/internal',
],
'defines': ['<@(openssl_defines_VC-WIN32)'],
'sources': ['<@(openssl_sources)', '<@(openssl_sources_VC-WIN32)'],
}
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
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
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
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,398 @@
default rel
%define XMMWORD
%define YMMWORD
%define ZMMWORD
section .text code align=64
ALIGN 16
_mul_1x1:
sub rsp,128+8
mov r9,-1
lea rsi,[rax*1+rax]
shr r9,3
lea rdi,[rax*4]
and r9,rax
lea r12,[rax*8]
sar rax,63
lea r10,[r9*1+r9]
sar rsi,63
lea r11,[r9*4]
and rax,rbp
sar rdi,63
mov rdx,rax
shl rax,63
and rsi,rbp
shr rdx,1
mov rcx,rsi
shl rsi,62
and rdi,rbp
shr rcx,2
xor rax,rsi
mov rbx,rdi
shl rdi,61
xor rdx,rcx
shr rbx,3
xor rax,rdi
xor rdx,rbx
mov r13,r9
mov QWORD[rsp],0
xor r13,r10
mov QWORD[8+rsp],r9
mov r14,r11
mov QWORD[16+rsp],r10
xor r14,r12
mov QWORD[24+rsp],r13
xor r9,r11
mov QWORD[32+rsp],r11
xor r10,r11
mov QWORD[40+rsp],r9
xor r13,r11
mov QWORD[48+rsp],r10
xor r9,r14
mov QWORD[56+rsp],r13
xor r10,r14
mov QWORD[64+rsp],r12
xor r13,r14
mov QWORD[72+rsp],r9
xor r9,r11
mov QWORD[80+rsp],r10
xor r10,r11
mov QWORD[88+rsp],r13
xor r13,r11
mov QWORD[96+rsp],r14
mov rsi,r8
mov QWORD[104+rsp],r9
and rsi,rbp
mov QWORD[112+rsp],r10
shr rbp,4
mov QWORD[120+rsp],r13
mov rdi,r8
and rdi,rbp
shr rbp,4
movq xmm0,QWORD[rsi*8+rsp]
mov rsi,r8
and rsi,rbp
shr rbp,4
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,4
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,60
xor rax,rcx
pslldq xmm1,1
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,12
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,52
xor rax,rcx
pslldq xmm1,2
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,20
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,44
xor rax,rcx
pslldq xmm1,3
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,28
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,36
xor rax,rcx
pslldq xmm1,4
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,36
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,28
xor rax,rcx
pslldq xmm1,5
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,44
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,20
xor rax,rcx
pslldq xmm1,6
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rdi,r8
mov rbx,rcx
shl rcx,52
and rdi,rbp
movq xmm1,QWORD[rsi*8+rsp]
shr rbx,12
xor rax,rcx
pslldq xmm1,7
mov rsi,r8
shr rbp,4
xor rdx,rbx
and rsi,rbp
shr rbp,4
pxor xmm0,xmm1
mov rcx,QWORD[rdi*8+rsp]
mov rbx,rcx
shl rcx,60
DB 102,72,15,126,198
shr rbx,4
xor rax,rcx
psrldq xmm0,8
xor rdx,rbx
DB 102,72,15,126,199
xor rax,rsi
xor rdx,rdi
add rsp,128+8
DB 0F3h,0C3h ;repret
$L$end_mul_1x1:
EXTERN OPENSSL_ia32cap_P
global bn_GF2m_mul_2x2
ALIGN 16
bn_GF2m_mul_2x2:
mov rax,QWORD[OPENSSL_ia32cap_P]
bt rax,33
jnc NEAR $L$vanilla_mul_2x2
DB 102,72,15,110,194
DB 102,73,15,110,201
DB 102,73,15,110,208
movq xmm3,QWORD[40+rsp]
movdqa xmm4,xmm0
movdqa xmm5,xmm1
DB 102,15,58,68,193,0
pxor xmm4,xmm2
pxor xmm5,xmm3
DB 102,15,58,68,211,0
DB 102,15,58,68,229,0
xorps xmm4,xmm0
xorps xmm4,xmm2
movdqa xmm5,xmm4
pslldq xmm4,8
psrldq xmm5,8
pxor xmm2,xmm4
pxor xmm0,xmm5
movdqu XMMWORD[rcx],xmm2
movdqu XMMWORD[16+rcx],xmm0
DB 0F3h,0C3h ;repret
ALIGN 16
$L$vanilla_mul_2x2:
lea rsp,[((-136))+rsp]
mov r10,QWORD[176+rsp]
mov QWORD[120+rsp],rdi
mov QWORD[128+rsp],rsi
mov QWORD[80+rsp],r14
mov QWORD[88+rsp],r13
mov QWORD[96+rsp],r12
mov QWORD[104+rsp],rbp
mov QWORD[112+rsp],rbx
$L$body_mul_2x2:
mov QWORD[32+rsp],rcx
mov QWORD[40+rsp],rdx
mov QWORD[48+rsp],r8
mov QWORD[56+rsp],r9
mov QWORD[64+rsp],r10
mov r8,0xf
mov rax,rdx
mov rbp,r9
call _mul_1x1
mov QWORD[16+rsp],rax
mov QWORD[24+rsp],rdx
mov rax,QWORD[48+rsp]
mov rbp,QWORD[64+rsp]
call _mul_1x1
mov QWORD[rsp],rax
mov QWORD[8+rsp],rdx
mov rax,QWORD[40+rsp]
mov rbp,QWORD[56+rsp]
xor rax,QWORD[48+rsp]
xor rbp,QWORD[64+rsp]
call _mul_1x1
mov rbx,QWORD[rsp]
mov rcx,QWORD[8+rsp]
mov rdi,QWORD[16+rsp]
mov rsi,QWORD[24+rsp]
mov rbp,QWORD[32+rsp]
xor rax,rdx
xor rdx,rcx
xor rax,rbx
mov QWORD[rbp],rbx
xor rdx,rdi
mov QWORD[24+rbp],rsi
xor rax,rsi
xor rdx,rsi
xor rax,rdx
mov QWORD[16+rbp],rdx
mov QWORD[8+rbp],rax
mov r14,QWORD[80+rsp]
mov r13,QWORD[88+rsp]
mov r12,QWORD[96+rsp]
mov rbp,QWORD[104+rsp]
mov rbx,QWORD[112+rsp]
mov rdi,QWORD[120+rsp]
mov rsi,QWORD[128+rsp]
lea rsp,[136+rsp]
DB 0F3h,0C3h ;repret
$L$end_mul_2x2:
DB 71,70,40,50,94,109,41,32,77,117,108,116,105,112,108,105
DB 99,97,116,105,111,110,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
ALIGN 16
EXTERN __imp_RtlVirtualUnwind
ALIGN 16
se_handler:
push rsi
push rdi
push rbx
push rbp
push r12
push r13
push r14
push r15
pushfq
sub rsp,64
mov rax,QWORD[152+r8]
mov rbx,QWORD[248+r8]
lea r10,[$L$body_mul_2x2]
cmp rbx,r10
jb NEAR $L$in_prologue
mov r14,QWORD[80+rax]
mov r13,QWORD[88+rax]
mov r12,QWORD[96+rax]
mov rbp,QWORD[104+rax]
mov rbx,QWORD[112+rax]
mov rdi,QWORD[120+rax]
mov rsi,QWORD[128+rax]
mov QWORD[144+r8],rbx
mov QWORD[160+r8],rbp
mov QWORD[168+r8],rsi
mov QWORD[176+r8],rdi
mov QWORD[216+r8],r12
mov QWORD[224+r8],r13
mov QWORD[232+r8],r14
$L$in_prologue:
lea rax,[136+rax]
mov QWORD[152+r8],rax
mov rdi,QWORD[40+r9]
mov rsi,r8
mov ecx,154
DD 0xa548f3fc
mov rsi,r9
xor rcx,rcx
mov rdx,QWORD[8+rsi]
mov r8,QWORD[rsi]
mov r9,QWORD[16+rsi]
mov r10,QWORD[40+rsi]
lea r11,[56+rsi]
lea r12,[24+rsi]
mov QWORD[32+rsp],r10
mov QWORD[40+rsp],r11
mov QWORD[48+rsp],r12
mov QWORD[56+rsp],rcx
call QWORD[__imp_RtlVirtualUnwind]
mov eax,1
add rsp,64
popfq
pop r15
pop r14
pop r13
pop r12
pop rbp
pop rbx
pop rdi
pop rsi
DB 0F3h,0C3h ;repret
section .pdata rdata align=4
ALIGN 4
DD _mul_1x1 wrt ..imagebase
DD $L$end_mul_1x1 wrt ..imagebase
DD $L$SEH_info_1x1 wrt ..imagebase
DD $L$vanilla_mul_2x2 wrt ..imagebase
DD $L$end_mul_2x2 wrt ..imagebase
DD $L$SEH_info_2x2 wrt ..imagebase
section .xdata rdata align=8
ALIGN 8
$L$SEH_info_1x1:
DB 0x01,0x07,0x02,0x00
DB 0x07,0x01,0x11,0x00
$L$SEH_info_2x2:
DB 9,0,0,0
DD se_handler wrt ..imagebase
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,12 @@
/* auto-generated by util/mkbuildinf.pl for crypto/cversion.c */
#define CFLAGS cflags
/*
* Generate CFLAGS as an array of individual characters. This is a
* workaround for the situation where CFLAGS gets too long for a C90 string
* literal
*/
static const char cflags[] = {
'c','o','m','p','i','l','e','r',':',' ','c','c','\0'
};
#define PLATFORM "platform: "
#define DATE "built on: Tue Apr 3 00:38:54 2018"
File diff suppressed because it is too large. Load diff
Loaded 100 of 700 files, more files were not shown because too many files have changed in this diff. Show more