diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/configdata.pm b/deps/openssl/config/archs/BSD-x86_64/asm/configdata.pm index 7ebb1a0112d8..91428207085e 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/configdata.pm +++ b/deps/openssl/config/archs/BSD-x86_64/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "BSD-x86_64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1076,6 +1076,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1242,10 +1246,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3992,6 +4008,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6330,6 +6352,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7329,6 +7357,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7501,8 +7533,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7523,10 +7555,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7682,6 +7727,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7722,7 +7768,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8104,6 +8153,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8224,9 +8276,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9255,6 +9316,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10735,6 +10800,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11272,6 +11341,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11642,6 +11712,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12647,6 +12718,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12996,6 +13076,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13004,6 +13092,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aes-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aes-x86_64.s index aa7a1ea1cf9b..488ae6d781ac 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aes-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _x86_64_AES_encrypt,@function .align 16 _x86_64_AES_encrypt: diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-mb-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-mb-x86_64.s index d49379783298..3dcd55d3f59a 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-mb-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s index c7c53e8771e1..ca193ddb9ea4 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha1_enc diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s index 70eed05b00c1..427a1c7d1232 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha256_enc diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-x86_64.s index cd8b00f25983..e18f87c4e60c 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/aesni-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_encrypt .type aesni_encrypt,@function diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/bsaes-x86_64.s index 0fd201167f64..c76c5a8afb47 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/bsaes-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/bsaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/vpaes-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/vpaes-x86_64.s index bf7c2b0b6f6b..d19329894079 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/vpaes-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/aes/vpaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-avx2.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-avx2.s index a2cccde63604..ee619092c9b7 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-avx2.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-avx2.s @@ -1,4 +1,4 @@ -.text +.text .globl rsaz_1024_sqr_avx2 .type rsaz_1024_sqr_avx2,@function diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-x86_64.s index b6797a68498e..795cebe1d743 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/rsaz-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-gf2m.s index f4e5337565bb..a0b78a0565f7 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-gf2m.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-gf2m.s @@ -1,4 +1,4 @@ -.text +.text .type _mul_1x1,@function .align 16 diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont.s index d19d4662b492..3a78cd844090 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont.s @@ -1,4 +1,4 @@ -.text +.text @@ -197,30 +197,30 @@ bn_mul_mont: xorq %r14,%r14 movq (%rsp),%rax - leaq (%rsp),%rsi movq %r9,%r15 - jmp .Lsub + .align 16 .Lsub: sbbq (%rcx,%r14,8),%rax movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax + movq 8(%rsp,%r14,8),%rax leaq 1(%r14),%r14 decq %r15 jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx + movq %r9,(%rsp,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy @@ -574,10 +574,10 @@ bn_mul4x_mont: cmpq %r9,%r14 jb .Louter4x movq 16(%rsp,%r9,8),%rdi + leaq -4(%r9),%r15 movq 0(%rsp),%rax - pxor %xmm0,%xmm0 movq 8(%rsp),%rdx - shrq $2,%r9 + shrq $2,%r15 leaq (%rsp),%rsi xorq %r14,%r14 @@ -585,9 +585,7 @@ bn_mul4x_mont: movq 16(%rsi),%rbx movq 24(%rsi),%rbp sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 + .Lsub4x: movq %rax,0(%rdi,%r14,8) movq %rdx,8(%rdi,%r14,8) @@ -614,34 +612,35 @@ bn_mul4x_mont: sbbq $0,%rax movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) + pxor %xmm0,%xmm0 +.byte 102,72,15,110,224 + pcmpeqd %xmm5,%xmm5 + pshufd $0,%xmm4,%xmm4 + movq %r9,%r15 + pxor %xmm4,%xmm5 + shrq $2,%r15 + xorl %eax,%eax + jmp .Lcopy4x .align 16 .Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 + movdqa (%rsp,%rax,1),%xmm1 + movdqu (%rdi,%rax,1),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax,1),%xmm3 + movdqa %xmm0,(%rsp,%rax,1) + por %xmm2,%xmm1 + movdqu 16(%rdi,%rax,1),%xmm2 + movdqu %xmm1,(%rdi,%rax,1) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax,1) + por %xmm2,%xmm3 + movdqu %xmm3,16(%rdi,%rax,1) + leaq 32(%rax),%rax decq %r15 jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) movq 8(%rsp,%r9,8),%rsi movq $1,%rax movq -48(%rsi),%r15 diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont5.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont5.s index a2fccf088e75..0dd53512f9c9 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont5.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/bn/x86_64-mont5.s @@ -1,4 +1,4 @@ -.text +.text @@ -393,18 +393,19 @@ bn_mul_mont_gather5: jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/buildinf.h b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/buildinf.h index 42960ff4599a..a77851f6c8f3 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/buildinf.h @@ -35,4 +35,4 @@ static const char cflags[] = { 'n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: BSD-x86_64" -#define DATE "built on: Tue Apr 3 00:38:12 2018" +#define DATE "built on: Tue Aug 14 23:13:00 2018" diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/camellia/cmll-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/camellia/cmll-x86_64.s index 1117381f316d..1dead91b1752 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/camellia/cmll-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/camellia/cmll-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl Camellia_EncryptBlock diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/chacha/chacha-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/chacha/chacha-x86_64.s index 044b8f031efa..a9fed05fd7e3 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/chacha/chacha-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/chacha/chacha-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s index ce86d5d969f7..62a7ac611f37 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl ecp_nistz256_precomputed .type ecp_nistz256_precomputed,@object .align 4096 @@ -2372,7 +2372,7 @@ ecp_nistz256_precomputed: .long 0x2a849870,0x4d33dd99,0x41576335,0xa716964b,0x179be0e5,0xff5e3a9b,0x83b13632,0x5b9d6b1b,0xa52f313b,0x3b8bd7d4,0x637a4660,0xc9dd95a0,0x0b3e218f,0x30035962,0xc7b28a3c,0xce1481a3 .long 0x43228d83,0xab41b43a,0x4ad63f99,0x24ae1c30,0x46a51229,0x8e525f1a,0xcd26d2b4,0x14af860f,0x3f714aa1,0xd6baef61,0xeb78795e,0xf51865ad,0xe6a9d694,0xd3e21fce,0x8a37b527,0x82ceb1dd .size ecp_nistz256_precomputed,.-ecp_nistz256_precomputed -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/md5/md5-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/md5/md5-x86_64.s index 0aa90515d6c9..0defe666bb75 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/md5/md5-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/md5/md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl md5_block_asm_data_order diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s index d1a1c895a39b..21e49925f1ae 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _aesni_ctr32_ghash_6x,@function .align 32 diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/ghash-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/ghash-x86_64.s index 10f5987415a1..0116ef1c94c4 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/ghash-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/modes/ghash-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl gcm_gmult_4bit diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/poly1305/poly1305-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/poly1305/poly1305-x86_64.s index 5662696481ed..8b2e361ea1cd 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/poly1305/poly1305-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/poly1305/poly1305-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s index 9c7110f4ef09..aab3c6db13d9 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl rc4_md5_enc diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-x86_64.s index bdd0da3bd138..781b48b9eb44 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/rc4/rc4-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl RC4 diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-mb-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-mb-x86_64.s index d2857f3288bf..d266d776ec66 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-mb-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-x86_64.s index 195a148bb9b2..dbeebed9a0a8 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha1_block_data_order diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-mb-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-mb-x86_64.s index bd72a459ab24..f2896b4d6e33 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-mb-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-x86_64.s index 23b932e1de4a..8264a7dbdf10 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha256_block_data_order diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha512-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha512-x86_64.s index a1021c17a966..6f8488a38a9b 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha512-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/sha/sha512-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha512_block_data_order diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/whrlpool/wp-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/whrlpool/wp-x86_64.s index f83130ea6863..a4d55b6afc34 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/whrlpool/wp-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/whrlpool/wp-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl whirlpool_block .type whirlpool_block,@function diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/x86_64cpuid.s b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/x86_64cpuid.s index 5a109c6fd915..7e1f5e27408c 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/crypto/x86_64cpuid.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/crypto/x86_64cpuid.s @@ -6,7 +6,7 @@ .hidden OPENSSL_ia32cap_P .comm OPENSSL_ia32cap_P,16,4 -.text +.text .globl OPENSSL_atomic_add .type OPENSSL_atomic_add,@function diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/engines/e_padlock-x86_64.s b/deps/openssl/config/archs/BSD-x86_64/asm/engines/e_padlock-x86_64.s index 3e5ab736fd86..38c02c188ee1 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/engines/e_padlock-x86_64.s +++ b/deps/openssl/config/archs/BSD-x86_64/asm/engines/e_padlock-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl padlock_capability .type padlock_capability,@function .align 16 @@ -1020,7 +1020,7 @@ padlock_ctr32_encrypt: .size padlock_ctr32_encrypt,.-padlock_ctr32_encrypt .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,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 -.data +.data .align 8 .Lpadlock_saved_context: .quad 0 diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/BSD-x86_64/asm/include/openssl/opensslconf.h index 9df0f86ed6ed..7dd2101053aa 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/BSD-x86_64/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/BSD-x86_64/asm/openssl.gypi b/deps/openssl/config/archs/BSD-x86_64/asm/openssl.gypi index 5c26facf1166..5d135ede2c2f 100644 --- a/deps/openssl/config/archs/BSD-x86_64/asm/openssl.gypi +++ b/deps/openssl/config/archs/BSD-x86_64/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/BSD-x86_64/no-asm/configdata.pm b/deps/openssl/config/archs/BSD-x86_64/no-asm/configdata.pm index 0815b65b4ce2..85457389c350 100644 --- a/deps/openssl/config/archs/BSD-x86_64/no-asm/configdata.pm +++ b/deps/openssl/config/archs/BSD-x86_64/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "BSD-x86_64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1075,6 +1075,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1241,10 +1245,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3931,6 +3947,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6209,6 +6231,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7196,6 +7224,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7390,10 +7422,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7549,6 +7594,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7589,7 +7635,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7971,6 +8020,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8091,9 +8143,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9082,6 +9143,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10522,6 +10587,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11041,6 +11110,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11401,6 +11471,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12404,6 +12475,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12753,6 +12833,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12761,6 +12849,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/BSD-x86_64/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/BSD-x86_64/no-asm/crypto/buildinf.h index 9bcf65021a97..52f1b831f32f 100644 --- a/deps/openssl/config/archs/BSD-x86_64/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/BSD-x86_64/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { '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" +#define DATE "built on: Tue Aug 14 23:13:04 2018" diff --git a/deps/openssl/config/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h index e20916814d70..7b122bd86ee5 100644 --- a/deps/openssl/config/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/BSD-x86_64/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/BSD-x86_64/no-asm/openssl.gypi b/deps/openssl/config/archs/BSD-x86_64/no-asm/openssl.gypi index f54f6ed68e9f..d603375ad407 100644 --- a/deps/openssl/config/archs/BSD-x86_64/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/BSD-x86_64/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/VC-WIN32/asm/configdata.pm b/deps/openssl/config/archs/VC-WIN32/asm/configdata.pm index 77adc3e250c2..d54567212702 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/configdata.pm +++ b/deps/openssl/config/archs/VC-WIN32/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "VC-WIN32", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1100,6 +1100,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1266,10 +1270,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3974,6 +3990,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6306,6 +6328,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7305,6 +7333,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7499,10 +7531,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7658,6 +7703,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7698,7 +7744,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8037,6 +8086,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8157,9 +8209,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9161,6 +9222,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10637,6 +10702,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11166,6 +11235,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11534,6 +11604,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12539,6 +12610,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12888,6 +12968,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12896,6 +12984,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bf/bf-586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bf/bf-586.asm index 1da1e643bb37..78d5e7375e0f 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bf/bf-586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bf/bf-586.asm @@ -10,7 +10,7 @@ global _BF_encrypt align 16 _BF_encrypt: L$_BF_encrypt_begin: - ; + ; push ebp push ebx mov ebx,DWORD [12+esp] @@ -24,7 +24,7 @@ L$_BF_encrypt_begin: mov ebx,DWORD [ebp] xor ecx,ecx xor edi,ebx - ; + ; ; Round 0 mov edx,DWORD [4+ebp] mov ebx,edi @@ -44,7 +44,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 1 mov edx,DWORD [8+ebp] mov ebx,esi @@ -64,7 +64,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 2 mov edx,DWORD [12+ebp] mov ebx,edi @@ -84,7 +84,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 3 mov edx,DWORD [16+ebp] mov ebx,esi @@ -104,7 +104,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 4 mov edx,DWORD [20+ebp] mov ebx,edi @@ -124,7 +124,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 5 mov edx,DWORD [24+ebp] mov ebx,esi @@ -144,7 +144,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 6 mov edx,DWORD [28+ebp] mov ebx,edi @@ -164,7 +164,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 7 mov edx,DWORD [32+ebp] mov ebx,esi @@ -184,7 +184,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 8 mov edx,DWORD [36+ebp] mov ebx,edi @@ -204,7 +204,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 9 mov edx,DWORD [40+ebp] mov ebx,esi @@ -224,7 +224,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 10 mov edx,DWORD [44+ebp] mov ebx,edi @@ -244,7 +244,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 11 mov edx,DWORD [48+ebp] mov ebx,esi @@ -264,7 +264,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 12 mov edx,DWORD [52+ebp] mov ebx,edi @@ -284,7 +284,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 13 mov edx,DWORD [56+ebp] mov ebx,esi @@ -304,7 +304,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 14 mov edx,DWORD [60+ebp] mov ebx,edi @@ -324,7 +324,7 @@ L$_BF_encrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 15 mov edx,DWORD [64+ebp] mov ebx,esi @@ -358,7 +358,7 @@ global _BF_decrypt align 16 _BF_decrypt: L$_BF_decrypt_begin: - ; + ; push ebp push ebx mov ebx,DWORD [12+esp] @@ -372,7 +372,7 @@ L$_BF_decrypt_begin: mov ebx,DWORD [68+ebp] xor ecx,ecx xor edi,ebx - ; + ; ; Round 16 mov edx,DWORD [64+ebp] mov ebx,edi @@ -392,7 +392,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 15 mov edx,DWORD [60+ebp] mov ebx,esi @@ -412,7 +412,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 14 mov edx,DWORD [56+ebp] mov ebx,edi @@ -432,7 +432,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 13 mov edx,DWORD [52+ebp] mov ebx,esi @@ -452,7 +452,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 12 mov edx,DWORD [48+ebp] mov ebx,edi @@ -472,7 +472,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 11 mov edx,DWORD [44+ebp] mov ebx,esi @@ -492,7 +492,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 10 mov edx,DWORD [40+ebp] mov ebx,edi @@ -512,7 +512,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 9 mov edx,DWORD [36+ebp] mov ebx,esi @@ -532,7 +532,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 8 mov edx,DWORD [32+ebp] mov ebx,edi @@ -552,7 +552,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 7 mov edx,DWORD [28+ebp] mov ebx,esi @@ -572,7 +572,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 6 mov edx,DWORD [24+ebp] mov ebx,edi @@ -592,7 +592,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 5 mov edx,DWORD [20+ebp] mov ebx,esi @@ -612,7 +612,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 4 mov edx,DWORD [16+ebp] mov ebx,edi @@ -632,7 +632,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 3 mov edx,DWORD [12+ebp] mov ebx,esi @@ -652,7 +652,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor edi,ebx - ; + ; ; Round 2 mov edx,DWORD [8+ebp] mov ebx,edi @@ -672,7 +672,7 @@ L$_BF_decrypt_begin: add ebx,edx xor eax,eax xor esi,ebx - ; + ; ; Round 1 mov edx,DWORD [4+ebp] mov ebx,esi @@ -706,7 +706,7 @@ global _BF_cbc_encrypt align 16 _BF_cbc_encrypt: L$_BF_cbc_encrypt_begin: - ; + ; push ebp push ebx push esi diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/bn-586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/bn-586.asm index 8534042b05a9..82002b353bfd 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/bn-586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/bn-586.asm @@ -108,7 +108,7 @@ L$000maw_non_sse2: push ebx push esi push edi - ; + ; xor esi,esi mov edi,DWORD [20+esp] mov ecx,DWORD [28+esp] @@ -191,7 +191,7 @@ L$006maw_loop: adc edx,0 mov DWORD [28+edi],eax mov esi,edx - ; + ; sub ecx,8 lea ebx,[32+ebx] lea edi,[32+edi] @@ -317,7 +317,7 @@ L$009mw_non_sse2: push ebx push esi push edi - ; + ; xor esi,esi mov edi,DWORD [20+esp] mov ebx,DWORD [24+esp] @@ -382,7 +382,7 @@ L$012mw_loop: adc edx,0 mov DWORD [28+edi],eax mov esi,edx - ; + ; add ebx,32 add edi,32 sub ebp,8 @@ -489,7 +489,7 @@ L$015sqr_non_sse2: push ebx push esi push edi - ; + ; mov esi,DWORD [20+esp] mov edi,DWORD [24+esp] mov ebx,DWORD [28+esp] @@ -536,7 +536,7 @@ L$018sw_loop: mul eax mov DWORD [56+esi],eax mov DWORD [60+esi],edx - ; + ; add edi,32 add esi,64 sub ebx,8 @@ -615,7 +615,7 @@ L$_bn_add_words_begin: push ebx push esi push edi - ; + ; mov ebx,DWORD [20+esp] mov esi,DWORD [24+esp] mov edi,DWORD [28+esp] @@ -696,7 +696,7 @@ L$021aw_loop: add ecx,edx adc eax,0 mov DWORD [28+ebx],ecx - ; + ; add esi,32 add edi,32 add ebx,32 @@ -795,7 +795,7 @@ L$_bn_sub_words_begin: push ebx push esi push edi - ; + ; mov ebx,DWORD [20+esp] mov esi,DWORD [24+esp] mov edi,DWORD [28+esp] @@ -876,7 +876,7 @@ L$024aw_loop: sub ecx,edx adc eax,0 mov DWORD [28+ebx],ecx - ; + ; add esi,32 add edi,32 add ebx,32 @@ -975,7 +975,7 @@ L$_bn_sub_part_words_begin: push ebx push esi push edi - ; + ; mov ebx,DWORD [20+esp] mov esi,DWORD [24+esp] mov edi,DWORD [28+esp] @@ -1056,7 +1056,7 @@ L$027aw_loop: sub ecx,edx adc eax,0 mov DWORD [28+ebx],ecx - ; + ; add esi,32 add edi,32 add ebx,32 @@ -1248,7 +1248,7 @@ L$032pw_neg_loop: sub ecx,edx adc eax,0 mov DWORD [28+ebx],ecx - ; + ; add edi,32 add ebx,32 sub ebp,8 @@ -1379,7 +1379,7 @@ L$034pw_pos_loop: sub ecx,eax mov DWORD [28+ebx],ecx jnc NEAR L$042pw_nc7 - ; + ; add esi,32 add ebx,32 sub ebp,8 @@ -1462,7 +1462,7 @@ L$041pw_nc6: mov ecx,DWORD [28+esi] mov DWORD [28+ebx],ecx L$042pw_nc7: - ; + ; add esi,32 add ebx,32 sub ebp,8 diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/x86-mont.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/x86-mont.asm index bf237b633a5f..090630c3a00c 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/x86-mont.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/bn/x86-mont.asm @@ -448,16 +448,18 @@ L$016sub: 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 + mov edx,-1 + xor edx,eax + jmp NEAR L$017copy align 16 L$017copy: - mov eax,DWORD [ebx*4+esi] - mov DWORD [ebx*4+edi],eax + mov esi,DWORD [32+ebx*4+esp] + mov ebp,DWORD [ebx*4+edi] mov DWORD [32+ebx*4+esp],ecx + and esi,eax + and ebp,edx + or ebp,esi + mov DWORD [ebx*4+edi],ebp dec ebx jge NEAR L$017copy mov esp,DWORD [24+esp] diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/buildinf.h b/deps/openssl/config/archs/VC-WIN32/asm/crypto/buildinf.h index 29159b7a1898..74eb547a2951 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/buildinf.h @@ -9,4 +9,4 @@ 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" +#define DATE "built on: Tue Aug 14 23:13:47 2018" diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/crypt586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/crypt586.asm index 912b2b9e90f4..2af8af39d662 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/crypt586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/crypt586.asm @@ -15,7 +15,7 @@ L$_fcrypt_body_begin: push ebx push esi push edi - ; + ; ; Load the 2 words xor edi,edi xor esi,esi @@ -24,7 +24,7 @@ L$_fcrypt_body_begin: mov ebp,DWORD [28+esp] push DWORD 25 L$000start: - ; + ; ; Round 0 mov eax,DWORD [36+esp] mov edx,esi @@ -74,7 +74,7 @@ L$000start: 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 @@ -124,7 +124,7 @@ L$000start: 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 @@ -174,7 +174,7 @@ L$000start: 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 @@ -224,7 +224,7 @@ L$000start: 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 @@ -274,7 +274,7 @@ L$000start: 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 @@ -324,7 +324,7 @@ L$000start: 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 @@ -374,7 +374,7 @@ L$000start: 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 @@ -424,7 +424,7 @@ L$000start: 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 @@ -474,7 +474,7 @@ L$000start: 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 @@ -524,7 +524,7 @@ L$000start: 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 @@ -574,7 +574,7 @@ L$000start: 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 @@ -624,7 +624,7 @@ L$000start: 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 @@ -674,7 +674,7 @@ L$000start: 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 @@ -724,7 +724,7 @@ L$000start: 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 @@ -774,7 +774,7 @@ L$000start: 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 @@ -831,7 +831,7 @@ L$000start: mov esi,eax mov DWORD [esp],ebx jnz NEAR L$000start - ; + ; ; FP mov edx,DWORD [28+esp] ror edi,1 @@ -840,35 +840,35 @@ L$000start: 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 diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/des-586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/des-586.asm index d4a46e16060f..3d6ee2a5e4b3 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/des-586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/des/des-586.asm @@ -951,7 +951,7 @@ _DES_encrypt1: L$_DES_encrypt1_begin: push esi push edi - ; + ; ; Load the 2 words mov esi,DWORD [12+esp] xor ecx,ecx @@ -960,7 +960,7 @@ L$_DES_encrypt1_begin: mov eax,DWORD [esi] mov ebx,DWORD [28+esp] mov edi,DWORD [4+esi] - ; + ; ; IP rol eax,4 mov esi,eax @@ -968,35 +968,35 @@ L$_DES_encrypt1_begin: and eax,0xf0f0f0f0 xor esi,eax xor edi,eax - ; + ; rol edi,20 mov eax,edi xor edi,esi and edi,0xfff0000f xor eax,edi xor esi,edi - ; + ; rol eax,14 mov edi,eax xor eax,esi and eax,0x33333333 xor edi,eax xor esi,eax - ; + ; rol esi,22 mov eax,esi xor esi,edi and esi,0x03fc03fc xor eax,esi xor edi,esi - ; + ; rol eax,9 mov esi,eax xor eax,edi and eax,0xaaaaaaaa xor esi,eax xor edi,eax - ; + ; rol edi,1 call L$000pic_point L$000pic_point: @@ -1010,7 +1010,7 @@ L$000pic_point: L$001decrypt: call __x86_DES_decrypt L$002done: - ; + ; ; FP mov edx,DWORD [20+esp] ror esi,1 @@ -1019,35 +1019,35 @@ L$002done: and edi,0xaaaaaaaa xor eax,edi xor esi,edi - ; + ; rol eax,23 mov edi,eax xor eax,esi and eax,0x03fc03fc xor edi,eax xor esi,eax - ; + ; rol edi,10 mov eax,edi xor edi,esi and edi,0x33333333 xor eax,edi xor esi,edi - ; + ; rol esi,18 mov edi,esi xor esi,eax and esi,0xfff0000f xor edi,esi xor eax,esi - ; + ; rol edi,12 mov esi,edi xor edi,eax and edi,0xf0f0f0f0 xor esi,edi xor eax,edi - ; + ; ror eax,4 mov DWORD [edx],eax mov DWORD [4+edx],esi @@ -1062,7 +1062,7 @@ _DES_encrypt2: L$_DES_encrypt2_begin: push esi push edi - ; + ; ; Load the 2 words mov eax,DWORD [12+esp] xor ecx,ecx @@ -1085,7 +1085,7 @@ L$003pic_point: L$004decrypt: call __x86_DES_decrypt L$005done: - ; + ; ; Fixup ror edi,3 mov eax,DWORD [20+esp] @@ -1106,12 +1106,12 @@ L$_DES_encrypt3_begin: push ebp push esi push edi - ; + ; ; Load the data words mov edi,DWORD [ebx] mov esi,DWORD [4+ebx] sub esp,12 - ; + ; ; IP rol edi,4 mov edx,edi @@ -1119,35 +1119,35 @@ L$_DES_encrypt3_begin: and edi,0xf0f0f0f0 xor edx,edi xor esi,edi - ; + ; rol esi,20 mov edi,esi xor esi,edx and esi,0xfff0000f xor edi,esi xor edx,esi - ; + ; rol edi,14 mov esi,edi xor edi,edx and edi,0x33333333 xor esi,edi xor edx,edi - ; + ; rol edx,22 mov edi,edx xor edx,esi and edx,0x03fc03fc xor edi,edx xor esi,edx - ; + ; rol edi,9 mov edx,edi xor edi,esi and edi,0xaaaaaaaa xor edx,edi xor esi,edi - ; + ; ror edx,3 ror esi,2 mov DWORD [4+ebx],esi @@ -1170,7 +1170,7 @@ L$_DES_encrypt3_begin: add esp,12 mov edi,DWORD [ebx] mov esi,DWORD [4+ebx] - ; + ; ; FP rol esi,2 rol edi,3 @@ -1179,35 +1179,35 @@ L$_DES_encrypt3_begin: and edi,0xaaaaaaaa xor eax,edi xor esi,edi - ; + ; rol eax,23 mov edi,eax xor eax,esi and eax,0x03fc03fc xor edi,eax xor esi,eax - ; + ; rol edi,10 mov eax,edi xor edi,esi and edi,0x33333333 xor eax,edi xor esi,edi - ; + ; rol esi,18 mov edi,esi xor esi,eax and esi,0xfff0000f xor edi,esi xor eax,esi - ; + ; rol edi,12 mov esi,edi xor edi,eax and edi,0xf0f0f0f0 xor esi,edi xor eax,edi - ; + ; ror eax,4 mov DWORD [ebx],eax mov DWORD [4+ebx],esi @@ -1225,12 +1225,12 @@ L$_DES_decrypt3_begin: push ebp push esi push edi - ; + ; ; Load the data words mov edi,DWORD [ebx] mov esi,DWORD [4+ebx] sub esp,12 - ; + ; ; IP rol edi,4 mov edx,edi @@ -1238,35 +1238,35 @@ L$_DES_decrypt3_begin: and edi,0xf0f0f0f0 xor edx,edi xor esi,edi - ; + ; rol esi,20 mov edi,esi xor esi,edx and esi,0xfff0000f xor edi,esi xor edx,esi - ; + ; rol edi,14 mov esi,edi xor edi,edx and edi,0x33333333 xor esi,edi xor edx,edi - ; + ; rol edx,22 mov edi,edx xor edx,esi and edx,0x03fc03fc xor edi,edx xor esi,edx - ; + ; rol edi,9 mov edx,edi xor edi,esi and edi,0xaaaaaaaa xor edx,edi xor esi,edi - ; + ; ror edx,3 ror esi,2 mov DWORD [4+ebx],esi @@ -1289,7 +1289,7 @@ L$_DES_decrypt3_begin: add esp,12 mov edi,DWORD [ebx] mov esi,DWORD [4+ebx] - ; + ; ; FP rol esi,2 rol edi,3 @@ -1298,35 +1298,35 @@ L$_DES_decrypt3_begin: and edi,0xaaaaaaaa xor eax,edi xor esi,edi - ; + ; rol eax,23 mov edi,eax xor eax,esi and eax,0x03fc03fc xor edi,eax xor esi,eax - ; + ; rol edi,10 mov eax,edi xor edi,esi and edi,0x33333333 xor eax,edi xor esi,edi - ; + ; rol esi,18 mov edi,esi xor esi,eax and esi,0xfff0000f xor edi,esi xor eax,esi - ; + ; rol edi,12 mov esi,edi xor edi,eax and edi,0xf0f0f0f0 xor esi,edi xor eax,edi - ; + ; ror eax,4 mov DWORD [ebx],eax mov DWORD [4+ebx],esi @@ -1339,7 +1339,7 @@ global _DES_ncbc_encrypt align 16 _DES_ncbc_encrypt: L$_DES_ncbc_encrypt_begin: - ; + ; push ebp push ebx push esi @@ -1517,7 +1517,7 @@ global _DES_ede3_cbc_encrypt align 16 _DES_ede3_cbc_encrypt: L$_DES_ede3_cbc_encrypt_begin: - ; + ; push ebp push ebx push esi diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/ec/ecp_nistz256-x86.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/ec/ecp_nistz256-x86.asm index 8203213818f3..7383523877ee 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/ec/ecp_nistz256-x86.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/ec/ecp_nistz256-x86.asm @@ -3829,7 +3829,7 @@ L$_ecp_nistz256_scatter_w7_begin: mov edi,DWORD [20+esp] mov esi,DWORD [24+esp] mov ebp,DWORD [28+esp] - lea edi,[ebp*1+edi-1] + lea edi,[ebp*1+edi] mov ebp,16 L$007scatter_w7_loop: mov eax,DWORD [esi] diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/md5/md5-586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/md5/md5-586.asm index efa6b5f8949b..90663d022d71 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/md5/md5-586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/md5/md5-586.asm @@ -26,7 +26,7 @@ L$_md5_block_asm_data_order_begin: mov ecx,DWORD [8+edi] mov edx,DWORD [12+edi] L$000start: - ; + ; ; R0 section mov edi,ecx mov ebp,DWORD [esi] @@ -190,7 +190,7 @@ L$000start: rol ebx,22 mov edi,ecx add ebx,ecx - ; + ; ; R1 section ; R1 16 xor edi,ebx @@ -352,7 +352,7 @@ L$000start: mov edi,ecx rol ebx,20 add ebx,ecx - ; + ; ; R2 section ; R2 32 xor edi,edx @@ -498,7 +498,7 @@ L$000start: mov edi,-1 rol ebx,23 add ebx,ecx - ; + ; ; R3 section ; R3 48 xor edi,edx diff --git a/deps/openssl/config/archs/VC-WIN32/asm/crypto/ripemd/rmd-586.asm b/deps/openssl/config/archs/VC-WIN32/asm/crypto/ripemd/rmd-586.asm index 0a0588884572..a5ab6836728a 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/crypto/ripemd/rmd-586.asm +++ b/deps/openssl/config/archs/VC-WIN32/asm/crypto/ripemd/rmd-586.asm @@ -21,7 +21,7 @@ L$_ripemd160_block_asm_data_order_begin: push ebx sub esp,108 L$000start: - ; + ; mov ebx,DWORD [eax] mov ebp,DWORD [4+eax] mov DWORD [esp],ebx diff --git a/deps/openssl/config/archs/VC-WIN32/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/VC-WIN32/asm/include/openssl/opensslconf.h index 630bb306230e..19c35390f167 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/VC-WIN32/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/VC-WIN32/asm/openssl.gypi b/deps/openssl/config/archs/VC-WIN32/asm/openssl.gypi index 10fa852b2adf..31ec4eb42c05 100644 --- a/deps/openssl/config/archs/VC-WIN32/asm/openssl.gypi +++ b/deps/openssl/config/archs/VC-WIN32/asm/openssl.gypi @@ -211,6 +211,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -567,6 +568,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/VC-WIN32/no-asm/configdata.pm b/deps/openssl/config/archs/VC-WIN32/no-asm/configdata.pm index a7afa26f5185..e4f7a3d14edf 100644 --- a/deps/openssl/config/archs/VC-WIN32/no-asm/configdata.pm +++ b/deps/openssl/config/archs/VC-WIN32/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "VC-WIN32", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1099,6 +1099,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1265,10 +1269,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3961,6 +3977,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6245,6 +6267,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7232,6 +7260,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7404,9 +7436,9 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", "include", + "test", ".", ], "test/threadstest.o" => @@ -7426,10 +7458,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7585,6 +7630,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7625,7 +7671,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7964,6 +8013,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8084,9 +8136,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9080,6 +9141,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/VC-WIN32/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/VC-WIN32/no-asm/crypto/buildinf.h index c58c6e6c40b8..a9c58caa468f 100644 --- a/deps/openssl/config/archs/VC-WIN32/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/VC-WIN32/no-asm/crypto/buildinf.h @@ -9,4 +9,4 @@ 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" +#define DATE "built on: Tue Aug 14 23:13:48 2018" diff --git a/deps/openssl/config/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h index 1f09ee0d7fbe..eaf7b68125fa 100644 --- a/deps/openssl/config/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/VC-WIN32/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/VC-WIN32/no-asm/openssl.gypi b/deps/openssl/config/archs/VC-WIN32/no-asm/openssl.gypi index 09aef657a42f..379f77ea5058 100644 --- a/deps/openssl/config/archs/VC-WIN32/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/VC-WIN32/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/configdata.pm b/deps/openssl/config/archs/VC-WIN64A/asm/configdata.pm index 95949bf7a465..fefc45903a7c 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/configdata.pm +++ b/deps/openssl/config/archs/VC-WIN64A/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "VC-WIN64A", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1101,6 +1101,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1267,10 +1271,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -4023,6 +4039,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6367,6 +6389,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7366,6 +7394,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7560,10 +7592,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7719,6 +7764,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7759,7 +7805,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8098,6 +8147,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8218,9 +8270,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9254,6 +9315,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10738,6 +10803,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11275,6 +11344,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11645,6 +11715,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12650,6 +12721,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12999,6 +13079,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13007,6 +13095,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont.asm b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont.asm index f58343ff2b00..26908c313b2c 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont.asm +++ b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont.asm @@ -214,30 +214,30 @@ $L$inner_enter: xor r14,r14 mov rax,QWORD[rsp] - lea rsi,[rsp] mov r15,r9 - jmp NEAR $L$sub + ALIGN 16 $L$sub: sbb rax,QWORD[r14*8+rcx] mov QWORD[r14*8+rdi],rax - mov rax,QWORD[8+r14*8+rsi] + mov rax,QWORD[8+r14*8+rsp] lea r14,[1+r14] dec r15 jnz NEAR $L$sub sbb rax,0 + mov rbx,-1 + xor rbx,rax xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax mov r15,r9 - or rsi,rcx -ALIGN 16 + $L$copy: - mov rax,QWORD[r14*8+rsi] - mov QWORD[r14*8+rsp],r14 - mov QWORD[r14*8+rdi],rax + mov rcx,QWORD[r14*8+rdi] + mov rdx,QWORD[r14*8+rsp] + and rcx,rbx + and rdx,rax + mov QWORD[r14*8+rsp],r9 + or rdx,rcx + mov QWORD[r14*8+rdi],rdx lea r14,[1+r14] sub r15,1 jnz NEAR $L$copy @@ -605,10 +605,10 @@ $L$inner4x: cmp r14,r9 jb NEAR $L$outer4x mov rdi,QWORD[16+r9*8+rsp] + lea r15,[((-4))+r9] mov rax,QWORD[rsp] - pxor xmm0,xmm0 mov rdx,QWORD[8+rsp] - shr r9,2 + shr r15,2 lea rsi,[rsp] xor r14,r14 @@ -616,9 +616,7 @@ $L$inner4x: mov rbx,QWORD[16+rsi] mov rbp,QWORD[24+rsi] sbb rdx,QWORD[8+rcx] - lea r15,[((-1))+r9] - jmp NEAR $L$sub4x -ALIGN 16 + $L$sub4x: mov QWORD[r14*8+rdi],rax mov QWORD[8+r14*8+rdi],rdx @@ -645,34 +643,35 @@ $L$sub4x: sbb rax,0 mov QWORD[24+r14*8+rdi],rbp - xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax - lea r15,[((-1))+r9] - or rsi,rcx - - movdqu xmm1,XMMWORD[rsi] - movdqa XMMWORD[rsp],xmm0 - movdqu XMMWORD[rdi],xmm1 + pxor xmm0,xmm0 +DB 102,72,15,110,224 + pcmpeqd xmm5,xmm5 + pshufd xmm4,xmm4,0 + mov r15,r9 + pxor xmm5,xmm4 + shr r15,2 + xor eax,eax + jmp NEAR $L$copy4x ALIGN 16 $L$copy4x: - movdqu xmm2,XMMWORD[16+r14*1+rsi] - movdqu xmm1,XMMWORD[32+r14*1+rsi] - movdqa XMMWORD[16+r14*1+rsp],xmm0 - movdqu XMMWORD[16+r14*1+rdi],xmm2 - movdqa XMMWORD[32+r14*1+rsp],xmm0 - movdqu XMMWORD[32+r14*1+rdi],xmm1 - lea r14,[32+r14] + movdqa xmm1,XMMWORD[rax*1+rsp] + movdqu xmm2,XMMWORD[rax*1+rdi] + pand xmm1,xmm4 + pand xmm2,xmm5 + movdqa xmm3,XMMWORD[16+rax*1+rsp] + movdqa XMMWORD[rax*1+rsp],xmm0 + por xmm1,xmm2 + movdqu xmm2,XMMWORD[16+rax*1+rdi] + movdqu XMMWORD[rax*1+rdi],xmm1 + pand xmm3,xmm4 + pand xmm2,xmm5 + movdqa XMMWORD[16+rax*1+rsp],xmm0 + por xmm3,xmm2 + movdqu XMMWORD[16+rax*1+rdi],xmm3 + lea rax,[32+rax] dec r15 jnz NEAR $L$copy4x - - shl r9,2 - movdqu xmm2,XMMWORD[16+r14*1+rsi] - movdqa XMMWORD[16+r14*1+rsp],xmm0 - movdqu XMMWORD[16+r14*1+rdi],xmm2 mov rsi,QWORD[8+r9*8+rsp] mov rax,1 mov r15,QWORD[((-48))+rsi] diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont5.asm b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont5.asm index e0fb22b79e35..de93630c8f5a 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont5.asm +++ b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/bn/x86_64-mont5.asm @@ -410,18 +410,19 @@ $L$sub: sbb rax,QWORD[r14*8+rcx] jnz NEAR $L$sub sbb rax,0 + mov rbx,-1 + xor rbx,rax xor r14,r14 - and rsi,rax - not rax - mov rcx,rdi - and rcx,rax mov r15,r9 - or rsi,rcx -ALIGN 16 + $L$copy: - mov rax,QWORD[r14*8+rsi] + mov rcx,QWORD[r14*8+rdi] + mov rdx,QWORD[r14*8+rsp] + and rcx,rbx + and rdx,rax mov QWORD[r14*8+rsp],r14 - mov QWORD[r14*8+rdi],rax + or rdx,rcx + mov QWORD[r14*8+rdi],rdx lea r14,[1+r14] sub r15,1 jnz NEAR $L$copy diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/buildinf.h b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/buildinf.h index bae537d4013c..b4a762c77e93 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/buildinf.h @@ -9,4 +9,4 @@ 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" +#define DATE "built on: Tue Aug 14 23:13:42 2018" diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/x86_64cpuid.asm b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/x86_64cpuid.asm index cda3538dbab3..2aede40d9eef 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/crypto/x86_64cpuid.asm +++ b/deps/openssl/config/archs/VC-WIN64A/asm/crypto/x86_64cpuid.asm @@ -456,3 +456,4 @@ $L$tail_rdseed_bytes: $L$done_rdseed_bytes: DB 0F3h,0C3h ;repret + diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/VC-WIN64A/asm/include/openssl/opensslconf.h index 01084232d8d7..fd1ca5612f3e 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/VC-WIN64A/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/VC-WIN64A/asm/openssl.gypi b/deps/openssl/config/archs/VC-WIN64A/asm/openssl.gypi index 8fccfe154d19..b7ce577c2a1a 100644 --- a/deps/openssl/config/archs/VC-WIN64A/asm/openssl.gypi +++ b/deps/openssl/config/archs/VC-WIN64A/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/VC-WIN64A/no-asm/configdata.pm b/deps/openssl/config/archs/VC-WIN64A/no-asm/configdata.pm index b7918f728d50..909baa10162a 100644 --- a/deps/openssl/config/archs/VC-WIN64A/no-asm/configdata.pm +++ b/deps/openssl/config/archs/VC-WIN64A/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "VC-WIN64A", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1100,6 +1100,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1266,10 +1270,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3962,6 +3978,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6246,6 +6268,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7233,6 +7261,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7406,8 +7438,8 @@ our %unified_info = ( "test/testutil.o" => [ "crypto/include", - "test", "include", + "test", ".", ], "test/threadstest.o" => @@ -7427,10 +7459,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7586,6 +7631,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7626,7 +7672,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7965,6 +8014,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8085,9 +8137,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9081,6 +9142,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10525,6 +10590,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11044,6 +11113,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11404,6 +11474,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12407,6 +12478,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12756,6 +12836,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12764,6 +12852,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/VC-WIN64A/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/VC-WIN64A/no-asm/crypto/buildinf.h index 12173ecb400e..c255115fe5fe 100644 --- a/deps/openssl/config/archs/VC-WIN64A/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/VC-WIN64A/no-asm/crypto/buildinf.h @@ -9,4 +9,4 @@ 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:58 2018" +#define DATE "built on: Tue Aug 14 23:13:46 2018" diff --git a/deps/openssl/config/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h index dfe71f8c6075..097c8ae7bfc6 100644 --- a/deps/openssl/config/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/VC-WIN64A/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/VC-WIN64A/no-asm/openssl.gypi b/deps/openssl/config/archs/VC-WIN64A/no-asm/openssl.gypi index 54cef95adbde..d9f65b4a877a 100644 --- a/deps/openssl/config/archs/VC-WIN64A/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/VC-WIN64A/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/aix-gcc/asm/configdata.pm b/deps/openssl/config/archs/aix-gcc/asm/configdata.pm index 4fe3ed16b6f1..e63eec47d846 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/configdata.pm +++ b/deps/openssl/config/archs/aix-gcc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "aix-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -871,11 +871,6 @@ our %unified_info = ( "libcrypto", "libssl", ], - "test/buildtest_opensslconf" => - [ - "libcrypto", - "libssl", - ], "test/buildtest_opensslv" => [ "libcrypto", @@ -1084,6 +1079,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1250,10 +1249,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -2328,11 +2339,6 @@ our %unified_info = ( "test/generate_buildtest.pl", "ocsp", ], - "test/buildtest_opensslconf.c" => - [ - "test/generate_buildtest.pl", - "opensslconf", - ], "test/buildtest_opensslv.c" => [ "test/generate_buildtest.pl", @@ -3975,6 +3981,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6307,6 +6319,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7112,10 +7130,6 @@ our %unified_info = ( [ "include", ], - "test/buildtest_opensslconf.o" => - [ - "include", - ], "test/buildtest_opensslv.o" => [ "include", @@ -7298,6 +7312,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7470,9 +7488,9 @@ our %unified_info = ( ], "test/testutil.o" => [ + "test", "crypto/include", "include", - "test", ".", ], "test/threadstest.o" => @@ -7492,10 +7510,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7607,7 +7638,6 @@ our %unified_info = ( "test/buildtest_obj_mac", "test/buildtest_objects", "test/buildtest_ocsp", - "test/buildtest_opensslconf", "test/buildtest_opensslv", "test/buildtest_ossl_typ", "test/buildtest_pem", @@ -7652,6 +7682,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7692,7 +7723,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7942,9 +7976,6 @@ our %unified_info = ( "test/buildtest_ocsp" => [ ], - "test/buildtest_opensslconf" => - [ - ], "test/buildtest_opensslv" => [ ], @@ -8077,6 +8108,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8197,9 +8231,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9208,6 +9251,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10684,6 +10731,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11208,6 +11259,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11577,6 +11629,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12222,14 +12275,6 @@ our %unified_info = ( [ "test/buildtest_ocsp.c", ], - "test/buildtest_opensslconf" => - [ - "test/buildtest_opensslconf.o", - ], - "test/buildtest_opensslconf.o" => - [ - "test/buildtest_opensslconf.c", - ], "test/buildtest_opensslv" => [ "test/buildtest_opensslv.o", @@ -12588,6 +12633,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12937,6 +12991,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12945,6 +13007,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aes-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aes-ppc.s index 2b16116024d6..dad9e59c718a 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aes-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aes-ppc.s @@ -8,7 +8,7 @@ LAES_Te: mflr 3 addi 3,3,120 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -18,7 +18,7 @@ LAES_Td: mflr 3 addi 3,3,2360 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -739,7 +739,7 @@ Lenc_done: lwz 31,124(1) mtlr 0 addi 1,1,128 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -819,7 +819,7 @@ Lenc_loop: bc 16,0,Lenc_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -884,7 +884,7 @@ Lenc_loop: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1029,7 +1029,7 @@ Lenc_compact_done: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1173,7 +1173,7 @@ Ldec_done: lwz 31,124(1) mtlr 0 addi 1,1,128 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1253,7 +1253,7 @@ Ldec_loop: bc 16,0,Ldec_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -1318,7 +1318,7 @@ Ldec_loop: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1548,7 +1548,7 @@ Ldec_compact_done: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aesp8-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aesp8-ppc.s index bd2926e0b4a2..af77b045249a 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aesp8-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/aesp8-ppc.s @@ -14,7 +14,7 @@ Lconsts: mflr 6 addi 6,6,-0x48 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,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 @@ -277,7 +277,7 @@ Ldone: Lenc_key_abort: mr 3,6 - blr + blr .long 0 .byte 0,12,0x14,1,0,0,3,0 .long 0 @@ -325,7 +325,7 @@ Ldeckey: xor 3,3,3 Ldec_key_abort: addi 1,1,32 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,3,0 .long 0 @@ -392,7 +392,7 @@ Loop_enc: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -459,7 +459,7 @@ Loop_dec: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -620,7 +620,7 @@ Lcbc_done: stvx 2,10,7 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -910,8 +910,8 @@ Loop_cbc_dec8x: addic. 5,5,128 beq Lcbc_dec8x_done - nop - nop + nop + nop Loop_cbc_dec8x_tail: .long 0x11EFC548 @@ -999,15 +999,15 @@ Loop_cbc_dec8x_tail: cmplwi 5,32 blt Lcbc_dec8x_one - nop + nop beq Lcbc_dec8x_two cmplwi 5,64 blt Lcbc_dec8x_three - nop + nop beq Lcbc_dec8x_four cmplwi 5,96 blt Lcbc_dec8x_five - nop + nop beq Lcbc_dec8x_six Lcbc_dec8x_seven: @@ -1194,7 +1194,7 @@ Lcbc_dec8x_done: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1301,7 +1301,7 @@ Loop_ctr32_enc: stvx 2,0,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -1604,15 +1604,15 @@ Loop_ctr32_enc8x_middle: Lctr32_enc8x_break: cmpwi 5,-0x60 blt Lctr32_enc8x_one - nop + nop beq Lctr32_enc8x_two cmpwi 5,-0x40 blt Lctr32_enc8x_three - nop + nop beq Lctr32_enc8x_four cmpwi 5,-0x20 blt Lctr32_enc8x_five - nop + nop beq Lctr32_enc8x_six cmpwi 5,0x00 blt Lctr32_enc8x_seven @@ -1821,7 +1821,7 @@ Lctr32_enc8x_done: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1958,7 +1958,7 @@ Loop_xts_enc: .long 0x10620509 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2031,7 +2031,7 @@ Lxts_enc_done: Lxts_enc_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2171,7 +2171,7 @@ Loop_xts_dec: .long 0x10620549 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2236,7 +2236,7 @@ Loop_xts_dec_short: .long 0x10620549 - nop + nop .long 0x7C602799 @@ -2287,7 +2287,7 @@ Lxts_dec_done: Lxts_dec_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2618,11 +2618,11 @@ Loop_xts_enc6x: beq Lxts_enc6x_zero cmpwi 5,0x20 blt Lxts_enc6x_one - nop + nop beq Lxts_enc6x_two cmpwi 5,0x40 blt Lxts_enc6x_three - nop + nop beq Lxts_enc6x_four Lxts_enc6x_five: @@ -2719,7 +2719,7 @@ Lxts_enc6x_two: .align 4 Lxts_enc6x_one: vxor 7,5,17 - nop + nop Loop_xts_enc1x: .long 0x10E7C508 lvx 24,26,7 @@ -2855,7 +2855,7 @@ Lxts_enc6x_ret: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -2940,7 +2940,7 @@ _aesp8_xts_enc5x: .long 0x11AD1509 .long 0x11CE1D09 .long 0x11EF2509 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -3268,11 +3268,11 @@ Loop_xts_dec6x: beq Lxts_dec6x_zero cmpwi 5,0x20 blt Lxts_dec6x_one - nop + nop beq Lxts_dec6x_two cmpwi 5,0x40 blt Lxts_dec6x_three - nop + nop beq Lxts_dec6x_four Lxts_dec6x_five: @@ -3373,7 +3373,7 @@ Lxts_dec6x_two: .align 4 Lxts_dec6x_one: vxor 7,5,17 - nop + nop Loop_xts_dec1x: .long 0x10E7C548 lvx 24,26,7 @@ -3543,7 +3543,7 @@ Lxts_dec6x_ret: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3628,6 +3628,6 @@ _aesp8_xts_dec5x: .long 0x11CE1D49 .long 0x11EF2549 mtctr 9 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/vpaes-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/vpaes-ppc.s index 6f29a012fa7f..b264c900333a 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/vpaes-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/aes/vpaes-ppc.s @@ -95,7 +95,7 @@ Lconsts: mflr 12 addi 12,12,-0x308 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .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,65,108,116,105,86,101,99,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 @@ -135,7 +135,7 @@ _vpaes_encrypt_preheat: lvx 17, 12, 8 lvx 18, 12, 11 lvx 19, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -223,7 +223,7 @@ Lenc_entry: vxor 4, 4, 5 vxor 0, 0, 4 vperm 0, 0, 7, 1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -318,7 +318,7 @@ Lenc_done: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -360,7 +360,7 @@ _vpaes_decrypt_preheat: lvx 21, 12, 8 lvx 22, 12, 11 lvx 23, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -455,7 +455,7 @@ Ldec_entry: vxor 4, 4, 5 vxor 0, 1, 4 vperm 0, 0, 7, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -550,7 +550,7 @@ Ldec_done: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -777,7 +777,7 @@ Lcbc_abort: lwz 31,236(1) mtlr 0 addi 1,1,240 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,2,6,0 .long 0 @@ -831,7 +831,7 @@ _vpaes_key_preheat: lvx 24, 12, 9 lvx 25, 0, 12 lvx 26, 12, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1077,7 +1077,7 @@ Lschedule_mangle_done: vxor 6, 6, 6 vxor 7, 7, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1105,7 +1105,7 @@ _vpaes_schedule_192_smear: vor 0, 6, 6 vsldoi 6, 6, 9, 8 vsldoi 6, 9, 6, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1171,7 +1171,7 @@ _vpaes_schedule_low_round: vxor 0, 1, 7 vxor 7, 1, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1193,7 +1193,7 @@ _vpaes_schedule_transform: vperm 2, 13, 13, 2 vxor 0, 0, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1245,7 +1245,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .align 4 Lschedule_mangle_dec: @@ -1296,7 +1296,7 @@ Lschedule_mangle_dec: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1372,7 +1372,7 @@ Lschedule_mangle_dec: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -1455,7 +1455,8 @@ Lschedule_mangle_dec: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 + diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/bn-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/bn-ppc.s index 51fd8f0b4999..3f3b3057de02 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/bn-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/bn-ppc.s @@ -227,7 +227,7 @@ stw 9,24(3) stw 10,28(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -655,7 +655,7 @@ stw 9, 60(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -809,7 +809,7 @@ stw 10,24(3) stw 11,28(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1348,7 +1348,7 @@ adde 10,10,9 stw 12,56(3) stw 10,60(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1399,7 +1399,7 @@ Lppcasm_sub_mainloop: Lppcasm_sub_adios: subfze 3,0 andi. 3,3,1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1445,7 +1445,7 @@ Lppcasm_add_mainloop: bc 16,0,Lppcasm_add_mainloop Lppcasm_add_adios: addze 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1474,7 +1474,7 @@ Lppcasm_add_adios: cmplwi 0,5,0 bne Lppcasm_div1 li 3,-1 - blr + blr Lppcasm_div1: xor 0,0,0 li 8,32 @@ -1561,7 +1561,7 @@ Lppcasm_div8: b Lppcasm_divouterloop Lppcasm_div9: or 3,8,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1603,7 +1603,7 @@ Lppcasm_sqr_mainloop: stwu 8,4(3) bc 16,0,Lppcasm_sqr_mainloop Lppcasm_sqr_adios: - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1709,7 +1709,7 @@ Lppcasm_mw_REM: Lppcasm_mw_OVER: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1835,7 +1835,7 @@ Lppcasm_maw_leftover: Lppcasm_maw_adios: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc-mont.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc-mont.s index a9384f70b07d..267308a6ac3b 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc-mont.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc-mont.s @@ -9,7 +9,7 @@ li 3,0 bclr 12,0 cmpwi 8,32 - bgelr + bgelr slwi 8,8,2 li 12,-4096 addi 3,8,256 @@ -182,15 +182,16 @@ Lsub: lwzx 12,22,21 li 21,0 mtctr 8 subfe 3,21,3 - and 4,22,3 - andc 6,9,3 - or 4,4,6 .align 4 Lcopy: - lwzx 12,4,21 - stwx 12,9,21 + lwzx 12,22,21 + lwzx 10,9,21 + and 12,12,3 + andc 10,10,3 stwx 21,22,21 + or 10,10,12 + stwx 10,9,21 addi 21,21,4 bc 16,0,Lcopy @@ -209,7 +210,7 @@ Lcopy: lwz 30,-8(12) lwz 31,-4(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x80,12,6,0 .long 0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc64-mont.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc64-mont.s index 281d64ae7dc6..1506bcc03aae 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc64-mont.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/bn/ppc64-mont.s @@ -888,11 +888,8 @@ Lsub: lwz 24,12(10) li 12,0 subfe 3,12,3 - addi 10,1,196 + addi 4,1,196 subf 9,8,9 - and 4,10,3 - andc 6,9,3 - or 4,4,6 addi 10,1,192 mtctr 11 @@ -902,6 +899,10 @@ Lcopy: lwz 25,8(4) lwz 26,12(4) lwzu 27,16(4) + lwz 28,4(9) + lwz 29,8(9) + lwz 30,12(9) + lwz 31,16(9) std 12,8(22) std 12,16(22) std 12,24(22) @@ -910,6 +911,18 @@ Lcopy: std 12,48(22) std 12,56(22) stdu 12,64(22) + and 24,24,3 + and 25,25,3 + and 26,26,3 + and 27,27,3 + andc 28,28,3 + andc 29,29,3 + andc 30,30,3 + andc 31,31,3 + or 24,24,28 + or 25,25,29 + or 26,26,30 + or 27,27,31 stw 24,4(9) stw 25,8(9) stw 26,12(9) @@ -945,7 +958,7 @@ Lcopy: lfd 30,-16(12) lfd 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x8c,13,6,0 .long 0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/buildinf.h b/deps/openssl/config/archs/aix-gcc/asm/crypto/buildinf.h index f75553781fed..55bdf4131b04 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/buildinf.h @@ -26,4 +26,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: aix-gcc" -#define DATE "built on: Tue Apr 3 00:38:08 2018" +#define DATE "built on: Tue Aug 14 23:12:56 2018" diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/chacha/chacha-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/chacha/chacha-ppc.s index 9130400355be..e4e4612d3aab 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/chacha/chacha-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/chacha/chacha-ppc.s @@ -59,7 +59,7 @@ __ChaCha20_ctr32_int: lwz 31,156(1) mtlr 0 addi 1,1,160 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,5,0 .long 0 @@ -345,7 +345,7 @@ Loop: bne Loop_outer - blr + blr .align 4 Ltail: @@ -396,7 +396,7 @@ Loop_tail: stw 1,80(1) stw 1,84(1) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -554,7 +554,7 @@ Loop_outer_vmx: vspltisw 27,7 mtctr 0 - nop + nop Loop_vmx: vadduwm 0,0,1 add 16,16,20 @@ -1047,7 +1047,7 @@ Laligned_vmx: cmplwi 5,255 bgt Loop_outer_vmx - nop + nop Ldone_vmx: cmplwi 5,0 @@ -1100,7 +1100,7 @@ Ldone_vmx: lwz 31,364(1) mtlr 0 addi 1,1,368 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,18,5,0 .long 0 @@ -1113,7 +1113,7 @@ Lconsts: mflr 12 addi 12,12,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/modes/ghashp8-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/modes/ghashp8-ppc.s index 972f88d9b83f..81d7d24b74e9 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/modes/ghashp8-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/modes/ghashp8-ppc.s @@ -122,7 +122,7 @@ .long 0x7E4A1F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -171,7 +171,7 @@ .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -287,7 +287,7 @@ Leven: .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -554,7 +554,7 @@ Ldone_4x: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppc.s index 3063cd30a200..1adc3641dbb3 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppc.s @@ -35,7 +35,7 @@ Lno_key: xor 3,3,3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 @@ -236,7 +236,7 @@ Loop: lwz 31,92(1) addi 1,1,96 Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,18,4,0 @@ -300,7 +300,7 @@ Labort: lwz 30,88(1) lwz 31,92(1) addi 1,1,96 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppcfp.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppcfp.s index 17d3aeb19596..f4cc796fa70c 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppcfp.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/poly1305/poly1305-ppcfp.s @@ -145,7 +145,7 @@ Lno_key: xor 3,3,3 addi 1,1,24 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,2,0 @@ -460,7 +460,7 @@ Lentry: lfd 31,208(1) addi 1,1,216 Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,0,4,0 @@ -544,7 +544,7 @@ Labort: lwz 30,32(1) lwz 31,36(1) addi 1,1,40 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 @@ -555,7 +555,7 @@ LPICmeup: mflr 5 addi 5,5,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/ppccpuid.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/ppccpuid.s index 85665a604604..2eb7bd60a4b3 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/ppccpuid.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/ppccpuid.s @@ -5,7 +5,7 @@ .align 4 .OPENSSL_fpu_probe: fmr 0,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -14,7 +14,7 @@ .OPENSSL_ppc64_probe: fcfid 1,1 rldicl 0,0,32,32 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -23,7 +23,7 @@ .align 4 .OPENSSL_altivec_probe: .long 0x10000484 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -33,7 +33,7 @@ .OPENSSL_crypto207_probe: .long 0x7C000E99 .long 0x10000508 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -44,7 +44,7 @@ xor 0,0,0 .long 0x10600033 .long 0x10600031 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -76,7 +76,7 @@ xor 12,12,12 fmr 12,31 fmr 13,31 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -89,7 +89,7 @@ Ladd: lwarx 5,0,3 stwcx. 0,0,3 bne- Ladd mr 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -104,7 +104,7 @@ Loop_rdtsc: mftbu 4 cmplw 0,4,5 bne Loop_rdtsc - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -121,7 +121,7 @@ Little: mtctr 4 stb 0,0(3) addi 3,3,1 bc 16,0,$-8 - blr + blr Lot: andi. 5,3,3 beq Laligned stb 0,0(3) @@ -136,7 +136,7 @@ Laligned: bc 16,0,$-8 andi. 4,4,3 bne Little - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -162,7 +162,7 @@ Lno_data: li 3,0 sub 3,3,0 extrwi 3,3,1,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -193,7 +193,7 @@ Loop: mftb 6 bc 16,0,Loop mr 3,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -245,7 +245,8 @@ Loop2: Ldone2: srwi 4,4,2 sub 3,0,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 + diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha1-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha1-ppc.s index 41cf5f850a1d..2cbfbd5a3c2d 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha1-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha1-ppc.s @@ -100,7 +100,7 @@ Ldone: lwz 31,156(1) mtlr 0 addi 1,1,160 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1108,7 +1108,7 @@ Lsha1_block_private: mr 11,20 addi 4,4,64 bc 16,0,Lsha1_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256-ppc.s index 1b8f10817411..0be5e923ef56 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256-ppc.s @@ -120,7 +120,7 @@ Ldone: lwz 31,188(1) mtlr 0 addi 1,1,192 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1286,7 +1286,7 @@ Lrounds: cmplw 0,31,5 stw 15,28(3) bne Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1297,7 +1297,7 @@ LPICmeup: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256p8-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256p8-ppc.s index 8f73813109de..e252f6fe29b3 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256p8-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha256p8-ppc.s @@ -772,7 +772,7 @@ L16_xx: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -784,7 +784,7 @@ LPICmeup: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512-ppc.s index 82da5d2e4e2d..ca3c3629a098 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512-ppc.s @@ -127,7 +127,7 @@ Ldone: lwz 31,252(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -2972,7 +2972,7 @@ Lrounds: stw 4,164(1) cmplw 0,4,5 bne Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -2983,7 +2983,7 @@ LPICmeup: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512p8-ppc.s b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512p8-ppc.s index 08ca5b45730f..930f009de78c 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512p8-ppc.s +++ b/deps/openssl/config/archs/aix-gcc/asm/crypto/sha/sha512p8-ppc.s @@ -773,7 +773,7 @@ L16_xx: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -785,7 +785,7 @@ LPICmeup: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix-gcc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/aix-gcc/asm/include/openssl/opensslconf.h index 8f5c4f48d240..b3ae627c1af7 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/aix-gcc/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/aix-gcc/asm/openssl.gypi b/deps/openssl/config/archs/aix-gcc/asm/openssl.gypi index 68196fdabfda..552c22020ed5 100644 --- a/deps/openssl/config/archs/aix-gcc/asm/openssl.gypi +++ b/deps/openssl/config/archs/aix-gcc/asm/openssl.gypi @@ -217,6 +217,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -577,6 +578,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/aix-gcc/no-asm/configdata.pm b/deps/openssl/config/archs/aix-gcc/no-asm/configdata.pm index b8674f95372b..47fc553ca8b5 100644 --- a/deps/openssl/config/archs/aix-gcc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/aix-gcc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "aix-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3934,6 +3950,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6212,6 +6234,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7199,6 +7227,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7393,10 +7425,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7552,6 +7597,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7592,7 +7638,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7974,6 +8023,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8094,9 +8146,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9085,6 +9146,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10525,6 +10590,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11044,6 +11113,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11404,6 +11474,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12407,6 +12478,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12756,6 +12836,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12764,6 +12852,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/aix-gcc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/aix-gcc/no-asm/crypto/buildinf.h index 8f97dac70a37..915064c8b3fe 100644 --- a/deps/openssl/config/archs/aix-gcc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/aix-gcc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: aix-gcc" -#define DATE "built on: Tue Apr 3 00:38:09 2018" +#define DATE "built on: Tue Aug 14 23:12:58 2018" diff --git a/deps/openssl/config/archs/aix-gcc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/aix-gcc/no-asm/include/openssl/opensslconf.h index ae6ea775d719..de84cb510b9e 100644 --- a/deps/openssl/config/archs/aix-gcc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/aix-gcc/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/aix-gcc/no-asm/openssl.gypi b/deps/openssl/config/archs/aix-gcc/no-asm/openssl.gypi index 70dc22a3879d..eaa75cb78dbc 100644 --- a/deps/openssl/config/archs/aix-gcc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/aix-gcc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/aix64-gcc/asm/configdata.pm b/deps/openssl/config/archs/aix64-gcc/asm/configdata.pm index 1512a38c0e07..67d415bf12cf 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/configdata.pm +++ b/deps/openssl/config/archs/aix64-gcc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "aix64-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1079,6 +1079,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1245,10 +1249,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3965,6 +3981,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6297,6 +6319,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7284,6 +7312,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7478,10 +7510,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7637,6 +7682,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7677,7 +7723,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8059,6 +8108,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8179,9 +8231,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9190,6 +9251,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10666,6 +10731,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11190,6 +11259,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11559,6 +11629,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12562,6 +12633,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12911,6 +12991,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12919,6 +13007,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aes-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aes-ppc.s index cc96236fe5b6..32c684cd9c00 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aes-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aes-ppc.s @@ -8,7 +8,7 @@ LAES_Te: mflr 3 addi 3,3,120 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -18,7 +18,7 @@ LAES_Td: mflr 3 addi 3,3,2360 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -739,7 +739,7 @@ Lenc_done: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -819,7 +819,7 @@ Lenc_loop: bc 16,0,Lenc_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -884,7 +884,7 @@ Lenc_loop: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1029,7 +1029,7 @@ Lenc_compact_done: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1173,7 +1173,7 @@ Ldec_done: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1253,7 +1253,7 @@ Ldec_loop: bc 16,0,Ldec_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -1318,7 +1318,7 @@ Ldec_loop: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1515,7 +1515,7 @@ Ldec_compact_done: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aesp8-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aesp8-ppc.s index 0893f20dc869..0c906d17987c 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aesp8-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/aesp8-ppc.s @@ -14,7 +14,7 @@ Lconsts: mflr 6 addi 6,6,-0x48 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,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 @@ -277,7 +277,7 @@ Ldone: Lenc_key_abort: mr 3,6 - blr + blr .long 0 .byte 0,12,0x14,1,0,0,3,0 .long 0 @@ -325,7 +325,7 @@ Ldeckey: xor 3,3,3 Ldec_key_abort: addi 1,1,64 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,3,0 .long 0 @@ -392,7 +392,7 @@ Loop_enc: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -459,7 +459,7 @@ Loop_dec: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -620,7 +620,7 @@ Lcbc_done: stvx 2,10,7 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -910,8 +910,8 @@ Loop_cbc_dec8x: addic. 5,5,128 beq Lcbc_dec8x_done - nop - nop + nop + nop Loop_cbc_dec8x_tail: .long 0x11EFC548 @@ -999,15 +999,15 @@ Loop_cbc_dec8x_tail: cmplwi 5,32 blt Lcbc_dec8x_one - nop + nop beq Lcbc_dec8x_two cmplwi 5,64 blt Lcbc_dec8x_three - nop + nop beq Lcbc_dec8x_four cmplwi 5,96 blt Lcbc_dec8x_five - nop + nop beq Lcbc_dec8x_six Lcbc_dec8x_seven: @@ -1194,7 +1194,7 @@ Lcbc_dec8x_done: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1301,7 +1301,7 @@ Loop_ctr32_enc: stvx 2,0,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -1604,15 +1604,15 @@ Loop_ctr32_enc8x_middle: Lctr32_enc8x_break: cmpwi 5,-0x60 blt Lctr32_enc8x_one - nop + nop beq Lctr32_enc8x_two cmpwi 5,-0x40 blt Lctr32_enc8x_three - nop + nop beq Lctr32_enc8x_four cmpwi 5,-0x20 blt Lctr32_enc8x_five - nop + nop beq Lctr32_enc8x_six cmpwi 5,0x00 blt Lctr32_enc8x_seven @@ -1821,7 +1821,7 @@ Lctr32_enc8x_done: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1958,7 +1958,7 @@ Loop_xts_enc: .long 0x10620509 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2031,7 +2031,7 @@ Lxts_enc_done: Lxts_enc_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2171,7 +2171,7 @@ Loop_xts_dec: .long 0x10620549 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2236,7 +2236,7 @@ Loop_xts_dec_short: .long 0x10620549 - nop + nop .long 0x7C602799 @@ -2287,7 +2287,7 @@ Lxts_dec_done: Lxts_dec_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2618,11 +2618,11 @@ Loop_xts_enc6x: beq Lxts_enc6x_zero cmpwi 5,0x20 blt Lxts_enc6x_one - nop + nop beq Lxts_enc6x_two cmpwi 5,0x40 blt Lxts_enc6x_three - nop + nop beq Lxts_enc6x_four Lxts_enc6x_five: @@ -2719,7 +2719,7 @@ Lxts_enc6x_two: .align 4 Lxts_enc6x_one: vxor 7,5,17 - nop + nop Loop_xts_enc1x: .long 0x10E7C508 lvx 24,26,7 @@ -2855,7 +2855,7 @@ Lxts_enc6x_ret: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -2940,7 +2940,7 @@ _aesp8_xts_enc5x: .long 0x11AD1509 .long 0x11CE1D09 .long 0x11EF2509 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -3268,11 +3268,11 @@ Loop_xts_dec6x: beq Lxts_dec6x_zero cmpwi 5,0x20 blt Lxts_dec6x_one - nop + nop beq Lxts_dec6x_two cmpwi 5,0x40 blt Lxts_dec6x_three - nop + nop beq Lxts_dec6x_four Lxts_dec6x_five: @@ -3373,7 +3373,7 @@ Lxts_dec6x_two: .align 4 Lxts_dec6x_one: vxor 7,5,17 - nop + nop Loop_xts_dec1x: .long 0x10E7C548 lvx 24,26,7 @@ -3543,7 +3543,7 @@ Lxts_dec6x_ret: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3628,6 +3628,6 @@ _aesp8_xts_dec5x: .long 0x11CE1D49 .long 0x11EF2549 mtctr 9 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/vpaes-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/vpaes-ppc.s index f2682de7c1fa..0e35758de862 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/vpaes-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/aes/vpaes-ppc.s @@ -95,7 +95,7 @@ Lconsts: mflr 12 addi 12,12,-0x308 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .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,65,108,116,105,86,101,99,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 @@ -135,7 +135,7 @@ _vpaes_encrypt_preheat: lvx 17, 12, 8 lvx 18, 12, 11 lvx 19, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -223,7 +223,7 @@ Lenc_entry: vxor 4, 4, 5 vxor 0, 0, 4 vperm 0, 0, 7, 1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -318,7 +318,7 @@ Lenc_done: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -360,7 +360,7 @@ _vpaes_decrypt_preheat: lvx 21, 12, 8 lvx 22, 12, 11 lvx 23, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -455,7 +455,7 @@ Ldec_entry: vxor 4, 4, 5 vxor 0, 1, 4 vperm 0, 0, 7, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -550,7 +550,7 @@ Ldec_done: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -777,7 +777,7 @@ Lcbc_abort: ld 31,264(1) mtlr 0 addi 1,1,272 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,2,6,0 .long 0 @@ -831,7 +831,7 @@ _vpaes_key_preheat: lvx 24, 12, 9 lvx 25, 0, 12 lvx 26, 12, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1077,7 +1077,7 @@ Lschedule_mangle_done: vxor 6, 6, 6 vxor 7, 7, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1105,7 +1105,7 @@ _vpaes_schedule_192_smear: vor 0, 6, 6 vsldoi 6, 6, 9, 8 vsldoi 6, 9, 6, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1171,7 +1171,7 @@ _vpaes_schedule_low_round: vxor 0, 1, 7 vxor 7, 1, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1193,7 +1193,7 @@ _vpaes_schedule_transform: vperm 2, 13, 13, 2 vxor 0, 0, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1245,7 +1245,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .align 4 Lschedule_mangle_dec: @@ -1296,7 +1296,7 @@ Lschedule_mangle_dec: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1372,7 +1372,7 @@ Lschedule_mangle_dec: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -1455,7 +1455,8 @@ Lschedule_mangle_dec: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 + diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/bn-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/bn-ppc.s index b8414b98f4e9..0f88fd28ff84 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/bn-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/bn-ppc.s @@ -227,7 +227,7 @@ std 9,48(3) std 10,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -655,7 +655,7 @@ std 9, 120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -809,7 +809,7 @@ std 10,48(3) std 11,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1348,7 +1348,7 @@ adde 10,10,9 std 12,112(3) std 10,120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1399,7 +1399,7 @@ Lppcasm_sub_mainloop: Lppcasm_sub_adios: subfze 3,0 andi. 3,3,1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1445,7 +1445,7 @@ Lppcasm_add_mainloop: bc 16,0,Lppcasm_add_mainloop Lppcasm_add_adios: addze 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1474,7 +1474,7 @@ Lppcasm_add_adios: cmpldi 0,5,0 bne Lppcasm_div1 li 3,-1 - blr + blr Lppcasm_div1: xor 0,0,0 li 8,64 @@ -1561,7 +1561,7 @@ Lppcasm_div8: b Lppcasm_divouterloop Lppcasm_div9: or 3,8,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1603,7 +1603,7 @@ Lppcasm_sqr_mainloop: stdu 8,8(3) bc 16,0,Lppcasm_sqr_mainloop Lppcasm_sqr_adios: - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1709,7 +1709,7 @@ Lppcasm_mw_REM: Lppcasm_mw_OVER: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1835,7 +1835,7 @@ Lppcasm_maw_leftover: Lppcasm_maw_adios: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc-mont.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc-mont.s index b767b00a5680..4b8b852812dd 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc-mont.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc-mont.s @@ -180,15 +180,16 @@ Lsub: ldx 12,22,21 li 21,0 mtctr 8 subfe 3,21,3 - and 4,22,3 - andc 6,9,3 - or 4,4,6 .align 4 Lcopy: - ldx 12,4,21 - stdx 12,9,21 + ldx 12,22,21 + ldx 10,9,21 + and 12,12,3 + andc 10,10,3 stdx 21,22,21 + or 10,10,12 + stdx 10,9,21 addi 21,21,8 bc 16,0,Lcopy @@ -207,7 +208,7 @@ Lcopy: ld 30,-16(12) ld 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x80,12,6,0 .long 0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc64-mont.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc64-mont.s index 2b5e5c9b2571..96ef2a9ea7b6 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc64-mont.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/bn/ppc64-mont.s @@ -679,16 +679,14 @@ Lsub: ldx 24,10,12 li 12,0 subfe 3,12,3 - and 4,10,3 - andc 6,9,3 - or 4,4,6 - addi 31,4,8 mtctr 11 .align 4 Lcopy: - ldx 24,4,12 - ldx 25,31,12 + ldx 24,10,12 + ldx 25,28,12 + ldx 26,9,12 + ldx 27,30,12 std 12,8(22) std 12,16(22) std 12,24(22) @@ -697,6 +695,12 @@ Lcopy: std 12,48(22) std 12,56(22) stdu 12,64(22) + and 24,24,3 + and 25,25,3 + andc 26,26,3 + andc 27,27,3 + or 24,24,26 + or 25,25,27 stdx 24,9,12 stdx 25,30,12 stdx 12,10,12 @@ -731,7 +735,7 @@ Lcopy: lfd 30,-16(12) lfd 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x8c,13,6,0 .long 0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/buildinf.h b/deps/openssl/config/archs/aix64-gcc/asm/crypto/buildinf.h index eb144269c776..bbb79117cab7 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/buildinf.h @@ -26,4 +26,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: aix64-gcc" -#define DATE "built on: Tue Apr 3 00:38:10 2018" +#define DATE "built on: Tue Aug 14 23:12:58 2018" diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/chacha/chacha-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/chacha/chacha-ppc.s index 60cf843569b0..89e9d28bad36 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/chacha/chacha-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/chacha/chacha-ppc.s @@ -59,7 +59,7 @@ __ChaCha20_ctr32_int: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,5,0 .long 0 @@ -345,7 +345,7 @@ Loop: bne Loop_outer - blr + blr .align 4 Ltail: @@ -396,7 +396,7 @@ Loop_tail: stw 1,104(1) stw 1,108(1) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -554,7 +554,7 @@ Loop_outer_vmx: vspltisw 27,7 mtctr 0 - nop + nop Loop_vmx: vadduwm 0,0,1 add 16,16,20 @@ -1047,7 +1047,7 @@ Laligned_vmx: cmpldi 5,255 bgt Loop_outer_vmx - nop + nop Ldone_vmx: cmpldi 5,0 @@ -1100,7 +1100,7 @@ Ldone_vmx: ld 31,456(1) mtlr 0 addi 1,1,464 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,18,5,0 .long 0 @@ -1113,7 +1113,7 @@ Lconsts: mflr 12 addi 12,12,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/modes/ghashp8-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/modes/ghashp8-ppc.s index 252ddc9d4ff9..db4f73d5590c 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/modes/ghashp8-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/modes/ghashp8-ppc.s @@ -122,7 +122,7 @@ .long 0x7E4A1F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -171,7 +171,7 @@ .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -287,7 +287,7 @@ Leven: .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -554,7 +554,7 @@ Ldone_4x: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppc.s index 0c976f6691df..e5253a563b51 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppc.s @@ -32,7 +32,7 @@ Lno_key: xor 3,3,3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 @@ -126,7 +126,7 @@ Loop: ld 31,184(1) addi 1,1,192 Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,5,4,0 @@ -166,7 +166,7 @@ Labort: li 12,12 stwbrx 8,11,4 stwbrx 7,12,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppcfp.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppcfp.s index a6393e8365be..912a1f593367 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppcfp.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/poly1305/poly1305-ppcfp.s @@ -145,7 +145,7 @@ Lno_key: xor 3,3,3 addi 1,1,48 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,2,0 @@ -460,7 +460,7 @@ Lentry: lfd 31,232(1) addi 1,1,240 Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,0,4,0 @@ -547,7 +547,7 @@ Labort: ld 30,64(1) ld 31,72(1) addi 1,1,80 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 @@ -558,7 +558,7 @@ LPICmeup: mflr 5 addi 5,5,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/ppccpuid.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/ppccpuid.s index d07c409ce4d7..4eabc3834422 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/ppccpuid.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/ppccpuid.s @@ -5,7 +5,7 @@ .align 4 .OPENSSL_fpu_probe: fmr 0,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -14,7 +14,7 @@ .OPENSSL_ppc64_probe: fcfid 1,1 rldicl 0,0,32,32 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -23,7 +23,7 @@ .align 4 .OPENSSL_altivec_probe: .long 0x10000484 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -33,7 +33,7 @@ .OPENSSL_crypto207_probe: .long 0x7C000E99 .long 0x10000508 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -44,7 +44,7 @@ xor 0,0,0 .long 0x10600033 .long 0x10600031 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -76,7 +76,7 @@ xor 12,12,12 fmr 12,31 fmr 13,31 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -89,7 +89,7 @@ Ladd: lwarx 5,0,3 stwcx. 0,0,3 bne- Ladd extsw 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -99,7 +99,7 @@ Ladd: lwarx 5,0,3 .align 4 .OPENSSL_rdtsc: mftb 3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -116,7 +116,7 @@ Little: mtctr 4 stb 0,0(3) addi 3,3,1 bc 16,0,$-8 - blr + blr Lot: andi. 5,3,3 beq Laligned stb 0,0(3) @@ -131,7 +131,7 @@ Laligned: bc 16,0,$-8 andi. 4,4,3 bne Little - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -157,7 +157,7 @@ Lno_data: li 3,0 sub 3,3,0 extrwi 3,3,1,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -188,7 +188,7 @@ Loop: mftb 6 bc 16,0,Loop mr 3,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -240,7 +240,8 @@ Loop2: Ldone2: srwi 4,4,2 sub 3,0,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 + diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha1-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha1-ppc.s index 28dcdd1419f5..1ffbb93d46af 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha1-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha1-ppc.s @@ -100,7 +100,7 @@ Ldone: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1108,7 +1108,7 @@ Lsha1_block_private: mr 11,20 addi 4,4,64 bc 16,0,Lsha1_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256-ppc.s index 8f1d4b312973..b77b0151df92 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256-ppc.s @@ -120,7 +120,7 @@ Ldone: ld 31,312(1) mtlr 0 addi 1,1,320 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1286,7 +1286,7 @@ Lrounds: cmpld 31,5 stw 15,28(3) bne Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1297,7 +1297,7 @@ LPICmeup: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256p8-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256p8-ppc.s index d765e581160c..fa3ea245144a 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256p8-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha256p8-ppc.s @@ -772,7 +772,7 @@ L16_xx: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -784,7 +784,7 @@ LPICmeup: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512-ppc.s index 3a2073c9c87b..910607909338 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512-ppc.s @@ -120,7 +120,7 @@ Ldone: ld 31,376(1) mtlr 0 addi 1,1,384 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1318,7 +1318,7 @@ Lrounds: cmpld 31,5 std 15,56(3) bne Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1329,7 +1329,7 @@ LPICmeup: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512p8-ppc.s b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512p8-ppc.s index a08d4748c105..60c23d4372fb 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512p8-ppc.s +++ b/deps/openssl/config/archs/aix64-gcc/asm/crypto/sha/sha512p8-ppc.s @@ -773,7 +773,7 @@ L16_xx: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -785,7 +785,7 @@ LPICmeup: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/aix64-gcc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/aix64-gcc/asm/include/openssl/opensslconf.h index 5f12b2933d9b..f4459a98a46d 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/aix64-gcc/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/aix64-gcc/asm/openssl.gypi b/deps/openssl/config/archs/aix64-gcc/asm/openssl.gypi index 0985c459cc98..44afda76b5ea 100644 --- a/deps/openssl/config/archs/aix64-gcc/asm/openssl.gypi +++ b/deps/openssl/config/archs/aix64-gcc/asm/openssl.gypi @@ -217,6 +217,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -577,6 +578,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/aix64-gcc/no-asm/configdata.pm b/deps/openssl/config/archs/aix64-gcc/no-asm/configdata.pm index 5e25c7b88b42..0b737280d0cb 100644 --- a/deps/openssl/config/archs/aix64-gcc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/aix64-gcc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "aix64-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3934,6 +3950,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6212,6 +6234,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7199,6 +7227,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7393,10 +7425,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7552,6 +7597,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7592,7 +7638,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7974,6 +8023,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8094,9 +8146,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9085,6 +9146,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10525,6 +10590,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11044,6 +11113,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11404,6 +11474,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12407,6 +12478,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12756,6 +12836,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12764,6 +12852,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/aix64-gcc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/aix64-gcc/no-asm/crypto/buildinf.h index 88cd72b844a2..21038f0e3811 100644 --- a/deps/openssl/config/archs/aix64-gcc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/aix64-gcc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: aix64-gcc" -#define DATE "built on: Tue Apr 3 00:38:11 2018" +#define DATE "built on: Tue Aug 14 23:12:59 2018" diff --git a/deps/openssl/config/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h index d2aa62353593..123e7f66ed27 100644 --- a/deps/openssl/config/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/aix64-gcc/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/aix64-gcc/no-asm/openssl.gypi b/deps/openssl/config/archs/aix64-gcc/no-asm/openssl.gypi index 25974f0d08fc..45566673058c 100644 --- a/deps/openssl/config/archs/aix64-gcc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/aix64-gcc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/configdata.pm b/deps/openssl/config/archs/darwin-i386-cc/asm/configdata.pm index 0f822647dfce..5b271b6b96bd 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/configdata.pm +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "darwin-i386-cc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3946,6 +3962,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6272,6 +6294,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7271,6 +7299,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7465,10 +7497,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7624,6 +7669,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7664,7 +7710,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8046,6 +8095,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8166,9 +8218,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9165,6 +9226,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10637,6 +10702,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11166,6 +11235,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11534,6 +11604,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12539,6 +12610,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12888,6 +12968,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12896,6 +12984,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bf/bf-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bf/bf-586.s index a7f782d965f3..bf0238473798 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bf/bf-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bf/bf-586.s @@ -11,7 +11,7 @@ L_BF_encrypt_begin: movl 16(%esp),%ebp pushl %esi pushl %edi - # Load the 2 words + # Load the 2 words movl (%ebx),%edi movl 4(%ebx),%esi xorl %eax,%eax @@ -19,7 +19,7 @@ L_BF_encrypt_begin: xorl %ecx,%ecx xorl %ebx,%edi - # Round 0 + # Round 0 movl 4(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -39,7 +39,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 1 + # Round 1 movl 8(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -59,7 +59,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 2 + # Round 2 movl 12(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -79,7 +79,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 3 + # Round 3 movl 16(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -99,7 +99,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 4 + # Round 4 movl 20(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -119,7 +119,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 5 + # Round 5 movl 24(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -139,7 +139,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 6 + # Round 6 movl 28(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -159,7 +159,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 7 + # Round 7 movl 32(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -179,7 +179,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 8 + # Round 8 movl 36(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -199,7 +199,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 9 + # Round 9 movl 40(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -219,7 +219,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 10 + # Round 10 movl 44(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -239,7 +239,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 11 + # Round 11 movl 48(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -259,7 +259,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 12 + # Round 12 movl 52(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -279,7 +279,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 13 + # Round 13 movl 56(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -299,7 +299,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 14 + # Round 14 movl 60(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -319,7 +319,7 @@ L_BF_encrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 15 + # Round 15 movl 64(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -336,7 +336,7 @@ L_BF_encrypt_begin: xorl %eax,%ebx movl 3144(%ebp,%edx,4),%edx addl %edx,%ebx - # Load parameter 0 (16) enc=1 + # Load parameter 0 (16) enc=1 movl 20(%esp),%eax xorl %ebx,%edi movl 68(%ebp),%edx @@ -359,7 +359,7 @@ L_BF_decrypt_begin: movl 16(%esp),%ebp pushl %esi pushl %edi - # Load the 2 words + # Load the 2 words movl (%ebx),%edi movl 4(%ebx),%esi xorl %eax,%eax @@ -367,7 +367,7 @@ L_BF_decrypt_begin: xorl %ecx,%ecx xorl %ebx,%edi - # Round 16 + # Round 16 movl 64(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -387,7 +387,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 15 + # Round 15 movl 60(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -407,7 +407,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 14 + # Round 14 movl 56(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -427,7 +427,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 13 + # Round 13 movl 52(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -447,7 +447,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 12 + # Round 12 movl 48(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -467,7 +467,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 11 + # Round 11 movl 44(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -487,7 +487,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 10 + # Round 10 movl 40(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -507,7 +507,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 9 + # Round 9 movl 36(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -527,7 +527,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 8 + # Round 8 movl 32(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -547,7 +547,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 7 + # Round 7 movl 28(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -567,7 +567,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 6 + # Round 6 movl 24(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -587,7 +587,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 5 + # Round 5 movl 20(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -607,7 +607,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 4 + # Round 4 movl 16(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -627,7 +627,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 3 + # Round 3 movl 12(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -647,7 +647,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%edi - # Round 2 + # Round 2 movl 8(%ebp),%edx movl %edi,%ebx xorl %edx,%esi @@ -667,7 +667,7 @@ L_BF_decrypt_begin: xorl %eax,%eax xorl %ebx,%esi - # Round 1 + # Round 1 movl 4(%ebp),%edx movl %esi,%ebx xorl %edx,%edi @@ -684,7 +684,7 @@ L_BF_decrypt_begin: xorl %eax,%ebx movl 3144(%ebp,%edx,4),%edx addl %edx,%ebx - # Load parameter 0 (1) enc=0 + # Load parameter 0 (1) enc=0 movl 20(%esp),%eax xorl %ebx,%edi movl (%ebp),%edx @@ -706,7 +706,7 @@ L_BF_cbc_encrypt_begin: pushl %esi pushl %edi movl 28(%esp),%ebp - # getting iv ptr from parameter 4 + # getting iv ptr from parameter 4 movl 36(%esp),%ebx movl (%ebx),%esi movl 4(%ebx),%edi @@ -717,9 +717,9 @@ L_BF_cbc_encrypt_begin: movl %esp,%ebx movl 36(%esp),%esi movl 40(%esp),%edi - # getting encrypt flag from parameter 5 + # getting encrypt flag from parameter 5 movl 56(%esp),%ecx - # get and push parameter 3 + # get and push parameter 3 movl 48(%esp),%eax pushl %eax pushl %ebx diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/bn-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/bn-586.s index 11f7e704c0a0..7e6ccce48743 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/bn-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/bn-586.s @@ -115,7 +115,7 @@ L001maw_non_sse2: jz L006maw_finish .align 4,0x90 L007maw_loop: - # Round 0 + # Round 0 movl (%ebx),%eax mull %ebp addl %esi,%eax @@ -124,7 +124,7 @@ L007maw_loop: adcl $0,%edx movl %eax,(%edi) movl %edx,%esi - # Round 4 + # Round 4 movl 4(%ebx),%eax mull %ebp addl %esi,%eax @@ -133,7 +133,7 @@ L007maw_loop: adcl $0,%edx movl %eax,4(%edi) movl %edx,%esi - # Round 8 + # Round 8 movl 8(%ebx),%eax mull %ebp addl %esi,%eax @@ -142,7 +142,7 @@ L007maw_loop: adcl $0,%edx movl %eax,8(%edi) movl %edx,%esi - # Round 12 + # Round 12 movl 12(%ebx),%eax mull %ebp addl %esi,%eax @@ -151,7 +151,7 @@ L007maw_loop: adcl $0,%edx movl %eax,12(%edi) movl %edx,%esi - # Round 16 + # Round 16 movl 16(%ebx),%eax mull %ebp addl %esi,%eax @@ -160,7 +160,7 @@ L007maw_loop: adcl $0,%edx movl %eax,16(%edi) movl %edx,%esi - # Round 20 + # Round 20 movl 20(%ebx),%eax mull %ebp addl %esi,%eax @@ -169,7 +169,7 @@ L007maw_loop: adcl $0,%edx movl %eax,20(%edi) movl %edx,%esi - # Round 24 + # Round 24 movl 24(%ebx),%eax mull %ebp addl %esi,%eax @@ -178,7 +178,7 @@ L007maw_loop: adcl $0,%edx movl %eax,24(%edi) movl %edx,%esi - # Round 28 + # Round 28 movl 28(%ebx),%eax mull %ebp addl %esi,%eax @@ -198,7 +198,7 @@ L006maw_finish: jnz L008maw_finish2 jmp L009maw_end L008maw_finish2: - # Tail Round 0 + # Tail Round 0 movl (%ebx),%eax mull %ebp addl %esi,%eax @@ -209,7 +209,7 @@ L008maw_finish2: movl %eax,(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 1 + # Tail Round 1 movl 4(%ebx),%eax mull %ebp addl %esi,%eax @@ -220,7 +220,7 @@ L008maw_finish2: movl %eax,4(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 2 + # Tail Round 2 movl 8(%ebx),%eax mull %ebp addl %esi,%eax @@ -231,7 +231,7 @@ L008maw_finish2: movl %eax,8(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 3 + # Tail Round 3 movl 12(%ebx),%eax mull %ebp addl %esi,%eax @@ -242,7 +242,7 @@ L008maw_finish2: movl %eax,12(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 4 + # Tail Round 4 movl 16(%ebx),%eax mull %ebp addl %esi,%eax @@ -253,7 +253,7 @@ L008maw_finish2: movl %eax,16(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 5 + # Tail Round 5 movl 20(%ebx),%eax mull %ebp addl %esi,%eax @@ -264,7 +264,7 @@ L008maw_finish2: movl %eax,20(%edi) movl %edx,%esi jz L009maw_end - # Tail Round 6 + # Tail Round 6 movl 24(%ebx),%eax mull %ebp addl %esi,%eax @@ -325,56 +325,56 @@ L011mw_non_sse2: andl $4294967288,%ebp jz L013mw_finish L014mw_loop: - # Round 0 + # Round 0 movl (%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,(%edi) movl %edx,%esi - # Round 4 + # Round 4 movl 4(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,4(%edi) movl %edx,%esi - # Round 8 + # Round 8 movl 8(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,8(%edi) movl %edx,%esi - # Round 12 + # Round 12 movl 12(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,12(%edi) movl %edx,%esi - # Round 16 + # Round 16 movl 16(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,16(%edi) movl %edx,%esi - # Round 20 + # Round 20 movl 20(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,20(%edi) movl %edx,%esi - # Round 24 + # Round 24 movl 24(%ebx),%eax mull %ecx addl %esi,%eax adcl $0,%edx movl %eax,24(%edi) movl %edx,%esi - # Round 28 + # Round 28 movl 28(%ebx),%eax mull %ecx addl %esi,%eax @@ -393,7 +393,7 @@ L013mw_finish: jnz L015mw_finish2 jmp L016mw_end L015mw_finish2: - # Tail Round 0 + # Tail Round 0 movl (%ebx),%eax mull %ecx addl %esi,%eax @@ -402,7 +402,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 1 + # Tail Round 1 movl 4(%ebx),%eax mull %ecx addl %esi,%eax @@ -411,7 +411,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 2 + # Tail Round 2 movl 8(%ebx),%eax mull %ecx addl %esi,%eax @@ -420,7 +420,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 3 + # Tail Round 3 movl 12(%ebx),%eax mull %ecx addl %esi,%eax @@ -429,7 +429,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 4 + # Tail Round 4 movl 16(%ebx),%eax mull %ecx addl %esi,%eax @@ -438,7 +438,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 5 + # Tail Round 5 movl 20(%ebx),%eax mull %ecx addl %esi,%eax @@ -447,7 +447,7 @@ L015mw_finish2: movl %edx,%esi decl %ebp jz L016mw_end - # Tail Round 6 + # Tail Round 6 movl 24(%ebx),%eax mull %ecx addl %esi,%eax @@ -498,42 +498,42 @@ L018sqr_non_sse2: andl $4294967288,%ebx jz L020sw_finish L021sw_loop: - # Round 0 + # Round 0 movl (%edi),%eax mull %eax movl %eax,(%esi) movl %edx,4(%esi) - # Round 4 + # Round 4 movl 4(%edi),%eax mull %eax movl %eax,8(%esi) movl %edx,12(%esi) - # Round 8 + # Round 8 movl 8(%edi),%eax mull %eax movl %eax,16(%esi) movl %edx,20(%esi) - # Round 12 + # Round 12 movl 12(%edi),%eax mull %eax movl %eax,24(%esi) movl %edx,28(%esi) - # Round 16 + # Round 16 movl 16(%edi),%eax mull %eax movl %eax,32(%esi) movl %edx,36(%esi) - # Round 20 + # Round 20 movl 20(%edi),%eax mull %eax movl %eax,40(%esi) movl %edx,44(%esi) - # Round 24 + # Round 24 movl 24(%edi),%eax mull %eax movl %eax,48(%esi) movl %edx,52(%esi) - # Round 28 + # Round 28 movl 28(%edi),%eax mull %eax movl %eax,56(%esi) @@ -547,49 +547,49 @@ L020sw_finish: movl 28(%esp),%ebx andl $7,%ebx jz L022sw_end - # Tail Round 0 + # Tail Round 0 movl (%edi),%eax mull %eax movl %eax,(%esi) decl %ebx movl %edx,4(%esi) jz L022sw_end - # Tail Round 1 + # Tail Round 1 movl 4(%edi),%eax mull %eax movl %eax,8(%esi) decl %ebx movl %edx,12(%esi) jz L022sw_end - # Tail Round 2 + # Tail Round 2 movl 8(%edi),%eax mull %eax movl %eax,16(%esi) decl %ebx movl %edx,20(%esi) jz L022sw_end - # Tail Round 3 + # Tail Round 3 movl 12(%edi),%eax mull %eax movl %eax,24(%esi) decl %ebx movl %edx,28(%esi) jz L022sw_end - # Tail Round 4 + # Tail Round 4 movl 16(%edi),%eax mull %eax movl %eax,32(%esi) decl %ebx movl %edx,36(%esi) jz L022sw_end - # Tail Round 5 + # Tail Round 5 movl 20(%edi),%eax mull %eax movl %eax,40(%esi) decl %ebx movl %edx,44(%esi) jz L022sw_end - # Tail Round 6 + # Tail Round 6 movl 24(%edi),%eax mull %eax movl %eax,48(%esi) @@ -626,7 +626,7 @@ L_bn_add_words_begin: andl $4294967288,%ebp jz L023aw_finish L024aw_loop: - # Round 0 + # Round 0 movl (%esi),%ecx movl (%edi),%edx addl %eax,%ecx @@ -635,7 +635,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,(%ebx) - # Round 1 + # Round 1 movl 4(%esi),%ecx movl 4(%edi),%edx addl %eax,%ecx @@ -644,7 +644,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,4(%ebx) - # Round 2 + # Round 2 movl 8(%esi),%ecx movl 8(%edi),%edx addl %eax,%ecx @@ -653,7 +653,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,8(%ebx) - # Round 3 + # Round 3 movl 12(%esi),%ecx movl 12(%edi),%edx addl %eax,%ecx @@ -662,7 +662,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,12(%ebx) - # Round 4 + # Round 4 movl 16(%esi),%ecx movl 16(%edi),%edx addl %eax,%ecx @@ -671,7 +671,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,16(%ebx) - # Round 5 + # Round 5 movl 20(%esi),%ecx movl 20(%edi),%edx addl %eax,%ecx @@ -680,7 +680,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,20(%ebx) - # Round 6 + # Round 6 movl 24(%esi),%ecx movl 24(%edi),%edx addl %eax,%ecx @@ -689,7 +689,7 @@ L024aw_loop: addl %edx,%ecx adcl $0,%eax movl %ecx,24(%ebx) - # Round 7 + # Round 7 movl 28(%esi),%ecx movl 28(%edi),%edx addl %eax,%ecx @@ -708,7 +708,7 @@ L023aw_finish: movl 32(%esp),%ebp andl $7,%ebp jz L025aw_end - # Tail Round 0 + # Tail Round 0 movl (%esi),%ecx movl (%edi),%edx addl %eax,%ecx @@ -719,7 +719,7 @@ L023aw_finish: decl %ebp movl %ecx,(%ebx) jz L025aw_end - # Tail Round 1 + # Tail Round 1 movl 4(%esi),%ecx movl 4(%edi),%edx addl %eax,%ecx @@ -730,7 +730,7 @@ L023aw_finish: decl %ebp movl %ecx,4(%ebx) jz L025aw_end - # Tail Round 2 + # Tail Round 2 movl 8(%esi),%ecx movl 8(%edi),%edx addl %eax,%ecx @@ -741,7 +741,7 @@ L023aw_finish: decl %ebp movl %ecx,8(%ebx) jz L025aw_end - # Tail Round 3 + # Tail Round 3 movl 12(%esi),%ecx movl 12(%edi),%edx addl %eax,%ecx @@ -752,7 +752,7 @@ L023aw_finish: decl %ebp movl %ecx,12(%ebx) jz L025aw_end - # Tail Round 4 + # Tail Round 4 movl 16(%esi),%ecx movl 16(%edi),%edx addl %eax,%ecx @@ -763,7 +763,7 @@ L023aw_finish: decl %ebp movl %ecx,16(%ebx) jz L025aw_end - # Tail Round 5 + # Tail Round 5 movl 20(%esi),%ecx movl 20(%edi),%edx addl %eax,%ecx @@ -774,7 +774,7 @@ L023aw_finish: decl %ebp movl %ecx,20(%ebx) jz L025aw_end - # Tail Round 6 + # Tail Round 6 movl 24(%esi),%ecx movl 24(%edi),%edx addl %eax,%ecx @@ -806,7 +806,7 @@ L_bn_sub_words_begin: andl $4294967288,%ebp jz L026aw_finish L027aw_loop: - # Round 0 + # Round 0 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -815,7 +815,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,(%ebx) - # Round 1 + # Round 1 movl 4(%esi),%ecx movl 4(%edi),%edx subl %eax,%ecx @@ -824,7 +824,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,4(%ebx) - # Round 2 + # Round 2 movl 8(%esi),%ecx movl 8(%edi),%edx subl %eax,%ecx @@ -833,7 +833,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,8(%ebx) - # Round 3 + # Round 3 movl 12(%esi),%ecx movl 12(%edi),%edx subl %eax,%ecx @@ -842,7 +842,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,12(%ebx) - # Round 4 + # Round 4 movl 16(%esi),%ecx movl 16(%edi),%edx subl %eax,%ecx @@ -851,7 +851,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,16(%ebx) - # Round 5 + # Round 5 movl 20(%esi),%ecx movl 20(%edi),%edx subl %eax,%ecx @@ -860,7 +860,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,20(%ebx) - # Round 6 + # Round 6 movl 24(%esi),%ecx movl 24(%edi),%edx subl %eax,%ecx @@ -869,7 +869,7 @@ L027aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,24(%ebx) - # Round 7 + # Round 7 movl 28(%esi),%ecx movl 28(%edi),%edx subl %eax,%ecx @@ -888,7 +888,7 @@ L026aw_finish: movl 32(%esp),%ebp andl $7,%ebp jz L028aw_end - # Tail Round 0 + # Tail Round 0 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -899,7 +899,7 @@ L026aw_finish: decl %ebp movl %ecx,(%ebx) jz L028aw_end - # Tail Round 1 + # Tail Round 1 movl 4(%esi),%ecx movl 4(%edi),%edx subl %eax,%ecx @@ -910,7 +910,7 @@ L026aw_finish: decl %ebp movl %ecx,4(%ebx) jz L028aw_end - # Tail Round 2 + # Tail Round 2 movl 8(%esi),%ecx movl 8(%edi),%edx subl %eax,%ecx @@ -921,7 +921,7 @@ L026aw_finish: decl %ebp movl %ecx,8(%ebx) jz L028aw_end - # Tail Round 3 + # Tail Round 3 movl 12(%esi),%ecx movl 12(%edi),%edx subl %eax,%ecx @@ -932,7 +932,7 @@ L026aw_finish: decl %ebp movl %ecx,12(%ebx) jz L028aw_end - # Tail Round 4 + # Tail Round 4 movl 16(%esi),%ecx movl 16(%edi),%edx subl %eax,%ecx @@ -943,7 +943,7 @@ L026aw_finish: decl %ebp movl %ecx,16(%ebx) jz L028aw_end - # Tail Round 5 + # Tail Round 5 movl 20(%esi),%ecx movl 20(%edi),%edx subl %eax,%ecx @@ -954,7 +954,7 @@ L026aw_finish: decl %ebp movl %ecx,20(%ebx) jz L028aw_end - # Tail Round 6 + # Tail Round 6 movl 24(%esi),%ecx movl 24(%edi),%edx subl %eax,%ecx @@ -986,7 +986,7 @@ L_bn_sub_part_words_begin: andl $4294967288,%ebp jz L029aw_finish L030aw_loop: - # Round 0 + # Round 0 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -995,7 +995,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,(%ebx) - # Round 1 + # Round 1 movl 4(%esi),%ecx movl 4(%edi),%edx subl %eax,%ecx @@ -1004,7 +1004,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,4(%ebx) - # Round 2 + # Round 2 movl 8(%esi),%ecx movl 8(%edi),%edx subl %eax,%ecx @@ -1013,7 +1013,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,8(%ebx) - # Round 3 + # Round 3 movl 12(%esi),%ecx movl 12(%edi),%edx subl %eax,%ecx @@ -1022,7 +1022,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,12(%ebx) - # Round 4 + # Round 4 movl 16(%esi),%ecx movl 16(%edi),%edx subl %eax,%ecx @@ -1031,7 +1031,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,16(%ebx) - # Round 5 + # Round 5 movl 20(%esi),%ecx movl 20(%edi),%edx subl %eax,%ecx @@ -1040,7 +1040,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,20(%ebx) - # Round 6 + # Round 6 movl 24(%esi),%ecx movl 24(%edi),%edx subl %eax,%ecx @@ -1049,7 +1049,7 @@ L030aw_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,24(%ebx) - # Round 7 + # Round 7 movl 28(%esi),%ecx movl 28(%edi),%edx subl %eax,%ecx @@ -1068,7 +1068,7 @@ L029aw_finish: movl 32(%esp),%ebp andl $7,%ebp jz L031aw_end - # Tail Round 0 + # Tail Round 0 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1082,7 +1082,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 1 + # Tail Round 1 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1096,7 +1096,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 2 + # Tail Round 2 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1110,7 +1110,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 3 + # Tail Round 3 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1124,7 +1124,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 4 + # Tail Round 4 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1138,7 +1138,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 5 + # Tail Round 5 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1152,7 +1152,7 @@ L029aw_finish: addl $4,%ebx decl %ebp jz L031aw_end - # Tail Round 6 + # Tail Round 6 movl (%esi),%ecx movl (%edi),%edx subl %eax,%ecx @@ -1171,14 +1171,14 @@ L031aw_end: cmpl $0,%ebp je L032pw_end jge L033pw_pos - # pw_neg + # pw_neg movl $0,%edx subl %ebp,%edx movl %edx,%ebp andl $4294967288,%ebp jz L034pw_neg_finish L035pw_neg_loop: - # dl<0 Round 0 + # dl<0 Round 0 movl $0,%ecx movl (%edi),%edx subl %eax,%ecx @@ -1187,7 +1187,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,(%ebx) - # dl<0 Round 1 + # dl<0 Round 1 movl $0,%ecx movl 4(%edi),%edx subl %eax,%ecx @@ -1196,7 +1196,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,4(%ebx) - # dl<0 Round 2 + # dl<0 Round 2 movl $0,%ecx movl 8(%edi),%edx subl %eax,%ecx @@ -1205,7 +1205,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,8(%ebx) - # dl<0 Round 3 + # dl<0 Round 3 movl $0,%ecx movl 12(%edi),%edx subl %eax,%ecx @@ -1214,7 +1214,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,12(%ebx) - # dl<0 Round 4 + # dl<0 Round 4 movl $0,%ecx movl 16(%edi),%edx subl %eax,%ecx @@ -1223,7 +1223,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,16(%ebx) - # dl<0 Round 5 + # dl<0 Round 5 movl $0,%ecx movl 20(%edi),%edx subl %eax,%ecx @@ -1232,7 +1232,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,20(%ebx) - # dl<0 Round 6 + # dl<0 Round 6 movl $0,%ecx movl 24(%edi),%edx subl %eax,%ecx @@ -1241,7 +1241,7 @@ L035pw_neg_loop: subl %edx,%ecx adcl $0,%eax movl %ecx,24(%ebx) - # dl<0 Round 7 + # dl<0 Round 7 movl $0,%ecx movl 28(%edi),%edx subl %eax,%ecx @@ -1261,7 +1261,7 @@ L034pw_neg_finish: subl %edx,%ebp andl $7,%ebp jz L032pw_end - # dl<0 Tail Round 0 + # dl<0 Tail Round 0 movl $0,%ecx movl (%edi),%edx subl %eax,%ecx @@ -1272,7 +1272,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,(%ebx) jz L032pw_end - # dl<0 Tail Round 1 + # dl<0 Tail Round 1 movl $0,%ecx movl 4(%edi),%edx subl %eax,%ecx @@ -1283,7 +1283,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,4(%ebx) jz L032pw_end - # dl<0 Tail Round 2 + # dl<0 Tail Round 2 movl $0,%ecx movl 8(%edi),%edx subl %eax,%ecx @@ -1294,7 +1294,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,8(%ebx) jz L032pw_end - # dl<0 Tail Round 3 + # dl<0 Tail Round 3 movl $0,%ecx movl 12(%edi),%edx subl %eax,%ecx @@ -1305,7 +1305,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,12(%ebx) jz L032pw_end - # dl<0 Tail Round 4 + # dl<0 Tail Round 4 movl $0,%ecx movl 16(%edi),%edx subl %eax,%ecx @@ -1316,7 +1316,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,16(%ebx) jz L032pw_end - # dl<0 Tail Round 5 + # dl<0 Tail Round 5 movl $0,%ecx movl 20(%edi),%edx subl %eax,%ecx @@ -1327,7 +1327,7 @@ L034pw_neg_finish: decl %ebp movl %ecx,20(%ebx) jz L032pw_end - # dl<0 Tail Round 6 + # dl<0 Tail Round 6 movl $0,%ecx movl 24(%edi),%edx subl %eax,%ecx @@ -1341,42 +1341,42 @@ L033pw_pos: andl $4294967288,%ebp jz L036pw_pos_finish L037pw_pos_loop: - # dl>0 Round 0 + # dl>0 Round 0 movl (%esi),%ecx subl %eax,%ecx movl %ecx,(%ebx) jnc L038pw_nc0 - # dl>0 Round 1 + # dl>0 Round 1 movl 4(%esi),%ecx subl %eax,%ecx movl %ecx,4(%ebx) jnc L039pw_nc1 - # dl>0 Round 2 + # dl>0 Round 2 movl 8(%esi),%ecx subl %eax,%ecx movl %ecx,8(%ebx) jnc L040pw_nc2 - # dl>0 Round 3 + # dl>0 Round 3 movl 12(%esi),%ecx subl %eax,%ecx movl %ecx,12(%ebx) jnc L041pw_nc3 - # dl>0 Round 4 + # dl>0 Round 4 movl 16(%esi),%ecx subl %eax,%ecx movl %ecx,16(%ebx) jnc L042pw_nc4 - # dl>0 Round 5 + # dl>0 Round 5 movl 20(%esi),%ecx subl %eax,%ecx movl %ecx,20(%ebx) jnc L043pw_nc5 - # dl>0 Round 6 + # dl>0 Round 6 movl 24(%esi),%ecx subl %eax,%ecx movl %ecx,24(%ebx) jnc L044pw_nc6 - # dl>0 Round 7 + # dl>0 Round 7 movl 28(%esi),%ecx subl %eax,%ecx movl %ecx,28(%ebx) @@ -1390,49 +1390,49 @@ L036pw_pos_finish: movl 36(%esp),%ebp andl $7,%ebp jz L032pw_end - # dl>0 Tail Round 0 + # dl>0 Tail Round 0 movl (%esi),%ecx subl %eax,%ecx movl %ecx,(%ebx) jnc L046pw_tail_nc0 decl %ebp jz L032pw_end - # dl>0 Tail Round 1 + # dl>0 Tail Round 1 movl 4(%esi),%ecx subl %eax,%ecx movl %ecx,4(%ebx) jnc L047pw_tail_nc1 decl %ebp jz L032pw_end - # dl>0 Tail Round 2 + # dl>0 Tail Round 2 movl 8(%esi),%ecx subl %eax,%ecx movl %ecx,8(%ebx) jnc L048pw_tail_nc2 decl %ebp jz L032pw_end - # dl>0 Tail Round 3 + # dl>0 Tail Round 3 movl 12(%esi),%ecx subl %eax,%ecx movl %ecx,12(%ebx) jnc L049pw_tail_nc3 decl %ebp jz L032pw_end - # dl>0 Tail Round 4 + # dl>0 Tail Round 4 movl 16(%esi),%ecx subl %eax,%ecx movl %ecx,16(%ebx) jnc L050pw_tail_nc4 decl %ebp jz L032pw_end - # dl>0 Tail Round 5 + # dl>0 Tail Round 5 movl 20(%esi),%ecx subl %eax,%ecx movl %ecx,20(%ebx) jnc L051pw_tail_nc5 decl %ebp jz L032pw_end - # dl>0 Tail Round 6 + # dl>0 Tail Round 6 movl 24(%esi),%ecx subl %eax,%ecx movl %ecx,24(%ebx) diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/co-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/co-586.s index 3e49f0a86744..d82fdcbc7d6b 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/co-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/co-586.s @@ -14,9 +14,9 @@ L_bn_mul_comba8_begin: movl (%esi),%eax xorl %ecx,%ecx movl (%edi),%edx - # ################## Calculate word 0 + # ################## Calculate word 0 xorl %ebp,%ebp - # mul a[0]*b[0] + # mul a[0]*b[0] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -25,17 +25,17 @@ L_bn_mul_comba8_begin: adcl $0,%ebp movl %ebx,(%eax) movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 + # saved r[0] + # ################## Calculate word 1 xorl %ebx,%ebx - # mul a[1]*b[0] + # mul a[1]*b[0] mull %edx addl %eax,%ecx movl (%esi),%eax adcl %edx,%ebp movl 4(%edi),%edx adcl $0,%ebx - # mul a[0]*b[1] + # mul a[0]*b[1] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -44,24 +44,24 @@ L_bn_mul_comba8_begin: adcl $0,%ebx movl %ecx,4(%eax) movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 + # saved r[1] + # ################## Calculate word 2 xorl %ecx,%ecx - # mul a[2]*b[0] + # mul a[2]*b[0] mull %edx addl %eax,%ebp movl 4(%esi),%eax adcl %edx,%ebx movl 4(%edi),%edx adcl $0,%ecx - # mul a[1]*b[1] + # mul a[1]*b[1] mull %edx addl %eax,%ebp movl (%esi),%eax adcl %edx,%ebx movl 8(%edi),%edx adcl $0,%ecx - # mul a[0]*b[2] + # mul a[0]*b[2] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -70,31 +70,31 @@ L_bn_mul_comba8_begin: adcl $0,%ecx movl %ebp,8(%eax) movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 + # saved r[2] + # ################## Calculate word 3 xorl %ebp,%ebp - # mul a[3]*b[0] + # mul a[3]*b[0] mull %edx addl %eax,%ebx movl 8(%esi),%eax adcl %edx,%ecx movl 4(%edi),%edx adcl $0,%ebp - # mul a[2]*b[1] + # mul a[2]*b[1] mull %edx addl %eax,%ebx movl 4(%esi),%eax adcl %edx,%ecx movl 8(%edi),%edx adcl $0,%ebp - # mul a[1]*b[2] + # mul a[1]*b[2] mull %edx addl %eax,%ebx movl (%esi),%eax adcl %edx,%ecx movl 12(%edi),%edx adcl $0,%ebp - # mul a[0]*b[3] + # mul a[0]*b[3] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -103,38 +103,38 @@ L_bn_mul_comba8_begin: adcl $0,%ebp movl %ebx,12(%eax) movl 16(%esi),%eax - # saved r[3] - # ################## Calculate word 4 + # saved r[3] + # ################## Calculate word 4 xorl %ebx,%ebx - # mul a[4]*b[0] + # mul a[4]*b[0] mull %edx addl %eax,%ecx movl 12(%esi),%eax adcl %edx,%ebp movl 4(%edi),%edx adcl $0,%ebx - # mul a[3]*b[1] + # mul a[3]*b[1] mull %edx addl %eax,%ecx movl 8(%esi),%eax adcl %edx,%ebp movl 8(%edi),%edx adcl $0,%ebx - # mul a[2]*b[2] + # mul a[2]*b[2] mull %edx addl %eax,%ecx movl 4(%esi),%eax adcl %edx,%ebp movl 12(%edi),%edx adcl $0,%ebx - # mul a[1]*b[3] + # mul a[1]*b[3] mull %edx addl %eax,%ecx movl (%esi),%eax adcl %edx,%ebp movl 16(%edi),%edx adcl $0,%ebx - # mul a[0]*b[4] + # mul a[0]*b[4] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -143,45 +143,45 @@ L_bn_mul_comba8_begin: adcl $0,%ebx movl %ecx,16(%eax) movl 20(%esi),%eax - # saved r[4] - # ################## Calculate word 5 + # saved r[4] + # ################## Calculate word 5 xorl %ecx,%ecx - # mul a[5]*b[0] + # mul a[5]*b[0] mull %edx addl %eax,%ebp movl 16(%esi),%eax adcl %edx,%ebx movl 4(%edi),%edx adcl $0,%ecx - # mul a[4]*b[1] + # mul a[4]*b[1] mull %edx addl %eax,%ebp movl 12(%esi),%eax adcl %edx,%ebx movl 8(%edi),%edx adcl $0,%ecx - # mul a[3]*b[2] + # mul a[3]*b[2] mull %edx addl %eax,%ebp movl 8(%esi),%eax adcl %edx,%ebx movl 12(%edi),%edx adcl $0,%ecx - # mul a[2]*b[3] + # mul a[2]*b[3] mull %edx addl %eax,%ebp movl 4(%esi),%eax adcl %edx,%ebx movl 16(%edi),%edx adcl $0,%ecx - # mul a[1]*b[4] + # mul a[1]*b[4] mull %edx addl %eax,%ebp movl (%esi),%eax adcl %edx,%ebx movl 20(%edi),%edx adcl $0,%ecx - # mul a[0]*b[5] + # mul a[0]*b[5] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -190,52 +190,52 @@ L_bn_mul_comba8_begin: adcl $0,%ecx movl %ebp,20(%eax) movl 24(%esi),%eax - # saved r[5] - # ################## Calculate word 6 + # saved r[5] + # ################## Calculate word 6 xorl %ebp,%ebp - # mul a[6]*b[0] + # mul a[6]*b[0] mull %edx addl %eax,%ebx movl 20(%esi),%eax adcl %edx,%ecx movl 4(%edi),%edx adcl $0,%ebp - # mul a[5]*b[1] + # mul a[5]*b[1] mull %edx addl %eax,%ebx movl 16(%esi),%eax adcl %edx,%ecx movl 8(%edi),%edx adcl $0,%ebp - # mul a[4]*b[2] + # mul a[4]*b[2] mull %edx addl %eax,%ebx movl 12(%esi),%eax adcl %edx,%ecx movl 12(%edi),%edx adcl $0,%ebp - # mul a[3]*b[3] + # mul a[3]*b[3] mull %edx addl %eax,%ebx movl 8(%esi),%eax adcl %edx,%ecx movl 16(%edi),%edx adcl $0,%ebp - # mul a[2]*b[4] + # mul a[2]*b[4] mull %edx addl %eax,%ebx movl 4(%esi),%eax adcl %edx,%ecx movl 20(%edi),%edx adcl $0,%ebp - # mul a[1]*b[5] + # mul a[1]*b[5] mull %edx addl %eax,%ebx movl (%esi),%eax adcl %edx,%ecx movl 24(%edi),%edx adcl $0,%ebp - # mul a[0]*b[6] + # mul a[0]*b[6] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -244,59 +244,59 @@ L_bn_mul_comba8_begin: adcl $0,%ebp movl %ebx,24(%eax) movl 28(%esi),%eax - # saved r[6] - # ################## Calculate word 7 + # saved r[6] + # ################## Calculate word 7 xorl %ebx,%ebx - # mul a[7]*b[0] + # mul a[7]*b[0] mull %edx addl %eax,%ecx movl 24(%esi),%eax adcl %edx,%ebp movl 4(%edi),%edx adcl $0,%ebx - # mul a[6]*b[1] + # mul a[6]*b[1] mull %edx addl %eax,%ecx movl 20(%esi),%eax adcl %edx,%ebp movl 8(%edi),%edx adcl $0,%ebx - # mul a[5]*b[2] + # mul a[5]*b[2] mull %edx addl %eax,%ecx movl 16(%esi),%eax adcl %edx,%ebp movl 12(%edi),%edx adcl $0,%ebx - # mul a[4]*b[3] + # mul a[4]*b[3] mull %edx addl %eax,%ecx movl 12(%esi),%eax adcl %edx,%ebp movl 16(%edi),%edx adcl $0,%ebx - # mul a[3]*b[4] + # mul a[3]*b[4] mull %edx addl %eax,%ecx movl 8(%esi),%eax adcl %edx,%ebp movl 20(%edi),%edx adcl $0,%ebx - # mul a[2]*b[5] + # mul a[2]*b[5] mull %edx addl %eax,%ecx movl 4(%esi),%eax adcl %edx,%ebp movl 24(%edi),%edx adcl $0,%ebx - # mul a[1]*b[6] + # mul a[1]*b[6] mull %edx addl %eax,%ecx movl (%esi),%eax adcl %edx,%ebp movl 28(%edi),%edx adcl $0,%ebx - # mul a[0]*b[7] + # mul a[0]*b[7] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -305,52 +305,52 @@ L_bn_mul_comba8_begin: adcl $0,%ebx movl %ecx,28(%eax) movl 28(%esi),%eax - # saved r[7] - # ################## Calculate word 8 + # saved r[7] + # ################## Calculate word 8 xorl %ecx,%ecx - # mul a[7]*b[1] + # mul a[7]*b[1] mull %edx addl %eax,%ebp movl 24(%esi),%eax adcl %edx,%ebx movl 8(%edi),%edx adcl $0,%ecx - # mul a[6]*b[2] + # mul a[6]*b[2] mull %edx addl %eax,%ebp movl 20(%esi),%eax adcl %edx,%ebx movl 12(%edi),%edx adcl $0,%ecx - # mul a[5]*b[3] + # mul a[5]*b[3] mull %edx addl %eax,%ebp movl 16(%esi),%eax adcl %edx,%ebx movl 16(%edi),%edx adcl $0,%ecx - # mul a[4]*b[4] + # mul a[4]*b[4] mull %edx addl %eax,%ebp movl 12(%esi),%eax adcl %edx,%ebx movl 20(%edi),%edx adcl $0,%ecx - # mul a[3]*b[5] + # mul a[3]*b[5] mull %edx addl %eax,%ebp movl 8(%esi),%eax adcl %edx,%ebx movl 24(%edi),%edx adcl $0,%ecx - # mul a[2]*b[6] + # mul a[2]*b[6] mull %edx addl %eax,%ebp movl 4(%esi),%eax adcl %edx,%ebx movl 28(%edi),%edx adcl $0,%ecx - # mul a[1]*b[7] + # mul a[1]*b[7] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -359,45 +359,45 @@ L_bn_mul_comba8_begin: adcl $0,%ecx movl %ebp,32(%eax) movl 28(%esi),%eax - # saved r[8] - # ################## Calculate word 9 + # saved r[8] + # ################## Calculate word 9 xorl %ebp,%ebp - # mul a[7]*b[2] + # mul a[7]*b[2] mull %edx addl %eax,%ebx movl 24(%esi),%eax adcl %edx,%ecx movl 12(%edi),%edx adcl $0,%ebp - # mul a[6]*b[3] + # mul a[6]*b[3] mull %edx addl %eax,%ebx movl 20(%esi),%eax adcl %edx,%ecx movl 16(%edi),%edx adcl $0,%ebp - # mul a[5]*b[4] + # mul a[5]*b[4] mull %edx addl %eax,%ebx movl 16(%esi),%eax adcl %edx,%ecx movl 20(%edi),%edx adcl $0,%ebp - # mul a[4]*b[5] + # mul a[4]*b[5] mull %edx addl %eax,%ebx movl 12(%esi),%eax adcl %edx,%ecx movl 24(%edi),%edx adcl $0,%ebp - # mul a[3]*b[6] + # mul a[3]*b[6] mull %edx addl %eax,%ebx movl 8(%esi),%eax adcl %edx,%ecx movl 28(%edi),%edx adcl $0,%ebp - # mul a[2]*b[7] + # mul a[2]*b[7] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -406,38 +406,38 @@ L_bn_mul_comba8_begin: adcl $0,%ebp movl %ebx,36(%eax) movl 28(%esi),%eax - # saved r[9] - # ################## Calculate word 10 + # saved r[9] + # ################## Calculate word 10 xorl %ebx,%ebx - # mul a[7]*b[3] + # mul a[7]*b[3] mull %edx addl %eax,%ecx movl 24(%esi),%eax adcl %edx,%ebp movl 16(%edi),%edx adcl $0,%ebx - # mul a[6]*b[4] + # mul a[6]*b[4] mull %edx addl %eax,%ecx movl 20(%esi),%eax adcl %edx,%ebp movl 20(%edi),%edx adcl $0,%ebx - # mul a[5]*b[5] + # mul a[5]*b[5] mull %edx addl %eax,%ecx movl 16(%esi),%eax adcl %edx,%ebp movl 24(%edi),%edx adcl $0,%ebx - # mul a[4]*b[6] + # mul a[4]*b[6] mull %edx addl %eax,%ecx movl 12(%esi),%eax adcl %edx,%ebp movl 28(%edi),%edx adcl $0,%ebx - # mul a[3]*b[7] + # mul a[3]*b[7] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -446,31 +446,31 @@ L_bn_mul_comba8_begin: adcl $0,%ebx movl %ecx,40(%eax) movl 28(%esi),%eax - # saved r[10] - # ################## Calculate word 11 + # saved r[10] + # ################## Calculate word 11 xorl %ecx,%ecx - # mul a[7]*b[4] + # mul a[7]*b[4] mull %edx addl %eax,%ebp movl 24(%esi),%eax adcl %edx,%ebx movl 20(%edi),%edx adcl $0,%ecx - # mul a[6]*b[5] + # mul a[6]*b[5] mull %edx addl %eax,%ebp movl 20(%esi),%eax adcl %edx,%ebx movl 24(%edi),%edx adcl $0,%ecx - # mul a[5]*b[6] + # mul a[5]*b[6] mull %edx addl %eax,%ebp movl 16(%esi),%eax adcl %edx,%ebx movl 28(%edi),%edx adcl $0,%ecx - # mul a[4]*b[7] + # mul a[4]*b[7] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -479,24 +479,24 @@ L_bn_mul_comba8_begin: adcl $0,%ecx movl %ebp,44(%eax) movl 28(%esi),%eax - # saved r[11] - # ################## Calculate word 12 + # saved r[11] + # ################## Calculate word 12 xorl %ebp,%ebp - # mul a[7]*b[5] + # mul a[7]*b[5] mull %edx addl %eax,%ebx movl 24(%esi),%eax adcl %edx,%ecx movl 24(%edi),%edx adcl $0,%ebp - # mul a[6]*b[6] + # mul a[6]*b[6] mull %edx addl %eax,%ebx movl 20(%esi),%eax adcl %edx,%ecx movl 28(%edi),%edx adcl $0,%ebp - # mul a[5]*b[7] + # mul a[5]*b[7] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -505,17 +505,17 @@ L_bn_mul_comba8_begin: adcl $0,%ebp movl %ebx,48(%eax) movl 28(%esi),%eax - # saved r[12] - # ################## Calculate word 13 + # saved r[12] + # ################## Calculate word 13 xorl %ebx,%ebx - # mul a[7]*b[6] + # mul a[7]*b[6] mull %edx addl %eax,%ecx movl 24(%esi),%eax adcl %edx,%ebp movl 28(%edi),%edx adcl $0,%ebx - # mul a[6]*b[7] + # mul a[6]*b[7] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -524,18 +524,18 @@ L_bn_mul_comba8_begin: adcl $0,%ebx movl %ecx,52(%eax) movl 28(%esi),%eax - # saved r[13] - # ################## Calculate word 14 + # saved r[13] + # ################## Calculate word 14 xorl %ecx,%ecx - # mul a[7]*b[7] + # mul a[7]*b[7] mull %edx addl %eax,%ebp movl 20(%esp),%eax adcl %edx,%ebx adcl $0,%ecx movl %ebp,56(%eax) - # saved r[14] - # save r[15] + # saved r[14] + # save r[15] movl %ebx,60(%eax) popl %ebx popl %ebp @@ -556,9 +556,9 @@ L_bn_mul_comba4_begin: movl (%esi),%eax xorl %ecx,%ecx movl (%edi),%edx - # ################## Calculate word 0 + # ################## Calculate word 0 xorl %ebp,%ebp - # mul a[0]*b[0] + # mul a[0]*b[0] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -567,17 +567,17 @@ L_bn_mul_comba4_begin: adcl $0,%ebp movl %ebx,(%eax) movl 4(%esi),%eax - # saved r[0] - # ################## Calculate word 1 + # saved r[0] + # ################## Calculate word 1 xorl %ebx,%ebx - # mul a[1]*b[0] + # mul a[1]*b[0] mull %edx addl %eax,%ecx movl (%esi),%eax adcl %edx,%ebp movl 4(%edi),%edx adcl $0,%ebx - # mul a[0]*b[1] + # mul a[0]*b[1] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -586,24 +586,24 @@ L_bn_mul_comba4_begin: adcl $0,%ebx movl %ecx,4(%eax) movl 8(%esi),%eax - # saved r[1] - # ################## Calculate word 2 + # saved r[1] + # ################## Calculate word 2 xorl %ecx,%ecx - # mul a[2]*b[0] + # mul a[2]*b[0] mull %edx addl %eax,%ebp movl 4(%esi),%eax adcl %edx,%ebx movl 4(%edi),%edx adcl $0,%ecx - # mul a[1]*b[1] + # mul a[1]*b[1] mull %edx addl %eax,%ebp movl (%esi),%eax adcl %edx,%ebx movl 8(%edi),%edx adcl $0,%ecx - # mul a[0]*b[2] + # mul a[0]*b[2] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -612,31 +612,31 @@ L_bn_mul_comba4_begin: adcl $0,%ecx movl %ebp,8(%eax) movl 12(%esi),%eax - # saved r[2] - # ################## Calculate word 3 + # saved r[2] + # ################## Calculate word 3 xorl %ebp,%ebp - # mul a[3]*b[0] + # mul a[3]*b[0] mull %edx addl %eax,%ebx movl 8(%esi),%eax adcl %edx,%ecx movl 4(%edi),%edx adcl $0,%ebp - # mul a[2]*b[1] + # mul a[2]*b[1] mull %edx addl %eax,%ebx movl 4(%esi),%eax adcl %edx,%ecx movl 8(%edi),%edx adcl $0,%ebp - # mul a[1]*b[2] + # mul a[1]*b[2] mull %edx addl %eax,%ebx movl (%esi),%eax adcl %edx,%ecx movl 12(%edi),%edx adcl $0,%ebp - # mul a[0]*b[3] + # mul a[0]*b[3] mull %edx addl %eax,%ebx movl 20(%esp),%eax @@ -645,24 +645,24 @@ L_bn_mul_comba4_begin: adcl $0,%ebp movl %ebx,12(%eax) movl 12(%esi),%eax - # saved r[3] - # ################## Calculate word 4 + # saved r[3] + # ################## Calculate word 4 xorl %ebx,%ebx - # mul a[3]*b[1] + # mul a[3]*b[1] mull %edx addl %eax,%ecx movl 8(%esi),%eax adcl %edx,%ebp movl 8(%edi),%edx adcl $0,%ebx - # mul a[2]*b[2] + # mul a[2]*b[2] mull %edx addl %eax,%ecx movl 4(%esi),%eax adcl %edx,%ebp movl 12(%edi),%edx adcl $0,%ebx - # mul a[1]*b[3] + # mul a[1]*b[3] mull %edx addl %eax,%ecx movl 20(%esp),%eax @@ -671,17 +671,17 @@ L_bn_mul_comba4_begin: adcl $0,%ebx movl %ecx,16(%eax) movl 12(%esi),%eax - # saved r[4] - # ################## Calculate word 5 + # saved r[4] + # ################## Calculate word 5 xorl %ecx,%ecx - # mul a[3]*b[2] + # mul a[3]*b[2] mull %edx addl %eax,%ebp movl 8(%esi),%eax adcl %edx,%ebx movl 12(%edi),%edx adcl $0,%ecx - # mul a[2]*b[3] + # mul a[2]*b[3] mull %edx addl %eax,%ebp movl 20(%esp),%eax @@ -690,18 +690,18 @@ L_bn_mul_comba4_begin: adcl $0,%ecx movl %ebp,20(%eax) movl 12(%esi),%eax - # saved r[5] - # ################## Calculate word 6 + # saved r[5] + # ################## Calculate word 6 xorl %ebp,%ebp - # mul a[3]*b[3] + # mul a[3]*b[3] mull %edx addl %eax,%ebx movl 20(%esp),%eax adcl %edx,%ecx adcl $0,%ebp movl %ebx,24(%eax) - # saved r[6] - # save r[7] + # saved r[6] + # save r[7] movl %ecx,28(%eax) popl %ebx popl %ebp @@ -721,9 +721,9 @@ L_bn_sqr_comba8_begin: xorl %ebx,%ebx xorl %ecx,%ecx movl (%esi),%eax - # ############### Calculate word 0 + # ############### Calculate word 0 xorl %ebp,%ebp - # sqr a[0]*a[0] + # sqr a[0]*a[0] mull %eax addl %eax,%ebx adcl %edx,%ecx @@ -731,10 +731,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebp movl %ebx,(%edi) movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 + # saved r[0] + # ############### Calculate word 1 xorl %ebx,%ebx - # sqr a[1]*a[0] + # sqr a[1]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -745,10 +745,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebx movl %ecx,4(%edi) movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 + # saved r[1] + # ############### Calculate word 2 xorl %ecx,%ecx - # sqr a[2]*a[0] + # sqr a[2]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -757,7 +757,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ebx movl 4(%esi),%eax adcl $0,%ecx - # sqr a[1]*a[1] + # sqr a[1]*a[1] mull %eax addl %eax,%ebp adcl %edx,%ebx @@ -765,10 +765,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ecx movl %ebp,8(%edi) movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 + # saved r[2] + # ############### Calculate word 3 xorl %ebp,%ebp - # sqr a[3]*a[0] + # sqr a[3]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -778,7 +778,7 @@ L_bn_sqr_comba8_begin: movl 8(%esi),%eax adcl $0,%ebp movl 4(%esi),%edx - # sqr a[2]*a[1] + # sqr a[2]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -789,10 +789,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebp movl %ebx,12(%edi) movl (%esi),%edx - # saved r[3] - # ############### Calculate word 4 + # saved r[3] + # ############### Calculate word 4 xorl %ebx,%ebx - # sqr a[4]*a[0] + # sqr a[4]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -802,7 +802,7 @@ L_bn_sqr_comba8_begin: movl 12(%esi),%eax adcl $0,%ebx movl 4(%esi),%edx - # sqr a[3]*a[1] + # sqr a[3]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -811,7 +811,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ebp movl 8(%esi),%eax adcl $0,%ebx - # sqr a[2]*a[2] + # sqr a[2]*a[2] mull %eax addl %eax,%ecx adcl %edx,%ebp @@ -819,10 +819,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebx movl %ecx,16(%edi) movl 20(%esi),%eax - # saved r[4] - # ############### Calculate word 5 + # saved r[4] + # ############### Calculate word 5 xorl %ecx,%ecx - # sqr a[5]*a[0] + # sqr a[5]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -832,7 +832,7 @@ L_bn_sqr_comba8_begin: movl 16(%esi),%eax adcl $0,%ecx movl 4(%esi),%edx - # sqr a[4]*a[1] + # sqr a[4]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -842,7 +842,7 @@ L_bn_sqr_comba8_begin: movl 12(%esi),%eax adcl $0,%ecx movl 8(%esi),%edx - # sqr a[3]*a[2] + # sqr a[3]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -853,10 +853,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ecx movl %ebp,20(%edi) movl (%esi),%edx - # saved r[5] - # ############### Calculate word 6 + # saved r[5] + # ############### Calculate word 6 xorl %ebp,%ebp - # sqr a[6]*a[0] + # sqr a[6]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -866,7 +866,7 @@ L_bn_sqr_comba8_begin: movl 20(%esi),%eax adcl $0,%ebp movl 4(%esi),%edx - # sqr a[5]*a[1] + # sqr a[5]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -876,7 +876,7 @@ L_bn_sqr_comba8_begin: movl 16(%esi),%eax adcl $0,%ebp movl 8(%esi),%edx - # sqr a[4]*a[2] + # sqr a[4]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -885,7 +885,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ecx movl 12(%esi),%eax adcl $0,%ebp - # sqr a[3]*a[3] + # sqr a[3]*a[3] mull %eax addl %eax,%ebx adcl %edx,%ecx @@ -893,10 +893,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebp movl %ebx,24(%edi) movl 28(%esi),%eax - # saved r[6] - # ############### Calculate word 7 + # saved r[6] + # ############### Calculate word 7 xorl %ebx,%ebx - # sqr a[7]*a[0] + # sqr a[7]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -906,7 +906,7 @@ L_bn_sqr_comba8_begin: movl 24(%esi),%eax adcl $0,%ebx movl 4(%esi),%edx - # sqr a[6]*a[1] + # sqr a[6]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -916,7 +916,7 @@ L_bn_sqr_comba8_begin: movl 20(%esi),%eax adcl $0,%ebx movl 8(%esi),%edx - # sqr a[5]*a[2] + # sqr a[5]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -926,7 +926,7 @@ L_bn_sqr_comba8_begin: movl 16(%esi),%eax adcl $0,%ebx movl 12(%esi),%edx - # sqr a[4]*a[3] + # sqr a[4]*a[3] mull %edx addl %eax,%eax adcl %edx,%edx @@ -937,10 +937,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebx movl %ecx,28(%edi) movl 4(%esi),%edx - # saved r[7] - # ############### Calculate word 8 + # saved r[7] + # ############### Calculate word 8 xorl %ecx,%ecx - # sqr a[7]*a[1] + # sqr a[7]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -950,7 +950,7 @@ L_bn_sqr_comba8_begin: movl 24(%esi),%eax adcl $0,%ecx movl 8(%esi),%edx - # sqr a[6]*a[2] + # sqr a[6]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -960,7 +960,7 @@ L_bn_sqr_comba8_begin: movl 20(%esi),%eax adcl $0,%ecx movl 12(%esi),%edx - # sqr a[5]*a[3] + # sqr a[5]*a[3] mull %edx addl %eax,%eax adcl %edx,%edx @@ -969,7 +969,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ebx movl 16(%esi),%eax adcl $0,%ecx - # sqr a[4]*a[4] + # sqr a[4]*a[4] mull %eax addl %eax,%ebp adcl %edx,%ebx @@ -977,10 +977,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ecx movl %ebp,32(%edi) movl 28(%esi),%eax - # saved r[8] - # ############### Calculate word 9 + # saved r[8] + # ############### Calculate word 9 xorl %ebp,%ebp - # sqr a[7]*a[2] + # sqr a[7]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -990,7 +990,7 @@ L_bn_sqr_comba8_begin: movl 24(%esi),%eax adcl $0,%ebp movl 12(%esi),%edx - # sqr a[6]*a[3] + # sqr a[6]*a[3] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1000,7 +1000,7 @@ L_bn_sqr_comba8_begin: movl 20(%esi),%eax adcl $0,%ebp movl 16(%esi),%edx - # sqr a[5]*a[4] + # sqr a[5]*a[4] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1011,10 +1011,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebp movl %ebx,36(%edi) movl 12(%esi),%edx - # saved r[9] - # ############### Calculate word 10 + # saved r[9] + # ############### Calculate word 10 xorl %ebx,%ebx - # sqr a[7]*a[3] + # sqr a[7]*a[3] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1024,7 +1024,7 @@ L_bn_sqr_comba8_begin: movl 24(%esi),%eax adcl $0,%ebx movl 16(%esi),%edx - # sqr a[6]*a[4] + # sqr a[6]*a[4] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1033,7 +1033,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ebp movl 20(%esi),%eax adcl $0,%ebx - # sqr a[5]*a[5] + # sqr a[5]*a[5] mull %eax addl %eax,%ecx adcl %edx,%ebp @@ -1041,10 +1041,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebx movl %ecx,40(%edi) movl 28(%esi),%eax - # saved r[10] - # ############### Calculate word 11 + # saved r[10] + # ############### Calculate word 11 xorl %ecx,%ecx - # sqr a[7]*a[4] + # sqr a[7]*a[4] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1054,7 +1054,7 @@ L_bn_sqr_comba8_begin: movl 24(%esi),%eax adcl $0,%ecx movl 20(%esi),%edx - # sqr a[6]*a[5] + # sqr a[6]*a[5] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1065,10 +1065,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ecx movl %ebp,44(%edi) movl 20(%esi),%edx - # saved r[11] - # ############### Calculate word 12 + # saved r[11] + # ############### Calculate word 12 xorl %ebp,%ebp - # sqr a[7]*a[5] + # sqr a[7]*a[5] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1077,7 +1077,7 @@ L_bn_sqr_comba8_begin: adcl %edx,%ecx movl 24(%esi),%eax adcl $0,%ebp - # sqr a[6]*a[6] + # sqr a[6]*a[6] mull %eax addl %eax,%ebx adcl %edx,%ecx @@ -1085,10 +1085,10 @@ L_bn_sqr_comba8_begin: adcl $0,%ebp movl %ebx,48(%edi) movl 28(%esi),%eax - # saved r[12] - # ############### Calculate word 13 + # saved r[12] + # ############### Calculate word 13 xorl %ebx,%ebx - # sqr a[7]*a[6] + # sqr a[7]*a[6] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1098,16 +1098,16 @@ L_bn_sqr_comba8_begin: movl 28(%esi),%eax adcl $0,%ebx movl %ecx,52(%edi) - # saved r[13] - # ############### Calculate word 14 + # saved r[13] + # ############### Calculate word 14 xorl %ecx,%ecx - # sqr a[7]*a[7] + # sqr a[7]*a[7] mull %eax addl %eax,%ebp adcl %edx,%ebx adcl $0,%ecx movl %ebp,56(%edi) - # saved r[14] + # saved r[14] movl %ebx,60(%edi) popl %ebx popl %ebp @@ -1127,9 +1127,9 @@ L_bn_sqr_comba4_begin: xorl %ebx,%ebx xorl %ecx,%ecx movl (%esi),%eax - # ############### Calculate word 0 + # ############### Calculate word 0 xorl %ebp,%ebp - # sqr a[0]*a[0] + # sqr a[0]*a[0] mull %eax addl %eax,%ebx adcl %edx,%ecx @@ -1137,10 +1137,10 @@ L_bn_sqr_comba4_begin: adcl $0,%ebp movl %ebx,(%edi) movl 4(%esi),%eax - # saved r[0] - # ############### Calculate word 1 + # saved r[0] + # ############### Calculate word 1 xorl %ebx,%ebx - # sqr a[1]*a[0] + # sqr a[1]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1151,10 +1151,10 @@ L_bn_sqr_comba4_begin: adcl $0,%ebx movl %ecx,4(%edi) movl (%esi),%edx - # saved r[1] - # ############### Calculate word 2 + # saved r[1] + # ############### Calculate word 2 xorl %ecx,%ecx - # sqr a[2]*a[0] + # sqr a[2]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1163,7 +1163,7 @@ L_bn_sqr_comba4_begin: adcl %edx,%ebx movl 4(%esi),%eax adcl $0,%ecx - # sqr a[1]*a[1] + # sqr a[1]*a[1] mull %eax addl %eax,%ebp adcl %edx,%ebx @@ -1171,10 +1171,10 @@ L_bn_sqr_comba4_begin: adcl $0,%ecx movl %ebp,8(%edi) movl 12(%esi),%eax - # saved r[2] - # ############### Calculate word 3 + # saved r[2] + # ############### Calculate word 3 xorl %ebp,%ebp - # sqr a[3]*a[0] + # sqr a[3]*a[0] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1184,7 +1184,7 @@ L_bn_sqr_comba4_begin: movl 8(%esi),%eax adcl $0,%ebp movl 4(%esi),%edx - # sqr a[2]*a[1] + # sqr a[2]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1195,10 +1195,10 @@ L_bn_sqr_comba4_begin: adcl $0,%ebp movl %ebx,12(%edi) movl 4(%esi),%edx - # saved r[3] - # ############### Calculate word 4 + # saved r[3] + # ############### Calculate word 4 xorl %ebx,%ebx - # sqr a[3]*a[1] + # sqr a[3]*a[1] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1207,7 +1207,7 @@ L_bn_sqr_comba4_begin: adcl %edx,%ebp movl 8(%esi),%eax adcl $0,%ebx - # sqr a[2]*a[2] + # sqr a[2]*a[2] mull %eax addl %eax,%ecx adcl %edx,%ebp @@ -1215,10 +1215,10 @@ L_bn_sqr_comba4_begin: adcl $0,%ebx movl %ecx,16(%edi) movl 12(%esi),%eax - # saved r[4] - # ############### Calculate word 5 + # saved r[4] + # ############### Calculate word 5 xorl %ecx,%ecx - # sqr a[3]*a[2] + # sqr a[3]*a[2] mull %edx addl %eax,%eax adcl %edx,%edx @@ -1228,16 +1228,16 @@ L_bn_sqr_comba4_begin: movl 12(%esi),%eax adcl $0,%ecx movl %ebp,20(%edi) - # saved r[5] - # ############### Calculate word 6 + # saved r[5] + # ############### Calculate word 6 xorl %ebp,%ebp - # sqr a[3]*a[3] + # sqr a[3]*a[3] mull %eax addl %eax,%ebx adcl %edx,%ecx adcl $0,%ebp movl %ebx,24(%edi) - # saved r[6] + # saved r[6] movl %ecx,28(%edi) popl %ebx popl %ebp diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/x86-mont.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/x86-mont.s index 35db106f8c1f..3183bbb65704 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/x86-mont.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/bn/x86-mont.s @@ -444,16 +444,18 @@ L017sub: leal 1(%edx),%edx jge L017sub sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi + movl $-1,%edx + xorl %eax,%edx + jmp L018copy .align 4,0x90 L018copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) + movl 32(%esp,%ebx,4),%esi + movl (%edi,%ebx,4),%ebp movl %ecx,32(%esp,%ebx,4) + andl %eax,%esi + andl %edx,%ebp + orl %esi,%ebp + movl %ebp,(%edi,%ebx,4) decl %ebx jge L018copy movl 24(%esp),%esp diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/buildinf.h b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/buildinf.h index 005ca0b70459..b89e43e6d576 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/buildinf.h @@ -37,4 +37,4 @@ static const char cflags[] = { ' ','\0' }; #define PLATFORM "platform: darwin-i386-cc" -#define DATE "built on: Tue Apr 3 00:38:21 2018" +#define DATE "built on: Tue Aug 14 23:13:09 2018" diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/crypt586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/crypt586.s index 1731c53faac0..9156a65a1e67 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/crypt586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/crypt586.s @@ -9,7 +9,7 @@ L_fcrypt_body_begin: pushl %esi pushl %edi - # Load the 2 words + # Load the 2 words xorl %edi,%edi xorl %esi,%esi call L000PIC_me_up @@ -21,7 +21,7 @@ L000PIC_me_up: pushl $25 L001start: - # Round 0 + # Round 0 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -71,7 +71,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 1 + # Round 1 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -121,7 +121,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 2 + # Round 2 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -171,7 +171,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 3 + # Round 3 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -221,7 +221,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 4 + # Round 4 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -271,7 +271,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 5 + # Round 5 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -321,7 +321,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 6 + # Round 6 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -371,7 +371,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 7 + # Round 7 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -421,7 +421,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 8 + # Round 8 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -471,7 +471,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 9 + # Round 9 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -521,7 +521,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 10 + # Round 10 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -571,7 +571,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 11 + # Round 11 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -621,7 +621,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 12 + # Round 12 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -671,7 +671,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 13 + # Round 13 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -721,7 +721,7 @@ L001start: xorl %ebx,%esi movl 32(%esp),%ebp - # Round 14 + # Round 14 movl 36(%esp),%eax movl %esi,%edx shrl $16,%edx @@ -771,7 +771,7 @@ L001start: xorl %ebx,%edi movl 32(%esp),%ebp - # Round 15 + # Round 15 movl 36(%esp),%eax movl %edi,%edx shrl $16,%edx @@ -828,7 +828,7 @@ L001start: movl %ebx,(%esp) jnz L001start - # FP + # FP movl 28(%esp),%edx rorl $1,%edi movl %esi,%eax diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/des-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/des-586.s index 43354871fcd4..d0c1a2e4866e 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/des-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/des/des-586.s @@ -4,7 +4,7 @@ .align 4 __x86_DES_encrypt: pushl %ecx - # Round 0 + # Round 0 movl (%ecx),%eax xorl %ebx,%ebx movl 4(%ecx),%edx @@ -33,7 +33,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 1 + # Round 1 movl 8(%ecx),%eax xorl %ebx,%ebx movl 12(%ecx),%edx @@ -62,7 +62,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 2 + # Round 2 movl 16(%ecx),%eax xorl %ebx,%ebx movl 20(%ecx),%edx @@ -91,7 +91,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 3 + # Round 3 movl 24(%ecx),%eax xorl %ebx,%ebx movl 28(%ecx),%edx @@ -120,7 +120,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 4 + # Round 4 movl 32(%ecx),%eax xorl %ebx,%ebx movl 36(%ecx),%edx @@ -149,7 +149,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 5 + # Round 5 movl 40(%ecx),%eax xorl %ebx,%ebx movl 44(%ecx),%edx @@ -178,7 +178,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 6 + # Round 6 movl 48(%ecx),%eax xorl %ebx,%ebx movl 52(%ecx),%edx @@ -207,7 +207,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 7 + # Round 7 movl 56(%ecx),%eax xorl %ebx,%ebx movl 60(%ecx),%edx @@ -236,7 +236,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 8 + # Round 8 movl 64(%ecx),%eax xorl %ebx,%ebx movl 68(%ecx),%edx @@ -265,7 +265,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 9 + # Round 9 movl 72(%ecx),%eax xorl %ebx,%ebx movl 76(%ecx),%edx @@ -294,7 +294,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 10 + # Round 10 movl 80(%ecx),%eax xorl %ebx,%ebx movl 84(%ecx),%edx @@ -323,7 +323,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 11 + # Round 11 movl 88(%ecx),%eax xorl %ebx,%ebx movl 92(%ecx),%edx @@ -352,7 +352,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 12 + # Round 12 movl 96(%ecx),%eax xorl %ebx,%ebx movl 100(%ecx),%edx @@ -381,7 +381,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 13 + # Round 13 movl 104(%ecx),%eax xorl %ebx,%ebx movl 108(%ecx),%edx @@ -410,7 +410,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 14 + # Round 14 movl 112(%ecx),%eax xorl %ebx,%ebx movl 116(%ecx),%edx @@ -439,7 +439,7 @@ __x86_DES_encrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 15 + # Round 15 movl 120(%ecx),%eax xorl %ebx,%ebx movl 124(%ecx),%edx @@ -473,7 +473,7 @@ __x86_DES_encrypt: .align 4 __x86_DES_decrypt: pushl %ecx - # Round 15 + # Round 15 movl 120(%ecx),%eax xorl %ebx,%ebx movl 124(%ecx),%edx @@ -502,7 +502,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 14 + # Round 14 movl 112(%ecx),%eax xorl %ebx,%ebx movl 116(%ecx),%edx @@ -531,7 +531,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 13 + # Round 13 movl 104(%ecx),%eax xorl %ebx,%ebx movl 108(%ecx),%edx @@ -560,7 +560,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 12 + # Round 12 movl 96(%ecx),%eax xorl %ebx,%ebx movl 100(%ecx),%edx @@ -589,7 +589,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 11 + # Round 11 movl 88(%ecx),%eax xorl %ebx,%ebx movl 92(%ecx),%edx @@ -618,7 +618,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 10 + # Round 10 movl 80(%ecx),%eax xorl %ebx,%ebx movl 84(%ecx),%edx @@ -647,7 +647,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 9 + # Round 9 movl 72(%ecx),%eax xorl %ebx,%ebx movl 76(%ecx),%edx @@ -676,7 +676,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 8 + # Round 8 movl 64(%ecx),%eax xorl %ebx,%ebx movl 68(%ecx),%edx @@ -705,7 +705,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 7 + # Round 7 movl 56(%ecx),%eax xorl %ebx,%ebx movl 60(%ecx),%edx @@ -734,7 +734,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 6 + # Round 6 movl 48(%ecx),%eax xorl %ebx,%ebx movl 52(%ecx),%edx @@ -763,7 +763,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 5 + # Round 5 movl 40(%ecx),%eax xorl %ebx,%ebx movl 44(%ecx),%edx @@ -792,7 +792,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 4 + # Round 4 movl 32(%ecx),%eax xorl %ebx,%ebx movl 36(%ecx),%edx @@ -821,7 +821,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 3 + # Round 3 movl 24(%ecx),%eax xorl %ebx,%ebx movl 28(%ecx),%edx @@ -850,7 +850,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 2 + # Round 2 movl 16(%ecx),%eax xorl %ebx,%ebx movl 20(%ecx),%edx @@ -879,7 +879,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%esi xorl 0x500(%ebp,%edx,1),%esi - # Round 1 + # Round 1 movl 8(%ecx),%eax xorl %ebx,%ebx movl 12(%ecx),%edx @@ -908,7 +908,7 @@ __x86_DES_decrypt: movl (%esp),%ecx xorl 0x400(%ebp,%eax,1),%edi xorl 0x500(%ebp,%edx,1),%edi - # Round 0 + # Round 0 movl (%ecx),%eax xorl %ebx,%ebx movl 4(%ecx),%edx @@ -946,7 +946,7 @@ L_DES_encrypt1_begin: pushl %esi pushl %edi - # Load the 2 words + # Load the 2 words movl 12(%esp),%esi xorl %ecx,%ecx pushl %ebx @@ -955,7 +955,7 @@ L_DES_encrypt1_begin: movl 28(%esp),%ebx movl 4(%esi),%edi - # IP + # IP roll $4,%eax movl %eax,%esi xorl %edi,%eax @@ -1005,7 +1005,7 @@ L001decrypt: call __x86_DES_decrypt L002done: - # FP + # FP movl 20(%esp),%edx rorl $1,%esi movl %edi,%eax @@ -1057,7 +1057,7 @@ L_DES_encrypt2_begin: pushl %esi pushl %edi - # Load the 2 words + # Load the 2 words movl 12(%esp),%eax xorl %ecx,%ecx pushl %ebx @@ -1080,7 +1080,7 @@ L004decrypt: call __x86_DES_decrypt L005done: - # Fixup + # Fixup rorl $3,%edi movl 20(%esp),%eax rorl $3,%esi @@ -1101,12 +1101,12 @@ L_DES_encrypt3_begin: pushl %esi pushl %edi - # Load the data words + # Load the data words movl (%ebx),%edi movl 4(%ebx),%esi subl $12,%esp - # IP + # IP roll $4,%edi movl %edi,%edx xorl %esi,%edi @@ -1165,7 +1165,7 @@ L_DES_encrypt3_begin: movl (%ebx),%edi movl 4(%ebx),%esi - # FP + # FP roll $2,%esi roll $3,%edi movl %edi,%eax @@ -1220,12 +1220,12 @@ L_DES_decrypt3_begin: pushl %esi pushl %edi - # Load the data words + # Load the data words movl (%ebx),%edi movl 4(%ebx),%esi subl $12,%esp - # IP + # IP roll $4,%edi movl %edi,%edx xorl %esi,%edi @@ -1284,7 +1284,7 @@ L_DES_decrypt3_begin: movl (%ebx),%edi movl 4(%ebx),%esi - # FP + # FP roll $2,%esi roll $3,%edi movl %edi,%eax @@ -1339,7 +1339,7 @@ L_DES_ncbc_encrypt_begin: pushl %esi pushl %edi movl 28(%esp),%ebp - # getting iv ptr from parameter 4 + # getting iv ptr from parameter 4 movl 36(%esp),%ebx movl (%ebx),%esi movl 4(%ebx),%edi @@ -1350,11 +1350,11 @@ L_DES_ncbc_encrypt_begin: movl %esp,%ebx movl 36(%esp),%esi movl 40(%esp),%edi - # getting encrypt flag from parameter 5 + # getting encrypt flag from parameter 5 movl 56(%esp),%ecx - # get and push parameter 5 + # get and push parameter 5 pushl %ecx - # get and push parameter 3 + # get and push parameter 3 movl 52(%esp),%eax pushl %eax pushl %ebx @@ -1517,7 +1517,7 @@ L_DES_ede3_cbc_encrypt_begin: pushl %esi pushl %edi movl 28(%esp),%ebp - # getting iv ptr from parameter 6 + # getting iv ptr from parameter 6 movl 44(%esp),%ebx movl (%ebx),%esi movl 4(%ebx),%edi @@ -1528,15 +1528,15 @@ L_DES_ede3_cbc_encrypt_begin: movl %esp,%ebx movl 36(%esp),%esi movl 40(%esp),%edi - # getting encrypt flag from parameter 7 + # getting encrypt flag from parameter 7 movl 64(%esp),%ecx - # get and push parameter 5 + # get and push parameter 5 movl 56(%esp),%eax pushl %eax - # get and push parameter 4 + # get and push parameter 4 movl 56(%esp),%eax pushl %eax - # get and push parameter 3 + # get and push parameter 3 movl 56(%esp),%eax pushl %eax pushl %ebx diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ec/ecp_nistz256-x86.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ec/ecp_nistz256-x86.s index f2163103ef61..fe6e89a4dba0 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ec/ecp_nistz256-x86.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ec/ecp_nistz256-x86.s @@ -3822,7 +3822,7 @@ L_ecp_nistz256_scatter_w7_begin: movl 20(%esp),%edi movl 24(%esp),%esi movl 28(%esp),%ebp - leal -1(%edi,%ebp,1),%edi + leal (%edi,%ebp,1),%edi movl $16,%ebp L007scatter_w7_loop: movl (%esi),%eax diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/md5/md5-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/md5/md5-586.s index 4e703510412d..93c6693b5a65 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/md5/md5-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/md5/md5-586.s @@ -21,10 +21,10 @@ L_md5_block_asm_data_order_begin: movl 12(%edi),%edx L000start: - # R0 section + # R0 section movl %ecx,%edi movl (%esi),%ebp - # R0 0 + # R0 0 xorl %edx,%edi andl %ebx,%edi leal 3614090360(%eax,%ebp,1),%eax @@ -34,7 +34,7 @@ L000start: roll $7,%eax movl %ebx,%edi addl %ebx,%eax - # R0 1 + # R0 1 xorl %ecx,%edi andl %eax,%edi leal 3905402710(%edx,%ebp,1),%edx @@ -44,7 +44,7 @@ L000start: roll $12,%edx movl %eax,%edi addl %eax,%edx - # R0 2 + # R0 2 xorl %ebx,%edi andl %edx,%edi leal 606105819(%ecx,%ebp,1),%ecx @@ -54,7 +54,7 @@ L000start: roll $17,%ecx movl %edx,%edi addl %edx,%ecx - # R0 3 + # R0 3 xorl %eax,%edi andl %ecx,%edi leal 3250441966(%ebx,%ebp,1),%ebx @@ -64,7 +64,7 @@ L000start: roll $22,%ebx movl %ecx,%edi addl %ecx,%ebx - # R0 4 + # R0 4 xorl %edx,%edi andl %ebx,%edi leal 4118548399(%eax,%ebp,1),%eax @@ -74,7 +74,7 @@ L000start: roll $7,%eax movl %ebx,%edi addl %ebx,%eax - # R0 5 + # R0 5 xorl %ecx,%edi andl %eax,%edi leal 1200080426(%edx,%ebp,1),%edx @@ -84,7 +84,7 @@ L000start: roll $12,%edx movl %eax,%edi addl %eax,%edx - # R0 6 + # R0 6 xorl %ebx,%edi andl %edx,%edi leal 2821735955(%ecx,%ebp,1),%ecx @@ -94,7 +94,7 @@ L000start: roll $17,%ecx movl %edx,%edi addl %edx,%ecx - # R0 7 + # R0 7 xorl %eax,%edi andl %ecx,%edi leal 4249261313(%ebx,%ebp,1),%ebx @@ -104,7 +104,7 @@ L000start: roll $22,%ebx movl %ecx,%edi addl %ecx,%ebx - # R0 8 + # R0 8 xorl %edx,%edi andl %ebx,%edi leal 1770035416(%eax,%ebp,1),%eax @@ -114,7 +114,7 @@ L000start: roll $7,%eax movl %ebx,%edi addl %ebx,%eax - # R0 9 + # R0 9 xorl %ecx,%edi andl %eax,%edi leal 2336552879(%edx,%ebp,1),%edx @@ -124,7 +124,7 @@ L000start: roll $12,%edx movl %eax,%edi addl %eax,%edx - # R0 10 + # R0 10 xorl %ebx,%edi andl %edx,%edi leal 4294925233(%ecx,%ebp,1),%ecx @@ -134,7 +134,7 @@ L000start: roll $17,%ecx movl %edx,%edi addl %edx,%ecx - # R0 11 + # R0 11 xorl %eax,%edi andl %ecx,%edi leal 2304563134(%ebx,%ebp,1),%ebx @@ -144,7 +144,7 @@ L000start: roll $22,%ebx movl %ecx,%edi addl %ecx,%ebx - # R0 12 + # R0 12 xorl %edx,%edi andl %ebx,%edi leal 1804603682(%eax,%ebp,1),%eax @@ -154,7 +154,7 @@ L000start: roll $7,%eax movl %ebx,%edi addl %ebx,%eax - # R0 13 + # R0 13 xorl %ecx,%edi andl %eax,%edi leal 4254626195(%edx,%ebp,1),%edx @@ -164,7 +164,7 @@ L000start: roll $12,%edx movl %eax,%edi addl %eax,%edx - # R0 14 + # R0 14 xorl %ebx,%edi andl %edx,%edi leal 2792965006(%ecx,%ebp,1),%ecx @@ -174,7 +174,7 @@ L000start: roll $17,%ecx movl %edx,%edi addl %edx,%ecx - # R0 15 + # R0 15 xorl %eax,%edi andl %ecx,%edi leal 1236535329(%ebx,%ebp,1),%ebx @@ -185,8 +185,8 @@ L000start: movl %ecx,%edi addl %ecx,%ebx - # R1 section - # R1 16 + # R1 section + # R1 16 xorl %ebx,%edi andl %edx,%edi leal 4129170786(%eax,%ebp,1),%eax @@ -196,7 +196,7 @@ L000start: movl %ebx,%edi roll $5,%eax addl %ebx,%eax - # R1 17 + # R1 17 xorl %eax,%edi andl %ecx,%edi leal 3225465664(%edx,%ebp,1),%edx @@ -206,7 +206,7 @@ L000start: movl %eax,%edi roll $9,%edx addl %eax,%edx - # R1 18 + # R1 18 xorl %edx,%edi andl %ebx,%edi leal 643717713(%ecx,%ebp,1),%ecx @@ -216,7 +216,7 @@ L000start: movl %edx,%edi roll $14,%ecx addl %edx,%ecx - # R1 19 + # R1 19 xorl %ecx,%edi andl %eax,%edi leal 3921069994(%ebx,%ebp,1),%ebx @@ -226,7 +226,7 @@ L000start: movl %ecx,%edi roll $20,%ebx addl %ecx,%ebx - # R1 20 + # R1 20 xorl %ebx,%edi andl %edx,%edi leal 3593408605(%eax,%ebp,1),%eax @@ -236,7 +236,7 @@ L000start: movl %ebx,%edi roll $5,%eax addl %ebx,%eax - # R1 21 + # R1 21 xorl %eax,%edi andl %ecx,%edi leal 38016083(%edx,%ebp,1),%edx @@ -246,7 +246,7 @@ L000start: movl %eax,%edi roll $9,%edx addl %eax,%edx - # R1 22 + # R1 22 xorl %edx,%edi andl %ebx,%edi leal 3634488961(%ecx,%ebp,1),%ecx @@ -256,7 +256,7 @@ L000start: movl %edx,%edi roll $14,%ecx addl %edx,%ecx - # R1 23 + # R1 23 xorl %ecx,%edi andl %eax,%edi leal 3889429448(%ebx,%ebp,1),%ebx @@ -266,7 +266,7 @@ L000start: movl %ecx,%edi roll $20,%ebx addl %ecx,%ebx - # R1 24 + # R1 24 xorl %ebx,%edi andl %edx,%edi leal 568446438(%eax,%ebp,1),%eax @@ -276,7 +276,7 @@ L000start: movl %ebx,%edi roll $5,%eax addl %ebx,%eax - # R1 25 + # R1 25 xorl %eax,%edi andl %ecx,%edi leal 3275163606(%edx,%ebp,1),%edx @@ -286,7 +286,7 @@ L000start: movl %eax,%edi roll $9,%edx addl %eax,%edx - # R1 26 + # R1 26 xorl %edx,%edi andl %ebx,%edi leal 4107603335(%ecx,%ebp,1),%ecx @@ -296,7 +296,7 @@ L000start: movl %edx,%edi roll $14,%ecx addl %edx,%ecx - # R1 27 + # R1 27 xorl %ecx,%edi andl %eax,%edi leal 1163531501(%ebx,%ebp,1),%ebx @@ -306,7 +306,7 @@ L000start: movl %ecx,%edi roll $20,%ebx addl %ecx,%ebx - # R1 28 + # R1 28 xorl %ebx,%edi andl %edx,%edi leal 2850285829(%eax,%ebp,1),%eax @@ -316,7 +316,7 @@ L000start: movl %ebx,%edi roll $5,%eax addl %ebx,%eax - # R1 29 + # R1 29 xorl %eax,%edi andl %ecx,%edi leal 4243563512(%edx,%ebp,1),%edx @@ -326,7 +326,7 @@ L000start: movl %eax,%edi roll $9,%edx addl %eax,%edx - # R1 30 + # R1 30 xorl %edx,%edi andl %ebx,%edi leal 1735328473(%ecx,%ebp,1),%ecx @@ -336,7 +336,7 @@ L000start: movl %edx,%edi roll $14,%ecx addl %edx,%ecx - # R1 31 + # R1 31 xorl %ecx,%edi andl %eax,%edi leal 2368359562(%ebx,%ebp,1),%ebx @@ -347,8 +347,8 @@ L000start: roll $20,%ebx addl %ecx,%ebx - # R2 section - # R2 32 + # R2 section + # R2 32 xorl %edx,%edi xorl %ebx,%edi leal 4294588738(%eax,%ebp,1),%eax @@ -356,7 +356,7 @@ L000start: movl 32(%esi),%ebp roll $4,%eax movl %ebx,%edi - # R2 33 + # R2 33 addl %ebx,%eax xorl %ecx,%edi leal 2272392833(%edx,%ebp,1),%edx @@ -366,7 +366,7 @@ L000start: movl %eax,%edi roll $11,%edx addl %eax,%edx - # R2 34 + # R2 34 xorl %ebx,%edi xorl %edx,%edi leal 1839030562(%ecx,%ebp,1),%ecx @@ -374,7 +374,7 @@ L000start: movl 56(%esi),%ebp roll $16,%ecx movl %edx,%edi - # R2 35 + # R2 35 addl %edx,%ecx xorl %eax,%edi leal 4259657740(%ebx,%ebp,1),%ebx @@ -384,7 +384,7 @@ L000start: movl %ecx,%edi roll $23,%ebx addl %ecx,%ebx - # R2 36 + # R2 36 xorl %edx,%edi xorl %ebx,%edi leal 2763975236(%eax,%ebp,1),%eax @@ -392,7 +392,7 @@ L000start: movl 16(%esi),%ebp roll $4,%eax movl %ebx,%edi - # R2 37 + # R2 37 addl %ebx,%eax xorl %ecx,%edi leal 1272893353(%edx,%ebp,1),%edx @@ -402,7 +402,7 @@ L000start: movl %eax,%edi roll $11,%edx addl %eax,%edx - # R2 38 + # R2 38 xorl %ebx,%edi xorl %edx,%edi leal 4139469664(%ecx,%ebp,1),%ecx @@ -410,7 +410,7 @@ L000start: movl 40(%esi),%ebp roll $16,%ecx movl %edx,%edi - # R2 39 + # R2 39 addl %edx,%ecx xorl %eax,%edi leal 3200236656(%ebx,%ebp,1),%ebx @@ -420,7 +420,7 @@ L000start: movl %ecx,%edi roll $23,%ebx addl %ecx,%ebx - # R2 40 + # R2 40 xorl %edx,%edi xorl %ebx,%edi leal 681279174(%eax,%ebp,1),%eax @@ -428,7 +428,7 @@ L000start: movl (%esi),%ebp roll $4,%eax movl %ebx,%edi - # R2 41 + # R2 41 addl %ebx,%eax xorl %ecx,%edi leal 3936430074(%edx,%ebp,1),%edx @@ -438,7 +438,7 @@ L000start: movl %eax,%edi roll $11,%edx addl %eax,%edx - # R2 42 + # R2 42 xorl %ebx,%edi xorl %edx,%edi leal 3572445317(%ecx,%ebp,1),%ecx @@ -446,7 +446,7 @@ L000start: movl 24(%esi),%ebp roll $16,%ecx movl %edx,%edi - # R2 43 + # R2 43 addl %edx,%ecx xorl %eax,%edi leal 76029189(%ebx,%ebp,1),%ebx @@ -456,7 +456,7 @@ L000start: movl %ecx,%edi roll $23,%ebx addl %ecx,%ebx - # R2 44 + # R2 44 xorl %edx,%edi xorl %ebx,%edi leal 3654602809(%eax,%ebp,1),%eax @@ -464,7 +464,7 @@ L000start: movl 48(%esi),%ebp roll $4,%eax movl %ebx,%edi - # R2 45 + # R2 45 addl %ebx,%eax xorl %ecx,%edi leal 3873151461(%edx,%ebp,1),%edx @@ -474,7 +474,7 @@ L000start: movl %eax,%edi roll $11,%edx addl %eax,%edx - # R2 46 + # R2 46 xorl %ebx,%edi xorl %edx,%edi leal 530742520(%ecx,%ebp,1),%ecx @@ -482,7 +482,7 @@ L000start: movl 8(%esi),%ebp roll $16,%ecx movl %edx,%edi - # R2 47 + # R2 47 addl %edx,%ecx xorl %eax,%edi leal 3299628645(%ebx,%ebp,1),%ebx @@ -493,8 +493,8 @@ L000start: roll $23,%ebx addl %ecx,%ebx - # R3 section - # R3 48 + # R3 section + # R3 48 xorl %edx,%edi orl %ebx,%edi leal 4096336452(%eax,%ebp,1),%eax @@ -505,7 +505,7 @@ L000start: roll $6,%eax xorl %ecx,%edi addl %ebx,%eax - # R3 49 + # R3 49 orl %eax,%edi leal 1126891415(%edx,%ebp,1),%edx xorl %ebx,%edi @@ -515,7 +515,7 @@ L000start: roll $10,%edx xorl %ebx,%edi addl %eax,%edx - # R3 50 + # R3 50 orl %edx,%edi leal 2878612391(%ecx,%ebp,1),%ecx xorl %eax,%edi @@ -525,7 +525,7 @@ L000start: roll $15,%ecx xorl %eax,%edi addl %edx,%ecx - # R3 51 + # R3 51 orl %ecx,%edi leal 4237533241(%ebx,%ebp,1),%ebx xorl %edx,%edi @@ -535,7 +535,7 @@ L000start: roll $21,%ebx xorl %edx,%edi addl %ecx,%ebx - # R3 52 + # R3 52 orl %ebx,%edi leal 1700485571(%eax,%ebp,1),%eax xorl %ecx,%edi @@ -545,7 +545,7 @@ L000start: roll $6,%eax xorl %ecx,%edi addl %ebx,%eax - # R3 53 + # R3 53 orl %eax,%edi leal 2399980690(%edx,%ebp,1),%edx xorl %ebx,%edi @@ -555,7 +555,7 @@ L000start: roll $10,%edx xorl %ebx,%edi addl %eax,%edx - # R3 54 + # R3 54 orl %edx,%edi leal 4293915773(%ecx,%ebp,1),%ecx xorl %eax,%edi @@ -565,7 +565,7 @@ L000start: roll $15,%ecx xorl %eax,%edi addl %edx,%ecx - # R3 55 + # R3 55 orl %ecx,%edi leal 2240044497(%ebx,%ebp,1),%ebx xorl %edx,%edi @@ -575,7 +575,7 @@ L000start: roll $21,%ebx xorl %edx,%edi addl %ecx,%ebx - # R3 56 + # R3 56 orl %ebx,%edi leal 1873313359(%eax,%ebp,1),%eax xorl %ecx,%edi @@ -585,7 +585,7 @@ L000start: roll $6,%eax xorl %ecx,%edi addl %ebx,%eax - # R3 57 + # R3 57 orl %eax,%edi leal 4264355552(%edx,%ebp,1),%edx xorl %ebx,%edi @@ -595,7 +595,7 @@ L000start: roll $10,%edx xorl %ebx,%edi addl %eax,%edx - # R3 58 + # R3 58 orl %edx,%edi leal 2734768916(%ecx,%ebp,1),%ecx xorl %eax,%edi @@ -605,7 +605,7 @@ L000start: roll $15,%ecx xorl %eax,%edi addl %edx,%ecx - # R3 59 + # R3 59 orl %ecx,%edi leal 1309151649(%ebx,%ebp,1),%ebx xorl %edx,%edi @@ -615,7 +615,7 @@ L000start: roll $21,%ebx xorl %edx,%edi addl %ecx,%ebx - # R3 60 + # R3 60 orl %ebx,%edi leal 4149444226(%eax,%ebp,1),%eax xorl %ecx,%edi @@ -625,7 +625,7 @@ L000start: roll $6,%eax xorl %ecx,%edi addl %ebx,%eax - # R3 61 + # R3 61 orl %eax,%edi leal 3174756917(%edx,%ebp,1),%edx xorl %ebx,%edi @@ -635,7 +635,7 @@ L000start: roll $10,%edx xorl %ebx,%edi addl %eax,%edx - # R3 62 + # R3 62 orl %edx,%edi leal 718787259(%ecx,%ebp,1),%ecx xorl %eax,%edi @@ -645,7 +645,7 @@ L000start: roll $15,%ecx xorl %eax,%edi addl %edx,%ecx - # R3 63 + # R3 63 orl %ecx,%edi leal 3951481745(%ebx,%ebp,1),%ebx xorl %edx,%edi diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ripemd/rmd-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ripemd/rmd-586.s index 15dd76c69a54..0a19b1429bd2 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ripemd/rmd-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/ripemd/rmd-586.s @@ -51,7 +51,7 @@ L000start: movl %edi,%eax movl 12(%edx),%ebx movl 16(%edx),%ebp - # 0 + # 0 xorl %ebx,%eax movl (%esp),%edx xorl %esi,%eax @@ -61,7 +61,7 @@ L000start: movl %esi,%eax roll $11,%ecx addl %ebp,%ecx - # 1 + # 1 xorl %edi,%eax movl 4(%esp),%edx xorl %ecx,%eax @@ -72,7 +72,7 @@ L000start: xorl %esi,%eax roll $14,%ebp addl %ebx,%ebp - # 2 + # 2 movl 8(%esp),%edx xorl %ebp,%eax addl %edx,%ebx @@ -81,7 +81,7 @@ L000start: movl %ebp,%eax roll $15,%ebx addl %edi,%ebx - # 3 + # 3 xorl %ecx,%eax movl 12(%esp),%edx xorl %ebx,%eax @@ -92,7 +92,7 @@ L000start: xorl %ebp,%eax roll $12,%edi addl %esi,%edi - # 4 + # 4 movl 16(%esp),%edx xorl %edi,%eax addl %edx,%esi @@ -101,7 +101,7 @@ L000start: movl %edi,%eax roll $5,%esi addl %ecx,%esi - # 5 + # 5 xorl %ebx,%eax movl 20(%esp),%edx xorl %esi,%eax @@ -112,7 +112,7 @@ L000start: xorl %edi,%eax roll $8,%ecx addl %ebp,%ecx - # 6 + # 6 movl 24(%esp),%edx xorl %ecx,%eax addl %edx,%ebp @@ -121,7 +121,7 @@ L000start: movl %ecx,%eax roll $7,%ebp addl %ebx,%ebp - # 7 + # 7 xorl %esi,%eax movl 28(%esp),%edx xorl %ebp,%eax @@ -132,7 +132,7 @@ L000start: xorl %ecx,%eax roll $9,%ebx addl %edi,%ebx - # 8 + # 8 movl 32(%esp),%edx xorl %ebx,%eax addl %edx,%edi @@ -141,7 +141,7 @@ L000start: movl %ebx,%eax roll $11,%edi addl %esi,%edi - # 9 + # 9 xorl %ebp,%eax movl 36(%esp),%edx xorl %edi,%eax @@ -152,7 +152,7 @@ L000start: xorl %ebx,%eax roll $13,%esi addl %ecx,%esi - # 10 + # 10 movl 40(%esp),%edx xorl %esi,%eax addl %edx,%ecx @@ -161,7 +161,7 @@ L000start: movl %esi,%eax roll $14,%ecx addl %ebp,%ecx - # 11 + # 11 xorl %edi,%eax movl 44(%esp),%edx xorl %ecx,%eax @@ -172,7 +172,7 @@ L000start: xorl %esi,%eax roll $15,%ebp addl %ebx,%ebp - # 12 + # 12 movl 48(%esp),%edx xorl %ebp,%eax addl %edx,%ebx @@ -181,7 +181,7 @@ L000start: movl %ebp,%eax roll $6,%ebx addl %edi,%ebx - # 13 + # 13 xorl %ecx,%eax movl 52(%esp),%edx xorl %ebx,%eax @@ -192,7 +192,7 @@ L000start: xorl %ebp,%eax roll $7,%edi addl %esi,%edi - # 14 + # 14 movl 56(%esp),%edx xorl %edi,%eax addl %edx,%esi @@ -201,7 +201,7 @@ L000start: movl %edi,%eax roll $9,%esi addl %ecx,%esi - # 15 + # 15 xorl %ebx,%eax movl 60(%esp),%edx xorl %esi,%eax @@ -212,7 +212,7 @@ L000start: movl 28(%esp),%edx roll $8,%ecx addl %ebp,%ecx - # 16 + # 16 addl %edx,%ebp movl %esi,%edx subl %ecx,%eax @@ -225,7 +225,7 @@ L000start: movl $-1,%edx roll $7,%ebp addl %ebx,%ebp - # 17 + # 17 addl %eax,%ebx movl %ecx,%eax subl %ebp,%edx @@ -238,7 +238,7 @@ L000start: movl $-1,%eax roll $6,%ebx addl %edi,%ebx - # 18 + # 18 addl %edx,%edi movl %ebp,%edx subl %ebx,%eax @@ -251,7 +251,7 @@ L000start: movl $-1,%edx roll $8,%edi addl %esi,%edi - # 19 + # 19 addl %eax,%esi movl %ebx,%eax subl %edi,%edx @@ -264,7 +264,7 @@ L000start: movl $-1,%eax roll $13,%esi addl %ecx,%esi - # 20 + # 20 addl %edx,%ecx movl %edi,%edx subl %esi,%eax @@ -277,7 +277,7 @@ L000start: movl $-1,%edx roll $11,%ecx addl %ebp,%ecx - # 21 + # 21 addl %eax,%ebp movl %esi,%eax subl %ecx,%edx @@ -290,7 +290,7 @@ L000start: movl $-1,%eax roll $9,%ebp addl %ebx,%ebp - # 22 + # 22 addl %edx,%ebx movl %ecx,%edx subl %ebp,%eax @@ -303,7 +303,7 @@ L000start: movl $-1,%edx roll $7,%ebx addl %edi,%ebx - # 23 + # 23 addl %eax,%edi movl %ebp,%eax subl %ebx,%edx @@ -316,7 +316,7 @@ L000start: movl $-1,%eax roll $15,%edi addl %esi,%edi - # 24 + # 24 addl %edx,%esi movl %ebx,%edx subl %edi,%eax @@ -329,7 +329,7 @@ L000start: movl $-1,%edx roll $7,%esi addl %ecx,%esi - # 25 + # 25 addl %eax,%ecx movl %edi,%eax subl %esi,%edx @@ -342,7 +342,7 @@ L000start: movl $-1,%eax roll $12,%ecx addl %ebp,%ecx - # 26 + # 26 addl %edx,%ebp movl %esi,%edx subl %ecx,%eax @@ -355,7 +355,7 @@ L000start: movl $-1,%edx roll $15,%ebp addl %ebx,%ebp - # 27 + # 27 addl %eax,%ebx movl %ecx,%eax subl %ebp,%edx @@ -368,7 +368,7 @@ L000start: movl $-1,%eax roll $9,%ebx addl %edi,%ebx - # 28 + # 28 addl %edx,%edi movl %ebp,%edx subl %ebx,%eax @@ -381,7 +381,7 @@ L000start: movl $-1,%edx roll $11,%edi addl %esi,%edi - # 29 + # 29 addl %eax,%esi movl %ebx,%eax subl %edi,%edx @@ -394,7 +394,7 @@ L000start: movl $-1,%eax roll $7,%esi addl %ecx,%esi - # 30 + # 30 addl %edx,%ecx movl %edi,%edx subl %esi,%eax @@ -407,7 +407,7 @@ L000start: movl $-1,%edx roll $13,%ecx addl %ebp,%ecx - # 31 + # 31 addl %eax,%ebp movl %esi,%eax subl %ecx,%edx @@ -420,7 +420,7 @@ L000start: subl %ecx,%edx roll $12,%ebp addl %ebx,%ebp - # 32 + # 32 movl 12(%esp),%eax orl %ebp,%edx addl %eax,%ebx @@ -431,7 +431,7 @@ L000start: subl %ebp,%eax roll $11,%ebx addl %edi,%ebx - # 33 + # 33 movl 40(%esp),%edx orl %ebx,%eax addl %edx,%edi @@ -442,7 +442,7 @@ L000start: subl %ebx,%edx roll $13,%edi addl %esi,%edi - # 34 + # 34 movl 56(%esp),%eax orl %edi,%edx addl %eax,%esi @@ -453,7 +453,7 @@ L000start: subl %edi,%eax roll $6,%esi addl %ecx,%esi - # 35 + # 35 movl 16(%esp),%edx orl %esi,%eax addl %edx,%ecx @@ -464,7 +464,7 @@ L000start: subl %esi,%edx roll $7,%ecx addl %ebp,%ecx - # 36 + # 36 movl 36(%esp),%eax orl %ecx,%edx addl %eax,%ebp @@ -475,7 +475,7 @@ L000start: subl %ecx,%eax roll $14,%ebp addl %ebx,%ebp - # 37 + # 37 movl 60(%esp),%edx orl %ebp,%eax addl %edx,%ebx @@ -486,7 +486,7 @@ L000start: subl %ebp,%edx roll $9,%ebx addl %edi,%ebx - # 38 + # 38 movl 32(%esp),%eax orl %ebx,%edx addl %eax,%edi @@ -497,7 +497,7 @@ L000start: subl %ebx,%eax roll $13,%edi addl %esi,%edi - # 39 + # 39 movl 4(%esp),%edx orl %edi,%eax addl %edx,%esi @@ -508,7 +508,7 @@ L000start: subl %edi,%edx roll $15,%esi addl %ecx,%esi - # 40 + # 40 movl 8(%esp),%eax orl %esi,%edx addl %eax,%ecx @@ -519,7 +519,7 @@ L000start: subl %esi,%eax roll $14,%ecx addl %ebp,%ecx - # 41 + # 41 movl 28(%esp),%edx orl %ecx,%eax addl %edx,%ebp @@ -530,7 +530,7 @@ L000start: subl %ecx,%edx roll $8,%ebp addl %ebx,%ebp - # 42 + # 42 movl (%esp),%eax orl %ebp,%edx addl %eax,%ebx @@ -541,7 +541,7 @@ L000start: subl %ebp,%eax roll $13,%ebx addl %edi,%ebx - # 43 + # 43 movl 24(%esp),%edx orl %ebx,%eax addl %edx,%edi @@ -552,7 +552,7 @@ L000start: subl %ebx,%edx roll $6,%edi addl %esi,%edi - # 44 + # 44 movl 52(%esp),%eax orl %edi,%edx addl %eax,%esi @@ -563,7 +563,7 @@ L000start: subl %edi,%eax roll $5,%esi addl %ecx,%esi - # 45 + # 45 movl 44(%esp),%edx orl %esi,%eax addl %edx,%ecx @@ -574,7 +574,7 @@ L000start: subl %esi,%edx roll $12,%ecx addl %ebp,%ecx - # 46 + # 46 movl 20(%esp),%eax orl %ecx,%edx addl %eax,%ebp @@ -585,7 +585,7 @@ L000start: subl %ecx,%eax roll $7,%ebp addl %ebx,%ebp - # 47 + # 47 movl 48(%esp),%edx orl %ebp,%eax addl %edx,%ebx @@ -596,7 +596,7 @@ L000start: movl %ecx,%eax roll $5,%ebx addl %edi,%ebx - # 48 + # 48 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -609,7 +609,7 @@ L000start: movl %ebp,%eax roll $11,%edi addl %esi,%edi - # 49 + # 49 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -622,7 +622,7 @@ L000start: movl %ebx,%eax roll $12,%esi addl %ecx,%esi - # 50 + # 50 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -635,7 +635,7 @@ L000start: movl %edi,%eax roll $14,%ecx addl %ebp,%ecx - # 51 + # 51 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -648,7 +648,7 @@ L000start: movl %esi,%eax roll $15,%ebp addl %ebx,%ebp - # 52 + # 52 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -661,7 +661,7 @@ L000start: movl %ecx,%eax roll $14,%ebx addl %edi,%ebx - # 53 + # 53 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -674,7 +674,7 @@ L000start: movl %ebp,%eax roll $15,%edi addl %esi,%edi - # 54 + # 54 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -687,7 +687,7 @@ L000start: movl %ebx,%eax roll $9,%esi addl %ecx,%esi - # 55 + # 55 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -700,7 +700,7 @@ L000start: movl %edi,%eax roll $8,%ecx addl %ebp,%ecx - # 56 + # 56 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -713,7 +713,7 @@ L000start: movl %esi,%eax roll $9,%ebp addl %ebx,%ebp - # 57 + # 57 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -726,7 +726,7 @@ L000start: movl %ecx,%eax roll $14,%ebx addl %edi,%ebx - # 58 + # 58 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -739,7 +739,7 @@ L000start: movl %ebp,%eax roll $5,%edi addl %esi,%edi - # 59 + # 59 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -752,7 +752,7 @@ L000start: movl %ebx,%eax roll $6,%esi addl %ecx,%esi - # 60 + # 60 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -765,7 +765,7 @@ L000start: movl %edi,%eax roll $8,%ecx addl %ebp,%ecx - # 61 + # 61 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -778,7 +778,7 @@ L000start: movl %esi,%eax roll $6,%ebp addl %ebx,%ebp - # 62 + # 62 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -791,7 +791,7 @@ L000start: movl %ecx,%eax roll $5,%ebx addl %edi,%ebx - # 63 + # 63 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -804,7 +804,7 @@ L000start: subl %ebp,%edx roll $12,%edi addl %esi,%edi - # 64 + # 64 movl 16(%esp),%eax orl %ebx,%edx addl %eax,%esi @@ -815,7 +815,7 @@ L000start: subl %ebx,%eax roll $9,%esi addl %ecx,%esi - # 65 + # 65 movl (%esp),%edx orl %edi,%eax addl %edx,%ecx @@ -826,7 +826,7 @@ L000start: subl %edi,%edx roll $15,%ecx addl %ebp,%ecx - # 66 + # 66 movl 20(%esp),%eax orl %esi,%edx addl %eax,%ebp @@ -837,7 +837,7 @@ L000start: subl %esi,%eax roll $5,%ebp addl %ebx,%ebp - # 67 + # 67 movl 36(%esp),%edx orl %ecx,%eax addl %edx,%ebx @@ -848,7 +848,7 @@ L000start: subl %ecx,%edx roll $11,%ebx addl %edi,%ebx - # 68 + # 68 movl 28(%esp),%eax orl %ebp,%edx addl %eax,%edi @@ -859,7 +859,7 @@ L000start: subl %ebp,%eax roll $6,%edi addl %esi,%edi - # 69 + # 69 movl 48(%esp),%edx orl %ebx,%eax addl %edx,%esi @@ -870,7 +870,7 @@ L000start: subl %ebx,%edx roll $8,%esi addl %ecx,%esi - # 70 + # 70 movl 8(%esp),%eax orl %edi,%edx addl %eax,%ecx @@ -881,7 +881,7 @@ L000start: subl %edi,%eax roll $13,%ecx addl %ebp,%ecx - # 71 + # 71 movl 40(%esp),%edx orl %esi,%eax addl %edx,%ebp @@ -892,7 +892,7 @@ L000start: subl %esi,%edx roll $12,%ebp addl %ebx,%ebp - # 72 + # 72 movl 56(%esp),%eax orl %ecx,%edx addl %eax,%ebx @@ -903,7 +903,7 @@ L000start: subl %ecx,%eax roll $5,%ebx addl %edi,%ebx - # 73 + # 73 movl 4(%esp),%edx orl %ebp,%eax addl %edx,%edi @@ -914,7 +914,7 @@ L000start: subl %ebp,%edx roll $12,%edi addl %esi,%edi - # 74 + # 74 movl 12(%esp),%eax orl %ebx,%edx addl %eax,%esi @@ -925,7 +925,7 @@ L000start: subl %ebx,%eax roll $13,%esi addl %ecx,%esi - # 75 + # 75 movl 32(%esp),%edx orl %edi,%eax addl %edx,%ecx @@ -936,7 +936,7 @@ L000start: subl %edi,%edx roll $14,%ecx addl %ebp,%ecx - # 76 + # 76 movl 44(%esp),%eax orl %esi,%edx addl %eax,%ebp @@ -947,7 +947,7 @@ L000start: subl %esi,%eax roll $11,%ebp addl %ebx,%ebp - # 77 + # 77 movl 24(%esp),%edx orl %ecx,%eax addl %edx,%ebx @@ -958,7 +958,7 @@ L000start: subl %ecx,%edx roll $8,%ebx addl %edi,%ebx - # 78 + # 78 movl 60(%esp),%eax orl %ebp,%edx addl %eax,%edi @@ -969,7 +969,7 @@ L000start: subl %ebp,%eax roll $5,%edi addl %esi,%edi - # 79 + # 79 movl 52(%esp),%edx orl %ebx,%eax addl %edx,%esi @@ -989,7 +989,7 @@ L000start: movl %ebp,80(%esp) movl 12(%edx),%ebx movl 16(%edx),%ebp - # 80 + # 80 movl $-1,%edx subl %ebx,%edx movl 20(%esp),%eax @@ -1002,7 +1002,7 @@ L000start: subl %edi,%eax roll $8,%ecx addl %ebp,%ecx - # 81 + # 81 movl 56(%esp),%edx orl %esi,%eax addl %edx,%ebp @@ -1013,7 +1013,7 @@ L000start: subl %esi,%edx roll $9,%ebp addl %ebx,%ebp - # 82 + # 82 movl 28(%esp),%eax orl %ecx,%edx addl %eax,%ebx @@ -1024,7 +1024,7 @@ L000start: subl %ecx,%eax roll $9,%ebx addl %edi,%ebx - # 83 + # 83 movl (%esp),%edx orl %ebp,%eax addl %edx,%edi @@ -1035,7 +1035,7 @@ L000start: subl %ebp,%edx roll $11,%edi addl %esi,%edi - # 84 + # 84 movl 36(%esp),%eax orl %ebx,%edx addl %eax,%esi @@ -1046,7 +1046,7 @@ L000start: subl %ebx,%eax roll $13,%esi addl %ecx,%esi - # 85 + # 85 movl 8(%esp),%edx orl %edi,%eax addl %edx,%ecx @@ -1057,7 +1057,7 @@ L000start: subl %edi,%edx roll $15,%ecx addl %ebp,%ecx - # 86 + # 86 movl 44(%esp),%eax orl %esi,%edx addl %eax,%ebp @@ -1068,7 +1068,7 @@ L000start: subl %esi,%eax roll $15,%ebp addl %ebx,%ebp - # 87 + # 87 movl 16(%esp),%edx orl %ecx,%eax addl %edx,%ebx @@ -1079,7 +1079,7 @@ L000start: subl %ecx,%edx roll $5,%ebx addl %edi,%ebx - # 88 + # 88 movl 52(%esp),%eax orl %ebp,%edx addl %eax,%edi @@ -1090,7 +1090,7 @@ L000start: subl %ebp,%eax roll $7,%edi addl %esi,%edi - # 89 + # 89 movl 24(%esp),%edx orl %ebx,%eax addl %edx,%esi @@ -1101,7 +1101,7 @@ L000start: subl %ebx,%edx roll $7,%esi addl %ecx,%esi - # 90 + # 90 movl 60(%esp),%eax orl %edi,%edx addl %eax,%ecx @@ -1112,7 +1112,7 @@ L000start: subl %edi,%eax roll $8,%ecx addl %ebp,%ecx - # 91 + # 91 movl 32(%esp),%edx orl %esi,%eax addl %edx,%ebp @@ -1123,7 +1123,7 @@ L000start: subl %esi,%edx roll $11,%ebp addl %ebx,%ebp - # 92 + # 92 movl 4(%esp),%eax orl %ecx,%edx addl %eax,%ebx @@ -1134,7 +1134,7 @@ L000start: subl %ecx,%eax roll $14,%ebx addl %edi,%ebx - # 93 + # 93 movl 40(%esp),%edx orl %ebp,%eax addl %edx,%edi @@ -1145,7 +1145,7 @@ L000start: subl %ebp,%edx roll $14,%edi addl %esi,%edi - # 94 + # 94 movl 12(%esp),%eax orl %ebx,%edx addl %eax,%esi @@ -1156,7 +1156,7 @@ L000start: subl %ebx,%eax roll $12,%esi addl %ecx,%esi - # 95 + # 95 movl 48(%esp),%edx orl %edi,%eax addl %edx,%ecx @@ -1167,7 +1167,7 @@ L000start: movl %edi,%eax roll $6,%ecx addl %ebp,%ecx - # 96 + # 96 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -1180,7 +1180,7 @@ L000start: movl %esi,%eax roll $9,%ebp addl %ebx,%ebp - # 97 + # 97 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -1193,7 +1193,7 @@ L000start: movl %ecx,%eax roll $13,%ebx addl %edi,%ebx - # 98 + # 98 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -1206,7 +1206,7 @@ L000start: movl %ebp,%eax roll $15,%edi addl %esi,%edi - # 99 + # 99 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -1219,7 +1219,7 @@ L000start: movl %ebx,%eax roll $7,%esi addl %ecx,%esi - # 100 + # 100 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -1232,7 +1232,7 @@ L000start: movl %edi,%eax roll $12,%ecx addl %ebp,%ecx - # 101 + # 101 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -1245,7 +1245,7 @@ L000start: movl %esi,%eax roll $8,%ebp addl %ebx,%ebp - # 102 + # 102 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -1258,7 +1258,7 @@ L000start: movl %ecx,%eax roll $9,%ebx addl %edi,%ebx - # 103 + # 103 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -1271,7 +1271,7 @@ L000start: movl %ebp,%eax roll $11,%edi addl %esi,%edi - # 104 + # 104 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -1284,7 +1284,7 @@ L000start: movl %ebx,%eax roll $7,%esi addl %ecx,%esi - # 105 + # 105 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -1297,7 +1297,7 @@ L000start: movl %edi,%eax roll $7,%ecx addl %ebp,%ecx - # 106 + # 106 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -1310,7 +1310,7 @@ L000start: movl %esi,%eax roll $12,%ebp addl %ebx,%ebp - # 107 + # 107 subl %esi,%edx andl %ebp,%eax andl %ecx,%edx @@ -1323,7 +1323,7 @@ L000start: movl %ecx,%eax roll $7,%ebx addl %edi,%ebx - # 108 + # 108 subl %ecx,%edx andl %ebx,%eax andl %ebp,%edx @@ -1336,7 +1336,7 @@ L000start: movl %ebp,%eax roll $6,%edi addl %esi,%edi - # 109 + # 109 subl %ebp,%edx andl %edi,%eax andl %ebx,%edx @@ -1349,7 +1349,7 @@ L000start: movl %ebx,%eax roll $15,%esi addl %ecx,%esi - # 110 + # 110 subl %ebx,%edx andl %esi,%eax andl %edi,%edx @@ -1362,7 +1362,7 @@ L000start: movl %edi,%eax roll $13,%ecx addl %ebp,%ecx - # 111 + # 111 subl %edi,%edx andl %ecx,%eax andl %esi,%edx @@ -1375,7 +1375,7 @@ L000start: subl %ecx,%edx roll $11,%ebp addl %ebx,%ebp - # 112 + # 112 movl 60(%esp),%eax orl %ebp,%edx addl %eax,%ebx @@ -1386,7 +1386,7 @@ L000start: subl %ebp,%eax roll $9,%ebx addl %edi,%ebx - # 113 + # 113 movl 20(%esp),%edx orl %ebx,%eax addl %edx,%edi @@ -1397,7 +1397,7 @@ L000start: subl %ebx,%edx roll $7,%edi addl %esi,%edi - # 114 + # 114 movl 4(%esp),%eax orl %edi,%edx addl %eax,%esi @@ -1408,7 +1408,7 @@ L000start: subl %edi,%eax roll $15,%esi addl %ecx,%esi - # 115 + # 115 movl 12(%esp),%edx orl %esi,%eax addl %edx,%ecx @@ -1419,7 +1419,7 @@ L000start: subl %esi,%edx roll $11,%ecx addl %ebp,%ecx - # 116 + # 116 movl 28(%esp),%eax orl %ecx,%edx addl %eax,%ebp @@ -1430,7 +1430,7 @@ L000start: subl %ecx,%eax roll $8,%ebp addl %ebx,%ebp - # 117 + # 117 movl 56(%esp),%edx orl %ebp,%eax addl %edx,%ebx @@ -1441,7 +1441,7 @@ L000start: subl %ebp,%edx roll $6,%ebx addl %edi,%ebx - # 118 + # 118 movl 24(%esp),%eax orl %ebx,%edx addl %eax,%edi @@ -1452,7 +1452,7 @@ L000start: subl %ebx,%eax roll $6,%edi addl %esi,%edi - # 119 + # 119 movl 36(%esp),%edx orl %edi,%eax addl %edx,%esi @@ -1463,7 +1463,7 @@ L000start: subl %edi,%edx roll $14,%esi addl %ecx,%esi - # 120 + # 120 movl 44(%esp),%eax orl %esi,%edx addl %eax,%ecx @@ -1474,7 +1474,7 @@ L000start: subl %esi,%eax roll $12,%ecx addl %ebp,%ecx - # 121 + # 121 movl 32(%esp),%edx orl %ecx,%eax addl %edx,%ebp @@ -1485,7 +1485,7 @@ L000start: subl %ecx,%edx roll $13,%ebp addl %ebx,%ebp - # 122 + # 122 movl 48(%esp),%eax orl %ebp,%edx addl %eax,%ebx @@ -1496,7 +1496,7 @@ L000start: subl %ebp,%eax roll $5,%ebx addl %edi,%ebx - # 123 + # 123 movl 8(%esp),%edx orl %ebx,%eax addl %edx,%edi @@ -1507,7 +1507,7 @@ L000start: subl %ebx,%edx roll $14,%edi addl %esi,%edi - # 124 + # 124 movl 40(%esp),%eax orl %edi,%edx addl %eax,%esi @@ -1518,7 +1518,7 @@ L000start: subl %edi,%eax roll $13,%esi addl %ecx,%esi - # 125 + # 125 movl (%esp),%edx orl %esi,%eax addl %edx,%ecx @@ -1529,7 +1529,7 @@ L000start: subl %esi,%edx roll $13,%ecx addl %ebp,%ecx - # 126 + # 126 movl 16(%esp),%eax orl %ecx,%edx addl %eax,%ebp @@ -1540,7 +1540,7 @@ L000start: subl %ecx,%eax roll $7,%ebp addl %ebx,%ebp - # 127 + # 127 movl 52(%esp),%edx orl %ebp,%eax addl %edx,%ebx @@ -1551,7 +1551,7 @@ L000start: movl $-1,%eax roll $5,%ebx addl %edi,%ebx - # 128 + # 128 addl %edx,%edi movl %ebp,%edx subl %ebx,%eax @@ -1564,7 +1564,7 @@ L000start: movl $-1,%edx roll $15,%edi addl %esi,%edi - # 129 + # 129 addl %eax,%esi movl %ebx,%eax subl %edi,%edx @@ -1577,7 +1577,7 @@ L000start: movl $-1,%eax roll $5,%esi addl %ecx,%esi - # 130 + # 130 addl %edx,%ecx movl %edi,%edx subl %esi,%eax @@ -1590,7 +1590,7 @@ L000start: movl $-1,%edx roll $8,%ecx addl %ebp,%ecx - # 131 + # 131 addl %eax,%ebp movl %esi,%eax subl %ecx,%edx @@ -1603,7 +1603,7 @@ L000start: movl $-1,%eax roll $11,%ebp addl %ebx,%ebp - # 132 + # 132 addl %edx,%ebx movl %ecx,%edx subl %ebp,%eax @@ -1616,7 +1616,7 @@ L000start: movl $-1,%edx roll $14,%ebx addl %edi,%ebx - # 133 + # 133 addl %eax,%edi movl %ebp,%eax subl %ebx,%edx @@ -1629,7 +1629,7 @@ L000start: movl $-1,%eax roll $14,%edi addl %esi,%edi - # 134 + # 134 addl %edx,%esi movl %ebx,%edx subl %edi,%eax @@ -1642,7 +1642,7 @@ L000start: movl $-1,%edx roll $6,%esi addl %ecx,%esi - # 135 + # 135 addl %eax,%ecx movl %edi,%eax subl %esi,%edx @@ -1655,7 +1655,7 @@ L000start: movl $-1,%eax roll $14,%ecx addl %ebp,%ecx - # 136 + # 136 addl %edx,%ebp movl %esi,%edx subl %ecx,%eax @@ -1668,7 +1668,7 @@ L000start: movl $-1,%edx roll $6,%ebp addl %ebx,%ebp - # 137 + # 137 addl %eax,%ebx movl %ecx,%eax subl %ebp,%edx @@ -1681,7 +1681,7 @@ L000start: movl $-1,%eax roll $9,%ebx addl %edi,%ebx - # 138 + # 138 addl %edx,%edi movl %ebp,%edx subl %ebx,%eax @@ -1694,7 +1694,7 @@ L000start: movl $-1,%edx roll $12,%edi addl %esi,%edi - # 139 + # 139 addl %eax,%esi movl %ebx,%eax subl %edi,%edx @@ -1707,7 +1707,7 @@ L000start: movl $-1,%eax roll $9,%esi addl %ecx,%esi - # 140 + # 140 addl %edx,%ecx movl %edi,%edx subl %esi,%eax @@ -1720,7 +1720,7 @@ L000start: movl $-1,%edx roll $12,%ecx addl %ebp,%ecx - # 141 + # 141 addl %eax,%ebp movl %esi,%eax subl %ecx,%edx @@ -1733,7 +1733,7 @@ L000start: movl $-1,%eax roll $5,%ebp addl %ebx,%ebp - # 142 + # 142 addl %edx,%ebx movl %ecx,%edx subl %ebp,%eax @@ -1746,7 +1746,7 @@ L000start: movl $-1,%edx roll $15,%ebx addl %edi,%ebx - # 143 + # 143 addl %eax,%edi movl %ebp,%eax subl %ebx,%edx @@ -1759,7 +1759,7 @@ L000start: xorl %ebp,%eax roll $8,%edi addl %esi,%edi - # 144 + # 144 movl 48(%esp),%edx xorl %edi,%eax addl %edx,%esi @@ -1768,7 +1768,7 @@ L000start: movl %edi,%eax roll $8,%esi addl %ecx,%esi - # 145 + # 145 xorl %ebx,%eax movl 60(%esp),%edx xorl %esi,%eax @@ -1779,7 +1779,7 @@ L000start: xorl %edi,%eax roll $5,%ecx addl %ebp,%ecx - # 146 + # 146 movl 40(%esp),%edx xorl %ecx,%eax addl %edx,%ebp @@ -1788,7 +1788,7 @@ L000start: movl %ecx,%eax roll $12,%ebp addl %ebx,%ebp - # 147 + # 147 xorl %esi,%eax movl 16(%esp),%edx xorl %ebp,%eax @@ -1799,7 +1799,7 @@ L000start: xorl %ecx,%eax roll $9,%ebx addl %edi,%ebx - # 148 + # 148 movl 4(%esp),%edx xorl %ebx,%eax addl %edx,%edi @@ -1808,7 +1808,7 @@ L000start: movl %ebx,%eax roll $12,%edi addl %esi,%edi - # 149 + # 149 xorl %ebp,%eax movl 20(%esp),%edx xorl %edi,%eax @@ -1819,7 +1819,7 @@ L000start: xorl %ebx,%eax roll $5,%esi addl %ecx,%esi - # 150 + # 150 movl 32(%esp),%edx xorl %esi,%eax addl %edx,%ecx @@ -1828,7 +1828,7 @@ L000start: movl %esi,%eax roll $14,%ecx addl %ebp,%ecx - # 151 + # 151 xorl %edi,%eax movl 28(%esp),%edx xorl %ecx,%eax @@ -1839,7 +1839,7 @@ L000start: xorl %esi,%eax roll $6,%ebp addl %ebx,%ebp - # 152 + # 152 movl 24(%esp),%edx xorl %ebp,%eax addl %edx,%ebx @@ -1848,7 +1848,7 @@ L000start: movl %ebp,%eax roll $8,%ebx addl %edi,%ebx - # 153 + # 153 xorl %ecx,%eax movl 8(%esp),%edx xorl %ebx,%eax @@ -1859,7 +1859,7 @@ L000start: xorl %ebp,%eax roll $13,%edi addl %esi,%edi - # 154 + # 154 movl 52(%esp),%edx xorl %edi,%eax addl %edx,%esi @@ -1868,7 +1868,7 @@ L000start: movl %edi,%eax roll $6,%esi addl %ecx,%esi - # 155 + # 155 xorl %ebx,%eax movl 56(%esp),%edx xorl %esi,%eax @@ -1879,7 +1879,7 @@ L000start: xorl %edi,%eax roll $5,%ecx addl %ebp,%ecx - # 156 + # 156 movl (%esp),%edx xorl %ecx,%eax addl %edx,%ebp @@ -1888,7 +1888,7 @@ L000start: movl %ecx,%eax roll $15,%ebp addl %ebx,%ebp - # 157 + # 157 xorl %esi,%eax movl 12(%esp),%edx xorl %ebp,%eax @@ -1899,7 +1899,7 @@ L000start: xorl %ecx,%eax roll $13,%ebx addl %edi,%ebx - # 158 + # 158 movl 36(%esp),%edx xorl %ebx,%eax addl %edx,%edi @@ -1908,7 +1908,7 @@ L000start: movl %ebx,%eax roll $11,%edi addl %esi,%edi - # 159 + # 159 xorl %ebp,%eax movl 44(%esp),%edx xorl %edi,%eax diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/sha/sha1-586.s b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/sha/sha1-586.s index d75e61693d5d..eea95f6cf2e0 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/sha/sha1-586.s +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/crypto/sha/sha1-586.s @@ -94,7 +94,7 @@ L002loop: movl 4(%ebp),%ebx movl 8(%ebp),%ecx movl 12(%ebp),%edx - # 00_15 0 + # 00_15 0 movl %ecx,%esi movl %eax,%ebp roll $5,%ebp @@ -106,7 +106,7 @@ L002loop: xorl %edx,%esi leal 1518500249(%ebp,%edi,1),%ebp addl %esi,%ebp - # 00_15 1 + # 00_15 1 movl %ebx,%edi movl %ebp,%esi roll $5,%ebp @@ -118,7 +118,7 @@ L002loop: xorl %ecx,%edi leal 1518500249(%ebp,%edx,1),%ebp addl %edi,%ebp - # 00_15 2 + # 00_15 2 movl %eax,%edx movl %ebp,%edi roll $5,%ebp @@ -130,7 +130,7 @@ L002loop: xorl %ebx,%edx leal 1518500249(%ebp,%ecx,1),%ebp addl %edx,%ebp - # 00_15 3 + # 00_15 3 movl %esi,%ecx movl %ebp,%edx roll $5,%ebp @@ -142,7 +142,7 @@ L002loop: xorl %eax,%ecx leal 1518500249(%ebp,%ebx,1),%ebp addl %ecx,%ebp - # 00_15 4 + # 00_15 4 movl %edi,%ebx movl %ebp,%ecx roll $5,%ebp @@ -154,7 +154,7 @@ L002loop: xorl %esi,%ebx leal 1518500249(%ebp,%eax,1),%ebp addl %ebx,%ebp - # 00_15 5 + # 00_15 5 movl %edx,%eax movl %ebp,%ebx roll $5,%ebp @@ -166,7 +166,7 @@ L002loop: xorl %edi,%eax leal 1518500249(%ebp,%esi,1),%ebp addl %eax,%ebp - # 00_15 6 + # 00_15 6 movl %ecx,%esi movl %ebp,%eax roll $5,%ebp @@ -178,7 +178,7 @@ L002loop: xorl %edx,%esi leal 1518500249(%ebp,%edi,1),%ebp addl %esi,%ebp - # 00_15 7 + # 00_15 7 movl %ebx,%edi movl %ebp,%esi roll $5,%ebp @@ -190,7 +190,7 @@ L002loop: xorl %ecx,%edi leal 1518500249(%ebp,%edx,1),%ebp addl %edi,%ebp - # 00_15 8 + # 00_15 8 movl %eax,%edx movl %ebp,%edi roll $5,%ebp @@ -202,7 +202,7 @@ L002loop: xorl %ebx,%edx leal 1518500249(%ebp,%ecx,1),%ebp addl %edx,%ebp - # 00_15 9 + # 00_15 9 movl %esi,%ecx movl %ebp,%edx roll $5,%ebp @@ -214,7 +214,7 @@ L002loop: xorl %eax,%ecx leal 1518500249(%ebp,%ebx,1),%ebp addl %ecx,%ebp - # 00_15 10 + # 00_15 10 movl %edi,%ebx movl %ebp,%ecx roll $5,%ebp @@ -226,7 +226,7 @@ L002loop: xorl %esi,%ebx leal 1518500249(%ebp,%eax,1),%ebp addl %ebx,%ebp - # 00_15 11 + # 00_15 11 movl %edx,%eax movl %ebp,%ebx roll $5,%ebp @@ -238,7 +238,7 @@ L002loop: xorl %edi,%eax leal 1518500249(%ebp,%esi,1),%ebp addl %eax,%ebp - # 00_15 12 + # 00_15 12 movl %ecx,%esi movl %ebp,%eax roll $5,%ebp @@ -250,7 +250,7 @@ L002loop: xorl %edx,%esi leal 1518500249(%ebp,%edi,1),%ebp addl %esi,%ebp - # 00_15 13 + # 00_15 13 movl %ebx,%edi movl %ebp,%esi roll $5,%ebp @@ -262,7 +262,7 @@ L002loop: xorl %ecx,%edi leal 1518500249(%ebp,%edx,1),%ebp addl %edi,%ebp - # 00_15 14 + # 00_15 14 movl %eax,%edx movl %ebp,%edi roll $5,%ebp @@ -274,7 +274,7 @@ L002loop: xorl %ebx,%edx leal 1518500249(%ebp,%ecx,1),%ebp addl %edx,%ebp - # 00_15 15 + # 00_15 15 movl %esi,%ecx movl %ebp,%edx roll $5,%ebp @@ -287,7 +287,7 @@ L002loop: leal 1518500249(%ebp,%ebx,1),%ebp movl (%esp),%ebx addl %ebp,%ecx - # 16_19 16 + # 16_19 16 movl %edi,%ebp xorl 8(%esp),%ebx xorl %esi,%ebp @@ -304,7 +304,7 @@ L002loop: leal 1518500249(%ebx,%eax,1),%ebx movl 4(%esp),%eax addl %ebp,%ebx - # 16_19 17 + # 16_19 17 movl %edx,%ebp xorl 12(%esp),%eax xorl %edi,%ebp @@ -321,7 +321,7 @@ L002loop: leal 1518500249(%eax,%esi,1),%eax movl 8(%esp),%esi addl %ebp,%eax - # 16_19 18 + # 16_19 18 movl %ecx,%ebp xorl 16(%esp),%esi xorl %edx,%ebp @@ -338,7 +338,7 @@ L002loop: leal 1518500249(%esi,%edi,1),%esi movl 12(%esp),%edi addl %ebp,%esi - # 16_19 19 + # 16_19 19 movl %ebx,%ebp xorl 20(%esp),%edi xorl %ecx,%ebp @@ -355,7 +355,7 @@ L002loop: leal 1518500249(%edi,%edx,1),%edi movl 16(%esp),%edx addl %ebp,%edi - # 20_39 20 + # 20_39 20 movl %esi,%ebp xorl 24(%esp),%edx xorl %eax,%ebp @@ -371,7 +371,7 @@ L002loop: leal 1859775393(%edx,%ecx,1),%edx movl 20(%esp),%ecx addl %ebp,%edx - # 20_39 21 + # 20_39 21 movl %edi,%ebp xorl 28(%esp),%ecx xorl %esi,%ebp @@ -387,7 +387,7 @@ L002loop: leal 1859775393(%ecx,%ebx,1),%ecx movl 24(%esp),%ebx addl %ebp,%ecx - # 20_39 22 + # 20_39 22 movl %edx,%ebp xorl 32(%esp),%ebx xorl %edi,%ebp @@ -403,7 +403,7 @@ L002loop: leal 1859775393(%ebx,%eax,1),%ebx movl 28(%esp),%eax addl %ebp,%ebx - # 20_39 23 + # 20_39 23 movl %ecx,%ebp xorl 36(%esp),%eax xorl %edx,%ebp @@ -419,7 +419,7 @@ L002loop: leal 1859775393(%eax,%esi,1),%eax movl 32(%esp),%esi addl %ebp,%eax - # 20_39 24 + # 20_39 24 movl %ebx,%ebp xorl 40(%esp),%esi xorl %ecx,%ebp @@ -435,7 +435,7 @@ L002loop: leal 1859775393(%esi,%edi,1),%esi movl 36(%esp),%edi addl %ebp,%esi - # 20_39 25 + # 20_39 25 movl %eax,%ebp xorl 44(%esp),%edi xorl %ebx,%ebp @@ -451,7 +451,7 @@ L002loop: leal 1859775393(%edi,%edx,1),%edi movl 40(%esp),%edx addl %ebp,%edi - # 20_39 26 + # 20_39 26 movl %esi,%ebp xorl 48(%esp),%edx xorl %eax,%ebp @@ -467,7 +467,7 @@ L002loop: leal 1859775393(%edx,%ecx,1),%edx movl 44(%esp),%ecx addl %ebp,%edx - # 20_39 27 + # 20_39 27 movl %edi,%ebp xorl 52(%esp),%ecx xorl %esi,%ebp @@ -483,7 +483,7 @@ L002loop: leal 1859775393(%ecx,%ebx,1),%ecx movl 48(%esp),%ebx addl %ebp,%ecx - # 20_39 28 + # 20_39 28 movl %edx,%ebp xorl 56(%esp),%ebx xorl %edi,%ebp @@ -499,7 +499,7 @@ L002loop: leal 1859775393(%ebx,%eax,1),%ebx movl 52(%esp),%eax addl %ebp,%ebx - # 20_39 29 + # 20_39 29 movl %ecx,%ebp xorl 60(%esp),%eax xorl %edx,%ebp @@ -515,7 +515,7 @@ L002loop: leal 1859775393(%eax,%esi,1),%eax movl 56(%esp),%esi addl %ebp,%eax - # 20_39 30 + # 20_39 30 movl %ebx,%ebp xorl (%esp),%esi xorl %ecx,%ebp @@ -531,7 +531,7 @@ L002loop: leal 1859775393(%esi,%edi,1),%esi movl 60(%esp),%edi addl %ebp,%esi - # 20_39 31 + # 20_39 31 movl %eax,%ebp xorl 4(%esp),%edi xorl %ebx,%ebp @@ -547,7 +547,7 @@ L002loop: leal 1859775393(%edi,%edx,1),%edi movl (%esp),%edx addl %ebp,%edi - # 20_39 32 + # 20_39 32 movl %esi,%ebp xorl 8(%esp),%edx xorl %eax,%ebp @@ -563,7 +563,7 @@ L002loop: leal 1859775393(%edx,%ecx,1),%edx movl 4(%esp),%ecx addl %ebp,%edx - # 20_39 33 + # 20_39 33 movl %edi,%ebp xorl 12(%esp),%ecx xorl %esi,%ebp @@ -579,7 +579,7 @@ L002loop: leal 1859775393(%ecx,%ebx,1),%ecx movl 8(%esp),%ebx addl %ebp,%ecx - # 20_39 34 + # 20_39 34 movl %edx,%ebp xorl 16(%esp),%ebx xorl %edi,%ebp @@ -595,7 +595,7 @@ L002loop: leal 1859775393(%ebx,%eax,1),%ebx movl 12(%esp),%eax addl %ebp,%ebx - # 20_39 35 + # 20_39 35 movl %ecx,%ebp xorl 20(%esp),%eax xorl %edx,%ebp @@ -611,7 +611,7 @@ L002loop: leal 1859775393(%eax,%esi,1),%eax movl 16(%esp),%esi addl %ebp,%eax - # 20_39 36 + # 20_39 36 movl %ebx,%ebp xorl 24(%esp),%esi xorl %ecx,%ebp @@ -627,7 +627,7 @@ L002loop: leal 1859775393(%esi,%edi,1),%esi movl 20(%esp),%edi addl %ebp,%esi - # 20_39 37 + # 20_39 37 movl %eax,%ebp xorl 28(%esp),%edi xorl %ebx,%ebp @@ -643,7 +643,7 @@ L002loop: leal 1859775393(%edi,%edx,1),%edi movl 24(%esp),%edx addl %ebp,%edi - # 20_39 38 + # 20_39 38 movl %esi,%ebp xorl 32(%esp),%edx xorl %eax,%ebp @@ -659,7 +659,7 @@ L002loop: leal 1859775393(%edx,%ecx,1),%edx movl 28(%esp),%ecx addl %ebp,%edx - # 20_39 39 + # 20_39 39 movl %edi,%ebp xorl 36(%esp),%ecx xorl %esi,%ebp @@ -675,7 +675,7 @@ L002loop: leal 1859775393(%ecx,%ebx,1),%ecx movl 32(%esp),%ebx addl %ebp,%ecx - # 40_59 40 + # 40_59 40 movl %edi,%ebp xorl 40(%esp),%ebx xorl %esi,%ebp @@ -694,7 +694,7 @@ L002loop: andl %esi,%ebp movl 36(%esp),%eax addl %ebp,%ebx - # 40_59 41 + # 40_59 41 movl %edx,%ebp xorl 44(%esp),%eax xorl %edi,%ebp @@ -713,7 +713,7 @@ L002loop: andl %edi,%ebp movl 40(%esp),%esi addl %ebp,%eax - # 40_59 42 + # 40_59 42 movl %ecx,%ebp xorl 48(%esp),%esi xorl %edx,%ebp @@ -732,7 +732,7 @@ L002loop: andl %edx,%ebp movl 44(%esp),%edi addl %ebp,%esi - # 40_59 43 + # 40_59 43 movl %ebx,%ebp xorl 52(%esp),%edi xorl %ecx,%ebp @@ -751,7 +751,7 @@ L002loop: andl %ecx,%ebp movl 48(%esp),%edx addl %ebp,%edi - # 40_59 44 + # 40_59 44 movl %eax,%ebp xorl 56(%esp),%edx xorl %ebx,%ebp @@ -770,7 +770,7 @@ L002loop: andl %ebx,%ebp movl 52(%esp),%ecx addl %ebp,%edx - # 40_59 45 + # 40_59 45 movl %esi,%ebp xorl 60(%esp),%ecx xorl %eax,%ebp @@ -789,7 +789,7 @@ L002loop: andl %eax,%ebp movl 56(%esp),%ebx addl %ebp,%ecx - # 40_59 46 + # 40_59 46 movl %edi,%ebp xorl (%esp),%ebx xorl %esi,%ebp @@ -808,7 +808,7 @@ L002loop: andl %esi,%ebp movl 60(%esp),%eax addl %ebp,%ebx - # 40_59 47 + # 40_59 47 movl %edx,%ebp xorl 4(%esp),%eax xorl %edi,%ebp @@ -827,7 +827,7 @@ L002loop: andl %edi,%ebp movl (%esp),%esi addl %ebp,%eax - # 40_59 48 + # 40_59 48 movl %ecx,%ebp xorl 8(%esp),%esi xorl %edx,%ebp @@ -846,7 +846,7 @@ L002loop: andl %edx,%ebp movl 4(%esp),%edi addl %ebp,%esi - # 40_59 49 + # 40_59 49 movl %ebx,%ebp xorl 12(%esp),%edi xorl %ecx,%ebp @@ -865,7 +865,7 @@ L002loop: andl %ecx,%ebp movl 8(%esp),%edx addl %ebp,%edi - # 40_59 50 + # 40_59 50 movl %eax,%ebp xorl 16(%esp),%edx xorl %ebx,%ebp @@ -884,7 +884,7 @@ L002loop: andl %ebx,%ebp movl 12(%esp),%ecx addl %ebp,%edx - # 40_59 51 + # 40_59 51 movl %esi,%ebp xorl 20(%esp),%ecx xorl %eax,%ebp @@ -903,7 +903,7 @@ L002loop: andl %eax,%ebp movl 16(%esp),%ebx addl %ebp,%ecx - # 40_59 52 + # 40_59 52 movl %edi,%ebp xorl 24(%esp),%ebx xorl %esi,%ebp @@ -922,7 +922,7 @@ L002loop: andl %esi,%ebp movl 20(%esp),%eax addl %ebp,%ebx - # 40_59 53 + # 40_59 53 movl %edx,%ebp xorl 28(%esp),%eax xorl %edi,%ebp @@ -941,7 +941,7 @@ L002loop: andl %edi,%ebp movl 24(%esp),%esi addl %ebp,%eax - # 40_59 54 + # 40_59 54 movl %ecx,%ebp xorl 32(%esp),%esi xorl %edx,%ebp @@ -960,7 +960,7 @@ L002loop: andl %edx,%ebp movl 28(%esp),%edi addl %ebp,%esi - # 40_59 55 + # 40_59 55 movl %ebx,%ebp xorl 36(%esp),%edi xorl %ecx,%ebp @@ -979,7 +979,7 @@ L002loop: andl %ecx,%ebp movl 32(%esp),%edx addl %ebp,%edi - # 40_59 56 + # 40_59 56 movl %eax,%ebp xorl 40(%esp),%edx xorl %ebx,%ebp @@ -998,7 +998,7 @@ L002loop: andl %ebx,%ebp movl 36(%esp),%ecx addl %ebp,%edx - # 40_59 57 + # 40_59 57 movl %esi,%ebp xorl 44(%esp),%ecx xorl %eax,%ebp @@ -1017,7 +1017,7 @@ L002loop: andl %eax,%ebp movl 40(%esp),%ebx addl %ebp,%ecx - # 40_59 58 + # 40_59 58 movl %edi,%ebp xorl 48(%esp),%ebx xorl %esi,%ebp @@ -1036,7 +1036,7 @@ L002loop: andl %esi,%ebp movl 44(%esp),%eax addl %ebp,%ebx - # 40_59 59 + # 40_59 59 movl %edx,%ebp xorl 52(%esp),%eax xorl %edi,%ebp @@ -1055,7 +1055,7 @@ L002loop: andl %edi,%ebp movl 48(%esp),%esi addl %ebp,%eax - # 20_39 60 + # 20_39 60 movl %ebx,%ebp xorl 56(%esp),%esi xorl %ecx,%ebp @@ -1071,7 +1071,7 @@ L002loop: leal 3395469782(%esi,%edi,1),%esi movl 52(%esp),%edi addl %ebp,%esi - # 20_39 61 + # 20_39 61 movl %eax,%ebp xorl 60(%esp),%edi xorl %ebx,%ebp @@ -1087,7 +1087,7 @@ L002loop: leal 3395469782(%edi,%edx,1),%edi movl 56(%esp),%edx addl %ebp,%edi - # 20_39 62 + # 20_39 62 movl %esi,%ebp xorl (%esp),%edx xorl %eax,%ebp @@ -1103,7 +1103,7 @@ L002loop: leal 3395469782(%edx,%ecx,1),%edx movl 60(%esp),%ecx addl %ebp,%edx - # 20_39 63 + # 20_39 63 movl %edi,%ebp xorl 4(%esp),%ecx xorl %esi,%ebp @@ -1119,7 +1119,7 @@ L002loop: leal 3395469782(%ecx,%ebx,1),%ecx movl (%esp),%ebx addl %ebp,%ecx - # 20_39 64 + # 20_39 64 movl %edx,%ebp xorl 8(%esp),%ebx xorl %edi,%ebp @@ -1135,7 +1135,7 @@ L002loop: leal 3395469782(%ebx,%eax,1),%ebx movl 4(%esp),%eax addl %ebp,%ebx - # 20_39 65 + # 20_39 65 movl %ecx,%ebp xorl 12(%esp),%eax xorl %edx,%ebp @@ -1151,7 +1151,7 @@ L002loop: leal 3395469782(%eax,%esi,1),%eax movl 8(%esp),%esi addl %ebp,%eax - # 20_39 66 + # 20_39 66 movl %ebx,%ebp xorl 16(%esp),%esi xorl %ecx,%ebp @@ -1167,7 +1167,7 @@ L002loop: leal 3395469782(%esi,%edi,1),%esi movl 12(%esp),%edi addl %ebp,%esi - # 20_39 67 + # 20_39 67 movl %eax,%ebp xorl 20(%esp),%edi xorl %ebx,%ebp @@ -1183,7 +1183,7 @@ L002loop: leal 3395469782(%edi,%edx,1),%edi movl 16(%esp),%edx addl %ebp,%edi - # 20_39 68 + # 20_39 68 movl %esi,%ebp xorl 24(%esp),%edx xorl %eax,%ebp @@ -1199,7 +1199,7 @@ L002loop: leal 3395469782(%edx,%ecx,1),%edx movl 20(%esp),%ecx addl %ebp,%edx - # 20_39 69 + # 20_39 69 movl %edi,%ebp xorl 28(%esp),%ecx xorl %esi,%ebp @@ -1215,7 +1215,7 @@ L002loop: leal 3395469782(%ecx,%ebx,1),%ecx movl 24(%esp),%ebx addl %ebp,%ecx - # 20_39 70 + # 20_39 70 movl %edx,%ebp xorl 32(%esp),%ebx xorl %edi,%ebp @@ -1231,7 +1231,7 @@ L002loop: leal 3395469782(%ebx,%eax,1),%ebx movl 28(%esp),%eax addl %ebp,%ebx - # 20_39 71 + # 20_39 71 movl %ecx,%ebp xorl 36(%esp),%eax xorl %edx,%ebp @@ -1247,7 +1247,7 @@ L002loop: leal 3395469782(%eax,%esi,1),%eax movl 32(%esp),%esi addl %ebp,%eax - # 20_39 72 + # 20_39 72 movl %ebx,%ebp xorl 40(%esp),%esi xorl %ecx,%ebp @@ -1263,7 +1263,7 @@ L002loop: leal 3395469782(%esi,%edi,1),%esi movl 36(%esp),%edi addl %ebp,%esi - # 20_39 73 + # 20_39 73 movl %eax,%ebp xorl 44(%esp),%edi xorl %ebx,%ebp @@ -1279,7 +1279,7 @@ L002loop: leal 3395469782(%edi,%edx,1),%edi movl 40(%esp),%edx addl %ebp,%edi - # 20_39 74 + # 20_39 74 movl %esi,%ebp xorl 48(%esp),%edx xorl %eax,%ebp @@ -1295,7 +1295,7 @@ L002loop: leal 3395469782(%edx,%ecx,1),%edx movl 44(%esp),%ecx addl %ebp,%edx - # 20_39 75 + # 20_39 75 movl %edi,%ebp xorl 52(%esp),%ecx xorl %esi,%ebp @@ -1311,7 +1311,7 @@ L002loop: leal 3395469782(%ecx,%ebx,1),%ecx movl 48(%esp),%ebx addl %ebp,%ecx - # 20_39 76 + # 20_39 76 movl %edx,%ebp xorl 56(%esp),%ebx xorl %edi,%ebp @@ -1327,7 +1327,7 @@ L002loop: leal 3395469782(%ebx,%eax,1),%ebx movl 52(%esp),%eax addl %ebp,%ebx - # 20_39 77 + # 20_39 77 movl %ecx,%ebp xorl 60(%esp),%eax xorl %edx,%ebp @@ -1342,7 +1342,7 @@ L002loop: leal 3395469782(%eax,%esi,1),%eax movl 56(%esp),%esi addl %ebp,%eax - # 20_39 78 + # 20_39 78 movl %ebx,%ebp xorl (%esp),%esi xorl %ecx,%ebp @@ -1357,7 +1357,7 @@ L002loop: leal 3395469782(%esi,%edi,1),%esi movl 60(%esp),%edi addl %ebp,%esi - # 20_39 79 + # 20_39 79 movl %eax,%ebp xorl 4(%esp),%edi xorl %ebx,%ebp diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h index f53c3d3eb7c9..cd3e29a4f3b7 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/darwin-i386-cc/asm/openssl.gypi b/deps/openssl/config/archs/darwin-i386-cc/asm/openssl.gypi index 19ae424ab5cc..ba938fab35ce 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/asm/openssl.gypi +++ b/deps/openssl/config/archs/darwin-i386-cc/asm/openssl.gypi @@ -211,6 +211,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -567,6 +568,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/darwin-i386-cc/no-asm/configdata.pm b/deps/openssl/config/archs/darwin-i386-cc/no-asm/configdata.pm index 768c6baae012..5f428f66c0a2 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/darwin-i386-cc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "darwin-i386-cc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/darwin-i386-cc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/darwin-i386-cc/no-asm/crypto/buildinf.h index 3f09529c5bec..6792fc6de47e 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/darwin-i386-cc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: darwin-i386-cc" -#define DATE "built on: Tue Apr 3 00:38:22 2018" +#define DATE "built on: Tue Aug 14 23:13:11 2018" diff --git a/deps/openssl/config/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h index af8c1f66f8ca..b2fe2bef12c9 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/darwin-i386-cc/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/darwin-i386-cc/no-asm/openssl.gypi b/deps/openssl/config/archs/darwin-i386-cc/no-asm/openssl.gypi index c1d26d10f594..f9886736de27 100644 --- a/deps/openssl/config/archs/darwin-i386-cc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/darwin-i386-cc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/configdata.pm b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/configdata.pm index 9976ff77d5a5..ffeb14ad3376 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/configdata.pm +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "darwin64-x86_64-cc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3994,6 +4010,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6332,6 +6354,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7331,6 +7359,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7503,8 +7535,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7525,10 +7557,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7684,6 +7729,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7724,7 +7770,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8106,6 +8155,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8226,9 +8278,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9257,6 +9318,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10737,6 +10802,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11274,6 +11343,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11644,6 +11714,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12649,6 +12720,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12998,6 +13078,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13006,6 +13094,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aes-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aes-x86_64.s index f28903cd57ec..9a337fb89743 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aes-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .p2align 4 _x86_64_AES_encrypt: diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-mb-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-mb-x86_64.s index f127e013ea6b..75ce16175c93 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-mb-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text @@ -1432,3 +1432,4 @@ L$dec8x_done: leaq (%rax),%rsp L$dec8x_epilogue: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha1-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha1-x86_64.s index cdce52cd0a23..b14cf7691a69 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha1-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _aesni_cbc_sha1_enc @@ -2982,3 +2982,4 @@ L$aesenclast14: movdqu %xmm8,(%r9) movd %xmm9,16(%r9) .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha256-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha256-x86_64.s index 40e75bfedb6d..08025a0baea2 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha256-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _aesni_cbc_sha256_enc @@ -4352,3 +4352,4 @@ L$aesenclast4: movdqu %xmm1,(%r9) movdqu %xmm2,16(%r9) .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-x86_64.s index 258ee335adbe..2c741239ef66 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/aesni-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _aesni_encrypt diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s index 52ae782e9a2e..da5d1b112257 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/bsaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text @@ -2495,3 +2495,4 @@ L$63: .quad 0x6363636363636363, 0x6363636363636363 .byte 66,105,116,45,115,108,105,99,101,100,32,65,69,83,32,102,111,114,32,120,56,54,95,54,52,47,83,83,83,69,51,44,32,69,109,105,108,105,97,32,75,195,164,115,112,101,114,44,32,80,101,116,101,114,32,83,99,104,119,97,98,101,44,32,65,110,100,121,32,80,111,108,121,97,107,111,118,0 .p2align 6 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/vpaes-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/vpaes-x86_64.s index 2ffd0bc10075..bcd486565961 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/vpaes-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/aes/vpaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text @@ -824,3 +824,4 @@ L$k_dsbo: .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 .p2align 6 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-avx2.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-avx2.s index f2bc63be34ee..785a35ac9176 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-avx2.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-avx2.s @@ -1,4 +1,4 @@ -.text +.text .globl _rsaz_1024_sqr_avx2 diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-x86_64.s index 8a6e44932d99..7f4a01109e5e 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/rsaz-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s index c0f0b4bd6878..af1ffdd59b6b 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-gf2m.s @@ -1,4 +1,4 @@ -.text +.text .p2align 4 diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont.s index a8b7f998a14d..dd43da0d8674 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont.s @@ -1,4 +1,4 @@ -.text +.text @@ -197,30 +197,30 @@ L$inner_enter: xorq %r14,%r14 movq (%rsp),%rax - leaq (%rsp),%rsi movq %r9,%r15 - jmp L$sub + .p2align 4 L$sub: sbbq (%rcx,%r14,8),%rax movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax + movq 8(%rsp,%r14,8),%rax leaq 1(%r14),%r14 decq %r15 jnz L$sub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 + L$copy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx + movq %r9,(%rsp,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz L$copy @@ -574,10 +574,10 @@ L$inner4x: cmpq %r9,%r14 jb L$outer4x movq 16(%rsp,%r9,8),%rdi + leaq -4(%r9),%r15 movq 0(%rsp),%rax - pxor %xmm0,%xmm0 movq 8(%rsp),%rdx - shrq $2,%r9 + shrq $2,%r15 leaq (%rsp),%rsi xorq %r14,%r14 @@ -585,9 +585,7 @@ L$inner4x: movq 16(%rsi),%rbx movq 24(%rsi),%rbp sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp L$sub4x -.p2align 4 + L$sub4x: movq %rax,0(%rdi,%r14,8) movq %rdx,8(%rdi,%r14,8) @@ -614,34 +612,35 @@ L$sub4x: sbbq $0,%rax movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) + pxor %xmm0,%xmm0 +.byte 102,72,15,110,224 + pcmpeqd %xmm5,%xmm5 + pshufd $0,%xmm4,%xmm4 + movq %r9,%r15 + pxor %xmm4,%xmm5 + shrq $2,%r15 + xorl %eax,%eax + jmp L$copy4x .p2align 4 L$copy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 + movdqa (%rsp,%rax,1),%xmm1 + movdqu (%rdi,%rax,1),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax,1),%xmm3 + movdqa %xmm0,(%rsp,%rax,1) + por %xmm2,%xmm1 + movdqu 16(%rdi,%rax,1),%xmm2 + movdqu %xmm1,(%rdi,%rax,1) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax,1) + por %xmm2,%xmm3 + movdqu %xmm3,16(%rdi,%rax,1) + leaq 32(%rax),%rax decq %r15 jnz L$copy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) movq 8(%rsp,%r9,8),%rsi movq $1,%rax movq -48(%rsi),%r15 diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont5.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont5.s index 2f6288947290..f415b8d80c79 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont5.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/bn/x86_64-mont5.s @@ -1,4 +1,4 @@ -.text +.text @@ -393,18 +393,19 @@ L$sub: sbbq (%rcx,%r14,8),%rax jnz L$sub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.p2align 4 + L$copy: - movq (%rsi,%r14,8),%rax + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz L$copy diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h index b72d49d68b5a..eb762c8ee606 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/buildinf.h @@ -35,4 +35,4 @@ static const char cflags[] = { 'n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: darwin64-x86_64-cc" -#define DATE "built on: Tue Apr 3 00:38:16 2018" +#define DATE "built on: Tue Aug 14 23:13:05 2018" diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/camellia/cmll-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/camellia/cmll-x86_64.s index 8025d088fdab..35a3ea550aa8 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/camellia/cmll-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/camellia/cmll-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _Camellia_EncryptBlock diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/chacha/chacha-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/chacha/chacha-x86_64.s index 58f4283a7962..afd47bdf68f2 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/chacha/chacha-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/chacha/chacha-x86_64.s @@ -1,4 +1,4 @@ -.text +.text @@ -1990,3 +1990,4 @@ L$done8x: vzeroall movq 640(%rsp),%rsp .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/ec/ecp_nistz256-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/ec/ecp_nistz256-x86_64.s index 37e6f155b63f..77102c6a41a0 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/ec/ecp_nistz256-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/ec/ecp_nistz256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _ecp_nistz256_precomputed .p2align 12 @@ -2372,7 +2372,7 @@ _ecp_nistz256_precomputed: .long 0x2a849870,0x4d33dd99,0x41576335,0xa716964b,0x179be0e5,0xff5e3a9b,0x83b13632,0x5b9d6b1b,0xa52f313b,0x3b8bd7d4,0x637a4660,0xc9dd95a0,0x0b3e218f,0x30035962,0xc7b28a3c,0xce1481a3 .long 0x43228d83,0xab41b43a,0x4ad63f99,0x24ae1c30,0x46a51229,0x8e525f1a,0xcd26d2b4,0x14af860f,0x3f714aa1,0xd6baef61,0xeb78795e,0xf51865ad,0xe6a9d694,0xd3e21fce,0x8a37b527,0x82ceb1dd -.text +.text @@ -5931,3 +5931,4 @@ L$point_add_affinex: popq %rbx popq %rbp .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/md5/md5-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/md5/md5-x86_64.s index 76a65a7ed8a7..f385ea2a3f53 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/md5/md5-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/md5/md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .p2align 4 .globl _md5_block_asm_data_order @@ -662,3 +662,4 @@ L$end: addq $40,%rsp L$epilogue: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/aesni-gcm-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/aesni-gcm-x86_64.s index af27718a59b1..f01a002363da 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/aesni-gcm-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/aesni-gcm-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .p2align 5 diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/ghash-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/ghash-x86_64.s index 76f3b7cdfd15..502af78349e2 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/ghash-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/modes/ghash-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _gcm_gmult_4bit diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/poly1305/poly1305-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/poly1305/poly1305-x86_64.s index e4769a669c87..c68f5a6fbec1 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/poly1305/poly1305-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/poly1305/poly1305-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-md5-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-md5-x86_64.s index a9c582fdbbae..47dce361a6c1 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-md5-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .p2align 4 .globl _rc4_md5_enc @@ -1256,3 +1256,4 @@ L$oop: L$epilogue: L$abort: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-x86_64.s index b842ec60de4d..86ef4866621a 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/rc4/rc4-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _RC4 @@ -612,3 +612,4 @@ L$opts: .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 .p2align 6 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-mb-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-mb-x86_64.s index ac6ad9bb8cbb..7026de0e7676 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-mb-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-x86_64.s index 1c52e05e399e..3e3633911f4d 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _sha1_block_data_order diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-mb-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-mb-x86_64.s index 897dacd5b408..95e0e774afd4 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-mb-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-x86_64.s index 3cbe0a170c6f..05e973612b31 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _sha256_block_data_order @@ -5355,3 +5355,4 @@ L$done_avx2: leaq 48(%rsi),%rsp L$epilogue_avx2: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha512-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha512-x86_64.s index 91821da1264e..234616bc3bb8 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha512-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/sha/sha512-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _sha512_block_data_order @@ -5362,3 +5362,4 @@ L$done_avx2: leaq 48(%rsi),%rsp L$epilogue_avx2: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/whrlpool/wp-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/whrlpool/wp-x86_64.s index ad43b5a1b351..4057ba32acfa 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/whrlpool/wp-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/whrlpool/wp-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _whirlpool_block diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/x86_64cpuid.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/x86_64cpuid.s index f9987b733af6..8f16835f716e 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/x86_64cpuid.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/crypto/x86_64cpuid.s @@ -7,7 +7,7 @@ .private_extern _OPENSSL_ia32cap_P .comm _OPENSSL_ia32cap_P,16,2 -.text +.text .globl _OPENSSL_atomic_add @@ -455,3 +455,4 @@ L$tail_rdseed_bytes: L$done_rdseed_bytes: .byte 0xf3,0xc3 + diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/engines/e_padlock-x86_64.s b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/engines/e_padlock-x86_64.s index 5121b7a05c1d..b2c06a991923 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/engines/e_padlock-x86_64.s +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/engines/e_padlock-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl _padlock_capability .p2align 4 @@ -1020,7 +1020,7 @@ L$ctr32_abort: .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,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 .p2align 4 -.data +.data .p2align 3 L$padlock_saved_context: .quad 0 diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h index f7d6eb81141d..dd9f0d18abf9 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/openssl.gypi b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/openssl.gypi index 20d6fbba6aea..b624f31aa0b6 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/asm/openssl.gypi +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/configdata.pm b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/configdata.pm index 5c67787780e3..c9c63f968020 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "darwin64-x86_64-cc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,8 +7402,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h index c390a3edf17d..fd5748f7c9b0 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: darwin64-x86_64-cc" -#define DATE "built on: Tue Apr 3 00:38:20 2018" +#define DATE "built on: Tue Aug 14 23:13:08 2018" diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h index 8ebbf0154777..77321f72a65f 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/include/openssl/opensslconf.h @@ -108,12 +108,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi index 3ec9ac0dd034..3562eebf0b91 100644 --- a/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/darwin64-x86_64-cc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-aarch64/asm/configdata.pm b/deps/openssl/config/archs/linux-aarch64/asm/configdata.pm index 954f89a92d7a..cc18467d56d0 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-aarch64/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-aarch64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3954,6 +3970,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6250,6 +6272,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7237,6 +7265,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7431,10 +7463,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7590,6 +7635,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7630,7 +7676,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8012,6 +8061,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8132,9 +8184,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9143,6 +9204,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10607,6 +10672,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11131,6 +11200,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11497,6 +11567,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12500,6 +12571,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12849,6 +12929,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12857,6 +12945,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-aarch64/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-aarch64/asm/crypto/buildinf.h index 8eff4c899cd3..1efa1d1710c0 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-aarch64/asm/crypto/buildinf.h @@ -27,4 +27,4 @@ static const char cflags[] = { '1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-aarch64" -#define DATE "built on: Tue Apr 3 00:38:23 2018" +#define DATE "built on: Tue Aug 14 23:13:11 2018" diff --git a/deps/openssl/config/archs/linux-aarch64/asm/crypto/ec/ecp_nistz256-armv8.S b/deps/openssl/config/archs/linux-aarch64/asm/crypto/ec/ecp_nistz256-armv8.S index d5b15399508c..85e76b825342 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/crypto/ec/ecp_nistz256-armv8.S +++ b/deps/openssl/config/archs/linux-aarch64/asm/crypto/ec/ecp_nistz256-armv8.S @@ -2765,7 +2765,7 @@ __ecp_nistz256_sqr_mont: // *| | | | | | | | 2| // +|a3*a3|a2*a2|a1*a1|a0*a0| // |--+--+--+--+--+--+--+--| - // |A7|A6|A5|A4|A3|A2|A1|A0|, where Ax is , i.e. follow + // |A7|A6|A5|A4|A3|A2|A1|A0|, where Ax is , i.e. follow // // "can't overflow" below mark carrying into high part of // multiplication result, which can't overflow, because it @@ -3752,21 +3752,21 @@ ecp_nistz256_scatter_w7: prfm pstl1strm,[x0,#4096+64*5] prfm pstl1strm,[x0,#4096+64*6] prfm pstl1strm,[x0,#4096+64*7] - strb w3,[x0,#64*0-1] + strb w3,[x0,#64*0] lsr x3,x3,#8 - strb w3,[x0,#64*1-1] + strb w3,[x0,#64*1] lsr x3,x3,#8 - strb w3,[x0,#64*2-1] + strb w3,[x0,#64*2] lsr x3,x3,#8 - strb w3,[x0,#64*3-1] + strb w3,[x0,#64*3] lsr x3,x3,#8 - strb w3,[x0,#64*4-1] + strb w3,[x0,#64*4] lsr x3,x3,#8 - strb w3,[x0,#64*5-1] + strb w3,[x0,#64*5] lsr x3,x3,#8 - strb w3,[x0,#64*6-1] + strb w3,[x0,#64*6] lsr x3,x3,#8 - strb w3,[x0,#64*7-1] + strb w3,[x0,#64*7] add x0,x0,#64*8 b.ne .Loop_scatter_w7 diff --git a/deps/openssl/config/archs/linux-aarch64/asm/crypto/modes/ghashv8-armx.S b/deps/openssl/config/archs/linux-aarch64/asm/crypto/modes/ghashv8-armx.S index 20d797bfa7c1..c3e7c97d09be 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/crypto/modes/ghashv8-armx.S +++ b/deps/openssl/config/archs/linux-aarch64/asm/crypto/modes/ghashv8-armx.S @@ -1,5 +1,6 @@ #include "arm_arch.h" +#if __ARM_MAX_ARCH__>=7 .text .arch armv8-a+crypto .globl gcm_init_v8 @@ -226,3 +227,4 @@ gcm_ghash_v8: .byte 71,72,65,83,72,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 .align 2 .align 2 +#endif diff --git a/deps/openssl/config/archs/linux-aarch64/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-aarch64/asm/include/openssl/opensslconf.h index 3976dadb19ca..8bd973e750d6 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-aarch64/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-aarch64/asm/openssl.gypi b/deps/openssl/config/archs/linux-aarch64/asm/openssl.gypi index e0a7b4897094..216df5ffe56b 100644 --- a/deps/openssl/config/archs/linux-aarch64/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-aarch64/asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-aarch64/no-asm/configdata.pm b/deps/openssl/config/archs/linux-aarch64/no-asm/configdata.pm index 6c0451cfb7f1..59482bab95e3 100644 --- a/deps/openssl/config/archs/linux-aarch64/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-aarch64/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-aarch64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1076,6 +1076,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1242,10 +1246,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3932,6 +3948,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6210,6 +6232,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7197,6 +7225,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7369,9 +7401,9 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", "include", + "test", ".", ], "test/threadstest.o" => @@ -7391,10 +7423,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7550,6 +7595,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7590,7 +7636,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7972,6 +8021,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8092,9 +8144,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9083,6 +9144,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10523,6 +10588,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11042,6 +11111,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11402,6 +11472,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12405,6 +12476,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12754,6 +12834,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12762,6 +12850,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-aarch64/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-aarch64/no-asm/crypto/buildinf.h index fbcadcd5ff27..53176610a1a0 100644 --- a/deps/openssl/config/archs/linux-aarch64/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-aarch64/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-aarch64" -#define DATE "built on: Tue Apr 3 00:38:24 2018" +#define DATE "built on: Tue Aug 14 23:13:13 2018" diff --git a/deps/openssl/config/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h index af3a003d5193..08bf3d43940b 100644 --- a/deps/openssl/config/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-aarch64/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-aarch64/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-aarch64/no-asm/openssl.gypi index 9d9b4c82f8dc..f05778a2c40f 100644 --- a/deps/openssl/config/archs/linux-aarch64/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-aarch64/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-armv4/asm/configdata.pm b/deps/openssl/config/archs/linux-armv4/asm/configdata.pm index cb318fa4a5d6..1b3e80fa901c 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-armv4/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-armv4", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3948,6 +3964,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6247,6 +6269,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7234,6 +7262,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7406,8 +7438,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7428,10 +7460,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7587,6 +7632,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7627,7 +7673,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8009,6 +8058,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8129,9 +8181,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9144,6 +9205,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10612,6 +10677,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11137,6 +11206,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11504,6 +11574,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12507,6 +12578,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12856,6 +12936,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12864,6 +12952,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/armv4cpuid.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/armv4cpuid.S index deb601673717..eae2d6ad259e 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/armv4cpuid.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/armv4cpuid.S @@ -104,7 +104,7 @@ CRYPTO_memcmp: ldmia sp!,{r4,r5} .Lno_data: - neg r0,ip + rsb r0,ip,#0 mov r0,r0,lsr#31 #if __ARM_ARCH__>=5 bx lr diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/bn/armv4-mont.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/bn/armv4-mont.S index bd5efa815645..9f6e7e0c7934 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/bn/armv4-mont.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/bn/armv4-mont.S @@ -165,14 +165,15 @@ bn_mul_mont: mov r4,sp @ "rewind" r4 sub r2,r2,r5 @ "rewind" r2 - and r1,r4,r14 - bic r3,r2,r14 - orr r1,r1,r3 @ ap=borrow?tp:rp - -.Lcopy: ldr r7,[r1],#4 @ copy or in-place refresh +.Lcopy: ldr r7,[r4] @ conditional copy + ldr r5,[r2] str sp,[r4],#4 @ zap tp - str r7,[r2],#4 - cmp r4,r0 +#ifdef __thumb2__ + it cc +#endif + movcc r5,r7 + str r5,[r2],#4 + teq r4,r0 @ preserve carry bne .Lcopy mov sp,r0 diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-armv4/asm/crypto/buildinf.h index 6a7c2e2220c7..d930fb3ea664 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/buildinf.h @@ -30,4 +30,4 @@ static const char cflags[] = { '"','"',' ','\0' }; #define PLATFORM "platform: linux-armv4" -#define DATE "built on: Tue Apr 3 00:38:25 2018" +#define DATE "built on: Tue Aug 14 23:13:13 2018" diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/ec/ecp_nistz256-armv4.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/ec/ecp_nistz256-armv4.S index 625e9506de5a..ee64a0b30bee 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/ec/ecp_nistz256-armv4.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/ec/ecp_nistz256-armv4.S @@ -3432,13 +3432,13 @@ ecp_nistz256_scatter_w7: .Loop_scatter_w7: ldr r3,[r1],#4 subs r2,r2,#1 - strb r3,[r0,#64*0-1] + strb r3,[r0,#64*0] mov r3,r3,lsr#8 - strb r3,[r0,#64*1-1] + strb r3,[r0,#64*1] mov r3,r3,lsr#8 - strb r3,[r0,#64*2-1] + strb r3,[r0,#64*2] mov r3,r3,lsr#8 - strb r3,[r0,#64*3-1] + strb r3,[r0,#64*3] add r0,r0,#64*4 bne .Loop_scatter_w7 @@ -4114,7 +4114,7 @@ ecp_nistz256_point_add: stmia r0!,{r4,r5} .Ladd_done: add sp,sp,#32*18+16+16 @ +16 means "skip even over saved r0-r3" -#if __ARM_ARCH__>=5 || defined(__thumb__) +#if __ARM_ARCH__>=5 || !defined(__thumb__) ldmia sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,pc} #else ldmia sp!,{r4,r5,r6,r7,r8,r9,r10,r11,r12,lr} diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghash-armv4.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghash-armv4.S index 2134f9b647f4..e654d9480f4d 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghash-armv4.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghash-armv4.S @@ -3,6 +3,8 @@ .text #if defined(__thumb2__) || defined(__clang__) .syntax unified +#define ldrplb ldrbpl +#define ldrneb ldrbne #endif #if defined(__thumb2__) .thumb @@ -10,11 +12,6 @@ .code 32 #endif -#ifdef __clang__ -#define ldrplb ldrbpl -#define ldrneb ldrbne -#endif - .type rem_4bit,%object .align 5 rem_4bit: diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghashv8-armx.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghashv8-armx.S index f6fb3f1f7336..ceceb743ece0 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghashv8-armx.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/modes/ghashv8-armx.S @@ -1,5 +1,6 @@ #include "arm_arch.h" +#if __ARM_MAX_ARCH__>=7 .text .fpu neon .code 32 @@ -230,3 +231,4 @@ gcm_ghash_v8: .byte 71,72,65,83,72,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 .align 2 .align 2 +#endif diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/poly1305/poly1305-armv4.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/poly1305/poly1305-armv4.S index 7484c33b84a0..16b0eb0e9fd4 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/poly1305/poly1305-armv4.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/poly1305/poly1305-armv4.S @@ -132,6 +132,7 @@ poly1305_init: .type poly1305_blocks,%function .align 5 poly1305_blocks: +.Lpoly1305_blocks: stmdb sp!,{r3,r4,r5,r6,r7,r8,r9,r10,r11,lr} ands r2,r2,#-16 @@ -606,7 +607,7 @@ poly1305_blocks_neon: cmp r2,#64 bhs .Lenter_neon tst ip,ip @ is_base2_26? - beq poly1305_blocks + beq .Lpoly1305_blocks .Lenter_neon: stmdb sp!,{r4,r5,r6,r7} diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha256-armv4.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha256-armv4.S index 239e7504f102..3efcde6b6eb0 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha256-armv4.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha256-armv4.S @@ -1,4 +1,4 @@ -@ Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +@ Copyright 2007-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 @@ -1831,7 +1831,7 @@ sha256_block_data_order: eor r12,r12,r6 @ Maj(a,b,c) add r4,r4,r0,ror#2 @ h+=Sigma0(a) @ add r4,r4,r12 @ h+=Maj(a,b,c) -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ ite eq @ Thumb2 thing, sanity check in ARM #endif ldreq r3,[sp,#16*4] @ pull ctx diff --git a/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha512-armv4.S b/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha512-armv4.S index 14eb87e0ce5c..1e2fbf635016 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha512-armv4.S +++ b/deps/openssl/config/archs/linux-armv4/asm/crypto/sha/sha512-armv4.S @@ -1,4 +1,4 @@ -@ Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +@ Copyright 2007-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 @@ -265,7 +265,7 @@ sha512_block_data_order: teq r9,#148 ldr r12,[sp,#16+0] @ c.lo -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ it eq @ Thumb2 thing, sanity check in ARM #endif orreq r14,r14,#1 @@ -405,7 +405,7 @@ sha512_block_data_order: teq r9,#23 ldr r12,[sp,#16+0] @ c.lo -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ it eq @ Thumb2 thing, sanity check in ARM #endif orreq r14,r14,#1 @@ -442,7 +442,7 @@ sha512_block_data_order: adc r6,r6,r4 @ h += T tst r14,#1 add r14,r14,#8 -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ ittt eq @ Thumb2 thing, sanity check in ARM #endif ldreq r9,[sp,#184+0] diff --git a/deps/openssl/config/archs/linux-armv4/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-armv4/asm/include/openssl/opensslconf.h index 2f9817e43b12..21dd8cc643b8 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-armv4/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-armv4/asm/openssl.gypi b/deps/openssl/config/archs/linux-armv4/asm/openssl.gypi index fcb454895670..7344b58fb907 100644 --- a/deps/openssl/config/archs/linux-armv4/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-armv4/asm/openssl.gypi @@ -218,6 +218,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -578,6 +579,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-armv4/no-asm/configdata.pm b/deps/openssl/config/archs/linux-armv4/no-asm/configdata.pm index af91de539b24..6eb5d78ae80f 100644 --- a/deps/openssl/config/archs/linux-armv4/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-armv4/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-armv4", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1076,6 +1076,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1242,10 +1246,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3932,6 +3948,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6210,6 +6232,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7197,6 +7225,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7369,8 +7401,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7391,10 +7423,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7550,6 +7595,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7590,7 +7636,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7972,6 +8021,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8092,9 +8144,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9083,6 +9144,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10523,6 +10588,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11042,6 +11111,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11402,6 +11472,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12405,6 +12476,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12754,6 +12834,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12762,6 +12850,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-armv4/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-armv4/no-asm/crypto/buildinf.h index edce6b669b2d..8bba39bbb837 100644 --- a/deps/openssl/config/archs/linux-armv4/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-armv4/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-armv4" -#define DATE "built on: Tue Apr 3 00:38:26 2018" +#define DATE "built on: Tue Aug 14 23:13:15 2018" diff --git a/deps/openssl/config/archs/linux-armv4/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-armv4/no-asm/include/openssl/opensslconf.h index 1f0c62b3c912..5ba3b88d4e5f 100644 --- a/deps/openssl/config/archs/linux-armv4/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-armv4/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-armv4/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-armv4/no-asm/openssl.gypi index 9a109fd8745d..c20b80999fc4 100644 --- a/deps/openssl/config/archs/linux-armv4/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-armv4/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-elf/asm/configdata.pm b/deps/openssl/config/archs/linux-elf/asm/configdata.pm index e1c530bd8749..c2da301a2f47 100644 --- a/deps/openssl/config/archs/linux-elf/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-elf/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-elf", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3945,6 +3961,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6271,6 +6293,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7270,6 +7298,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7464,10 +7496,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7623,6 +7668,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7663,7 +7709,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8045,6 +8094,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8165,9 +8217,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9164,6 +9225,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10636,6 +10701,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11165,6 +11234,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11533,6 +11603,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12538,6 +12609,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12887,6 +12967,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12895,6 +12983,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-elf/asm/crypto/bn/x86-mont.s b/deps/openssl/config/archs/linux-elf/asm/crypto/bn/x86-mont.s index 945d9e58248a..8212ff0825f5 100644 --- a/deps/openssl/config/archs/linux-elf/asm/crypto/bn/x86-mont.s +++ b/deps/openssl/config/archs/linux-elf/asm/crypto/bn/x86-mont.s @@ -445,16 +445,18 @@ bn_mul_mont: leal 1(%edx),%edx jge .L017sub sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi + movl $-1,%edx + xorl %eax,%edx + jmp .L018copy .align 16 .L018copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) + movl 32(%esp,%ebx,4),%esi + movl (%edi,%ebx,4),%ebp movl %ecx,32(%esp,%ebx,4) + andl %eax,%esi + andl %edx,%ebp + orl %esi,%ebp + movl %ebp,(%edi,%ebx,4) decl %ebx jge .L018copy movl 24(%esp),%esp diff --git a/deps/openssl/config/archs/linux-elf/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-elf/asm/crypto/buildinf.h index 8baf29639c3e..865759ecc45e 100644 --- a/deps/openssl/config/archs/linux-elf/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-elf/asm/crypto/buildinf.h @@ -37,4 +37,4 @@ static const char cflags[] = { '"',' ','\0' }; #define PLATFORM "platform: linux-elf" -#define DATE "built on: Tue Apr 3 00:38:27 2018" +#define DATE "built on: Tue Aug 14 23:13:15 2018" diff --git a/deps/openssl/config/archs/linux-elf/asm/crypto/ec/ecp_nistz256-x86.s b/deps/openssl/config/archs/linux-elf/asm/crypto/ec/ecp_nistz256-x86.s index cbccc5ebf7a2..9092d6632152 100644 --- a/deps/openssl/config/archs/linux-elf/asm/crypto/ec/ecp_nistz256-x86.s +++ b/deps/openssl/config/archs/linux-elf/asm/crypto/ec/ecp_nistz256-x86.s @@ -3857,7 +3857,7 @@ ecp_nistz256_scatter_w7: movl 20(%esp),%edi movl 24(%esp),%esi movl 28(%esp),%ebp - leal -1(%edi,%ebp,1),%edi + leal (%edi,%ebp,1),%edi movl $16,%ebp .L007scatter_w7_loop: movl (%esi),%eax diff --git a/deps/openssl/config/archs/linux-elf/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-elf/asm/include/openssl/opensslconf.h index e819a68f0b6a..b9d6509c0b95 100644 --- a/deps/openssl/config/archs/linux-elf/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-elf/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-elf/asm/openssl.gypi b/deps/openssl/config/archs/linux-elf/asm/openssl.gypi index bbc226b89b25..d5cde454dde2 100644 --- a/deps/openssl/config/archs/linux-elf/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-elf/asm/openssl.gypi @@ -211,6 +211,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -567,6 +568,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-elf/no-asm/configdata.pm b/deps/openssl/config/archs/linux-elf/no-asm/configdata.pm index 59021fb1d453..31d78b0b3c6d 100644 --- a/deps/openssl/config/archs/linux-elf/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-elf/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-elf", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1075,6 +1075,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1241,10 +1245,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3931,6 +3947,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6209,6 +6231,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7196,6 +7224,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7368,8 +7400,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7390,10 +7422,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7549,6 +7594,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7589,7 +7635,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7971,6 +8020,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8091,9 +8143,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9082,6 +9143,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10522,6 +10587,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11041,6 +11110,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11401,6 +11471,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12404,6 +12475,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12753,6 +12833,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12761,6 +12849,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-elf/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-elf/no-asm/crypto/buildinf.h index 606ace102eaf..23fa5b79945b 100644 --- a/deps/openssl/config/archs/linux-elf/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-elf/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-elf" -#define DATE "built on: Tue Apr 3 00:38:29 2018" +#define DATE "built on: Tue Aug 14 23:13:17 2018" diff --git a/deps/openssl/config/archs/linux-elf/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-elf/no-asm/include/openssl/opensslconf.h index b20dbd02123e..d0fb48f465fe 100644 --- a/deps/openssl/config/archs/linux-elf/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-elf/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi index b869b1a864cf..e4ce5e3b9276 100644 --- a/deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-elf/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc/asm/configdata.pm b/deps/openssl/config/archs/linux-ppc/asm/configdata.pm index 5e487cc37444..63186d5ce0d1 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3963,6 +3979,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6295,6 +6317,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7282,6 +7310,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7454,8 +7486,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7476,10 +7508,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7635,6 +7680,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7675,7 +7721,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8057,6 +8106,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8177,9 +8229,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9188,6 +9249,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10664,6 +10729,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11188,6 +11257,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11557,6 +11627,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12560,6 +12631,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12909,6 +12989,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12917,6 +13005,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aes-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aes-ppc.s index d59a397c0d5b..7a2b6fce8322 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aes-ppc.s @@ -8,7 +8,7 @@ mflr 3 addi 3,3,120 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -18,7 +18,7 @@ mflr 3 addi 3,3,2360 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -740,7 +740,7 @@ AES_encrypt: lwz 31,124(1) mtlr 0 addi 1,1,128 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -820,7 +820,7 @@ AES_encrypt: bdnz .Lenc_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -885,7 +885,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1030,7 +1030,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_encrypt,.-AES_encrypt @@ -1175,7 +1175,7 @@ AES_decrypt: lwz 31,124(1) mtlr 0 addi 1,1,128 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1255,7 +1255,7 @@ AES_decrypt: bdnz .Ldec_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -1320,7 +1320,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1550,7 +1550,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_decrypt,.-AES_decrypt diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aesp8-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aesp8-ppc.s index 5eb788907d01..16ddeda37832 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aesp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/aesp8-ppc.s @@ -14,7 +14,7 @@ rcon: mflr 6 addi 6,6,-0x48 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,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 @@ -278,7 +278,7 @@ aes_p8_set_encrypt_key: .Lenc_key_abort: mr 3,6 - blr + blr .long 0 .byte 0,12,0x14,1,0,0,3,0 .long 0 @@ -327,7 +327,7 @@ aes_p8_set_decrypt_key: xor 3,3,3 .Ldec_key_abort: addi 1,1,32 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,3,0 .long 0 @@ -395,7 +395,7 @@ aes_p8_encrypt: stvx 0,7,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -463,7 +463,7 @@ aes_p8_decrypt: stvx 0,7,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -625,7 +625,7 @@ aes_p8_cbc_encrypt: stvx 2,10,7 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -915,8 +915,8 @@ _aesp8_cbc_decrypt8x: addic. 5,5,128 beq .Lcbc_dec8x_done - nop - nop + nop + nop .Loop_cbc_dec8x_tail: .long 0x11EFC548 @@ -1004,15 +1004,15 @@ _aesp8_cbc_decrypt8x: cmplwi 5,32 blt .Lcbc_dec8x_one - nop + nop beq .Lcbc_dec8x_two cmplwi 5,64 blt .Lcbc_dec8x_three - nop + nop beq .Lcbc_dec8x_four cmplwi 5,96 blt .Lcbc_dec8x_five - nop + nop beq .Lcbc_dec8x_six .Lcbc_dec8x_seven: @@ -1199,7 +1199,7 @@ _aesp8_cbc_decrypt8x: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1307,7 +1307,7 @@ aes_p8_ctr32_encrypt_blocks: stvx 2,0,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -1610,15 +1610,15 @@ _aesp8_ctr32_encrypt8x: .Lctr32_enc8x_break: cmpwi 5,-0x60 blt .Lctr32_enc8x_one - nop + nop beq .Lctr32_enc8x_two cmpwi 5,-0x40 blt .Lctr32_enc8x_three - nop + nop beq .Lctr32_enc8x_four cmpwi 5,-0x20 blt .Lctr32_enc8x_five - nop + nop beq .Lctr32_enc8x_six cmpwi 5,0x00 blt .Lctr32_enc8x_seven @@ -1827,7 +1827,7 @@ _aesp8_ctr32_encrypt8x: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1965,7 +1965,7 @@ aes_p8_xts_encrypt: .long 0x10620509 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2038,7 +2038,7 @@ aes_p8_xts_encrypt: .Lxts_enc_ret: mtspr 256,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2179,7 +2179,7 @@ aes_p8_xts_decrypt: .long 0x10620549 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2244,7 +2244,7 @@ aes_p8_xts_decrypt: .long 0x10620549 - nop + nop .long 0x7C602799 @@ -2295,7 +2295,7 @@ aes_p8_xts_decrypt: .Lxts_dec_ret: mtspr 256,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2626,11 +2626,11 @@ _aesp8_xts_encrypt6x: beq .Lxts_enc6x_zero cmpwi 5,0x20 blt .Lxts_enc6x_one - nop + nop beq .Lxts_enc6x_two cmpwi 5,0x40 blt .Lxts_enc6x_three - nop + nop beq .Lxts_enc6x_four .Lxts_enc6x_five: @@ -2727,7 +2727,7 @@ _aesp8_xts_encrypt6x: .align 4 .Lxts_enc6x_one: vxor 7,5,17 - nop + nop .Loop_xts_enc1x: .long 0x10E7C508 lvx 24,26,7 @@ -2863,7 +2863,7 @@ _aesp8_xts_encrypt6x: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -2948,7 +2948,7 @@ _aesp8_xts_enc5x: .long 0x11AD1509 .long 0x11CE1D09 .long 0x11EF2509 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -3276,11 +3276,11 @@ _aesp8_xts_decrypt6x: beq .Lxts_dec6x_zero cmpwi 5,0x20 blt .Lxts_dec6x_one - nop + nop beq .Lxts_dec6x_two cmpwi 5,0x40 blt .Lxts_dec6x_three - nop + nop beq .Lxts_dec6x_four .Lxts_dec6x_five: @@ -3381,7 +3381,7 @@ _aesp8_xts_decrypt6x: .align 4 .Lxts_dec6x_one: vxor 7,5,17 - nop + nop .Loop_xts_dec1x: .long 0x10E7C548 lvx 24,26,7 @@ -3551,7 +3551,7 @@ _aesp8_xts_decrypt6x: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3636,6 +3636,6 @@ _aesp8_xts_dec5x: .long 0x11CE1D49 .long 0x11EF2549 mtctr 9 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/vpaes-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/vpaes-ppc.s index babd699bf79f..12bc03a58838 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/vpaes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/aes/vpaes-ppc.s @@ -95,7 +95,7 @@ _vpaes_consts: mflr 12 addi 12,12,-0x308 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .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,65,108,116,105,86,101,99,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 @@ -135,7 +135,7 @@ _vpaes_encrypt_preheat: lvx 17, 12, 8 lvx 18, 12, 11 lvx 19, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -223,7 +223,7 @@ _vpaes_encrypt_core: vxor 4, 4, 5 vxor 0, 0, 4 vperm 0, 0, 7, 1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -319,7 +319,7 @@ vpaes_encrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -361,7 +361,7 @@ _vpaes_decrypt_preheat: lvx 21, 12, 8 lvx 22, 12, 11 lvx 23, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -456,7 +456,7 @@ _vpaes_decrypt_core: vxor 4, 4, 5 vxor 0, 1, 4 vperm 0, 0, 7, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -552,7 +552,7 @@ vpaes_decrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -780,7 +780,7 @@ vpaes_cbc_encrypt: lwz 31,236(1) mtlr 0 addi 1,1,240 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,2,6,0 .long 0 @@ -834,7 +834,7 @@ _vpaes_key_preheat: lvx 24, 12, 9 lvx 25, 0, 12 lvx 26, 12, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1080,7 +1080,7 @@ _vpaes_schedule_core: vxor 6, 6, 6 vxor 7, 7, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1108,7 +1108,7 @@ _vpaes_schedule_192_smear: vor 0, 6, 6 vsldoi 6, 6, 9, 8 vsldoi 6, 9, 6, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1174,7 +1174,7 @@ _vpaes_schedule_low_round: vxor 0, 1, 7 vxor 7, 1, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1196,7 +1196,7 @@ _vpaes_schedule_transform: vperm 2, 13, 13, 2 vxor 0, 0, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1248,7 +1248,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .align 4 .Lschedule_mangle_dec: @@ -1299,7 +1299,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1376,7 +1376,7 @@ vpaes_set_encrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -1460,7 +1460,7 @@ vpaes_set_decrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/bn-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/bn-ppc.s index 4745306e54ab..b029cc94b09f 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/bn-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/bn-ppc.s @@ -237,7 +237,7 @@ bn_sqr_comba4: stw 9,24(3) stw 10,28(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -665,7 +665,7 @@ bn_sqr_comba8: stw 9, 60(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -819,7 +819,7 @@ bn_mul_comba4: stw 10,24(3) stw 11,28(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1358,7 +1358,7 @@ bn_mul_comba8: adde 10,10,9 stw 12,56(3) stw 10,60(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1409,7 +1409,7 @@ bn_sub_words: .Lppcasm_sub_adios: subfze 3,0 andi. 3,3,1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1455,7 +1455,7 @@ bn_add_words: bdnz .Lppcasm_add_mainloop .Lppcasm_add_adios: addze 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1484,7 +1484,7 @@ bn_div_words: cmplwi 0,5,0 bne .Lppcasm_div1 li 3,-1 - blr + blr .Lppcasm_div1: xor 0,0,0 li 8,32 @@ -1571,7 +1571,7 @@ bn_div_words: b .Lppcasm_divouterloop .Lppcasm_div9: or 3,8,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1613,7 +1613,7 @@ bn_sqr_words: stwu 8,4(3) bdnz .Lppcasm_sqr_mainloop .Lppcasm_sqr_adios: - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1719,7 +1719,7 @@ bn_mul_words: .Lppcasm_mw_OVER: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1845,7 +1845,7 @@ bn_mul_add_words: .Lppcasm_maw_adios: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc-mont.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc-mont.s index aefd29c9d874..5bba1e47acc4 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc-mont.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc-mont.s @@ -10,7 +10,7 @@ bn_mul_mont_int: li 3,0 .long 0x4d800020 cmpwi 8,32 - bgelr + bgelr slwi 8,8,2 li 12,-4096 addi 3,8,256 @@ -183,15 +183,16 @@ bn_mul_mont_int: li 21,0 mtctr 8 subfe 3,21,3 - and 4,22,3 - andc 6,9,3 - or 4,4,6 .align 4 .Lcopy: - lwzx 12,4,21 - stwx 12,9,21 + lwzx 12,22,21 + lwzx 10,9,21 + and 12,12,3 + andc 10,10,3 stwx 21,22,21 + or 10,10,12 + stwx 10,9,21 addi 21,21,4 bdnz .Lcopy @@ -210,7 +211,7 @@ bn_mul_mont_int: lwz 30,-8(12) lwz 31,-4(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x80,12,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc64-mont.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc64-mont.s index 49c6e9c741aa..774b4c4dea1c 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc64-mont.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/bn/ppc64-mont.s @@ -889,11 +889,8 @@ bn_mul_mont_fpu64: li 12,0 subfe 3,12,3 - addi 10,1,196 + addi 4,1,196 subf 9,8,9 - and 4,10,3 - andc 6,9,3 - or 4,4,6 addi 10,1,192 mtctr 11 @@ -903,6 +900,10 @@ bn_mul_mont_fpu64: lwz 25,8(4) lwz 26,12(4) lwzu 27,16(4) + lwz 28,4(9) + lwz 29,8(9) + lwz 30,12(9) + lwz 31,16(9) std 12,8(22) std 12,16(22) std 12,24(22) @@ -911,6 +912,18 @@ bn_mul_mont_fpu64: std 12,48(22) std 12,56(22) stdu 12,64(22) + and 24,24,3 + and 25,25,3 + and 26,26,3 + and 27,27,3 + andc 28,28,3 + andc 29,29,3 + andc 30,30,3 + andc 31,31,3 + or 24,24,28 + or 25,25,29 + or 26,26,30 + or 27,27,31 stw 24,4(9) stw 25,8(9) stw 26,12(9) @@ -946,7 +959,7 @@ bn_mul_mont_fpu64: lfd 30,-16(12) lfd 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x8c,13,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc/asm/crypto/buildinf.h index 1a32730b388b..c0355572c41d 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/buildinf.h @@ -26,4 +26,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc" -#define DATE "built on: Tue Apr 3 00:38:38 2018" +#define DATE "built on: Tue Aug 14 23:13:27 2018" diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/chacha/chacha-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/chacha/chacha-ppc.s index e07f5837a02a..02f53619e508 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/chacha/chacha-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/chacha/chacha-ppc.s @@ -60,7 +60,7 @@ __ChaCha20_ctr32_int: lwz 31,156(1) mtlr 0 addi 1,1,160 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,5,0 .long 0 @@ -346,7 +346,7 @@ __ChaCha20_1x: bne .Loop_outer - blr + blr .align 4 .Ltail: @@ -397,7 +397,7 @@ __ChaCha20_1x: stw 1,80(1) stw 1,84(1) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -556,7 +556,7 @@ ChaCha20_ctr32_vmx: vspltisw 27,7 mtctr 0 - nop + nop .Loop_vmx: vadduwm 0,0,1 add 16,16,20 @@ -1049,7 +1049,7 @@ ChaCha20_ctr32_vmx: cmplwi 5,255 bgt .Loop_outer_vmx - nop + nop .Ldone_vmx: cmplwi 5,0 @@ -1102,7 +1102,7 @@ ChaCha20_ctr32_vmx: lwz 31,364(1) mtlr 0 addi 1,1,368 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,18,5,0 .long 0 @@ -1115,7 +1115,7 @@ ChaCha20_ctr32_vmx: mflr 12 addi 12,12,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/modes/ghashp8-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/modes/ghashp8-ppc.s index 28cbe1956ff0..a0e364910f15 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/modes/ghashp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/modes/ghashp8-ppc.s @@ -123,7 +123,7 @@ gcm_init_p8: .long 0x7E4A1F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -173,7 +173,7 @@ gcm_gmult_p8: .long 0x7C001F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -290,7 +290,7 @@ gcm_ghash_p8: .long 0x7C001F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -557,7 +557,7 @@ gcm_ghash_p8: lvx 30,10,1 lvx 31,11,1 addi 1,1,232 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppc.s index a03a08d66c69..940d4fa85340 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppc.s @@ -36,7 +36,7 @@ poly1305_init_int: .Lno_key: xor 3,3,3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .size poly1305_init_int,.-poly1305_init_int @@ -238,7 +238,7 @@ poly1305_blocks: lwz 31,92(1) addi 1,1,96 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,18,4,0 .size poly1305_blocks,.-poly1305_blocks @@ -303,7 +303,7 @@ poly1305_emit: lwz 30,88(1) lwz 31,92(1) addi 1,1,96 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 .size poly1305_emit,.-poly1305_emit diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppcfp.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppcfp.s index 519158eefd8e..ee69ce054ce5 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppcfp.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/poly1305/poly1305-ppcfp.s @@ -146,7 +146,7 @@ poly1305_init_fpu: .Lno_key: xor 3,3,3 addi 1,1,24 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,2,0 .size poly1305_init_fpu,.-poly1305_init_fpu @@ -462,7 +462,7 @@ poly1305_blocks_fpu: lfd 31,208(1) addi 1,1,216 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,0,4,0 .size poly1305_blocks_fpu,.-poly1305_blocks_fpu @@ -547,7 +547,7 @@ poly1305_emit_fpu: lwz 30,32(1) lwz 31,36(1) addi 1,1,40 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 .size poly1305_emit_fpu,.-poly1305_emit_fpu @@ -558,7 +558,7 @@ poly1305_emit_fpu: mflr 5 addi 5,5,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/ppccpuid.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/ppccpuid.s index 59359e7919ac..19fac1f319cf 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/ppccpuid.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/ppccpuid.s @@ -6,7 +6,7 @@ .align 4 OPENSSL_fpu_probe: fmr 0,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_fpu_probe,.-OPENSSL_fpu_probe @@ -16,7 +16,7 @@ OPENSSL_fpu_probe: OPENSSL_ppc64_probe: fcfid 1,1 rldicl 0,0,32,32 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_ppc64_probe,.-OPENSSL_ppc64_probe @@ -26,7 +26,7 @@ OPENSSL_ppc64_probe: .align 4 OPENSSL_altivec_probe: .long 0x10000484 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_altivec_probe,.-OPENSSL_altivec_probe @@ -37,7 +37,7 @@ OPENSSL_altivec_probe: OPENSSL_crypto207_probe: .long 0x7C000E99 .long 0x10000508 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_crypto207_probe,.-OPENSSL_crypto207_probe @@ -49,7 +49,7 @@ OPENSSL_madd300_probe: xor 0,0,0 .long 0x10600033 .long 0x10600031 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -82,7 +82,7 @@ OPENSSL_wipe_cpu: xor 12,12,12 fmr 12,31 fmr 13,31 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu @@ -96,7 +96,7 @@ OPENSSL_atomic_add: stwcx. 0,0,3 bne- .Ladd mr 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -112,7 +112,7 @@ OPENSSL_rdtsc: mftbu 4 .long 0x7c042840 bne .Loop_rdtsc - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_rdtsc,.-OPENSSL_rdtsc @@ -130,7 +130,7 @@ OPENSSL_cleanse: stb 0,0(3) addi 3,3,1 bdnz $-8 - blr + blr .Lot: andi. 5,3,3 beq .Laligned stb 0,0(3) @@ -145,7 +145,7 @@ OPENSSL_cleanse: bdnz $-8 andi. 4,4,3 bne .Little - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -172,7 +172,7 @@ CRYPTO_memcmp: li 3,0 sub 3,3,0 extrwi 3,3,1,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -204,7 +204,7 @@ OPENSSL_instrument_bus: bdnz .Loop mr 3,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -257,7 +257,7 @@ OPENSSL_instrument_bus2: .Ldone2: srwi 4,4,2 sub 3,0,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha1-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha1-ppc.s index 5f577714e5a6..ca8c279a2c44 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha1-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha1-ppc.s @@ -101,7 +101,7 @@ sha1_block_data_order: lwz 31,156(1) mtlr 0 addi 1,1,160 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1109,7 +1109,7 @@ sha1_block_data_order: mr 11,20 addi 4,4,64 bdnz .Lsha1_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha1_block_data_order,.-sha1_block_data_order diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256-ppc.s index 1e92cd5884da..83c86c17fa21 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256-ppc.s @@ -121,7 +121,7 @@ sha256_block_ppc: lwz 31,188(1) mtlr 0 addi 1,1,192 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1287,7 +1287,7 @@ sha256_block_ppc: .long 0x7c1f2840 stw 15,28(3) bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha256_block_ppc,.-sha256_block_ppc @@ -1298,7 +1298,7 @@ sha256_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256p8-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256p8-ppc.s index 888cef888efc..7c06a0bc05be 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha256p8-ppc.s @@ -773,7 +773,7 @@ sha256_block_p8: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -785,7 +785,7 @@ sha256_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512-ppc.s index 582aee7682c4..2ae1bd579f3d 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512-ppc.s @@ -128,7 +128,7 @@ sha512_block_ppc: lwz 31,252(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -2973,7 +2973,7 @@ sha512_block_ppc: stw 4,164(1) .long 0x7c042840 bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha512_block_ppc,.-sha512_block_ppc @@ -2984,7 +2984,7 @@ sha512_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512p8-ppc.s b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512p8-ppc.s index 00b9f36b42c5..fc14a5e50f8d 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc/asm/crypto/sha/sha512p8-ppc.s @@ -774,7 +774,7 @@ sha512_block_p8: lwz 30,384(1) lwz 31,388(1) addi 1,1,392 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -786,7 +786,7 @@ sha512_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc/asm/include/openssl/opensslconf.h index 2f9817e43b12..21dd8cc643b8 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc/asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc/asm/openssl.gypi index 046400b5d292..49a49d892d66 100644 --- a/deps/openssl/config/archs/linux-ppc/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc/asm/openssl.gypi @@ -217,6 +217,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -577,6 +578,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc/no-asm/configdata.pm b/deps/openssl/config/archs/linux-ppc/no-asm/configdata.pm index 2a36895668ac..e75bdf4223e4 100644 --- a/deps/openssl/config/archs/linux-ppc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1076,6 +1076,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1242,10 +1246,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3932,6 +3948,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6210,6 +6232,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7197,6 +7225,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7391,10 +7423,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7550,6 +7595,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7590,7 +7636,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7972,6 +8021,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8092,9 +8144,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9083,6 +9144,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10523,6 +10588,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11042,6 +11111,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11402,6 +11472,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12405,6 +12476,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12754,6 +12834,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12762,6 +12850,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc/no-asm/crypto/buildinf.h index fcfb67646e73..2e6e10b752c3 100644 --- a/deps/openssl/config/archs/linux-ppc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc" -#define DATE "built on: Tue Apr 3 00:38:40 2018" +#define DATE "built on: Tue Aug 14 23:13:28 2018" diff --git a/deps/openssl/config/archs/linux-ppc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc/no-asm/include/openssl/opensslconf.h index 1f0c62b3c912..5ba3b88d4e5f 100644 --- a/deps/openssl/config/archs/linux-ppc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc/no-asm/openssl.gypi index 08a06ab1d947..8d5be916d451 100644 --- a/deps/openssl/config/archs/linux-ppc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc64/asm/configdata.pm b/deps/openssl/config/archs/linux-ppc64/asm/configdata.pm index 09ca2343e7bd..37f6baf4c662 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc64/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3964,6 +3980,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6296,6 +6318,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7283,6 +7311,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7455,8 +7487,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7477,10 +7509,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7636,6 +7681,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7676,7 +7722,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8058,6 +8107,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8178,9 +8230,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9189,6 +9250,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10665,6 +10730,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11189,6 +11258,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11558,6 +11628,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12561,6 +12632,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12910,6 +12990,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12918,6 +13006,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aes-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aes-ppc.s index b46c8c82a298..95c8377dc1fa 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aes-ppc.s @@ -8,7 +8,7 @@ mflr 3 addi 3,3,120 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -18,7 +18,7 @@ mflr 3 addi 3,3,2360 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -746,7 +746,7 @@ AES_encrypt: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -826,7 +826,7 @@ AES_encrypt: bdnz .Lenc_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -891,7 +891,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1036,7 +1036,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_encrypt,.-.AES_encrypt @@ -1188,7 +1188,7 @@ AES_decrypt: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1268,7 +1268,7 @@ AES_decrypt: bdnz .Ldec_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -1333,7 +1333,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1530,7 +1530,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_decrypt,.-.AES_decrypt diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aesp8-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aesp8-ppc.s index 36fa7e356d69..52a195558d2b 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aesp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/aesp8-ppc.s @@ -14,7 +14,7 @@ rcon: mflr 6 addi 6,6,-0x48 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,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 @@ -284,7 +284,7 @@ aes_p8_set_encrypt_key: .Lenc_key_abort: mr 3,6 - blr + blr .long 0 .byte 0,12,0x14,1,0,0,3,0 .long 0 @@ -340,7 +340,7 @@ aes_p8_set_decrypt_key: xor 3,3,3 .Ldec_key_abort: addi 1,1,64 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,3,0 .long 0 @@ -415,7 +415,7 @@ aes_p8_encrypt: stvx 0,7,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -490,7 +490,7 @@ aes_p8_decrypt: stvx 0,7,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -659,7 +659,7 @@ aes_p8_cbc_encrypt: stvx 2,10,7 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -949,8 +949,8 @@ _aesp8_cbc_decrypt8x: addic. 5,5,128 beq .Lcbc_dec8x_done - nop - nop + nop + nop .Loop_cbc_dec8x_tail: .long 0x11EFC548 @@ -1038,15 +1038,15 @@ _aesp8_cbc_decrypt8x: cmplwi 5,32 blt .Lcbc_dec8x_one - nop + nop beq .Lcbc_dec8x_two cmplwi 5,64 blt .Lcbc_dec8x_three - nop + nop beq .Lcbc_dec8x_four cmplwi 5,96 blt .Lcbc_dec8x_five - nop + nop beq .Lcbc_dec8x_six .Lcbc_dec8x_seven: @@ -1233,7 +1233,7 @@ _aesp8_cbc_decrypt8x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1348,7 +1348,7 @@ aes_p8_ctr32_encrypt_blocks: stvx 2,0,4 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -1651,15 +1651,15 @@ _aesp8_ctr32_encrypt8x: .Lctr32_enc8x_break: cmpwi 5,-0x60 blt .Lctr32_enc8x_one - nop + nop beq .Lctr32_enc8x_two cmpwi 5,-0x40 blt .Lctr32_enc8x_three - nop + nop beq .Lctr32_enc8x_four cmpwi 5,-0x20 blt .Lctr32_enc8x_five - nop + nop beq .Lctr32_enc8x_six cmpwi 5,0x00 blt .Lctr32_enc8x_seven @@ -1868,7 +1868,7 @@ _aesp8_ctr32_encrypt8x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2013,7 +2013,7 @@ aes_p8_xts_encrypt: .long 0x10620509 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2086,7 +2086,7 @@ aes_p8_xts_encrypt: .Lxts_enc_ret: mtspr 256,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2234,7 +2234,7 @@ aes_p8_xts_decrypt: .long 0x10620549 - nop + nop .long 0x7C602799 addi 4,4,16 @@ -2299,7 +2299,7 @@ aes_p8_xts_decrypt: .long 0x10620549 - nop + nop .long 0x7C602799 @@ -2350,7 +2350,7 @@ aes_p8_xts_decrypt: .Lxts_dec_ret: mtspr 256,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2682,11 +2682,11 @@ _aesp8_xts_encrypt6x: beq .Lxts_enc6x_zero cmpwi 5,0x20 blt .Lxts_enc6x_one - nop + nop beq .Lxts_enc6x_two cmpwi 5,0x40 blt .Lxts_enc6x_three - nop + nop beq .Lxts_enc6x_four .Lxts_enc6x_five: @@ -2783,7 +2783,7 @@ _aesp8_xts_encrypt6x: .align 4 .Lxts_enc6x_one: vxor 7,5,17 - nop + nop .Loop_xts_enc1x: .long 0x10E7C508 lvx 24,26,7 @@ -2919,7 +2919,7 @@ _aesp8_xts_encrypt6x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3004,7 +3004,7 @@ _aesp8_xts_enc5x: .long 0x11AD1509 .long 0x11CE1D09 .long 0x11EF2509 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -3332,11 +3332,11 @@ _aesp8_xts_decrypt6x: beq .Lxts_dec6x_zero cmpwi 5,0x20 blt .Lxts_dec6x_one - nop + nop beq .Lxts_dec6x_two cmpwi 5,0x40 blt .Lxts_dec6x_three - nop + nop beq .Lxts_dec6x_four .Lxts_dec6x_five: @@ -3437,7 +3437,7 @@ _aesp8_xts_decrypt6x: .align 4 .Lxts_dec6x_one: vxor 7,5,17 - nop + nop .Loop_xts_dec1x: .long 0x10E7C548 lvx 24,26,7 @@ -3607,7 +3607,7 @@ _aesp8_xts_decrypt6x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3692,6 +3692,6 @@ _aesp8_xts_dec5x: .long 0x11CE1D49 .long 0x11EF2549 mtctr 9 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/vpaes-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/vpaes-ppc.s index 1168f546f08f..c5f074f37f74 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/vpaes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/aes/vpaes-ppc.s @@ -95,7 +95,7 @@ _vpaes_consts: mflr 12 addi 12,12,-0x308 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .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,65,108,116,105,86,101,99,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 @@ -135,7 +135,7 @@ _vpaes_encrypt_preheat: lvx 17, 12, 8 lvx 18, 12, 11 lvx 19, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -223,7 +223,7 @@ _vpaes_encrypt_core: vxor 4, 4, 5 vxor 0, 0, 4 vperm 0, 0, 7, 1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -325,7 +325,7 @@ vpaes_encrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -368,7 +368,7 @@ _vpaes_decrypt_preheat: lvx 21, 12, 8 lvx 22, 12, 11 lvx 23, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -463,7 +463,7 @@ _vpaes_decrypt_core: vxor 4, 4, 5 vxor 0, 1, 4 vperm 0, 0, 7, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -565,7 +565,7 @@ vpaes_decrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -800,7 +800,7 @@ vpaes_cbc_encrypt: ld 31,264(1) mtlr 0 addi 1,1,272 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,2,6,0 .long 0 @@ -855,7 +855,7 @@ _vpaes_key_preheat: lvx 24, 12, 9 lvx 25, 0, 12 lvx 26, 12, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1101,7 +1101,7 @@ _vpaes_schedule_core: vxor 6, 6, 6 vxor 7, 7, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1129,7 +1129,7 @@ _vpaes_schedule_192_smear: vor 0, 6, 6 vsldoi 6, 6, 9, 8 vsldoi 6, 9, 6, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1195,7 +1195,7 @@ _vpaes_schedule_low_round: vxor 0, 1, 7 vxor 7, 1, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1217,7 +1217,7 @@ _vpaes_schedule_transform: vperm 2, 13, 13, 2 vxor 0, 0, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1269,7 +1269,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .align 4 .Lschedule_mangle_dec: @@ -1320,7 +1320,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1403,7 +1403,7 @@ vpaes_set_encrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -1494,7 +1494,7 @@ vpaes_set_decrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/bn-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/bn-ppc.s index 0a3a2a76f51d..60dd49f8635e 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/bn-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/bn-ppc.s @@ -297,7 +297,7 @@ bn_mul_add_words: std 9,48(3) std 10,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -726,7 +726,7 @@ bn_mul_add_words: std 9, 120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -881,7 +881,7 @@ bn_mul_add_words: std 10,48(3) std 11,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1421,7 +1421,7 @@ bn_mul_add_words: adde 10,10,9 std 12,112(3) std 10,120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1473,7 +1473,7 @@ bn_mul_add_words: .Lppcasm_sub_adios: subfze 3,0 andi. 3,3,1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1520,7 +1520,7 @@ bn_mul_add_words: bdnz .Lppcasm_add_mainloop .Lppcasm_add_adios: addze 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1550,7 +1550,7 @@ bn_mul_add_words: cmpldi 0,5,0 bne .Lppcasm_div1 li 3,-1 - blr + blr .Lppcasm_div1: xor 0,0,0 li 8,64 @@ -1637,7 +1637,7 @@ bn_mul_add_words: b .Lppcasm_divouterloop .Lppcasm_div9: or 3,8,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1680,7 +1680,7 @@ bn_mul_add_words: stdu 8,8(3) bdnz .Lppcasm_sqr_mainloop .Lppcasm_sqr_adios: - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1787,7 +1787,7 @@ bn_mul_add_words: .Lppcasm_mw_OVER: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1914,7 +1914,7 @@ bn_mul_add_words: .Lppcasm_maw_adios: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc-mont.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc-mont.s index ac8653f240de..353c4492446b 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc-mont.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc-mont.s @@ -187,15 +187,16 @@ bn_mul_mont_int: li 21,0 mtctr 8 subfe 3,21,3 - and 4,22,3 - andc 6,9,3 - or 4,4,6 .align 4 .Lcopy: - ldx 12,4,21 - stdx 12,9,21 + ldx 12,22,21 + ldx 10,9,21 + and 12,12,3 + andc 10,10,3 stdx 21,22,21 + or 10,10,12 + stdx 10,9,21 addi 21,21,8 bdnz .Lcopy @@ -214,7 +215,7 @@ bn_mul_mont_int: ld 30,-16(12) ld 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x80,12,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc64-mont.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc64-mont.s index 8450d9a93923..c8a045698b28 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc64-mont.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/bn/ppc64-mont.s @@ -686,16 +686,14 @@ bn_mul_mont_fpu64: li 12,0 subfe 3,12,3 - and 4,10,3 - andc 6,9,3 - or 4,4,6 - addi 31,4,8 mtctr 11 .align 4 .Lcopy: - ldx 24,4,12 - ldx 25,31,12 + ldx 24,10,12 + ldx 25,28,12 + ldx 26,9,12 + ldx 27,30,12 std 12,8(22) std 12,16(22) std 12,24(22) @@ -704,6 +702,12 @@ bn_mul_mont_fpu64: std 12,48(22) std 12,56(22) stdu 12,64(22) + and 24,24,3 + and 25,25,3 + andc 26,26,3 + andc 27,27,3 + or 24,24,26 + or 25,25,27 stdx 24,9,12 stdx 25,30,12 stdx 12,10,12 @@ -738,7 +742,7 @@ bn_mul_mont_fpu64: lfd 30,-16(12) lfd 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x8c,13,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc64/asm/crypto/buildinf.h index 12830ce399ec..6c21f2f5e7aa 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/buildinf.h @@ -26,4 +26,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc64" -#define DATE "built on: Tue Apr 3 00:38:40 2018" +#define DATE "built on: Tue Aug 14 23:13:29 2018" diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/chacha/chacha-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/chacha/chacha-ppc.s index 93efe4d9b575..b69868c41f77 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/chacha/chacha-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/chacha/chacha-ppc.s @@ -66,7 +66,7 @@ __ChaCha20_ctr32_int: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,5,0 .long 0 @@ -353,7 +353,7 @@ __ChaCha20_1x: bne .Loop_outer - blr + blr .align 4 .Ltail: @@ -404,7 +404,7 @@ __ChaCha20_1x: stw 1,104(1) stw 1,108(1) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -569,7 +569,7 @@ ChaCha20_ctr32_vmx: vspltisw 27,7 mtctr 0 - nop + nop .Loop_vmx: vadduwm 0,0,1 add 16,16,20 @@ -1062,7 +1062,7 @@ ChaCha20_ctr32_vmx: cmpldi 5,255 bgt .Loop_outer_vmx - nop + nop .Ldone_vmx: cmpldi 5,0 @@ -1115,7 +1115,7 @@ ChaCha20_ctr32_vmx: ld 31,456(1) mtlr 0 addi 1,1,464 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,18,5,0 .long 0 @@ -1129,7 +1129,7 @@ ChaCha20_ctr32_vmx: mflr 12 addi 12,12,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/modes/ghashp8-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/modes/ghashp8-ppc.s index 5ca8640eda06..8294ab9b9585 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/modes/ghashp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/modes/ghashp8-ppc.s @@ -129,7 +129,7 @@ gcm_init_p8: .long 0x7E4A1F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -186,7 +186,7 @@ gcm_gmult_p8: .long 0x7C001F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -310,7 +310,7 @@ gcm_ghash_p8: .long 0x7C001F99 mtspr 256,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -577,7 +577,7 @@ gcm_ghash_p8: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppc.s index 0907f4ae2032..4006308ab247 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppc.s @@ -39,7 +39,7 @@ poly1305_init_int: .Lno_key: xor 3,3,3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .size poly1305_init_int,.-.poly1305_init_int @@ -141,7 +141,7 @@ poly1305_blocks: ld 31,184(1) addi 1,1,192 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,5,4,0 .size poly1305_blocks,.-.poly1305_blocks @@ -189,7 +189,7 @@ poly1305_emit: li 12,12 stwbrx 8,11,4 stwbrx 7,12,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .size poly1305_emit,.-.poly1305_emit diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppcfp.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppcfp.s index a26ff5adba79..a5a6dfd505bc 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppcfp.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/poly1305/poly1305-ppcfp.s @@ -152,7 +152,7 @@ poly1305_init_fpu: .Lno_key: xor 3,3,3 addi 1,1,48 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,2,0 .size poly1305_init_fpu,.-.poly1305_init_fpu @@ -475,7 +475,7 @@ poly1305_blocks_fpu: lfd 31,232(1) addi 1,1,240 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,0,4,0 .size poly1305_blocks_fpu,.-.poly1305_blocks_fpu @@ -570,7 +570,7 @@ poly1305_emit_fpu: ld 30,64(1) ld 31,72(1) addi 1,1,80 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 .size poly1305_emit_fpu,.-.poly1305_emit_fpu @@ -582,7 +582,7 @@ poly1305_emit_fpu: mflr 5 addi 5,5,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/ppccpuid.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/ppccpuid.s index adc9731bb69e..55fa667f641b 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/ppccpuid.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/ppccpuid.s @@ -12,7 +12,7 @@ OPENSSL_fpu_probe: .align 4 .OPENSSL_fpu_probe: fmr 0,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_fpu_probe,.-.OPENSSL_fpu_probe @@ -29,7 +29,7 @@ OPENSSL_ppc64_probe: .OPENSSL_ppc64_probe: fcfid 1,1 rldicl 0,0,32,32 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_ppc64_probe,.-.OPENSSL_ppc64_probe @@ -46,7 +46,7 @@ OPENSSL_altivec_probe: .align 4 .OPENSSL_altivec_probe: .long 0x10000484 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_altivec_probe,.-.OPENSSL_altivec_probe @@ -64,7 +64,7 @@ OPENSSL_crypto207_probe: .OPENSSL_crypto207_probe: .long 0x7C000E99 .long 0x10000508 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_crypto207_probe,.-.OPENSSL_crypto207_probe @@ -83,7 +83,7 @@ OPENSSL_madd300_probe: xor 0,0,0 .long 0x10600033 .long 0x10600031 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -122,7 +122,7 @@ OPENSSL_wipe_cpu: xor 12,12,12 fmr 12,31 fmr 13,31 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_wipe_cpu,.-.OPENSSL_wipe_cpu @@ -143,7 +143,7 @@ OPENSSL_atomic_add: stwcx. 0,0,3 bne- .Ladd extsw 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -161,7 +161,7 @@ OPENSSL_rdtsc: .align 4 .OPENSSL_rdtsc: mftb 3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_rdtsc,.-.OPENSSL_rdtsc @@ -186,7 +186,7 @@ OPENSSL_cleanse: stb 0,0(3) addi 3,3,1 bdnz $-8 - blr + blr .Lot: andi. 5,3,3 beq .Laligned stb 0,0(3) @@ -201,7 +201,7 @@ OPENSSL_cleanse: bdnz $-8 andi. 4,4,3 bne .Little - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -235,7 +235,7 @@ CRYPTO_memcmp: li 3,0 sub 3,3,0 extrwi 3,3,1,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -274,7 +274,7 @@ OPENSSL_instrument_bus: bdnz .Loop mr 3,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -334,7 +334,7 @@ OPENSSL_instrument_bus2: .Ldone2: srwi 4,4,2 sub 3,0,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha1-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha1-ppc.s index aa47944d3708..e332225e3bc2 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha1-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha1-ppc.s @@ -107,7 +107,7 @@ sha1_block_data_order: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1115,7 +1115,7 @@ sha1_block_data_order: mr 11,20 addi 4,4,64 bdnz .Lsha1_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha1_block_data_order,.-.sha1_block_data_order diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256-ppc.s index 8bc52879f48b..8a55a49ed37d 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256-ppc.s @@ -127,7 +127,7 @@ sha256_block_ppc: ld 31,312(1) mtlr 0 addi 1,1,320 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1293,7 +1293,7 @@ sha256_block_ppc: cmpld 31,5 stw 15,28(3) bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha256_block_ppc,.-.sha256_block_ppc @@ -1305,7 +1305,7 @@ sha256_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256p8-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256p8-ppc.s index cfa6282d6d6b..23db0265f530 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha256p8-ppc.s @@ -779,7 +779,7 @@ sha256_block_p8: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -792,7 +792,7 @@ sha256_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512-ppc.s index 9c699a4f32e8..775b64d0fbb7 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512-ppc.s @@ -127,7 +127,7 @@ sha512_block_ppc: ld 31,376(1) mtlr 0 addi 1,1,384 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1325,7 +1325,7 @@ sha512_block_ppc: cmpld 31,5 std 15,56(3) bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha512_block_ppc,.-.sha512_block_ppc @@ -1337,7 +1337,7 @@ sha512_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512p8-ppc.s b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512p8-ppc.s index 03c09abfe173..6526b53ff09c 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64/asm/crypto/sha/sha512p8-ppc.s @@ -780,7 +780,7 @@ sha512_block_p8: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -793,7 +793,7 @@ sha512_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc64/asm/include/openssl/opensslconf.h index 3976dadb19ca..8bd973e750d6 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc64/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc64/asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc64/asm/openssl.gypi index b99768aed035..840000dcbea1 100644 --- a/deps/openssl/config/archs/linux-ppc64/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc64/asm/openssl.gypi @@ -217,6 +217,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -577,6 +578,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc64/no-asm/configdata.pm b/deps/openssl/config/archs/linux-ppc64/no-asm/configdata.pm index 3385fae2274e..1cd6924b6d24 100644 --- a/deps/openssl/config/archs/linux-ppc64/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc64/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,8 +7402,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc64/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc64/no-asm/crypto/buildinf.h index e00115c55c07..94576dcc4d27 100644 --- a/deps/openssl/config/archs/linux-ppc64/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc64/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc64" -#define DATE "built on: Tue Apr 3 00:38:41 2018" +#define DATE "built on: Tue Aug 14 23:13:30 2018" diff --git a/deps/openssl/config/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h index af3a003d5193..08bf3d43940b 100644 --- a/deps/openssl/config/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc64/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc64/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc64/no-asm/openssl.gypi index e45227748ee5..5b40384e3d6b 100644 --- a/deps/openssl/config/archs/linux-ppc64/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc64/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/configdata.pm b/deps/openssl/config/archs/linux-ppc64le/asm/configdata.pm index f83a155f6632..bf4ab72fd1c4 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc64le/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc64le", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3963,6 +3979,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6295,6 +6317,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7282,6 +7310,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7454,8 +7486,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7476,10 +7508,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7635,6 +7680,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7675,7 +7721,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8057,6 +8106,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8177,9 +8229,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9188,6 +9249,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10664,6 +10729,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11188,6 +11257,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11557,6 +11627,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12560,6 +12631,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12909,6 +12989,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12917,6 +13005,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aes-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aes-ppc.s index bbc4e95d5448..2aa99e753a97 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aes-ppc.s @@ -9,7 +9,7 @@ mflr 3 addi 3,3,120 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -19,7 +19,7 @@ mflr 3 addi 3,3,2360 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 @@ -766,7 +766,7 @@ AES_encrypt: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -846,7 +846,7 @@ AES_encrypt: bdnz .Lenc_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -911,7 +911,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1056,7 +1056,7 @@ AES_encrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_encrypt,.-AES_encrypt @@ -1226,7 +1226,7 @@ AES_decrypt: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1306,7 +1306,7 @@ AES_decrypt: bdnz .Ldec_loop addi 7,3,2048 - nop + nop lwz 12,0(5) rlwinm 16,8,8,24,31 lwz 0,4(5) @@ -1371,7 +1371,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1568,7 +1568,7 @@ AES_decrypt: xor 9,9,0 xor 10,10,14 xor 11,11,15 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size AES_decrypt,.-AES_decrypt diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aesp8-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aesp8-ppc.s index 54f61290bdd8..581d16e664af 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aesp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/aesp8-ppc.s @@ -15,7 +15,7 @@ rcon: mflr 6 addi 6,6,-0x48 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .byte 65,69,83,32,102,111,114,32,80,111,119,101,114,73,83,65,32,50,46,48,55,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 @@ -280,7 +280,7 @@ aes_p8_set_encrypt_key: .Lenc_key_abort: mr 3,6 - blr + blr .long 0 .byte 0,12,0x14,1,0,0,3,0 .long 0 @@ -330,7 +330,7 @@ aes_p8_set_decrypt_key: xor 3,3,3 .Ldec_key_abort: addi 1,1,64 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,3,0 .long 0 @@ -399,7 +399,7 @@ aes_p8_encrypt: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -468,7 +468,7 @@ aes_p8_decrypt: stvx 0,7,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -631,7 +631,7 @@ aes_p8_cbc_encrypt: stvx 2,10,7 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -921,8 +921,8 @@ _aesp8_cbc_decrypt8x: addic. 5,5,128 beq .Lcbc_dec8x_done - nop - nop + nop + nop .Loop_cbc_dec8x_tail: .long 0x11EFC548 @@ -1010,15 +1010,15 @@ _aesp8_cbc_decrypt8x: cmplwi 5,32 blt .Lcbc_dec8x_one - nop + nop beq .Lcbc_dec8x_two cmplwi 5,64 blt .Lcbc_dec8x_three - nop + nop beq .Lcbc_dec8x_four cmplwi 5,96 blt .Lcbc_dec8x_five - nop + nop beq .Lcbc_dec8x_six .Lcbc_dec8x_seven: @@ -1205,7 +1205,7 @@ _aesp8_cbc_decrypt8x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -1314,7 +1314,7 @@ aes_p8_ctr32_encrypt_blocks: stvx 2,0,4 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,6,0 .long 0 @@ -1617,15 +1617,15 @@ _aesp8_ctr32_encrypt8x: .Lctr32_enc8x_break: cmpwi 5,-0x60 blt .Lctr32_enc8x_one - nop + nop beq .Lctr32_enc8x_two cmpwi 5,-0x40 blt .Lctr32_enc8x_three - nop + nop beq .Lctr32_enc8x_four cmpwi 5,-0x20 blt .Lctr32_enc8x_five - nop + nop beq .Lctr32_enc8x_six cmpwi 5,0x00 blt .Lctr32_enc8x_seven @@ -1834,7 +1834,7 @@ _aesp8_ctr32_encrypt8x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2046,7 +2046,7 @@ aes_p8_xts_encrypt: .Lxts_enc_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2304,7 +2304,7 @@ aes_p8_xts_decrypt: .Lxts_dec_ret: or 12,12,12 li 3,0 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,6,6,0 .long 0 @@ -2635,11 +2635,11 @@ _aesp8_xts_encrypt6x: beq .Lxts_enc6x_zero cmpwi 5,0x20 blt .Lxts_enc6x_one - nop + nop beq .Lxts_enc6x_two cmpwi 5,0x40 blt .Lxts_enc6x_three - nop + nop beq .Lxts_enc6x_four .Lxts_enc6x_five: @@ -2736,7 +2736,7 @@ _aesp8_xts_encrypt6x: .align 4 .Lxts_enc6x_one: vxor 7,5,17 - nop + nop .Loop_xts_enc1x: .long 0x10E7C508 lvx 24,26,7 @@ -2872,7 +2872,7 @@ _aesp8_xts_encrypt6x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -2957,7 +2957,7 @@ _aesp8_xts_enc5x: .long 0x11AD1509 .long 0x11CE1D09 .long 0x11EF2509 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -3285,11 +3285,11 @@ _aesp8_xts_decrypt6x: beq .Lxts_dec6x_zero cmpwi 5,0x20 blt .Lxts_dec6x_one - nop + nop beq .Lxts_dec6x_two cmpwi 5,0x40 blt .Lxts_dec6x_three - nop + nop beq .Lxts_dec6x_four .Lxts_dec6x_five: @@ -3390,7 +3390,7 @@ _aesp8_xts_decrypt6x: .align 4 .Lxts_dec6x_one: vxor 7,5,17 - nop + nop .Loop_xts_dec1x: .long 0x10E7C548 lvx 24,26,7 @@ -3560,7 +3560,7 @@ _aesp8_xts_decrypt6x: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,6,6,0 .long 0 @@ -3645,6 +3645,6 @@ _aesp8_xts_dec5x: .long 0x11CE1D49 .long 0x11EF2549 mtctr 9 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/vpaes-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/vpaes-ppc.s index abd30163841c..74d9d5f5cebc 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/vpaes-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/aes/vpaes-ppc.s @@ -96,7 +96,7 @@ _vpaes_consts: mflr 12 addi 12,12,-0x308 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .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,65,108,116,105,86,101,99,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 @@ -136,7 +136,7 @@ _vpaes_encrypt_preheat: lvx 17, 12, 8 lvx 18, 12, 11 lvx 19, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -224,7 +224,7 @@ _vpaes_encrypt_core: vxor 4, 4, 5 vxor 0, 0, 4 vperm 0, 0, 7, 1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -321,7 +321,7 @@ vpaes_encrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -363,7 +363,7 @@ _vpaes_decrypt_preheat: lvx 21, 12, 8 lvx 22, 12, 11 lvx 23, 12, 10 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -458,7 +458,7 @@ _vpaes_decrypt_core: vxor 4, 4, 5 vxor 0, 1, 4 vperm 0, 0, 7, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -555,7 +555,7 @@ vpaes_decrypt: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -784,7 +784,7 @@ vpaes_cbc_encrypt: ld 31,264(1) mtlr 0 addi 1,1,272 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,2,6,0 .long 0 @@ -838,7 +838,7 @@ _vpaes_key_preheat: lvx 24, 12, 9 lvx 25, 0, 12 lvx 26, 12, 8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1084,7 +1084,7 @@ _vpaes_schedule_core: vxor 6, 6, 6 vxor 7, 7, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1112,7 +1112,7 @@ _vpaes_schedule_192_smear: vor 0, 6, 6 vsldoi 6, 9, 6, 16-8 vsldoi 6, 6, 9, 16-8 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1178,7 +1178,7 @@ _vpaes_schedule_low_round: vxor 0, 1, 7 vxor 7, 1, 7 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1200,7 +1200,7 @@ _vpaes_schedule_transform: vperm 2, 13, 13, 2 vxor 0, 0, 2 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1252,7 +1252,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .align 4 .Lschedule_mangle_dec: @@ -1303,7 +1303,7 @@ _vpaes_schedule_mangle: vsel 2, 28, 1, 30 vor 28, 1, 1 stvx 2, 0, 5 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -1381,7 +1381,7 @@ vpaes_set_encrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 @@ -1466,7 +1466,7 @@ vpaes_set_decrypt_key: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/bn-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/bn-ppc.s index 146f9af69d66..c846a555af94 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/bn-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/bn-ppc.s @@ -238,7 +238,7 @@ bn_sqr_comba4: std 9,48(3) std 10,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -667,7 +667,7 @@ bn_sqr_comba8: std 9, 120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -822,7 +822,7 @@ bn_mul_comba4: std 10,48(3) std 11,56(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1362,7 +1362,7 @@ bn_mul_comba8: adde 10,10,9 std 12,112(3) std 10,120(3) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1414,7 +1414,7 @@ bn_sub_words: .Lppcasm_sub_adios: subfze 3,0 andi. 3,3,1 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1461,7 +1461,7 @@ bn_add_words: bdnz .Lppcasm_add_mainloop .Lppcasm_add_adios: addze 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1491,7 +1491,7 @@ bn_div_words: cmpldi 0,5,0 bne .Lppcasm_div1 li 3,-1 - blr + blr .Lppcasm_div1: xor 0,0,0 li 8,64 @@ -1578,7 +1578,7 @@ bn_div_words: b .Lppcasm_divouterloop .Lppcasm_div9: or 3,8,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1621,7 +1621,7 @@ bn_sqr_words: stdu 8,8(3) bdnz .Lppcasm_sqr_mainloop .Lppcasm_sqr_adios: - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -1728,7 +1728,7 @@ bn_mul_words: .Lppcasm_mw_OVER: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -1855,7 +1855,7 @@ bn_mul_add_words: .Lppcasm_maw_adios: addi 3,12,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc-mont.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc-mont.s index 83b5f96f136a..763ad1a55b67 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc-mont.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc-mont.s @@ -183,15 +183,16 @@ bn_mul_mont_int: li 21,0 mtctr 8 subfe 3,21,3 - and 4,22,3 - andc 6,9,3 - or 4,4,6 .align 4 .Lcopy: - ldx 12,4,21 - stdx 12,9,21 + ldx 12,22,21 + ldx 10,9,21 + and 12,12,3 + andc 10,10,3 stdx 21,22,21 + or 10,10,12 + stdx 10,9,21 addi 21,21,8 bdnz .Lcopy @@ -210,7 +211,7 @@ bn_mul_mont_int: ld 30,-16(12) ld 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x80,12,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc64-mont.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc64-mont.s index 520b8559912d..5bafae2b278d 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc64-mont.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/bn/ppc64-mont.s @@ -682,16 +682,14 @@ bn_mul_mont_fpu64: li 12,0 subfe 3,12,3 - and 4,10,3 - andc 6,9,3 - or 4,4,6 - addi 31,4,8 mtctr 11 .align 4 .Lcopy: - ldx 24,4,12 - ldx 25,31,12 + ldx 24,10,12 + ldx 25,28,12 + ldx 26,9,12 + ldx 27,30,12 std 12,8(22) std 12,16(22) std 12,24(22) @@ -700,6 +698,12 @@ bn_mul_mont_fpu64: std 12,48(22) std 12,56(22) stdu 12,64(22) + and 24,24,3 + and 25,25,3 + andc 26,26,3 + andc 27,27,3 + or 24,24,26 + or 25,25,27 stdx 24,9,12 stdx 25,30,12 stdx 12,10,12 @@ -734,7 +738,7 @@ bn_mul_mont_fpu64: lfd 30,-16(12) lfd 31,-8(12) mr 1,12 - blr + blr .long 0 .byte 0,12,4,0,0x8c,13,6,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/buildinf.h index db18e0e13696..9d82ff0db62f 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/buildinf.h @@ -26,4 +26,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc64le" -#define DATE "built on: Tue Apr 3 00:38:42 2018" +#define DATE "built on: Tue Aug 14 23:13:30 2018" diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/chacha/chacha-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/chacha/chacha-ppc.s index d5173a6b2be6..dafa6a1eb5df 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/chacha/chacha-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/chacha/chacha-ppc.s @@ -62,7 +62,7 @@ __ChaCha20_ctr32_int: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,5,0 .long 0 @@ -284,7 +284,7 @@ __ChaCha20_1x: bne .Loop_outer - blr + blr .align 4 .Ltail: @@ -335,7 +335,7 @@ __ChaCha20_1x: stw 1,104(1) stw 1,108(1) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -495,7 +495,7 @@ ChaCha20_ctr32_vmx: vspltisw 27,7 mtctr 0 - nop + nop .Loop_vmx: vadduwm 0,0,1 add 16,16,20 @@ -924,7 +924,7 @@ ChaCha20_ctr32_vmx: cmpldi 5,255 bgt .Loop_outer_vmx - nop + nop .Ldone_vmx: cmpldi 5,0 @@ -977,7 +977,7 @@ ChaCha20_ctr32_vmx: ld 31,456(1) mtlr 0 addi 1,1,464 - blr + blr .long 0 .byte 0,12,0x04,1,0x80,18,5,0 .long 0 @@ -990,7 +990,7 @@ ChaCha20_ctr32_vmx: mflr 12 addi 12,12,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/modes/ghashp8-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/modes/ghashp8-ppc.s index ec8ae8c05f18..c5ace016e1db 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/modes/ghashp8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/modes/ghashp8-ppc.s @@ -125,7 +125,7 @@ gcm_init_p8: .long 0x7E4A1F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -176,7 +176,7 @@ gcm_gmult_p8: .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -294,7 +294,7 @@ gcm_ghash_p8: .long 0x7C001F99 or 12,12,12 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,4,0 .long 0 @@ -561,7 +561,7 @@ gcm_ghash_p8: lvx 30,10,1 lvx 31,11,1 addi 1,1,256 - blr + blr .long 0 .byte 0,12,0x04,0,0x80,0,4,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppc.s index 247885f63102..de5c728fe1c4 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppc.s @@ -28,7 +28,7 @@ poly1305_init_int: .Lno_key: xor 3,3,3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .size poly1305_init_int,.-poly1305_init_int @@ -117,7 +117,7 @@ poly1305_blocks: ld 31,184(1) addi 1,1,192 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,5,4,0 .size poly1305_blocks,.-poly1305_blocks @@ -150,7 +150,7 @@ poly1305_emit: adde 8,8,5 std 7,0(4) std 8,8(4) - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .size poly1305_emit,.-poly1305_emit diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppcfp.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppcfp.s index 0ddf681308b3..bf94546c85e1 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppcfp.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/poly1305/poly1305-ppcfp.s @@ -148,7 +148,7 @@ poly1305_init_fpu: .Lno_key: xor 3,3,3 addi 1,1,48 - blr + blr .long 0 .byte 0,12,4,1,0x80,0,2,0 .size poly1305_init_fpu,.-poly1305_init_fpu @@ -465,7 +465,7 @@ poly1305_blocks_fpu: lfd 31,232(1) addi 1,1,240 .Labort: - blr + blr .long 0 .byte 0,12,4,1,0x80,0,4,0 .size poly1305_blocks_fpu,.-poly1305_blocks_fpu @@ -549,7 +549,7 @@ poly1305_emit_fpu: ld 30,64(1) ld 31,72(1) addi 1,1,80 - blr + blr .long 0 .byte 0,12,4,1,0x80,4,3,0 .size poly1305_emit_fpu,.-poly1305_emit_fpu @@ -560,7 +560,7 @@ poly1305_emit_fpu: mflr 5 addi 5,5,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/ppccpuid.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/ppccpuid.s index a2b975fbe2dd..6a859efc093b 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/ppccpuid.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/ppccpuid.s @@ -8,7 +8,7 @@ OPENSSL_fpu_probe: .localentry OPENSSL_fpu_probe,0 fmr 0,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_fpu_probe,.-OPENSSL_fpu_probe @@ -19,7 +19,7 @@ OPENSSL_ppc64_probe: .localentry OPENSSL_ppc64_probe,0 fcfid 1,1 rldicl 0,0,32,32 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_ppc64_probe,.-OPENSSL_ppc64_probe @@ -30,7 +30,7 @@ OPENSSL_ppc64_probe: OPENSSL_altivec_probe: .localentry OPENSSL_altivec_probe,0 .long 0x10000484 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_altivec_probe,.-OPENSSL_altivec_probe @@ -42,7 +42,7 @@ OPENSSL_crypto207_probe: .localentry OPENSSL_crypto207_probe,0 .long 0x7C000E99 .long 0x10000508 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_crypto207_probe,.-OPENSSL_crypto207_probe @@ -55,7 +55,7 @@ OPENSSL_madd300_probe: xor 0,0,0 .long 0x10600033 .long 0x10600031 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 @@ -89,7 +89,7 @@ OPENSSL_wipe_cpu: xor 12,12,12 fmr 12,31 fmr 13,31 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu @@ -104,7 +104,7 @@ OPENSSL_atomic_add: stwcx. 0,0,3 bne- .Ladd extsw 3,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -116,7 +116,7 @@ OPENSSL_atomic_add: OPENSSL_rdtsc: .localentry OPENSSL_rdtsc,0 mftb 3 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size OPENSSL_rdtsc,.-OPENSSL_rdtsc @@ -135,7 +135,7 @@ OPENSSL_cleanse: stb 0,0(3) addi 3,3,1 bdnz $-8 - blr + blr .Lot: andi. 5,3,3 beq .Laligned stb 0,0(3) @@ -150,7 +150,7 @@ OPENSSL_cleanse: bdnz $-8 andi. 4,4,3 bne .Little - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -178,7 +178,7 @@ CRYPTO_memcmp: li 3,0 sub 3,3,0 extrwi 3,3,1,0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 @@ -211,7 +211,7 @@ OPENSSL_instrument_bus: bdnz .Loop mr 3,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,2,0 .long 0 @@ -265,7 +265,7 @@ OPENSSL_instrument_bus2: .Ldone2: srwi 4,4,2 sub 3,0,4 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,3,0 .long 0 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha1-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha1-ppc.s index 3b6f4a492c6d..ca4da783957c 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha1-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha1-ppc.s @@ -103,7 +103,7 @@ sha1_block_data_order: ld 31,248(1) mtlr 0 addi 1,1,256 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1159,7 +1159,7 @@ sha1_block_data_order: mr 11,20 addi 4,4,64 bdnz .Lsha1_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha1_block_data_order,.-sha1_block_data_order diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256-ppc.s index 0c1539013d96..2e0c25a0c72d 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256-ppc.s @@ -123,7 +123,7 @@ sha256_block_ppc: ld 31,312(1) mtlr 0 addi 1,1,320 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1337,7 +1337,7 @@ sha256_block_ppc: cmpld 31,5 stw 15,28(3) bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha256_block_ppc,.-sha256_block_ppc @@ -1348,7 +1348,7 @@ sha256_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256p8-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256p8-ppc.s index 8536cf5e9977..80d4942b942d 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha256p8-ppc.s @@ -783,7 +783,7 @@ sha256_block_p8: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -795,7 +795,7 @@ sha256_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512-ppc.s index 89d26735a525..9c40d44b0bdc 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512-ppc.s @@ -123,7 +123,7 @@ sha512_block_ppc: ld 31,376(1) mtlr 0 addi 1,1,384 - blr + blr .long 0 .byte 0,12,4,1,0x80,18,3,0 .long 0 @@ -1417,7 +1417,7 @@ sha512_block_ppc: cmpld 31,5 std 15,56(3) bne .Lsha2_block_private - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .size sha512_block_ppc,.-sha512_block_ppc @@ -1428,7 +1428,7 @@ sha512_block_ppc: mflr 7 addi 7,7,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512p8-ppc.s b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512p8-ppc.s index 2214209e7d75..408e974ea5dd 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512p8-ppc.s +++ b/deps/openssl/config/archs/linux-ppc64le/asm/crypto/sha/sha512p8-ppc.s @@ -788,7 +788,7 @@ sha512_block_p8: ld 30,432(1) ld 31,440(1) addi 1,1,448 - blr + blr .long 0 .byte 0,12,4,1,0x80,6,3,0 .long 0 @@ -800,7 +800,7 @@ sha512_block_p8: mflr 6 addi 6,6,56 mtlr 0 - blr + blr .long 0 .byte 0,12,0x14,0,0,0,0,0 .space 28 diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc64le/asm/include/openssl/opensslconf.h index 3976dadb19ca..8bd973e750d6 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc64le/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc64le/asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc64le/asm/openssl.gypi index c8d2c69df224..8cec102e4fbb 100644 --- a/deps/openssl/config/archs/linux-ppc64le/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc64le/asm/openssl.gypi @@ -217,6 +217,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -577,6 +578,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-ppc64le/no-asm/configdata.pm b/deps/openssl/config/archs/linux-ppc64le/no-asm/configdata.pm index 00ea347e495d..8a3abfbc3972 100644 --- a/deps/openssl/config/archs/linux-ppc64le/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-ppc64le/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-ppc64le", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1076,6 +1076,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1242,10 +1246,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3932,6 +3948,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6210,6 +6232,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7197,6 +7225,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,8 +7402,8 @@ our %unified_info = ( "test/testutil.o" => [ "crypto/include", - "test", "include", + "test", ".", ], "test/threadstest.o" => @@ -7391,10 +7423,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7550,6 +7595,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7590,7 +7636,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7972,6 +8021,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8092,9 +8144,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9083,6 +9144,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10523,6 +10588,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11042,6 +11111,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11402,6 +11472,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12405,6 +12476,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12754,6 +12834,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12762,6 +12850,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-ppc64le/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-ppc64le/no-asm/crypto/buildinf.h index 1a4d84b065ad..74db60cb552f 100644 --- a/deps/openssl/config/archs/linux-ppc64le/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-ppc64le/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-ppc64le" -#define DATE "built on: Tue Apr 3 00:38:43 2018" +#define DATE "built on: Tue Aug 14 23:13:32 2018" diff --git a/deps/openssl/config/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h index af3a003d5193..08bf3d43940b 100644 --- a/deps/openssl/config/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-ppc64le/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-ppc64le/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-ppc64le/no-asm/openssl.gypi index 4f068803a3a2..ed5097611c13 100644 --- a/deps/openssl/config/archs/linux-ppc64le/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-ppc64le/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-x32/asm/configdata.pm b/deps/openssl/config/archs/linux-x32/asm/configdata.pm index 31589f228854..9b72950dfe6d 100644 --- a/deps/openssl/config/archs/linux-x32/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-x32/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-x32", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3994,6 +4010,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6332,6 +6354,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7331,6 +7359,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7503,8 +7535,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7525,10 +7557,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7684,6 +7729,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7724,7 +7770,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8106,6 +8155,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8226,9 +8278,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9257,6 +9318,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10737,6 +10802,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11274,6 +11343,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11644,6 +11714,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12649,6 +12720,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12998,6 +13078,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13006,6 +13094,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aes-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aes-x86_64.s index aa7a1ea1cf9b..488ae6d781ac 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aes-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _x86_64_AES_encrypt,@function .align 16 _x86_64_AES_encrypt: diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-mb-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-mb-x86_64.s index d49379783298..3dcd55d3f59a 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha1-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha1-x86_64.s index c7c53e8771e1..ca193ddb9ea4 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha1-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha1_enc diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha256-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha256-x86_64.s index 70eed05b00c1..427a1c7d1232 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha256-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha256_enc diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-x86_64.s index cd8b00f25983..e18f87c4e60c 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/aesni-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_encrypt .type aesni_encrypt,@function diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/bsaes-x86_64.s index 0fd201167f64..c76c5a8afb47 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/bsaes-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/bsaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/vpaes-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/vpaes-x86_64.s index bf7c2b0b6f6b..d19329894079 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/aes/vpaes-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/aes/vpaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-avx2.s b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-avx2.s index a2cccde63604..ee619092c9b7 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-avx2.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-avx2.s @@ -1,4 +1,4 @@ -.text +.text .globl rsaz_1024_sqr_avx2 .type rsaz_1024_sqr_avx2,@function diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-x86_64.s index b6797a68498e..795cebe1d743 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/rsaz-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-gf2m.s index f4e5337565bb..a0b78a0565f7 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-gf2m.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-gf2m.s @@ -1,4 +1,4 @@ -.text +.text .type _mul_1x1,@function .align 16 diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont.s b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont.s index d19d4662b492..3a78cd844090 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont.s @@ -1,4 +1,4 @@ -.text +.text @@ -197,30 +197,30 @@ bn_mul_mont: xorq %r14,%r14 movq (%rsp),%rax - leaq (%rsp),%rsi movq %r9,%r15 - jmp .Lsub + .align 16 .Lsub: sbbq (%rcx,%r14,8),%rax movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax + movq 8(%rsp,%r14,8),%rax leaq 1(%r14),%r14 decq %r15 jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx + movq %r9,(%rsp,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy @@ -574,10 +574,10 @@ bn_mul4x_mont: cmpq %r9,%r14 jb .Louter4x movq 16(%rsp,%r9,8),%rdi + leaq -4(%r9),%r15 movq 0(%rsp),%rax - pxor %xmm0,%xmm0 movq 8(%rsp),%rdx - shrq $2,%r9 + shrq $2,%r15 leaq (%rsp),%rsi xorq %r14,%r14 @@ -585,9 +585,7 @@ bn_mul4x_mont: movq 16(%rsi),%rbx movq 24(%rsi),%rbp sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 + .Lsub4x: movq %rax,0(%rdi,%r14,8) movq %rdx,8(%rdi,%r14,8) @@ -614,34 +612,35 @@ bn_mul4x_mont: sbbq $0,%rax movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) + pxor %xmm0,%xmm0 +.byte 102,72,15,110,224 + pcmpeqd %xmm5,%xmm5 + pshufd $0,%xmm4,%xmm4 + movq %r9,%r15 + pxor %xmm4,%xmm5 + shrq $2,%r15 + xorl %eax,%eax + jmp .Lcopy4x .align 16 .Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 + movdqa (%rsp,%rax,1),%xmm1 + movdqu (%rdi,%rax,1),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax,1),%xmm3 + movdqa %xmm0,(%rsp,%rax,1) + por %xmm2,%xmm1 + movdqu 16(%rdi,%rax,1),%xmm2 + movdqu %xmm1,(%rdi,%rax,1) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax,1) + por %xmm2,%xmm3 + movdqu %xmm3,16(%rdi,%rax,1) + leaq 32(%rax),%rax decq %r15 jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) movq 8(%rsp,%r9,8),%rsi movq $1,%rax movq -48(%rsi),%r15 diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont5.s b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont5.s index a2fccf088e75..0dd53512f9c9 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont5.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/bn/x86_64-mont5.s @@ -1,4 +1,4 @@ -.text +.text @@ -393,18 +393,19 @@ bn_mul_mont_gather5: jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-x32/asm/crypto/buildinf.h index 373b56f42350..96db051a9b7b 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/buildinf.h @@ -35,4 +35,4 @@ static const char cflags[] = { 'i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-x32" -#define DATE "built on: Tue Apr 3 00:38:29 2018" +#define DATE "built on: Tue Aug 14 23:13:18 2018" diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/camellia/cmll-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/camellia/cmll-x86_64.s index 1117381f316d..1dead91b1752 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/camellia/cmll-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/camellia/cmll-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl Camellia_EncryptBlock diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/chacha/chacha-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/chacha/chacha-x86_64.s index 044b8f031efa..a9fed05fd7e3 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/chacha/chacha-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/chacha/chacha-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/ec/ecp_nistz256-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/ec/ecp_nistz256-x86_64.s index ce86d5d969f7..62a7ac611f37 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/ec/ecp_nistz256-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/ec/ecp_nistz256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl ecp_nistz256_precomputed .type ecp_nistz256_precomputed,@object .align 4096 @@ -2372,7 +2372,7 @@ ecp_nistz256_precomputed: .long 0x2a849870,0x4d33dd99,0x41576335,0xa716964b,0x179be0e5,0xff5e3a9b,0x83b13632,0x5b9d6b1b,0xa52f313b,0x3b8bd7d4,0x637a4660,0xc9dd95a0,0x0b3e218f,0x30035962,0xc7b28a3c,0xce1481a3 .long 0x43228d83,0xab41b43a,0x4ad63f99,0x24ae1c30,0x46a51229,0x8e525f1a,0xcd26d2b4,0x14af860f,0x3f714aa1,0xd6baef61,0xeb78795e,0xf51865ad,0xe6a9d694,0xd3e21fce,0x8a37b527,0x82ceb1dd .size ecp_nistz256_precomputed,.-ecp_nistz256_precomputed -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/md5/md5-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/md5/md5-x86_64.s index 0aa90515d6c9..0defe666bb75 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/md5/md5-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/md5/md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl md5_block_asm_data_order diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/modes/aesni-gcm-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/modes/aesni-gcm-x86_64.s index d1a1c895a39b..21e49925f1ae 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/modes/aesni-gcm-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/modes/aesni-gcm-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _aesni_ctr32_ghash_6x,@function .align 32 diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/modes/ghash-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/modes/ghash-x86_64.s index 10f5987415a1..0116ef1c94c4 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/modes/ghash-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/modes/ghash-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl gcm_gmult_4bit diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/poly1305/poly1305-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/poly1305/poly1305-x86_64.s index 0d401b7e47b4..5a05965c8092 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/poly1305/poly1305-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/poly1305/poly1305-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-md5-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-md5-x86_64.s index 9c7110f4ef09..aab3c6db13d9 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-md5-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl rc4_md5_enc diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-x86_64.s index bdd0da3bd138..781b48b9eb44 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/rc4/rc4-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl RC4 diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-mb-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-mb-x86_64.s index d2857f3288bf..d266d776ec66 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-x86_64.s index 195a148bb9b2..dbeebed9a0a8 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha1_block_data_order diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-mb-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-mb-x86_64.s index bd72a459ab24..f2896b4d6e33 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-x86_64.s index 23b932e1de4a..8264a7dbdf10 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha256_block_data_order diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha512-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha512-x86_64.s index a1021c17a966..6f8488a38a9b 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha512-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/sha/sha512-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha512_block_data_order diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/whrlpool/wp-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/crypto/whrlpool/wp-x86_64.s index f83130ea6863..a4d55b6afc34 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/whrlpool/wp-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/whrlpool/wp-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl whirlpool_block .type whirlpool_block,@function diff --git a/deps/openssl/config/archs/linux-x32/asm/crypto/x86_64cpuid.s b/deps/openssl/config/archs/linux-x32/asm/crypto/x86_64cpuid.s index 5a109c6fd915..7e1f5e27408c 100644 --- a/deps/openssl/config/archs/linux-x32/asm/crypto/x86_64cpuid.s +++ b/deps/openssl/config/archs/linux-x32/asm/crypto/x86_64cpuid.s @@ -6,7 +6,7 @@ .hidden OPENSSL_ia32cap_P .comm OPENSSL_ia32cap_P,16,4 -.text +.text .globl OPENSSL_atomic_add .type OPENSSL_atomic_add,@function diff --git a/deps/openssl/config/archs/linux-x32/asm/engines/e_padlock-x86_64.s b/deps/openssl/config/archs/linux-x32/asm/engines/e_padlock-x86_64.s index 3e5ab736fd86..38c02c188ee1 100644 --- a/deps/openssl/config/archs/linux-x32/asm/engines/e_padlock-x86_64.s +++ b/deps/openssl/config/archs/linux-x32/asm/engines/e_padlock-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl padlock_capability .type padlock_capability,@function .align 16 @@ -1020,7 +1020,7 @@ padlock_ctr32_encrypt: .size padlock_ctr32_encrypt,.-padlock_ctr32_encrypt .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,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 -.data +.data .align 8 .Lpadlock_saved_context: .quad 0 diff --git a/deps/openssl/config/archs/linux-x32/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-x32/asm/include/openssl/opensslconf.h index 510bac93aeb7..546f077108ba 100644 --- a/deps/openssl/config/archs/linux-x32/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-x32/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-x32/asm/openssl.gypi b/deps/openssl/config/archs/linux-x32/asm/openssl.gypi index 99963ad8f427..0f877e845856 100644 --- a/deps/openssl/config/archs/linux-x32/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-x32/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-x32/no-asm/configdata.pm b/deps/openssl/config/archs/linux-x32/no-asm/configdata.pm index e6503fe62cfc..2e6370ba083f 100644 --- a/deps/openssl/config/archs/linux-x32/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-x32/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-x32", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,8 +7402,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-x32/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-x32/no-asm/crypto/buildinf.h index c45d8db17e99..ebbfd1af5d3e 100644 --- a/deps/openssl/config/archs/linux-x32/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-x32/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-x32" -#define DATE "built on: Tue Apr 3 00:38:33 2018" +#define DATE "built on: Tue Aug 14 23:13:21 2018" diff --git a/deps/openssl/config/archs/linux-x32/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-x32/no-asm/include/openssl/opensslconf.h index cbe32f64d863..954003278886 100644 --- a/deps/openssl/config/archs/linux-x32/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-x32/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-x32/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-x32/no-asm/openssl.gypi index 014e893b9503..cf044b5b7fee 100644 --- a/deps/openssl/config/archs/linux-x32/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-x32/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-x86_64/asm/configdata.pm b/deps/openssl/config/archs/linux-x86_64/asm/configdata.pm index 9e9bd8b78710..d28e588e85b6 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/configdata.pm +++ b/deps/openssl/config/archs/linux-x86_64/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-x86_64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3994,6 +4010,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6332,6 +6354,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7331,6 +7359,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7503,8 +7535,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7525,10 +7557,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7684,6 +7729,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7724,7 +7770,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8106,6 +8155,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8226,9 +8278,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9257,6 +9318,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10737,6 +10802,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11274,6 +11343,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11644,6 +11714,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12649,6 +12720,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12998,6 +13078,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13006,6 +13094,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aes-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aes-x86_64.s index aa7a1ea1cf9b..488ae6d781ac 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aes-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _x86_64_AES_encrypt,@function .align 16 _x86_64_AES_encrypt: diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-mb-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-mb-x86_64.s index d49379783298..3dcd55d3f59a 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s index c7c53e8771e1..ca193ddb9ea4 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha1_enc diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s index 70eed05b00c1..427a1c7d1232 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha256_enc diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-x86_64.s index cd8b00f25983..e18f87c4e60c 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/aesni-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_encrypt .type aesni_encrypt,@function diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/bsaes-x86_64.s index 0fd201167f64..c76c5a8afb47 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/bsaes-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/bsaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/vpaes-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/vpaes-x86_64.s index bf7c2b0b6f6b..d19329894079 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/vpaes-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/aes/vpaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-avx2.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-avx2.s index a2cccde63604..ee619092c9b7 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-avx2.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-avx2.s @@ -1,4 +1,4 @@ -.text +.text .globl rsaz_1024_sqr_avx2 .type rsaz_1024_sqr_avx2,@function diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-x86_64.s index b6797a68498e..795cebe1d743 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/rsaz-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-gf2m.s index f4e5337565bb..a0b78a0565f7 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-gf2m.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-gf2m.s @@ -1,4 +1,4 @@ -.text +.text .type _mul_1x1,@function .align 16 diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont.s index d19d4662b492..3a78cd844090 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont.s @@ -1,4 +1,4 @@ -.text +.text @@ -197,30 +197,30 @@ bn_mul_mont: xorq %r14,%r14 movq (%rsp),%rax - leaq (%rsp),%rsi movq %r9,%r15 - jmp .Lsub + .align 16 .Lsub: sbbq (%rcx,%r14,8),%rax movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax + movq 8(%rsp,%r14,8),%rax leaq 1(%r14),%r14 decq %r15 jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx + movq %r9,(%rsp,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy @@ -574,10 +574,10 @@ bn_mul4x_mont: cmpq %r9,%r14 jb .Louter4x movq 16(%rsp,%r9,8),%rdi + leaq -4(%r9),%r15 movq 0(%rsp),%rax - pxor %xmm0,%xmm0 movq 8(%rsp),%rdx - shrq $2,%r9 + shrq $2,%r15 leaq (%rsp),%rsi xorq %r14,%r14 @@ -585,9 +585,7 @@ bn_mul4x_mont: movq 16(%rsi),%rbx movq 24(%rsi),%rbp sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 + .Lsub4x: movq %rax,0(%rdi,%r14,8) movq %rdx,8(%rdi,%r14,8) @@ -614,34 +612,35 @@ bn_mul4x_mont: sbbq $0,%rax movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) + pxor %xmm0,%xmm0 +.byte 102,72,15,110,224 + pcmpeqd %xmm5,%xmm5 + pshufd $0,%xmm4,%xmm4 + movq %r9,%r15 + pxor %xmm4,%xmm5 + shrq $2,%r15 + xorl %eax,%eax + jmp .Lcopy4x .align 16 .Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 + movdqa (%rsp,%rax,1),%xmm1 + movdqu (%rdi,%rax,1),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax,1),%xmm3 + movdqa %xmm0,(%rsp,%rax,1) + por %xmm2,%xmm1 + movdqu 16(%rdi,%rax,1),%xmm2 + movdqu %xmm1,(%rdi,%rax,1) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax,1) + por %xmm2,%xmm3 + movdqu %xmm3,16(%rdi,%rax,1) + leaq 32(%rax),%rax decq %r15 jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) movq 8(%rsp,%r9,8),%rsi movq $1,%rax movq -48(%rsi),%r15 diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont5.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont5.s index a2fccf088e75..0dd53512f9c9 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont5.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/bn/x86_64-mont5.s @@ -1,4 +1,4 @@ -.text +.text @@ -393,18 +393,19 @@ bn_mul_mont_gather5: jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-x86_64/asm/crypto/buildinf.h index 4e13db139d16..3adfc6b90d72 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/buildinf.h @@ -35,4 +35,4 @@ static const char cflags[] = { 'i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-x86_64" -#define DATE "built on: Tue Apr 3 00:38:34 2018" +#define DATE "built on: Tue Aug 14 23:13:22 2018" diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/camellia/cmll-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/camellia/cmll-x86_64.s index 1117381f316d..1dead91b1752 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/camellia/cmll-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/camellia/cmll-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl Camellia_EncryptBlock diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/chacha/chacha-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/chacha/chacha-x86_64.s index 044b8f031efa..a9fed05fd7e3 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/chacha/chacha-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/chacha/chacha-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s index ce86d5d969f7..62a7ac611f37 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/ec/ecp_nistz256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl ecp_nistz256_precomputed .type ecp_nistz256_precomputed,@object .align 4096 @@ -2372,7 +2372,7 @@ ecp_nistz256_precomputed: .long 0x2a849870,0x4d33dd99,0x41576335,0xa716964b,0x179be0e5,0xff5e3a9b,0x83b13632,0x5b9d6b1b,0xa52f313b,0x3b8bd7d4,0x637a4660,0xc9dd95a0,0x0b3e218f,0x30035962,0xc7b28a3c,0xce1481a3 .long 0x43228d83,0xab41b43a,0x4ad63f99,0x24ae1c30,0x46a51229,0x8e525f1a,0xcd26d2b4,0x14af860f,0x3f714aa1,0xd6baef61,0xeb78795e,0xf51865ad,0xe6a9d694,0xd3e21fce,0x8a37b527,0x82ceb1dd .size ecp_nistz256_precomputed,.-ecp_nistz256_precomputed -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/md5/md5-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/md5/md5-x86_64.s index 0aa90515d6c9..0defe666bb75 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/md5/md5-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/md5/md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl md5_block_asm_data_order diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s index d1a1c895a39b..21e49925f1ae 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/aesni-gcm-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _aesni_ctr32_ghash_6x,@function .align 32 diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/ghash-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/ghash-x86_64.s index 10f5987415a1..0116ef1c94c4 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/ghash-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/modes/ghash-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl gcm_gmult_4bit diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/poly1305/poly1305-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/poly1305/poly1305-x86_64.s index 5662696481ed..8b2e361ea1cd 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/poly1305/poly1305-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/poly1305/poly1305-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s index 9c7110f4ef09..aab3c6db13d9 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl rc4_md5_enc diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-x86_64.s index bdd0da3bd138..781b48b9eb44 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/rc4/rc4-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl RC4 diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-mb-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-mb-x86_64.s index d2857f3288bf..d266d776ec66 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-x86_64.s index 195a148bb9b2..dbeebed9a0a8 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha1_block_data_order diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-mb-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-mb-x86_64.s index bd72a459ab24..f2896b4d6e33 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-mb-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-x86_64.s index 23b932e1de4a..8264a7dbdf10 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha256_block_data_order diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha512-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha512-x86_64.s index a1021c17a966..6f8488a38a9b 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha512-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/sha/sha512-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha512_block_data_order diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/whrlpool/wp-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/whrlpool/wp-x86_64.s index f83130ea6863..a4d55b6afc34 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/whrlpool/wp-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/whrlpool/wp-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl whirlpool_block .type whirlpool_block,@function diff --git a/deps/openssl/config/archs/linux-x86_64/asm/crypto/x86_64cpuid.s b/deps/openssl/config/archs/linux-x86_64/asm/crypto/x86_64cpuid.s index 5a109c6fd915..7e1f5e27408c 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/crypto/x86_64cpuid.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/crypto/x86_64cpuid.s @@ -6,7 +6,7 @@ .hidden OPENSSL_ia32cap_P .comm OPENSSL_ia32cap_P,16,4 -.text +.text .globl OPENSSL_atomic_add .type OPENSSL_atomic_add,@function diff --git a/deps/openssl/config/archs/linux-x86_64/asm/engines/e_padlock-x86_64.s b/deps/openssl/config/archs/linux-x86_64/asm/engines/e_padlock-x86_64.s index 3e5ab736fd86..38c02c188ee1 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/engines/e_padlock-x86_64.s +++ b/deps/openssl/config/archs/linux-x86_64/asm/engines/e_padlock-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl padlock_capability .type padlock_capability,@function .align 16 @@ -1020,7 +1020,7 @@ padlock_ctr32_encrypt: .size padlock_ctr32_encrypt,.-padlock_ctr32_encrypt .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,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 -.data +.data .align 8 .Lpadlock_saved_context: .quad 0 diff --git a/deps/openssl/config/archs/linux-x86_64/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-x86_64/asm/include/openssl/opensslconf.h index 9df0f86ed6ed..7dd2101053aa 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-x86_64/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-x86_64/asm/openssl.gypi b/deps/openssl/config/archs/linux-x86_64/asm/openssl.gypi index 69169eaaeeff..25ff25754fe5 100644 --- a/deps/openssl/config/archs/linux-x86_64/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-x86_64/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux-x86_64/no-asm/configdata.pm b/deps/openssl/config/archs/linux-x86_64/no-asm/configdata.pm index 2e79f043b3a2..769b53bc82cb 100644 --- a/deps/openssl/config/archs/linux-x86_64/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux-x86_64/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux-x86_64", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,8 +7402,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux-x86_64/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux-x86_64/no-asm/crypto/buildinf.h index 131636a64151..d3c92d276d20 100644 --- a/deps/openssl/config/archs/linux-x86_64/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux-x86_64/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux-x86_64" -#define DATE "built on: Tue Apr 3 00:38:38 2018" +#define DATE "built on: Tue Aug 14 23:13:26 2018" diff --git a/deps/openssl/config/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h index e20916814d70..7b122bd86ee5 100644 --- a/deps/openssl/config/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux-x86_64/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux-x86_64/no-asm/openssl.gypi b/deps/openssl/config/archs/linux-x86_64/no-asm/openssl.gypi index 7232d4e55eab..62a7e2ade24d 100644 --- a/deps/openssl/config/archs/linux-x86_64/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux-x86_64/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux32-s390x/asm/configdata.pm b/deps/openssl/config/archs/linux32-s390x/asm/configdata.pm index 47d017c24af8..24b9835113f3 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/configdata.pm +++ b/deps/openssl/config/archs/linux32-s390x/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux32-s390x", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3934,6 +3950,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6227,6 +6249,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7214,6 +7242,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7408,10 +7440,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7567,6 +7612,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7607,7 +7653,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7989,6 +8038,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8109,9 +8161,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9104,6 +9165,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10564,6 +10629,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11084,6 +11153,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11449,6 +11519,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12452,6 +12523,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12801,6 +12881,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12809,6 +12897,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/aes/aes-s390x.S b/deps/openssl/config/archs/linux32-s390x/asm/crypto/aes/aes-s390x.S index 71138f817600..541636080ca3 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/aes/aes-s390x.S +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/aes/aes-s390x.S @@ -458,7 +458,7 @@ _s390x_AES_encrypt: or %r9,%r1 or %r2,%r6 or %r3,%r7 - + srlg %r5,%r10,5 # i0 srlg %r6,%r10,13 # i1 nr %r5,%r0 @@ -511,7 +511,7 @@ _s390x_AES_encrypt: x %r10,24(%r4) x %r11,28(%r4) - br %r14 + br %r14 .size _s390x_AES_encrypt,.-_s390x_AES_encrypt .type AES_Td,@object .align 256 @@ -1015,7 +1015,7 @@ _s390x_AES_decrypt: x %r10,24(%r4) x %r11,28(%r4) - br %r14 + br %r14 .size _s390x_AES_decrypt,.-_s390x_AES_decrypt # void AES_set_encrypt_key(const unsigned char *in, int bits, # AES_KEY *key) { @@ -1496,7 +1496,7 @@ AES_cbc_encrypt: .Lcbc_enc_done: l %r6,6*4(%r15) st %r8,0(%r6) - st %r9,4(%r6) + st %r9,4(%r6) st %r10,8(%r6) st %r11,12(%r6) @@ -1744,7 +1744,7 @@ _s390x_xts_km: llgc %r3,2*4-1(%r15) nill %r3,0x0f # %r3%=16 br %r14 - + .align 16 .Lxts_km_vanilla: # prepare and allocate stack frame at the top of 4K page @@ -1961,7 +1961,7 @@ AES_xts_encrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,80+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 @@ -2012,7 +2012,7 @@ AES_xts_encrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,80+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 @@ -2190,7 +2190,7 @@ AES_xts_decrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,80+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/bn/s390x-mont.S b/deps/openssl/config/archs/linux32-s390x/asm/crypto/bn/s390x-mont.S index cb7743cfea47..0a6c67545a6e 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/bn/s390x-mont.S +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/bn/s390x-mont.S @@ -152,16 +152,16 @@ bn_mul_mont: brct %r14,.Lsub lghi %r8,0 slbgr %r12,%r8 # handle upmost carry - - ngr %r3,%r12 - lghi %r5,-1 - xgr %r5,%r12 - ngr %r5,%r2 - ogr %r3,%r5 # ap=borrow?tp:rp + lghi %r13,-1 + xgr %r13,%r12 la %r7,0(%r0) lgr %r14,%r1 -.Lcopy: lg %r9,0(%r7,%r3) # copy or in-place refresh +.Lcopy: lg %r8,96(%r7,%r15) # conditional copy + lg %r9,0(%r7,%r2) + ngr %r8,%r12 + ngr %r9,%r13 + ogr %r9,%r8 rllg %r9,%r9,32 stg %r7,96(%r7,%r15) # zap tp stg %r9,0(%r7,%r2) diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux32-s390x/asm/crypto/buildinf.h index 64e7f072a3b2..a9705431d266 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/buildinf.h @@ -30,4 +30,4 @@ static const char cflags[] = { 'e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux32-s390x" -#define DATE "built on: Tue Apr 3 00:38:44 2018" +#define DATE "built on: Tue Aug 14 23:13:32 2018" diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/modes/ghash-s390x.S b/deps/openssl/config/archs/linux32-s390x/asm/crypto/modes/ghash-s390x.S index 88c26122ccab..4a006d9c5d23 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/modes/ghash-s390x.S +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/modes/ghash-s390x.S @@ -41,7 +41,7 @@ gcm_ghash_4bit: lg %r0,0+1(%r2) lghi %r12,0 .Louter: - xg %r0,0(%r4) # Xi ^= inp + xg %r0,0(%r4) # Xi ^= inp xg %r1,8(%r4) xgr %r0,%r12 stg %r1,8+1(%r2) diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha256-s390x.S b/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha256-s390x.S index cf1b7819a1fe..f02c83663390 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha256-s390x.S +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha256-s390x.S @@ -1234,7 +1234,7 @@ sha256_block_data_order: cl %r3,176(%r15) jne .Lloop - lm %r6,%r15,184(%r15) + lm %r6,%r15,184(%r15) br %r14 .size sha256_block_data_order,.-sha256_block_data_order .string "SHA256 block transform for s390x, CRYPTOGAMS by " diff --git a/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha512-s390x.S b/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha512-s390x.S index 6900891667c1..3d682e8658bc 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha512-s390x.S +++ b/deps/openssl/config/archs/linux32-s390x/asm/crypto/sha/sha512-s390x.S @@ -1258,7 +1258,7 @@ sha512_block_data_order: cl %r3,240(%r15) jne .Lloop - lm %r6,%r15,248(%r15) + lm %r6,%r15,248(%r15) br %r14 .size sha512_block_data_order,.-sha512_block_data_order .string "SHA512 block transform for s390x, CRYPTOGAMS by " diff --git a/deps/openssl/config/archs/linux32-s390x/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux32-s390x/asm/include/openssl/opensslconf.h index 2f9817e43b12..21dd8cc643b8 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux32-s390x/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux32-s390x/asm/openssl.gypi b/deps/openssl/config/archs/linux32-s390x/asm/openssl.gypi index ffff267d09d0..4aa5f86c81d6 100644 --- a/deps/openssl/config/archs/linux32-s390x/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux32-s390x/asm/openssl.gypi @@ -216,6 +216,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -575,6 +576,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux32-s390x/no-asm/configdata.pm b/deps/openssl/config/archs/linux32-s390x/no-asm/configdata.pm index 5d1929317bf8..9e1c171d287f 100644 --- a/deps/openssl/config/archs/linux32-s390x/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux32-s390x/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux32-s390x", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3927,6 +3943,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6205,6 +6227,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7192,6 +7220,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7365,8 +7397,8 @@ our %unified_info = ( "test/testutil.o" => [ "crypto/include", - "test", "include", + "test", ".", ], "test/threadstest.o" => @@ -7386,10 +7418,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7545,6 +7590,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7585,7 +7631,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7967,6 +8016,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8087,9 +8139,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9074,6 +9135,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10514,6 +10579,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11032,6 +11101,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11392,6 +11462,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12395,6 +12466,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12744,6 +12824,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12752,6 +12840,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux32-s390x/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux32-s390x/no-asm/crypto/buildinf.h index d79eb3ca2ac6..a54f16336785 100644 --- a/deps/openssl/config/archs/linux32-s390x/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux32-s390x/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux32-s390x" -#define DATE "built on: Tue Apr 3 00:38:45 2018" +#define DATE "built on: Tue Aug 14 23:13:33 2018" diff --git a/deps/openssl/config/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h index 1f0c62b3c912..5ba3b88d4e5f 100644 --- a/deps/openssl/config/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux32-s390x/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux32-s390x/no-asm/openssl.gypi b/deps/openssl/config/archs/linux32-s390x/no-asm/openssl.gypi index d3be0776df61..606925668af0 100644 --- a/deps/openssl/config/archs/linux32-s390x/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux32-s390x/no-asm/openssl.gypi @@ -218,6 +218,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -578,6 +579,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux64-s390x/asm/configdata.pm b/deps/openssl/config/archs/linux64-s390x/asm/configdata.pm index ebdafeb184a6..3541bdd57268 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/configdata.pm +++ b/deps/openssl/config/archs/linux64-s390x/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux64-s390x", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3934,6 +3950,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6227,6 +6249,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7214,6 +7242,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7386,8 +7418,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", + "test", "include", ".", ], @@ -7408,10 +7440,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7567,6 +7612,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7607,7 +7653,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7989,6 +8038,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8109,9 +8161,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9104,6 +9165,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10564,6 +10629,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11084,6 +11153,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11449,6 +11519,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12452,6 +12523,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12801,6 +12881,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12809,6 +12897,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/aes/aes-s390x.S b/deps/openssl/config/archs/linux64-s390x/asm/crypto/aes/aes-s390x.S index 1a1e4c224d13..a44e72d0475e 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/aes/aes-s390x.S +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/aes/aes-s390x.S @@ -458,7 +458,7 @@ _s390x_AES_encrypt: or %r9,%r1 or %r2,%r6 or %r3,%r7 - + srlg %r5,%r10,5 # i0 srlg %r6,%r10,13 # i1 nr %r5,%r0 @@ -511,7 +511,7 @@ _s390x_AES_encrypt: x %r10,24(%r4) x %r11,28(%r4) - br %r14 + br %r14 .size _s390x_AES_encrypt,.-_s390x_AES_encrypt .type AES_Td,@object .align 256 @@ -1015,7 +1015,7 @@ _s390x_AES_decrypt: x %r10,24(%r4) x %r11,28(%r4) - br %r14 + br %r14 .size _s390x_AES_decrypt,.-_s390x_AES_decrypt # void AES_set_encrypt_key(const unsigned char *in, int bits, # AES_KEY *key) { @@ -1496,7 +1496,7 @@ AES_cbc_encrypt: .Lcbc_enc_done: lg %r6,6*8(%r15) st %r8,0(%r6) - st %r9,4(%r6) + st %r9,4(%r6) st %r10,8(%r6) st %r11,12(%r6) @@ -1744,7 +1744,7 @@ _s390x_xts_km: llgc %r3,2*8-1(%r15) nill %r3,0x0f # %r3%=16 br %r14 - + .align 16 .Lxts_km_vanilla: # prepare and allocate stack frame at the top of 4K page @@ -1960,7 +1960,7 @@ AES_xts_encrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,144+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 @@ -2011,7 +2011,7 @@ AES_xts_encrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,144+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 @@ -2188,7 +2188,7 @@ AES_xts_decrypt: xgr %r9,%r1 lrvgr %r9,%r9 # flip byte order lrvgr %r11,%r11 - srlg %r8,%r9,32 # smash the tweak to 4x32-bits + srlg %r8,%r9,32 # smash the tweak to 4x32-bits stg %r9,144+0(%r15) # save the tweak llgfr %r9,%r9 srlg %r10,%r11,32 diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-gf2m.s b/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-gf2m.s index e0b0822cae59..1b9042665957 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-gf2m.s +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-gf2m.s @@ -206,7 +206,7 @@ bn_GF2m_mul_2x2: xgr %r4,%r7 xgr %r3,%r6 xgr %r4,%r8 - xgr %r3,%r9 + xgr %r3,%r9 xgr %r4,%r9 xgr %r3,%r4 stg %r4,16(%r2) diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-mont.S b/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-mont.S index c4ee541906f9..b8dea0a66f38 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-mont.S +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/bn/s390x-mont.S @@ -26,12 +26,12 @@ bn_mul_mont: la %r4,0(%r7,%r4) # restore %r4 ahi %r1,-1 # adjust %r1 for inner loop lg %r6,0(%r6) # pull n0 - + lg %r2,0(%r4) - + lg %r9,0(%r3) - + mlgr %r8,%r2 # ap[0]*bp[0] lgr %r12,%r8 @@ -39,7 +39,7 @@ bn_mul_mont: msgr %r0,%r6 lg %r11,0(%r5) # - + mlgr %r10,%r0 # np[0]*m1 algr %r11,%r9 # +="tp[0]" lghi %r13,0 @@ -51,14 +51,14 @@ bn_mul_mont: .align 16 .L1st: lg %r9,0(%r7,%r3) - + mlgr %r8,%r2 # ap[j]*bp[0] algr %r9,%r12 lghi %r12,0 alcgr %r12,%r8 lg %r11,0(%r7,%r5) - + mlgr %r10,%r0 # np[j]*m1 algr %r11,%r13 lghi %r13,0 @@ -79,9 +79,9 @@ bn_mul_mont: .Louter: lg %r2,0(%r4) # bp[i] - + lg %r9,0(%r3) - + mlgr %r8,%r2 # ap[0]*bp[i] alg %r9,160(%r15) # +=tp[0] lghi %r12,0 @@ -91,7 +91,7 @@ bn_mul_mont: msgr %r0,%r6 # tp[0]*n0 lg %r11,0(%r5) # np[0] - + mlgr %r10,%r0 # np[0]*m1 algr %r11,%r9 # +="tp[0]" lghi %r13,0 @@ -103,7 +103,7 @@ bn_mul_mont: .align 16 .Linner: lg %r9,0(%r7,%r3) - + mlgr %r8,%r2 # ap[j]*bp[i] algr %r9,%r12 lghi %r12,0 @@ -112,7 +112,7 @@ bn_mul_mont: alcgr %r12,%r8 lg %r11,0(%r7,%r5) - + mlgr %r10,%r0 # np[j]*m1 algr %r11,%r13 lghi %r13,0 @@ -145,24 +145,24 @@ bn_mul_mont: lr %r14,%r1 .Lsub: lg %r9,0(%r7,%r3) lg %r11,0(%r7,%r5) - + slbgr %r9,%r11 stg %r9,0(%r7,%r2) la %r7,8(%r7) brct %r14,.Lsub lghi %r8,0 slbgr %r12,%r8 # handle upmost carry - - ngr %r3,%r12 - lghi %r5,-1 - xgr %r5,%r12 - ngr %r5,%r2 - ogr %r3,%r5 # ap=borrow?tp:rp + lghi %r13,-1 + xgr %r13,%r12 la %r7,0(%r0) lgr %r14,%r1 -.Lcopy: lg %r9,0(%r7,%r3) # copy or in-place refresh - +.Lcopy: lg %r8,160(%r7,%r15) # conditional copy + lg %r9,0(%r7,%r2) + ngr %r8,%r12 + ngr %r9,%r13 + ogr %r9,%r8 + stg %r7,160(%r7,%r15) # zap tp stg %r9,0(%r7,%r2) la %r7,8(%r7) diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/buildinf.h b/deps/openssl/config/archs/linux64-s390x/asm/crypto/buildinf.h index 0539055a2cbc..6358018f989b 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/buildinf.h @@ -30,4 +30,4 @@ static const char cflags[] = { 'e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux64-s390x" -#define DATE "built on: Tue Apr 3 00:38:46 2018" +#define DATE "built on: Tue Aug 14 23:13:34 2018" diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/modes/ghash-s390x.S b/deps/openssl/config/archs/linux64-s390x/asm/crypto/modes/ghash-s390x.S index a1c021759060..6dfaa76c3530 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/modes/ghash-s390x.S +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/modes/ghash-s390x.S @@ -40,7 +40,7 @@ gcm_ghash_4bit: lg %r0,0+1(%r2) lghi %r12,0 .Louter: - xg %r0,0(%r4) # Xi ^= inp + xg %r0,0(%r4) # Xi ^= inp xg %r1,8(%r4) xgr %r0,%r12 stg %r1,8+1(%r2) diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha256-s390x.S b/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha256-s390x.S index 28cbb63752cf..e66c672764f6 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha256-s390x.S +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha256-s390x.S @@ -1234,7 +1234,7 @@ sha256_block_data_order: clg %r3,256(%r15) jne .Lloop - lmg %r6,%r15,272(%r15) + lmg %r6,%r15,272(%r15) br %r14 .size sha256_block_data_order,.-sha256_block_data_order .string "SHA256 block transform for s390x, CRYPTOGAMS by " diff --git a/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha512-s390x.S b/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha512-s390x.S index 77c99e416b16..5ff5c6bf9f00 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha512-s390x.S +++ b/deps/openssl/config/archs/linux64-s390x/asm/crypto/sha/sha512-s390x.S @@ -1258,7 +1258,7 @@ sha512_block_data_order: clg %r3,320(%r15) jne .Lloop - lmg %r6,%r15,336(%r15) + lmg %r6,%r15,336(%r15) br %r14 .size sha512_block_data_order,.-sha512_block_data_order .string "SHA512 block transform for s390x, CRYPTOGAMS by " diff --git a/deps/openssl/config/archs/linux64-s390x/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux64-s390x/asm/include/openssl/opensslconf.h index 3976dadb19ca..8bd973e750d6 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux64-s390x/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux64-s390x/asm/openssl.gypi b/deps/openssl/config/archs/linux64-s390x/asm/openssl.gypi index 30272e9dbcf7..2841831fe7c6 100644 --- a/deps/openssl/config/archs/linux64-s390x/asm/openssl.gypi +++ b/deps/openssl/config/archs/linux64-s390x/asm/openssl.gypi @@ -216,6 +216,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -575,6 +576,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/linux64-s390x/no-asm/configdata.pm b/deps/openssl/config/archs/linux64-s390x/no-asm/configdata.pm index 5c9cbdcf00c6..c62c43c1dea0 100644 --- a/deps/openssl/config/archs/linux64-s390x/no-asm/configdata.pm +++ b/deps/openssl/config/archs/linux64-s390x/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "linux64-s390x", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/linux64-s390x/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/linux64-s390x/no-asm/crypto/buildinf.h index a52b3fe333d7..3295c8aa2b81 100644 --- a/deps/openssl/config/archs/linux64-s390x/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/linux64-s390x/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: linux64-s390x" -#define DATE "built on: Tue Apr 3 00:38:47 2018" +#define DATE "built on: Tue Aug 14 23:13:35 2018" diff --git a/deps/openssl/config/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h index af3a003d5193..08bf3d43940b 100644 --- a/deps/openssl/config/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/linux64-s390x/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/linux64-s390x/no-asm/openssl.gypi b/deps/openssl/config/archs/linux64-s390x/no-asm/openssl.gypi index 37430ef795ae..aa52ca679b43 100644 --- a/deps/openssl/config/archs/linux64-s390x/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/linux64-s390x/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/configdata.pm b/deps/openssl/config/archs/solaris-x86-gcc/asm/configdata.pm index bebfecbdced6..ae2f6b4ec751 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/configdata.pm +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "solaris-x86-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3945,6 +3961,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6271,6 +6293,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7270,6 +7298,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7442,9 +7474,9 @@ our %unified_info = ( ], "test/testutil.o" => [ - "test", "crypto/include", "include", + "test", ".", ], "test/threadstest.o" => @@ -7464,10 +7496,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7623,6 +7668,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7663,7 +7709,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8045,6 +8094,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8165,9 +8217,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9164,6 +9225,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10636,6 +10701,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11165,6 +11234,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11533,6 +11603,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12538,6 +12609,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12887,6 +12967,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12895,6 +12983,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/bn/x86-mont.s b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/bn/x86-mont.s index 945d9e58248a..8212ff0825f5 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/bn/x86-mont.s +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/bn/x86-mont.s @@ -445,16 +445,18 @@ bn_mul_mont: leal 1(%edx),%edx jge .L017sub sbbl $0,%eax - andl %eax,%esi - notl %eax - movl %edi,%ebp - andl %eax,%ebp - orl %ebp,%esi + movl $-1,%edx + xorl %eax,%edx + jmp .L018copy .align 16 .L018copy: - movl (%esi,%ebx,4),%eax - movl %eax,(%edi,%ebx,4) + movl 32(%esp,%ebx,4),%esi + movl (%edi,%ebx,4),%ebp movl %ecx,32(%esp,%ebx,4) + andl %eax,%esi + andl %edx,%ebp + orl %esi,%ebp + movl %ebp,(%edi,%ebx,4) decl %ebx jge .L018copy movl 24(%esp),%esp diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/buildinf.h b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/buildinf.h index 864103a8dc6d..f3e98cfc6cbc 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/buildinf.h @@ -37,4 +37,4 @@ static const char cflags[] = { '"',' ','\0' }; #define PLATFORM "platform: solaris-x86-gcc" -#define DATE "built on: Tue Apr 3 00:38:47 2018" +#define DATE "built on: Tue Aug 14 23:13:35 2018" diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/ec/ecp_nistz256-x86.s b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/ec/ecp_nistz256-x86.s index cbccc5ebf7a2..9092d6632152 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/ec/ecp_nistz256-x86.s +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/crypto/ec/ecp_nistz256-x86.s @@ -3857,7 +3857,7 @@ ecp_nistz256_scatter_w7: movl 20(%esp),%edi movl 24(%esp),%esi movl 28(%esp),%ebp - leal -1(%edi,%ebp,1),%edi + leal (%edi,%ebp,1),%edi movl $16,%ebp .L007scatter_w7_loop: movl (%esi),%eax diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h index e819a68f0b6a..b9d6509c0b95 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/solaris-x86-gcc/asm/openssl.gypi b/deps/openssl/config/archs/solaris-x86-gcc/asm/openssl.gypi index af1d87642d06..7fb2ba08cdf9 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/asm/openssl.gypi +++ b/deps/openssl/config/archs/solaris-x86-gcc/asm/openssl.gypi @@ -211,6 +211,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -567,6 +568,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/configdata.pm b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/configdata.pm index f6f187ac6d24..85b7ff65f20a 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "solaris-x86-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1075,6 +1075,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1241,10 +1245,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3931,6 +3947,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6209,6 +6231,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7196,6 +7224,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7390,10 +7422,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7549,6 +7594,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7589,7 +7635,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7971,6 +8020,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8091,9 +8143,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9082,6 +9143,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10522,6 +10587,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11041,6 +11110,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11401,6 +11471,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12404,6 +12475,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12753,6 +12833,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12761,6 +12849,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h index e3ba51d54c11..7b32dc7d3eae 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: solaris-x86-gcc" -#define DATE "built on: Tue Apr 3 00:38:49 2018" +#define DATE "built on: Tue Aug 14 23:13:37 2018" diff --git a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h index b20dbd02123e..d0fb48f465fe 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/openssl.gypi b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/openssl.gypi index 4d880dad4e24..3c8ab88f627b 100644 --- a/deps/openssl/config/archs/solaris-x86-gcc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/solaris-x86-gcc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/configdata.pm b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/configdata.pm index 4f080d801314..ed79783b33d2 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/configdata.pm +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "solaris64-x86_64-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1078,6 +1078,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1244,10 +1248,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3994,6 +4010,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6332,6 +6354,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7331,6 +7359,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7503,8 +7535,8 @@ our %unified_info = ( ], "test/testutil.o" => [ - "crypto/include", "test", + "crypto/include", "include", ".", ], @@ -7525,10 +7557,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7684,6 +7729,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7724,7 +7770,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -8106,6 +8155,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8226,9 +8278,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9257,6 +9318,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10737,6 +10802,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11274,6 +11343,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11644,6 +11714,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12649,6 +12720,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12998,6 +13078,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -13006,6 +13094,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aes-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aes-x86_64.s index aa7a1ea1cf9b..488ae6d781ac 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aes-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _x86_64_AES_encrypt,@function .align 16 _x86_64_AES_encrypt: diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-mb-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-mb-x86_64.s index d49379783298..3dcd55d3f59a 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-mb-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha1-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha1-x86_64.s index c7c53e8771e1..ca193ddb9ea4 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha1-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha1_enc diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha256-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha256-x86_64.s index 70eed05b00c1..427a1c7d1232 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha256-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_cbc_sha256_enc diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-x86_64.s index cd8b00f25983..e18f87c4e60c 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/aesni-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl aesni_encrypt .type aesni_encrypt,@function diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/bsaes-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/bsaes-x86_64.s index 0fd201167f64..c76c5a8afb47 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/bsaes-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/bsaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/vpaes-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/vpaes-x86_64.s index bf7c2b0b6f6b..d19329894079 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/vpaes-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/aes/vpaes-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-avx2.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-avx2.s index a2cccde63604..ee619092c9b7 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-avx2.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-avx2.s @@ -1,4 +1,4 @@ -.text +.text .globl rsaz_1024_sqr_avx2 .type rsaz_1024_sqr_avx2,@function diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-x86_64.s index b6797a68498e..795cebe1d743 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/rsaz-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-gf2m.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-gf2m.s index f4e5337565bb..a0b78a0565f7 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-gf2m.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-gf2m.s @@ -1,4 +1,4 @@ -.text +.text .type _mul_1x1,@function .align 16 diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont.s index d19d4662b492..3a78cd844090 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont.s @@ -1,4 +1,4 @@ -.text +.text @@ -197,30 +197,30 @@ bn_mul_mont: xorq %r14,%r14 movq (%rsp),%rax - leaq (%rsp),%rsi movq %r9,%r15 - jmp .Lsub + .align 16 .Lsub: sbbq (%rcx,%r14,8),%rax movq %rax,(%rdi,%r14,8) - movq 8(%rsi,%r14,8),%rax + movq 8(%rsp,%r14,8),%rax leaq 1(%r14),%r14 decq %r15 jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax - movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx + movq %r9,(%rsp,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy @@ -574,10 +574,10 @@ bn_mul4x_mont: cmpq %r9,%r14 jb .Louter4x movq 16(%rsp,%r9,8),%rdi + leaq -4(%r9),%r15 movq 0(%rsp),%rax - pxor %xmm0,%xmm0 movq 8(%rsp),%rdx - shrq $2,%r9 + shrq $2,%r15 leaq (%rsp),%rsi xorq %r14,%r14 @@ -585,9 +585,7 @@ bn_mul4x_mont: movq 16(%rsi),%rbx movq 24(%rsi),%rbp sbbq 8(%rcx),%rdx - leaq -1(%r9),%r15 - jmp .Lsub4x -.align 16 + .Lsub4x: movq %rax,0(%rdi,%r14,8) movq %rdx,8(%rdi,%r14,8) @@ -614,34 +612,35 @@ bn_mul4x_mont: sbbq $0,%rax movq %rbp,24(%rdi,%r14,8) - xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx - leaq -1(%r9),%r15 - orq %rcx,%rsi - - movdqu (%rsi),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,(%rdi) + pxor %xmm0,%xmm0 +.byte 102,72,15,110,224 + pcmpeqd %xmm5,%xmm5 + pshufd $0,%xmm4,%xmm4 + movq %r9,%r15 + pxor %xmm4,%xmm5 + shrq $2,%r15 + xorl %eax,%eax + jmp .Lcopy4x .align 16 .Lcopy4x: - movdqu 16(%rsi,%r14,1),%xmm2 - movdqu 32(%rsi,%r14,1),%xmm1 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) - movdqa %xmm0,32(%rsp,%r14,1) - movdqu %xmm1,32(%rdi,%r14,1) - leaq 32(%r14),%r14 + movdqa (%rsp,%rax,1),%xmm1 + movdqu (%rdi,%rax,1),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax,1),%xmm3 + movdqa %xmm0,(%rsp,%rax,1) + por %xmm2,%xmm1 + movdqu 16(%rdi,%rax,1),%xmm2 + movdqu %xmm1,(%rdi,%rax,1) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax,1) + por %xmm2,%xmm3 + movdqu %xmm3,16(%rdi,%rax,1) + leaq 32(%rax),%rax decq %r15 jnz .Lcopy4x - - shlq $2,%r9 - movdqu 16(%rsi,%r14,1),%xmm2 - movdqa %xmm0,16(%rsp,%r14,1) - movdqu %xmm2,16(%rdi,%r14,1) movq 8(%rsp,%r9,8),%rsi movq $1,%rax movq -48(%rsi),%r15 diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont5.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont5.s index a2fccf088e75..0dd53512f9c9 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont5.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/bn/x86_64-mont5.s @@ -1,4 +1,4 @@ -.text +.text @@ -393,18 +393,19 @@ bn_mul_mont_gather5: jnz .Lsub sbbq $0,%rax + movq $-1,%rbx + xorq %rax,%rbx xorq %r14,%r14 - andq %rax,%rsi - notq %rax - movq %rdi,%rcx - andq %rax,%rcx movq %r9,%r15 - orq %rcx,%rsi -.align 16 + .Lcopy: - movq (%rsi,%r14,8),%rax + movq (%rdi,%r14,8),%rcx + movq (%rsp,%r14,8),%rdx + andq %rbx,%rcx + andq %rax,%rdx movq %r14,(%rsp,%r14,8) - movq %rax,(%rdi,%r14,8) + orq %rcx,%rdx + movq %rdx,(%rdi,%r14,8) leaq 1(%r14),%r14 subq $1,%r15 jnz .Lcopy diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h index e1b87d9f50a3..357c109a63d2 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/buildinf.h @@ -35,4 +35,4 @@ static const char cflags[] = { 'i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: solaris64-x86_64-gcc" -#define DATE "built on: Tue Apr 3 00:38:50 2018" +#define DATE "built on: Tue Aug 14 23:13:38 2018" diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/camellia/cmll-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/camellia/cmll-x86_64.s index 1117381f316d..1dead91b1752 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/camellia/cmll-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/camellia/cmll-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl Camellia_EncryptBlock diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/chacha/chacha-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/chacha/chacha-x86_64.s index 044b8f031efa..a9fed05fd7e3 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/chacha/chacha-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/chacha/chacha-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/ec/ecp_nistz256-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/ec/ecp_nistz256-x86_64.s index ce86d5d969f7..62a7ac611f37 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/ec/ecp_nistz256-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/ec/ecp_nistz256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl ecp_nistz256_precomputed .type ecp_nistz256_precomputed,@object .align 4096 @@ -2372,7 +2372,7 @@ ecp_nistz256_precomputed: .long 0x2a849870,0x4d33dd99,0x41576335,0xa716964b,0x179be0e5,0xff5e3a9b,0x83b13632,0x5b9d6b1b,0xa52f313b,0x3b8bd7d4,0x637a4660,0xc9dd95a0,0x0b3e218f,0x30035962,0xc7b28a3c,0xce1481a3 .long 0x43228d83,0xab41b43a,0x4ad63f99,0x24ae1c30,0x46a51229,0x8e525f1a,0xcd26d2b4,0x14af860f,0x3f714aa1,0xd6baef61,0xeb78795e,0xf51865ad,0xe6a9d694,0xd3e21fce,0x8a37b527,0x82ceb1dd .size ecp_nistz256_precomputed,.-ecp_nistz256_precomputed -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/md5/md5-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/md5/md5-x86_64.s index 0aa90515d6c9..0defe666bb75 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/md5/md5-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/md5/md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl md5_block_asm_data_order diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/aesni-gcm-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/aesni-gcm-x86_64.s index d1a1c895a39b..21e49925f1ae 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/aesni-gcm-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/aesni-gcm-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .type _aesni_ctr32_ghash_6x,@function .align 32 diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/ghash-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/ghash-x86_64.s index 10f5987415a1..0116ef1c94c4 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/ghash-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/modes/ghash-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl gcm_gmult_4bit diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/poly1305/poly1305-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/poly1305/poly1305-x86_64.s index 5662696481ed..8b2e361ea1cd 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/poly1305/poly1305-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/poly1305/poly1305-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-md5-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-md5-x86_64.s index 9c7110f4ef09..aab3c6db13d9 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-md5-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-md5-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .align 16 .globl rc4_md5_enc diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-x86_64.s index bdd0da3bd138..781b48b9eb44 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/rc4/rc4-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl RC4 diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-mb-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-mb-x86_64.s index d2857f3288bf..d266d776ec66 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-mb-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-x86_64.s index 195a148bb9b2..dbeebed9a0a8 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha1-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha1_block_data_order diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-mb-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-mb-x86_64.s index bd72a459ab24..f2896b4d6e33 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-mb-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-mb-x86_64.s @@ -1,4 +1,4 @@ -.text +.text diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-x86_64.s index 23b932e1de4a..8264a7dbdf10 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha256-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha256_block_data_order diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha512-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha512-x86_64.s index a1021c17a966..6f8488a38a9b 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha512-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/sha/sha512-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl sha512_block_data_order diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/whrlpool/wp-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/whrlpool/wp-x86_64.s index f83130ea6863..a4d55b6afc34 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/whrlpool/wp-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/whrlpool/wp-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl whirlpool_block .type whirlpool_block,@function diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/x86_64cpuid.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/x86_64cpuid.s index 5a109c6fd915..7e1f5e27408c 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/x86_64cpuid.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/crypto/x86_64cpuid.s @@ -6,7 +6,7 @@ .hidden OPENSSL_ia32cap_P .comm OPENSSL_ia32cap_P,16,4 -.text +.text .globl OPENSSL_atomic_add .type OPENSSL_atomic_add,@function diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/engines/e_padlock-x86_64.s b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/engines/e_padlock-x86_64.s index 3e5ab736fd86..38c02c188ee1 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/engines/e_padlock-x86_64.s +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/engines/e_padlock-x86_64.s @@ -1,4 +1,4 @@ -.text +.text .globl padlock_capability .type padlock_capability,@function .align 16 @@ -1020,7 +1020,7 @@ padlock_ctr32_encrypt: .size padlock_ctr32_encrypt,.-padlock_ctr32_encrypt .byte 86,73,65,32,80,97,100,108,111,99,107,32,120,56,54,95,54,52,32,109,111,100,117,108,101,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 -.data +.data .align 8 .Lpadlock_saved_context: .quad 0 diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h index 9df0f86ed6ed..7dd2101053aa 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/include/openssl/opensslconf.h @@ -102,12 +102,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/openssl.gypi b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/openssl.gypi index 46a2ed34cff8..2557943ad5cd 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/openssl.gypi +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/asm/openssl.gypi @@ -215,6 +215,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -572,6 +573,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/configdata.pm b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/configdata.pm index f0d822aa7d0f..3c550047ab39 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/configdata.pm +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/configdata.pm @@ -56,8 +56,8 @@ our %config = ( shlib_version_number => "1.1", sourcedir => ".", target => "solaris64-x86_64-gcc", - version => "1.1.0h", - version_num => "0x1010008fL", + version => "1.1.0i", + version_num => "0x1010009fL", ); our %target = ( @@ -1077,6 +1077,10 @@ our %unified_info = ( [ "libcrypto", ], + "test/errtest" => + [ + "libcrypto", + ], "test/evp_extra_test" => [ "libcrypto", @@ -1243,10 +1247,22 @@ our %unified_info = ( [ "libcrypto", ], + "test/versions" => + [ + "libcrypto", + ], "test/wp_test" => [ "libcrypto", ], + "test/x509_dup_cert_test" => + [ + "libcrypto", + ], + "test/x509_time_test" => + [ + "libcrypto", + ], "test/x509aux" => [ "libcrypto", @@ -3933,6 +3949,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/conf/conf_ssl.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/cpt_err.o" => [ ".", @@ -6211,6 +6233,12 @@ our %unified_info = ( "crypto/include", "include", ], + "crypto/x509/x509_meth.o" => + [ + ".", + "crypto/include", + "include", + ], "crypto/x509/x509_obj.o" => [ ".", @@ -7198,6 +7226,10 @@ our %unified_info = ( [ "include", ], + "test/errtest.o" => + [ + "include", + ], "test/evp_extra_test.o" => [ "include", @@ -7370,9 +7402,9 @@ our %unified_info = ( ], "test/testutil.o" => [ + "test", "crypto/include", "include", - "test", ".", ], "test/threadstest.o" => @@ -7392,10 +7424,23 @@ our %unified_info = ( [ "include", ], + "test/versions.o" => + [ + "include", + ], "test/wp_test.o" => [ "include", ], + "test/x509_dup_cert_test.o" => + [ + "include", + ], + "test/x509_time_test.o" => + [ + ".", + "include", + ], "test/x509aux.o" => [ "include", @@ -7551,6 +7596,7 @@ our %unified_info = ( "test/ecdsatest", "test/ectest", "test/enginetest", + "test/errtest", "test/evp_extra_test", "test/evp_test", "test/exdatatest", @@ -7591,7 +7637,10 @@ our %unified_info = ( "test/v3ext", "test/v3nametest", "test/verify_extra_test", + "test/versions", "test/wp_test", + "test/x509_dup_cert_test", + "test/x509_time_test", "test/x509aux", ], "rawlines" => @@ -7973,6 +8022,9 @@ our %unified_info = ( "test/enginetest" => [ ], + "test/errtest" => + [ + ], "test/evp_extra_test" => [ ], @@ -8093,9 +8145,18 @@ our %unified_info = ( "test/verify_extra_test" => [ ], + "test/versions" => + [ + ], "test/wp_test" => [ ], + "test/x509_dup_cert_test" => + [ + ], + "test/x509_time_test" => + [ + ], "test/x509aux" => [ ], @@ -9084,6 +9145,10 @@ our %unified_info = ( [ "crypto/conf/conf_sap.c", ], + "crypto/conf/conf_ssl.o" => + [ + "crypto/conf/conf_ssl.c", + ], "crypto/cpt_err.o" => [ "crypto/cpt_err.c", @@ -10524,6 +10589,10 @@ our %unified_info = ( [ "crypto/x509/x509_lu.c", ], + "crypto/x509/x509_meth.o" => + [ + "crypto/x509/x509_meth.c", + ], "crypto/x509/x509_obj.o" => [ "crypto/x509/x509_obj.c", @@ -11043,6 +11112,7 @@ our %unified_info = ( "crypto/conf/conf_mall.o", "crypto/conf/conf_mod.o", "crypto/conf/conf_sap.o", + "crypto/conf/conf_ssl.o", "crypto/cpt_err.o", "crypto/cryptlib.o", "crypto/ct/ct_b64.o", @@ -11403,6 +11473,7 @@ our %unified_info = ( "crypto/x509/x509_err.o", "crypto/x509/x509_ext.o", "crypto/x509/x509_lu.o", + "crypto/x509/x509_meth.o", "crypto/x509/x509_obj.o", "crypto/x509/x509_r2x.o", "crypto/x509/x509_req.o", @@ -12406,6 +12477,15 @@ our %unified_info = ( [ "test/enginetest.c", ], + "test/errtest" => + [ + "test/errtest.o", + "test/testutil.o", + ], + "test/errtest.o" => + [ + "test/errtest.c", + ], "test/evp_extra_test" => [ "test/evp_extra_test.o", @@ -12755,6 +12835,14 @@ our %unified_info = ( [ "test/verify_extra_test.c", ], + "test/versions" => + [ + "test/versions.o", + ], + "test/versions.o" => + [ + "test/versions.c", + ], "test/wp_test" => [ "test/wp_test.o", @@ -12763,6 +12851,23 @@ our %unified_info = ( [ "test/wp_test.c", ], + "test/x509_dup_cert_test" => + [ + "test/x509_dup_cert_test.o", + ], + "test/x509_dup_cert_test.o" => + [ + "test/x509_dup_cert_test.c", + ], + "test/x509_time_test" => + [ + "test/testutil.o", + "test/x509_time_test.o", + ], + "test/x509_time_test.o" => + [ + "test/x509_time_test.c", + ], "test/x509aux" => [ "test/x509aux.o", diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h index 506757d551ff..118391ea1d5e 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/crypto/buildinf.h @@ -20,4 +20,4 @@ static const char cflags[] = { 'n','g','i','n','e','s','-','1','.','1','\\','"','"',' ','\0' }; #define PLATFORM "platform: solaris64-x86_64-gcc" -#define DATE "built on: Tue Apr 3 00:38:53 2018" +#define DATE "built on: Tue Aug 14 23:13:42 2018" diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h index e20916814d70..7b122bd86ee5 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/include/openssl/opensslconf.h @@ -105,12 +105,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/openssl.gypi b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/openssl.gypi index 55006d7fe982..1d596c5b2178 100644 --- a/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/openssl.gypi +++ b/deps/openssl/config/archs/solaris64-x86_64-gcc/no-asm/openssl.gypi @@ -219,6 +219,7 @@ 'openssl/crypto/conf/conf_mall.c', 'openssl/crypto/conf/conf_mod.c', 'openssl/crypto/conf/conf_sap.c', + 'openssl/crypto/conf/conf_ssl.c', 'openssl/crypto/cpt_err.c', 'openssl/crypto/cryptlib.c', 'openssl/crypto/ct/ct_b64.c', @@ -579,6 +580,7 @@ 'openssl/crypto/x509/x509_err.c', 'openssl/crypto/x509/x509_ext.c', 'openssl/crypto/x509/x509_lu.c', + 'openssl/crypto/x509/x509_meth.c', 'openssl/crypto/x509/x509_obj.c', 'openssl/crypto/x509/x509_r2x.c', 'openssl/crypto/x509/x509_req.c', diff --git a/deps/openssl/openssl/.travis.yml b/deps/openssl/openssl/.travis.yml index b5fc44318110..1c1db2b73dad 100644 --- a/deps/openssl/openssl/.travis.yml +++ b/deps/openssl/openssl/.travis.yml @@ -61,7 +61,7 @@ matrix: sources: - ubuntu-toolchain-r-test compiler: gcc-5 - env: CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 -DPEDANTIC" + env: UBUNTU_GCC_HACK="yes" CONFIG_OPTS="no-asm enable-ubsan enable-rc5 enable-md2 -DPEDANTIC" - os: linux addons: apt: @@ -69,7 +69,7 @@ matrix: - binutils-mingw-w64 - gcc-mingw-w64 compiler: i686-w64-mingw32-gcc - env: CONFIG_OPTS="no-pic" TESTS="-test_fuzz" + env: CONFIG_OPTS="no-pic" - os: linux addons: apt: @@ -85,7 +85,7 @@ matrix: - binutils-mingw-w64 - gcc-mingw-w64 compiler: x86_64-w64-mingw32-gcc - env: CONFIG_OPTS="no-pic" TESTS="-test_fuzz" + env: CONFIG_OPTS="no-pic" - os: linux addons: apt: @@ -112,6 +112,10 @@ before_script: srcdir=.; top=.; fi + - if [ -n "$UBUNTU_GCC_HACK" ]; then + $CC -dumpspecs | sed "s/--push-state//g; s/--pop-state/--as-needed/g" > gcc-specs.txt; + CC="$CC -specs=gcc-specs.txt"; + fi - if [ "$CC" == i686-w64-mingw32-gcc ]; then export CROSS_COMPILE=${CC%%gcc}; unset CC; $srcdir/Configure mingw $CONFIG_OPTS -Wno-pedantic-ms-format; @@ -186,7 +190,7 @@ script: fi - if [ -n "$DESTDIR" ]; then mkdir "../$DESTDIR"; - if $make install install_docs DESTDIR="../$DESTDIR"; then + if $make install DESTDIR="../$DESTDIR"; then echo -e '+\057\057\057\057\057 MAKE INSTALL_DOCS OK'; else echo -e '+\057\057\057\057\057 MAKE INSTALL_DOCS FAILED'; false; diff --git a/deps/openssl/openssl/CHANGES b/deps/openssl/openssl/CHANGES index 9d65bc3a7750..9f0b94743bff 100644 --- a/deps/openssl/openssl/CHANGES +++ b/deps/openssl/openssl/CHANGES @@ -7,6 +7,81 @@ https://github.com/openssl/openssl/commits/ and pick the appropriate release branch. + Changes between 1.1.0h and 1.1.0i [14 Aug 2018] + + *) Client DoS due to large DH parameter + + During key agreement in a TLS handshake using a DH(E) based ciphersuite a + malicious server can send a very large prime value to the client. This will + cause the client to spend an unreasonably long period of time generating a + key for this prime resulting in a hang until the client has finished. This + could be exploited in a Denial Of Service attack. + + This issue was reported to OpenSSL on 5th June 2018 by Guido Vranken + (CVE-2018-0732) + [Guido Vranken] + + *) Cache timing vulnerability in RSA Key Generation + + The OpenSSL RSA Key generation algorithm has been shown to be vulnerable to + a cache timing side channel attack. An attacker with sufficient access to + mount cache timing attacks during the RSA key generation process could + recover the private key. + + This issue was reported to OpenSSL on 4th April 2018 by Alejandro Cabrera + Aldaya, Billy Brumley, Cesar Pereida Garcia and Luis Manuel Alvarez Tapia. + (CVE-2018-0737) + [Billy Brumley] + + *) Make EVP_PKEY_asn1_new() a bit stricter about its input. A NULL pem_str + parameter is no longer accepted, as it leads to a corrupt table. NULL + pem_str is reserved for alias entries only. + [Richard Levitte] + + *) Revert blinding in ECDSA sign and instead make problematic addition + length-invariant. Switch even to fixed-length Montgomery multiplication. + [Andy Polyakov] + + *) Change generating and checking of primes so that the error rate of not + being prime depends on the intended use based on the size of the input. + For larger primes this will result in more rounds of Miller-Rabin. + The maximal error rate for primes with more than 1080 bits is lowered + to 2^-128. + [Kurt Roeckx, Annie Yousar] + + *) Increase the number of Miller-Rabin rounds for DSA key generating to 64. + [Kurt Roeckx] + + *) Add blinding to ECDSA and DSA signatures to protect against side channel + attacks discovered by Keegan Ryan (NCC Group). + [Matt Caswell] + + *) When unlocking a pass phrase protected PEM file or PKCS#8 container, we + now allow empty (zero character) pass phrases. + [Richard Levitte] + + *) Certificate time validation (X509_cmp_time) enforces stricter + compliance with RFC 5280. Fractional seconds and timezone offsets + are no longer allowed. + [Emilia Käsper] + + *) Fixed a text canonicalisation bug in CMS + + Where a CMS detached signature is used with text content the text goes + through a canonicalisation process first prior to signing or verifying a + signature. This process strips trailing space at the end of lines, converts + line terminators to CRLF and removes additional trailing line terminators + at the end of a file. A bug in the canonicalisation process meant that + some characters, such as form-feed, were incorrectly treated as whitespace + and removed. This is contrary to the specification (RFC5485). This fix + could mean that detached text data signed with an earlier version of + OpenSSL 1.1.0 may fail to verify using the fixed version, or text data + signed with a fixed OpenSSL may fail to verify with an earlier version of + OpenSSL 1.1.0. A workaround is to only verify the canonicalised text data + and use the "-binary" flag (for the "cms" command line application) or set + the SMIME_BINARY/PKCS7_BINARY/CMS_BINARY flags (if using CMS_verify()). + [Matt Caswell] + Changes between 1.1.0g and 1.1.0h [27 Mar 2018] *) Constructed ASN.1 types with a recursive definition could exceed the stack @@ -1144,13 +1219,13 @@ [Steve Henson] *) Experimental encrypt-then-mac support. - + Experimental support for encrypt then mac from draft-gutmann-tls-encrypt-then-mac-02.txt To enable it set the appropriate extension number (0x42 for the test server) using e.g. -DTLSEXT_TYPE_encrypt_then_mac=0x42 - + For non-compliant peers (i.e. just about everything) this should have no effect. @@ -1201,7 +1276,7 @@ *) Use separate DRBG fields for internal and external flags. New function FIPS_drbg_health_check() to perform on demand health checking. Add - generation tests to fips_test_suite with reduced health check interval to + generation tests to fips_test_suite with reduced health check interval to demonstrate periodic health checking. Add "nodh" option to fips_test_suite to skip very slow DH test. [Steve Henson] @@ -1215,7 +1290,7 @@ combination: call this in fips_test_suite. [Steve Henson] - *) Add support for canonical generation of DSA parameter 'g'. See + *) Add support for canonical generation of DSA parameter 'g'. See FIPS 186-3 A.2.3. *) Add support for HMAC DRBG from SP800-90. Update DRBG algorithm test and @@ -1239,7 +1314,7 @@ requested amount of entropy. [Steve Henson] - *) Add PRNG security strength checks to RSA, DSA and ECDSA using + *) Add PRNG security strength checks to RSA, DSA and ECDSA using information in FIPS186-3, SP800-57 and SP800-131A. [Steve Henson] @@ -1331,7 +1406,7 @@ can be set or retrieved with a ctrl. The IV length is by default 12 bytes (96 bits) but can be set to an alternative value. If the IV length exceeds the maximum IV length (currently 16 bytes) it cannot be - set before the key. + set before the key. [Steve Henson] *) New flag in ciphers: EVP_CIPH_FLAG_CUSTOM_CIPHER. This means the @@ -1374,7 +1449,7 @@ Add CMAC pkey methods. [Steve Henson] - *) Experimental renegotiation in s_server -www mode. If the client + *) Experimental renegotiation in s_server -www mode. If the client browses /reneg connection is renegotiated. If /renegcert it is renegotiated requesting a certificate. [Steve Henson] @@ -1394,7 +1469,7 @@ *) New macro __owur for "OpenSSL Warn Unused Result". This makes use of a gcc attribute to warn if the result of a function is ignored. This is enable if DEBUG_UNUSED is set. Add to several functions in evp.h - whose return value is often ignored. + whose return value is often ignored. [Steve Henson] *) New -noct, -requestct, -requirect and -ctlogfile options for s_client. @@ -3628,7 +3703,7 @@ *) New option -sigopt to dgst utility. Update dgst to use EVP_Digest{Sign,Verify}*. These two changes make it possible to use - alternative signing parameters such as X9.31 or PSS in the dgst + alternative signing parameters such as X9.31 or PSS in the dgst utility. [Steve Henson] @@ -12379,7 +12454,7 @@ des-cbc 3624.96k 5258.21k 5530.91k 5624.30k 5628.26k *) Fixed sk_insert which never worked properly. [Steve Henson] - *) Fix ASN1 macros so they can handle indefinite length constructed + *) Fix ASN1 macros so they can handle indefinite length constructed EXPLICIT tags. Some non standard certificates use these: they can now be read in. [Steve Henson] diff --git a/deps/openssl/openssl/CONTRIBUTING b/deps/openssl/openssl/CONTRIBUTING index 1eebaf37ec60..a6977b8117fe 100644 --- a/deps/openssl/openssl/CONTRIBUTING +++ b/deps/openssl/openssl/CONTRIBUTING @@ -1,26 +1,26 @@ -HOW TO CONTRIBUTE PATCHES TO OpenSSL ------------------------------------- +HOW TO CONTRIBUTE TO OpenSSL +---------------------------- (Please visit https://www.openssl.org/community/getting-started.html for other ideas about how to contribute.) -Development is coordinated on the openssl-dev mailing list (see the -above link or https://mta.openssl.org for information on subscribing). -If you are unsure as to whether a feature will be useful for the general -OpenSSL community you might want to discuss it on the openssl-dev mailing -list first. Someone may be already working on the same thing or there -may be a good reason as to why that feature isn't implemented. +Development is done on GitHub, https://github.com/openssl/openssl. -To submit a patch, make a pull request on GitHub. If you think the patch -could use feedback from the community, please start a thread on openssl-dev -to discuss it. +To request new features or report bugs, please open an issue on GitHub -Having addressed the following items before the PR will help make the -acceptance and review process faster: +To submit a patch, please open a pull request on GitHub. If you are thinking +of making a large contribution, open an issue for it before starting work, +to get comments from the community. Someone may be already working on +the same thing or there may be reasons why that feature isn't implemented. - 1. Anything other than trivial contributions will require a contributor - licensing agreement, giving us permission to use your code. See - https://www.openssl.org/policies/cla.html for details. +To make it easier to review and accept your pull request, please follow these +guidelines: + + 1. Anything other than a trivial contribution requires a Contributor + License Agreement (CLA), giving us permission to use your code. See + https://www.openssl.org/policies/cla.html for details. If your + contribution is too small to require a CLA, put "CLA: trivial" on a + line by itself in your commit message body. 2. All source files should start with the following text (with appropriate comment characters at the start of each line and the @@ -34,21 +34,38 @@ acceptance and review process faster: https://www.openssl.org/source/license.html 3. Patches should be as current as possible; expect to have to rebase - often. We do not accept merge commits; You will be asked to remove - them before a patch is considered acceptable. + often. We do not accept merge commits, you will have to remove them + (usually by rebasing) before it will be acceptable. 4. Patches should follow our coding style (see - https://www.openssl.org/policies/codingstyle.html) and compile without - warnings. Where gcc or clang is available you should use the + https://www.openssl.org/policies/codingstyle.html) and compile + without warnings. Where gcc or clang is available you should use the --strict-warnings Configure option. OpenSSL compiles on many varied - platforms: try to ensure you only use portable features. - Clean builds via Travis and AppVeyor are expected, and done whenever - a PR is created or updated. + platforms: try to ensure you only use portable features. Clean builds + via Travis and AppVeyor are required, and they are started automatically + whenever a PR is created or updated. 5. When at all possible, patches should include tests. These can either be added to an existing test, or completely new. Please see test/README for information on the test framework. 6. New features or changed functionality must include - documentation. Please look at the "pod" files in doc/apps, doc/crypto - and doc/ssl for examples of our style. + documentation. Please look at the "pod" files in doc for + examples of our style. + + 7. For user visible changes (API changes, behaviour changes, ...), + consider adding a note in CHANGES. This could be a summarising + description of the change, and could explain the grander details. + Have a look through existing entries for inspiration. + Please note that this is NOT simply a copy of git-log oneliners. + Also note that security fixes get an entry in CHANGES. + This file helps users get more in depth information of what comes + with a specific release without having to sift through the higher + noise ratio in git-log. + + 8. For larger or more important user visible changes, as well as + security fixes, please add a line in NEWS. On exception, it might be + worth adding a multi-line entry (such as the entry that announces all + the types that became opaque with OpenSSL 1.1.0). + This file helps users get a very quick summary of what comes with a + specific release, to see if an upgrade is worth the effort. diff --git a/deps/openssl/openssl/Configurations/00-base-templates.conf b/deps/openssl/openssl/Configurations/00-base-templates.conf index a6b52de49852..3455b3ace8f5 100644 --- a/deps/openssl/openssl/Configurations/00-base-templates.conf +++ b/deps/openssl/openssl/Configurations/00-base-templates.conf @@ -247,7 +247,7 @@ sha1_asm_src => "sha1-armv4-large.S sha256-armv4.S sha512-armv4.S", modes_asm_src => "ghash-armv4.S ghashv8-armx.S", chacha_asm_src => "chacha-armv4.S", - poly1305_asm_src=> "poly1305-armv4.S", + poly1305_asm_src=> "poly1305-armv4.S", perlasm_scheme => "void" }, aarch64_asm => { diff --git a/deps/openssl/openssl/Configurations/10-main.conf b/deps/openssl/openssl/Configurations/10-main.conf index b49f04b5d7c5..6c05c2809f18 100644 --- a/deps/openssl/openssl/Configurations/10-main.conf +++ b/deps/openssl/openssl/Configurations/10-main.conf @@ -14,7 +14,7 @@ sub vc_win64a_info { asflags => "/c /Cp /Cx /Zi", asoutflag => "/Fo" }; } else { - $die->("NASM not found - please read INSTALL and NOTES.WIN for further details\n"); + $die->("NASM not found - make sure it's installed and available on %PATH%\n"); $vc_win64a_info = { as => "{unknown}", asflags => "", asoutflag => "" }; @@ -39,7 +39,7 @@ sub vc_win32_info { asoutflag => "/Fo", perlasm_scheme => "win32" }; } else { - $die->("NASM not found - please read INSTALL and NOTES.WIN for further details\n"); + $die->("NASM not found - make sure it's installed and available on %PATH%\n"); $vc_win32_info = { as => "{unknown}", asflags => "", asoutflag => "", @@ -428,8 +428,17 @@ sub vms_info { # even PA-RISC 2.0-specific code paths, which are chosen at run-time, # thus adequate performance is provided even with PA-RISC 1.1 build. # - "hpux-parisc-gcc" => { + "hpux-common" => { inherit_from => [ "BASE_unix" ], + template => 1, + defines => add("_XOPEN_SOURCE", "_XOPEN_SOURCE_EXTENDED", + "_HPUX_ALT_XOPEN_SOCKET_API"), + thread_scheme => "pthreads", + dso_scheme => "dlfcn", # overridden in 32-bit PA-RISC builds + shared_target => "hpux-shared", + }, + "hpux-parisc-gcc" => { + inherit_from => [ "hpux-common" ], cc => "gcc", cflags => combine(picker(default => "-DB_ENDIAN -DBN_DIV2W", debug => "-O0 -g", @@ -437,9 +446,7 @@ sub vms_info { threads("-pthread")), ex_libs => add("-Wl,+s -ldld", threads("-pthread")), bn_ops => "BN_LLONG", - thread_scheme => "pthreads", dso_scheme => "dl", - shared_target => "hpux-shared", shared_cflag => "-fPIC", shared_ldflag => "-shared", shared_extension => ".sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -449,7 +456,7 @@ sub vms_info { multilib => "/pa1.1", }, "hpux64-parisc2-gcc" => { - inherit_from => [ "BASE_unix", asm("parisc20_64_asm") ], + inherit_from => [ "hpux-common", asm("parisc20_64_asm") ], cc => "gcc", cflags => combine(picker(default => "-DB_ENDIAN", debug => "-O0 -g", @@ -457,9 +464,6 @@ sub vms_info { threads("-D_REENTRANT")), ex_libs => add("-ldl"), bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-shared", shared_extension => ".sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -471,7 +475,7 @@ sub vms_info { # Chris Ruemmler # Kevin Steves "hpux-parisc-cc" => { - inherit_from => [ "BASE_unix" ], + inherit_from => [ "hpux-common" ], cc => "cc", cflags => combine(picker(default => "+Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DBN_DIV2W -DMD32_XARRAY", debug => "+O0 +d -g", @@ -479,9 +483,7 @@ sub vms_info { threads("-D_REENTRANT")), ex_libs => add("-Wl,+s -ldld",threads("-lpthread")), bn_ops => "RC4_CHAR", - thread_scheme => "pthreads", dso_scheme => "dl", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "-b", shared_extension => ".sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -492,7 +494,7 @@ sub vms_info { multilib => "/pa1.1", }, "hpux64-parisc2-cc" => { - inherit_from => [ "BASE_unix", asm("parisc20_64_asm") ], + inherit_from => [ "hpux-common", asm("parisc20_64_asm") ], cc => "cc", cflags => combine(picker(default => "+DD64 +Optrs_strongly_typed -Ae +ESlit -DB_ENDIAN -DMD32_XARRAY", debug => "+O0 +d -g", @@ -500,9 +502,6 @@ sub vms_info { threads("-D_REENTRANT")), ex_libs => add("-ldl",threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "+DD64 -b", shared_extension => ".sl.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -511,7 +510,7 @@ sub vms_info { # HP/UX IA-64 targets "hpux-ia64-cc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], cc => "cc", cflags => combine(picker(default => "-Ae +DD32 +Olit=all -z -DB_ENDIAN", debug => "+O0 +d -g", @@ -519,9 +518,6 @@ sub vms_info { threads("-D_REENTRANT")), ex_libs => add("-ldl",threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "+DD32 -b", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -530,7 +526,7 @@ sub vms_info { # Frank Geurts has patiently assisted # with debugging of the following config. "hpux64-ia64-cc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], cc => "cc", cflags => combine(picker(default => "-Ae +DD64 +Olit=all -z -DB_ENDIAN", debug => "+O0 +d -g", @@ -538,9 +534,6 @@ sub vms_info { threads("-D_REENTRANT")), ex_libs => add("-ldl", threads("-lpthread")), bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "+Z", shared_ldflag => "+DD64 -b", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -548,7 +541,7 @@ sub vms_info { }, # GCC builds... "hpux-ia64-gcc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], cc => "gcc", cflags => combine(picker(default => "-DB_ENDIAN", debug => "-O0 -g", @@ -556,16 +549,13 @@ sub vms_info { threads("-pthread")), ex_libs => add("-ldl", threads("-pthread")), bn_ops => "SIXTY_FOUR_BIT", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-shared", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", multilib => "/hpux32", }, "hpux64-ia64-gcc" => { - inherit_from => [ "BASE_unix", asm("ia64_asm") ], + inherit_from => [ "hpux-common", asm("ia64_asm") ], cc => "gcc", cflags => combine(picker(default => "-mlp64 -DB_ENDIAN", debug => "-O0 -g", @@ -573,9 +563,6 @@ sub vms_info { threads("-pthread")), ex_libs => add("-ldl", threads("-pthread")), bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - shared_target => "hpux-shared", shared_cflag => "-fpic", shared_ldflag => "-mlp64 -shared", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -1223,6 +1210,7 @@ sub vms_info { perlasm_scheme => "aix32", dso_scheme => "dlfcn", shared_target => "aix-shared", + shared_cflag => "-qpic", shared_ldflag => "-q32 -G", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", arflags => "-X 32", @@ -1241,6 +1229,7 @@ sub vms_info { perlasm_scheme => "aix64", dso_scheme => "dlfcn", shared_target => "aix-shared", + shared_cflag => "-qpic", shared_ldflag => "-q64 -G", shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", arflags => "-X 64", diff --git a/deps/openssl/openssl/Configurations/90-team.conf b/deps/openssl/openssl/Configurations/90-team.conf deleted file mode 100644 index 0a83c22aaa1e..000000000000 --- a/deps/openssl/openssl/Configurations/90-team.conf +++ /dev/null @@ -1,112 +0,0 @@ -## -*- mode: perl; -*- -## Build configuration targets for openssl-team members - -%targets = ( - "purify" => { - cc => "purify gcc", - cflags => "-g -Wall", - thread_scheme => "(unknown)", - ex_libs => add(" ","-lsocket -lnsl"), - }, - "debug" => { - cc => "gcc", - cflags => "-DBN_DEBUG -DREF_DEBUG -DCONF_DEBUG -DBN_CTX_DEBUG -DOPENSSL_NO_ASM -ggdb -g2 -Wformat -Wshadow -Wmissing-prototypes -Wmissing-declarations -Werror", - thread_scheme => "(unknown)", - }, - "debug-erbridge" => { - inherit_from => [ "x86_64_asm" ], - cc => "gcc", - cflags => combine("$gcc_devteam_warn -DBN_DEBUG -DCONF_DEBUG -m64 -DL_ENDIAN -DTERMIO -g", - threads("-D_REENTRANT")), - ex_libs => add(" ","-ldl"), - bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - perlasm_scheme => "elf", - dso_scheme => "dlfcn", - shared_target => "linux-shared", - shared_cflag => "-fPIC", - shared_ldflag => "-m64", - shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - multilib => "64", - }, - "debug-linux-pentium" => { - inherit_from => [ "x86_elf_asm" ], - cc => "gcc", - cflags => combine("-DBN_DEBUG -DREF_DEBUG -DCONF_DEBUG -DBN_CTX_DEBUG -DL_ENDIAN -g -mcpu=pentium -Wall", - threads("-D_REENTRANT")), - ex_libs => add(" ","-ldl"), - bn_ops => "BN_LLONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - }, - "debug-linux-ppro" => { - inherit_from => [ "x86_elf_asm" ], - cc => "gcc", - cflags => combine("-DBN_DEBUG -DREF_DEBUG -DCONF_DEBUG -DBN_CTX_DEBUG -DL_ENDIAN -g -mcpu=pentiumpro -Wall", - threads("-D_REENTRANT")), - ex_libs => add(" ","-ldl"), - bn_ops => "BN_LLONG", - thread_scheme => "pthreads", - dso_scheme => "dlfcn", - }, - "debug-linux-ia32-aes" => { - cc => "gcc", - cflags => combine("-DL_ENDIAN -O3 -fomit-frame-pointer -Wall", - threads("-D_REENTRANT")), - ex_libs => add(" ","-ldl"), - bn_ops => "BN_LLONG", - cpuid_asm_src => "x86cpuid.s", - bn_asm_src => "bn-586.s co-586.s x86-mont.s", - des_asm_src => "des-586.s crypt586.s", - aes_asm_src => "aes_x86core.s aes_cbc.s aesni-x86.s", - bf_asm_src => "bf-586.s", - md5_asm_src => "md5-586.s", - sha1_asm_src => "sha1-586.s sha256-586.s sha512-586.s", - cast_asm_src => "cast-586.s", - rc4_asm_src => "rc4-586.s", - rmd160_asm_src => "rmd-586.s", - rc5_asm_src => "rc5-586.s", - wp_asm_src => "wp_block.s wp-mmx.s", - modes_asm_src => "ghash-x86.s", - padlock_asm_src => "e_padlock-x86.s", - thread_scheme => "pthreads", - perlasm_scheme => "elf", - dso_scheme => "dlfcn", - shared_target => "linux-shared", - shared_cflag => "-fPIC", - shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - }, - "dist" => { - cc => "cc", - cflags => "-O", - thread_scheme => "(unknown)", - }, - "debug-test-64-clang" => { - inherit_from => [ "x86_64_asm" ], - cc => "clang", - cflags => combine("$gcc_devteam_warn -Wno-error=overlength-strings -Wno-error=extended-offsetof -Wno-error=language-extension-token -Wno-error=unused-const-variable -Wstrict-overflow -Qunused-arguments -DBN_DEBUG -DCONF_DEBUG -DDEBUG_SAFESTACK -DDEBUG_UNUSED -g3 -O3 -pipe", - threads("${BSDthreads}")), - bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - perlasm_scheme => "elf", - dso_scheme => "dlfcn", - shared_target => "bsd-gcc-shared", - shared_cflag => "-fPIC", - shared_extension => ".so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - }, - "darwin64-debug-test-64-clang" => { - inherit_from => [ "x86_64_asm" ], - cc => "clang", - cflags => combine("-arch x86_64 -DL_ENDIAN $gcc_devteam_warn -Wno-error=overlength-strings -Wno-error=extended-offsetof -Wno-error=language-extension-token -Wno-error=unused-const-variable -Wstrict-overflow -Qunused-arguments -DBN_DEBUG -DCONF_DEBUG -DDEBUG_SAFESTACK -DDEBUG_UNUSED -g3 -O3 -pipe", - threads("${BSDthreads}")), - sys_id => "MACOSX", - bn_ops => "SIXTY_FOUR_BIT_LONG", - thread_scheme => "pthreads", - perlasm_scheme => "macosx", - dso_scheme => "dlfcn", - shared_target => "darwin-shared", - shared_cflag => "-fPIC -fno-common", - shared_ldflag => "-arch x86_64 -dynamiclib", - shared_extension => ".\$(SHLIB_MAJOR).\$(SHLIB_MINOR).dylib", - }, -); diff --git a/deps/openssl/openssl/Configurations/INTERNALS.Configure b/deps/openssl/openssl/Configurations/INTERNALS.Configure index 6d148196ffb3..b28305deca4c 100644 --- a/deps/openssl/openssl/Configurations/INTERNALS.Configure +++ b/deps/openssl/openssl/Configurations/INTERNALS.Configure @@ -133,3 +133,4 @@ Example 4: | ENDIF | 1 | | | ... whatever ... | | this line is processed | | ENDIF | | | + diff --git a/deps/openssl/openssl/Configurations/README b/deps/openssl/openssl/Configurations/README index e85673c59144..6e13645491f7 100644 --- a/deps/openssl/openssl/Configurations/README +++ b/deps/openssl/openssl/Configurations/README @@ -81,7 +81,7 @@ In each table entry, the following keys are significant: ''. This is very rarely needed. shared_extension => File name extension used for shared - libraries. + libraries. obj_extension => File name extension used for object files. On unix, this defaults to ".o" (NOTE: this is here for future use, it's not @@ -471,11 +471,11 @@ clash with those generated by Configure, it's possible to tell it not to generate them with the use of OVERRIDES, for example: SOURCE[libfoo]=foo.c bar.c - + OVERRIDES=bar.o BEGINRAW[Makefile(unix)] bar.o: bar.c - $(CC) $(CFLAGS) -DSPECIAL -c -o $@ $< + $(CC) $(CFLAGS) -DSPECIAL -c -o $@ $< ENDRAW[Makefile(unix)] See the documentation further up for more information on configuration diff --git a/deps/openssl/openssl/Configurations/README.design b/deps/openssl/openssl/Configurations/README.design index 7179ec027fc1..bea9790afbd1 100644 --- a/deps/openssl/openssl/Configurations/README.design +++ b/deps/openssl/openssl/Configurations/README.design @@ -90,7 +90,7 @@ depends on the library 'libssl' to function properly. LIBS=../libcrypto SOURCE[../libcrypto]=aes.c evp.c cversion.c DEPEND[cversion.o]=buildinf.h - + GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(CFLAGS)" "$(PLATFORM)" DEPEND[buildinf.h]=../Makefile DEPEND[../util/mkbuildinf.pl]=../util/Foo.pm @@ -105,7 +105,7 @@ show that duplicate information isn't an issue. This build.info file informs us that 'libcrypto' is built from a few source files, 'crypto/aes.c', 'crypto/evp.c' and 'crypto/cversion.c'. It also shows us that building the object file inferred from -'crypto/cversion.c' depends on 'crypto/buildinf.h'. Finally, it +'crypto/cversion.c' depends on 'crypto/buildinf.h'. Finally, it also shows the possibility to declare how some files are generated using some script, in this case a perl script, and how such scripts can be declared to depend on other files, in this case a perl module. @@ -157,7 +157,7 @@ information comes down to this: SOURCE[libssl]=ssl/tls.c INCLUDE[libssl]=include DEPEND[libssl]=libcrypto - + PROGRAMS=apps/openssl SOURCE[apps/openssl]=apps/openssl.c INCLUDE[apps/openssl]=. include @@ -172,7 +172,7 @@ information comes down to this: SOURCE[engines/ossltest]=engines/e_ossltest.c DEPEND[engines/ossltest]=libcrypto INCLUDE[engines/ossltest]=include - + GENERATE[crypto/buildinf.h]=util/mkbuildinf.pl "$(CC) $(CFLAGS)" "$(PLATFORM)" DEPEND[crypto/buildinf.h]=Makefile DEPEND[util/mkbuildinf.pl]=util/Foo.pm diff --git a/deps/openssl/openssl/Configurations/dist.conf b/deps/openssl/openssl/Configurations/dist.conf new file mode 100644 index 000000000000..4f58dad9141a --- /dev/null +++ b/deps/openssl/openssl/Configurations/dist.conf @@ -0,0 +1,12 @@ +## -*- mode: perl; -*- +## Build configuration targets for openssl-team members + +# This is to support 'make dist' +%targets = ( + "dist" => { + inherit_from => [ 'BASE_unix' ], + cc => "cc", + cflags => "-O", + thread_scheme => "(unknown)", + }, +); diff --git a/deps/openssl/openssl/Configurations/unix-Makefile.tmpl b/deps/openssl/openssl/Configurations/unix-Makefile.tmpl index 40cf2c3df430..034d93e653d2 100644 --- a/deps/openssl/openssl/Configurations/unix-Makefile.tmpl +++ b/deps/openssl/openssl/Configurations/unix-Makefile.tmpl @@ -664,8 +664,10 @@ tar: DISTDIR=$(NAME); \ mkdir -p $$TMPDIR/$$DISTDIR; \ (cd $(SRCDIR); \ + excl_re="^(fuzz/corpora|Configurations/.*\.norelease\.conf)"; \ + echo "$$excl_re"; \ git ls-tree -r --name-only --full-tree HEAD \ - | grep -v '^fuzz/corpora' \ + | egrep -v "$$excl_re" \ | while read F; do \ mkdir -p $$TMPDIR/$$DISTDIR/`dirname $$F`; \ cp $$F $$TMPDIR/$$DISTDIR/$$F; \ @@ -848,7 +850,7 @@ EOF $recipe .= <<"EOF"; $obj$objext: $deps ( trap "rm -f \$@.*" INT 0; \\ - \$(CPP) $incs \$(CFLAGS) $ecflags $srcs | \\ + \$(CC) $incs \$(CFLAGS) $ecflags -E $srcs | \\ \$(PERL) -ne '/^#(line)?\\s*[0-9]+/ or print' > \$@.s && \\ \$(CC) \$(CFLAGS) $ecflags -c -o \$\@ \$@.s ) EOF diff --git a/deps/openssl/openssl/Configurations/windows-checker.pm b/deps/openssl/openssl/Configurations/windows-checker.pm index de46fbc1dfc5..4b7105df33cb 100644 --- a/deps/openssl/openssl/Configurations/windows-checker.pm +++ b/deps/openssl/openssl/Configurations/windows-checker.pm @@ -6,7 +6,7 @@ use Config; # we expect for the platform use File::Spec::Functions qw(:DEFAULT rel2abs); -if (rel2abs('.') !~ m|\\|) { +if (!$ENV{CONFIGURE_INSIST} && rel2abs('.') !~ m|\\|) { die <{libraries}}) -} -INSTALL_SHLIBS={- join(" ", map { shlib($_) } @{$unified_info{install}->{libraries}}) -} -INSTALL_SHLIBPDBS={- join(" ", map { local $shlibext = ".pdb"; shlib($_) } @{$unified_info{install}->{libraries}}) -} -INSTALL_ENGINES={- join(" ", map { dso($_) } @{$unified_info{install}->{engines}}) -} -INSTALL_ENGINEPDBS={- join(" ", map { local $dsoext = ".pdb"; dso($_) } @{$unified_info{install}->{engines}}) -} -INSTALL_PROGRAMS={- join(" ", map { $_.$exeext } grep { !m|^test\\| } @{$unified_info{install}->{programs}}) -} -INSTALL_PROGRAMPDBS={- join(" ", map { $_.".pdb" } grep { !m|^test\\| } @{$unified_info{install}->{programs}}) -} +INSTALL_LIBS={- join(" ", map { quotify1($_.$libext) } @{$unified_info{install}->{libraries}}) -} +INSTALL_SHLIBS={- join(" ", map { quotify_l(shlib($_)) } @{$unified_info{install}->{libraries}}) -} +INSTALL_SHLIBPDBS={- join(" ", map { local $shlibext = ".pdb"; quotify_l(shlib($_)) } @{$unified_info{install}->{libraries}}) -} +INSTALL_ENGINES={- join(" ", map { quotify1(dso($_)) } @{$unified_info{install}->{engines}}) -} +INSTALL_ENGINEPDBS={- join(" ", map { local $dsoext = ".pdb"; quotify1(dso($_)) } @{$unified_info{install}->{engines}}) -} +INSTALL_PROGRAMS={- join(" ", map { quotify1($_.$exeext) } grep { !m|^test\\| } @{$unified_info{install}->{programs}}) -} +INSTALL_PROGRAMPDBS={- join(" ", map { quotify1($_.".pdb") } grep { !m|^test\\| } @{$unified_info{install}->{programs}}) -} {- output_off() if $disabled{apps}; "" -} -BIN_SCRIPTS=$(BLDDIR)\tools\c_rehash.pl -MISC_SCRIPTS=$(BLDDIR)\apps\CA.pl $(BLDDIR)\apps\tsget.pl +BIN_SCRIPTS="$(BLDDIR)\tools\c_rehash.pl" +MISC_SCRIPTS="$(BLDDIR)\apps\CA.pl" "$(BLDDIR)\apps\tsget.pl" {- output_on() if $disabled{apps}; "" -} APPS_OPENSSL={- use File::Spec::Functions; - catfile("apps","openssl") -} + "\"".catfile("apps","openssl")."\"" -} # Do not edit these manually. Use Configure with --prefix or --openssldir # to change this! Short explanation in the top comment in Configure @@ -182,6 +182,9 @@ MTOUTFLAG={- $target{mtoutflag} || "-outputresource:" -}$(OSSL_EMPTY) AS={- $target{as} -} ASFLAGS={- $target{asflags} -} ASOUTFLAG={- $target{asoutflag} -}$(OSSL_EMPTY) + +ECHO="$(PERL)" "$(SRCDIR)\util\echo.pl" + PERLASM_SCHEME= {- $target{perlasm_scheme} -} PROCESSOR= {- $config{processor} -} @@ -207,7 +210,7 @@ build_all_generated: $(GENERATED_MANDATORY) $(GENERATED) test: tests {- dependmagic('tests'); -}: build_programs_nodep build_engines_nodep - @rem {- output_off() if $disabled{tests}; "" -} + @{- output_off() if $disabled{tests}; "" -} -mkdir $(BLDDIR)\test\test-runs set SRCTOP=$(SRCDIR) set BLDTOP=$(BLDDIR) @@ -216,17 +219,17 @@ test: tests set OPENSSL_ENGINES=$(MAKEDIR)\engines set OPENSSL_DEBUG_MEMORY=on "$(PERL)" "$(SRCDIR)\test\run_tests.pl" $(TESTS) - @rem {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} - @echo "Tests are not supported with your chosen Configure options" - @rem {- output_on() if !$disabled{tests}; "" -} + @{- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} + @$(ECHO) "Tests are not supported with your chosen Configure options" + @{- output_on() if !$disabled{tests}; "" -} list-tests: - @rem {- output_off() if $disabled{tests}; "" -} + @{- output_off() if $disabled{tests}; "" -} @set SRCTOP=$(SRCDIR) @"$(PERL)" "$(SRCDIR)\test\run_tests.pl" list - @rem {- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} - @echo "Tests are not supported with your chosen Configure options" - @rem {- output_on() if !$disabled{tests}; "" -} + @{- if ($disabled{tests}) { output_on(); } else { output_off(); } "" -} + @$(ECHO) "Tests are not supported with your chosen Configure options" + @{- output_on() if !$disabled{tests}; "" -} install: install_sw install_ssldirs install_docs @@ -285,16 +288,17 @@ install_ssldirs: "$(OPENSSLDIR)\misc" install_dev: - @if "$(INSTALLTOP)"=="" ( echo INSTALLTOP should not be empty & exit 1 ) - @echo *** Installing development files + @if "$(INSTALLTOP)"=="" ( $(ECHO) "INSTALLTOP should not be empty" & exit 1 ) + @$(ECHO) "*** Installing development files" @"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(INSTALLTOP)\include\openssl" - @rem {- output_off() unless grep { $_ eq "OPENSSL_USE_APPLINK" } @{$target{defines}}; "" -} + @{- output_off() unless grep { $_ eq "OPENSSL_USE_APPLINK" } @{$target{defines}}; "" -} @"$(PERL)" "$(SRCDIR)\util\copy.pl" "$(SRCDIR)\ms\applink.c" \ "$(INSTALLTOP)\include\openssl" - @rem {- output_on() unless grep { $_ eq "OPENSSL_USE_APPLINK" } @{$target{defines}}; "" -} - @"$(PERL)" "$(SRCDIR)\util\copy.pl" "$(SRCDIR)\include\openssl\*.h" \ + @{- output_on() unless grep { $_ eq "OPENSSL_USE_APPLINK" } @{$target{defines}}; "" -} + @"$(PERL)" "$(SRCDIR)\util\copy.pl" "-exclude_re=/__DECC_" \ + "$(SRCDIR)\include\openssl\*.h" \ "$(INSTALLTOP)\include\openssl" - @"$(PERL)" "$(SRCDIR)\util\copy.pl" $(BLDDIR)\include\openssl\*.h \ + @"$(PERL)" "$(SRCDIR)\util\copy.pl" "$(BLDDIR)\include\openssl\*.h" \ "$(INSTALLTOP)\include\openssl" @"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(INSTALLTOP)\$(LIBDIR)" @"$(PERL)" "$(SRCDIR)\util\copy.pl" $(INSTALL_LIBS) \ @@ -306,8 +310,8 @@ install_dev: uninstall_dev: install_engines: - @if "$(INSTALLTOP)"=="" ( echo INSTALLTOP should not be empty & exit 1 ) - @echo *** Installing engines + @if "$(INSTALLTOP)"=="" ( $(ECHO) "INSTALLTOP should not be empty" & exit 1 ) + @$(ECHO) "*** Installing engines" @"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(ENGINESDIR)" @if not "$(ENGINES)"=="" \ "$(PERL)" "$(SRCDIR)\util\copy.pl" $(INSTALL_ENGINES) "$(ENGINESDIR)" @@ -317,8 +321,8 @@ install_engines: uninstall_engines: install_runtime: - @if "$(INSTALLTOP)"=="" ( echo INSTALLTOP should not be empty & exit 1 ) - @echo *** Installing runtime files + @if "$(INSTALLTOP)"=="" ( $(ECHO) "INSTALLTOP should not be empty" & exit 1 ) + @$(ECHO) "*** Installing runtime files" @"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(INSTALLTOP)\bin" @if not "$(SHLIBS)"=="" \ "$(PERL)" "$(SRCDIR)\util\copy.pl" $(INSTALL_SHLIBS) "$(INSTALLTOP)\bin" @@ -343,14 +347,14 @@ uninstall_html_docs: # Building targets ################################################### configdata.pm: "$(SRCDIR)\Configure" {- join(" ", map { '"'.$_.'"' } @{$config{build_file_templates}}, @{$config{build_infos}}, @{$config{conf_files}}) -} - @echo "Detected changed: $?" - @echo "Reconfiguring..." + @$(ECHO) "Detected changed: $?" + @$(ECHO) "Reconfiguring..." "$(PERL)" "$(SRCDIR)\Configure" reconf - @echo "**************************************************" - @echo "*** ***" - @echo "*** Please run the same make command again ***" - @echo "*** ***" - @echo "**************************************************" + @$(ECHO) "**************************************************" + @$(ECHO) "*** ***" + @$(ECHO) "*** Please run the same make command again ***" + @$(ECHO) "*** ***" + @$(ECHO) "**************************************************" @exit 1 {- @@ -604,8 +608,6 @@ EOF foreach my $prod (@{$unified_info{dirinfo}->{$dir}->{products}->{$type}}) { if (dirname($prod) eq $dir) { push @deps, $prod.$extinfo{$type}; - } else { - push @actions, "\t@rem No support to produce $type ".join(", ", @{$unified_info{dirinfo}->{$dir}->{products}->{$type}}); } } } diff --git a/deps/openssl/openssl/Configure b/deps/openssl/openssl/Configure index c0033643c61d..d85ff6aa4da9 100755 --- a/deps/openssl/openssl/Configure +++ b/deps/openssl/openssl/Configure @@ -20,6 +20,9 @@ use OpenSSL::Glob; # see INSTALL for instructions. +my $orig_death_handler = $SIG{__DIE__}; +$SIG{__DIE__} = \&death_handler; + my $usage="Usage: Configure [no- ...] [enable- ...] [-Dxxx] [-lxxx] [-Lxxx] [-fxxx] [-Kxxx] [no-hw-xxx|no-hw] [[no-]threads] [[no-]shared] [[no-]zlib|zlib-dynamic] [no-asm] [no-dso] [no-egd] [sctp] [386] [--prefix=DIR] [--openssldir=OPENSSLDIR] [--with-xxx[=vvv]] [--config=FILE] os/compiler[:flags]\n"; # Options: @@ -756,21 +759,21 @@ while (@argvcopy) else { $config{options} .= " ".$_; } } + } - if (defined($config{api}) && !exists $apitable->{$config{api}}) { - die "***** Unsupported api compatibility level: $config{api}\n", - } +if (defined($config{api}) && !exists $apitable->{$config{api}}) { + die "***** Unsupported api compatibility level: $config{api}\n", +} - if (keys %deprecated_options) - { - warn "***** Deprecated options: ", - join(", ", keys %deprecated_options), "\n"; - } - if (keys %unsupported_options) - { - die "***** Unsupported options: ", - join(", ", keys %unsupported_options), "\n"; - } +if (keys %deprecated_options) + { + warn "***** Deprecated options: ", + join(", ", keys %deprecated_options), "\n"; + } +if (keys %unsupported_options) + { + die "***** Unsupported options: ", + join(", ", keys %unsupported_options), "\n"; } if ($libs =~ /(^|\s)-Wl,-rpath,/ @@ -908,11 +911,12 @@ if ($d) { $target = $t; } } + +&usage if !$table{$target} || $table{$target}->{template}; + $config{target} = $target; my %target = resolve_config($target); -&usage if (!%target || $target{template}); - my %conf_files = map { $_ => 1 } (@{$target{_conf_fname_int}}); $config{conf_files} = [ sort keys %conf_files ]; %target = ( %{$table{DEFAULTS}}, %target ); @@ -1215,8 +1219,10 @@ if ($^O ne "VMS") { if (!$disabled{makedepend}) { # We know that GNU C version 3 and up as well as all clang - # versions support dependency generation - if ($predefined{__GNUC__} >= 3) { + # versions support dependency generation, but Xcode did not + # handle $cc -M before clang support (but claims __GNUC__ = 3) + if (($predefined{__GNUC__} // -1) >= 3 + && !($predefined{__APPLE_CC__} && !$predefined{__clang__})) { $config{makedepprog} = $cc; } else { $config{makedepprog} = which('makedepend'); @@ -2125,6 +2131,8 @@ my %builders = ( $builders{$builder}->($builder_platform, @builder_opts); +$SIG{__DIE__} = $orig_death_handler; + print <<"EOF"; Configured for $target. @@ -2153,6 +2161,24 @@ exit(0); # Helpers and utility functions # +# Death handler, to print a helpful message in case of failure ####### +# +sub death_handler { + die @_ if $^S; # To prevent the added message in eval blocks + my $build_file = $target{build_file} // "build file"; + my @message = ( <<"_____", @_ ); + +Failure! $build_file wasn't produced. +Please read INSTALL and associated NOTES files. You may also have to look over +your available compiler tool chain or change your configuration. + +_____ + + # Dying is terminal, so it's ok to reset the signal handler here. + $SIG{__DIE__} = $orig_death_handler; + die @message; +} + # Configuration file reading ######################################### # Note: All of the helper functions are for lazy evaluation. They all diff --git a/deps/openssl/openssl/INSTALL b/deps/openssl/openssl/INSTALL index e9b33a5336b1..5a98d1da83fb 100644 --- a/deps/openssl/openssl/INSTALL +++ b/deps/openssl/openssl/INSTALL @@ -3,7 +3,8 @@ -------------------- This document describes installation on all supported operating - systems (the Linux/Unix family, OpenVMS and Windows) + systems (the Unix/Linux family (which includes Mac OS/X), OpenVMS, + and Windows). To install OpenSSL, you will need: @@ -76,7 +77,7 @@ If you want to just get on with it, do: - on Unix: + on Unix (again, this includes Mac OS/X): $ ./config $ make @@ -208,7 +209,7 @@ without a path). This flag must be provided if the zlib-dynamic option is not also used. If zlib-dynamic is used then this flag is optional and a default value ("ZLIB1") is - used if not provided. + used if not provided. On VMS: this is the filename of the zlib library (with or without a path). This flag is optional and if not provided then "GNV$LIBZSHR", "GNV$LIBZSHR32" or "GNV$LIBZSHR64" is @@ -663,7 +664,7 @@ $ nmake TESTS='test_rsa test_dsa' test # Windows And of course, you can combine (Unix example shown): - + $ make VERBOSE=1 TESTS='test_rsa test_dsa' test You can find the list of available tests like this: @@ -733,7 +734,7 @@ command symbols. [.SYSTEST] Contains the installation verification procedure. [.HTML] Contains the HTML rendition of the manual pages. - + Additionally, install will add the following directories under OPENSSLDIR (the directory given with --openssldir or its default) diff --git a/deps/openssl/openssl/NEWS b/deps/openssl/openssl/NEWS index 8744fe68ec5a..b6cf1f21ac24 100644 --- a/deps/openssl/openssl/NEWS +++ b/deps/openssl/openssl/NEWS @@ -5,6 +5,11 @@ This file gives a brief overview of the major changes between each OpenSSL release. For more details please read the CHANGES file. + Major changes between OpenSSL 1.1.0h and OpenSSL 1.1.0i [14 Aug 2018] + + o Client DoS due to large DH parameter (CVE-2018-0732) + o Cache timing vulnerability in RSA Key Generation (CVE-2018-0737) + Major changes between OpenSSL 1.1.0g and OpenSSL 1.1.0h [27 Mar 2018] o Constructed ASN.1 types with a recursive definition could exceed the diff --git a/deps/openssl/openssl/NOTES.DJGPP b/deps/openssl/openssl/NOTES.DJGPP index d43d4e86de4e..bbe63dc15438 100644 --- a/deps/openssl/openssl/NOTES.DJGPP +++ b/deps/openssl/openssl/NOTES.DJGPP @@ -1,5 +1,5 @@ - + INSTALLATION ON THE DOS PLATFORM WITH DJGPP ------------------------------------------- @@ -29,7 +29,7 @@ running "./Configure" with appropriate arguments: ./Configure no-threads --prefix=/dev/env/DJDIR DJGPP - + And finally fire up "make". You may run out of DPMI selectors when running in a DOS box under Windows. If so, just close the BASH shell, go back to Windows, and restart BASH. Then run "make" again. diff --git a/deps/openssl/openssl/NOTES.VMS b/deps/openssl/openssl/NOTES.VMS index 7d74f0dbdd1f..3e9a57e8052b 100644 --- a/deps/openssl/openssl/NOTES.VMS +++ b/deps/openssl/openssl/NOTES.VMS @@ -42,7 +42,7 @@ for now is to rename the OpenSSL source directory, as follows (please adjust for the actual source directory name you have): - $ rename openssl-1^.1^.0.DIR openssl-1_1_0.DIR + $ rename openssl-1^.1^.0.DIR openssl-1_1_0.DIR About MMS and DCL diff --git a/deps/openssl/openssl/README b/deps/openssl/openssl/README index 3491280ead13..76888cbb09e3 100644 --- a/deps/openssl/openssl/README +++ b/deps/openssl/openssl/README @@ -1,7 +1,7 @@ - OpenSSL 1.1.0h 27 Mar 2018 + OpenSSL 1.1.0i 14 Aug 2018 - Copyright (c) 1998-2016 The OpenSSL Project + Copyright (c) 1998-2018 The OpenSSL Project Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson All rights reserved. diff --git a/deps/openssl/openssl/README.ECC b/deps/openssl/openssl/README.ECC index 86f5b23070c1..fa3cad7aa7f0 100644 --- a/deps/openssl/openssl/README.ECC +++ b/deps/openssl/openssl/README.ECC @@ -5,56 +5,57 @@ Center (NCSC) dated 2010-11-04. That agreement permits implementation and distribution of software containing features covered by any or all of the following patents: -1.) U.S. Pat. No. 5,761,305 entitled "Key Agreement and Transport Protocol +1.) U.S. Pat. No. 5,761,305 entitled "Key Agreement and Transport Protocol with Implicit Signatures" issued on June 2, 1998; -2.) Can. Pat. Appl. Ser. No. 2176972 entitled "Key Agreement and Transport - Protocol with Implicit Signature and Reduced Bandwidth" filed on May +2.) Can. Pat. Appl. Ser. No. 2176972 entitled "Key Agreement and Transport + Protocol with Implicit Signature and Reduced Bandwidth" filed on May 16, 1996; -3.) U.S. Pat. No. 5,889,865 entitled "Key Agreement and Transport Protocol +3.) U.S. Pat. No. 5,889,865 entitled "Key Agreement and Transport Protocol with Implicit Signatures" issued on March 30, 1999; -4.) U.S. Pat. No. 5,896,455 entitled "Key Agreement and Transport Protocol +4.) U.S. Pat. No. 5,896,455 entitled "Key Agreement and Transport Protocol with Implicit Signatures" issued on April 20, 1999; -5.) U.S. Pat. No. 5,933,504 entitled "Strengthened Public Key Protocol" +5.) U.S. Pat. No. 5,933,504 entitled "Strengthened Public Key Protocol" issued on August 3, 1999; -6.) Can. Pat. Appl. Ser. No. 2176866 entitled "Strengthened Public Key +6.) Can. Pat. Appl. Ser. No. 2176866 entitled "Strengthened Public Key Protocol" filed on May 17, 1996; -7.) E.P. Pat. Appl. Ser. No. 96201322.3 entitled "Strengthened Public Key +7.) E.P. Pat. Appl. Ser. No. 96201322.3 entitled "Strengthened Public Key Protocol" filed on May 17, 1996; -8.) U.S. Pat. No. 5,999,626 entitled "Digital Signatures on a Smartcard" +8.) U.S. Pat. No. 5,999,626 entitled "Digital Signatures on a Smartcard" issued on December 7, 1999; -9.) Can. Pat. Appl. Ser. No. 2202566 entitled "Digital Signatures on a +9.) Can. Pat. Appl. Ser. No. 2202566 entitled "Digital Signatures on a Smartcard" filed on April 14, 1997; -10.) E.P. Pat. Appl. No. 97106114.8 entitled "Digital Signatures on a +10.) E.P. Pat. Appl. No. 97106114.8 entitled "Digital Signatures on a Smartcard" filed on April 15, 1997; -11.) U.S Pat. No. 6,122,736 entitled "Key Agreement and Transport Protocol +11.) U.S Pat. No. 6,122,736 entitled "Key Agreement and Transport Protocol with Implicit Signatures" issued on September 19, 2000; -12.) Can. Pat. Appl. Ser. No. 2174261 entitled "Key Agreement and Transport +12.) Can. Pat. Appl. Ser. No. 2174261 entitled "Key Agreement and Transport Protocol with Implicit Signatures" filed on April 16, 1996; -13.) E.P. Pat. Appl. Ser. No. 96105920.1 entitled "Key Agreement and +13.) E.P. Pat. Appl. Ser. No. 96105920.1 entitled "Key Agreement and Transport Protocol with Implicit Signatures" filed on April 16, 1996; -14.) U.S. Pat. No. 6,141,420 entitled "Elliptic Curve Encryption Systems" +14.) U.S. Pat. No. 6,141,420 entitled "Elliptic Curve Encryption Systems" issued on October 31, 2000; -15.) Can. Pat. Appl. Ser. No. 2155038 entitled "Elliptic Curve Encryption +15.) Can. Pat. Appl. Ser. No. 2155038 entitled "Elliptic Curve Encryption Systems" filed on July 31, 1995; -16.) E.P. Pat. Appl. Ser. No. 95926348.4 entitled "Elliptic Curve Encryption +16.) E.P. Pat. Appl. Ser. No. 95926348.4 entitled "Elliptic Curve Encryption Systems" filed on July 31, 1995; -17.) U.S. Pat. No. 6,336,188 entitled "Authenticated Key Agreement" issued +17.) U.S. Pat. No. 6,336,188 entitled "Authenticated Key Agreement" issued on January 1, 2002; -18.) U.S. Pat. No. 6,487,661 entitled "Key Agreement and Transport Protocol" +18.) U.S. Pat. No. 6,487,661 entitled "Key Agreement and Transport Protocol" issued on November 26, 2002; -19.) Can. Pat. Appl. Ser. No. 2174260 entitled "Key Agreement and Transport +19.) Can. Pat. Appl. Ser. No. 2174260 entitled "Key Agreement and Transport Protocol" filed on April 16, 1996; -20.) E.P. Pat. Appl. Ser. No. 96105921.9 entitled "Key Agreement and +20.) E.P. Pat. Appl. Ser. No. 96105921.9 entitled "Key Agreement and Transport Protocol" filed on April 21, 1996; -21.) U.S. Pat. No. 6,563,928 entitled "Strengthened Public Key Protocol" +21.) U.S. Pat. No. 6,563,928 entitled "Strengthened Public Key Protocol" issued on May 13, 2003; -22.) U.S. Pat. No. 6,618,483 entitled "Elliptic Curve Encryption Systems" +22.) U.S. Pat. No. 6,618,483 entitled "Elliptic Curve Encryption Systems" issued September 9, 2003; -23.) U.S. Pat. Appl. Ser. No. 09/434,247 entitled "Digital Signatures on a +23.) U.S. Pat. Appl. Ser. No. 09/434,247 entitled "Digital Signatures on a Smartcard" filed on November 5, 1999; -24.) U.S. Pat. Appl. Ser. No. 09/558,256 entitled "Key Agreement and +24.) U.S. Pat. Appl. Ser. No. 09/558,256 entitled "Key Agreement and Transport Protocol with Implicit Signatures" filed on April 25, 2000; -25.) U.S. Pat. Appl. Ser. No. 09/942,492 entitled "Digital Signatures on a +25.) U.S. Pat. Appl. Ser. No. 09/942,492 entitled "Digital Signatures on a Smartcard" filed on August 29, 2001 and published on July 18, 2002; and, -26.) U.S. Pat. Appl. Ser. No. 10/185,735 entitled "Strengthened Public Key +26.) U.S. Pat. Appl. Ser. No. 10/185,735 entitled "Strengthened Public Key Protocol" filed on July 1, 2000. + diff --git a/deps/openssl/openssl/VMS/openssl_ivp.com.in b/deps/openssl/openssl/VMS/openssl_ivp.com.in index e888b528793a..825a699c4f7e 100644 --- a/deps/openssl/openssl/VMS/openssl_ivp.com.in +++ b/deps/openssl/openssl/VMS/openssl_ivp.com.in @@ -16,7 +16,7 @@ $ OPENSSLDIR_ = F$PARSE("A.;",OPENSSLDIR,,,"NO_CONCEAL") - $ $ v := {- sprintf "%02d%02d", split(/\./, $config{version}) -} $ pz := {- $config{pointer_size} -} -$ +$ $ @'INSTALLTOP_'SYS$STARTUP]openssl_startup'v' $ @'INSTALLTOP_'SYS$STARTUP]openssl_utils'v' $ diff --git a/deps/openssl/openssl/apps/apps.c b/deps/openssl/openssl/apps/apps.c index 8703d0cc31ee..d52201f1f389 100644 --- a/deps/openssl/openssl/apps/apps.c +++ b/deps/openssl/openssl/apps/apps.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -1012,7 +1012,8 @@ int set_name_ex(unsigned long *flags, const char *arg) }; if (set_multi_opts(flags, arg, ex_tbl) == 0) return 0; - if ((*flags & XN_FLAG_SEP_MASK) == 0) + if (*flags != XN_FLAG_COMPAT + && (*flags & XN_FLAG_SEP_MASK) == 0) *flags |= XN_FLAG_SEP_CPLUS_SPC; return 1; } diff --git a/deps/openssl/openssl/apps/asn1pars.c b/deps/openssl/openssl/apps/asn1pars.c index 1ac261c7629e..008a6797d045 100644 --- a/deps/openssl/openssl/apps/asn1pars.c +++ b/deps/openssl/openssl/apps/asn1pars.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -41,7 +41,7 @@ OPTIONS asn1parse_options[] = { {"dump", OPT_DUMP, 0, "unknown data in hex form"}, {"dlimit", OPT_DLIMIT, 'p', "dump the first arg bytes of unknown data in hex form"}, - {"strparse", OPT_STRPARSE, 's', + {"strparse", OPT_STRPARSE, 'p', "offset; a series of these can be used to 'dig'"}, {OPT_MORE_STR, 0, 0, "into multiple ASN1 blob wrappings"}, {"genstr", OPT_GENSTR, 's', "string to generate ASN1 structure from"}, @@ -113,13 +113,13 @@ int asn1parse_main(int argc, char **argv) offset = strtol(opt_arg(), NULL, 0); break; case OPT_LENGTH: - length = atoi(opt_arg()); + length = strtol(opt_arg(), NULL, 0); break; case OPT_DUMP: dump = -1; break; case OPT_DLIMIT: - dump = atoi(opt_arg()); + dump = strtol(opt_arg(), NULL, 0); break; case OPT_STRPARSE: sk_OPENSSL_STRING_push(osk, opt_arg()); @@ -191,7 +191,7 @@ int asn1parse_main(int argc, char **argv) num = 0; for (;;) { - if (!BUF_MEM_grow(buf, (int)num + BUFSIZ)) + if (!BUF_MEM_grow(buf, num + BUFSIZ)) goto end; i = BIO_read(in, &(buf->data[num]), BUFSIZ); if (i <= 0) @@ -211,9 +211,9 @@ int asn1parse_main(int argc, char **argv) for (i = 0; i < sk_OPENSSL_STRING_num(osk); i++) { ASN1_TYPE *atmp; int typ; - j = atoi(sk_OPENSSL_STRING_value(osk, i)); - if (j == 0) { - BIO_printf(bio_err, "'%s' is an invalid number\n", + j = strtol(sk_OPENSSL_STRING_value(osk, i), NULL, 0); + if (j <= 0 || j >= tmplen) { + BIO_printf(bio_err, "'%s' is out of range\n", sk_OPENSSL_STRING_value(osk, i)); continue; } @@ -244,14 +244,14 @@ int asn1parse_main(int argc, char **argv) num = tmplen; } - if (offset >= num) { - BIO_printf(bio_err, "Error: offset too large\n"); + if (offset < 0 || offset >= num) { + BIO_printf(bio_err, "Error: offset out of range\n"); goto end; } num -= offset; - if ((length == 0) || ((long)length > num)) + if (length == 0 || length > (unsigned int)num) length = (unsigned int)num; if (derout) { if (BIO_write(derout, str + offset, length) != (int)length) { diff --git a/deps/openssl/openssl/apps/ca.c b/deps/openssl/openssl/apps/ca.c index d474a2b69a64..c69a2b5cdd9f 100644 --- a/deps/openssl/openssl/apps/ca.c +++ b/deps/openssl/openssl/apps/ca.c @@ -725,10 +725,10 @@ int ca_main(int argc, char **argv) /*****************************************************************/ if (req || gencrl) { - /* FIXME: Is it really always text? */ - Sout = bio_open_default(outfile, 'w', FORMAT_TEXT); - if (Sout == NULL) - goto end; + if (spkac_file != NULL) { + output_der = 1; + batch = 1; + } } if (md == NULL @@ -872,10 +872,6 @@ int ca_main(int argc, char **argv) BIO_printf(bio_err, "Memory allocation failure\n"); goto end; } - if (outfile) { - output_der = 1; - batch = 1; - } } } if (ss_cert_file != NULL) { @@ -929,10 +925,13 @@ int ca_main(int argc, char **argv) if (j > 0) { total_done++; BIO_printf(bio_err, "\n"); - if (!BN_add_word(serial, 1)) + if (!BN_add_word(serial, 1)) { + X509_free(x); goto end; + } if (!sk_X509_push(cert_sk, x)) { BIO_printf(bio_err, "Memory allocation failure\n"); + X509_free(x); goto end; } } @@ -1017,6 +1016,11 @@ int ca_main(int argc, char **argv) if (verbose) BIO_printf(bio_err, "writing %s\n", buf[2]); + Sout = bio_open_default(outfile, 'w', + output_der ? FORMAT_ASN1 : FORMAT_TEXT); + if (Sout == NULL) + goto end; + Cout = BIO_new_file(buf[2], "w"); if (Cout == NULL) { perror(buf[2]); @@ -1025,6 +1029,8 @@ int ca_main(int argc, char **argv) write_new_certificate(Cout, xi, 0, notext); write_new_certificate(Sout, xi, output_der, notext); BIO_free_all(Cout); + BIO_free_all(Sout); + Sout = NULL; } if (sk_X509_num(cert_sk)) { @@ -1173,6 +1179,11 @@ int ca_main(int argc, char **argv) if (!do_X509_CRL_sign(crl, pkey, dgst, sigopts)) goto end; + Sout = bio_open_default(outfile, 'w', + output_der ? FORMAT_ASN1 : FORMAT_TEXT); + if (Sout == NULL) + goto end; + PEM_write_bio_X509_CRL(Sout, crl); if (crlnumberfile != NULL) /* Rename the crlnumber file */ diff --git a/deps/openssl/openssl/apps/cms.c b/deps/openssl/openssl/apps/cms.c index b999c70c959d..640f92eb1b37 100644 --- a/deps/openssl/openssl/apps/cms.c +++ b/deps/openssl/openssl/apps/cms.c @@ -146,7 +146,7 @@ OPTIONS cms_options[] = { "Do not load certificates from the default certificates directory"}, {"content", OPT_CONTENT, '<', "Supply or override content for detached signature"}, - {"print", OPT_PRINT, '-', + {"print", OPT_PRINT, '-', "For the -cmsout operation print out all fields of the CMS structure"}, {"secretkey", OPT_SECRETKEY, 's'}, {"secretkeyid", OPT_SECRETKEYID, 's'}, diff --git a/deps/openssl/openssl/apps/ct_log_list.cnf b/deps/openssl/openssl/apps/ct_log_list.cnf index a637b477af48..243487453c64 100644 --- a/deps/openssl/openssl/apps/ct_log_list.cnf +++ b/deps/openssl/openssl/apps/ct_log_list.cnf @@ -31,3 +31,4 @@ key = MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEluqsHEYMG1XcDfy1lCdGV0JwOmkY4r87xNuroP [venafi] description = Venafi log key = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAolpIHxdSlTXLo1s6H1OCdpSj/4DyHDc8wLG9wVmLqy1lk9fz4ATVmm+/1iN2Nk8jmctUKK2MFUtlWXZBSpym97M7frGlSaQXUWyA3CqQUEuIJOmlEjKTBEiQAvpfDjCHjlV2Be4qTM6jamkJbiWtgnYPhJL6ONaGTiSPm7Byy57iaz/hbckldSOIoRhYBiMzeNoA0DiRZ9KmfSeXZ1rB8y8X5urSW+iBzf2SaOfzBvDpcoTuAaWx2DPazoOl28fP1hZ+kHUYvxbcMjttjauCFx+JII0dmuZNIwjfeG/GBb9frpSX219k1O4Wi6OEbHEr8at/XQ0y7gTikOxBn/s5wQIDAQAB + diff --git a/deps/openssl/openssl/apps/dh1024.pem b/deps/openssl/openssl/apps/dh1024.pem index 813e8a4a4822..f1a5e180aa95 100644 --- a/deps/openssl/openssl/apps/dh1024.pem +++ b/deps/openssl/openssl/apps/dh1024.pem @@ -4,7 +4,7 @@ Sgh5jjQE3e+VGbPNOkMbMCsKbfJfFDdP4TVtbVHCReSFtXZiXn7G9ExC6aY37WsL /1y29Aa37e44a/taiZ+lrp8kEXxLH+ZJKGZR7OZTgf//////////AgEC -----END DH PARAMETERS----- -These are the 1024-bit DH parameters from "Internet Key Exchange +These are the 1024-bit DH parameters from "Internet Key Exchange Protocol Version 2 (IKEv2)": https://tools.ietf.org/html/rfc5996 See https://tools.ietf.org/html/rfc2412 for how they were generated. diff --git a/deps/openssl/openssl/apps/dh2048.pem b/deps/openssl/openssl/apps/dh2048.pem index 288a20997e5a..e899f2e0296d 100644 --- a/deps/openssl/openssl/apps/dh2048.pem +++ b/deps/openssl/openssl/apps/dh2048.pem @@ -7,8 +7,8 @@ fDKQXkYuNs474553LBgOhgObJ4Oi7Aeij7XFXfBvTFLJ3ivL9pVYFxg5lUl86pVq 5RXSJhiY+gUQFXKOWoqsqmj//////////wIBAg== -----END DH PARAMETERS----- -These are the 2048-bit DH parameters from "More Modular Exponential -(MODP) Diffie-Hellman groups for Internet Key Exchange (IKE)": +These are the 2048-bit DH parameters from "More Modular Exponential +(MODP) Diffie-Hellman groups for Internet Key Exchange (IKE)": https://tools.ietf.org/html/rfc3526 See https://tools.ietf.org/html/rfc2412 for how they were generated. diff --git a/deps/openssl/openssl/apps/dh4096.pem b/deps/openssl/openssl/apps/dh4096.pem index 08560e1284e2..adada2b55815 100644 --- a/deps/openssl/openssl/apps/dh4096.pem +++ b/deps/openssl/openssl/apps/dh4096.pem @@ -12,8 +12,8 @@ ARpyPBKnh+bXiHGaEL26WyaZwycYavTiPBqUaDS2FQvaJYPpyirUTOjbu8LbBN6O HNAGkSfVsFqpk7TqmI2P3cGG/7fckKbAj030Nck0BjGZ//////////8CAQI= -----END DH PARAMETERS----- -These are the 4096-bit DH parameters from "More Modular Exponential -(MODP) Diffie-Hellman groups for Internet Key Exchange (IKE)": +These are the 4096-bit DH parameters from "More Modular Exponential +(MODP) Diffie-Hellman groups for Internet Key Exchange (IKE)": https://tools.ietf.org/html/rfc3526 See https://tools.ietf.org/html/rfc2412 for how they were generated. diff --git a/deps/openssl/openssl/apps/dhparam.c b/deps/openssl/openssl/apps/dhparam.c index 94322e37def4..8a28414562ba 100644 --- a/deps/openssl/openssl/apps/dhparam.c +++ b/deps/openssl/openssl/apps/dhparam.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -151,6 +151,11 @@ int dhparam_main(int argc, char **argv) goto end; } # endif + + out = bio_open_default(outfile, 'w', outformat); + if (out == NULL) + goto end; + /* DH parameters */ if (num && !g) g = 2; @@ -266,10 +271,6 @@ int dhparam_main(int argc, char **argv) /* dh != NULL */ } - out = bio_open_default(outfile, 'w', outformat); - if (out == NULL) - goto end; - if (text) { DHparams_print(out, dh); } diff --git a/deps/openssl/openssl/apps/dsaparam.c b/deps/openssl/openssl/apps/dsaparam.c index 5c3c8f80893e..20891cf3ddbc 100644 --- a/deps/openssl/openssl/apps/dsaparam.c +++ b/deps/openssl/openssl/apps/dsaparam.c @@ -226,25 +226,28 @@ int dsaparam_main(int argc, char **argv) data = app_malloc(len + 20, "BN space"); - BIO_printf(bio_out, "DSA *get_dsa%d()\n{\n", bits_p); - print_bignum_var(bio_out, p, "dsap", len, data); - print_bignum_var(bio_out, q, "dsaq", len, data); - print_bignum_var(bio_out, g, "dsag", len, data); + BIO_printf(bio_out, "static DSA *get_dsa%d(void)\n{\n", bits_p); + print_bignum_var(bio_out, p, "dsap", bits_p, data); + print_bignum_var(bio_out, q, "dsaq", bits_p, data); + print_bignum_var(bio_out, g, "dsag", bits_p, data); BIO_printf(bio_out, " DSA *dsa = DSA_new();\n" + " BIGNUM *p, *q, *g;\n" "\n"); BIO_printf(bio_out, " if (dsa == NULL)\n" " return NULL;\n"); - BIO_printf(bio_out, " dsa->p = BN_bin2bn(dsap_%d, sizeof(dsap_%d), NULL);\n", - bits_p, bits_p); - BIO_printf(bio_out, " dsa->q = BN_bin2bn(dsaq_%d, sizeof(dsaq_%d), NULL);\n", - bits_p, bits_p); - BIO_printf(bio_out, " dsa->g = BN_bin2bn(dsag_%d, sizeof(dsag_%d), NULL);\n", - bits_p, bits_p); - BIO_printf(bio_out, " if (!dsa->p || !dsa->q || !dsa->g) {\n" - " DSA_free(dsa);\n" + BIO_printf(bio_out, " if (!DSA_set0_pqg(dsa, p = BN_bin2bn(dsap_%d, sizeof(dsap_%d), NULL),\n", + bits_p, bits_p); + BIO_printf(bio_out, " q = BN_bin2bn(dsaq_%d, sizeof(dsaq_%d), NULL),\n", + bits_p, bits_p); + BIO_printf(bio_out, " g = BN_bin2bn(dsag_%d, sizeof(dsag_%d), NULL))) {\n", + bits_p, bits_p); + BIO_printf(bio_out, " DSA_free(dsa);\n" + " BN_free(p);\n" + " BN_free(q);\n" + " BN_free(g);\n" " return NULL;\n" " }\n" - " return(dsa);\n}\n"); + " return dsa;\n}\n"); OPENSSL_free(data); } diff --git a/deps/openssl/openssl/apps/ocsp.c b/deps/openssl/openssl/apps/ocsp.c index 4b533348b43b..0c15f5114d23 100644 --- a/deps/openssl/openssl/apps/ocsp.c +++ b/deps/openssl/openssl/apps/ocsp.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -639,7 +639,6 @@ int ocsp_main(int argc, char **argv) OCSP_response_status_str(i), i); if (ignore_err) goto redo_accept; - ret = 0; goto end; } diff --git a/deps/openssl/openssl/apps/rehash.c b/deps/openssl/openssl/apps/rehash.c index 273ad749692b..aa3f8643a5af 100644 --- a/deps/openssl/openssl/apps/rehash.c +++ b/deps/openssl/openssl/apps/rehash.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -130,9 +130,10 @@ static int add_entry(enum Type type, unsigned int hash, const char *filename, for (ep = bp->first_entry; ep; ep = ep->next) { if (digest && memcmp(digest, ep->digest, evpmdsize) == 0) { BIO_printf(bio_err, - "%s: skipping duplicate %s in %s\n", opt_getprog(), + "%s: warning: skipping duplicate %s in %s\n", + opt_getprog(), type == TYPE_CERT ? "certificate" : "CRL", filename); - return 1; + return 0; } if (strcmp(filename, ep->filename) == 0) { found = ep; @@ -144,7 +145,7 @@ static int add_entry(enum Type type, unsigned int hash, const char *filename, if (ep == NULL) { if (bp->num_needed >= MAX_COLLISIONS) { BIO_printf(bio_err, - "%s: hash table overflow for %s\n", + "%s: error: hash table overflow for %s\n", opt_getprog(), filename); return 1; } @@ -235,7 +236,7 @@ static int do_file(const char *filename, const char *fullpath, enum Hash h) /* Does it have X.509 data in it? */ if ((b = BIO_new_file(fullpath, "r")) == NULL) { - BIO_printf(bio_err, "%s: skipping %s, cannot open file\n", + BIO_printf(bio_err, "%s: error: skipping %s, cannot open file\n", opt_getprog(), filename); errs++; goto end; @@ -247,7 +248,7 @@ static int do_file(const char *filename, const char *fullpath, enum Hash h) if (sk_X509_INFO_num(inf) != 1) { BIO_printf(bio_err, - "%s: skipping %s," + "%s: warning: skipping %s," "it does not contain exactly one certificate or CRL\n", opt_getprog(), filename); /* This is not an error. */ @@ -502,13 +503,14 @@ int rehash_main(int argc, char **argv) if (*argv) { while (*argv) errs += do_dir(*argv++, h); - } else if ((env = getenv("SSL_CERT_DIR")) != NULL) { + } else if ((env = getenv(X509_get_default_cert_dir_env())) != NULL) { + char lsc[2] = { LIST_SEPARATOR_CHAR, '\0' }; m = OPENSSL_strdup(env); - for (e = strtok(m, ":"); e != NULL; e = strtok(NULL, ":")) + for (e = strtok(m, lsc); e != NULL; e = strtok(NULL, lsc)) errs += do_dir(e, h); OPENSSL_free(m); } else { - errs += do_dir("/etc/ssl/certs", h); + errs += do_dir(X509_get_default_cert_dir(), h); } end: diff --git a/deps/openssl/openssl/apps/s_client.c b/deps/openssl/openssl/apps/s_client.c index fb89f0cd6131..3c0c73e8516c 100644 --- a/deps/openssl/openssl/apps/s_client.c +++ b/deps/openssl/openssl/apps/s_client.c @@ -593,7 +593,8 @@ OPTIONS s_client_options[] = { "Disable name checks when matching DANE-EE(3) TLSA records"}, {"reconnect", OPT_RECONNECT, '-', "Drop and re-make the connection with the same Session-ID"}, - {"showcerts", OPT_SHOWCERTS, '-', "Show all certificates in the chain"}, + {"showcerts", OPT_SHOWCERTS, '-', + "Show all certificates sent by the server"}, {"debug", OPT_DEBUG, '-', "Extra output"}, {"msg", OPT_MSG, '-', "Show protocol messages"}, {"msgfile", OPT_MSGFILE, '>', @@ -2114,8 +2115,7 @@ int s_client_main(int argc, char **argv) FD_ZERO(&readfds); FD_ZERO(&writefds); - if ((SSL_version(con) == DTLS1_VERSION) && - DTLSv1_get_timeout(con, &timeout)) + if (SSL_is_dtls(con) && DTLSv1_get_timeout(con, &timeout)) timeoutp = &timeout; else timeoutp = NULL; @@ -2235,10 +2235,8 @@ int s_client_main(int argc, char **argv) } } - if ((SSL_version(con) == DTLS1_VERSION) - && DTLSv1_handle_timeout(con) > 0) { + if (SSL_is_dtls(con) && DTLSv1_handle_timeout(con) > 0) BIO_printf(bio_err, "TIMEOUT occurred\n"); - } if (!ssl_pending && FD_ISSET(SSL_get_fd(con), &writefds)) { k = SSL_write(con, &(cbuf[cbuf_off]), (unsigned int)cbuf_len); diff --git a/deps/openssl/openssl/apps/s_server.c b/deps/openssl/openssl/apps/s_server.c index 31c90fdd0e64..e8aa323a4f9e 100644 --- a/deps/openssl/openssl/apps/s_server.c +++ b/deps/openssl/openssl/apps/s_server.c @@ -2012,9 +2012,7 @@ static int sv_body(int s, int stype, unsigned char *context) SSL *con = NULL; BIO *sbio; struct timeval timeout; -#if defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS) - struct timeval tv; -#else +#if !(defined(OPENSSL_SYS_WINDOWS) || defined(OPENSSL_SYS_MSDOS)) struct timeval *timeoutp; #endif @@ -2149,26 +2147,23 @@ static int sv_body(int s, int stype, unsigned char *context) * second and check for any keypress. In a proper Windows * application we wouldn't do this because it is inefficient. */ - tv.tv_sec = 1; - tv.tv_usec = 0; - i = select(width, (void *)&readfds, NULL, NULL, &tv); + timeout.tv_sec = 1; + timeout.tv_usec = 0; + i = select(width, (void *)&readfds, NULL, NULL, &timeout); if (has_stdin_waiting()) read_from_terminal = 1; if ((i < 0) || (!i && !read_from_terminal)) continue; #else - if ((SSL_version(con) == DTLS1_VERSION) && - DTLSv1_get_timeout(con, &timeout)) + if (SSL_is_dtls(con) && DTLSv1_get_timeout(con, &timeout)) timeoutp = &timeout; else timeoutp = NULL; i = select(width, (void *)&readfds, NULL, NULL, timeoutp); - if ((SSL_version(con) == DTLS1_VERSION) - && DTLSv1_handle_timeout(con) > 0) { + if ((SSL_is_dtls(con)) && DTLSv1_handle_timeout(con) > 0) BIO_printf(bio_err, "TIMEOUT occurred\n"); - } if (i <= 0) continue; diff --git a/deps/openssl/openssl/apps/smime.c b/deps/openssl/openssl/apps/smime.c index 8edb1ed994be..e18d7de75fce 100644 --- a/deps/openssl/openssl/apps/smime.c +++ b/deps/openssl/openssl/apps/smime.c @@ -89,7 +89,7 @@ OPTIONS smime_options[] = { {"no-CApath", OPT_NOCAPATH, '-', "Do not load certificates from the default certificates directory"}, {"resign", OPT_RESIGN, '-', "Resign a signed message"}, - {"nochain", OPT_NOCHAIN, '-', + {"nochain", OPT_NOCHAIN, '-', "set PKCS7_NOCHAIN so certificates contained in the message are not used as untrusted CAs" }, {"nosmimecap", OPT_NOSMIMECAP, '-', "Omit the SMIMECapabilities attribute"}, {"stream", OPT_STREAM, '-', "Enable CMS streaming" }, diff --git a/deps/openssl/openssl/apps/speed.c b/deps/openssl/openssl/apps/speed.c index f388a9852d3b..3ef37b78a658 100644 --- a/deps/openssl/openssl/apps/speed.c +++ b/deps/openssl/openssl/apps/speed.c @@ -129,13 +129,6 @@ #define BUFSIZE (1024*16+1) #define MAX_MISALIGNMENT 63 -#define ALGOR_NUM 30 -#define SIZE_NUM 6 -#define PRIME_NUM 3 -#define RSA_NUM 7 -#define DSA_NUM 3 - -#define EC_NUM 17 #define MAX_ECDH_SIZE 256 #define MISALIGN 64 @@ -144,37 +137,6 @@ static volatile int run = 0; static int mr = 0; static int usertime = 1; -typedef void *(*kdf_fn) ( - const void *in, size_t inlen, void *out, size_t *xoutlen); - -typedef struct loopargs_st { - ASYNC_JOB *inprogress_job; - ASYNC_WAIT_CTX *wait_ctx; - unsigned char *buf; - unsigned char *buf2; - unsigned char *buf_malloc; - unsigned char *buf2_malloc; - unsigned int siglen; -#ifndef OPENSSL_NO_RSA - RSA *rsa_key[RSA_NUM]; -#endif -#ifndef OPENSSL_NO_DSA - DSA *dsa_key[DSA_NUM]; -#endif -#ifndef OPENSSL_NO_EC - EC_KEY *ecdsa[EC_NUM]; - EC_KEY *ecdh_a[EC_NUM]; - EC_KEY *ecdh_b[EC_NUM]; - unsigned char *secret_a; - unsigned char *secret_b; - size_t outlen; - kdf_fn kdf; -#endif - EVP_CIPHER_CTX *ctx; - HMAC_CTX *hctx; - GCM128_CONTEXT *gcm_ctx; -} loopargs_t; - #ifndef OPENSSL_NO_MD2 static int EVP_Digest_MD2_loop(void *args); #endif @@ -227,7 +189,6 @@ static int ECDSA_sign_loop(void *args); static int ECDSA_verify_loop(void *args); static int ECDH_compute_key_loop(void *args); #endif -static int run_benchmark(int async_jobs, int (*loop_function)(void *), loopargs_t *loopargs); static double Time_F(int s); static void print_message(const char *s, long num, int length); @@ -238,32 +199,10 @@ static void print_result(int alg, int run_no, int count, double time_used); static int do_multi(int multi); #endif -static const char *names[ALGOR_NUM] = { - "md2", "mdc2", "md4", "md5", "hmac(md5)", "sha1", "rmd160", "rc4", - "des cbc", "des ede3", "idea cbc", "seed cbc", - "rc2 cbc", "rc5-32/12 cbc", "blowfish cbc", "cast cbc", - "aes-128 cbc", "aes-192 cbc", "aes-256 cbc", - "camellia-128 cbc", "camellia-192 cbc", "camellia-256 cbc", - "evp", "sha256", "sha512", "whirlpool", - "aes-128 ige", "aes-192 ige", "aes-256 ige", "ghash" -}; - -static double results[ALGOR_NUM][SIZE_NUM]; - -static const int lengths[SIZE_NUM] = { +static const int lengths[] = { 16, 64, 256, 1024, 8 * 1024, 16 * 1024 }; - -#ifndef OPENSSL_NO_RSA -static double rsa_results[RSA_NUM][2]; -#endif -#ifndef OPENSSL_NO_DSA -static double dsa_results[DSA_NUM][2]; -#endif -#ifndef OPENSSL_NO_EC -static double ecdsa_results[EC_NUM][2]; -static double ecdh_results[EC_NUM][1]; -#endif +#define SIZE_NUM OSSL_NELEM(lengths) #if !defined(OPENSSL_NO_DSA) || !defined(OPENSSL_NO_EC) static const char rnd_seed[] = @@ -348,9 +287,14 @@ static double Time_F(int s) static void multiblock_speed(const EVP_CIPHER *evp_cipher); -static int found(const char *name, const OPT_PAIR *pairs, int *result) +#define found(value, pairs, result)\ + opt_found(value, result, pairs, OSSL_NELEM(pairs)) +static int opt_found(const char *name, unsigned int *result, + const OPT_PAIR pairs[], unsigned int nbelem) { - for (; pairs->name; pairs++) + unsigned int idx; + + for (idx = 0; idx < nbelem; ++idx, pairs++) if (strcmp(name, pairs->name) == 0) { *result = pairs->retval; return 1; @@ -387,7 +331,7 @@ OPTIONS speed_options[] = { #ifndef OPENSSL_NO_ENGINE {"engine", OPT_ENGINE, 's', "Use engine, possibly a hardware device"}, #endif - {NULL}, + {NULL} }; #define D_MD2 0 @@ -420,7 +364,19 @@ OPTIONS speed_options[] = { #define D_IGE_192_AES 27 #define D_IGE_256_AES 28 #define D_GHASH 29 -static OPT_PAIR doit_choices[] = { +/* name of algorithms to test */ +static const char *names[] = { + "md2", "mdc2", "md4", "md5", "hmac(md5)", "sha1", "rmd160", "rc4", + "des cbc", "des ede3", "idea cbc", "seed cbc", + "rc2 cbc", "rc5-32/12 cbc", "blowfish cbc", "cast cbc", + "aes-128 cbc", "aes-192 cbc", "aes-256 cbc", + "camellia-128 cbc", "camellia-192 cbc", "camellia-256 cbc", + "evp", "sha256", "sha512", "whirlpool", + "aes-128 ige", "aes-192 ige", "aes-256 ige", "ghash" +}; +#define ALGOR_NUM OSSL_NELEM(names) +/* list of configured algorithm (remaining) */ +static const OPT_PAIR doit_choices[] = { #ifndef OPENSSL_NO_MD2 {"md2", D_MD2}, #endif @@ -484,21 +440,24 @@ static OPT_PAIR doit_choices[] = { {"cast", D_CBC_CAST}, {"cast5", D_CBC_CAST}, #endif - {"ghash", D_GHASH}, - {NULL} + {"ghash", D_GHASH} }; +static double results[ALGOR_NUM][SIZE_NUM]; + #ifndef OPENSSL_NO_DSA # define R_DSA_512 0 # define R_DSA_1024 1 # define R_DSA_2048 2 -static OPT_PAIR dsa_choices[] = { +static const OPT_PAIR dsa_choices[] = { {"dsa512", R_DSA_512}, {"dsa1024", R_DSA_1024}, - {"dsa2048", R_DSA_2048}, - {NULL}, + {"dsa2048", R_DSA_2048} }; -#endif +# define DSA_NUM OSSL_NELEM(dsa_choices) + +static double dsa_results[DSA_NUM][2]; /* 2 ops: sign then verify */ +#endif /* OPENSSL_NO_DSA */ #define R_RSA_512 0 #define R_RSA_1024 1 @@ -507,16 +466,18 @@ static OPT_PAIR dsa_choices[] = { #define R_RSA_4096 4 #define R_RSA_7680 5 #define R_RSA_15360 6 -static OPT_PAIR rsa_choices[] = { +static const OPT_PAIR rsa_choices[] = { {"rsa512", R_RSA_512}, {"rsa1024", R_RSA_1024}, {"rsa2048", R_RSA_2048}, {"rsa3072", R_RSA_3072}, {"rsa4096", R_RSA_4096}, {"rsa7680", R_RSA_7680}, - {"rsa15360", R_RSA_15360}, - {NULL} + {"rsa15360", R_RSA_15360} }; +# define RSA_NUM OSSL_NELEM(rsa_choices) + +static double rsa_results[RSA_NUM][2]; /* 2 ops: sign then verify */ #define R_EC_P160 0 #define R_EC_P192 1 @@ -536,7 +497,7 @@ static OPT_PAIR rsa_choices[] = { #define R_EC_B571 15 #define R_EC_X25519 16 #ifndef OPENSSL_NO_EC -static OPT_PAIR ecdsa_choices[] = { +static const OPT_PAIR ecdsa_choices[] = { {"ecdsap160", R_EC_P160}, {"ecdsap192", R_EC_P192}, {"ecdsap224", R_EC_P224}, @@ -552,11 +513,13 @@ static OPT_PAIR ecdsa_choices[] = { {"ecdsab233", R_EC_B233}, {"ecdsab283", R_EC_B283}, {"ecdsab409", R_EC_B409}, - {"ecdsab571", R_EC_B571}, - {NULL} + {"ecdsab571", R_EC_B571} }; +# define ECDSA_NUM OSSL_NELEM(ecdsa_choices) + +static double ecdsa_results[ECDSA_NUM][2]; /* 2 ops: sign then verify */ -static OPT_PAIR ecdh_choices[] = { +static const OPT_PAIR ecdh_choices[] = { {"ecdhp160", R_EC_P160}, {"ecdhp192", R_EC_P192}, {"ecdhp224", R_EC_P224}, @@ -576,7 +539,10 @@ static OPT_PAIR ecdh_choices[] = { {"ecdhx25519", R_EC_X25519}, {NULL} }; -#endif +# define EC_NUM OSSL_NELEM(ecdh_choices) + +static double ecdh_results[EC_NUM][1]; /* 1 op: derivation */ +#endif /* OPENSSL_NO_EC */ #ifndef SIGALRM # define COND(d) (count < (d)) @@ -586,7 +552,40 @@ static OPT_PAIR ecdh_choices[] = { # define COUNT(d) (count) #endif /* SIGALRM */ -static int testnum; +static unsigned int testnum; +typedef void *(*kdf_fn) (const void *in, size_t inlen, void *out, + size_t *xoutlen); + +typedef struct loopargs_st { + ASYNC_JOB *inprogress_job; + ASYNC_WAIT_CTX *wait_ctx; + unsigned char *buf; + unsigned char *buf2; + unsigned char *buf_malloc; + unsigned char *buf2_malloc; + unsigned int siglen; +#ifndef OPENSSL_NO_RSA + RSA *rsa_key[RSA_NUM]; +#endif +#ifndef OPENSSL_NO_DSA + DSA *dsa_key[DSA_NUM]; +#endif +#ifndef OPENSSL_NO_EC + EC_KEY *ecdsa[ECDSA_NUM]; + EC_KEY *ecdh_a[EC_NUM]; + EC_KEY *ecdh_b[EC_NUM]; + unsigned char *secret_a; + unsigned char *secret_b; + size_t outlen; + kdf_fn kdf; +#endif + EVP_CIPHER_CTX *ctx; + HMAC_CTX *hctx; + GCM128_CONTEXT *gcm_ctx; +} loopargs_t; + +static int run_benchmark(int async_jobs, int (*loop_function) (void *), + loopargs_t * loopargs); /* Nb of iterations to do per algorithm and key-size */ static long c[ALGOR_NUM][SIZE_NUM]; @@ -995,7 +994,7 @@ static int DSA_verify_loop(void *args) #endif #ifndef OPENSSL_NO_EC -static long ecdsa_c[EC_NUM][2]; +static long ecdsa_c[ECDSA_NUM][2]; static int ECDSA_sign_loop(void *args) { loopargs_t *tempargs = *(loopargs_t **)args; @@ -1188,8 +1187,8 @@ static int run_benchmark(int async_jobs, continue; #endif - ret = ASYNC_start_job(&loopargs[i].inprogress_job, - loopargs[i].wait_ctx, &job_op_count, loop_function, + ret = ASYNC_start_job(&loopargs[i].inprogress_job, + loopargs[i].wait_ctx, &job_op_count, loop_function, (void *)(loopargs + i), sizeof(loopargs_t)); switch (ret) { case ASYNC_PAUSE: @@ -1222,26 +1221,23 @@ int speed_main(int argc, char **argv) { ENGINE *e = NULL; loopargs_t *loopargs = NULL; - int async_init = 0; - int loopargs_len = 0; - char *prog; + const char *prog; const char *engine_id = NULL; const EVP_CIPHER *evp_cipher = NULL; double d = 0.0; OPTION_CHOICE o; - int multiblock = 0, pr_header = 0; + int async_init = 0, multiblock = 0, pr_header = 0; int doit[ALGOR_NUM] = { 0 }; - int ret = 1, i, k, misalign = 0; + int ret = 1, misalign = 0; long count = 0; + unsigned int i, k, loop, loopargs_len = 0, async_jobs = 0; #ifndef NO_FORK int multi = 0; #endif - unsigned int async_jobs = 0; #if !defined(OPENSSL_NO_RSA) || !defined(OPENSSL_NO_DSA) \ || !defined(OPENSSL_NO_EC) long rsa_count = 1; #endif - size_t loop; /* What follows are the buffers and key material. */ #ifndef OPENSSL_NO_RC5 @@ -1325,7 +1321,7 @@ int speed_main(int argc, char **argv) /* * We only test over the following curves as they are representative, To * add tests over more curves, simply add the curve NID and curve name to - * the following arrays and increase the EC_NUM value accordingly. + * the following arrays and increase the |ecdh_choices| list accordingly. */ static const unsigned int test_curves[EC_NUM] = { /* Prime Curves */ @@ -1360,7 +1356,7 @@ int speed_main(int argc, char **argv) 571, 253 /* X25519 */ }; - int ecdsa_doit[EC_NUM] = { 0 }; + int ecdsa_doit[ECDSA_NUM] = { 0 }; int ecdh_doit[EC_NUM] = { 0 }; #endif /* ndef OPENSSL_NO_EC */ @@ -1418,9 +1414,7 @@ int speed_main(int argc, char **argv) goto opterr; } if (async_jobs > 99999) { - BIO_printf(bio_err, - "%s: too many async_jobs\n", - prog); + BIO_printf(bio_err, "%s: too many async_jobs\n", prog); goto opterr; } #endif @@ -1471,10 +1465,8 @@ int speed_main(int argc, char **argv) if (strcmp(*argv, "openssl") == 0) continue; if (strcmp(*argv, "rsa") == 0) { - rsa_doit[R_RSA_512] = rsa_doit[R_RSA_1024] = - rsa_doit[R_RSA_2048] = rsa_doit[R_RSA_3072] = - rsa_doit[R_RSA_4096] = rsa_doit[R_RSA_7680] = - rsa_doit[R_RSA_15360] = 1; + for (loop = 0; loop < OSSL_NELEM(rsa_doit); loop++) + rsa_doit[loop] = 1; continue; } if (found(*argv, rsa_choices, &i)) { @@ -1507,8 +1499,8 @@ int speed_main(int argc, char **argv) #endif #ifndef OPENSSL_NO_EC if (strcmp(*argv, "ecdsa") == 0) { - for (loop = 0; loop < OSSL_NELEM(ecdsa_choices); loop++) - ecdsa_doit[ecdsa_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdsa_doit); loop++) + ecdsa_doit[loop] = 1; continue; } if (found(*argv, ecdsa_choices, &i)) { @@ -1516,8 +1508,8 @@ int speed_main(int argc, char **argv) continue; } if (strcmp(*argv, "ecdh") == 0) { - for (loop = 0; loop < OSSL_NELEM(ecdh_choices); loop++) - ecdh_doit[ecdh_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdh_doit); loop++) + ecdh_doit[loop] = 1; continue; } if (found(*argv, ecdh_choices, &i)) { @@ -1584,10 +1576,10 @@ int speed_main(int argc, char **argv) dsa_doit[i] = 1; #endif #ifndef OPENSSL_NO_EC - for (loop = 0; loop < OSSL_NELEM(ecdsa_choices); loop++) - ecdsa_doit[ecdsa_choices[loop].retval] = 1; - for (loop = 0; loop < OSSL_NELEM(ecdh_choices); loop++) - ecdh_doit[ecdh_choices[loop].retval] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdsa_doit); loop++) + ecdsa_doit[loop] = 1; + for (loop = 0; loop < OSSL_NELEM(ecdh_doit); loop++) + ecdh_doit[loop] = 1; #endif } for (i = 0; i < ALGOR_NUM; i++) @@ -1850,6 +1842,8 @@ int speed_main(int argc, char **argv) } } } + /* default iteration count for the last EC Curve */ + ecdh_c[R_EC_X25519][0] = count / 1800; # endif # else @@ -2472,7 +2466,7 @@ int speed_main(int argc, char **argv) if (RAND_status() != 1) { RAND_seed(rnd_seed, sizeof(rnd_seed)); } - for (testnum = 0; testnum < EC_NUM; testnum++) { + for (testnum = 0; testnum < ECDSA_NUM; testnum++) { int st = 1; if (!ecdsa_doit[testnum]) @@ -2584,7 +2578,7 @@ int speed_main(int argc, char **argv) ecdh_checks = 0; rsa_count = 1; } else { - int secret_size_a, secret_size_b; + int secret_size_a, secret_size_b, j; /* * If field size is not more than 24 octets, then use SHA-1 * hash of result; otherwise, use result (see section 4.8 of @@ -2613,8 +2607,8 @@ int speed_main(int argc, char **argv) else ecdh_checks = 1; - for (k = 0; k < secret_size_a && ecdh_checks == 1; k++) { - if (loopargs[i].secret_a[k] != loopargs[i].secret_b[k]) + for (j = 0; j < secret_size_a && ecdh_checks == 1; j++) { + if (loopargs[i].secret_a[j] != loopargs[i].secret_b[j]) ecdh_checks = 0; } @@ -2644,7 +2638,7 @@ int speed_main(int argc, char **argv) if (rsa_count <= 1) { /* if longer than 10s, don't do any more */ - for (testnum++; testnum < EC_NUM; testnum++) + for (testnum++; testnum < OSSL_NELEM(ecdh_doit); testnum++) ecdh_doit[testnum] = 0; } } @@ -2693,7 +2687,7 @@ int speed_main(int argc, char **argv) if (!doit[k]) continue; if (mr) - printf("+F:%d:%s", k, names[k]); + printf("+F:%u:%s", k, names[k]); else printf("%-13s", names[k]); for (testnum = 0; testnum < SIZE_NUM; testnum++) { @@ -2742,7 +2736,7 @@ int speed_main(int argc, char **argv) #endif #ifndef OPENSSL_NO_EC testnum = 1; - for (k = 0; k < EC_NUM; k++) { + for (k = 0; k < OSSL_NELEM(ecdsa_doit); k++) { if (!ecdsa_doit[k]) continue; if (testnum && !mr) { @@ -2800,8 +2794,9 @@ int speed_main(int argc, char **argv) DSA_free(loopargs[i].dsa_key[k]); #endif #ifndef OPENSSL_NO_EC - for (k = 0; k < EC_NUM; k++) { + for (k = 0; k < ECDSA_NUM; k++) EC_KEY_free(loopargs[i].ecdsa[k]); + for (k = 0; k < EC_NUM; k++) { EC_KEY_free(loopargs[i].ecdh_a[k]); EC_KEY_free(loopargs[i].ecdh_b[k]); } @@ -2950,7 +2945,7 @@ static int do_multi(int multi) printf("Got: %s from %d\n", buf, n); if (strncmp(buf, "+F:", 3) == 0) { int alg; - int j; + unsigned int j; p = buf + 3; alg = atoi(sstrsep(&p, sep)); diff --git a/deps/openssl/openssl/apps/verify.c b/deps/openssl/openssl/apps/verify.c index 0925ee627fd2..8bcbff61774a 100644 --- a/deps/openssl/openssl/apps/verify.c +++ b/deps/openssl/openssl/apps/verify.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -219,6 +219,7 @@ static int check(X509_STORE *ctx, const char *file, X509_STORE_set_flags(ctx, vflags); if (!X509_STORE_CTX_init(csc, ctx, x, uchain)) { + X509_STORE_CTX_free(csc); printf("error %s: X.509 store context initialization failed\n", (file == NULL) ? "stdin" : file); goto end; diff --git a/deps/openssl/openssl/appveyor.yml b/deps/openssl/openssl/appveyor.yml index 8dd6cb6fb0af..ba291fdd174b 100644 --- a/deps/openssl/openssl/appveyor.yml +++ b/deps/openssl/openssl/appveyor.yml @@ -41,5 +41,5 @@ test_script: - cd _build - nmake test - mkdir ..\_install - - nmake install install_docs DESTDIR=..\_install + - nmake install DESTDIR=..\_install - cd .. diff --git a/deps/openssl/openssl/config b/deps/openssl/openssl/config index 6331d905b410..35e849a9585b 100755 --- a/deps/openssl/openssl/config +++ b/deps/openssl/openssl/config @@ -923,7 +923,7 @@ if [ $? = "0" ]; then if [ "$VERBOSE" = "true" ]; then echo $PERL $THERE/Configure $OUT $options - fi + fi if [ "$DRYRUN" = "false" ]; then $PERL $THERE/Configure $OUT $options fi diff --git a/deps/openssl/openssl/crypto/aes/asm/vpaes-armv8.pl b/deps/openssl/openssl/crypto/aes/asm/vpaes-armv8.pl index 2e704a21246a..d6b5f561c4cf 100755 --- a/deps/openssl/openssl/crypto/aes/asm/vpaes-armv8.pl +++ b/deps/openssl/openssl/crypto/aes/asm/vpaes-armv8.pl @@ -769,7 +769,7 @@ ld1 {v0.16b}, [$inp] // vmovdqu 16(%rdi),%xmm0 # load key part 2 (unaligned) bl _vpaes_schedule_transform // input transform mov $inp, #7 // mov \$7, %esi - + .Loop_schedule_256: sub $inp, $inp, #1 // dec %esi bl _vpaes_schedule_mangle // output low result @@ -778,7 +778,7 @@ // high round bl _vpaes_schedule_round cbz $inp, .Lschedule_mangle_last - bl _vpaes_schedule_mangle + bl _vpaes_schedule_mangle // low round. swap xmm7 and xmm6 dup v0.4s, v0.s[3] // vpshufd \$0xFF, %xmm0, %xmm0 @@ -787,7 +787,7 @@ mov v7.16b, v6.16b // vmovdqa %xmm6, %xmm7 bl _vpaes_schedule_low_round mov v7.16b, v5.16b // vmovdqa %xmm5, %xmm7 - + b .Loop_schedule_256 ## @@ -814,7 +814,7 @@ .Lschedule_mangle_last_dec: ld1 {v20.2d-v21.2d}, [x11] // reload constants - sub $out, $out, #16 // add \$-16, %rdx + sub $out, $out, #16 // add \$-16, %rdx eor v0.16b, v0.16b, v16.16b // vpxor .Lk_s63(%rip), %xmm0, %xmm0 bl _vpaes_schedule_transform // output transform st1 {v0.2d}, [$out] // vmovdqu %xmm0, (%rdx) # save last key diff --git a/deps/openssl/openssl/crypto/arm_arch.h b/deps/openssl/openssl/crypto/arm_arch.h index 3fc9e69b1c0a..25419e0df17d 100644 --- a/deps/openssl/openssl/crypto/arm_arch.h +++ b/deps/openssl/openssl/crypto/arm_arch.h @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2011-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 @@ -69,7 +69,7 @@ # endif # endif -# if !__ASSEMBLER__ +# ifndef __ASSEMBLER__ extern unsigned int OPENSSL_armcap_P; # endif diff --git a/deps/openssl/openssl/crypto/armcap.c b/deps/openssl/openssl/crypto/armcap.c index 432a06c0c126..28e97c8c4a04 100644 --- a/deps/openssl/openssl/crypto/armcap.c +++ b/deps/openssl/openssl/crypto/armcap.c @@ -1,5 +1,5 @@ /* - * Copyright 2011-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2011-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 @@ -13,6 +13,7 @@ #include #include #include +#include #include "arm_arch.h" diff --git a/deps/openssl/openssl/crypto/armv4cpuid.pl b/deps/openssl/openssl/crypto/armv4cpuid.pl index f7d31a698ae7..ab007c19c3cd 100644 --- a/deps/openssl/openssl/crypto/armv4cpuid.pl +++ b/deps/openssl/openssl/crypto/armv4cpuid.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -125,7 +125,7 @@ ldmia sp!,{r4,r5} .Lno_data: - neg r0,ip + rsb r0,ip,#0 mov r0,r0,lsr#31 #if __ARM_ARCH__>=5 bx lr diff --git a/deps/openssl/openssl/crypto/asn1/a_object.c b/deps/openssl/openssl/crypto/asn1/a_object.c index 1ec7a7e15f4f..7d332ec2f6e1 100644 --- a/deps/openssl/openssl/crypto/asn1/a_object.c +++ b/deps/openssl/openssl/crypto/asn1/a_object.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -19,7 +19,7 @@ int i2d_ASN1_OBJECT(const ASN1_OBJECT *a, unsigned char **pp) { - unsigned char *p; + unsigned char *p, *allocated = NULL; int objsize; if ((a == NULL) || (a->data == NULL)) @@ -29,13 +29,24 @@ int i2d_ASN1_OBJECT(const ASN1_OBJECT *a, unsigned char **pp) if (pp == NULL || objsize == -1) return objsize; - p = *pp; + if (*pp == NULL) { + if ((p = allocated = OPENSSL_malloc(objsize)) == NULL) { + ASN1err(ASN1_F_I2D_ASN1_OBJECT, ERR_R_MALLOC_FAILURE); + return 0; + } + } else { + p = *pp; + } + ASN1_put_object(&p, 0, a->length, V_ASN1_OBJECT, V_ASN1_UNIVERSAL); memcpy(p, a->data, a->length); - p += a->length; - *pp = p; - return (objsize); + /* + * If a new buffer was allocated, just return it back. + * If not, return the incremented buffer pointer. + */ + *pp = allocated != NULL ? allocated : p + a->length; + return objsize; } int a2d_ASN1_OBJECT(unsigned char *out, int olen, const char *buf, int num) diff --git a/deps/openssl/openssl/crypto/asn1/a_strex.c b/deps/openssl/openssl/crypto/asn1/a_strex.c index b91266b3c52f..207190c52b22 100644 --- a/deps/openssl/openssl/crypto/asn1/a_strex.c +++ b/deps/openssl/openssl/crypto/asn1/a_strex.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-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 @@ -139,7 +139,7 @@ static int do_buf(unsigned char *buf, int buflen, int type, unsigned short flags, char *quotes, char_io *io_ch, void *arg) { - int i, outlen, len; + int i, outlen, len, charwidth; unsigned short orflags; unsigned char *p, *q; unsigned long c; @@ -147,12 +147,32 @@ static int do_buf(unsigned char *buf, int buflen, p = buf; q = buf + buflen; outlen = 0; + charwidth = type & BUF_TYPE_WIDTH_MASK; + + switch (charwidth) { + case 4: + if (buflen & 3) { + ASN1err(ASN1_F_DO_BUF, ASN1_R_INVALID_UNIVERSALSTRING_LENGTH); + return -1; + } + break; + case 2: + if (buflen & 1) { + ASN1err(ASN1_F_DO_BUF, ASN1_R_INVALID_BMPSTRING_LENGTH); + return -1; + } + break; + default: + break; + } + while (p != q) { if (p == buf && flags & ASN1_STRFLGS_ESC_2253) orflags = CHARTYPE_FIRST_ESC_2253; else orflags = 0; - switch (type & BUF_TYPE_WIDTH_MASK) { + + switch (charwidth) { case 4: c = ((unsigned long)*p++) << 24; c |= ((unsigned long)*p++) << 16; @@ -173,6 +193,7 @@ static int do_buf(unsigned char *buf, int buflen, i = UTF8_getc(p, buflen, &c); if (i < 0) return -1; /* Invalid UTF8String */ + buflen -= i; p += i; break; default: @@ -592,53 +613,3 @@ int ASN1_STRING_to_UTF8(unsigned char **out, const ASN1_STRING *in) *out = stmp.data; return stmp.length; } - -/* Return 1 if host is a valid hostname and 0 otherwise */ -int asn1_valid_host(const ASN1_STRING *host) -{ - int hostlen = host->length; - const unsigned char *hostptr = host->data; - int type = host->type; - int i; - signed char width = -1; - unsigned short chflags = 0, prevchflags; - - if (type > 0 && type < 31) - width = tag2nbyte[type]; - if (width == -1 || hostlen == 0) - return 0; - /* Treat UTF8String as width 1 as any MSB set is invalid */ - if (width == 0) - width = 1; - for (i = 0 ; i < hostlen; i+= width) { - prevchflags = chflags; - /* Value must be <= 0x7F: check upper bytes are all zeroes */ - if (width == 4) { - if (*hostptr++ != 0 || *hostptr++ != 0 || *hostptr++ != 0) - return 0; - } else if (width == 2) { - if (*hostptr++ != 0) - return 0; - } - if (*hostptr > 0x7f) - return 0; - chflags = char_type[*hostptr++]; - if (!(chflags & (CHARTYPE_HOST_ANY | CHARTYPE_HOST_WILD))) { - /* Nothing else allowed at start or end of string */ - if (i == 0 || i == hostlen - 1) - return 0; - /* Otherwise invalid if not dot or hyphen */ - if (!(chflags & (CHARTYPE_HOST_DOT | CHARTYPE_HOST_HYPHEN))) - return 0; - /* - * If previous is dot or hyphen then illegal unless both - * are hyphens: as .- -. .. are all illegal - */ - if (prevchflags & (CHARTYPE_HOST_DOT | CHARTYPE_HOST_HYPHEN) - && ((prevchflags & CHARTYPE_HOST_DOT) - || (chflags & CHARTYPE_HOST_DOT))) - return 0; - } - } - return 1; -} diff --git a/deps/openssl/openssl/crypto/asn1/ameth_lib.c b/deps/openssl/openssl/crypto/asn1/ameth_lib.c index b8ba06787763..9b0a2ccb20b7 100644 --- a/deps/openssl/openssl/crypto/asn1/ameth_lib.c +++ b/deps/openssl/openssl/crypto/asn1/ameth_lib.c @@ -255,6 +255,18 @@ EVP_PKEY_ASN1_METHOD *EVP_PKEY_asn1_new(int id, int flags, goto err; } + /* + * One of the following must be true: + * + * pem_str == NULL AND ASN1_PKEY_ALIAS is set + * pem_str != NULL AND ASN1_PKEY_ALIAS is clear + * + * Anything else is an error and may lead to a corrupt ASN1 method table + */ + if (!((pem_str == NULL && (flags & ASN1_PKEY_ALIAS) != 0) + || (pem_str != NULL && (flags & ASN1_PKEY_ALIAS) == 0))) + goto err; + if (pem_str) { ameth->pem_str = OPENSSL_strdup(pem_str); if (!ameth->pem_str) diff --git a/deps/openssl/openssl/crypto/asn1/asn1_err.c b/deps/openssl/openssl/crypto/asn1/asn1_err.c index 8602c408d962..5d895d30095d 100644 --- a/deps/openssl/openssl/crypto/asn1/asn1_err.c +++ b/deps/openssl/openssl/crypto/asn1/asn1_err.c @@ -92,8 +92,10 @@ static ERR_STRING_DATA ASN1_str_functs[] = { {ERR_FUNC(ASN1_F_D2I_AUTOPRIVATEKEY), "d2i_AutoPrivateKey"}, {ERR_FUNC(ASN1_F_D2I_PRIVATEKEY), "d2i_PrivateKey"}, {ERR_FUNC(ASN1_F_D2I_PUBLICKEY), "d2i_PublicKey"}, + {ERR_FUNC(ASN1_F_DO_BUF), "do_buf"}, {ERR_FUNC(ASN1_F_DO_TCREATE), "do_tcreate"}, {ERR_FUNC(ASN1_F_I2D_ASN1_BIO_STREAM), "i2d_ASN1_bio_stream"}, + {ERR_FUNC(ASN1_F_I2D_ASN1_OBJECT), "i2d_ASN1_OBJECT"}, {ERR_FUNC(ASN1_F_I2D_DSA_PUBKEY), "i2d_DSA_PUBKEY"}, {ERR_FUNC(ASN1_F_I2D_EC_PUBKEY), "i2d_EC_PUBKEY"}, {ERR_FUNC(ASN1_F_I2D_PRIVATEKEY), "i2d_PrivateKey"}, diff --git a/deps/openssl/openssl/crypto/asn1/asn_mime.c b/deps/openssl/openssl/crypto/asn1/asn_mime.c index 84475e9470d9..da0085f680cd 100644 --- a/deps/openssl/openssl/crypto/asn1/asn_mime.c +++ b/deps/openssl/openssl/crypto/asn1/asn_mime.c @@ -969,12 +969,14 @@ static int strip_eol(char *linebuf, int *plen, int flags) p = linebuf + len - 1; for (p = linebuf + len - 1; len > 0; len--, p--) { c = *p; - if (c == '\n') + if (c == '\n') { is_eol = 1; - else if (is_eol && flags & SMIME_ASCIICRLF && c < 33) + } else if (is_eol && flags & SMIME_ASCIICRLF && c == 32) { + /* Strip trailing space on a line; 32 == ASCII for ' ' */ continue; - else if (c != '\r') + } else if (c != '\r') { break; + } } *plen = len; return is_eol; diff --git a/deps/openssl/openssl/crypto/asn1/p5_scrypt.c b/deps/openssl/openssl/crypto/asn1/p5_scrypt.c index 4cb783749881..10a736023351 100644 --- a/deps/openssl/openssl/crypto/asn1/p5_scrypt.c +++ b/deps/openssl/openssl/crypto/asn1/p5_scrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -91,7 +91,7 @@ X509_ALGOR *PKCS5_pbe2_set_scrypt(const EVP_CIPHER *cipher, if (EVP_CIPHER_iv_length(cipher)) { if (aiv) memcpy(iv, aiv, EVP_CIPHER_iv_length(cipher)); - else if (RAND_bytes(iv, EVP_CIPHER_iv_length(cipher)) < 0) + else if (RAND_bytes(iv, EVP_CIPHER_iv_length(cipher)) <= 0) goto err; } diff --git a/deps/openssl/openssl/crypto/asn1/tasn_enc.c b/deps/openssl/openssl/crypto/asn1/tasn_enc.c index caa48696da4e..3b723a1845db 100644 --- a/deps/openssl/openssl/crypto/asn1/tasn_enc.c +++ b/deps/openssl/openssl/crypto/asn1/tasn_enc.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-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 @@ -528,6 +528,8 @@ static int asn1_ex_i2c(ASN1_VALUE **pval, unsigned char *cout, int *putype, otmp = (ASN1_OBJECT *)*pval; cont = otmp->data; len = otmp->length; + if (cont == NULL || len == 0) + return -1; break; case V_ASN1_NULL: diff --git a/deps/openssl/openssl/crypto/asn1/tasn_utl.c b/deps/openssl/openssl/crypto/asn1/tasn_utl.c index f79d7d6b447c..832603b1dbcd 100644 --- a/deps/openssl/openssl/crypto/asn1/tasn_utl.c +++ b/deps/openssl/openssl/crypto/asn1/tasn_utl.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-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 @@ -76,7 +76,7 @@ int asn1_do_lock(ASN1_VALUE **pval, int op, const ASN1_ITEM *it) } return 1; } - if (CRYPTO_atomic_add(lck, op, &ret, *lock) < 0) + if (!CRYPTO_atomic_add(lck, op, &ret, *lock)) return -1; /* failed */ #ifdef REF_PRINT fprintf(stderr, "%p:%4d:%s\n", it, *lck, it->sname); diff --git a/deps/openssl/openssl/crypto/asn1/x_int64.c b/deps/openssl/openssl/crypto/asn1/x_int64.c index cbfa78736267..4433167a442c 100644 --- a/deps/openssl/openssl/crypto/asn1/x_int64.c +++ b/deps/openssl/openssl/crypto/asn1/x_int64.c @@ -262,3 +262,4 @@ ASN1_ITEM_start(ZUINT64) ASN1_ITYPE_PRIMITIVE, V_ASN1_INTEGER, NULL, 0, &uint64_pf, INTxx_FLAG_ZERO_DEFAULT, "ZUINT64" ASN1_ITEM_end(ZUINT64) + diff --git a/deps/openssl/openssl/crypto/async/arch/async_null.c b/deps/openssl/openssl/crypto/async/arch/async_null.c index da23c532b4c8..3eaf170f2e50 100644 --- a/deps/openssl/openssl/crypto/async/arch/async_null.c +++ b/deps/openssl/openssl/crypto/async/arch/async_null.c @@ -20,3 +20,4 @@ void async_local_cleanup(void) { } #endif + diff --git a/deps/openssl/openssl/crypto/async/async.c b/deps/openssl/openssl/crypto/async/async.c index 9a4e6b26574f..0862cca21ae2 100644 --- a/deps/openssl/openssl/crypto/async/async.c +++ b/deps/openssl/openssl/crypto/async/async.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -30,11 +30,12 @@ static CRYPTO_THREAD_LOCAL ctxkey; static CRYPTO_THREAD_LOCAL poolkey; -static void async_free_pool_internal(async_pool *pool); - static async_ctx *async_ctx_new(void) { - async_ctx *nctx = NULL; + async_ctx *nctx; + + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) + return NULL; nctx = OPENSSL_malloc(sizeof(async_ctx)); if (nctx == NULL) { @@ -57,9 +58,6 @@ static async_ctx *async_ctx_new(void) async_ctx *async_get_ctx(void) { - if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) - return NULL; - return (async_ctx *)CRYPTO_THREAD_get_local(&ctxkey); } @@ -169,16 +167,19 @@ void async_start_func(void) int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *wctx, int *ret, int (*func)(void *), void *args, size_t size) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return ASYNC_ERR; + + ctx = async_get_ctx(); if (ctx == NULL) ctx = async_ctx_new(); - if (ctx == NULL) { + if (ctx == NULL) return ASYNC_ERR; - } - if (*job) { + if (*job) ctx->currjob = *job; - } for (;;) { if (ctx->currjob != NULL) { @@ -219,9 +220,8 @@ int ASYNC_start_job(ASYNC_JOB **job, ASYNC_WAIT_CTX *wctx, int *ret, } /* Start a new job */ - if ((ctx->currjob = async_get_pool_job()) == NULL) { + if ((ctx->currjob = async_get_pool_job()) == NULL) return ASYNC_NO_JOBS; - } if (args != NULL) { ctx->currjob->funcargs = OPENSSL_malloc(size); @@ -323,12 +323,11 @@ int ASYNC_init_thread(size_t max_size, size_t init_size) return 0; } - if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) { + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) return 0; - } - if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) { + + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ASYNC)) return 0; - } pool = OPENSSL_zalloc(sizeof(*pool)); if (pool == NULL) { @@ -369,32 +368,41 @@ int ASYNC_init_thread(size_t max_size, size_t init_size) return 1; err: - async_free_pool_internal(pool); + async_empty_pool(pool); + sk_ASYNC_JOB_free(pool->jobs); + OPENSSL_free(pool); return 0; } -static void async_free_pool_internal(async_pool *pool) +void async_delete_thread_state(void) { - if (pool == NULL) - return; + async_pool *pool = (async_pool *)CRYPTO_THREAD_get_local(&poolkey); - async_empty_pool(pool); - sk_ASYNC_JOB_free(pool->jobs); - OPENSSL_free(pool); - CRYPTO_THREAD_set_local(&poolkey, NULL); + if (pool != NULL) { + async_empty_pool(pool); + sk_ASYNC_JOB_free(pool->jobs); + OPENSSL_free(pool); + CRYPTO_THREAD_set_local(&poolkey, NULL); + } async_local_cleanup(); async_ctx_free(); } void ASYNC_cleanup_thread(void) { - async_free_pool_internal((async_pool *)CRYPTO_THREAD_get_local(&poolkey)); + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + async_delete_thread_state(); } ASYNC_JOB *ASYNC_get_current_job(void) { async_ctx *ctx; + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return NULL; + ctx = async_get_ctx(); if (ctx == NULL) return NULL; @@ -409,7 +417,12 @@ ASYNC_WAIT_CTX *ASYNC_get_wait_ctx(ASYNC_JOB *job) void ASYNC_block_pause(void) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + ctx = async_get_ctx(); if (ctx == NULL || ctx->currjob == NULL) { /* * We're not in a job anyway so ignore this @@ -421,7 +434,12 @@ void ASYNC_block_pause(void) void ASYNC_unblock_pause(void) { - async_ctx *ctx = async_get_ctx(); + async_ctx *ctx; + + if (!OPENSSL_init_crypto(OPENSSL_INIT_ASYNC, NULL)) + return; + + ctx = async_get_ctx(); if (ctx == NULL || ctx->currjob == NULL) { /* * We're not in a job anyway so ignore this diff --git a/deps/openssl/openssl/crypto/async/async_locl.h b/deps/openssl/openssl/crypto/async/async_locl.h index 0fe302a4cebe..f0ac05a3db75 100644 --- a/deps/openssl/openssl/crypto/async/async_locl.h +++ b/deps/openssl/openssl/crypto/async/async_locl.h @@ -74,3 +74,4 @@ void async_start_func(void); async_ctx *async_get_ctx(void); void async_wait_ctx_reset_counts(ASYNC_WAIT_CTX *ctx); + diff --git a/deps/openssl/openssl/crypto/bio/b_addr.c b/deps/openssl/openssl/crypto/bio/b_addr.c index aea843a7b942..6ed1652c8a86 100644 --- a/deps/openssl/openssl/crypto/bio/b_addr.c +++ b/deps/openssl/openssl/crypto/bio/b_addr.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -66,18 +66,18 @@ void BIO_ADDR_clear(BIO_ADDR *ap) int BIO_ADDR_make(BIO_ADDR *ap, const struct sockaddr *sa) { if (sa->sa_family == AF_INET) { - ap->s_in = *(const struct sockaddr_in *)sa; + memcpy(&(ap->s_in), sa, sizeof(struct sockaddr_in)); return 1; } #ifdef AF_INET6 if (sa->sa_family == AF_INET6) { - ap->s_in6 = *(const struct sockaddr_in6 *)sa; + memcpy(&(ap->s_in6), sa, sizeof(struct sockaddr_in6)); return 1; } #endif #ifdef AF_UNIX if (sa->sa_family == AF_UNIX) { - ap->s_un = *(const struct sockaddr_un *)sa; + memcpy(&(ap->s_un), sa, sizeof(struct sockaddr_un)); return 1; } #endif @@ -604,7 +604,8 @@ static int addrinfo_wrap(int family, int socktype, DEFINE_RUN_ONCE_STATIC(do_bio_lookup_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; bio_lookup_lock = CRYPTO_THREAD_lock_new(); return bio_lookup_lock != NULL; } diff --git a/deps/openssl/openssl/crypto/bio/b_sock.c b/deps/openssl/openssl/crypto/bio/b_sock.c index 97dcc7005efe..fac1432787dc 100644 --- a/deps/openssl/openssl/crypto/bio/b_sock.c +++ b/deps/openssl/openssl/crypto/bio/b_sock.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -317,7 +317,7 @@ int BIO_socket_nbio(int s, int mode) l = fcntl(s, F_GETFL, 0); if (l == -1) { - SYSerr(SYS_F_FCNTL, get_last_rtl_error()); + SYSerr(SYS_F_FCNTL, get_last_sys_error()); ret = -1; } else { # if defined(O_NONBLOCK) @@ -335,7 +335,7 @@ int BIO_socket_nbio(int s, int mode) ret = fcntl(s, F_SETFL, l); if (ret < 0) { - SYSerr(SYS_F_FCNTL, get_last_rtl_error()); + SYSerr(SYS_F_FCNTL, get_last_sys_error()); } } # else diff --git a/deps/openssl/openssl/crypto/bio/bio_lcl.h b/deps/openssl/openssl/crypto/bio/bio_lcl.h index 5f4b94f40bf6..39178cf50a24 100644 --- a/deps/openssl/openssl/crypto/bio/bio_lcl.h +++ b/deps/openssl/openssl/crypto/bio/bio_lcl.h @@ -185,3 +185,4 @@ void bio_sock_cleanup_int(void); # endif #endif + diff --git a/deps/openssl/openssl/crypto/bio/bio_meth.c b/deps/openssl/openssl/crypto/bio/bio_meth.c index 1e785d348f11..63a7cccc827f 100644 --- a/deps/openssl/openssl/crypto/bio/bio_meth.c +++ b/deps/openssl/openssl/crypto/bio/bio_meth.c @@ -43,6 +43,7 @@ BIO_METHOD *BIO_meth_new(int type, const char *name) BIOerr(BIO_F_BIO_METH_NEW, ERR_R_MALLOC_FAILURE); return NULL; } + biom->type = type; return biom; } @@ -54,7 +55,7 @@ void BIO_meth_free(BIO_METHOD *biom) } } -int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int) +int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int) { return biom->bwrite; } @@ -66,7 +67,7 @@ int BIO_meth_set_write(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int) +int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int) { return biom->bread; } @@ -78,7 +79,7 @@ int BIO_meth_set_read(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_puts(BIO_METHOD *biom)) (BIO *, const char *) +int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *) { return biom->bputs; } @@ -90,7 +91,7 @@ int BIO_meth_set_puts(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_gets(BIO_METHOD *biom)) (BIO *, char *, int) +int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int) { return biom->bgets; } @@ -102,7 +103,7 @@ int BIO_meth_set_gets(BIO_METHOD *biom, return 1; } -long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *) +long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *) { return biom->ctrl; } @@ -114,7 +115,7 @@ int BIO_meth_set_ctrl(BIO_METHOD *biom, return 1; } -int (*BIO_meth_get_create(BIO_METHOD *biom)) (BIO *) +int (*BIO_meth_get_create(const BIO_METHOD *biom)) (BIO *) { return biom->create; } @@ -125,7 +126,7 @@ int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)) return 1; } -int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *) +int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *) { return biom->destroy; } @@ -136,7 +137,7 @@ int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)) return 1; } -long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *) +long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *) { return biom->callback_ctrl; } diff --git a/deps/openssl/openssl/crypto/bio/bss_log.c b/deps/openssl/openssl/crypto/bio/bss_log.c index 5221acc2e3bc..4719a5e66a68 100644 --- a/deps/openssl/openssl/crypto/bio/bss_log.c +++ b/deps/openssl/openssl/crypto/bio/bss_log.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-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 @@ -196,7 +196,7 @@ static int slg_write(BIO *b, const char *in, int inl) if ((buf = OPENSSL_malloc(inl + 1)) == NULL) { return (0); } - strncpy(buf, in, inl); + memcpy(buf, in, inl); buf[inl] = '\0'; i = 0; diff --git a/deps/openssl/openssl/crypto/bio/bss_mem.c b/deps/openssl/openssl/crypto/bio/bss_mem.c index ff9a3ebb413f..4c0e4d7412df 100644 --- a/deps/openssl/openssl/crypto/bio/bss_mem.c +++ b/deps/openssl/openssl/crypto/bio/bss_mem.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -212,6 +212,8 @@ static int mem_write(BIO *b, const char *in, int inl) goto end; } BIO_clear_retry_flags(b); + if (inl == 0) + return 0; blen = bbm->readp->length; mem_buf_sync(b); if (BUF_MEM_grow_clean(bbm->buf, blen + inl) == 0) diff --git a/deps/openssl/openssl/crypto/bn/asm/alpha-mont.pl b/deps/openssl/openssl/crypto/bn/asm/alpha-mont.pl index 1d68d6d07215..96321330904d 100644 --- a/deps/openssl/openssl/crypto/bn/asm/alpha-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/alpha-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2006-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 @@ -297,15 +297,12 @@ mov sp,$tp mov $bp,$rp # restore rp - and sp,$hi0,$ap - bic $bp,$hi0,$bp - bis $bp,$ap,$ap # ap=borrow?tp:rp - .align 4 -.Lcopy: ldq $aj,0($ap) # copy or in-place refresh +.Lcopy: ldq $aj,0($tp) # conditional copy + ldq $nj,0($rp) lda $tp,8($tp) lda $rp,8($rp) - lda $ap,8($ap) + cmoveq $hi0,$nj,$aj stq zero,-8($tp) # zap tp cmpult $tp,$tj,AT stq $aj,-8($rp) diff --git a/deps/openssl/openssl/crypto/bn/asm/armv4-mont.pl b/deps/openssl/openssl/crypto/bn/asm/armv4-mont.pl index 0dc4fe95e439..ddee8b7fa14e 100644 --- a/deps/openssl/openssl/crypto/bn/asm/armv4-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/armv4-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -262,14 +262,15 @@ mov $tp,sp @ "rewind" $tp sub $rp,$rp,$aj @ "rewind" $rp - and $ap,$tp,$nhi - bic $np,$rp,$nhi - orr $ap,$ap,$np @ ap=borrow?tp:rp - -.Lcopy: ldr $tj,[$ap],#4 @ copy or in-place refresh +.Lcopy: ldr $tj,[$tp] @ conditional copy + ldr $aj,[$rp] str sp,[$tp],#4 @ zap tp - str $tj,[$rp],#4 - cmp $tp,$num +#ifdef __thumb2__ + it cc +#endif + movcc $aj,$tj + str $aj,[$rp],#4 + teq $tp,$num @ preserve carry bne .Lcopy mov sp,$num diff --git a/deps/openssl/openssl/crypto/bn/asm/ia64-mont.pl b/deps/openssl/openssl/crypto/bn/asm/ia64-mont.pl index 5cc5c599f9de..0df1fad115bc 100644 --- a/deps/openssl/openssl/crypto/bn/asm/ia64-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/ia64-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2010-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 @@ -341,19 +341,19 @@ { .mmb; sub rptr=rptr,len // rewind sub tptr=tptr,len clrrrb.pr };; -{ .mmi; and aptr=tptr,topbit - andcm bptr=rptr,topbit +{ .mmi; mov aptr=rptr + mov bptr=tptr mov pr.rot=1<<16 };; -{ .mii; or nptr=aptr,bptr +{ .mii; cmp.eq p0,p6=topbit,r0 mov ar.lc=lc - mov ar.ec=3 };; + mov ar.ec=2 };; .Lcopy_ctop: -{ .mmb; (p16) ld8 n[0]=[nptr],8 - (p18) st8 [tptr]=r0,8 - (p16) nop.b 0 } -{ .mmb; (p16) nop.m 0 - (p18) st8 [rptr]=n[2],8 +{ .mmi; (p16) ld8 a[0]=[aptr],8 + (p16) ld8 t[0]=[bptr],8 + (p6) mov a[1]=t[1] };; // (p17) +{ .mmb; (p17) st8 [rptr]=a[1],8 + (p17) st8 [tptr]=r0,8 br.ctop.sptk .Lcopy_ctop };; .Lcopy_cend: diff --git a/deps/openssl/openssl/crypto/bn/asm/mips-mont.pl b/deps/openssl/openssl/crypto/bn/asm/mips-mont.pl index a907571bec3f..e141e1a92524 100644 --- a/deps/openssl/openssl/crypto/bn/asm/mips-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/mips-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2010-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 @@ -384,15 +384,13 @@ $PTR_SUB $rp,$num # restore rp not $hi1,$hi0 - and $ap,$hi0,$sp - and $bp,$hi1,$rp - or $ap,$ap,$bp # ap=borrow?tp:rp - -.align 4 -.Lcopy: $LD $aj,($ap) - $PTR_ADD $ap,$BNSZ +.Lcopy: $LD $nj,($tp) # conditional move + $LD $aj,($rp) $ST $zero,($tp) $PTR_ADD $tp,$BNSZ + and $nj,$hi0 + and $aj,$hi1 + or $aj,$nj sltu $at,$tp,$tj $ST $aj,($rp) bnez $at,.Lcopy diff --git a/deps/openssl/openssl/crypto/bn/asm/parisc-mont.pl b/deps/openssl/openssl/crypto/bn/asm/parisc-mont.pl index 8aa94e8511c9..cd9926a25f8a 100644 --- a/deps/openssl/openssl/crypto/bn/asm/parisc-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/parisc-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2009-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2009-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 @@ -517,7 +517,6 @@ stws,ma $hi1,4($rp) subb $ti0,%r0,$hi1 - ldo -4($tp),$tp ___ $code.=<<___ if ($BN_SZ==8); ldd,ma 8($tp),$ti0 @@ -532,21 +531,19 @@ extrd,u $ti0,31,32,$ti0 ; carry in flipped word order sub,db $ti0,%r0,$hi1 - ldo -8($tp),$tp ___ $code.=<<___; - and $tp,$hi1,$ap - andcm $rp,$hi1,$bp - or $ap,$bp,$np - + ldo `$LOCALS+32`($fp),$tp sub $rp,$arrsz,$rp ; rewind rp subi 0,$arrsz,$idx - ldo `$LOCALS+32`($fp),$tp L\$copy - ldd $idx($np),$hi0 + ldd 0($tp),$ti0 + ldd 0($rp),$hi0 std,ma %r0,8($tp) - addib,<> 8,$idx,.-8 ; L\$copy - std,ma $hi0,8($rp) + comiclr,= 0,$hi1,%r0 + copy $ti0,$hi0 + addib,<> 8,$idx,L\$copy + std,ma $hi0,8($rp) ___ if ($BN_SZ==4) { # PA-RISC 1.1 code-path @@ -856,17 +853,16 @@ stws,ma $hi1,4($rp) subb $ti0,%r0,$hi1 - ldo -4($tp),$tp - and $tp,$hi1,$ap - andcm $rp,$hi1,$bp - or $ap,$bp,$np + ldo `$LOCALS+32`($fp),$tp sub $rp,$arrsz,$rp ; rewind rp subi 0,$arrsz,$idx - ldo `$LOCALS+32`($fp),$tp L\$copy_pa11 - ldwx $idx($np),$hi0 + ldw 0($tp),$ti0 + ldw 0($rp),$hi0 stws,ma %r0,4($tp) + comiclr,= 0,$hi1,%r0 + copy $ti0,$hi0 addib,<> 4,$idx,L\$copy_pa11 stws,ma $hi0,4($rp) diff --git a/deps/openssl/openssl/crypto/bn/asm/ppc-mont.pl b/deps/openssl/openssl/crypto/bn/asm/ppc-mont.pl index 5802260ca680..9d14a121565a 100644 --- a/deps/openssl/openssl/crypto/bn/asm/ppc-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/ppc-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2006-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 @@ -301,15 +301,16 @@ li $j,0 mtctr $num subfe $ovf,$j,$ovf ; handle upmost overflow bit - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp .align 4 -Lcopy: ; copy or in-place refresh - $LDX $tj,$ap,$j - $STX $tj,$rp,$j +Lcopy: ; conditional copy + $LDX $tj,$tp,$j + $LDX $aj,$rp,$j + and $tj,$tj,$ovf + andc $aj,$aj,$ovf $STX $j,$tp,$j ; zap at once + or $aj,$aj,$tj + $STX $aj,$rp,$j addi $j,$j,$BNSZ bdnz Lcopy diff --git a/deps/openssl/openssl/crypto/bn/asm/ppc64-mont.pl b/deps/openssl/openssl/crypto/bn/asm/ppc64-mont.pl index 1e19c958a16f..5d9f43aa5dbe 100644 --- a/deps/openssl/openssl/crypto/bn/asm/ppc64-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/ppc64-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -1501,16 +1501,14 @@ li $i,0 subfe $ovf,$i,$ovf ; handle upmost overflow bit - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp - addi $t7,$ap,8 mtctr $j .align 4 -Lcopy: ; copy or in-place refresh - ldx $t0,$ap,$i - ldx $t1,$t7,$i +Lcopy: ; conditional copy + ldx $t0,$tp,$i + ldx $t1,$t4,$i + ldx $t2,$rp,$i + ldx $t3,$t6,$i std $i,8($nap_d) ; zap nap_d std $i,16($nap_d) std $i,24($nap_d) @@ -1519,6 +1517,12 @@ std $i,48($nap_d) std $i,56($nap_d) stdu $i,64($nap_d) + and $t0,$t0,$ovf + and $t1,$t1,$ovf + andc $t2,$t2,$ovf + andc $t3,$t3,$ovf + or $t0,$t0,$t2 + or $t1,$t1,$t3 stdx $t0,$rp,$i stdx $t1,$t6,$i stdx $i,$tp,$i ; zap tp at once @@ -1561,20 +1565,21 @@ li $i,0 subfe $ovf,$i,$ovf ; handle upmost overflow bit - addi $tp,$sp,`$FRAME+$TRANSFER+4` + addi $ap,$sp,`$FRAME+$TRANSFER+4` subf $rp,$num,$rp ; rewind rp - and $ap,$tp,$ovf - andc $np,$rp,$ovf - or $ap,$ap,$np ; ap=borrow?tp:rp addi $tp,$sp,`$FRAME+$TRANSFER` mtctr $j .align 4 -Lcopy: ; copy or in-place refresh +Lcopy: ; conditional copy lwz $t0,4($ap) lwz $t1,8($ap) lwz $t2,12($ap) lwzu $t3,16($ap) + lwz $t4,4($rp) + lwz $t5,8($rp) + lwz $t6,12($rp) + lwz $t7,16($rp) std $i,8($nap_d) ; zap nap_d std $i,16($nap_d) std $i,24($nap_d) @@ -1583,6 +1588,18 @@ std $i,48($nap_d) std $i,56($nap_d) stdu $i,64($nap_d) + and $t0,$t0,$ovf + and $t1,$t1,$ovf + and $t2,$t2,$ovf + and $t3,$t3,$ovf + andc $t4,$t4,$ovf + andc $t5,$t5,$ovf + andc $t6,$t6,$ovf + andc $t7,$t7,$ovf + or $t0,$t0,$t4 + or $t1,$t1,$t5 + or $t2,$t2,$t6 + or $t3,$t3,$t7 stw $t0,4($rp) stw $t1,8($rp) stw $t2,12($rp) diff --git a/deps/openssl/openssl/crypto/bn/asm/rsaz-avx2.pl b/deps/openssl/openssl/crypto/bn/asm/rsaz-avx2.pl index 46d746b7d0e7..0466e11a2518 100755 --- a/deps/openssl/openssl/crypto/bn/asm/rsaz-avx2.pl +++ b/deps/openssl/openssl/crypto/bn/asm/rsaz-avx2.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2013-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2013-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 @@ -104,7 +104,7 @@ $addx = ($1>=11); } -if (!$avx && `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9])\.([0-9]+)/) { +if (!$avx && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9])\.([0-9]+)/) { my $ver = $2 + $3/100.0; # 3.1->3.01, 3.10->3.10 $avx = ($ver>=3.0) + ($ver>=3.01); $addx = ($ver>=3.03); diff --git a/deps/openssl/openssl/crypto/bn/asm/s390x-mont.pl b/deps/openssl/openssl/crypto/bn/asm/s390x-mont.pl index 2205bc2ca043..66780cdf80bc 100644 --- a/deps/openssl/openssl/crypto/bn/asm/s390x-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/s390x-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -252,16 +252,16 @@ brct $count,.Lsub lghi $ahi,0 slbgr $AHI,$ahi # handle upmost carry - - ngr $ap,$AHI - lghi $np,-1 - xgr $np,$AHI - ngr $np,$rp - ogr $ap,$np # ap=borrow?tp:rp + lghi $NHI,-1 + xgr $NHI,$AHI la $j,0(%r0) lgr $count,$num -.Lcopy: lg $alo,0($j,$ap) # copy or in-place refresh +.Lcopy: lg $ahi,$stdframe($j,$sp) # conditional copy + lg $alo,0($j,$rp) + ngr $ahi,$AHI + ngr $alo,$NHI + ogr $alo,$ahi _dswap $alo stg $j,$stdframe($j,$sp) # zap tp stg $alo,0($j,$rp) diff --git a/deps/openssl/openssl/crypto/bn/asm/sparct4-mont.pl b/deps/openssl/openssl/crypto/bn/asm/sparct4-mont.pl index 4faf66f10a52..4f339b22796e 100755 --- a/deps/openssl/openssl/crypto/bn/asm/sparct4-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/sparct4-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2012-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 @@ -888,19 +888,17 @@ () sub $tp, $num, $tp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy sub $num, 8, $cnt .align 16 -.Lcopy: ! copy or in-place refresh - ldx [$ap+0], $t2 - add $ap, 8, $ap +.Lcopy: ! conditional copy + ldx [$tp], $tj + ldx [$rp+0], $t2 stx %g0, [$tp] ! zap add $tp, 8, $tp + movcs %icc, $tj, $t2 stx $t2, [$rp+0] add $rp, 8, $rp brnz $cnt, .Lcopy @@ -1136,19 +1134,17 @@ () sub $tp, $num, $tp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy_g5 sub $num, 8, $cnt .align 16 -.Lcopy_g5: ! copy or in-place refresh - ldx [$ap+0], $t2 - add $ap, 8, $ap +.Lcopy_g5: ! conditional copy + ldx [$tp], $tj + ldx [$rp+0], $t2 stx %g0, [$tp] ! zap add $tp, 8, $tp + movcs %icc, $tj, $t2 stx $t2, [$rp+0] add $rp, 8, $rp brnz $cnt, .Lcopy_g5 diff --git a/deps/openssl/openssl/crypto/bn/asm/sparcv9-mont.pl b/deps/openssl/openssl/crypto/bn/asm/sparcv9-mont.pl index 6807c8b6e0b9..074f9df14bc2 100644 --- a/deps/openssl/openssl/crypto/bn/asm/sparcv9-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/sparcv9-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2005-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 @@ -265,7 +265,6 @@ .Ltail: add $np,$num,$np add $rp,$num,$rp - mov $tp,$ap sub %g0,$num,%o7 ! k=-num ba .Lsub subcc %g0,%g0,%g0 ! clear %icc.c @@ -278,15 +277,14 @@ add %o7,4,%o7 brnz %o7,.Lsub st %o1,[$i] - subc $car2,0,$car2 ! handle upmost overflow bit - and $tp,$car2,$ap - andn $rp,$car2,$np - or $ap,$np,$ap + subccc $car2,0,$car2 ! handle upmost overflow bit sub %g0,$num,%o7 .Lcopy: - ld [$ap+%o7],%o0 ! copy or in-place refresh + ld [$tp+%o7],%o1 ! conditional copy + ld [$rp+%o7],%o0 st %g0,[$tp+%o7] ! zap tp + movcs %icc,%o1,%o0 st %o0,[$rp+%o7] add %o7,4,%o7 brnz %o7,.Lcopy @@ -495,6 +493,9 @@ mulx $npj,$mul1,$acc1 add $tpj,$car1,$car1 ld [$np+$j],$npj ! np[j] + srlx $car1,32,$tmp0 + and $car1,$mask,$car1 + add $tmp0,$sbit,$sbit add $acc0,$car1,$car1 ld [$tp+8],$tpj ! tp[j] add $acc1,$car1,$car1 diff --git a/deps/openssl/openssl/crypto/bn/asm/via-mont.pl b/deps/openssl/openssl/crypto/bn/asm/via-mont.pl index 9f81bc822e8a..9d65a146a280 100644 --- a/deps/openssl/openssl/crypto/bn/asm/via-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/via-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2006-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 @@ -213,18 +213,15 @@ &mov ("eax",&DWP(0,"esi","edx",4)); # upmost overflow bit &sbb ("eax",0); - &and ("esi","eax"); - ¬ ("eax"); - &mov ("ebp","edi"); - &and ("ebp","eax"); - &or ("esi","ebp"); # tp=carry?tp:rp &mov ("ecx","edx"); # num - &xor ("edx","edx"); # i=0 + &mov ("edx",0); # i=0 &set_label("copy",8); - &mov ("eax",&DWP(0,"esi","edx",4)); - &mov (&DWP(64,"esp","edx",4),"ecx"); # zap tp + &mov ("ebx",&DWP(0,"esi","edx",4)); + &mov ("eax",&DWP(0,"edi","edx",4)); + &mov (&DWP(0,"esi","edx",4),"ecx"); # zap tp + &cmovc ("eax","ebx"); &mov (&DWP(0,"edi","edx",4),"eax"); &lea ("edx",&DWP(1,"edx")); # i++ &loop (&label("copy")); diff --git a/deps/openssl/openssl/crypto/bn/asm/vis3-mont.pl b/deps/openssl/openssl/crypto/bn/asm/vis3-mont.pl index 64dba4480fbe..ba34b36a81ec 100644 --- a/deps/openssl/openssl/crypto/bn/asm/vis3-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/vis3-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2012-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 @@ -310,23 +310,23 @@ sub $anp, $num, $anp sub $rp, $num, $rp - subc $ovf, %g0, $ovf ! handle upmost overflow bit - and $tp, $ovf, $ap - andn $rp, $ovf, $np - or $np, $ap, $ap ! ap=borrow?tp:rp + subccc $ovf, %g0, $ovf ! handle upmost overflow bit ba .Lcopy sub $num, 8, $cnt .align 16 -.Lcopy: ! copy or in-place refresh - ld [$ap+0], $t2 - ld [$ap+4], $t3 - add $ap, 8, $ap +.Lcopy: ! conditional copy + ld [$tp+0], $t0 + ld [$tp+4], $t1 + ld [$rp+0], $t2 + ld [$rp+4], $t3 stx %g0, [$tp] ! zap add $tp, 8, $tp stx %g0, [$anp] ! zap stx %g0, [$anp+8] add $anp, 16, $anp + movcs %icc, $t0, $t2 + movcs %icc, $t1, $t3 st $t3, [$rp+0] ! flip order st $t2, [$rp+4] add $rp, 8, $rp diff --git a/deps/openssl/openssl/crypto/bn/asm/x86-mont.pl b/deps/openssl/openssl/crypto/bn/asm/x86-mont.pl index a8b402d59b34..f1abcc5b4c4b 100755 --- a/deps/openssl/openssl/crypto/bn/asm/x86-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/x86-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2005-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 @@ -39,7 +39,7 @@ $output = pop; open STDOUT,">$output"; - + &asm_init($ARGV[0],$0); $sse2=0; @@ -604,16 +604,18 @@ &jge (&label("sub")); &sbb ("eax",0); # handle upmost overflow bit - &and ($tp,"eax"); - ¬ ("eax"); - &mov ($np,$rp); - &and ($np,"eax"); - &or ($tp,$np); # tp=carry?tp:rp - -&set_label("copy",16); # copy or in-place refresh - &mov ("eax",&DWP(0,$tp,$num,4)); - &mov (&DWP(0,$rp,$num,4),"eax"); # rp[i]=tp[i] + &mov ("edx",-1); + &xor ("edx","eax"); + &jmp (&label("copy")); + +&set_label("copy",16); # conditional copy + &mov ($tp,&DWP($frame,"esp",$num,4)); + &mov ($np,&DWP(0,$rp,$num,4)); &mov (&DWP($frame,"esp",$num,4),$j); # zap temporary vector + &and ($tp,"eax"); + &and ($np,"edx"); + &or ($np,$tp); + &mov (&DWP(0,$rp,$num,4),$np); &dec ($num); &jge (&label("copy")); diff --git a/deps/openssl/openssl/crypto/bn/asm/x86_64-mont.pl b/deps/openssl/openssl/crypto/bn/asm/x86_64-mont.pl index df4cca5bfebf..8d2fb2cebb89 100755 --- a/deps/openssl/openssl/crypto/bn/asm/x86_64-mont.pl +++ b/deps/openssl/openssl/crypto/bn/asm/x86_64-mont.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2005-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 @@ -302,30 +302,30 @@ xor $i,$i # i=0 and clear CF! mov (%rsp),%rax # tp[0] - lea (%rsp),$ap # borrow ap for tp mov $num,$j # j=num - jmp .Lsub + .align 16 .Lsub: sbb ($np,$i,8),%rax mov %rax,($rp,$i,8) # rp[i]=tp[i]-np[i] - mov 8($ap,$i,8),%rax # tp[i+1] + mov 8(%rsp,$i,8),%rax # tp[i+1] lea 1($i),$i # i++ dec $j # doesnn't affect CF! jnz .Lsub sbb \$0,%rax # handle upmost overflow bit + mov \$-1,%rbx + xor %rax,%rbx # not %rax xor $i,$i - and %rax,$ap - not %rax - mov $rp,$np - and %rax,$np mov $num,$j # j=num - or $np,$ap # ap=borrow?tp:rp -.align 16 -.Lcopy: # copy or in-place refresh - mov ($ap,$i,8),%rax - mov $i,(%rsp,$i,8) # zap temporary vector - mov %rax,($rp,$i,8) # rp[i]=tp[i] + +.Lcopy: # conditional copy + mov ($rp,$i,8),%rcx + mov (%rsp,$i,8),%rdx + and %rbx,%rcx + and %rax,%rdx + mov $num,(%rsp,$i,8) # zap temporary vector + or %rcx,%rdx + mov %rdx,($rp,$i,8) # rp[i]=tp[i] lea 1($i),$i sub \$1,$j jnz .Lcopy @@ -695,10 +695,10 @@ my @ri=("%rax","%rdx",$m0,$m1); $code.=<<___; mov 16(%rsp,$num,8),$rp # restore $rp + lea -4($num),$j mov 0(%rsp),@ri[0] # tp[0] - pxor %xmm0,%xmm0 mov 8(%rsp),@ri[1] # tp[1] - shr \$2,$num # num/=4 + shr \$2,$j # j=num/4-1 lea (%rsp),$ap # borrow ap for tp xor $i,$i # i=0 and clear CF! @@ -706,9 +706,7 @@ mov 16($ap),@ri[2] # tp[2] mov 24($ap),@ri[3] # tp[3] sbb 8($np),@ri[1] - lea -1($num),$j # j=num/4-1 - jmp .Lsub4x -.align 16 + .Lsub4x: mov @ri[0],0($rp,$i,8) # rp[i]=tp[i]-np[i] mov @ri[1],8($rp,$i,8) # rp[i]=tp[i]-np[i] @@ -735,34 +733,35 @@ sbb \$0,@ri[0] # handle upmost overflow bit mov @ri[3],24($rp,$i,8) # rp[i]=tp[i]-np[i] - xor $i,$i # i=0 - and @ri[0],$ap - not @ri[0] - mov $rp,$np - and @ri[0],$np - lea -1($num),$j - or $np,$ap # ap=borrow?tp:rp - - movdqu ($ap),%xmm1 - movdqa %xmm0,(%rsp) - movdqu %xmm1,($rp) + pxor %xmm0,%xmm0 + movq @ri[0],%xmm4 + pcmpeqd %xmm5,%xmm5 + pshufd \$0,%xmm4,%xmm4 + mov $num,$j + pxor %xmm4,%xmm5 + shr \$2,$j # j=num/4 + xor %eax,%eax # i=0 + jmp .Lcopy4x .align 16 -.Lcopy4x: # copy or in-place refresh - movdqu 16($ap,$i),%xmm2 - movdqu 32($ap,$i),%xmm1 - movdqa %xmm0,16(%rsp,$i) - movdqu %xmm2,16($rp,$i) - movdqa %xmm0,32(%rsp,$i) - movdqu %xmm1,32($rp,$i) - lea 32($i),$i +.Lcopy4x: # conditional copy + movdqa (%rsp,%rax),%xmm1 + movdqu ($rp,%rax),%xmm2 + pand %xmm4,%xmm1 + pand %xmm5,%xmm2 + movdqa 16(%rsp,%rax),%xmm3 + movdqa %xmm0,(%rsp,%rax) + por %xmm2,%xmm1 + movdqu 16($rp,%rax),%xmm2 + movdqu %xmm1,($rp,%rax) + pand %xmm4,%xmm3 + pand %xmm5,%xmm2 + movdqa %xmm0,16(%rsp,%rax) + por %xmm2,%xmm3 + movdqu %xmm3,16($rp,%rax) + lea 32(%rax),%rax dec $j jnz .Lcopy4x - - shl \$2,$num - movdqu 16($ap,$i),%xmm2 - movdqa %xmm0,16(%rsp,$i) - movdqu %xmm2,16($rp,$i) ___ } $code.=<<___; diff --git a/deps/openssl/openssl/crypto/bn/asm/x86_64-mont5.pl b/deps/openssl/openssl/crypto/bn/asm/x86_64-mont5.pl index 5779059ea268..97d8eee700b6 100755 --- a/deps/openssl/openssl/crypto/bn/asm/x86_64-mont5.pl +++ b/deps/openssl/openssl/crypto/bn/asm/x86_64-mont5.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2011-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 @@ -414,18 +414,19 @@ jnz .Lsub sbb \$0,%rax # handle upmost overflow bit + mov \$-1,%rbx + xor %rax,%rbx xor $i,$i - and %rax,$ap - not %rax - mov $rp,$np - and %rax,$np mov $num,$j # j=num - or $np,$ap # ap=borrow?tp:rp -.align 16 -.Lcopy: # copy or in-place refresh - mov ($ap,$i,8),%rax + +.Lcopy: # conditional copy + mov ($rp,$i,8),%rcx + mov (%rsp,$i,8),%rdx + and %rbx,%rcx + and %rax,%rdx mov $i,(%rsp,$i,8) # zap temporary vector - mov %rax,($rp,$i,8) # rp[i]=tp[i] + or %rcx,%rdx + mov %rdx,($rp,$i,8) # rp[i]=tp[i] lea 1($i),$i sub \$1,$j jnz .Lcopy diff --git a/deps/openssl/openssl/crypto/bn/bn_div.c b/deps/openssl/openssl/crypto/bn/bn_div.c index 5e620b2096ca..884ff2991702 100644 --- a/deps/openssl/openssl/crypto/bn/bn_div.c +++ b/deps/openssl/openssl/crypto/bn/bn_div.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -240,6 +240,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor, wnum.neg = 0; wnum.d = &(snum->d[loop]); wnum.top = div_n; + wnum.flags = BN_FLG_STATIC_DATA; /* * only needed when BN_ucmp messes up the values between top and max */ diff --git a/deps/openssl/openssl/crypto/bn/bn_exp.c b/deps/openssl/openssl/crypto/bn/bn_exp.c index 0d2d1eca6bb2..a6ad475a0b26 100644 --- a/deps/openssl/openssl/crypto/bn/bn_exp.c +++ b/deps/openssl/openssl/crypto/bn/bn_exp.c @@ -188,8 +188,8 @@ int BN_mod_exp_recp(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, bits = BN_num_bits(p); if (bits == 0) { - /* x**0 mod 1 is still zero. */ - if (BN_is_one(m)) { + /* x**0 mod 1, or x**0 mod -1 is still zero. */ + if (BN_abs_is_word(m, 1)) { ret = 1; BN_zero(r); } else { @@ -330,8 +330,8 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, } bits = BN_num_bits(p); if (bits == 0) { - /* x**0 mod 1 is still zero. */ - if (BN_is_one(m)) { + /* x**0 mod 1, or x**0 mod -1 is still zero. */ + if (BN_abs_is_word(m, 1)) { ret = 1; BN_zero(rr); } else { @@ -371,17 +371,17 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, ret = 1; goto err; } - if (!BN_to_montgomery(val[0], aa, mont, ctx)) + if (!bn_to_mont_fixed_top(val[0], aa, mont, ctx)) goto err; /* 1 */ window = BN_window_bits_for_exponent_size(bits); if (window > 1) { - if (!BN_mod_mul_montgomery(d, val[0], val[0], mont, ctx)) + if (!bn_mul_mont_fixed_top(d, val[0], val[0], mont, ctx)) goto err; /* 2 */ j = 1 << (window - 1); for (i = 1; i < j; i++) { if (((val[i] = BN_CTX_get(ctx)) == NULL) || - !BN_mod_mul_montgomery(val[i], val[i - 1], d, mont, ctx)) + !bn_mul_mont_fixed_top(val[i], val[i - 1], d, mont, ctx)) goto err; } } @@ -403,19 +403,15 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, for (i = 1; i < j; i++) r->d[i] = (~m->d[i]) & BN_MASK2; r->top = j; - /* - * Upper words will be zero if the corresponding words of 'm' were - * 0xfff[...], so decrement r->top accordingly. - */ - bn_correct_top(r); + r->flags |= BN_FLG_FIXED_TOP; } else #endif - if (!BN_to_montgomery(r, BN_value_one(), mont, ctx)) + if (!bn_to_mont_fixed_top(r, BN_value_one(), mont, ctx)) goto err; for (;;) { if (BN_is_bit_set(p, wstart) == 0) { if (!start) { - if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) + if (!bn_mul_mont_fixed_top(r, r, r, mont, ctx)) goto err; } if (wstart == 0) @@ -446,12 +442,12 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, /* add the 'bytes above' */ if (!start) for (i = 0; i < j; i++) { - if (!BN_mod_mul_montgomery(r, r, r, mont, ctx)) + if (!bn_mul_mont_fixed_top(r, r, r, mont, ctx)) goto err; } /* wvalue will be an odd number < 2^window */ - if (!BN_mod_mul_montgomery(r, r, val[wvalue >> 1], mont, ctx)) + if (!bn_mul_mont_fixed_top(r, r, val[wvalue >> 1], mont, ctx)) goto err; /* move the 'window' down further */ @@ -461,6 +457,11 @@ int BN_mod_exp_mont(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, if (wstart < 0) break; } + /* + * Done with zero-padded intermediate BIGNUMs. Final BN_from_montgomery + * removes padding [if any] and makes return value suitable for public + * API consumer. + */ #if defined(SPARC_T4_MONT) if (OPENSSL_sparcv9cap_P[0] & (SPARCV9_VIS3 | SPARCV9_PREFER_FPU)) { j = mont->N.top; /* borrow j */ @@ -587,7 +588,7 @@ static int MOD_EXP_CTIME_COPY_FROM_PREBUF(BIGNUM *b, int top, } b->top = top; - bn_correct_top(b); + b->flags |= BN_FLG_FIXED_TOP; return 1; } @@ -639,8 +640,8 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, */ bits = p->top * BN_BITS2; if (bits == 0) { - /* x**0 mod 1 is still zero. */ - if (BN_is_one(m)) { + /* x**0 mod 1, or x**0 mod -1 is still zero. */ + if (BN_abs_is_word(m, 1)) { ret = 1; BN_zero(rr); } else { @@ -757,16 +758,16 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, tmp.top = top; } else #endif - if (!BN_to_montgomery(&tmp, BN_value_one(), mont, ctx)) + if (!bn_to_mont_fixed_top(&tmp, BN_value_one(), mont, ctx)) goto err; /* prepare a^1 in Montgomery domain */ if (a->neg || BN_ucmp(a, m) >= 0) { if (!BN_mod(&am, a, m, ctx)) goto err; - if (!BN_to_montgomery(&am, &am, mont, ctx)) + if (!bn_to_mont_fixed_top(&am, &am, mont, ctx)) goto err; - } else if (!BN_to_montgomery(&am, a, mont, ctx)) + } else if (!bn_to_mont_fixed_top(&am, a, mont, ctx)) goto err; #if defined(SPARC_T4_MONT) @@ -1033,14 +1034,14 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, * performance advantage of sqr over mul). */ if (window > 1) { - if (!BN_mod_mul_montgomery(&tmp, &am, &am, mont, ctx)) + if (!bn_mul_mont_fixed_top(&tmp, &am, &am, mont, ctx)) goto err; if (!MOD_EXP_CTIME_COPY_TO_PREBUF(&tmp, top, powerbuf, 2, window)) goto err; for (i = 3; i < numPowers; i++) { /* Calculate a^i = a^(i-1) * a */ - if (!BN_mod_mul_montgomery(&tmp, &am, &tmp, mont, ctx)) + if (!bn_mul_mont_fixed_top(&tmp, &am, &tmp, mont, ctx)) goto err; if (!MOD_EXP_CTIME_COPY_TO_PREBUF(&tmp, top, powerbuf, i, window)) @@ -1064,7 +1065,7 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, /* Scan the window, squaring the result as we go */ for (i = 0; i < window; i++, bits--) { - if (!BN_mod_mul_montgomery(&tmp, &tmp, &tmp, mont, ctx)) + if (!bn_mul_mont_fixed_top(&tmp, &tmp, &tmp, mont, ctx)) goto err; wvalue = (wvalue << 1) + BN_is_bit_set(p, bits); } @@ -1077,12 +1078,16 @@ int BN_mod_exp_mont_consttime(BIGNUM *rr, const BIGNUM *a, const BIGNUM *p, goto err; /* Multiply the result into the intermediate result */ - if (!BN_mod_mul_montgomery(&tmp, &tmp, &am, mont, ctx)) + if (!bn_mul_mont_fixed_top(&tmp, &tmp, &am, mont, ctx)) goto err; } } - /* Convert the final result from montgomery to standard format */ + /* + * Done with zero-padded intermediate BIGNUMs. Final BN_from_montgomery + * removes padding [if any] and makes return value suitable for public + * API consumer. + */ #if defined(SPARC_T4_MONT) if (OPENSSL_sparcv9cap_P[0] & (SPARCV9_VIS3 | SPARCV9_PREFER_FPU)) { am.d[0] = 1; /* borrow am */ @@ -1151,8 +1156,8 @@ int BN_mod_exp_mont_word(BIGNUM *rr, BN_ULONG a, const BIGNUM *p, bits = BN_num_bits(p); if (bits == 0) { - /* x**0 mod 1 is still zero. */ - if (BN_is_one(m)) { + /* x**0 mod 1, or x**0 mod -1 is still zero. */ + if (BN_abs_is_word(m, 1)) { ret = 1; BN_zero(rr); } else { @@ -1273,9 +1278,9 @@ int BN_mod_exp_simple(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, } bits = BN_num_bits(p); - if (bits == 0) { - /* x**0 mod 1 is still zero. */ - if (BN_is_one(m)) { + if (bits == 0) { + /* x**0 mod 1, or x**0 mod -1 is still zero. */ + if (BN_abs_is_word(m, 1)) { ret = 1; BN_zero(r); } else { diff --git a/deps/openssl/openssl/crypto/bn/bn_gcd.c b/deps/openssl/openssl/crypto/bn/bn_gcd.c index 067642644ec1..bed231c8fa66 100644 --- a/deps/openssl/openssl/crypto/bn/bn_gcd.c +++ b/deps/openssl/openssl/crypto/bn/bn_gcd.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -140,7 +140,14 @@ BIGNUM *int_bn_mod_inverse(BIGNUM *in, BIGNUM *ret = NULL; int sign; - if (pnoinv) + /* This is invalid input so we don't worry about constant time here */ + if (BN_abs_is_word(n, 1) || BN_is_zero(n)) { + if (pnoinv != NULL) + *pnoinv = 1; + return NULL; + } + + if (pnoinv != NULL) *pnoinv = 0; if ((BN_get_flags(a, BN_FLG_CONSTTIME) != 0) diff --git a/deps/openssl/openssl/crypto/bn/bn_gf2m.c b/deps/openssl/openssl/crypto/bn/bn_gf2m.c index b1987f55dd2f..d80f3ec94027 100644 --- a/deps/openssl/openssl/crypto/bn/bn_gf2m.c +++ b/deps/openssl/openssl/crypto/bn/bn_gf2m.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-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 @@ -32,30 +32,32 @@ */ # define MAX_ITERATIONS 50 -static const BN_ULONG SQR_tb[16] = { 0, 1, 4, 5, 16, 17, 20, 21, - 64, 65, 68, 69, 80, 81, 84, 85 -}; +# define SQR_nibble(w) ((((w) & 8) << 3) \ + | (((w) & 4) << 2) \ + | (((w) & 2) << 1) \ + | ((w) & 1)) + /* Platform-specific macros to accelerate squaring. */ # if defined(SIXTY_FOUR_BIT) || defined(SIXTY_FOUR_BIT_LONG) # define SQR1(w) \ - SQR_tb[(w) >> 60 & 0xF] << 56 | SQR_tb[(w) >> 56 & 0xF] << 48 | \ - SQR_tb[(w) >> 52 & 0xF] << 40 | SQR_tb[(w) >> 48 & 0xF] << 32 | \ - SQR_tb[(w) >> 44 & 0xF] << 24 | SQR_tb[(w) >> 40 & 0xF] << 16 | \ - SQR_tb[(w) >> 36 & 0xF] << 8 | SQR_tb[(w) >> 32 & 0xF] + SQR_nibble((w) >> 60) << 56 | SQR_nibble((w) >> 56) << 48 | \ + SQR_nibble((w) >> 52) << 40 | SQR_nibble((w) >> 48) << 32 | \ + SQR_nibble((w) >> 44) << 24 | SQR_nibble((w) >> 40) << 16 | \ + SQR_nibble((w) >> 36) << 8 | SQR_nibble((w) >> 32) # define SQR0(w) \ - SQR_tb[(w) >> 28 & 0xF] << 56 | SQR_tb[(w) >> 24 & 0xF] << 48 | \ - SQR_tb[(w) >> 20 & 0xF] << 40 | SQR_tb[(w) >> 16 & 0xF] << 32 | \ - SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ - SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] + SQR_nibble((w) >> 28) << 56 | SQR_nibble((w) >> 24) << 48 | \ + SQR_nibble((w) >> 20) << 40 | SQR_nibble((w) >> 16) << 32 | \ + SQR_nibble((w) >> 12) << 24 | SQR_nibble((w) >> 8) << 16 | \ + SQR_nibble((w) >> 4) << 8 | SQR_nibble((w) ) # endif # ifdef THIRTY_TWO_BIT # define SQR1(w) \ - SQR_tb[(w) >> 28 & 0xF] << 24 | SQR_tb[(w) >> 24 & 0xF] << 16 | \ - SQR_tb[(w) >> 20 & 0xF] << 8 | SQR_tb[(w) >> 16 & 0xF] + SQR_nibble((w) >> 28) << 24 | SQR_nibble((w) >> 24) << 16 | \ + SQR_nibble((w) >> 20) << 8 | SQR_nibble((w) >> 16) # define SQR0(w) \ - SQR_tb[(w) >> 12 & 0xF] << 24 | SQR_tb[(w) >> 8 & 0xF] << 16 | \ - SQR_tb[(w) >> 4 & 0xF] << 8 | SQR_tb[(w) & 0xF] + SQR_nibble((w) >> 12) << 24 | SQR_nibble((w) >> 8) << 16 | \ + SQR_nibble((w) >> 4) << 8 | SQR_nibble((w) ) # endif # if !defined(OPENSSL_BN_ASM_GF2m) diff --git a/deps/openssl/openssl/crypto/bn/bn_intern.c b/deps/openssl/openssl/crypto/bn/bn_intern.c index 2c970647defd..7b25927f9bca 100644 --- a/deps/openssl/openssl/crypto/bn/bn_intern.c +++ b/deps/openssl/openssl/crypto/bn/bn_intern.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-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 @@ -177,16 +177,20 @@ BN_ULONG *bn_get_words(const BIGNUM *a) return a->d; } -void bn_set_static_words(BIGNUM *a, BN_ULONG *words, int size) +void bn_set_static_words(BIGNUM *a, const BN_ULONG *words, int size) { - a->d = words; + /* + * |const| qualifier omission is compensated by BN_FLG_STATIC_DATA + * flag, which effectively means "read-only data". + */ + a->d = (BN_ULONG *)words; a->dmax = a->top = size; a->neg = 0; a->flags |= BN_FLG_STATIC_DATA; bn_correct_top(a); } -int bn_set_words(BIGNUM *a, BN_ULONG *words, int num_words) +int bn_set_words(BIGNUM *a, const BN_ULONG *words, int num_words) { if (bn_wexpand(a, num_words) == NULL) { BNerr(BN_F_BN_SET_WORDS, ERR_R_MALLOC_FAILURE); diff --git a/deps/openssl/openssl/crypto/bn/bn_lcl.h b/deps/openssl/openssl/crypto/bn/bn_lcl.h index 5fb3814554c3..4d9808f5b8d1 100644 --- a/deps/openssl/openssl/crypto/bn/bn_lcl.h +++ b/deps/openssl/openssl/crypto/bn/bn_lcl.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -145,7 +145,16 @@ extern "C" { */ # ifdef BN_DEBUG - +/* + * The new BN_FLG_FIXED_TOP flag marks vectors that were not treated with + * bn_correct_top, in other words such vectors are permitted to have zeros + * in most significant limbs. Such vectors are used internally to achieve + * execution time invariance for critical operations with private keys. + * It's BN_DEBUG-only flag, because user application is not supposed to + * observe it anyway. Moreover, optimizing compiler would actually remove + * all operations manipulating the bit in question in non-BN_DEBUG build. + */ +# define BN_FLG_FIXED_TOP 0x10000 # ifdef BN_DEBUG_RAND /* To avoid "make update" cvs wars due to BN_DEBUG, use some tricks */ # ifndef RAND_bytes @@ -177,8 +186,10 @@ int RAND_bytes(unsigned char *buf, int num); do { \ const BIGNUM *_bnum2 = (a); \ if (_bnum2 != NULL) { \ - OPENSSL_assert(((_bnum2->top == 0) && !_bnum2->neg) || \ - (_bnum2->top && (_bnum2->d[_bnum2->top - 1] != 0))); \ + int _top = _bnum2->top; \ + OPENSSL_assert((_top == 0 && !_bnum2->neg) || \ + (_top && ((_bnum2->flags & BN_FLG_FIXED_TOP) \ + || _bnum2->d[_top - 1] != 0))); \ bn_pollute(_bnum2); \ } \ } while(0) @@ -197,6 +208,7 @@ int RAND_bytes(unsigned char *buf, int num); # else /* !BN_DEBUG */ +# define BN_FLG_FIXED_TOP 0 # define bn_pollute(a) # define bn_check_top(a) # define bn_fix_top(a) bn_correct_top(a) @@ -228,7 +240,8 @@ struct bignum_st { /* Used for montgomery multiplication */ struct bn_mont_ctx_st { int ri; /* number of bits in R */ - BIGNUM RR; /* used to convert to montgomery form */ + BIGNUM RR; /* used to convert to montgomery form, + possibly zero-padded */ BIGNUM N; /* The modulus */ BIGNUM Ni; /* R*(1/R mod N) - N*Ni = 1 (Ni is only * stored for bignum algorithm) */ diff --git a/deps/openssl/openssl/crypto/bn/bn_lib.c b/deps/openssl/openssl/crypto/bn/bn_lib.c index 705849409292..25eac396e094 100644 --- a/deps/openssl/openssl/crypto/bn/bn_lib.c +++ b/deps/openssl/openssl/crypto/bn/bn_lib.c @@ -12,6 +12,7 @@ #include "internal/cryptlib.h" #include "bn_lcl.h" #include +#include "internal/constant_time_locl.h" /* This stuff appears to be completely unused, so is deprecated */ #if OPENSSL_API_COMPAT < 0x00908000L @@ -222,8 +223,6 @@ static BN_ULONG *bn_expand_internal(const BIGNUM *b, int words) const BN_ULONG *B; int i; - bn_check_top(b); - if (words > (INT_MAX / (4 * BN_BITS2))) { BNerr(BN_F_BN_EXPAND_INTERNAL, BN_R_BIGNUM_TOO_LONG); return NULL; @@ -298,8 +297,6 @@ static BN_ULONG *bn_expand_internal(const BIGNUM *b, int words) BIGNUM *bn_expand2(BIGNUM *b, int words) { - bn_check_top(b); - if (words > b->dmax) { BN_ULONG *a = bn_expand_internal(b, words); if (!a) @@ -312,7 +309,6 @@ BIGNUM *bn_expand2(BIGNUM *b, int words) b->dmax = words; } - bn_check_top(b); return b; } @@ -379,12 +375,19 @@ BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b) memcpy(a->d, b->d, sizeof(b->d[0]) * b->top); #endif - a->top = b->top; a->neg = b->neg; + a->top = b->top; + a->flags |= b->flags & BN_FLG_FIXED_TOP; bn_check_top(a); return (a); } +#define FLAGS_DATA(flags) ((flags) & (BN_FLG_STATIC_DATA \ + | BN_FLG_CONSTTIME \ + | BN_FLG_SECURE \ + | BN_FLG_FIXED_TOP)) +#define FLAGS_STRUCT(flags) ((flags) & (BN_FLG_MALLOCED)) + void BN_swap(BIGNUM *a, BIGNUM *b) { int flags_old_a, flags_old_b; @@ -412,10 +415,8 @@ void BN_swap(BIGNUM *a, BIGNUM *b) b->dmax = tmp_dmax; b->neg = tmp_neg; - a->flags = - (flags_old_a & BN_FLG_MALLOCED) | (flags_old_b & BN_FLG_STATIC_DATA); - b->flags = - (flags_old_b & BN_FLG_MALLOCED) | (flags_old_a & BN_FLG_STATIC_DATA); + a->flags = FLAGS_STRUCT(flags_old_a) | FLAGS_DATA(flags_old_b); + b->flags = FLAGS_STRUCT(flags_old_b) | FLAGS_DATA(flags_old_a); bn_check_top(a); bn_check_top(b); } @@ -425,8 +426,9 @@ void BN_clear(BIGNUM *a) bn_check_top(a); if (a->d != NULL) OPENSSL_cleanse(a->d, sizeof(*a->d) * a->dmax); - a->top = 0; a->neg = 0; + a->top = 0; + a->flags &= ~BN_FLG_FIXED_TOP; } BN_ULONG BN_get_word(const BIGNUM *a) @@ -447,6 +449,7 @@ int BN_set_word(BIGNUM *a, BN_ULONG w) a->neg = 0; a->d[0] = w; a->top = (w ? 1 : 0); + a->flags &= ~BN_FLG_FIXED_TOP; bn_check_top(a); return (1); } @@ -499,24 +502,29 @@ BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret) /* ignore negative */ static int bn2binpad(const BIGNUM *a, unsigned char *to, int tolen) { - int i; + int n; + size_t i, inc, lasti, j; BN_ULONG l; - bn_check_top(a); - i = BN_num_bytes(a); + n = BN_num_bytes(a); if (tolen == -1) - tolen = i; - else if (tolen < i) + tolen = n; + else if (tolen < n) return -1; - /* Add leading zeroes if necessary */ - if (tolen > i) { - memset(to, 0, tolen - i); - to += tolen - i; + + if (n == 0) { + OPENSSL_cleanse(to, tolen); + return tolen; } - while (i--) { + + lasti = n - 1; + for (i = 0, inc = 1, j = tolen; j > 0;) { l = a->d[i / BN_BYTES]; - *(to++) = (unsigned char)(l >> (8 * (i % BN_BYTES))) & 0xff; + to[--j] = (unsigned char)(l >> (8 * (i % BN_BYTES)) & (0 - inc)); + inc = (i - lasti) >> (8 * sizeof(i) - 1); + i += inc; /* stay on top limb */ } + return tolen; } @@ -683,6 +691,7 @@ int BN_set_bit(BIGNUM *a, int n) for (k = a->top; k < i + 1; k++) a->d[k] = 0; a->top = i + 1; + a->flags &= ~BN_FLG_FIXED_TOP; } a->d[i] |= (((BN_ULONG)1) << j); @@ -824,6 +833,34 @@ void BN_consttime_swap(BN_ULONG condition, BIGNUM *a, BIGNUM *b, int nwords) a->top ^= t; b->top ^= t; + t = (a->neg ^ b->neg) & condition; + a->neg ^= t; + b->neg ^= t; + + /*- + * Idea behind BN_FLG_STATIC_DATA is actually to + * indicate that data may not be written to. + * Intention is actually to treat it as it's + * read-only data, and some (if not most) of it does + * reside in read-only segment. In other words + * observation of BN_FLG_STATIC_DATA in + * BN_consttime_swap should be treated as fatal + * condition. It would either cause SEGV or + * effectively cause data corruption. + * BN_FLG_MALLOCED refers to BN structure itself, + * and hence must be preserved. Remaining flags are + * BN_FLG_CONSTIME and BN_FLG_SECURE. Latter must be + * preserved, because it determines how x->d was + * allocated and hence how to free it. This leaves + * BN_FLG_CONSTTIME that one can do something about. + * To summarize it's sufficient to mask and swap + * BN_FLG_CONSTTIME alone. BN_FLG_STATIC_DATA should + * be treated as fatal. + */ + t = ((a->flags ^ b->flags) & BN_FLG_CONSTTIME) & condition; + a->flags ^= t; + b->flags ^= t; + #define BN_CONSTTIME_SWAP(ind) \ do { \ t = (a->d[ind] ^ b->d[ind]) & condition; \ @@ -887,8 +924,9 @@ int BN_security_bits(int L, int N) void BN_zero_ex(BIGNUM *a) { - a->top = 0; a->neg = 0; + a->top = 0; + a->flags &= ~BN_FLG_FIXED_TOP; } int BN_abs_is_word(const BIGNUM *a, const BN_ULONG w) @@ -1012,5 +1050,6 @@ void bn_correct_top(BIGNUM *a) } if (a->top == 0) a->neg = 0; + a->flags &= ~BN_FLG_FIXED_TOP; bn_pollute(a); } diff --git a/deps/openssl/openssl/crypto/bn/bn_mod.c b/deps/openssl/openssl/crypto/bn/bn_mod.c index 13b583f76c9f..2361094ee4f6 100644 --- a/deps/openssl/openssl/crypto/bn/bn_mod.c +++ b/deps/openssl/openssl/crypto/bn/bn_mod.c @@ -1,5 +1,5 @@ /* - * Copyright 1998-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1998-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 @@ -35,18 +35,73 @@ int BN_mod_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, /* * BN_mod_add variant that may be used if both a and b are non-negative and - * less than m + * less than m. The original algorithm was + * + * if (!BN_uadd(r, a, b)) + * return 0; + * if (BN_ucmp(r, m) >= 0) + * return BN_usub(r, r, m); + * + * which is replaced with addition, subtracting modulus, and conditional + * move depending on whether or not subtraction borrowed. */ -int BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, - const BIGNUM *m) +int bn_mod_add_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m) { - if (!BN_uadd(r, a, b)) + size_t i, ai, bi, mtop = m->top; + BN_ULONG storage[1024 / BN_BITS2]; + BN_ULONG carry, temp, mask, *rp, *tp = storage; + const BN_ULONG *ap, *bp; + + if (bn_wexpand(r, mtop) == NULL) return 0; - if (BN_ucmp(r, m) >= 0) - return BN_usub(r, r, m); + + if (mtop > sizeof(storage) / sizeof(storage[0]) + && (tp = OPENSSL_malloc(mtop * sizeof(BN_ULONG))) == NULL) + return 0; + + ap = a->d != NULL ? a->d : tp; + bp = b->d != NULL ? b->d : tp; + + for (i = 0, ai = 0, bi = 0, carry = 0; i < mtop;) { + mask = (BN_ULONG)0 - ((i - a->top) >> (8 * sizeof(i) - 1)); + temp = ((ap[ai] & mask) + carry) & BN_MASK2; + carry = (temp < carry); + + mask = (BN_ULONG)0 - ((i - b->top) >> (8 * sizeof(i) - 1)); + tp[i] = ((bp[bi] & mask) + temp) & BN_MASK2; + carry += (tp[i] < temp); + + i++; + ai += (i - a->dmax) >> (8 * sizeof(i) - 1); + bi += (i - b->dmax) >> (8 * sizeof(i) - 1); + } + rp = r->d; + carry -= bn_sub_words(rp, tp, m->d, mtop); + for (i = 0; i < mtop; i++) { + rp[i] = (carry & tp[i]) | (~carry & rp[i]); + ((volatile BN_ULONG *)tp)[i] = 0; + } + r->top = mtop; + r->neg = 0; + + if (tp != storage) + OPENSSL_free(tp); + return 1; } +int BN_mod_add_quick(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m) +{ + int ret = bn_mod_add_fixed_top(r, a, b, m); + + if (ret) + bn_correct_top(r); + + return ret; +} + int BN_mod_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, const BIGNUM *m, BN_CTX *ctx) { diff --git a/deps/openssl/openssl/crypto/bn/bn_mont.c b/deps/openssl/openssl/crypto/bn/bn_mont.c index faef5815717d..3ccf8eaf3713 100644 --- a/deps/openssl/openssl/crypto/bn/bn_mont.c +++ b/deps/openssl/openssl/crypto/bn/bn_mont.c @@ -20,29 +20,43 @@ #define MONT_WORD /* use the faster word-based algorithm */ #ifdef MONT_WORD -static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont); +static int bn_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont); #endif int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, BN_MONT_CTX *mont, BN_CTX *ctx) +{ + int ret = bn_mul_mont_fixed_top(r, a, b, mont, ctx); + + bn_correct_top(r); + bn_check_top(r); + + return ret; +} + +int bn_mul_mont_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + BN_MONT_CTX *mont, BN_CTX *ctx) { BIGNUM *tmp; int ret = 0; -#if defined(OPENSSL_BN_ASM_MONT) && defined(MONT_WORD) int num = mont->N.top; +#if defined(OPENSSL_BN_ASM_MONT) && defined(MONT_WORD) if (num > 1 && a->top == num && b->top == num) { if (bn_wexpand(r, num) == NULL) return (0); if (bn_mul_mont(r->d, a->d, b->d, mont->N.d, mont->n0, num)) { r->neg = a->neg ^ b->neg; r->top = num; - bn_correct_top(r); + r->flags |= BN_FLG_FIXED_TOP; return (1); } } #endif + if ((a->top + b->top) > 2 * num) + return 0; + BN_CTX_start(ctx); tmp = BN_CTX_get(ctx); if (tmp == NULL) @@ -58,13 +72,12 @@ int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, } /* reduce from aRR to aR */ #ifdef MONT_WORD - if (!BN_from_montgomery_word(r, tmp, mont)) + if (!bn_from_montgomery_word(r, tmp, mont)) goto err; #else if (!BN_from_montgomery(r, tmp, mont, ctx)) goto err; #endif - bn_check_top(r); ret = 1; err: BN_CTX_end(ctx); @@ -72,7 +85,7 @@ int BN_mod_mul_montgomery(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, } #ifdef MONT_WORD -static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) +static int bn_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) { BIGNUM *n; BN_ULONG *ap, *np, *rp, n0, v, carry; @@ -99,6 +112,7 @@ static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) memset(&rp[r->top], 0, sizeof(*rp) * i); r->top = max; + r->flags |= BN_FLG_FIXED_TOP; n0 = mont->n0[0]; /* @@ -117,6 +131,7 @@ static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) if (bn_wexpand(ret, nl) == NULL) return (0); ret->top = nl; + ret->flags |= BN_FLG_FIXED_TOP; ret->neg = r->neg; rp = ret->d; @@ -127,20 +142,16 @@ static int BN_from_montgomery_word(BIGNUM *ret, BIGNUM *r, BN_MONT_CTX *mont) */ ap = &(r->d[nl]); + carry -= bn_sub_words(rp, ap, np, nl); /* - * |v| is one if |ap| - |np| underflowed or zero if it did not. Note |v| - * cannot be -1. That would imply the subtraction did not fit in |nl| words, - * and we know at most one subtraction is needed. + * |carry| is -1 if |ap| - |np| underflowed or zero if it did not. Note + * |carry| cannot be 1. That would imply the subtraction did not fit in + * |nl| words, and we know at most one subtraction is needed. */ - v = bn_sub_words(rp, ap, np, nl) - carry; - v = 0 - v; for (i = 0; i < nl; i++) { - rp[i] = (v & ap[i]) | (~v & rp[i]); + rp[i] = (carry & ap[i]) | (~carry & rp[i]); ap[i] = 0; } - bn_correct_top(r); - bn_correct_top(ret); - bn_check_top(ret); return (1); } @@ -154,8 +165,11 @@ int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont, BIGNUM *t; BN_CTX_start(ctx); - if ((t = BN_CTX_get(ctx)) && BN_copy(t, a)) - retn = BN_from_montgomery_word(ret, t, mont); + if ((t = BN_CTX_get(ctx)) && BN_copy(t, a)) { + retn = bn_from_montgomery_word(ret, t, mont); + bn_correct_top(ret); + bn_check_top(ret); + } BN_CTX_end(ctx); #else /* !MONT_WORD */ BIGNUM *t1, *t2; @@ -193,6 +207,12 @@ int BN_from_montgomery(BIGNUM *ret, const BIGNUM *a, BN_MONT_CTX *mont, return (retn); } +int bn_to_mont_fixed_top(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mont, + BN_CTX *ctx) +{ + return bn_mul_mont_fixed_top(r, a, &(mont->RR), mont, ctx); +} + BN_MONT_CTX *BN_MONT_CTX_new(void) { BN_MONT_CTX *ret; @@ -229,7 +249,7 @@ void BN_MONT_CTX_free(BN_MONT_CTX *mont) int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) { - int ret = 0; + int i, ret = 0; BIGNUM *Ri, *R; if (BN_is_zero(mod)) @@ -278,7 +298,9 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) if ((buf[1] = mod->top > 1 ? mod->d[1] : 0)) tmod.top = 2; - if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) + if (BN_is_one(&tmod)) + BN_zero(Ri); + else if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) goto err; if (!BN_lshift(Ri, Ri, 2 * BN_BITS2)) goto err; /* R*Ri */ @@ -311,7 +333,9 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) buf[1] = 0; tmod.top = buf[0] != 0 ? 1 : 0; /* Ri = R^-1 mod N */ - if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) + if (BN_is_one(&tmod)) + BN_zero(Ri); + else if ((BN_mod_inverse(Ri, R, &tmod, ctx)) == NULL) goto err; if (!BN_lshift(Ri, Ri, BN_BITS2)) goto err; /* R*Ri */ @@ -360,6 +384,11 @@ int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx) if (!BN_mod(&(mont->RR), &(mont->RR), &(mont->N), ctx)) goto err; + for (i = mont->RR.top, ret = mont->N.top; i < ret; i++) + mont->RR.d[i] = 0; + mont->RR.top = ret; + mont->RR.flags |= BN_FLG_FIXED_TOP; + ret = 1; err: BN_CTX_end(ctx); diff --git a/deps/openssl/openssl/crypto/bn/bn_prime.h b/deps/openssl/openssl/crypto/bn/bn_prime.h index 5f5cc4f58009..41440fa4e19c 100644 --- a/deps/openssl/openssl/crypto/bn/bn_prime.h +++ b/deps/openssl/openssl/crypto/bn/bn_prime.h @@ -15,260 +15,260 @@ typedef unsigned short prime_t; static const prime_t primes[2048] = { - 2, 3, 5, 7, 11, 13, 17, 19, - 23, 29, 31, 37, 41, 43, 47, 53, - 59, 61, 67, 71, 73, 79, 83, 89, - 97, 101, 103, 107, 109, 113, 127, 131, - 137, 139, 149, 151, 157, 163, 167, 173, - 179, 181, 191, 193, 197, 199, 211, 223, - 227, 229, 233, 239, 241, 251, 257, 263, - 269, 271, 277, 281, 283, 293, 307, 311, - 313, 317, 331, 337, 347, 349, 353, 359, - 367, 373, 379, 383, 389, 397, 401, 409, - 419, 421, 431, 433, 439, 443, 449, 457, - 461, 463, 467, 479, 487, 491, 499, 503, - 509, 521, 523, 541, 547, 557, 563, 569, - 571, 577, 587, 593, 599, 601, 607, 613, - 617, 619, 631, 641, 643, 647, 653, 659, - 661, 673, 677, 683, 691, 701, 709, 719, - 727, 733, 739, 743, 751, 757, 761, 769, - 773, 787, 797, 809, 811, 821, 823, 827, - 829, 839, 853, 857, 859, 863, 877, 881, - 883, 887, 907, 911, 919, 929, 937, 941, - 947, 953, 967, 971, 977, 983, 991, 997, - 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, - 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, - 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, - 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, - 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, - 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, - 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, - 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, - 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, - 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, - 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, - 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, - 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, - 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, - 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, - 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, - 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, - 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, - 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, - 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, - 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, - 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, - 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, - 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, - 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, - 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, - 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, - 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, - 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, - 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, - 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, - 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, - 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, - 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, - 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, - 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, - 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, - 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, - 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, - 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, - 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, - 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, - 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, - 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, - 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, - 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, - 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, - 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, - 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, - 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, - 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, - 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, - 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, - 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, - 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, - 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, - 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, - 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, - 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, - 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, - 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, - 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, - 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, - 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, - 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, - 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, - 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, - 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, - 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, - 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, - 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, - 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, - 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, - 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, - 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, - 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, - 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, - 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, - 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, - 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, - 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, - 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, - 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, - 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, - 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, - 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, - 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, - 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, - 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, - 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, - 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, - 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, - 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, - 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, - 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, - 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, - 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, - 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, - 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, - 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, - 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, - 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, - 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, - 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, - 7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, - 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, - 8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, - 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, - 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, - 8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, - 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, - 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, - 8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, - 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, - 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, - 8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, - 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, - 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, - 8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, - 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, - 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, - 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, - 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, - 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, - 9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, - 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, - 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, - 9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, - 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, - 9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, - 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, - 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, - 9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, - 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, - 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, - 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, - 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, - 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, - 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, - 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, - 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, - 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, - 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, - 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, - 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, - 10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, - 11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, - 11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, - 11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, - 11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, - 11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, - 11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, - 11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, - 11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, - 11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, - 11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, - 11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, - 11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, - 11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, - 12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, - 12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, - 12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, - 12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, - 12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, - 12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, - 12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, - 12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, - 12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, - 12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, - 12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, - 12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, - 12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, - 12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, - 13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, - 13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, - 13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, - 13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, - 13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, - 13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, - 13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, - 13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, - 13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, - 13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, - 13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, - 13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, - 13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, - 14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, - 14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, - 14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, - 14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, - 14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, - 14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, - 14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, - 14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, - 14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, - 14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, - 14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, - 14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, - 14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, - 15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, - 15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, - 15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, - 15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, - 15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, - 15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, - 15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, - 15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, - 15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, - 15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, - 15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, - 15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, - 15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, - 16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, - 16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, - 16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, - 16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, - 16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, - 16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, - 16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, - 16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, - 16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, - 16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, - 16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, - 16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, - 17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, - 17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, - 17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, - 17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, - 17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, - 17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, - 17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, - 17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, - 17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, - 17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, - 17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863, + 2, 3, 5, 7, 11, 13, 17, 19, + 23, 29, 31, 37, 41, 43, 47, 53, + 59, 61, 67, 71, 73, 79, 83, 89, + 97, 101, 103, 107, 109, 113, 127, 131, + 137, 139, 149, 151, 157, 163, 167, 173, + 179, 181, 191, 193, 197, 199, 211, 223, + 227, 229, 233, 239, 241, 251, 257, 263, + 269, 271, 277, 281, 283, 293, 307, 311, + 313, 317, 331, 337, 347, 349, 353, 359, + 367, 373, 379, 383, 389, 397, 401, 409, + 419, 421, 431, 433, 439, 443, 449, 457, + 461, 463, 467, 479, 487, 491, 499, 503, + 509, 521, 523, 541, 547, 557, 563, 569, + 571, 577, 587, 593, 599, 601, 607, 613, + 617, 619, 631, 641, 643, 647, 653, 659, + 661, 673, 677, 683, 691, 701, 709, 719, + 727, 733, 739, 743, 751, 757, 761, 769, + 773, 787, 797, 809, 811, 821, 823, 827, + 829, 839, 853, 857, 859, 863, 877, 881, + 883, 887, 907, 911, 919, 929, 937, 941, + 947, 953, 967, 971, 977, 983, 991, 997, + 1009, 1013, 1019, 1021, 1031, 1033, 1039, 1049, + 1051, 1061, 1063, 1069, 1087, 1091, 1093, 1097, + 1103, 1109, 1117, 1123, 1129, 1151, 1153, 1163, + 1171, 1181, 1187, 1193, 1201, 1213, 1217, 1223, + 1229, 1231, 1237, 1249, 1259, 1277, 1279, 1283, + 1289, 1291, 1297, 1301, 1303, 1307, 1319, 1321, + 1327, 1361, 1367, 1373, 1381, 1399, 1409, 1423, + 1427, 1429, 1433, 1439, 1447, 1451, 1453, 1459, + 1471, 1481, 1483, 1487, 1489, 1493, 1499, 1511, + 1523, 1531, 1543, 1549, 1553, 1559, 1567, 1571, + 1579, 1583, 1597, 1601, 1607, 1609, 1613, 1619, + 1621, 1627, 1637, 1657, 1663, 1667, 1669, 1693, + 1697, 1699, 1709, 1721, 1723, 1733, 1741, 1747, + 1753, 1759, 1777, 1783, 1787, 1789, 1801, 1811, + 1823, 1831, 1847, 1861, 1867, 1871, 1873, 1877, + 1879, 1889, 1901, 1907, 1913, 1931, 1933, 1949, + 1951, 1973, 1979, 1987, 1993, 1997, 1999, 2003, + 2011, 2017, 2027, 2029, 2039, 2053, 2063, 2069, + 2081, 2083, 2087, 2089, 2099, 2111, 2113, 2129, + 2131, 2137, 2141, 2143, 2153, 2161, 2179, 2203, + 2207, 2213, 2221, 2237, 2239, 2243, 2251, 2267, + 2269, 2273, 2281, 2287, 2293, 2297, 2309, 2311, + 2333, 2339, 2341, 2347, 2351, 2357, 2371, 2377, + 2381, 2383, 2389, 2393, 2399, 2411, 2417, 2423, + 2437, 2441, 2447, 2459, 2467, 2473, 2477, 2503, + 2521, 2531, 2539, 2543, 2549, 2551, 2557, 2579, + 2591, 2593, 2609, 2617, 2621, 2633, 2647, 2657, + 2659, 2663, 2671, 2677, 2683, 2687, 2689, 2693, + 2699, 2707, 2711, 2713, 2719, 2729, 2731, 2741, + 2749, 2753, 2767, 2777, 2789, 2791, 2797, 2801, + 2803, 2819, 2833, 2837, 2843, 2851, 2857, 2861, + 2879, 2887, 2897, 2903, 2909, 2917, 2927, 2939, + 2953, 2957, 2963, 2969, 2971, 2999, 3001, 3011, + 3019, 3023, 3037, 3041, 3049, 3061, 3067, 3079, + 3083, 3089, 3109, 3119, 3121, 3137, 3163, 3167, + 3169, 3181, 3187, 3191, 3203, 3209, 3217, 3221, + 3229, 3251, 3253, 3257, 3259, 3271, 3299, 3301, + 3307, 3313, 3319, 3323, 3329, 3331, 3343, 3347, + 3359, 3361, 3371, 3373, 3389, 3391, 3407, 3413, + 3433, 3449, 3457, 3461, 3463, 3467, 3469, 3491, + 3499, 3511, 3517, 3527, 3529, 3533, 3539, 3541, + 3547, 3557, 3559, 3571, 3581, 3583, 3593, 3607, + 3613, 3617, 3623, 3631, 3637, 3643, 3659, 3671, + 3673, 3677, 3691, 3697, 3701, 3709, 3719, 3727, + 3733, 3739, 3761, 3767, 3769, 3779, 3793, 3797, + 3803, 3821, 3823, 3833, 3847, 3851, 3853, 3863, + 3877, 3881, 3889, 3907, 3911, 3917, 3919, 3923, + 3929, 3931, 3943, 3947, 3967, 3989, 4001, 4003, + 4007, 4013, 4019, 4021, 4027, 4049, 4051, 4057, + 4073, 4079, 4091, 4093, 4099, 4111, 4127, 4129, + 4133, 4139, 4153, 4157, 4159, 4177, 4201, 4211, + 4217, 4219, 4229, 4231, 4241, 4243, 4253, 4259, + 4261, 4271, 4273, 4283, 4289, 4297, 4327, 4337, + 4339, 4349, 4357, 4363, 4373, 4391, 4397, 4409, + 4421, 4423, 4441, 4447, 4451, 4457, 4463, 4481, + 4483, 4493, 4507, 4513, 4517, 4519, 4523, 4547, + 4549, 4561, 4567, 4583, 4591, 4597, 4603, 4621, + 4637, 4639, 4643, 4649, 4651, 4657, 4663, 4673, + 4679, 4691, 4703, 4721, 4723, 4729, 4733, 4751, + 4759, 4783, 4787, 4789, 4793, 4799, 4801, 4813, + 4817, 4831, 4861, 4871, 4877, 4889, 4903, 4909, + 4919, 4931, 4933, 4937, 4943, 4951, 4957, 4967, + 4969, 4973, 4987, 4993, 4999, 5003, 5009, 5011, + 5021, 5023, 5039, 5051, 5059, 5077, 5081, 5087, + 5099, 5101, 5107, 5113, 5119, 5147, 5153, 5167, + 5171, 5179, 5189, 5197, 5209, 5227, 5231, 5233, + 5237, 5261, 5273, 5279, 5281, 5297, 5303, 5309, + 5323, 5333, 5347, 5351, 5381, 5387, 5393, 5399, + 5407, 5413, 5417, 5419, 5431, 5437, 5441, 5443, + 5449, 5471, 5477, 5479, 5483, 5501, 5503, 5507, + 5519, 5521, 5527, 5531, 5557, 5563, 5569, 5573, + 5581, 5591, 5623, 5639, 5641, 5647, 5651, 5653, + 5657, 5659, 5669, 5683, 5689, 5693, 5701, 5711, + 5717, 5737, 5741, 5743, 5749, 5779, 5783, 5791, + 5801, 5807, 5813, 5821, 5827, 5839, 5843, 5849, + 5851, 5857, 5861, 5867, 5869, 5879, 5881, 5897, + 5903, 5923, 5927, 5939, 5953, 5981, 5987, 6007, + 6011, 6029, 6037, 6043, 6047, 6053, 6067, 6073, + 6079, 6089, 6091, 6101, 6113, 6121, 6131, 6133, + 6143, 6151, 6163, 6173, 6197, 6199, 6203, 6211, + 6217, 6221, 6229, 6247, 6257, 6263, 6269, 6271, + 6277, 6287, 6299, 6301, 6311, 6317, 6323, 6329, + 6337, 6343, 6353, 6359, 6361, 6367, 6373, 6379, + 6389, 6397, 6421, 6427, 6449, 6451, 6469, 6473, + 6481, 6491, 6521, 6529, 6547, 6551, 6553, 6563, + 6569, 6571, 6577, 6581, 6599, 6607, 6619, 6637, + 6653, 6659, 6661, 6673, 6679, 6689, 6691, 6701, + 6703, 6709, 6719, 6733, 6737, 6761, 6763, 6779, + 6781, 6791, 6793, 6803, 6823, 6827, 6829, 6833, + 6841, 6857, 6863, 6869, 6871, 6883, 6899, 6907, + 6911, 6917, 6947, 6949, 6959, 6961, 6967, 6971, + 6977, 6983, 6991, 6997, 7001, 7013, 7019, 7027, + 7039, 7043, 7057, 7069, 7079, 7103, 7109, 7121, + 7127, 7129, 7151, 7159, 7177, 7187, 7193, 7207, + 7211, 7213, 7219, 7229, 7237, 7243, 7247, 7253, + 7283, 7297, 7307, 7309, 7321, 7331, 7333, 7349, + 7351, 7369, 7393, 7411, 7417, 7433, 7451, 7457, + 7459, 7477, 7481, 7487, 7489, 7499, 7507, 7517, + 7523, 7529, 7537, 7541, 7547, 7549, 7559, 7561, + 7573, 7577, 7583, 7589, 7591, 7603, 7607, 7621, + 7639, 7643, 7649, 7669, 7673, 7681, 7687, 7691, + 7699, 7703, 7717, 7723, 7727, 7741, 7753, 7757, + 7759, 7789, 7793, 7817, 7823, 7829, 7841, 7853, + 7867, 7873, 7877, 7879, 7883, 7901, 7907, 7919, + 7927, 7933, 7937, 7949, 7951, 7963, 7993, 8009, + 8011, 8017, 8039, 8053, 8059, 8069, 8081, 8087, + 8089, 8093, 8101, 8111, 8117, 8123, 8147, 8161, + 8167, 8171, 8179, 8191, 8209, 8219, 8221, 8231, + 8233, 8237, 8243, 8263, 8269, 8273, 8287, 8291, + 8293, 8297, 8311, 8317, 8329, 8353, 8363, 8369, + 8377, 8387, 8389, 8419, 8423, 8429, 8431, 8443, + 8447, 8461, 8467, 8501, 8513, 8521, 8527, 8537, + 8539, 8543, 8563, 8573, 8581, 8597, 8599, 8609, + 8623, 8627, 8629, 8641, 8647, 8663, 8669, 8677, + 8681, 8689, 8693, 8699, 8707, 8713, 8719, 8731, + 8737, 8741, 8747, 8753, 8761, 8779, 8783, 8803, + 8807, 8819, 8821, 8831, 8837, 8839, 8849, 8861, + 8863, 8867, 8887, 8893, 8923, 8929, 8933, 8941, + 8951, 8963, 8969, 8971, 8999, 9001, 9007, 9011, + 9013, 9029, 9041, 9043, 9049, 9059, 9067, 9091, + 9103, 9109, 9127, 9133, 9137, 9151, 9157, 9161, + 9173, 9181, 9187, 9199, 9203, 9209, 9221, 9227, + 9239, 9241, 9257, 9277, 9281, 9283, 9293, 9311, + 9319, 9323, 9337, 9341, 9343, 9349, 9371, 9377, + 9391, 9397, 9403, 9413, 9419, 9421, 9431, 9433, + 9437, 9439, 9461, 9463, 9467, 9473, 9479, 9491, + 9497, 9511, 9521, 9533, 9539, 9547, 9551, 9587, + 9601, 9613, 9619, 9623, 9629, 9631, 9643, 9649, + 9661, 9677, 9679, 9689, 9697, 9719, 9721, 9733, + 9739, 9743, 9749, 9767, 9769, 9781, 9787, 9791, + 9803, 9811, 9817, 9829, 9833, 9839, 9851, 9857, + 9859, 9871, 9883, 9887, 9901, 9907, 9923, 9929, + 9931, 9941, 9949, 9967, 9973, 10007, 10009, 10037, + 10039, 10061, 10067, 10069, 10079, 10091, 10093, 10099, + 10103, 10111, 10133, 10139, 10141, 10151, 10159, 10163, + 10169, 10177, 10181, 10193, 10211, 10223, 10243, 10247, + 10253, 10259, 10267, 10271, 10273, 10289, 10301, 10303, + 10313, 10321, 10331, 10333, 10337, 10343, 10357, 10369, + 10391, 10399, 10427, 10429, 10433, 10453, 10457, 10459, + 10463, 10477, 10487, 10499, 10501, 10513, 10529, 10531, + 10559, 10567, 10589, 10597, 10601, 10607, 10613, 10627, + 10631, 10639, 10651, 10657, 10663, 10667, 10687, 10691, + 10709, 10711, 10723, 10729, 10733, 10739, 10753, 10771, + 10781, 10789, 10799, 10831, 10837, 10847, 10853, 10859, + 10861, 10867, 10883, 10889, 10891, 10903, 10909, 10937, + 10939, 10949, 10957, 10973, 10979, 10987, 10993, 11003, + 11027, 11047, 11057, 11059, 11069, 11071, 11083, 11087, + 11093, 11113, 11117, 11119, 11131, 11149, 11159, 11161, + 11171, 11173, 11177, 11197, 11213, 11239, 11243, 11251, + 11257, 11261, 11273, 11279, 11287, 11299, 11311, 11317, + 11321, 11329, 11351, 11353, 11369, 11383, 11393, 11399, + 11411, 11423, 11437, 11443, 11447, 11467, 11471, 11483, + 11489, 11491, 11497, 11503, 11519, 11527, 11549, 11551, + 11579, 11587, 11593, 11597, 11617, 11621, 11633, 11657, + 11677, 11681, 11689, 11699, 11701, 11717, 11719, 11731, + 11743, 11777, 11779, 11783, 11789, 11801, 11807, 11813, + 11821, 11827, 11831, 11833, 11839, 11863, 11867, 11887, + 11897, 11903, 11909, 11923, 11927, 11933, 11939, 11941, + 11953, 11959, 11969, 11971, 11981, 11987, 12007, 12011, + 12037, 12041, 12043, 12049, 12071, 12073, 12097, 12101, + 12107, 12109, 12113, 12119, 12143, 12149, 12157, 12161, + 12163, 12197, 12203, 12211, 12227, 12239, 12241, 12251, + 12253, 12263, 12269, 12277, 12281, 12289, 12301, 12323, + 12329, 12343, 12347, 12373, 12377, 12379, 12391, 12401, + 12409, 12413, 12421, 12433, 12437, 12451, 12457, 12473, + 12479, 12487, 12491, 12497, 12503, 12511, 12517, 12527, + 12539, 12541, 12547, 12553, 12569, 12577, 12583, 12589, + 12601, 12611, 12613, 12619, 12637, 12641, 12647, 12653, + 12659, 12671, 12689, 12697, 12703, 12713, 12721, 12739, + 12743, 12757, 12763, 12781, 12791, 12799, 12809, 12821, + 12823, 12829, 12841, 12853, 12889, 12893, 12899, 12907, + 12911, 12917, 12919, 12923, 12941, 12953, 12959, 12967, + 12973, 12979, 12983, 13001, 13003, 13007, 13009, 13033, + 13037, 13043, 13049, 13063, 13093, 13099, 13103, 13109, + 13121, 13127, 13147, 13151, 13159, 13163, 13171, 13177, + 13183, 13187, 13217, 13219, 13229, 13241, 13249, 13259, + 13267, 13291, 13297, 13309, 13313, 13327, 13331, 13337, + 13339, 13367, 13381, 13397, 13399, 13411, 13417, 13421, + 13441, 13451, 13457, 13463, 13469, 13477, 13487, 13499, + 13513, 13523, 13537, 13553, 13567, 13577, 13591, 13597, + 13613, 13619, 13627, 13633, 13649, 13669, 13679, 13681, + 13687, 13691, 13693, 13697, 13709, 13711, 13721, 13723, + 13729, 13751, 13757, 13759, 13763, 13781, 13789, 13799, + 13807, 13829, 13831, 13841, 13859, 13873, 13877, 13879, + 13883, 13901, 13903, 13907, 13913, 13921, 13931, 13933, + 13963, 13967, 13997, 13999, 14009, 14011, 14029, 14033, + 14051, 14057, 14071, 14081, 14083, 14087, 14107, 14143, + 14149, 14153, 14159, 14173, 14177, 14197, 14207, 14221, + 14243, 14249, 14251, 14281, 14293, 14303, 14321, 14323, + 14327, 14341, 14347, 14369, 14387, 14389, 14401, 14407, + 14411, 14419, 14423, 14431, 14437, 14447, 14449, 14461, + 14479, 14489, 14503, 14519, 14533, 14537, 14543, 14549, + 14551, 14557, 14561, 14563, 14591, 14593, 14621, 14627, + 14629, 14633, 14639, 14653, 14657, 14669, 14683, 14699, + 14713, 14717, 14723, 14731, 14737, 14741, 14747, 14753, + 14759, 14767, 14771, 14779, 14783, 14797, 14813, 14821, + 14827, 14831, 14843, 14851, 14867, 14869, 14879, 14887, + 14891, 14897, 14923, 14929, 14939, 14947, 14951, 14957, + 14969, 14983, 15013, 15017, 15031, 15053, 15061, 15073, + 15077, 15083, 15091, 15101, 15107, 15121, 15131, 15137, + 15139, 15149, 15161, 15173, 15187, 15193, 15199, 15217, + 15227, 15233, 15241, 15259, 15263, 15269, 15271, 15277, + 15287, 15289, 15299, 15307, 15313, 15319, 15329, 15331, + 15349, 15359, 15361, 15373, 15377, 15383, 15391, 15401, + 15413, 15427, 15439, 15443, 15451, 15461, 15467, 15473, + 15493, 15497, 15511, 15527, 15541, 15551, 15559, 15569, + 15581, 15583, 15601, 15607, 15619, 15629, 15641, 15643, + 15647, 15649, 15661, 15667, 15671, 15679, 15683, 15727, + 15731, 15733, 15737, 15739, 15749, 15761, 15767, 15773, + 15787, 15791, 15797, 15803, 15809, 15817, 15823, 15859, + 15877, 15881, 15887, 15889, 15901, 15907, 15913, 15919, + 15923, 15937, 15959, 15971, 15973, 15991, 16001, 16007, + 16033, 16057, 16061, 16063, 16067, 16069, 16073, 16087, + 16091, 16097, 16103, 16111, 16127, 16139, 16141, 16183, + 16187, 16189, 16193, 16217, 16223, 16229, 16231, 16249, + 16253, 16267, 16273, 16301, 16319, 16333, 16339, 16349, + 16361, 16363, 16369, 16381, 16411, 16417, 16421, 16427, + 16433, 16447, 16451, 16453, 16477, 16481, 16487, 16493, + 16519, 16529, 16547, 16553, 16561, 16567, 16573, 16603, + 16607, 16619, 16631, 16633, 16649, 16651, 16657, 16661, + 16673, 16691, 16693, 16699, 16703, 16729, 16741, 16747, + 16759, 16763, 16787, 16811, 16823, 16829, 16831, 16843, + 16871, 16879, 16883, 16889, 16901, 16903, 16921, 16927, + 16931, 16937, 16943, 16963, 16979, 16981, 16987, 16993, + 17011, 17021, 17027, 17029, 17033, 17041, 17047, 17053, + 17077, 17093, 17099, 17107, 17117, 17123, 17137, 17159, + 17167, 17183, 17189, 17191, 17203, 17207, 17209, 17231, + 17239, 17257, 17291, 17293, 17299, 17317, 17321, 17327, + 17333, 17341, 17351, 17359, 17377, 17383, 17387, 17389, + 17393, 17401, 17417, 17419, 17431, 17443, 17449, 17467, + 17471, 17477, 17483, 17489, 17491, 17497, 17509, 17519, + 17539, 17551, 17569, 17573, 17579, 17581, 17597, 17599, + 17609, 17623, 17627, 17657, 17659, 17669, 17681, 17683, + 17707, 17713, 17729, 17737, 17747, 17749, 17761, 17783, + 17789, 17791, 17807, 17827, 17837, 17839, 17851, 17863, }; diff --git a/deps/openssl/openssl/crypto/bn/bn_sqr.c b/deps/openssl/openssl/crypto/bn/bn_sqr.c index 44e7332acf1a..1f12a14e4423 100644 --- a/deps/openssl/openssl/crypto/bn/bn_sqr.c +++ b/deps/openssl/openssl/crypto/bn/bn_sqr.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -82,14 +82,8 @@ int BN_sqr(BIGNUM *r, const BIGNUM *a, BN_CTX *ctx) } rr->neg = 0; - /* - * If the most-significant half of the top word of 'a' is zero, then the - * square of 'a' will max-1 words. - */ - if (a->d[al - 1] == (a->d[al - 1] & BN_MASK2l)) - rr->top = max - 1; - else - rr->top = max; + rr->top = max; + bn_correct_top(rr); if (r != rr && BN_copy(r, rr) == NULL) goto err; diff --git a/deps/openssl/openssl/crypto/build.info b/deps/openssl/openssl/crypto/build.info index 916d24f66ed5..e693ebadcd32 100644 --- a/deps/openssl/openssl/crypto/build.info +++ b/deps/openssl/openssl/crypto/build.info @@ -1,4 +1,3 @@ -{- use File::Spec::Functions qw/catdir catfile/; -} LIBS=../libcrypto SOURCE[../libcrypto]=\ cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c cpt_err.c \ diff --git a/deps/openssl/openssl/crypto/cast/asm/cast-586.pl b/deps/openssl/openssl/crypto/cast/asm/cast-586.pl index 9024b67e32fd..6beb9c5f2550 100644 --- a/deps/openssl/openssl/crypto/cast/asm/cast-586.pl +++ b/deps/openssl/openssl/crypto/cast/asm/cast-586.pl @@ -7,7 +7,7 @@ # https://www.openssl.org/source/license.html -# This flag makes the inner loop one cycle longer, but generates +# This flag makes the inner loop one cycle longer, but generates # code that runs %30 faster on the pentium pro/II, 44% faster # of PIII, while only %7 slower on the pentium. # By default, this flag is on. diff --git a/deps/openssl/openssl/crypto/chacha/asm/chacha-armv4.pl b/deps/openssl/openssl/crypto/chacha/asm/chacha-armv4.pl index c90306e45c93..b5e21e4938e0 100755 --- a/deps/openssl/openssl/crypto/chacha/asm/chacha-armv4.pl +++ b/deps/openssl/openssl/crypto/chacha/asm/chacha-armv4.pl @@ -15,7 +15,7 @@ # ==================================================================== # # December 2014 -# +# # ChaCha20 for ARMv4. # # Performance in cycles per byte out of large buffer. @@ -720,7 +720,7 @@ sub NEONROUND { vadd.i32 $d2,$d1,$t0 @ counter+2 str @t[3], [sp,#4*(16+15)] mov @t[3],#10 - add @x[12],@x[12],#3 @ counter+3 + add @x[12],@x[12],#3 @ counter+3 b .Loop_neon .align 4 diff --git a/deps/openssl/openssl/crypto/chacha/asm/chacha-armv8.pl b/deps/openssl/openssl/crypto/chacha/asm/chacha-armv8.pl index db3776a2fc17..f7e107471450 100755 --- a/deps/openssl/openssl/crypto/chacha/asm/chacha-armv8.pl +++ b/deps/openssl/openssl/crypto/chacha/asm/chacha-armv8.pl @@ -15,7 +15,7 @@ # ==================================================================== # # June 2015 -# +# # ChaCha20 for ARMv8. # # Performance in cycles per byte out of large buffer. @@ -201,7 +201,7 @@ sub ROUND { mov $ctr,#10 subs $len,$len,#64 .Loop: - sub $ctr,$ctr,#1 + sub $ctr,$ctr,#1 ___ foreach (&ROUND(0, 4, 8,12)) { eval; } foreach (&ROUND(0, 5,10,15)) { eval; } diff --git a/deps/openssl/openssl/crypto/chacha/asm/chacha-ppc.pl b/deps/openssl/openssl/crypto/chacha/asm/chacha-ppc.pl index f972ee471a65..181decdad9d2 100755 --- a/deps/openssl/openssl/crypto/chacha/asm/chacha-ppc.pl +++ b/deps/openssl/openssl/crypto/chacha/asm/chacha-ppc.pl @@ -15,7 +15,7 @@ # ==================================================================== # # October 2015 -# +# # ChaCha20 for PowerPC/AltiVec. # # Performance in cycles per byte out of large buffer. @@ -525,7 +525,7 @@ sub VMXROUND { lwz @d[3],12($ctr) vadduwm @K[5],@K[4],@K[5] - vspltisw $twenty,-12 # synthesize constants + vspltisw $twenty,-12 # synthesize constants vspltisw $twelve,12 vspltisw $twenty5,-7 #vspltisw $seven,7 # synthesized in the loop diff --git a/deps/openssl/openssl/crypto/chacha/asm/chacha-x86.pl b/deps/openssl/openssl/crypto/chacha/asm/chacha-x86.pl index 61b328612b7c..932dec67e43c 100755 --- a/deps/openssl/openssl/crypto/chacha/asm/chacha-x86.pl +++ b/deps/openssl/openssl/crypto/chacha/asm/chacha-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -61,7 +61,7 @@ $1>=10); # first version supporting AVX $ymm=1 if ($xmm && !$ymm && - `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9]\.[0-9]+)/ && + `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9]\.[0-9]+)/ && $2>=3.0); # first version supporting AVX $a="eax"; diff --git a/deps/openssl/openssl/crypto/cms/cms_env.c b/deps/openssl/openssl/crypto/cms/cms_env.c index 8d4594353084..fe5076ec02dd 100644 --- a/deps/openssl/openssl/crypto/cms/cms_env.c +++ b/deps/openssl/openssl/crypto/cms/cms_env.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-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 @@ -282,6 +282,7 @@ int CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey) CMSerr(CMS_F_CMS_RECIPIENTINFO_SET0_PKEY, CMS_R_NOT_KEY_TRANSPORT); return 0; } + EVP_PKEY_free(ri->d.ktri->pkey); ri->d.ktri->pkey = pkey; return 1; } diff --git a/deps/openssl/openssl/crypto/cms/cms_smime.c b/deps/openssl/openssl/crypto/cms/cms_smime.c index 7e7b6e5d4f79..5dcf803f4bd3 100644 --- a/deps/openssl/openssl/crypto/cms/cms_smime.c +++ b/deps/openssl/openssl/crypto/cms/cms_smime.c @@ -1,5 +1,5 @@ /* - * Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2008-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 @@ -631,6 +631,7 @@ int CMS_decrypt_set1_pkey(CMS_ContentInfo *cms, EVP_PKEY *pk, X509 *cert) * all. */ else if (!cert || !CMS_RecipientInfo_ktri_cert_cmp(ri, cert)) { + EVP_PKEY_up_ref(pk); CMS_RecipientInfo_set0_pkey(ri, pk); r = CMS_RecipientInfo_decrypt(cms, ri); CMS_RecipientInfo_set0_pkey(ri, NULL); diff --git a/deps/openssl/openssl/crypto/conf/build.info b/deps/openssl/openssl/crypto/conf/build.info index 4438eb42620f..ff367994ea09 100644 --- a/deps/openssl/openssl/crypto/conf/build.info +++ b/deps/openssl/openssl/crypto/conf/build.info @@ -1,4 +1,4 @@ LIBS=../../libcrypto SOURCE[../../libcrypto]= \ conf_err.c conf_lib.c conf_api.c conf_def.c conf_mod.c \ - conf_mall.c conf_sap.c + conf_mall.c conf_sap.c conf_ssl.c diff --git a/deps/openssl/openssl/crypto/conf/conf_api.c b/deps/openssl/openssl/crypto/conf/conf_api.c index 5535416ab3bf..79e682a84748 100644 --- a/deps/openssl/openssl/crypto/conf/conf_api.c +++ b/deps/openssl/openssl/crypto/conf/conf_api.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -205,10 +205,14 @@ CONF_VALUE *_CONF_new_section(CONF *conf, const char *section) vv = lh_CONF_VALUE_insert(conf->data, v); OPENSSL_assert(vv == NULL); + if (lh_CONF_VALUE_error(conf->data) > 0) + goto err; return v; err: sk_CONF_VALUE_free(sk); + if (v != NULL) + OPENSSL_free(v->section); OPENSSL_free(v); return NULL; } diff --git a/deps/openssl/openssl/crypto/conf/conf_err.c b/deps/openssl/openssl/crypto/conf/conf_err.c index 0863bc4d3616..19f480d5b32b 100644 --- a/deps/openssl/openssl/crypto/conf/conf_err.c +++ b/deps/openssl/openssl/crypto/conf/conf_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -37,6 +37,7 @@ static ERR_STRING_DATA CONF_str_functs[] = { {ERR_FUNC(CONF_F_NCONF_LOAD_BIO), "NCONF_load_bio"}, {ERR_FUNC(CONF_F_NCONF_LOAD_FP), "NCONF_load_fp"}, {ERR_FUNC(CONF_F_NCONF_NEW), "NCONF_new"}, + {ERR_FUNC(CONF_F_SSL_MODULE_INIT), "ssl_module_init"}, {ERR_FUNC(CONF_F_STR_COPY), "str_copy"}, {0, NULL} }; @@ -57,6 +58,12 @@ static ERR_STRING_DATA CONF_str_reasons[] = { {ERR_REASON(CONF_R_NO_SECTION), "no section"}, {ERR_REASON(CONF_R_NO_SUCH_FILE), "no such file"}, {ERR_REASON(CONF_R_NO_VALUE), "no value"}, + {ERR_REASON(CONF_R_SSL_COMMAND_SECTION_EMPTY), + "ssl command section empty"}, + {ERR_REASON(CONF_R_SSL_COMMAND_SECTION_NOT_FOUND), + "ssl command section not found"}, + {ERR_REASON(CONF_R_SSL_SECTION_EMPTY), "ssl section empty"}, + {ERR_REASON(CONF_R_SSL_SECTION_NOT_FOUND), "ssl section not found"}, {ERR_REASON(CONF_R_UNABLE_TO_CREATE_NEW_SECTION), "unable to create new section"}, {ERR_REASON(CONF_R_UNKNOWN_MODULE_NAME), "unknown module name"}, diff --git a/deps/openssl/openssl/crypto/conf/conf_lcl.h b/deps/openssl/openssl/crypto/conf/conf_lcl.h new file mode 100644 index 000000000000..6e1f7fe00d70 --- /dev/null +++ b/deps/openssl/openssl/crypto/conf/conf_lcl.h @@ -0,0 +1,11 @@ +/* + * Copyright 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 + */ + +void conf_add_ssl_module(void); + diff --git a/deps/openssl/openssl/crypto/conf/conf_mall.c b/deps/openssl/openssl/crypto/conf/conf_mall.c index 4e7a434e0e4d..7e86948e89e9 100644 --- a/deps/openssl/openssl/crypto/conf/conf_mall.c +++ b/deps/openssl/openssl/crypto/conf/conf_mall.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-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 @@ -14,6 +14,7 @@ #include #include #include +#include "conf_lcl.h" /* Load all OpenSSL builtin modules */ @@ -26,4 +27,5 @@ void OPENSSL_load_builtin_modules(void) ENGINE_add_conf_module(); #endif EVP_add_alg_module(); + conf_add_ssl_module(); } diff --git a/deps/openssl/openssl/crypto/conf/conf_ssl.c b/deps/openssl/openssl/crypto/conf/conf_ssl.c new file mode 100644 index 000000000000..015c46c6da52 --- /dev/null +++ b/deps/openssl/openssl/crypto/conf/conf_ssl.c @@ -0,0 +1,178 @@ +/* + * Copyright 2015-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 + */ + +#include +#include +#include +#include +#include "internal/sslconf.h" +#include "conf_lcl.h" + +/* + * SSL library configuration module placeholder. We load it here but defer + * all decisions about its contents to libssl. + */ + +struct ssl_conf_name_st { + /* Name of this set of commands */ + char *name; + /* List of commands */ + SSL_CONF_CMD *cmds; + /* Number of commands */ + size_t cmd_count; +}; + +struct ssl_conf_cmd_st { + /* Command */ + char *cmd; + /* Argument */ + char *arg; +}; + +static struct ssl_conf_name_st *ssl_names; +static size_t ssl_names_count; + +static void ssl_module_free(CONF_IMODULE *md) +{ + size_t i, j; + if (ssl_names == NULL) + return; + for (i = 0; i < ssl_names_count; i++) { + struct ssl_conf_name_st *tname = ssl_names + i; + + OPENSSL_free(tname->name); + for (j = 0; j < tname->cmd_count; j++) { + OPENSSL_free(tname->cmds[j].cmd); + OPENSSL_free(tname->cmds[j].arg); + } + OPENSSL_free(tname->cmds); + } + OPENSSL_free(ssl_names); + ssl_names = NULL; + ssl_names_count = 0; +} + +static int ssl_module_init(CONF_IMODULE *md, const CONF *cnf) +{ + size_t i, j, cnt; + int rv = 0; + const char *ssl_conf_section; + STACK_OF(CONF_VALUE) *cmd_lists; + + ssl_conf_section = CONF_imodule_get_value(md); + cmd_lists = NCONF_get_section(cnf, ssl_conf_section); + if (sk_CONF_VALUE_num(cmd_lists) <= 0) { + if (cmd_lists == NULL) + CONFerr(CONF_F_SSL_MODULE_INIT, CONF_R_SSL_SECTION_NOT_FOUND); + else + CONFerr(CONF_F_SSL_MODULE_INIT, CONF_R_SSL_SECTION_EMPTY); + ERR_add_error_data(2, "section=", ssl_conf_section); + goto err; + } + cnt = sk_CONF_VALUE_num(cmd_lists); + ssl_names = OPENSSL_zalloc(sizeof(*ssl_names) * cnt); + ssl_names_count = cnt; + for (i = 0; i < ssl_names_count; i++) { + struct ssl_conf_name_st *ssl_name = ssl_names + i; + CONF_VALUE *sect = sk_CONF_VALUE_value(cmd_lists, (int)i); + STACK_OF(CONF_VALUE) *cmds = NCONF_get_section(cnf, sect->value); + + if (sk_CONF_VALUE_num(cmds) <= 0) { + if (cmds == NULL) + CONFerr(CONF_F_SSL_MODULE_INIT, + CONF_R_SSL_COMMAND_SECTION_NOT_FOUND); + else + CONFerr(CONF_F_SSL_MODULE_INIT, + CONF_R_SSL_COMMAND_SECTION_EMPTY); + ERR_add_error_data(4, "name=", sect->name, ", value=", sect->value); + goto err; + } + ssl_name->name = OPENSSL_strdup(sect->name); + if (ssl_name->name == NULL) + goto err; + cnt = sk_CONF_VALUE_num(cmds); + ssl_name->cmds = OPENSSL_zalloc(cnt * sizeof(struct ssl_conf_cmd_st)); + if (ssl_name->cmds == NULL) + goto err; + ssl_name->cmd_count = cnt; + for (j = 0; j < cnt; j++) { + const char *name; + CONF_VALUE *cmd_conf = sk_CONF_VALUE_value(cmds, (int)j); + struct ssl_conf_cmd_st *cmd = ssl_name->cmds + j; + + /* Skip any initial dot in name */ + name = strchr(cmd_conf->name, '.'); + if (name != NULL) + name++; + else + name = cmd_conf->name; + cmd->cmd = OPENSSL_strdup(name); + cmd->arg = OPENSSL_strdup(cmd_conf->value); + if (cmd->cmd == NULL || cmd->arg == NULL) + goto err; + } + + } + rv = 1; + err: + if (rv == 0) + ssl_module_free(md); + return rv; +} + +/* + * Returns the set of commands with index |idx| previously searched for via + * conf_ssl_name_find. Also stores the name of the set of commands in |*name| + * and the number of commands in the set in |*cnt|. + */ +const SSL_CONF_CMD *conf_ssl_get(size_t idx, const char **name, size_t *cnt) +{ + *name = ssl_names[idx].name; + *cnt = ssl_names[idx].cmd_count; + return ssl_names[idx].cmds; +} + +/* + * Search for the named set of commands given in |name|. On success return the + * index for the command set in |*idx|. + * Returns 1 on success or 0 on failure. + */ +int conf_ssl_name_find(const char *name, size_t *idx) +{ + size_t i; + const struct ssl_conf_name_st *nm; + + if (name == NULL) + return 0; + for (i = 0, nm = ssl_names; i < ssl_names_count; i++, nm++) { + if (strcmp(nm->name, name) == 0) { + *idx = i; + return 1; + } + } + return 0; +} + +/* + * Given a command set |cmd|, return details on the command at index |idx| which + * must be less than the number of commands in the set (as returned by + * conf_ssl_get). The name of the command will be returned in |*cmdstr| and the + * argument is returned in |*arg|. + */ +void conf_ssl_get_cmd(const SSL_CONF_CMD *cmd, size_t idx, char **cmdstr, + char **arg) +{ + *cmdstr = cmd[idx].cmd; + *arg = cmd[idx].arg; +} + +void conf_add_ssl_module(void) +{ + CONF_module_add("ssl_conf", ssl_module_init, ssl_module_free); +} diff --git a/deps/openssl/openssl/crypto/cryptlib.c b/deps/openssl/openssl/crypto/cryptlib.c index d93bcd357b63..3b878cd0c20e 100644 --- a/deps/openssl/openssl/crypto/cryptlib.c +++ b/deps/openssl/openssl/crypto/cryptlib.c @@ -23,29 +23,97 @@ extern unsigned int OPENSSL_ia32cap_P[4]; # if defined(OPENSSL_CPUID_OBJ) && !defined(OPENSSL_NO_ASM) && !defined(I386_ONLY) -#include + +/* + * Purpose of these minimalistic and character-type-agnostic subroutines + * is to break dependency on MSVCRT (on Windows) and locale. This makes + * OPENSSL_cpuid_setup safe to use as "constructor". "Character-type- + * agnostic" means that they work with either wide or 8-bit characters, + * exploiting the fact that first 127 characters can be simply casted + * between the sets, while the rest would be simply rejected by ossl_is* + * subroutines. + */ +# ifdef _WIN32 +typedef WCHAR variant_char; + +static variant_char *ossl_getenv(const char *name) +{ + /* + * Since we pull only one environment variable, it's simpler to + * to just ignore |name| and use equivalent wide-char L-literal. + * As well as to ignore excessively long values... + */ + static WCHAR value[48]; + DWORD len = GetEnvironmentVariableW(L"OPENSSL_ia32cap", value, 48); + + return (len > 0 && len < 48) ? value : NULL; +} +# else +typedef char variant_char; +# define ossl_getenv getenv +# endif + +static int todigit(variant_char c) +{ + if (c >= '0' && c <= '9') + return c - '0'; + else if (c >= 'A' && c <= 'F') + return c - 'A' + 10; + else if (c >= 'a' && c <= 'f') + return c - 'a' + 10; + + /* return largest base value to make caller terminate the loop */ + return 16; +} + +static uint64_t ossl_strtouint64(const variant_char *str) +{ + uint64_t ret = 0; + unsigned int digit, base = 10; + + if (*str == '0') { + base = 8, str++; + if (*str == 'x' || *str == 'X') + base = 16, str++; + } + + while((digit = todigit(*str++)) < base) + ret = ret * base + digit; + + return ret; +} + +static variant_char *ossl_strchr(const variant_char *str, char srch) +{ variant_char c; + + while((c = *str)) { + if (c == srch) + return (variant_char *)str; + str++; + } + + return NULL; +} + # define OPENSSL_CPUID_SETUP typedef uint64_t IA32CAP; + void OPENSSL_cpuid_setup(void) { static int trigger = 0; IA32CAP OPENSSL_ia32_cpuid(unsigned int *); IA32CAP vec; - char *env; + const variant_char *env; if (trigger) return; trigger = 1; - if ((env = getenv("OPENSSL_ia32cap"))) { + if ((env = ossl_getenv("OPENSSL_ia32cap")) != NULL) { int off = (env[0] == '~') ? 1 : 0; -# if defined(_WIN32) - if (!sscanf(env + off, "%I64i", &vec)) - vec = strtoul(env + off, NULL, 0); -# else - if (!sscanf(env + off, "%lli", (long long *)&vec)) - vec = strtoul(env + off, NULL, 0); -# endif + + vec = ossl_strtouint64(env + off); + if (off) { IA32CAP mask = vec; vec = OPENSSL_ia32_cpuid(OPENSSL_ia32cap_P) & ~mask; @@ -64,15 +132,17 @@ void OPENSSL_cpuid_setup(void) vec = OPENSSL_ia32_cpuid(OPENSSL_ia32cap_P); } - if ((env = strchr(env, ':'))) { - unsigned int vecx; + if ((env = ossl_strchr(env, ':')) != NULL) { + IA32CAP vecx; + env++; off = (env[0] == '~') ? 1 : 0; - vecx = strtoul(env + off, NULL, 0); - if (off) - OPENSSL_ia32cap_P[2] &= ~vecx; - else - OPENSSL_ia32cap_P[2] = vecx; + vecx = ossl_strtouint64(env + off); + if (off) { + OPENSSL_ia32cap_P[2] &= ~(unsigned int)vecx; + } else { + OPENSSL_ia32cap_P[2] = (unsigned int)vecx; + } } else { OPENSSL_ia32cap_P[2] = 0; } @@ -128,10 +198,14 @@ int OPENSSL_isservice(void) if (_OPENSSL_isservice.p == NULL) { HANDLE mod = GetModuleHandle(NULL); + FARPROC f; + if (mod != NULL) - _OPENSSL_isservice.f = GetProcAddress(mod, "_OPENSSL_isservice"); - if (_OPENSSL_isservice.p == NULL) + f = GetProcAddress(mod, "_OPENSSL_isservice"); + if (f == NULL) _OPENSSL_isservice.p = (void *)-1; + else + _OPENSSL_isservice.f = f; } if (_OPENSSL_isservice.p != (void *)-1) diff --git a/deps/openssl/openssl/crypto/dh/dh_key.c b/deps/openssl/openssl/crypto/dh/dh_key.c index 58003d708781..b53a0632445b 100644 --- a/deps/openssl/openssl/crypto/dh/dh_key.c +++ b/deps/openssl/openssl/crypto/dh/dh_key.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 diff --git a/deps/openssl/openssl/crypto/dh/dh_meth.c b/deps/openssl/openssl/crypto/dh/dh_meth.c index ce6114c1335f..59c4d7e96782 100644 --- a/deps/openssl/openssl/crypto/dh/dh_meth.c +++ b/deps/openssl/openssl/crypto/dh/dh_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -75,7 +75,7 @@ int DH_meth_set1_name(DH_METHOD *dhm, const char *name) return 1; } -int DH_meth_get_flags(DH_METHOD *dhm) +int DH_meth_get_flags(const DH_METHOD *dhm) { return dhm->flags; } diff --git a/deps/openssl/openssl/crypto/dllmain.c b/deps/openssl/openssl/crypto/dllmain.c index 2d9678702508..91904aad983b 100644 --- a/deps/openssl/openssl/crypto/dllmain.c +++ b/deps/openssl/openssl/crypto/dllmain.c @@ -57,3 +57,4 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) return (TRUE); } #endif + diff --git a/deps/openssl/openssl/crypto/dsa/dsa_err.c b/deps/openssl/openssl/crypto/dsa/dsa_err.c index b8f0af4662e6..132008803e5e 100644 --- a/deps/openssl/openssl/crypto/dsa/dsa_err.c +++ b/deps/openssl/openssl/crypto/dsa/dsa_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -40,6 +40,7 @@ static ERR_STRING_DATA DSA_str_functs[] = { {ERR_FUNC(DSA_F_DSA_SIG_NEW), "DSA_SIG_new"}, {ERR_FUNC(DSA_F_OLD_DSA_PRIV_DECODE), "old_dsa_priv_decode"}, {ERR_FUNC(DSA_F_PKEY_DSA_CTRL), "pkey_dsa_ctrl"}, + {ERR_FUNC(DSA_F_PKEY_DSA_CTRL_STR), "pkey_dsa_ctrl_str"}, {ERR_FUNC(DSA_F_PKEY_DSA_KEYGEN), "pkey_dsa_keygen"}, {0, NULL} }; diff --git a/deps/openssl/openssl/crypto/dsa/dsa_gen.c b/deps/openssl/openssl/crypto/dsa/dsa_gen.c index e58ad8d70d31..46f4f01ee0e4 100644 --- a/deps/openssl/openssl/crypto/dsa/dsa_gen.c +++ b/deps/openssl/openssl/crypto/dsa/dsa_gen.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -64,9 +64,16 @@ int dsa_builtin_paramgen(DSA *ret, size_t bits, size_t qbits, /* invalid q size */ return 0; - if (evpmd == NULL) - /* use SHA1 as default */ - evpmd = EVP_sha1(); + if (evpmd == NULL) { + if (qsize == SHA_DIGEST_LENGTH) + evpmd = EVP_sha1(); + else if (qsize == SHA224_DIGEST_LENGTH) + evpmd = EVP_sha224(); + else + evpmd = EVP_sha256(); + } else { + qsize = EVP_MD_size(evpmd); + } if (bits < 512) bits = 512; diff --git a/deps/openssl/openssl/crypto/dsa/dsa_meth.c b/deps/openssl/openssl/crypto/dsa/dsa_meth.c index f0188f2007df..04203780c42b 100644 --- a/deps/openssl/openssl/crypto/dsa/dsa_meth.c +++ b/deps/openssl/openssl/crypto/dsa/dsa_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -83,7 +83,7 @@ int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name) return 1; } -int DSA_meth_get_flags(DSA_METHOD *dsam) +int DSA_meth_get_flags(const DSA_METHOD *dsam) { return dsam->flags; } diff --git a/deps/openssl/openssl/crypto/dsa/dsa_ossl.c b/deps/openssl/openssl/crypto/dsa/dsa_ossl.c index 7f48cf2e3326..4aa49f554af3 100644 --- a/deps/openssl/openssl/crypto/dsa/dsa_ossl.c +++ b/deps/openssl/openssl/crypto/dsa/dsa_ossl.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -61,19 +61,13 @@ const DSA_METHOD *DSA_OpenSSL(void) static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) { BIGNUM *kinv = NULL; - BIGNUM *m; - BIGNUM *xr; + BIGNUM *m, *blind, *blindm, *tmp; BN_CTX *ctx = NULL; int reason = ERR_R_BN_LIB; DSA_SIG *ret = NULL; int rv = 0; - m = BN_new(); - xr = BN_new(); - if (m == NULL || xr == NULL) - goto err; - - if (!dsa->p || !dsa->q || !dsa->g) { + if (dsa->p == NULL || dsa->q == NULL || dsa->g == NULL) { reason = DSA_R_MISSING_PARAMETERS; goto err; } @@ -89,6 +83,13 @@ static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) ctx = BN_CTX_new(); if (ctx == NULL) goto err; + m = BN_CTX_get(ctx); + blind = BN_CTX_get(ctx); + blindm = BN_CTX_get(ctx); + tmp = BN_CTX_get(ctx); + if (tmp == NULL) + goto err; + redo: if (!dsa_sign_setup(dsa, ctx, &kinv, &ret->r, dgst, dlen)) goto err; @@ -103,17 +104,50 @@ static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) if (BN_bin2bn(dgst, dlen, m) == NULL) goto err; - /* Compute s = inv(k) (m + xr) mod q */ - if (!BN_mod_mul(xr, dsa->priv_key, ret->r, dsa->q, ctx)) - goto err; /* s = xr */ - if (!BN_add(ret->s, xr, m)) - goto err; /* s = m + xr */ - if (BN_cmp(ret->s, dsa->q) > 0) - if (!BN_sub(ret->s, ret->s, dsa->q)) + /* + * The normal signature calculation is: + * + * s := k^-1 * (m + r * priv_key) mod q + * + * We will blind this to protect against side channel attacks + * + * s := blind^-1 * k^-1 * (blind * m + blind * r * priv_key) mod q + */ + + /* Generate a blinding value */ + do { + if (!BN_rand(blind, BN_num_bits(dsa->q) - 1, BN_RAND_TOP_ANY, + BN_RAND_BOTTOM_ANY)) goto err; + } while (BN_is_zero(blind)); + BN_set_flags(blind, BN_FLG_CONSTTIME); + BN_set_flags(blindm, BN_FLG_CONSTTIME); + BN_set_flags(tmp, BN_FLG_CONSTTIME); + + /* tmp := blind * priv_key * r mod q */ + if (!BN_mod_mul(tmp, blind, dsa->priv_key, dsa->q, ctx)) + goto err; + if (!BN_mod_mul(tmp, tmp, ret->r, dsa->q, ctx)) + goto err; + + /* blindm := blind * m mod q */ + if (!BN_mod_mul(blindm, blind, m, dsa->q, ctx)) + goto err; + + /* s : = (blind * priv_key * r) + (blind * m) mod q */ + if (!BN_mod_add_quick(ret->s, tmp, blindm, dsa->q)) + goto err; + + /* s := s * k^-1 mod q */ if (!BN_mod_mul(ret->s, ret->s, kinv, dsa->q, ctx)) goto err; + /* s:= s * blind^-1 mod q */ + if (BN_mod_inverse(blind, blind, dsa->q, ctx) == NULL) + goto err; + if (!BN_mod_mul(ret->s, ret->s, blind, dsa->q, ctx)) + goto err; + /* * Redo if r or s is zero as required by FIPS 186-3: this is very * unlikely. @@ -130,8 +164,6 @@ static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa) ret = NULL; } BN_CTX_free(ctx); - BN_clear_free(m); - BN_clear_free(xr); BN_clear_free(kinv); return ret; } diff --git a/deps/openssl/openssl/crypto/dsa/dsa_pmeth.c b/deps/openssl/openssl/crypto/dsa/dsa_pmeth.c index 95f088a5ec25..d60631695482 100644 --- a/deps/openssl/openssl/crypto/dsa/dsa_pmeth.c +++ b/deps/openssl/openssl/crypto/dsa/dsa_pmeth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -76,13 +76,8 @@ static int pkey_dsa_sign(EVP_PKEY_CTX *ctx, unsigned char *sig, DSA_PKEY_CTX *dctx = ctx->data; DSA *dsa = ctx->pkey->pkey.dsa; - if (dctx->md) { - if (tbslen != (size_t)EVP_MD_size(dctx->md)) - return 0; - } else { - if (tbslen != SHA_DIGEST_LENGTH) - return 0; - } + if (dctx->md != NULL && tbslen != (size_t)EVP_MD_size(dctx->md)) + return 0; ret = DSA_sign(0, tbs, tbslen, sig, &sltmp, dsa); @@ -100,13 +95,8 @@ static int pkey_dsa_verify(EVP_PKEY_CTX *ctx, DSA_PKEY_CTX *dctx = ctx->data; DSA *dsa = ctx->pkey->pkey.dsa; - if (dctx->md) { - if (tbslen != (size_t)EVP_MD_size(dctx->md)) - return 0; - } else { - if (tbslen != SHA_DIGEST_LENGTH) - return 0; - } + if (dctx->md != NULL && tbslen != (size_t)EVP_MD_size(dctx->md)) + return 0; ret = DSA_verify(0, tbs, tbslen, sig, siglen, dsa); @@ -187,9 +177,15 @@ static int pkey_dsa_ctrl_str(EVP_PKEY_CTX *ctx, NULL); } if (strcmp(type, "dsa_paramgen_md") == 0) { + const EVP_MD *md = EVP_get_digestbyname(value); + + if (md == NULL) { + DSAerr(DSA_F_PKEY_DSA_CTRL_STR, DSA_R_INVALID_DIGEST_TYPE); + return 0; + } return EVP_PKEY_CTX_ctrl(ctx, EVP_PKEY_DSA, EVP_PKEY_OP_PARAMGEN, EVP_PKEY_CTRL_DSA_PARAMGEN_MD, 0, - (void *)EVP_get_digestbyname(value)); + (void *)md); } return -2; } diff --git a/deps/openssl/openssl/crypto/dso/dso_dlfcn.c b/deps/openssl/openssl/crypto/dso/dso_dlfcn.c index a4b0cdd95b5d..e01425bc75e8 100644 --- a/deps/openssl/openssl/crypto/dso/dso_dlfcn.c +++ b/deps/openssl/openssl/crypto/dso/dso_dlfcn.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-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 @@ -26,7 +26,7 @@ # endif # include # define HAVE_DLINFO 1 -# if defined(_AIX) || defined(__CYGWIN__) || \ +# if defined(__CYGWIN__) || \ defined(__SCO_VERSION__) || defined(_SCO_ELF) || \ (defined(__osf__) && !defined(RTLD_NEXT)) || \ (defined(__OpenBSD__) && !defined(RTLD_SELF)) || \ @@ -308,6 +308,76 @@ static int dladdr(void *address, Dl_info *dl) } # endif /* __sgi */ +# ifdef _AIX +/*- + * See IBM's AIX Version 7.2, Technical Reference: + * Base Operating System and Extensions, Volume 1 and 2 + * https://www.ibm.com/support/knowledgecenter/ssw_aix_72/com.ibm.aix.base/technicalreferences.htm + */ +# include +# include +/* ~ 64 * (sizeof(struct ld_info) + _XOPEN_PATH_MAX + _XOPEN_NAME_MAX) */ +# define DLFCN_LDINFO_SIZE 86976 +typedef struct Dl_info { + const char *dli_fname; +} Dl_info; +/* + * This dladdr()-implementation will also find the ptrgl (Pointer Glue) virtual + * address of a function, which is just located in the DATA segment instead of + * the TEXT segment. + */ +static int dladdr(void *ptr, Dl_info *dl) +{ + uintptr_t addr = (uintptr_t)ptr; + unsigned int found = 0; + struct ld_info *ldinfos, *next_ldi, *this_ldi; + + if ((ldinfos = (struct ld_info *)OPENSSL_malloc(DLFCN_LDINFO_SIZE)) == NULL) { + errno = ENOMEM; + dl->dli_fname = NULL; + return 0; + } + + if ((loadquery(L_GETINFO, (void *)ldinfos, DLFCN_LDINFO_SIZE)) < 0) { + /*- + * Error handling is done through errno and dlerror() reading errno: + * ENOMEM (ldinfos buffer is too small), + * EINVAL (invalid flags), + * EFAULT (invalid ldinfos ptr) + */ + OPENSSL_free((void *)ldinfos); + dl->dli_fname = NULL; + return 0; + } + next_ldi = ldinfos; + + do { + this_ldi = next_ldi; + if (((addr >= (uintptr_t)this_ldi->ldinfo_textorg) + && (addr < ((uintptr_t)this_ldi->ldinfo_textorg + + this_ldi->ldinfo_textsize))) + || ((addr >= (uintptr_t)this_ldi->ldinfo_dataorg) + && (addr < ((uintptr_t)this_ldi->ldinfo_dataorg + + this_ldi->ldinfo_datasize)))) { + found = 1; + /* + * Ignoring the possibility of a member name and just returning + * the path name. See docs: sys/ldr.h, loadquery() and + * dlopen()/RTLD_MEMBER. + */ + if ((dl->dli_fname = + OPENSSL_strdup(this_ldi->ldinfo_filename)) == NULL) + errno = ENOMEM; + } else { + next_ldi = + (struct ld_info *)((uintptr_t)this_ldi + this_ldi->ldinfo_next); + } + } while (this_ldi->ldinfo_next && !found); + OPENSSL_free((void *)ldinfos); + return (found && dl->dli_fname != NULL); +} +# endif /* _AIX */ + static int dlfcn_pathbyaddr(void *addr, char *path, int sz) { # ifdef HAVE_DLINFO @@ -326,12 +396,19 @@ static int dlfcn_pathbyaddr(void *addr, char *path, int sz) if (dladdr(addr, &dli)) { len = (int)strlen(dli.dli_fname); - if (sz <= 0) + if (sz <= 0) { +# ifdef _AIX + OPENSSL_free((void *)dli.dli_fname); +# endif return len + 1; + } if (len >= sz) len = sz - 1; memcpy(path, dli.dli_fname, len); path[len++] = 0; +# ifdef _AIX + OPENSSL_free((void *)dli.dli_fname); +# endif return len; } diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv4.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv4.pl index 2314b7524421..4eb4c68977e4 100755 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv4.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -894,13 +894,13 @@ .Loop_scatter_w7: ldr $mask,[$inp],#4 subs $index,$index,#1 - strb $mask,[$out,#64*0-1] + strb $mask,[$out,#64*0] mov $mask,$mask,lsr#8 - strb $mask,[$out,#64*1-1] + strb $mask,[$out,#64*1] mov $mask,$mask,lsr#8 - strb $mask,[$out,#64*2-1] + strb $mask,[$out,#64*2] mov $mask,$mask,lsr#8 - strb $mask,[$out,#64*3-1] + strb $mask,[$out,#64*3] add $out,$out,#64*4 bne .Loop_scatter_w7 @@ -1633,7 +1633,7 @@ $code.=<<___; .Ladd_done: add sp,sp,#32*18+16+16 @ +16 means "skip even over saved r0-r3" -#if __ARM_ARCH__>=5 || defined(__thumb__) +#if __ARM_ARCH__>=5 || !defined(__thumb__) ldmia sp!,{r4-r12,pc} #else ldmia sp!,{r4-r12,lr} diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv8.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv8.pl index d93c4fe9575d..2a39675bfd10 100644 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv8.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-armv8.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -660,7 +660,7 @@ adc $ap,xzr,xzr // zap $ap tst $acc0,#1 // is a even? - csel $acc0,$acc0,$t0,eq // ret = even ? a : a+modulus + csel $acc0,$acc0,$t0,eq // ret = even ? a : a+modulus csel $acc1,$acc1,$t1,eq csel $acc2,$acc2,$t2,eq csel $acc3,$acc3,$t3,eq @@ -1477,21 +1477,21 @@ prfm pstl1strm,[$out,#4096+64*5] prfm pstl1strm,[$out,#4096+64*6] prfm pstl1strm,[$out,#4096+64*7] - strb w3,[$out,#64*0-1] + strb w3,[$out,#64*0] lsr x3,x3,#8 - strb w3,[$out,#64*1-1] + strb w3,[$out,#64*1] lsr x3,x3,#8 - strb w3,[$out,#64*2-1] + strb w3,[$out,#64*2] lsr x3,x3,#8 - strb w3,[$out,#64*3-1] + strb w3,[$out,#64*3] lsr x3,x3,#8 - strb w3,[$out,#64*4-1] + strb w3,[$out,#64*4] lsr x3,x3,#8 - strb w3,[$out,#64*5-1] + strb w3,[$out,#64*5] lsr x3,x3,#8 - strb w3,[$out,#64*6-1] + strb w3,[$out,#64*6] lsr x3,x3,#8 - strb w3,[$out,#64*7-1] + strb w3,[$out,#64*7] add $out,$out,#64*8 b.ne .Loop_scatter_w7 diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-avx2.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-avx2.pl index 3bdd2cf13f01..edd7d01281ca 100755 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-avx2.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-avx2.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2014-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 @@ -67,7 +67,7 @@ $addx = ($1>=12); } -if (!$addx && `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9])\.([0-9]+)/) { +if (!$addx && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9])\.([0-9]+)/) { my $ver = $2 + $3/100.0; # 3.1->3.01, 3.10->3.10 $avx = ($ver>=3.0) + ($ver>=3.01); $addx = ($ver>=3.03); diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-sparcv9.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-sparcv9.pl index ee110694590c..0c1af95b134b 100755 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-sparcv9.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-sparcv9.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -1531,13 +1531,13 @@ ld [$inp],%l0 add $inp,4,$inp subcc $index,1,$index - stb %l0,[$out+64*0-1] + stb %l0,[$out+64*0] srl %l0,8,%l1 - stb %l1,[$out+64*1-1] + stb %l1,[$out+64*1] srl %l0,16,%l2 - stb %l2,[$out+64*2-1] + stb %l2,[$out+64*2] srl %l0,24,%l3 - stb %l3,[$out+64*3-1] + stb %l3,[$out+64*3] bne .Loop_scatter_w7 add $out,64*4,$out @@ -1874,7 +1874,7 @@ ldx [$bp+8*($i+1)],$bi ! bp[$i+1] ___ $code.=<<___; - addcc $acc1,$t0,$acc1 ! accumulate high parts of multiplication + addcc $acc1,$t0,$acc1 ! accumulate high parts of multiplication sllx $acc0,32,$t0 addxccc $acc2,$t1,$acc2 srlx $acc0,32,$t1 diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86.pl index f637c844c4ef..b3bec23228f3 100755 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -443,7 +443,7 @@ &mov (&DWP(20,"esp"),"eax"); &mov (&DWP(24,"esp"),"eax"); &mov (&DWP(28,"esp"),"eax"); - + &call ("_ecp_nistz256_sub"); &stack_pop(8); @@ -1179,7 +1179,7 @@ &mov ("esi",&wparam(1)); &mov ("ebp",&wparam(2)); - &lea ("edi",&DWP(-1,"edi","ebp")); + &lea ("edi",&DWP(0,"edi","ebp")); &mov ("ebp",64/4); &set_label("scatter_w7_loop"); &mov ("eax",&DWP(0,"esi")); diff --git a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl index 183137e5f0a8..714e852a1826 100755 --- a/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl +++ b/deps/openssl/openssl/crypto/ec/asm/ecp_nistz256-x86_64.pl @@ -3051,8 +3051,8 @@ () ######################################################################## # Convert ecp_nistz256_table.c to layout expected by ecp_nistz_gather_w7 # -open TABLE,"Z, src->Z)) return 0; dest->Z_is_one = src->Z_is_one; + dest->curve_name = src->curve_name; return 1; } diff --git a/deps/openssl/openssl/crypto/ec/ec_ameth.c b/deps/openssl/openssl/crypto/ec/ec_ameth.c index b66adf2bbc24..f8f1e2c842ce 100644 --- a/deps/openssl/openssl/crypto/ec/ec_ameth.c +++ b/deps/openssl/openssl/crypto/ec/ec_ameth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -92,19 +92,19 @@ static int eckey_pub_encode(X509_PUBKEY *pk, const EVP_PKEY *pkey) static EC_KEY *eckey_type2param(int ptype, const void *pval) { EC_KEY *eckey = NULL; + EC_GROUP *group = NULL; + if (ptype == V_ASN1_SEQUENCE) { const ASN1_STRING *pstr = pval; - const unsigned char *pm = NULL; - int pmlen; - pm = pstr->data; - pmlen = pstr->length; + const unsigned char *pm = pstr->data; + int pmlen = pstr->length; + if ((eckey = d2i_ECParameters(NULL, &pm, pmlen)) == NULL) { ECerr(EC_F_ECKEY_TYPE2PARAM, EC_R_DECODE_ERROR); goto ecerr; } } else if (ptype == V_ASN1_OBJECT) { const ASN1_OBJECT *poid = pval; - EC_GROUP *group; /* * type == V_ASN1_OBJECT => the parameters are given by an asn1 OID @@ -129,6 +129,7 @@ static EC_KEY *eckey_type2param(int ptype, const void *pval) ecerr: EC_KEY_free(eckey); + EC_GROUP_free(group); return NULL; } diff --git a/deps/openssl/openssl/crypto/ec/ec_curve.c b/deps/openssl/openssl/crypto/ec/ec_curve.c index f8a3846fd566..b022528be2fd 100644 --- a/deps/openssl/openssl/crypto/ec/ec_curve.c +++ b/deps/openssl/openssl/crypto/ec/ec_curve.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-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 @@ -3036,6 +3036,8 @@ static EC_GROUP *ec_group_new_from_data(const ec_list_element curve) } #endif + EC_GROUP_set_curve_name(group, curve.nid); + if ((P = EC_POINT_new(group)) == NULL) { ECerr(EC_F_EC_GROUP_NEW_FROM_DATA, ERR_R_EC_LIB); goto err; @@ -3101,8 +3103,6 @@ EC_GROUP *EC_GROUP_new_by_curve_name(int nid) return NULL; } - EC_GROUP_set_curve_name(ret, nid); - return ret; } diff --git a/deps/openssl/openssl/crypto/ec/ec_lcl.h b/deps/openssl/openssl/crypto/ec/ec_lcl.h index ded35a72a014..d8141704cfb1 100644 --- a/deps/openssl/openssl/crypto/ec/ec_lcl.h +++ b/deps/openssl/openssl/crypto/ec/ec_lcl.h @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -269,6 +269,8 @@ struct ec_key_st { struct ec_point_st { const EC_METHOD *meth; + /* NID for the curve if known */ + int curve_name; /* * All members except 'meth' are handled by the method functions, even if * they appear generic @@ -281,6 +283,20 @@ struct ec_point_st { * special case */ }; + +static ossl_inline int ec_point_is_compat(const EC_POINT *point, + const EC_GROUP *group) +{ + if (group->meth != point->meth + || (group->curve_name != 0 + && point->curve_name != 0 + && group->curve_name != point->curve_name)) + return 0; + + return 1; +} + + NISTP224_PRE_COMP *EC_nistp224_pre_comp_dup(NISTP224_PRE_COMP *); NISTP256_PRE_COMP *EC_nistp256_pre_comp_dup(NISTP256_PRE_COMP *); NISTP521_PRE_COMP *EC_nistp521_pre_comp_dup(NISTP521_PRE_COMP *); diff --git a/deps/openssl/openssl/crypto/ec/ec_lib.c b/deps/openssl/openssl/crypto/ec/ec_lib.c index 7cb4bfee2844..e256e4e51180 100644 --- a/deps/openssl/openssl/crypto/ec/ec_lib.c +++ b/deps/openssl/openssl/crypto/ec/ec_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -140,6 +140,8 @@ int EC_GROUP_copy(EC_GROUP *dest, const EC_GROUP *src) if (dest == src) return 1; + dest->curve_name = src->curve_name; + /* Copy precomputed */ dest->pre_comp_type = src->pre_comp_type; switch (src->pre_comp_type) { @@ -202,7 +204,6 @@ int EC_GROUP_copy(EC_GROUP *dest, const EC_GROUP *src) return 0; } - dest->curve_name = src->curve_name; dest->asn1_flag = src->asn1_flag; dest->asn1_form = src->asn1_form; @@ -563,6 +564,7 @@ EC_POINT *EC_POINT_new(const EC_GROUP *group) } ret->meth = group->meth; + ret->curve_name = group->curve_name; if (!ret->meth->point_init(ret)) { OPENSSL_free(ret); @@ -600,7 +602,10 @@ int EC_POINT_copy(EC_POINT *dest, const EC_POINT *src) ECerr(EC_F_EC_POINT_COPY, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (dest->meth != src->meth) { + if (dest->meth != src->meth + || (dest->curve_name != src->curve_name + && dest->curve_name != 0 + && src->curve_name != 0)) { ECerr(EC_F_EC_POINT_COPY, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -657,7 +662,7 @@ int EC_POINT_set_Jprojective_coordinates_GFp(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_SET_JPROJECTIVE_COORDINATES_GFP, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -676,7 +681,7 @@ int EC_POINT_get_Jprojective_coordinates_GFp(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_GET_JPROJECTIVE_COORDINATES_GFP, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -694,7 +699,7 @@ int EC_POINT_set_affine_coordinates_GFp(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_SET_AFFINE_COORDINATES_GFP, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -720,7 +725,7 @@ int EC_POINT_set_affine_coordinates_GF2m(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_SET_AFFINE_COORDINATES_GF2M, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -746,7 +751,7 @@ int EC_POINT_get_affine_coordinates_GFp(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_GET_AFFINE_COORDINATES_GFP, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -764,7 +769,7 @@ int EC_POINT_get_affine_coordinates_GF2m(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_GET_AFFINE_COORDINATES_GF2M, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -780,8 +785,8 @@ int EC_POINT_add(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a, ECerr(EC_F_EC_POINT_ADD, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if ((group->meth != r->meth) || (r->meth != a->meth) - || (a->meth != b->meth)) { + if (!ec_point_is_compat(r, group) || !ec_point_is_compat(a, group) + || !ec_point_is_compat(b, group)) { ECerr(EC_F_EC_POINT_ADD, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -795,7 +800,7 @@ int EC_POINT_dbl(const EC_GROUP *group, EC_POINT *r, const EC_POINT *a, ECerr(EC_F_EC_POINT_DBL, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if ((group->meth != r->meth) || (r->meth != a->meth)) { + if (!ec_point_is_compat(r, group) || !ec_point_is_compat(a, group)) { ECerr(EC_F_EC_POINT_DBL, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -808,7 +813,7 @@ int EC_POINT_invert(const EC_GROUP *group, EC_POINT *a, BN_CTX *ctx) ECerr(EC_F_EC_POINT_INVERT, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != a->meth) { + if (!ec_point_is_compat(a, group)) { ECerr(EC_F_EC_POINT_INVERT, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -822,7 +827,7 @@ int EC_POINT_is_at_infinity(const EC_GROUP *group, const EC_POINT *point) ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_IS_AT_INFINITY, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -843,7 +848,7 @@ int EC_POINT_is_on_curve(const EC_GROUP *group, const EC_POINT *point, ECerr(EC_F_EC_POINT_IS_ON_CURVE, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_IS_ON_CURVE, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -857,7 +862,7 @@ int EC_POINT_cmp(const EC_GROUP *group, const EC_POINT *a, const EC_POINT *b, ECerr(EC_F_EC_POINT_CMP, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return -1; } - if ((group->meth != a->meth) || (a->meth != b->meth)) { + if (!ec_point_is_compat(a, group) || !ec_point_is_compat(b, group)) { ECerr(EC_F_EC_POINT_CMP, EC_R_INCOMPATIBLE_OBJECTS); return -1; } @@ -870,7 +875,7 @@ int EC_POINT_make_affine(const EC_GROUP *group, EC_POINT *point, BN_CTX *ctx) ECerr(EC_F_EC_POINT_MAKE_AFFINE, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_MAKE_AFFINE, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -887,7 +892,7 @@ int EC_POINTs_make_affine(const EC_GROUP *group, size_t num, return 0; } for (i = 0; i < num; i++) { - if (group->meth != points[i]->meth) { + if (!ec_point_is_compat(points[i], group)) { ECerr(EC_F_EC_POINTS_MAKE_AFFINE, EC_R_INCOMPATIBLE_OBJECTS); return 0; } diff --git a/deps/openssl/openssl/crypto/ec/ec_mult.c b/deps/openssl/openssl/crypto/ec/ec_mult.c index b39777fbf2f0..56c7767772d1 100644 --- a/deps/openssl/openssl/crypto/ec/ec_mult.c +++ b/deps/openssl/openssl/crypto/ec/ec_mult.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -105,6 +105,224 @@ void EC_ec_pre_comp_free(EC_PRE_COMP *pre) OPENSSL_free(pre); } +#define EC_POINT_BN_set_flags(P, flags) do { \ + BN_set_flags((P)->X, (flags)); \ + BN_set_flags((P)->Y, (flags)); \ + BN_set_flags((P)->Z, (flags)); \ +} while(0) + +/*- + * This functions computes (in constant time) a point multiplication over the + * EC group. + * + * At a high level, it is Montgomery ladder with conditional swaps. + * + * It performs either a fixed scalar point multiplication + * (scalar * generator) + * when point is NULL, or a generic scalar point multiplication + * (scalar * point) + * when point is not NULL. + * + * scalar should be in the range [0,n) otherwise all constant time bets are off. + * + * NB: This says nothing about EC_POINT_add and EC_POINT_dbl, + * which of course are not constant time themselves. + * + * The product is stored in r. + * + * Returns 1 on success, 0 otherwise. + */ +static int ec_mul_consttime(const EC_GROUP *group, EC_POINT *r, + const BIGNUM *scalar, const EC_POINT *point, + BN_CTX *ctx) +{ + int i, cardinality_bits, group_top, kbit, pbit, Z_is_one; + EC_POINT *s = NULL; + BIGNUM *k = NULL; + BIGNUM *lambda = NULL; + BIGNUM *cardinality = NULL; + BN_CTX *new_ctx = NULL; + int ret = 0; + + if (ctx == NULL && (ctx = new_ctx = BN_CTX_secure_new()) == NULL) + return 0; + + BN_CTX_start(ctx); + + s = EC_POINT_new(group); + if (s == NULL) + goto err; + + if (point == NULL) { + if (!EC_POINT_copy(s, group->generator)) + goto err; + } else { + if (!EC_POINT_copy(s, point)) + goto err; + } + + EC_POINT_BN_set_flags(s, BN_FLG_CONSTTIME); + + cardinality = BN_CTX_get(ctx); + lambda = BN_CTX_get(ctx); + k = BN_CTX_get(ctx); + if (k == NULL || !BN_mul(cardinality, group->order, group->cofactor, ctx)) + goto err; + + /* + * Group cardinalities are often on a word boundary. + * So when we pad the scalar, some timing diff might + * pop if it needs to be expanded due to carries. + * So expand ahead of time. + */ + cardinality_bits = BN_num_bits(cardinality); + group_top = bn_get_top(cardinality); + if ((bn_wexpand(k, group_top + 1) == NULL) + || (bn_wexpand(lambda, group_top + 1) == NULL)) + goto err; + + if (!BN_copy(k, scalar)) + goto err; + + BN_set_flags(k, BN_FLG_CONSTTIME); + + if ((BN_num_bits(k) > cardinality_bits) || (BN_is_negative(k))) { + /*- + * this is an unusual input, and we don't guarantee + * constant-timeness + */ + if (!BN_nnmod(k, k, cardinality, ctx)) + goto err; + } + + if (!BN_add(lambda, k, cardinality)) + goto err; + BN_set_flags(lambda, BN_FLG_CONSTTIME); + if (!BN_add(k, lambda, cardinality)) + goto err; + /* + * lambda := scalar + cardinality + * k := scalar + 2*cardinality + */ + kbit = BN_is_bit_set(lambda, cardinality_bits); + BN_consttime_swap(kbit, k, lambda, group_top + 1); + + group_top = bn_get_top(group->field); + if ((bn_wexpand(s->X, group_top) == NULL) + || (bn_wexpand(s->Y, group_top) == NULL) + || (bn_wexpand(s->Z, group_top) == NULL) + || (bn_wexpand(r->X, group_top) == NULL) + || (bn_wexpand(r->Y, group_top) == NULL) + || (bn_wexpand(r->Z, group_top) == NULL)) + goto err; + + /* top bit is a 1, in a fixed pos */ + if (!EC_POINT_copy(r, s)) + goto err; + + EC_POINT_BN_set_flags(r, BN_FLG_CONSTTIME); + + if (!EC_POINT_dbl(group, s, s, ctx)) + goto err; + + pbit = 0; + +#define EC_POINT_CSWAP(c, a, b, w, t) do { \ + BN_consttime_swap(c, (a)->X, (b)->X, w); \ + BN_consttime_swap(c, (a)->Y, (b)->Y, w); \ + BN_consttime_swap(c, (a)->Z, (b)->Z, w); \ + t = ((a)->Z_is_one ^ (b)->Z_is_one) & (c); \ + (a)->Z_is_one ^= (t); \ + (b)->Z_is_one ^= (t); \ +} while(0) + + /*- + * The ladder step, with branches, is + * + * k[i] == 0: S = add(R, S), R = dbl(R) + * k[i] == 1: R = add(S, R), S = dbl(S) + * + * Swapping R, S conditionally on k[i] leaves you with state + * + * k[i] == 0: T, U = R, S + * k[i] == 1: T, U = S, R + * + * Then perform the ECC ops. + * + * U = add(T, U) + * T = dbl(T) + * + * Which leaves you with state + * + * k[i] == 0: U = add(R, S), T = dbl(R) + * k[i] == 1: U = add(S, R), T = dbl(S) + * + * Swapping T, U conditionally on k[i] leaves you with state + * + * k[i] == 0: R, S = T, U + * k[i] == 1: R, S = U, T + * + * Which leaves you with state + * + * k[i] == 0: S = add(R, S), R = dbl(R) + * k[i] == 1: R = add(S, R), S = dbl(S) + * + * So we get the same logic, but instead of a branch it's a + * conditional swap, followed by ECC ops, then another conditional swap. + * + * Optimization: The end of iteration i and start of i-1 looks like + * + * ... + * CSWAP(k[i], R, S) + * ECC + * CSWAP(k[i], R, S) + * (next iteration) + * CSWAP(k[i-1], R, S) + * ECC + * CSWAP(k[i-1], R, S) + * ... + * + * So instead of two contiguous swaps, you can merge the condition + * bits and do a single swap. + * + * k[i] k[i-1] Outcome + * 0 0 No Swap + * 0 1 Swap + * 1 0 Swap + * 1 1 No Swap + * + * This is XOR. pbit tracks the previous bit of k. + */ + + for (i = cardinality_bits - 1; i >= 0; i--) { + kbit = BN_is_bit_set(k, i) ^ pbit; + EC_POINT_CSWAP(kbit, r, s, group_top, Z_is_one); + if (!EC_POINT_add(group, s, r, s, ctx)) + goto err; + if (!EC_POINT_dbl(group, r, r, ctx)) + goto err; + /* + * pbit logic merges this cswap with that of the + * next iteration + */ + pbit ^= kbit; + } + /* one final cswap to move the right value into r */ + EC_POINT_CSWAP(pbit, r, s, group_top, Z_is_one); +#undef EC_POINT_CSWAP + + ret = 1; + + err: + EC_POINT_free(s); + BN_CTX_end(ctx); + BN_CTX_free(new_ctx); + + return ret; +} + +#undef EC_POINT_BN_set_flags + /* * TODO: table should be optimised for the wNAF-based implementation, * sometimes smaller windows will give better performance (thus the @@ -155,7 +373,7 @@ int ec_wNAF_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, * precomputation is not available */ int ret = 0; - if (group->meth != r->meth) { + if (!ec_point_is_compat(r, group)) { ECerr(EC_F_EC_WNAF_MUL, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -164,8 +382,34 @@ int ec_wNAF_mul(const EC_GROUP *group, EC_POINT *r, const BIGNUM *scalar, return EC_POINT_set_to_infinity(group, r); } + /*- + * Handle the common cases where the scalar is secret, enforcing a constant + * time scalar multiplication algorithm. + */ + if ((scalar != NULL) && (num == 0)) { + /*- + * In this case we want to compute scalar * GeneratorPoint: this + * codepath is reached most prominently by (ephemeral) key generation + * of EC cryptosystems (i.e. ECDSA keygen and sign setup, ECDH + * keygen/first half), where the scalar is always secret. This is why + * we ignore if BN_FLG_CONSTTIME is actually set and we always call the + * constant time version. + */ + return ec_mul_consttime(group, r, scalar, NULL, ctx); + } + if ((scalar == NULL) && (num == 1)) { + /*- + * In this case we want to compute scalar * GenericPoint: this codepath + * is reached most prominently by the second half of ECDH, where the + * secret scalar is multiplied by the peer's public point. To protect + * the secret scalar, we ignore if BN_FLG_CONSTTIME is actually set and + * we always call the constant time version. + */ + return ec_mul_consttime(group, r, scalars[0], points[0], ctx); + } + for (i = 0; i < num; i++) { - if (group->meth != points[i]->meth) { + if (!ec_point_is_compat(points[i], group)) { ECerr(EC_F_EC_WNAF_MUL, EC_R_INCOMPATIBLE_OBJECTS); return 0; } diff --git a/deps/openssl/openssl/crypto/ec/ec_oct.c b/deps/openssl/openssl/crypto/ec/ec_oct.c index effc42a344da..e185df6edfd5 100644 --- a/deps/openssl/openssl/crypto/ec/ec_oct.c +++ b/deps/openssl/openssl/crypto/ec/ec_oct.c @@ -1,5 +1,5 @@ /* - * Copyright 2011-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2011-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 @@ -30,7 +30,7 @@ int EC_POINT_set_compressed_coordinates_GFp(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GFP, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -66,7 +66,7 @@ int EC_POINT_set_compressed_coordinates_GF2m(const EC_GROUP *group, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_SET_COMPRESSED_COORDINATES_GF2M, EC_R_INCOMPATIBLE_OBJECTS); return 0; @@ -93,7 +93,7 @@ size_t EC_POINT_point2oct(const EC_GROUP *group, const EC_POINT *point, ECerr(EC_F_EC_POINT_POINT2OCT, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_POINT2OCT, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -123,7 +123,7 @@ int EC_POINT_oct2point(const EC_GROUP *group, EC_POINT *point, ECerr(EC_F_EC_POINT_OCT2POINT, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return 0; } - if (group->meth != point->meth) { + if (!ec_point_is_compat(point, group)) { ECerr(EC_F_EC_POINT_OCT2POINT, EC_R_INCOMPATIBLE_OBJECTS); return 0; } diff --git a/deps/openssl/openssl/crypto/ec/ecdsa_ossl.c b/deps/openssl/openssl/crypto/ec/ecdsa_ossl.c index 449be0e92a60..9e4a68d9ca35 100644 --- a/deps/openssl/openssl/crypto/ec/ecdsa_ossl.c +++ b/deps/openssl/openssl/crypto/ec/ecdsa_ossl.c @@ -1,5 +1,5 @@ /* - * Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2002-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 @@ -10,9 +10,8 @@ #include #include #include -#include #include -#include +#include "internal/bn_int.h" #include "ec_lcl.h" int ossl_ecdsa_sign(int type, const unsigned char *dgst, int dlen, @@ -53,13 +52,12 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, return 0; } - if (ctx_in == NULL) { + if ((ctx = ctx_in) == NULL) { if ((ctx = BN_CTX_new()) == NULL) { ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_MALLOC_FAILURE); return 0; } - } else - ctx = ctx_in; + } k = BN_new(); /* this value is later returned in *kinvp */ r = BN_new(); /* this value is later returned in *rp */ @@ -73,10 +71,6 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, goto err; } order = EC_GROUP_get0_order(group); - if (order == NULL) { - ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_EC_LIB); - goto err; - } /* Preallocate space */ order_bits = BN_num_bits(order); @@ -87,23 +81,23 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, do { /* get random k */ - do + do { if (dgst != NULL) { - if (!BN_generate_dsa_nonce - (k, order, EC_KEY_get0_private_key(eckey), dgst, dlen, - ctx)) { + if (!BN_generate_dsa_nonce(k, order, + EC_KEY_get0_private_key(eckey), + dgst, dlen, ctx)) { ECerr(EC_F_ECDSA_SIGN_SETUP, - EC_R_RANDOM_NUMBER_GENERATION_FAILED); + EC_R_RANDOM_NUMBER_GENERATION_FAILED); goto err; } } else { if (!BN_rand_range(k, order)) { ECerr(EC_F_ECDSA_SIGN_SETUP, - EC_R_RANDOM_NUMBER_GENERATION_FAILED); + EC_R_RANDOM_NUMBER_GENERATION_FAILED); goto err; } } - while (BN_is_zero(k)); + } while (BN_is_zero(k)); /* * We do not want timing information to leak the length of k, so we @@ -129,18 +123,16 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, } if (EC_METHOD_get_field_type(EC_GROUP_method_of(group)) == NID_X9_62_prime_field) { - if (!EC_POINT_get_affine_coordinates_GFp - (group, tmp_point, X, NULL, ctx)) { + if (!EC_POINT_get_affine_coordinates_GFp(group, tmp_point, X, + NULL, ctx)) { ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_EC_LIB); goto err; } } #ifndef OPENSSL_NO_EC2M else { /* NID_X9_62_characteristic_two_field */ - - if (!EC_POINT_get_affine_coordinates_GF2m(group, - tmp_point, X, NULL, - ctx)) { + if (!EC_POINT_get_affine_coordinates_GF2m(group, tmp_point, X, + NULL, ctx)) { ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_EC_LIB); goto err; } @@ -150,8 +142,7 @@ static int ecdsa_sign_setup(EC_KEY *eckey, BN_CTX *ctx_in, ECerr(EC_F_ECDSA_SIGN_SETUP, ERR_R_BN_LIB); goto err; } - } - while (BN_is_zero(r)); + } while (BN_is_zero(r)); /* compute the inverse of k */ if (EC_GROUP_get_mont_data(group) != NULL) { @@ -210,8 +201,7 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, EC_KEY *eckey) { int ok = 0, i; - BIGNUM *kinv = NULL, *s, *m = NULL, *tmp = NULL, *blind = NULL; - BIGNUM *blindm = NULL; + BIGNUM *kinv = NULL, *s, *m = NULL; const BIGNUM *order, *ckinv; BN_CTX *ctx = NULL; const EC_GROUP *group; @@ -244,27 +234,13 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, } s = ret->s; - ctx = BN_CTX_secure_new(); - if (ctx == NULL) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_MALLOC_FAILURE); - goto err; - } - - BN_CTX_start(ctx); - tmp = BN_CTX_get(ctx); - m = BN_CTX_get(ctx); - blind = BN_CTX_get(ctx); - blindm = BN_CTX_get(ctx); - if (blindm == NULL) { + if ((ctx = BN_CTX_new()) == NULL + || (m = BN_new()) == NULL) { ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_MALLOC_FAILURE); goto err; } order = EC_GROUP_get0_order(group); - if (order == NULL) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_EC_LIB); - goto err; - } i = BN_num_bits(order); /* * Need to truncate digest if it is too long: first truncate whole bytes. @@ -275,7 +251,7 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); goto err; } - /* If still too long truncate remaining bits with a shift */ + /* If still too long, truncate remaining bits with a shift */ if ((8 * dgst_len > i) && !BN_rshift(m, m, 8 - (i & 0x7))) { ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); goto err; @@ -296,59 +272,27 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, } /* - * The normal signature calculation is: - * - * s := k^-1 * (m + r * priv_key) mod order - * - * We will blind this to protect against side channel attacks - * - * s := k^-1 * blind^-1 * (blind * m + blind * r * priv_key) mod order + * With only one multiplicant being in Montgomery domain + * multiplication yields real result without post-conversion. + * Also note that all operations but last are performed with + * zero-padded vectors. Last operation, BN_mod_mul_montgomery + * below, returns user-visible value with removed zero padding. */ - - /* Generate a blinding value */ - do { - if (!BN_rand(blind, BN_num_bits(order) - 1, BN_RAND_TOP_ANY, - BN_RAND_BOTTOM_ANY)) - goto err; - } while (BN_is_zero(blind)); - BN_set_flags(blind, BN_FLG_CONSTTIME); - BN_set_flags(blindm, BN_FLG_CONSTTIME); - BN_set_flags(tmp, BN_FLG_CONSTTIME); - - /* tmp := blind * priv_key * r mod order */ - if (!BN_mod_mul(tmp, blind, priv_key, order, ctx)) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); - goto err; - } - if (!BN_mod_mul(tmp, tmp, ret->r, order, ctx)) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); - goto err; - } - - /* blindm := blind * m mod order */ - if (!BN_mod_mul(blindm, blind, m, order, ctx)) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); - goto err; - } - - /* s : = (blind * priv_key * r) + (blind * m) mod order */ - if (!BN_mod_add_quick(s, tmp, blindm, order)) { - ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); - goto err; - } - - /* s:= s * blind^-1 mod order */ - if (BN_mod_inverse(blind, blind, order, ctx) == NULL) { + if (!bn_to_mont_fixed_top(s, ret->r, group->mont_data, ctx) + || !bn_mul_mont_fixed_top(s, s, priv_key, group->mont_data, ctx)) { ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); goto err; } - if (!BN_mod_mul(s, s, blind, order, ctx)) { + if (!bn_mod_add_fixed_top(s, s, m, order)) { ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); goto err; } - - /* s := s * k^-1 mod order */ - if (!BN_mod_mul(s, s, ckinv, order, ctx)) { + /* + * |s| can still be larger than modulus, because |m| can be. In + * such case we count on Montgomery reduction to tie it up. + */ + if (!bn_to_mont_fixed_top(s, s, group->mont_data, ctx) + || !BN_mod_mul_montgomery(s, s, ckinv, group->mont_data, ctx)) { ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); goto err; } @@ -362,11 +306,11 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, EC_R_NEED_NEW_SETUP_VALUES); goto err; } - } else + } else { /* s != 0 => we have a valid signature */ break; - } - while (1); + } + } while (1); ok = 1; err: @@ -374,8 +318,8 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, ECDSA_SIG_free(ret); ret = NULL; } - BN_CTX_end(ctx); BN_CTX_free(ctx); + BN_clear_free(m); BN_clear_free(kinv); return ret; } diff --git a/deps/openssl/openssl/crypto/ec/ecp_nistz256.c b/deps/openssl/openssl/crypto/ec/ecp_nistz256.c index 246189833ec2..4dbe21692721 100644 --- a/deps/openssl/openssl/crypto/ec/ecp_nistz256.c +++ b/deps/openssl/openssl/crypto/ec/ecp_nistz256.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-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 @@ -1110,28 +1110,12 @@ __owur static int ecp_nistz256_set_from_affine(EC_POINT *out, const EC_GROUP *gr const P256_POINT_AFFINE *in, BN_CTX *ctx) { - BIGNUM *x, *y; - BN_ULONG d_x[P256_LIMBS], d_y[P256_LIMBS]; int ret = 0; - x = BN_new(); - if (x == NULL) - return 0; - y = BN_new(); - if (y == NULL) { - BN_free(x); - return 0; - } - memcpy(d_x, in->X, sizeof(d_x)); - bn_set_static_words(x, d_x, P256_LIMBS); - - memcpy(d_y, in->Y, sizeof(d_y)); - bn_set_static_words(y, d_y, P256_LIMBS); - - ret = EC_POINT_set_affine_coordinates_GFp(group, out, x, y, ctx); - - BN_free(x); - BN_free(y); + if ((ret = bn_set_words(out->X, in->X, P256_LIMBS)) + && (ret = bn_set_words(out->Y, in->Y, P256_LIMBS)) + && (ret = bn_set_words(out->Z, ONE, P256_LIMBS))) + out->Z_is_one = 1; return ret; } @@ -1168,7 +1152,7 @@ __owur static int ecp_nistz256_points_mul(const EC_GROUP *group, return 0; } - if (group->meth != r->meth) { + if (!ec_point_is_compat(r, group)) { ECerr(EC_F_ECP_NISTZ256_POINTS_MUL, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -1177,7 +1161,7 @@ __owur static int ecp_nistz256_points_mul(const EC_GROUP *group, return EC_POINT_set_to_infinity(group, r); for (j = 0; j < num; j++) { - if (group->meth != points[j]->meth) { + if (!ec_point_is_compat(points[j], group)) { ECerr(EC_F_ECP_NISTZ256_POINTS_MUL, EC_R_INCOMPATIBLE_OBJECTS); return 0; } @@ -1210,9 +1194,9 @@ __owur static int ecp_nistz256_points_mul(const EC_GROUP *group, if (pre_comp_generator == NULL) goto err; + ecp_nistz256_gather_w7(&p.a, pre_comp->precomp[0], 1); if (!ecp_nistz256_set_from_affine(pre_comp_generator, - group, pre_comp->precomp[0], - ctx)) { + group, &p.a, ctx)) { EC_POINT_free(pre_comp_generator); goto err; } diff --git a/deps/openssl/openssl/crypto/ec/ecp_smpl.c b/deps/openssl/openssl/crypto/ec/ecp_smpl.c index abd379504666..e3b88315fd47 100644 --- a/deps/openssl/openssl/crypto/ec/ecp_smpl.c +++ b/deps/openssl/openssl/crypto/ec/ecp_smpl.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -352,6 +352,7 @@ int ec_GFp_simple_point_copy(EC_POINT *dest, const EC_POINT *src) if (!BN_copy(dest->Z, src->Z)) return 0; dest->Z_is_one = src->Z_is_one; + dest->curve_name = src->curve_name; return 1; } diff --git a/deps/openssl/openssl/crypto/engine/eng_lib.c b/deps/openssl/openssl/crypto/engine/eng_lib.c index cbefc7eb6c6d..ef8e99550334 100644 --- a/deps/openssl/openssl/crypto/engine/eng_lib.c +++ b/deps/openssl/openssl/crypto/engine/eng_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -18,7 +18,8 @@ CRYPTO_ONCE engine_lock_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE(do_engine_lock_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; global_engine_lock = CRYPTO_THREAD_lock_new(); return global_engine_lock != NULL; } @@ -143,8 +144,10 @@ void engine_cleanup_add_last(ENGINE_CLEANUP_CB *cb) if (!int_cleanup_check(1)) return; item = int_cleanup_item(cb); - if (item) - sk_ENGINE_CLEANUP_ITEM_push(cleanup_stack, item); + if (item != NULL) { + if (sk_ENGINE_CLEANUP_ITEM_push(cleanup_stack, item) <= 0) + OPENSSL_free(item); + } } /* The API function that performs all cleanup */ diff --git a/deps/openssl/openssl/crypto/engine/eng_openssl.c b/deps/openssl/openssl/crypto/engine/eng_openssl.c index 0e53c4d1fdcf..9208f7eafc50 100644 --- a/deps/openssl/openssl/crypto/engine/eng_openssl.c +++ b/deps/openssl/openssl/crypto/engine/eng_openssl.c @@ -649,3 +649,4 @@ int openssl_destroy(ENGINE *e) #endif return 1; } + diff --git a/deps/openssl/openssl/crypto/engine/tb_asnmth.c b/deps/openssl/openssl/crypto/engine/tb_asnmth.c index 480267daabad..5c7b16170390 100644 --- a/deps/openssl/openssl/crypto/engine/tb_asnmth.c +++ b/deps/openssl/openssl/crypto/engine/tb_asnmth.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -170,7 +170,8 @@ static void look_str_cb(int nid, STACK_OF(ENGINE) *sk, ENGINE *def, void *arg) ENGINE *e = sk_ENGINE_value(sk, i); EVP_PKEY_ASN1_METHOD *ameth; e->pkey_asn1_meths(e, &ameth, NULL, nid); - if (((int)strlen(ameth->pem_str) == lk->len) + if (ameth != NULL + && ((int)strlen(ameth->pem_str) == lk->len) && strncasecmp(ameth->pem_str, lk->str, lk->len) == 0) { lk->e = e; lk->ameth = ameth; diff --git a/deps/openssl/openssl/crypto/err/err.c b/deps/openssl/openssl/crypto/err/err.c index c4399285fe12..08c27a3e8385 100644 --- a/deps/openssl/openssl/crypto/err/err.c +++ b/deps/openssl/openssl/crypto/err/err.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -254,7 +254,8 @@ static void ERR_STATE_free(ERR_STATE *s) DEFINE_RUN_ONCE_STATIC(do_err_strings_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; err_string_lock = CRYPTO_THREAD_lock_new(); return err_string_lock != NULL; } @@ -653,29 +654,31 @@ DEFINE_RUN_ONCE_STATIC(err_do_init) ERR_STATE *ERR_get_state(void) { - ERR_STATE *state = NULL; + ERR_STATE *state; - if (!RUN_ONCE(&err_init, err_do_init)) + if (!OPENSSL_init_crypto(OPENSSL_INIT_BASE_ONLY, NULL)) return NULL; - /* - * If base OPENSSL_init_crypto() hasn't been called yet, be sure to call - * it now to avoid state to be doubly allocated and thereby leak memory. - * Needed on any platform that doesn't define OPENSSL_USE_NODELETE. - */ - if (!OPENSSL_init_crypto(0, NULL)) + if (!RUN_ONCE(&err_init, err_do_init)) return NULL; state = CRYPTO_THREAD_get_local(&err_thread_local); + if (state == (ERR_STATE*)-1) + return NULL; if (state == NULL) { - state = OPENSSL_zalloc(sizeof(*state)); - if (state == NULL) + if (!CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)-1)) return NULL; + if ((state = OPENSSL_zalloc(sizeof(*state))) == NULL) { + CRYPTO_THREAD_set_local(&err_thread_local, NULL); + return NULL; + } + if (!ossl_init_thread_start(OPENSSL_INIT_THREAD_ERR_STATE) - || !CRYPTO_THREAD_set_local(&err_thread_local, state)) { + || !CRYPTO_THREAD_set_local(&err_thread_local, state)) { ERR_STATE_free(state); + CRYPTO_THREAD_set_local(&err_thread_local, NULL); return NULL; } @@ -686,13 +689,41 @@ ERR_STATE *ERR_get_state(void) return state; } +/* + * err_shelve_state returns the current thread local error state + * and freezes the error module until err_unshelve_state is called. + */ +int err_shelve_state(void **state) +{ + if (!OPENSSL_init_crypto(OPENSSL_INIT_BASE_ONLY, NULL)) + return 0; + + if (!RUN_ONCE(&err_init, err_do_init)) + return 0; + + *state = CRYPTO_THREAD_get_local(&err_thread_local); + if (!CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)-1)) + return 0; + + return 1; +} + +/* + * err_unshelve_state restores the error state that was returned + * by err_shelve_state previously. + */ +void err_unshelve_state(void* state) +{ + if (state != (void*)-1) + CRYPTO_THREAD_set_local(&err_thread_local, (ERR_STATE*)state); +} + int ERR_get_next_error_library(void) { int ret; - if (!RUN_ONCE(&err_string_init, do_err_strings_init)) { + if (!RUN_ONCE(&err_string_init, do_err_strings_init)) return 0; - } CRYPTO_THREAD_write_lock(err_string_lock); ret = int_err_library_number++; diff --git a/deps/openssl/openssl/crypto/evp/cmeth_lib.c b/deps/openssl/openssl/crypto/evp/cmeth_lib.c index 5769e0a554ed..e2295c4dc589 100644 --- a/deps/openssl/openssl/crypto/evp/cmeth_lib.c +++ b/deps/openssl/openssl/crypto/evp/cmeth_lib.c @@ -148,3 +148,4 @@ int (*EVP_CIPHER_meth_get_ctrl(const EVP_CIPHER *cipher))(EVP_CIPHER_CTX *, { return cipher->ctrl; } + diff --git a/deps/openssl/openssl/crypto/evp/evp_err.c b/deps/openssl/openssl/crypto/evp/evp_err.c index c4b163f0ba65..3543d44cb416 100644 --- a/deps/openssl/openssl/crypto/evp/evp_err.c +++ b/deps/openssl/openssl/crypto/evp/evp_err.c @@ -70,6 +70,8 @@ static ERR_STRING_DATA EVP_str_functs[] = { {ERR_FUNC(EVP_F_EVP_PKEY_GET0_RSA), "EVP_PKEY_get0_RSA"}, {ERR_FUNC(EVP_F_EVP_PKEY_KEYGEN), "EVP_PKEY_keygen"}, {ERR_FUNC(EVP_F_EVP_PKEY_KEYGEN_INIT), "EVP_PKEY_keygen_init"}, + {ERR_FUNC(EVP_F_EVP_PKEY_METH_ADD0), "EVP_PKEY_meth_add0"}, + {ERR_FUNC(EVP_F_EVP_PKEY_METH_NEW), "EVP_PKEY_meth_new"}, {ERR_FUNC(EVP_F_EVP_PKEY_NEW), "EVP_PKEY_new"}, {ERR_FUNC(EVP_F_EVP_PKEY_PARAMGEN), "EVP_PKEY_paramgen"}, {ERR_FUNC(EVP_F_EVP_PKEY_PARAMGEN_INIT), "EVP_PKEY_paramgen_init"}, @@ -143,6 +145,7 @@ static ERR_STRING_DATA EVP_str_reasons[] = { {ERR_REASON(EVP_R_OPERATON_NOT_INITIALIZED), "operaton not initialized"}, {ERR_REASON(EVP_R_PARTIALLY_OVERLAPPING), "partially overlapping buffers"}, + {ERR_REASON(EVP_R_PBKDF2_ERROR), "pbkdf2 error"}, {ERR_REASON(EVP_R_PKEY_APPLICATION_ASN1_METHOD_ALREADY_REGISTERED), "pkey application asn1 method already registered"}, {ERR_REASON(EVP_R_PKEY_ASN1_METHOD_ALREADY_REGISTERED), diff --git a/deps/openssl/openssl/crypto/evp/pmeth_lib.c b/deps/openssl/openssl/crypto/evp/pmeth_lib.c index 5e650a9db33e..f623db34836a 100644 --- a/deps/openssl/openssl/crypto/evp/pmeth_lib.c +++ b/deps/openssl/openssl/crypto/evp/pmeth_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -151,8 +151,10 @@ EVP_PKEY_METHOD *EVP_PKEY_meth_new(int id, int flags) EVP_PKEY_METHOD *pmeth; pmeth = OPENSSL_zalloc(sizeof(*pmeth)); - if (pmeth == NULL) + if (pmeth == NULL) { + EVPerr(EVP_F_EVP_PKEY_METH_NEW, ERR_R_MALLOC_FAILURE); return NULL; + } pmeth->pkey_id = id; pmeth->flags = flags | EVP_PKEY_FLAG_DYNAMIC; @@ -238,8 +240,10 @@ EVP_PKEY_CTX *EVP_PKEY_CTX_dup(EVP_PKEY_CTX *pctx) } #endif rctx = OPENSSL_malloc(sizeof(*rctx)); - if (rctx == NULL) + if (rctx == NULL) { + EVPerr(EVP_F_EVP_PKEY_CTX_DUP, ERR_R_MALLOC_FAILURE); return NULL; + } rctx->pmeth = pctx->pmeth; #ifndef OPENSSL_NO_ENGINE @@ -273,11 +277,15 @@ int EVP_PKEY_meth_add0(const EVP_PKEY_METHOD *pmeth) { if (app_pkey_methods == NULL) { app_pkey_methods = sk_EVP_PKEY_METHOD_new(pmeth_cmp); - if (app_pkey_methods == NULL) + if (app_pkey_methods == NULL) { + EVPerr(EVP_F_EVP_PKEY_METH_ADD0, ERR_R_MALLOC_FAILURE); return 0; + } } - if (!sk_EVP_PKEY_METHOD_push(app_pkey_methods, pmeth)) + if (!sk_EVP_PKEY_METHOD_push(app_pkey_methods, pmeth)) { + EVPerr(EVP_F_EVP_PKEY_METH_ADD0, ERR_R_MALLOC_FAILURE); return 0; + } sk_EVP_PKEY_METHOD_sort(app_pkey_methods); return 1; } @@ -557,26 +565,26 @@ void EVP_PKEY_meth_set_ctrl(EVP_PKEY_METHOD *pmeth, pmeth->ctrl_str = ctrl_str; } -void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth, int (**pinit) (EVP_PKEY_CTX *ctx)) { *pinit = pmeth->init; } -void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth, int (**pcopy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src)) { *pcopy = pmeth->copy; } -void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth, void (**pcleanup) (EVP_PKEY_CTX *ctx)) { *pcleanup = pmeth->cleanup; } -void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth, int (**pparamgen_init) (EVP_PKEY_CTX *ctx), int (**pparamgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)) @@ -587,7 +595,7 @@ void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, *pparamgen = pmeth->paramgen; } -void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth, int (**pkeygen_init) (EVP_PKEY_CTX *ctx), int (**pkeygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)) @@ -598,7 +606,7 @@ void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, *pkeygen = pmeth->keygen; } -void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth, int (**psign_init) (EVP_PKEY_CTX *ctx), int (**psign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, @@ -611,7 +619,7 @@ void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, *psign = pmeth->sign; } -void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth, int (**pverify_init) (EVP_PKEY_CTX *ctx), int (**pverify) (EVP_PKEY_CTX *ctx, const unsigned char *sig, @@ -625,7 +633,7 @@ void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, *pverify = pmeth->verify; } -void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth, int (**pverify_recover_init) (EVP_PKEY_CTX *ctx), int (**pverify_recover) (EVP_PKEY_CTX @@ -643,7 +651,7 @@ void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, *pverify_recover = pmeth->verify_recover; } -void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth, int (**psignctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**psignctx) (EVP_PKEY_CTX *ctx, @@ -657,7 +665,7 @@ void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, *psignctx = pmeth->signctx; } -void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth, int (**pverifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**pverifyctx) (EVP_PKEY_CTX *ctx, @@ -671,7 +679,7 @@ void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, *pverifyctx = pmeth->verifyctx; } -void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth, int (**pencrypt_init) (EVP_PKEY_CTX *ctx), int (**pencryptfn) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -685,7 +693,7 @@ void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, *pencryptfn = pmeth->encrypt; } -void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth, int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), int (**pdecrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -699,7 +707,7 @@ void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, *pdecrypt = pmeth->decrypt; } -void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth, int (**pderive_init) (EVP_PKEY_CTX *ctx), int (**pderive) (EVP_PKEY_CTX *ctx, unsigned char *key, @@ -711,7 +719,7 @@ void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, *pderive = pmeth->derive; } -void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth, int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2), int (**pctrl_str) (EVP_PKEY_CTX *ctx, diff --git a/deps/openssl/openssl/crypto/evp/scrypt.c b/deps/openssl/openssl/crypto/evp/scrypt.c index 101bb1edbd48..3543df540337 100644 --- a/deps/openssl/openssl/crypto/evp/scrypt.c +++ b/deps/openssl/openssl/crypto/evp/scrypt.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -171,8 +171,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, if (r == 0 || p == 0 || N < 2 || (N & (N - 1))) return 0; /* Check p * r < SCRYPT_PR_MAX avoiding overflow */ - if (p > SCRYPT_PR_MAX / r) + if (p > SCRYPT_PR_MAX / r) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } /* * Need to check N: if 2^(128 * r / 8) overflows limit this is @@ -180,8 +182,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, */ if (16 * r <= LOG2_UINT64_MAX) { - if (N >= (((uint64_t)1) << (16 * r))) + if (N >= (((uint64_t)1) << (16 * r))) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } } /* Memory checks: check total allocated buffer size fits in uint64_t */ @@ -199,13 +203,17 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, * This is combined size V, X and T (section 4) */ i = UINT64_MAX / (32 * sizeof(uint32_t)); - if (N + 2 > i / r) + if (N + 2 > i / r) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } Vlen = 32 * r * (N + 2) * sizeof(uint32_t); /* check total allocated size fits in uint64_t */ - if (Blen > UINT64_MAX - Vlen) + if (Blen > UINT64_MAX - Vlen) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_MEMORY_LIMIT_EXCEEDED); return 0; + } /* check total allocated size fits in size_t */ if (Blen > SIZE_MAX - Vlen) return 0; @@ -225,8 +233,10 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, return 1; B = OPENSSL_malloc(allocsize); - if (B == NULL) + if (B == NULL) { + EVPerr(EVP_F_EVP_PBE_SCRYPT, ERR_R_MALLOC_FAILURE); return 0; + } X = (uint32_t *)(B + Blen); T = X + 32 * r; V = T + 32 * r; @@ -242,6 +252,9 @@ int EVP_PBE_scrypt(const char *pass, size_t passlen, goto err; rv = 1; err: + if (rv == 0) + EVPerr(EVP_F_EVP_PBE_SCRYPT, EVP_R_PBKDF2_ERROR); + OPENSSL_clear_free(B, allocsize); return rv; } diff --git a/deps/openssl/openssl/crypto/ex_data.c b/deps/openssl/openssl/crypto/ex_data.c index 22c4d3d9b904..6e3072f2a948 100644 --- a/deps/openssl/openssl/crypto/ex_data.c +++ b/deps/openssl/openssl/crypto/ex_data.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -38,7 +38,8 @@ static CRYPTO_ONCE ex_data_init = CRYPTO_ONCE_STATIC_INIT; DEFINE_RUN_ONCE_STATIC(do_ex_data_init) { - OPENSSL_init_crypto(0, NULL); + if (!OPENSSL_init_crypto(0, NULL)) + return 0; ex_data_lock = CRYPTO_THREAD_lock_new(); return ex_data_lock != NULL; } diff --git a/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_EPILOGUE.H b/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_EPILOGUE.H new file mode 100644 index 000000000000..5f63860808b6 --- /dev/null +++ b/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_EPILOGUE.H @@ -0,0 +1,16 @@ +/* + * 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 + */ + +/* + * This file is only used by HP C on VMS, and is included automatically + * after each header file from this directory + */ + +/* restore state. Must correspond to the save in __decc_include_prologue.h */ +#pragma names restore diff --git a/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_PROLOGUE.H b/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_PROLOGUE.H new file mode 100644 index 000000000000..78b2a87d8868 --- /dev/null +++ b/deps/openssl/openssl/crypto/include/internal/__DECC_INCLUDE_PROLOGUE.H @@ -0,0 +1,20 @@ +/* + * 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 + */ + +/* + * This file is only used by HP C on VMS, and is included automatically + * after each header file from this directory + */ + +/* save state */ +#pragma names save +/* have the compiler shorten symbols larger than 31 chars to 23 chars + * followed by a 8 hex char CRC + */ +#pragma names as_is,shortened diff --git a/deps/openssl/openssl/crypto/include/internal/asn1_int.h b/deps/openssl/openssl/crypto/include/internal/asn1_int.h index f70e3b47ba32..ba9c062702c5 100644 --- a/deps/openssl/openssl/crypto/include/internal/asn1_int.h +++ b/deps/openssl/openssl/crypto/include/internal/asn1_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -90,5 +90,3 @@ struct asn1_pctx_st { unsigned long oid_flags; unsigned long str_flags; } /* ASN1_PCTX */ ; - -int asn1_valid_host(const ASN1_STRING *host); diff --git a/deps/openssl/openssl/crypto/include/internal/async.h b/deps/openssl/openssl/crypto/include/internal/async.h index 16a12a637106..dc8e937b0ced 100644 --- a/deps/openssl/openssl/crypto/include/internal/async.h +++ b/deps/openssl/openssl/crypto/include/internal/async.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -11,3 +11,5 @@ int async_init(void); void async_deinit(void); +void async_delete_thread_state(void); + diff --git a/deps/openssl/openssl/crypto/include/internal/bn_int.h b/deps/openssl/openssl/crypto/include/internal/bn_int.h index 9c984ba78183..2fcdd0d13e19 100644 --- a/deps/openssl/openssl/crypto/include/internal/bn_int.h +++ b/deps/openssl/openssl/crypto/include/internal/bn_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-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 @@ -53,7 +53,7 @@ BN_ULONG *bn_get_words(const BIGNUM *a); * Set the internal data words in a to point to words which contains size * elements. The BN_FLG_STATIC_DATA flag is set */ -void bn_set_static_words(BIGNUM *a, BN_ULONG *words, int size); +void bn_set_static_words(BIGNUM *a, const BN_ULONG *words, int size); /* * Copy words into the BIGNUM |a|, reallocating space as necessary. @@ -64,7 +64,7 @@ void bn_set_static_words(BIGNUM *a, BN_ULONG *words, int size); * |num_words| is int because bn_expand2 takes an int. This is an internal * function so we simply trust callers not to pass negative values. */ -int bn_set_words(BIGNUM *a, BN_ULONG *words, int num_words); +int bn_set_words(BIGNUM *a, const BN_ULONG *words, int num_words); size_t bn_sizeof_BIGNUM(void); @@ -74,6 +74,19 @@ size_t bn_sizeof_BIGNUM(void); */ BIGNUM *bn_array_el(BIGNUM *base, int el); +/* + * Some BIGNUM functions assume most significant limb to be non-zero, which + * is customarily arranged by bn_correct_top. Output from below functions + * is not processed with bn_correct_top, and for this reason it may not be + * returned out of public API. It may only be passed internally into other + * functions known to support non-minimal or zero-padded BIGNUMs. + */ +int bn_mul_mont_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + BN_MONT_CTX *mont, BN_CTX *ctx); +int bn_to_mont_fixed_top(BIGNUM *r, const BIGNUM *a, BN_MONT_CTX *mont, + BN_CTX *ctx); +int bn_mod_add_fixed_top(BIGNUM *r, const BIGNUM *a, const BIGNUM *b, + const BIGNUM *m); #ifdef __cplusplus } diff --git a/deps/openssl/openssl/crypto/include/internal/cryptlib.h b/deps/openssl/openssl/crypto/include/internal/cryptlib.h index f3ec9b67b825..627fd8caf4a1 100644 --- a/deps/openssl/openssl/crypto/include/internal/cryptlib.h +++ b/deps/openssl/openssl/crypto/include/internal/cryptlib.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -74,6 +74,8 @@ FILE *openssl_fopen(const char *filename, const char *mode); void *openssl_fopen(const char *filename, const char *mode); # endif +unsigned long OPENSSL_rdtsc(void); + #ifdef __cplusplus } #endif diff --git a/deps/openssl/openssl/crypto/include/internal/cryptlib_int.h b/deps/openssl/openssl/crypto/include/internal/cryptlib_int.h index ab86e1e53da2..ceeb63ddd0d6 100644 --- a/deps/openssl/openssl/crypto/include/internal/cryptlib_int.h +++ b/deps/openssl/openssl/crypto/include/internal/cryptlib_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -24,7 +24,9 @@ int ossl_init_thread_start(uint64_t opts); * use". */ # define OPENSSL_INIT_ZLIB 0x00010000L +# define OPENSSL_INIT_BASE_ONLY 0x00040000L /* OPENSSL_INIT_THREAD flags */ # define OPENSSL_INIT_THREAD_ASYNC 0x01 # define OPENSSL_INIT_THREAD_ERR_STATE 0x02 + diff --git a/deps/openssl/openssl/crypto/include/internal/err_int.h b/deps/openssl/openssl/crypto/include/internal/err_int.h index 7fec3ed76773..44ac94462750 100644 --- a/deps/openssl/openssl/crypto/include/internal/err_int.h +++ b/deps/openssl/openssl/crypto/include/internal/err_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -13,5 +13,7 @@ int err_load_crypto_strings_int(void); void err_cleanup(void); void err_delete_thread_state(void); +int err_shelve_state(void **); +void err_unshelve_state(void *); #endif diff --git a/deps/openssl/openssl/crypto/include/internal/x509_int.h b/deps/openssl/openssl/crypto/include/internal/x509_int.h index 2845026dd82f..eb439977049b 100644 --- a/deps/openssl/openssl/crypto/include/internal/x509_int.h +++ b/deps/openssl/openssl/crypto/include/internal/x509_int.h @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -166,6 +166,7 @@ struct x509_st { unsigned char sha1_hash[SHA_DIGEST_LENGTH]; X509_CERT_AUX *aux; CRYPTO_RWLOCK *lock; + volatile int ex_cached; } /* X509 */ ; /* diff --git a/deps/openssl/openssl/crypto/init.c b/deps/openssl/openssl/crypto/init.c index 2d16c41bc60f..00a91792d838 100644 --- a/deps/openssl/openssl/crypto/init.c +++ b/deps/openssl/openssl/crypto/init.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -27,11 +27,25 @@ static int stopped = 0; -static void ossl_init_thread_stop(struct thread_local_inits_st *locals); +/* + * Since per-thread-specific-data destructors are not universally + * available, i.e. not on Windows, only below CRYPTO_THREAD_LOCAL key + * is assumed to have destructor associated. And then an effort is made + * to call this single destructor on non-pthread platform[s]. + * + * Initial value is "impossible". It is used as guard value to shortcut + * destructor for threads terminating before libcrypto is initialized or + * after it's de-initialized. Access to the key doesn't have to be + * serialized for the said threads, because they didn't use libcrypto + * and it doesn't matter if they pick "impossible" or derefernce real + * key value and pull NULL past initialization in the first thread that + * intends to use libcrypto. + */ +static CRYPTO_THREAD_LOCAL destructor_key = (CRYPTO_THREAD_LOCAL)-1; -static CRYPTO_THREAD_LOCAL threadstopkey; +static void ossl_init_thread_stop(struct thread_local_inits_st *locals); -static void ossl_init_thread_stop_wrap(void *local) +static void ossl_init_thread_destructor(void *local) { ossl_init_thread_stop((struct thread_local_inits_st *)local); } @@ -39,17 +53,17 @@ static void ossl_init_thread_stop_wrap(void *local) static struct thread_local_inits_st *ossl_init_get_thread_local(int alloc) { struct thread_local_inits_st *local = - CRYPTO_THREAD_get_local(&threadstopkey); + CRYPTO_THREAD_get_local(&destructor_key); - if (local == NULL && alloc) { - local = OPENSSL_zalloc(sizeof(*local)); - if (local != NULL && !CRYPTO_THREAD_set_local(&threadstopkey, local)) { + if (alloc) { + if (local == NULL + && (local = OPENSSL_zalloc(sizeof(*local))) != NULL + && !CRYPTO_THREAD_set_local(&destructor_key, local)) { OPENSSL_free(local); return NULL; } - } - if (!alloc) { - CRYPTO_THREAD_set_local(&threadstopkey, NULL); + } else { + CRYPTO_THREAD_set_local(&destructor_key, NULL); } return local; @@ -68,29 +82,42 @@ static CRYPTO_ONCE base = CRYPTO_ONCE_STATIC_INIT; static int base_inited = 0; DEFINE_RUN_ONCE_STATIC(ossl_init_base) { + CRYPTO_THREAD_LOCAL key; + #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_base: Setting up stop handlers\n"); #endif - /* - * We use a dummy thread local key here. We use the destructor to detect - * when the thread is going to stop (where that feature is available) - */ - CRYPTO_THREAD_init_local(&threadstopkey, ossl_init_thread_stop_wrap); + if (!CRYPTO_THREAD_init_local(&key, ossl_init_thread_destructor)) + return 0; + if ((init_lock = CRYPTO_THREAD_lock_new()) == NULL) + goto err; #ifndef OPENSSL_SYS_UEFI - atexit(OPENSSL_cleanup); + if (atexit(OPENSSL_cleanup) != 0) + goto err; #endif - if ((init_lock = CRYPTO_THREAD_lock_new()) == NULL) - return 0; OPENSSL_cpuid_setup(); - /* - * BIG FAT WARNING! - * Everything needed to be initialized in this function before threads - * come along MUST happen before base_inited is set to 1, or we will - * see race conditions. - */ + destructor_key = key; base_inited = 1; + return 1; + +err: +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_base not ok!\n"); +#endif + CRYPTO_THREAD_lock_free(init_lock); + init_lock = NULL; + + CRYPTO_THREAD_cleanup_local(&key); + return 0; +} +static CRYPTO_ONCE load_crypto_nodelete = CRYPTO_ONCE_STATIC_INIT; +DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_nodelete) +{ +#ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: ossl_init_load_crypto_nodelete()\n"); +#endif #if !defined(OPENSSL_NO_DSO) && !defined(OPENSSL_USE_NODELETE) # ifdef DSO_WIN32 { @@ -102,6 +129,10 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_base) | GET_MODULE_HANDLE_EX_FLAG_PIN, (void *)&base_inited, &handle); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: obtained DSO reference? %s\n", + (ret == TRUE ? "No!" : "Yes.")); +# endif return (ret == TRUE) ? 1 : 0; } # else @@ -110,12 +141,24 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_base) * to remain loaded until the atexit() handler is run at process exit. */ { - DSO *dso = NULL; + DSO *dso; + void *err; + + if (!err_shelve_state(&err)) + return 0; - ERR_set_mark(); dso = DSO_dsobyaddr(&base_inited, DSO_FLAG_NO_UNLOAD_ON_FREE); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, "OPENSSL_INIT: obtained DSO reference? %s\n", + (dso == NULL ? "No!" : "Yes.")); + /* + * In case of No!, it is uncertain our exit()-handlers can still be + * called. After dlclose() the whole library might have been unloaded + * already. + */ +# endif DSO_free(dso); - ERR_pop_to_mark(); + err_unshelve_state(err); } # endif #endif @@ -145,7 +188,7 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_load_crypto_strings) # endif ret = err_load_crypto_strings_int(); load_crypto_strings_inited = 1; -#endif +#endif return ret; } @@ -335,9 +378,9 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) if (locals->async) { #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: ossl_init_thread_stop: " - "ASYNC_cleanup_thread()\n"); + "async_delete_thread_state()\n"); #endif - ASYNC_cleanup_thread(); + async_delete_thread_state(); } if (locals->err_state) { @@ -353,8 +396,8 @@ static void ossl_init_thread_stop(struct thread_local_inits_st *locals) void OPENSSL_thread_stop(void) { - ossl_init_thread_stop( - (struct thread_local_inits_st *)ossl_init_get_thread_local(0)); + if (destructor_key != (CRYPTO_THREAD_LOCAL)-1) + ossl_init_thread_stop(ossl_init_get_thread_local(0)); } int ossl_init_thread_start(uint64_t opts) @@ -391,6 +434,7 @@ int ossl_init_thread_start(uint64_t opts) void OPENSSL_cleanup(void) { OPENSSL_INIT_STOP *currhandler, *lasthandler; + CRYPTO_THREAD_LOCAL key; /* If we've not been inited then no need to deinit */ if (!base_inited) @@ -449,7 +493,9 @@ void OPENSSL_cleanup(void) err_free_strings_int(); } - CRYPTO_THREAD_cleanup_local(&threadstopkey); + key = destructor_key; + destructor_key = (CRYPTO_THREAD_LOCAL)-1; + CRYPTO_THREAD_cleanup_local(&key); #ifdef OPENSSL_INIT_DEBUG fprintf(stderr, "OPENSSL_INIT: OPENSSL_cleanup: " @@ -505,22 +551,18 @@ void OPENSSL_cleanup(void) */ int OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings) { - static int stoperrset = 0; - if (stopped) { - if (!stoperrset) { - /* - * We only ever set this once to avoid getting into an infinite - * loop where the error system keeps trying to init and fails so - * sets an error etc - */ - stoperrset = 1; + if (!(opts & OPENSSL_INIT_BASE_ONLY)) CRYPTOerr(CRYPTO_F_OPENSSL_INIT_CRYPTO, ERR_R_INIT_FAIL); - } return 0; } - if (!base_inited && !RUN_ONCE(&base, ossl_init_base)) + if (!RUN_ONCE(&base, ossl_init_base)) + return 0; + + if (!(opts & OPENSSL_INIT_BASE_ONLY) + && !RUN_ONCE(&load_crypto_nodelete, + ossl_init_load_crypto_nodelete)) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_CRYPTO_STRINGS) @@ -657,6 +699,12 @@ int OPENSSL_atexit(void (*handler)(void)) ERR_set_mark(); dso = DSO_dsobyaddr(handlersym.sym, DSO_FLAG_NO_UNLOAD_ON_FREE); +# ifdef OPENSSL_INIT_DEBUG + fprintf(stderr, + "OPENSSL_INIT: OPENSSL_atexit: obtained DSO reference? %s\n", + (dso == NULL ? "No!" : "Yes.")); + /* See same code above in ossl_init_base() for an explanation. */ +# endif DSO_free(dso); ERR_pop_to_mark(); } diff --git a/deps/openssl/openssl/crypto/lhash/lhash.c b/deps/openssl/openssl/crypto/lhash/lhash.c index 7777935182bb..f48541171c5f 100644 --- a/deps/openssl/openssl/crypto/lhash/lhash.c +++ b/deps/openssl/openssl/crypto/lhash/lhash.c @@ -49,7 +49,7 @@ OPENSSL_LHASH *OPENSSL_LH_new(OPENSSL_LH_HASHFUNC h, OPENSSL_LH_COMPFUNC c) return NULL; if ((ret->b = OPENSSL_zalloc(sizeof(*ret->b) * MIN_NODES)) == NULL) goto err; - if ((ret->retrieve_stats_lock = CRYPTO_THREAD_lock_new()) == NULL) + if ((ret->retrieve_stats_lock = CRYPTO_THREAD_lock_new()) == NULL) goto err; ret->comp = ((c == NULL) ? (OPENSSL_LH_COMPFUNC)strcmp : c); ret->hash = ((h == NULL) ? (OPENSSL_LH_HASHFUNC)OPENSSL_LH_strhash : h); diff --git a/deps/openssl/openssl/crypto/lhash/lhash_lcl.h b/deps/openssl/openssl/crypto/lhash/lhash_lcl.h index 64d3134fc108..01d463fb3637 100644 --- a/deps/openssl/openssl/crypto/lhash/lhash_lcl.h +++ b/deps/openssl/openssl/crypto/lhash/lhash_lcl.h @@ -21,7 +21,7 @@ struct lhash_st { /* * some stats are updated on lookup, which callers aren't expecting to have * to take an exclusive lock around. This lock protects them on platforms - * without atomics, and their types are int rather than unsigned long below + * without atomics, and their types are int rather than unsigned long below * so they can be adjusted with CRYPTO_atomic_add. */ CRYPTO_RWLOCK *retrieve_stats_lock; diff --git a/deps/openssl/openssl/crypto/modes/asm/ghash-armv4.pl b/deps/openssl/openssl/crypto/modes/asm/ghash-armv4.pl index 7d880c94a7cf..1cf14a6c9f76 100644 --- a/deps/openssl/openssl/crypto/modes/asm/ghash-armv4.pl +++ b/deps/openssl/openssl/crypto/modes/asm/ghash-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2010-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 @@ -145,6 +145,8 @@ () .text #if defined(__thumb2__) || defined(__clang__) .syntax unified +#define ldrplb ldrbpl +#define ldrneb ldrbne #endif #if defined(__thumb2__) .thumb @@ -152,11 +154,6 @@ () .code 32 #endif -#ifdef __clang__ -#define ldrplb ldrbpl -#define ldrneb ldrbne -#endif - .type rem_4bit,%object .align 5 rem_4bit: diff --git a/deps/openssl/openssl/crypto/modes/asm/ghashv8-armx.pl b/deps/openssl/openssl/crypto/modes/asm/ghashv8-armx.pl index dcd5f595d21a..e13c70901920 100644 --- a/deps/openssl/openssl/crypto/modes/asm/ghashv8-armx.pl +++ b/deps/openssl/openssl/crypto/modes/asm/ghashv8-armx.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2014-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 @@ -64,6 +64,7 @@ $code=<<___; #include "arm_arch.h" +#if __ARM_MAX_ARCH__>=7 .text ___ $code.=".arch armv8-a+crypto\n" if ($flavour =~ /64/); @@ -351,6 +352,7 @@ $code.=<<___; .asciz "GHASH for ARMv8, CRYPTOGAMS by " .align 2 +#endif ___ if ($flavour =~ /64/) { ######## 64-bit code diff --git a/deps/openssl/openssl/crypto/modes/modes_lcl.h b/deps/openssl/openssl/crypto/modes/modes_lcl.h index 7a1603bf9082..4fc32e190fb3 100644 --- a/deps/openssl/openssl/crypto/modes/modes_lcl.h +++ b/deps/openssl/openssl/crypto/modes/modes_lcl.h @@ -1,5 +1,5 @@ /* - * Copyright 2010-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2010-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 @@ -174,12 +174,13 @@ struct ocb128_context { OCB_BLOCK l_dollar; OCB_BLOCK *l; /* Must be reset for each session */ - u64 blocks_hashed; - u64 blocks_processed; - OCB_BLOCK tag; - OCB_BLOCK offset_aad; - OCB_BLOCK sum; - OCB_BLOCK offset; - OCB_BLOCK checksum; + struct { + u64 blocks_hashed; + u64 blocks_processed; + OCB_BLOCK offset_aad; + OCB_BLOCK sum; + OCB_BLOCK offset; + OCB_BLOCK checksum; + } sess; }; #endif /* OPENSSL_NO_OCB */ diff --git a/deps/openssl/openssl/crypto/modes/ocb128.c b/deps/openssl/openssl/crypto/modes/ocb128.c index db794d085474..fc92b246bd51 100644 --- a/deps/openssl/openssl/crypto/modes/ocb128.c +++ b/deps/openssl/openssl/crypto/modes/ocb128.c @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-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 @@ -236,6 +236,9 @@ int CRYPTO_ocb128_setiv(OCB128_CONTEXT *ctx, const unsigned char *iv, return -1; } + /* Reset nonce-dependent variables */ + memset(&ctx->sess, 0, sizeof(ctx->sess)); + /* Nonce = num2str(TAGLEN mod 128,7) || zeros(120-bitlen(N)) || 1 || N */ nonce[0] = ((taglen * 8) % 128) << 1; memset(nonce + 1, 0, 15); @@ -256,10 +259,10 @@ int CRYPTO_ocb128_setiv(OCB128_CONTEXT *ctx, const unsigned char *iv, /* Offset_0 = Stretch[1+bottom..128+bottom] */ shift = bottom % 8; - ocb_block_lshift(stretch + (bottom / 8), shift, ctx->offset.c); + ocb_block_lshift(stretch + (bottom / 8), shift, ctx->sess.offset.c); mask = 0xff; mask <<= 8 - shift; - ctx->offset.c[15] |= + ctx->sess.offset.c[15] |= (*(stretch + (bottom / 8) + 16) & mask) >> (8 - shift); return 1; @@ -278,25 +281,25 @@ int CRYPTO_ocb128_aad(OCB128_CONTEXT *ctx, const unsigned char *aad, /* Calculate the number of blocks of AAD provided now, and so far */ num_blocks = len / 16; - all_num_blocks = num_blocks + ctx->blocks_hashed; + all_num_blocks = num_blocks + ctx->sess.blocks_hashed; /* Loop through all full blocks of AAD */ - for (i = ctx->blocks_hashed + 1; i <= all_num_blocks; i++) { + for (i = ctx->sess.blocks_hashed + 1; i <= all_num_blocks; i++) { OCB_BLOCK *lookup; /* Offset_i = Offset_{i-1} xor L_{ntz(i)} */ lookup = ocb_lookup_l(ctx, ocb_ntz(i)); if (lookup == NULL) return 0; - ocb_block16_xor(&ctx->offset_aad, lookup, &ctx->offset_aad); + ocb_block16_xor(&ctx->sess.offset_aad, lookup, &ctx->sess.offset_aad); memcpy(tmp.c, aad, 16); aad += 16; /* Sum_i = Sum_{i-1} xor ENCIPHER(K, A_i xor Offset_i) */ - ocb_block16_xor(&ctx->offset_aad, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset_aad, &tmp, &tmp); ctx->encrypt(tmp.c, tmp.c, ctx->keyenc); - ocb_block16_xor(&tmp, &ctx->sum, &ctx->sum); + ocb_block16_xor(&tmp, &ctx->sess.sum, &ctx->sess.sum); } /* @@ -307,20 +310,21 @@ int CRYPTO_ocb128_aad(OCB128_CONTEXT *ctx, const unsigned char *aad, if (last_len > 0) { /* Offset_* = Offset_m xor L_* */ - ocb_block16_xor(&ctx->offset_aad, &ctx->l_star, &ctx->offset_aad); + ocb_block16_xor(&ctx->sess.offset_aad, &ctx->l_star, + &ctx->sess.offset_aad); /* CipherInput = (A_* || 1 || zeros(127-bitlen(A_*))) xor Offset_* */ memset(tmp.c, 0, 16); memcpy(tmp.c, aad, last_len); tmp.c[last_len] = 0x80; - ocb_block16_xor(&ctx->offset_aad, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset_aad, &tmp, &tmp); /* Sum = Sum_m xor ENCIPHER(K, CipherInput) */ ctx->encrypt(tmp.c, tmp.c, ctx->keyenc); - ocb_block16_xor(&tmp, &ctx->sum, &ctx->sum); + ocb_block16_xor(&tmp, &ctx->sess.sum, &ctx->sess.sum); } - ctx->blocks_hashed = all_num_blocks; + ctx->sess.blocks_hashed = all_num_blocks; return 1; } @@ -341,7 +345,7 @@ int CRYPTO_ocb128_encrypt(OCB128_CONTEXT *ctx, * so far */ num_blocks = len / 16; - all_num_blocks = num_blocks + ctx->blocks_processed; + all_num_blocks = num_blocks + ctx->sess.blocks_processed; if (num_blocks && all_num_blocks == (size_t)all_num_blocks && ctx->stream != NULL) { @@ -357,11 +361,11 @@ int CRYPTO_ocb128_encrypt(OCB128_CONTEXT *ctx, return 0; ctx->stream(in, out, num_blocks, ctx->keyenc, - (size_t)ctx->blocks_processed + 1, ctx->offset.c, - (const unsigned char (*)[16])ctx->l, ctx->checksum.c); + (size_t)ctx->sess.blocks_processed + 1, ctx->sess.offset.c, + (const unsigned char (*)[16])ctx->l, ctx->sess.checksum.c); } else { /* Loop through all full blocks to be encrypted */ - for (i = ctx->blocks_processed + 1; i <= all_num_blocks; i++) { + for (i = ctx->sess.blocks_processed + 1; i <= all_num_blocks; i++) { OCB_BLOCK *lookup; OCB_BLOCK tmp; @@ -369,18 +373,18 @@ int CRYPTO_ocb128_encrypt(OCB128_CONTEXT *ctx, lookup = ocb_lookup_l(ctx, ocb_ntz(i)); if (lookup == NULL) return 0; - ocb_block16_xor(&ctx->offset, lookup, &ctx->offset); + ocb_block16_xor(&ctx->sess.offset, lookup, &ctx->sess.offset); memcpy(tmp.c, in, 16); in += 16; /* Checksum_i = Checksum_{i-1} xor P_i */ - ocb_block16_xor(&tmp, &ctx->checksum, &ctx->checksum); + ocb_block16_xor(&tmp, &ctx->sess.checksum, &ctx->sess.checksum); /* C_i = Offset_i xor ENCIPHER(K, P_i xor Offset_i) */ - ocb_block16_xor(&ctx->offset, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset, &tmp, &tmp); ctx->encrypt(tmp.c, tmp.c, ctx->keyenc); - ocb_block16_xor(&ctx->offset, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset, &tmp, &tmp); memcpy(out, tmp.c, 16); out += 16; @@ -397,10 +401,10 @@ int CRYPTO_ocb128_encrypt(OCB128_CONTEXT *ctx, OCB_BLOCK pad; /* Offset_* = Offset_m xor L_* */ - ocb_block16_xor(&ctx->offset, &ctx->l_star, &ctx->offset); + ocb_block16_xor(&ctx->sess.offset, &ctx->l_star, &ctx->sess.offset); /* Pad = ENCIPHER(K, Offset_*) */ - ctx->encrypt(ctx->offset.c, pad.c, ctx->keyenc); + ctx->encrypt(ctx->sess.offset.c, pad.c, ctx->keyenc); /* C_* = P_* xor Pad[1..bitlen(P_*)] */ ocb_block_xor(in, pad.c, last_len, out); @@ -409,10 +413,10 @@ int CRYPTO_ocb128_encrypt(OCB128_CONTEXT *ctx, memset(pad.c, 0, 16); /* borrow pad */ memcpy(pad.c, in, last_len); pad.c[last_len] = 0x80; - ocb_block16_xor(&pad, &ctx->checksum, &ctx->checksum); + ocb_block16_xor(&pad, &ctx->sess.checksum, &ctx->sess.checksum); } - ctx->blocks_processed = all_num_blocks; + ctx->sess.blocks_processed = all_num_blocks; return 1; } @@ -433,7 +437,7 @@ int CRYPTO_ocb128_decrypt(OCB128_CONTEXT *ctx, * so far */ num_blocks = len / 16; - all_num_blocks = num_blocks + ctx->blocks_processed; + all_num_blocks = num_blocks + ctx->sess.blocks_processed; if (num_blocks && all_num_blocks == (size_t)all_num_blocks && ctx->stream != NULL) { @@ -449,30 +453,30 @@ int CRYPTO_ocb128_decrypt(OCB128_CONTEXT *ctx, return 0; ctx->stream(in, out, num_blocks, ctx->keydec, - (size_t)ctx->blocks_processed + 1, ctx->offset.c, - (const unsigned char (*)[16])ctx->l, ctx->checksum.c); + (size_t)ctx->sess.blocks_processed + 1, ctx->sess.offset.c, + (const unsigned char (*)[16])ctx->l, ctx->sess.checksum.c); } else { OCB_BLOCK tmp; /* Loop through all full blocks to be decrypted */ - for (i = ctx->blocks_processed + 1; i <= all_num_blocks; i++) { + for (i = ctx->sess.blocks_processed + 1; i <= all_num_blocks; i++) { /* Offset_i = Offset_{i-1} xor L_{ntz(i)} */ OCB_BLOCK *lookup = ocb_lookup_l(ctx, ocb_ntz(i)); if (lookup == NULL) return 0; - ocb_block16_xor(&ctx->offset, lookup, &ctx->offset); + ocb_block16_xor(&ctx->sess.offset, lookup, &ctx->sess.offset); memcpy(tmp.c, in, 16); in += 16; /* P_i = Offset_i xor DECIPHER(K, C_i xor Offset_i) */ - ocb_block16_xor(&ctx->offset, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset, &tmp, &tmp); ctx->decrypt(tmp.c, tmp.c, ctx->keydec); - ocb_block16_xor(&ctx->offset, &tmp, &tmp); + ocb_block16_xor(&ctx->sess.offset, &tmp, &tmp); /* Checksum_i = Checksum_{i-1} xor P_i */ - ocb_block16_xor(&tmp, &ctx->checksum, &ctx->checksum); + ocb_block16_xor(&tmp, &ctx->sess.checksum, &ctx->sess.checksum); memcpy(out, tmp.c, 16); out += 16; @@ -489,10 +493,10 @@ int CRYPTO_ocb128_decrypt(OCB128_CONTEXT *ctx, OCB_BLOCK pad; /* Offset_* = Offset_m xor L_* */ - ocb_block16_xor(&ctx->offset, &ctx->l_star, &ctx->offset); + ocb_block16_xor(&ctx->sess.offset, &ctx->l_star, &ctx->sess.offset); /* Pad = ENCIPHER(K, Offset_*) */ - ctx->encrypt(ctx->offset.c, pad.c, ctx->keyenc); + ctx->encrypt(ctx->sess.offset.c, pad.c, ctx->keyenc); /* P_* = C_* xor Pad[1..bitlen(C_*)] */ ocb_block_xor(in, pad.c, last_len, out); @@ -501,39 +505,46 @@ int CRYPTO_ocb128_decrypt(OCB128_CONTEXT *ctx, memset(pad.c, 0, 16); /* borrow pad */ memcpy(pad.c, out, last_len); pad.c[last_len] = 0x80; - ocb_block16_xor(&pad, &ctx->checksum, &ctx->checksum); + ocb_block16_xor(&pad, &ctx->sess.checksum, &ctx->sess.checksum); } - ctx->blocks_processed = all_num_blocks; + ctx->sess.blocks_processed = all_num_blocks; return 1; } -/* - * Calculate the tag and verify it against the supplied tag - */ -int CRYPTO_ocb128_finish(OCB128_CONTEXT *ctx, const unsigned char *tag, - size_t len) +static int ocb_finish(OCB128_CONTEXT *ctx, unsigned char *tag, size_t len, + int write) { OCB_BLOCK tmp; + if (len > 16 || len < 1) { + return -1; + } + /* * Tag = ENCIPHER(K, Checksum_* xor Offset_* xor L_$) xor HASH(K,A) */ - ocb_block16_xor(&ctx->checksum, &ctx->offset, &tmp); + ocb_block16_xor(&ctx->sess.checksum, &ctx->sess.offset, &tmp); ocb_block16_xor(&ctx->l_dollar, &tmp, &tmp); ctx->encrypt(tmp.c, tmp.c, ctx->keyenc); - ocb_block16_xor(&tmp, &ctx->sum, &ctx->tag); + ocb_block16_xor(&tmp, &ctx->sess.sum, &tmp); - if (len > 16 || len < 1) { - return -1; + if (write) { + memcpy(tag, &tmp, len); + return 1; + } else { + return CRYPTO_memcmp(&tmp, tag, len); } +} - /* Compare the tag if we've been given one */ - if (tag) - return CRYPTO_memcmp(&ctx->tag, tag, len); - else - return -1; +/* + * Calculate the tag and verify it against the supplied tag + */ +int CRYPTO_ocb128_finish(OCB128_CONTEXT *ctx, const unsigned char *tag, + size_t len) +{ + return ocb_finish(ctx, (unsigned char*)tag, len, 0); } /* @@ -541,17 +552,7 @@ int CRYPTO_ocb128_finish(OCB128_CONTEXT *ctx, const unsigned char *tag, */ int CRYPTO_ocb128_tag(OCB128_CONTEXT *ctx, unsigned char *tag, size_t len) { - if (len > 16 || len < 1) { - return -1; - } - - /* Calculate the tag */ - CRYPTO_ocb128_finish(ctx, NULL, 0); - - /* Copy the tag into the supplied buffer */ - memcpy(tag, ctx->tag.c, len); - - return 1; + return ocb_finish(ctx, tag, len, 1); } /* diff --git a/deps/openssl/openssl/crypto/o_fopen.c b/deps/openssl/openssl/crypto/o_fopen.c index a3a006574d70..bfd5af1151d4 100644 --- a/deps/openssl/openssl/crypto/o_fopen.c +++ b/deps/openssl/openssl/crypto/o_fopen.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -7,6 +7,24 @@ * https://www.openssl.org/source/license.html */ +# if defined(__linux) || defined(__sun) || defined(__hpux) +/* + * Following definition aliases fopen to fopen64 on above mentioned + * platforms. This makes it possible to open and sequentially access files + * larger than 2GB from 32-bit application. It does not allow to traverse + * them beyond 2GB with fseek/ftell, but on the other hand *no* 32-bit + * platform permits that, not with fseek/ftell. Not to mention that breaking + * 2GB limit for seeking would require surgery to *our* API. But sequential + * access suffices for practical cases when you can run into large files, + * such as fingerprinting, so we can let API alone. For reference, the list + * of 32-bit platforms which allow for sequential access of large files + * without extra "magic" comprise *BSD, Darwin, IRIX... + */ +# ifndef _FILE_OFFSET_BITS +# define _FILE_OFFSET_BITS 64 +# endif +# endif + #include "internal/cryptlib.h" #if !defined(OPENSSL_NO_STDIO) diff --git a/deps/openssl/openssl/crypto/o_time.c b/deps/openssl/openssl/crypto/o_time.c index b2fb38a541a6..6d764f55e2e8 100644 --- a/deps/openssl/openssl/crypto/o_time.c +++ b/deps/openssl/openssl/crypto/o_time.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -41,6 +41,10 @@ struct tm *OPENSSL_gmtime(const time_t *timer, struct tm *result) if (gmtime_r(timer, result) == NULL) return NULL; ts = result; +#elif defined (OPENSSL_SYS_WINDOWS) && defined(_MSC_VER) && _MSC_VER >= 1400 + if (gmtime_s(result, timer)) + return NULL; + ts = result; #else ts = gmtime(timer); if (ts == NULL) diff --git a/deps/openssl/openssl/crypto/objects/o_names.c b/deps/openssl/openssl/crypto/objects/o_names.c index e06d5439f233..15fe653d0931 100644 --- a/deps/openssl/openssl/crypto/objects/o_names.c +++ b/deps/openssl/openssl/crypto/objects/o_names.c @@ -202,7 +202,7 @@ const char *OBJ_NAME_get(const char *name, int type) } } - CRYPTO_THREAD_unlock(lock); + CRYPTO_THREAD_unlock(lock); return value; } @@ -212,7 +212,7 @@ int OBJ_NAME_add(const char *name, int type, const char *data) int alias, ok = 0; if (!OBJ_NAME_init()) - return 0; + return 0; CRYPTO_THREAD_write_lock(lock); diff --git a/deps/openssl/openssl/crypto/objects/objects.txt b/deps/openssl/openssl/crypto/objects/objects.txt index f1da8071add2..fc0781d1c9f0 100644 --- a/deps/openssl/openssl/crypto/objects/objects.txt +++ b/deps/openssl/openssl/crypto/objects/objects.txt @@ -1482,3 +1482,4 @@ id-pkinit 5 : pkInitKDC : Signing KDC Response : AuthGOST12 : auth-gost12 : AuthSRP : auth-srp : AuthNULL : auth-null + diff --git a/deps/openssl/openssl/crypto/pem/pem_lib.c b/deps/openssl/openssl/crypto/pem/pem_lib.c index e9202f44ae1c..6f06c5291fbb 100644 --- a/deps/openssl/openssl/crypto/pem/pem_lib.c +++ b/deps/openssl/openssl/crypto/pem/pem_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -28,23 +28,23 @@ static int load_iv(char **fromp, unsigned char *to, int num); static int check_pem(const char *nm, const char *name); int pem_check_suffix(const char *pem_str, const char *suffix); -int PEM_def_callback(char *buf, int num, int w, void *key) +int PEM_def_callback(char *buf, int num, int rwflag, void *userdata) { -#if defined(OPENSSL_NO_STDIO) || defined(OPENSSL_NO_UI) int i; -#else - int i, j; +#ifndef OPENSSL_NO_UI + int min_len; const char *prompt; #endif - if (key) { - i = strlen(key); + /* We assume that the user passes a default password as userdata */ + if (userdata) { + i = strlen(userdata); i = (i > num) ? num : i; - memcpy(buf, key, i); + memcpy(buf, userdata, i); return i; } -#if defined(OPENSSL_NO_STDIO) || defined(OPENSSL_NO_UI) +#ifdef OPENSSL_NO_UI PEMerr(PEM_F_PEM_DEF_CALLBACK, ERR_R_SHOULD_NOT_HAVE_BEEN_CALLED); return -1; #else @@ -52,28 +52,22 @@ int PEM_def_callback(char *buf, int num, int w, void *key) if (prompt == NULL) prompt = "Enter PEM pass phrase:"; - for (;;) { - /* - * We assume that w == 0 means decryption, - * while w == 1 means encryption - */ - int min_len = w ? MIN_LENGTH : 0; + /* + * rwflag == 0 means decryption + * rwflag == 1 means encryption + * + * We assume that for encryption, we want a minimum length, while for + * decryption, we cannot know any minimum length, so we assume zero. + */ + min_len = rwflag ? MIN_LENGTH : 0; - i = EVP_read_pw_string_min(buf, min_len, num, prompt, w); - if (i != 0) { - PEMerr(PEM_F_PEM_DEF_CALLBACK, PEM_R_PROBLEMS_GETTING_PASSWORD); - memset(buf, 0, (unsigned int)num); - return -1; - } - j = strlen(buf); - if (min_len && j < min_len) { - fprintf(stderr, - "phrase is too short, needs to be at least %d chars\n", - min_len); - } else - break; + i = EVP_read_pw_string_min(buf, min_len, num, prompt, rwflag); + if (i != 0) { + PEMerr(PEM_F_PEM_DEF_CALLBACK, PEM_R_PROBLEMS_GETTING_PASSWORD); + memset(buf, 0, (unsigned int)num); + return -1; } - return j; + return strlen(buf); #endif } @@ -414,7 +408,7 @@ int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *plen, keylen = PEM_def_callback(buf, PEM_BUFSIZE, 0, u); else keylen = callback(buf, PEM_BUFSIZE, 0, u); - if (keylen <= 0) { + if (keylen < 0) { PEMerr(PEM_F_PEM_DO_HEADER, PEM_R_BAD_PASSWORD_READ); return 0; } @@ -472,6 +466,7 @@ int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher) char *dekinfostart, c; cipher->cipher = NULL; + memset(cipher->iv, 0, sizeof(cipher->iv)); if ((header == NULL) || (*header == '\0') || (*header == '\n')) return 1; diff --git a/deps/openssl/openssl/crypto/pem/pem_pk8.c b/deps/openssl/openssl/crypto/pem/pem_pk8.c index 5caad9faab87..a8363b39b9df 100644 --- a/deps/openssl/openssl/crypto/pem/pem_pk8.c +++ b/deps/openssl/openssl/crypto/pem/pem_pk8.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -124,7 +124,7 @@ EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, klen = cb(psbuf, PEM_BUFSIZE, 0, u); else klen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (klen <= 0) { + if (klen < 0) { PEMerr(PEM_F_D2I_PKCS8PRIVATEKEY_BIO, PEM_R_BAD_PASSWORD_READ); X509_SIG_free(p8); return NULL; diff --git a/deps/openssl/openssl/crypto/pem/pem_pkey.c b/deps/openssl/openssl/crypto/pem/pem_pkey.c index 671b374f365e..7dadc1391cf4 100644 --- a/deps/openssl/openssl/crypto/pem/pem_pkey.c +++ b/deps/openssl/openssl/crypto/pem/pem_pkey.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -59,7 +59,7 @@ EVP_PKEY *PEM_read_bio_PrivateKey(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, klen = cb(psbuf, PEM_BUFSIZE, 0, u); else klen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (klen <= 0) { + if (klen < 0) { PEMerr(PEM_F_PEM_READ_BIO_PRIVATEKEY, PEM_R_BAD_PASSWORD_READ); X509_SIG_free(p8); goto err; diff --git a/deps/openssl/openssl/crypto/pem/pvkfmt.c b/deps/openssl/openssl/crypto/pem/pvkfmt.c index d0a423957cb3..63ce9259638a 100644 --- a/deps/openssl/openssl/crypto/pem/pvkfmt.c +++ b/deps/openssl/openssl/crypto/pem/pvkfmt.c @@ -685,7 +685,7 @@ static EVP_PKEY *do_PVK_body(const unsigned char **in, inlen = cb(psbuf, PEM_BUFSIZE, 0, u); else inlen = PEM_def_callback(psbuf, PEM_BUFSIZE, 0, u); - if (inlen <= 0) { + if (inlen < 0) { PEMerr(PEM_F_DO_PVK_BODY, PEM_R_BAD_PASSWORD_READ); goto err; } diff --git a/deps/openssl/openssl/crypto/perlasm/README b/deps/openssl/openssl/crypto/perlasm/README index 15f139d354d1..e90bd8e01459 100644 --- a/deps/openssl/openssl/crypto/perlasm/README +++ b/deps/openssl/openssl/crypto/perlasm/README @@ -61,7 +61,7 @@ So a very simple version of this function could be coded as push(@INC,"perlasm","../../perlasm"); require "x86asm.pl"; - + &asm_init($ARGV[0],"cacl.pl"); &external_label("other"); @@ -121,3 +121,4 @@ void BF_cbc_encrypt(unsigned char *in, unsigned char *out, long length, &cbc("des_ncbc_encrypt","des_encrypt","des_encrypt",0,4,5,3,5,-1); &cbc("des_ede3_cbc_encrypt","des_encrypt3","des_decrypt3",0,6,7,3,4,5); + diff --git a/deps/openssl/openssl/crypto/pkcs12/p12_asn.c b/deps/openssl/openssl/crypto/pkcs12/p12_asn.c index f2bfe32ebd6e..422dfc398fab 100644 --- a/deps/openssl/openssl/crypto/pkcs12/p12_asn.c +++ b/deps/openssl/openssl/crypto/pkcs12/p12_asn.c @@ -1,5 +1,5 @@ /* - * Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2000-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 @@ -51,7 +51,7 @@ ASN1_ADB_TEMPLATE(safebag_default) = ASN1_EXP(PKCS12_SAFEBAG, value.other, ASN1_ ASN1_ADB(PKCS12_SAFEBAG) = { ADB_ENTRY(NID_keyBag, ASN1_EXP(PKCS12_SAFEBAG, value.keybag, PKCS8_PRIV_KEY_INFO, 0)), ADB_ENTRY(NID_pkcs8ShroudedKeyBag, ASN1_EXP(PKCS12_SAFEBAG, value.shkeybag, X509_SIG, 0)), - ADB_ENTRY(NID_safeContentsBag, ASN1_EXP_SET_OF(PKCS12_SAFEBAG, value.safes, PKCS12_SAFEBAG, 0)), + ADB_ENTRY(NID_safeContentsBag, ASN1_EXP_SEQUENCE_OF(PKCS12_SAFEBAG, value.safes, PKCS12_SAFEBAG, 0)), ADB_ENTRY(NID_certBag, ASN1_EXP(PKCS12_SAFEBAG, value.bag, PKCS12_BAGS, 0)), ADB_ENTRY(NID_crlBag, ASN1_EXP(PKCS12_SAFEBAG, value.bag, PKCS12_BAGS, 0)), ADB_ENTRY(NID_secretBag, ASN1_EXP(PKCS12_SAFEBAG, value.bag, PKCS12_BAGS, 0)) diff --git a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-armv4.pl b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-armv4.pl index fc899ced8671..5cdb6be05914 100755 --- a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-armv4.pl +++ b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -186,6 +186,7 @@ .type poly1305_blocks,%function .align 5 poly1305_blocks: +.Lpoly1305_blocks: stmdb sp!,{r3-r11,lr} ands $len,$len,#-16 @@ -677,7 +678,7 @@ cmp $len,#64 bhs .Lenter_neon tst ip,ip @ is_base2_26? - beq poly1305_blocks + beq .Lpoly1305_blocks .Lenter_neon: stmdb sp!,{r4-r7} diff --git a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-mips.pl b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-mips.pl index 024696a5991d..d2b3e90d93f0 100755 --- a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-mips.pl +++ b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-mips.pl @@ -422,3 +422,4 @@ $output=pop and open STDOUT,">$output"; print $code; close STDOUT; + diff --git a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-x86.pl b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-x86.pl index ab24dfcfadda..93179e37d5e1 100755 --- a/deps/openssl/openssl/crypto/poly1305/asm/poly1305-x86.pl +++ b/deps/openssl/openssl/crypto/poly1305/asm/poly1305-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -70,7 +70,7 @@ $avx = ($1>=2.09) + ($1>=2.10); } - if (!$avx && `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9]\.[0-9]+)/) { + if (!$avx && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9]\.[0-9]+)/) { $avx = ($2>=3.0) + ($2>3.0); } } diff --git a/deps/openssl/openssl/crypto/rc4/asm/rc4-c64xplus.pl b/deps/openssl/openssl/crypto/rc4/asm/rc4-c64xplus.pl index 1354d1821493..184922c12847 100644 --- a/deps/openssl/openssl/crypto/rc4/asm/rc4-c64xplus.pl +++ b/deps/openssl/openssl/crypto/rc4/asm/rc4-c64xplus.pl @@ -89,7 +89,7 @@ || NOP 5 STB $XX,*${KEYA}[-2] ; key->x || SUB4 $YY,$TX,$YY -|| BNOP B3 +|| BNOP B3 STB $YY,*${KEYB}[-1] ; key->y || NOP 5 .endasmfunc diff --git a/deps/openssl/openssl/crypto/rsa/rsa_gen.c b/deps/openssl/openssl/crypto/rsa/rsa_gen.c index 9af43e058631..79f77e3eafdf 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_gen.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_gen.c @@ -89,6 +89,8 @@ static int rsa_builtin_keygen(RSA *rsa, int bits, BIGNUM *e_value, if (BN_copy(rsa->e, e_value) == NULL) goto err; + BN_set_flags(rsa->p, BN_FLG_CONSTTIME); + BN_set_flags(rsa->q, BN_FLG_CONSTTIME); BN_set_flags(r2, BN_FLG_CONSTTIME); /* generate p and q */ for (;;) { diff --git a/deps/openssl/openssl/crypto/rsa/rsa_meth.c b/deps/openssl/openssl/crypto/rsa/rsa_meth.c index be84923b34c4..83de5540d0af 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_meth.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_meth.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -75,7 +75,7 @@ int RSA_meth_set1_name(RSA_METHOD *meth, const char *name) return 1; } -int RSA_meth_get_flags(RSA_METHOD *meth) +int RSA_meth_get_flags(const RSA_METHOD *meth) { return meth->flags; } @@ -270,3 +270,4 @@ int RSA_meth_set_keygen(RSA_METHOD *meth, meth->rsa_keygen = keygen; return 1; } + diff --git a/deps/openssl/openssl/crypto/rsa/rsa_oaep.c b/deps/openssl/openssl/crypto/rsa/rsa_oaep.c index 4878d495fe05..f3135198a350 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_oaep.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_oaep.c @@ -1,5 +1,5 @@ /* - * Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-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 @@ -155,32 +155,40 @@ int RSA_padding_check_PKCS1_OAEP_mgf1(unsigned char *to, int tlen, dblen = num - mdlen - 1; db = OPENSSL_malloc(dblen); - em = OPENSSL_malloc(num); - if (db == NULL || em == NULL) { + if (db == NULL) { RSAerr(RSA_F_RSA_PADDING_CHECK_PKCS1_OAEP_MGF1, ERR_R_MALLOC_FAILURE); goto cleanup; } - /* - * Always do this zero-padding copy (even when num == flen) to avoid - * leaking that information. The copy still leaks some side-channel - * information, but it's impossible to have a fixed memory access - * pattern since we can't read out of the bounds of |from|. - * - * TODO(emilia): Consider porting BN_bn2bin_padded from BoringSSL. - */ - memset(em, 0, num); - memcpy(em + num - flen, from, flen); + if (flen != num) { + em = OPENSSL_zalloc(num); + if (em == NULL) { + RSAerr(RSA_F_RSA_PADDING_CHECK_PKCS1_OAEP_MGF1, + ERR_R_MALLOC_FAILURE); + goto cleanup; + } + + /* + * Caller is encouraged to pass zero-padded message created with + * BN_bn2binpad, but if it doesn't, we do this zero-padding copy + * to avoid leaking that information. The copy still leaks some + * side-channel information, but it's impossible to have a fixed + * memory access pattern since we can't read out of the bounds of + * |from|. + */ + memcpy(em + num - flen, from, flen); + from = em; + } /* * The first byte must be zero, however we must not leak if this is * true. See James H. Manger, "A Chosen Ciphertext Attack on RSA * Optimal Asymmetric Encryption Padding (OAEP) [...]", CRYPTO 2001). */ - good = constant_time_is_zero(em[0]); + good = constant_time_is_zero(from[0]); - maskedseed = em + 1; - maskeddb = em + 1 + mdlen; + maskedseed = from + 1; + maskeddb = from + 1 + mdlen; if (PKCS1_MGF1(seed, mdlen, maskeddb, dblen, mgf1md)) goto cleanup; diff --git a/deps/openssl/openssl/crypto/rsa/rsa_ossl.c b/deps/openssl/openssl/crypto/rsa/rsa_ossl.c index 62a88959fae4..36c4e42a0f12 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_ossl.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_ossl.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -62,7 +62,7 @@ static int rsa_ossl_public_encrypt(int flen, const unsigned char *from, unsigned char *to, RSA *rsa, int padding) { BIGNUM *f, *ret; - int i, j, k, num = 0, r = -1; + int i, num = 0, r = -1; unsigned char *buf = NULL; BN_CTX *ctx = NULL; @@ -136,15 +136,10 @@ static int rsa_ossl_public_encrypt(int flen, const unsigned char *from, goto err; /* - * put in leading 0 bytes if the number is less than the length of the - * modulus + * BN_bn2binpad puts in leading 0 bytes if the number is less than + * the length of the modulus. */ - j = BN_num_bytes(ret); - i = BN_bn2bin(ret, &(to[num - j])); - for (k = 0; k < (num - i); k++) - to[k] = 0; - - r = num; + r = BN_bn2binpad(ret, to, num); err: if (ctx != NULL) BN_CTX_end(ctx); @@ -233,7 +228,7 @@ static int rsa_ossl_private_encrypt(int flen, const unsigned char *from, unsigned char *to, RSA *rsa, int padding) { BIGNUM *f, *ret, *res; - int i, j, k, num = 0, r = -1; + int i, num = 0, r = -1; unsigned char *buf = NULL; BN_CTX *ctx = NULL; int local_blinding = 0; @@ -337,7 +332,8 @@ static int rsa_ossl_private_encrypt(int flen, const unsigned char *from, goto err; if (padding == RSA_X931_PADDING) { - BN_sub(f, rsa->n, ret); + if (!BN_sub(f, rsa->n, ret)) + goto err; if (BN_cmp(ret, f) > 0) res = f; else @@ -346,15 +342,10 @@ static int rsa_ossl_private_encrypt(int flen, const unsigned char *from, res = ret; /* - * put in leading 0 bytes if the number is less than the length of the - * modulus + * BN_bn2binpad puts in leading 0 bytes if the number is less than + * the length of the modulus. */ - j = BN_num_bytes(res); - i = BN_bn2bin(res, &(to[num - j])); - for (k = 0; k < (num - i); k++) - to[k] = 0; - - r = num; + r = BN_bn2binpad(res, to, num); err: if (ctx != NULL) BN_CTX_end(ctx); @@ -368,7 +359,6 @@ static int rsa_ossl_private_decrypt(int flen, const unsigned char *from, { BIGNUM *f, *ret; int j, num = 0, r = -1; - unsigned char *p; unsigned char *buf = NULL; BN_CTX *ctx = NULL; int local_blinding = 0; @@ -463,8 +453,7 @@ static int rsa_ossl_private_decrypt(int flen, const unsigned char *from, if (!rsa_blinding_invert(blinding, ret, unblind, ctx)) goto err; - p = buf; - j = BN_bn2bin(ret, p); /* j is only used with no-padding mode */ + j = BN_bn2binpad(ret, buf, num); switch (padding) { case RSA_PKCS1_PADDING: @@ -477,7 +466,7 @@ static int rsa_ossl_private_decrypt(int flen, const unsigned char *from, r = RSA_padding_check_SSLv23(to, num, buf, j, num); break; case RSA_NO_PADDING: - r = RSA_padding_check_none(to, num, buf, j, num); + memcpy(to, buf, (r = j)); break; default: RSAerr(RSA_F_RSA_OSSL_PRIVATE_DECRYPT, RSA_R_UNKNOWN_PADDING_TYPE); @@ -500,7 +489,6 @@ static int rsa_ossl_public_decrypt(int flen, const unsigned char *from, { BIGNUM *f, *ret; int i, num = 0, r = -1; - unsigned char *p; unsigned char *buf = NULL; BN_CTX *ctx = NULL; @@ -565,8 +553,7 @@ static int rsa_ossl_public_decrypt(int flen, const unsigned char *from, if (!BN_sub(ret, rsa->n, ret)) goto err; - p = buf; - i = BN_bn2bin(ret, p); + i = BN_bn2binpad(ret, buf, num); switch (padding) { case RSA_PKCS1_PADDING: @@ -576,7 +563,7 @@ static int rsa_ossl_public_decrypt(int flen, const unsigned char *from, r = RSA_padding_check_X931(to, num, buf, i, num); break; case RSA_NO_PADDING: - r = RSA_padding_check_none(to, num, buf, i, num); + memcpy(to, buf, (r = i)); break; default: RSAerr(RSA_F_RSA_OSSL_PUBLIC_DECRYPT, RSA_R_UNKNOWN_PADDING_TYPE); diff --git a/deps/openssl/openssl/crypto/rsa/rsa_pk1.c b/deps/openssl/openssl/crypto/rsa/rsa_pk1.c index aeeb32c2dc0b..63d6c3a3b8dd 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_pk1.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_pk1.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -175,27 +175,30 @@ int RSA_padding_check_PKCS1_type_2(unsigned char *to, int tlen, if (num < 11) goto err; - em = OPENSSL_zalloc(num); - if (em == NULL) { - RSAerr(RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_2, ERR_R_MALLOC_FAILURE); - return -1; + if (flen != num) { + em = OPENSSL_zalloc(num); + if (em == NULL) { + RSAerr(RSA_F_RSA_PADDING_CHECK_PKCS1_TYPE_2, ERR_R_MALLOC_FAILURE); + return -1; + } + /* + * Caller is encouraged to pass zero-padded message created with + * BN_bn2binpad, but if it doesn't, we do this zero-padding copy + * to avoid leaking that information. The copy still leaks some + * side-channel information, but it's impossible to have a fixed + * memory access pattern since we can't read out of the bounds of + * |from|. + */ + memcpy(em + num - flen, from, flen); + from = em; } - /* - * Always do this zero-padding copy (even when num == flen) to avoid - * leaking that information. The copy still leaks some side-channel - * information, but it's impossible to have a fixed memory access - * pattern since we can't read out of the bounds of |from|. - * - * TODO(emilia): Consider porting BN_bn2bin_padded from BoringSSL. - */ - memcpy(em + num - flen, from, flen); - good = constant_time_is_zero(em[0]); - good &= constant_time_eq(em[1], 2); + good = constant_time_is_zero(from[0]); + good &= constant_time_eq(from[1], 2); found_zero_byte = 0; for (i = 2; i < num; i++) { - unsigned int equals0 = constant_time_is_zero(em[i]); + unsigned int equals0 = constant_time_is_zero(from[i]); zero_index = constant_time_select_int(~found_zero_byte & equals0, i, zero_index); @@ -203,7 +206,7 @@ int RSA_padding_check_PKCS1_type_2(unsigned char *to, int tlen, } /* - * PS must be at least 8 bytes long, and it starts two bytes into |em|. + * PS must be at least 8 bytes long, and it starts two bytes into |from|. * If we never found a 0-byte, then |zero_index| is 0 and the check * also fails. */ @@ -232,7 +235,7 @@ int RSA_padding_check_PKCS1_type_2(unsigned char *to, int tlen, goto err; } - memcpy(to, em + msg_index, mlen); + memcpy(to, from + msg_index, mlen); err: OPENSSL_clear_free(em, num); diff --git a/deps/openssl/openssl/crypto/rsa/rsa_ssl.c b/deps/openssl/openssl/crypto/rsa/rsa_ssl.c index 9ef6b80ea8ff..77b28b46f2b4 100644 --- a/deps/openssl/openssl/crypto/rsa/rsa_ssl.c +++ b/deps/openssl/openssl/crypto/rsa/rsa_ssl.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -63,6 +63,14 @@ int RSA_padding_check_SSLv23(unsigned char *to, int tlen, RSAerr(RSA_F_RSA_PADDING_CHECK_SSLV23, RSA_R_DATA_TOO_SMALL); return (-1); } + /* Accept even zero-padded input */ + if (flen == num) { + if (*(p++) != 0) { + RSAerr(RSA_F_RSA_PADDING_CHECK_SSLV23, RSA_R_BLOCK_TYPE_IS_NOT_02); + return -1; + } + flen--; + } if ((num != (flen + 1)) || (*(p++) != 02)) { RSAerr(RSA_F_RSA_PADDING_CHECK_SSLV23, RSA_R_BLOCK_TYPE_IS_NOT_02); return (-1); diff --git a/deps/openssl/openssl/crypto/sha/asm/sha1-586.pl b/deps/openssl/openssl/crypto/sha/asm/sha1-586.pl index 5adca23404fd..cf34b2c2936c 100644 --- a/deps/openssl/openssl/crypto/sha/asm/sha1-586.pl +++ b/deps/openssl/openssl/crypto/sha/asm/sha1-586.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 1998-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 1998-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 @@ -141,7 +141,7 @@ `ml 2>&1` =~ /Version ([0-9]+)\./ && $1>=10); # first version supporting AVX -$ymm=1 if ($xmm && !$ymm && `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9]\.[0-9]+)/ && +$ymm=1 if ($xmm && !$ymm && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9]\.[0-9]+)/ && $2>=3.0); # first version supporting AVX $shaext=$xmm; ### set to zero if compiling for 1.0.1 diff --git a/deps/openssl/openssl/crypto/sha/asm/sha256-586.pl b/deps/openssl/openssl/crypto/sha/asm/sha256-586.pl index 6af1d84beb2b..72ee0c7b83db 100644 --- a/deps/openssl/openssl/crypto/sha/asm/sha256-586.pl +++ b/deps/openssl/openssl/crypto/sha/asm/sha256-586.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -93,7 +93,7 @@ $avx = ($1>=10) + ($1>=11); } -if ($xmm && !$avx && `$ENV{CC} -v 2>&1` =~ /(^clang version|based on LLVM) ([3-9]\.[0-9]+)/) { +if ($xmm && !$avx && `$ENV{CC} -v 2>&1` =~ /((?:^clang|LLVM) version|based on LLVM) ([3-9]\.[0-9]+)/) { $avx = ($2>=3.0) + ($2>3.0); } diff --git a/deps/openssl/openssl/crypto/sha/asm/sha256-armv4.pl b/deps/openssl/openssl/crypto/sha/asm/sha256-armv4.pl index 55d30cba3a21..edcfc31278e3 100644 --- a/deps/openssl/openssl/crypto/sha/asm/sha256-armv4.pl +++ b/deps/openssl/openssl/crypto/sha/asm/sha256-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -254,7 +254,7 @@ sub BODY_16_XX { $code.=".Lrounds_16_xx:\n"; for (;$i<32;$i++) { &BODY_16_XX($i,@V); unshift(@V,pop(@V)); } $code.=<<___; -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ ite eq @ Thumb2 thing, sanity check in ARM #endif ldreq $t3,[sp,#16*4] @ pull ctx diff --git a/deps/openssl/openssl/crypto/sha/asm/sha512-armv4.pl b/deps/openssl/openssl/crypto/sha/asm/sha512-armv4.pl index 22b5a9d0b132..0b4c5674d9df 100644 --- a/deps/openssl/openssl/crypto/sha/asm/sha512-armv4.pl +++ b/deps/openssl/openssl/crypto/sha/asm/sha512-armv4.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2007-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2007-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 @@ -157,7 +157,7 @@ () teq $t0,#$magic ldr $t3,[sp,#$Coff+0] @ c.lo -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ it eq @ Thumb2 thing, sanity check in ARM #endif orreq $Ktbl,$Ktbl,#1 @@ -411,7 +411,7 @@ () ___ &BODY_00_15(0x17); $code.=<<___; -#if __ARM_ARCH__>=7 +#ifdef __thumb2__ ittt eq @ Thumb2 thing, sanity check in ARM #endif ldreq $t0,[sp,#`$Xoff+8*(16-1)`+0] diff --git a/deps/openssl/openssl/crypto/threads_win.c b/deps/openssl/openssl/crypto/threads_win.c index 4e0de908ee26..27334e13f3a2 100644 --- a/deps/openssl/openssl/crypto/threads_win.c +++ b/deps/openssl/openssl/crypto/threads_win.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -98,7 +98,26 @@ int CRYPTO_THREAD_init_local(CRYPTO_THREAD_LOCAL *key, void (*cleanup)(void *)) void *CRYPTO_THREAD_get_local(CRYPTO_THREAD_LOCAL *key) { - return TlsGetValue(*key); + DWORD last_error; + void *ret; + + /* + * TlsGetValue clears the last error even on success, so that callers may + * distinguish it successfully returning NULL or failing. It is documented + * to never fail if the argument is a valid index from TlsAlloc, so we do + * not need to handle this. + * + * However, this error-mangling behavior interferes with the caller's use of + * GetLastError. In particular SSL_get_error queries the error queue to + * determine whether the caller should look at the OS's errors. To avoid + * destroying state, save and restore the Windows error. + * + * https://msdn.microsoft.com/en-us/library/windows/desktop/ms686812(v=vs.85).aspx + */ + last_error = GetLastError(); + ret = TlsGetValue(*key); + SetLastError(last_error); + return ret; } int CRYPTO_THREAD_set_local(CRYPTO_THREAD_LOCAL *key, void *val) diff --git a/deps/openssl/openssl/crypto/ts/ts_lib.c b/deps/openssl/openssl/crypto/ts/ts_lib.c index de36e0e08420..ce2e12c593e0 100644 --- a/deps/openssl/openssl/crypto/ts/ts_lib.c +++ b/deps/openssl/openssl/crypto/ts/ts_lib.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -22,10 +22,9 @@ int TS_ASN1_INTEGER_print_bio(BIO *bio, const ASN1_INTEGER *num) int result = 0; char *hex; - num_bn = BN_new(); + num_bn = ASN1_INTEGER_to_BN(num, NULL); if (num_bn == NULL) return -1; - ASN1_INTEGER_to_BN(num, num_bn); if ((hex = BN_bn2hex(num_bn))) { result = BIO_write(bio, "0x", 2) > 0; result = result && BIO_write(bio, hex, strlen(hex)) > 0; diff --git a/deps/openssl/openssl/crypto/ts/ts_rsp_sign.c b/deps/openssl/openssl/crypto/ts/ts_rsp_sign.c index aea7b922a34d..0d714a71b7a8 100644 --- a/deps/openssl/openssl/crypto/ts/ts_rsp_sign.c +++ b/deps/openssl/openssl/crypto/ts/ts_rsp_sign.c @@ -1,5 +1,5 @@ /* - * Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2006-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 @@ -16,6 +16,7 @@ #include #include #include +#include #include "ts_lcl.h" static ASN1_INTEGER *def_serial_cb(struct TS_resp_ctx *, void *); @@ -840,7 +841,7 @@ static ASN1_GENERALIZEDTIME long sec, long usec, unsigned precision) { time_t time_sec = (time_t)sec; - struct tm *tm = NULL; + struct tm *tm = NULL, tm_result; char genTime_str[17 + TS_MAX_CLOCK_PRECISION_DIGITS]; char *p = genTime_str; char *p_end = genTime_str + sizeof(genTime_str); @@ -848,7 +849,7 @@ static ASN1_GENERALIZEDTIME if (precision > TS_MAX_CLOCK_PRECISION_DIGITS) goto err; - if ((tm = gmtime(&time_sec)) == NULL) + if ((tm = OPENSSL_gmtime(&time_sec, &tm_result)) == NULL) goto err; /* diff --git a/deps/openssl/openssl/crypto/ts/ts_rsp_verify.c b/deps/openssl/openssl/crypto/ts/ts_rsp_verify.c index 66f5be6f69d7..2755dd0ef36b 100644 --- a/deps/openssl/openssl/crypto/ts/ts_rsp_verify.c +++ b/deps/openssl/openssl/crypto/ts/ts_rsp_verify.c @@ -480,7 +480,7 @@ static char *ts_get_status_text(STACK_OF(ASN1_UTF8STRING) *text) return result; } -static int ts_check_policy(const ASN1_OBJECT *req_oid, +static int ts_check_policy(const ASN1_OBJECT *req_oid, const TS_TST_INFO *tst_info) { const ASN1_OBJECT *resp_oid = tst_info->policy_id; diff --git a/deps/openssl/openssl/crypto/ui/ui_openssl.c b/deps/openssl/openssl/crypto/ui/ui_openssl.c index 8fa8deca66ad..bfe93a57f1cd 100644 --- a/deps/openssl/openssl/crypto/ui/ui_openssl.c +++ b/deps/openssl/openssl/crypto/ui/ui_openssl.c @@ -1,5 +1,5 @@ /* - * Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2001-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 @@ -524,17 +524,13 @@ static int echo_console(UI *ui) { #if defined(TTY_set) && !defined(OPENSSL_SYS_VMS) memcpy(&(tty_new), &(tty_orig), sizeof(tty_orig)); - tty_new.TTY_FLAGS |= ECHO; -#endif - -#if defined(TTY_set) && !defined(OPENSSL_SYS_VMS) if (is_a_tty && (TTY_set(fileno(tty_in), &tty_new) == -1)) return 0; #endif #ifdef OPENSSL_SYS_VMS if (is_a_tty) { tty_new[0] = tty_orig[0]; - tty_new[1] = tty_orig[1] & ~TT$M_NOECHO; + tty_new[1] = tty_orig[1]; tty_new[2] = tty_orig[2]; status = sys$qiow(0, channel, IO$_SETMODE, &iosb, 0, 0, tty_new, 12, 0, 0, 0, 0); @@ -555,7 +551,6 @@ static int echo_console(UI *ui) #if defined(_WIN32) && !defined(_WIN32_WCE) if (is_a_tty) { tty_new = tty_orig; - tty_new |= ENABLE_ECHO_INPUT; SetConsoleMode(GetStdHandle(STD_INPUT_HANDLE), tty_new); } #endif diff --git a/deps/openssl/openssl/crypto/x509/build.info b/deps/openssl/openssl/crypto/x509/build.info index 7fc4b45048b5..afd0b6134e52 100644 --- a/deps/openssl/openssl/crypto/x509/build.info +++ b/deps/openssl/openssl/crypto/x509/build.info @@ -4,7 +4,7 @@ SOURCE[../../libcrypto]=\ x509_obj.c x509_req.c x509spki.c x509_vfy.c \ x509_set.c x509cset.c x509rset.c x509_err.c \ x509name.c x509_v3.c x509_ext.c x509_att.c \ - x509type.c x509_lu.c x_all.c x509_txt.c \ + x509type.c x509_meth.c x509_lu.c x_all.c x509_txt.c \ x509_trs.c by_file.c by_dir.c x509_vpm.c \ x_crl.c t_crl.c x_req.c t_req.c x_x509.c t_x509.c \ x_pubkey.c x_x509a.c x_attrib.c x_exten.c x_name.c diff --git a/deps/openssl/openssl/crypto/x509/by_dir.c b/deps/openssl/openssl/crypto/x509/by_dir.c index 21672a7ef551..a69045572927 100644 --- a/deps/openssl/openssl/crypto/x509/by_dir.c +++ b/deps/openssl/openssl/crypto/x509/by_dir.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -111,7 +111,7 @@ static int new_dir(X509_LOOKUP *lu) OPENSSL_free(a); return 0; } - lu->method_data = (char *)a; + lu->method_data = a; return 1; } diff --git a/deps/openssl/openssl/crypto/x509/x509_cmp.c b/deps/openssl/openssl/crypto/x509/x509_cmp.c index 01056356c583..49b0368dfca4 100644 --- a/deps/openssl/openssl/crypto/x509/x509_cmp.c +++ b/deps/openssl/openssl/crypto/x509/x509_cmp.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -174,7 +174,7 @@ int X509_NAME_cmp(const X509_NAME *a, const X509_NAME *b) ret = a->canon_enclen - b->canon_enclen; - if (ret) + if (ret != 0 || a->canon_enclen == 0) return ret; return memcmp(a->canon_enc, b->canon_enc, a->canon_enclen); diff --git a/deps/openssl/openssl/crypto/x509/x509_err.c b/deps/openssl/openssl/crypto/x509/x509_err.c index 3f4b8ef0bc7a..9f91188a7659 100644 --- a/deps/openssl/openssl/crypto/x509/x509_err.c +++ b/deps/openssl/openssl/crypto/x509/x509_err.c @@ -1,6 +1,6 @@ /* * Generated by util/mkerr.pl DO NOT EDIT - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -51,6 +51,7 @@ static ERR_STRING_DATA X509_str_functs[] = { {ERR_FUNC(X509_F_X509_LOAD_CERT_CRL_FILE), "X509_load_cert_crl_file"}, {ERR_FUNC(X509_F_X509_LOAD_CERT_FILE), "X509_load_cert_file"}, {ERR_FUNC(X509_F_X509_LOAD_CRL_FILE), "X509_load_crl_file"}, + {ERR_FUNC(X509_F_X509_LOOKUP_METH_NEW), "X509_LOOKUP_meth_new"}, {ERR_FUNC(X509_F_X509_NAME_ADD_ENTRY), "X509_NAME_add_entry"}, {ERR_FUNC(X509_F_X509_NAME_ENTRY_CREATE_BY_NID), "X509_NAME_ENTRY_create_by_NID"}, diff --git a/deps/openssl/openssl/crypto/x509/x509_lcl.h b/deps/openssl/openssl/crypto/x509/x509_lcl.h index 40bd102f7028..8a47da4fef0d 100644 --- a/deps/openssl/openssl/crypto/x509/x509_lcl.h +++ b/deps/openssl/openssl/crypto/x509/x509_lcl.h @@ -1,5 +1,5 @@ /* - * Copyright 2014-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2014-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 @@ -67,7 +67,7 @@ struct x509_crl_method_st { }; struct x509_lookup_method_st { - const char *name; + char *name; int (*new_item) (X509_LOOKUP *ctx); void (*free) (X509_LOOKUP *ctx); int (*init) (X509_LOOKUP *ctx); @@ -91,7 +91,7 @@ struct x509_lookup_st { int init; /* have we been started */ int skip; /* don't use us. */ X509_LOOKUP_METHOD *method; /* the functions */ - char *method_data; /* method data */ + void *method_data; /* method data */ X509_STORE *store_ctx; /* who owns us */ }; diff --git a/deps/openssl/openssl/crypto/x509/x509_lu.c b/deps/openssl/openssl/crypto/x509/x509_lu.c index 90f23520f49a..e5bea5b2764e 100644 --- a/deps/openssl/openssl/crypto/x509/x509_lu.c +++ b/deps/openssl/openssl/crypto/x509/x509_lu.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -117,6 +117,23 @@ int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, X509_LOOKUP_TYPE type, return ctx->method->get_by_alias(ctx, type, str, len, ret); } +int X509_LOOKUP_set_method_data(X509_LOOKUP *ctx, void *data) +{ + ctx->method_data = data; + return 1; +} + +void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx) +{ + return ctx->method_data; +} + +X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx) +{ + return ctx->store_ctx; +} + + static int x509_object_cmp(const X509_OBJECT *const *a, const X509_OBJECT *const *b) { @@ -265,6 +282,9 @@ int X509_STORE_CTX_get_by_subject(X509_STORE_CTX *vs, X509_LOOKUP_TYPE type, X509_OBJECT stmp, *tmp; int i, j; + if (ctx == NULL) + return 0; + CRYPTO_THREAD_write_lock(ctx->lock); tmp = X509_OBJECT_retrieve_by_subject(ctx->objs, type, name); CRYPTO_THREAD_unlock(ctx->lock); @@ -290,26 +310,30 @@ int X509_STORE_CTX_get_by_subject(X509_STORE_CTX *vs, X509_LOOKUP_TYPE type, return 1; } -int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) +static int x509_store_add(X509_STORE *ctx, void *x, int crl) { X509_OBJECT *obj; - int ret = 1, added = 1; + int ret = 0, added = 0; if (x == NULL) return 0; obj = X509_OBJECT_new(); if (obj == NULL) return 0; - obj->type = X509_LU_X509; - obj->data.x509 = x; + + if (crl) { + obj->type = X509_LU_CRL; + obj->data.crl = (X509_CRL *)x; + } else { + obj->type = X509_LU_X509; + obj->data.x509 = (X509 *)x; + } X509_OBJECT_up_ref_count(obj); CRYPTO_THREAD_write_lock(ctx->lock); if (X509_OBJECT_retrieve_match(ctx->objs, obj)) { - X509err(X509_F_X509_STORE_ADD_CERT, - X509_R_CERT_ALREADY_IN_HASH_TABLE); - ret = 0; + ret = 1; } else { added = sk_X509_OBJECT_push(ctx->objs, obj); ret = added != 0; @@ -317,46 +341,28 @@ int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) CRYPTO_THREAD_unlock(ctx->lock); - if (!ret) /* obj not pushed */ + if (added == 0) /* obj not pushed */ X509_OBJECT_free(obj); - if (!added) /* on push failure */ - X509err(X509_F_X509_STORE_ADD_CERT, ERR_R_MALLOC_FAILURE); return ret; } -int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x) +int X509_STORE_add_cert(X509_STORE *ctx, X509 *x) { - X509_OBJECT *obj; - int ret = 1, added = 1; - - if (x == NULL) - return 0; - obj = X509_OBJECT_new(); - if (obj == NULL) + if (!x509_store_add(ctx, x, 0)) { + X509err(X509_F_X509_STORE_ADD_CERT, ERR_R_MALLOC_FAILURE); return 0; - obj->type = X509_LU_CRL; - obj->data.crl = x; - X509_OBJECT_up_ref_count(obj); - - CRYPTO_THREAD_write_lock(ctx->lock); - - if (X509_OBJECT_retrieve_match(ctx->objs, obj)) { - X509err(X509_F_X509_STORE_ADD_CRL, X509_R_CERT_ALREADY_IN_HASH_TABLE); - ret = 0; - } else { - added = sk_X509_OBJECT_push(ctx->objs, obj); - ret = added != 0; } + return 1; +} - CRYPTO_THREAD_unlock(ctx->lock); - - if (!ret) /* obj not pushed */ - X509_OBJECT_free(obj); - if (!added) /* on push failure */ +int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x) +{ + if (!x509_store_add(ctx, x, 1)) { X509err(X509_F_X509_STORE_ADD_CRL, ERR_R_MALLOC_FAILURE); - - return ret; + return 0; + } + return 1; } int X509_OBJECT_up_ref_count(X509_OBJECT *a) @@ -403,8 +409,7 @@ X509_OBJECT *X509_OBJECT_new() return ret; } - -void X509_OBJECT_free(X509_OBJECT *a) +static void x509_object_free_internal(X509_OBJECT *a) { if (a == NULL) return; @@ -418,6 +423,33 @@ void X509_OBJECT_free(X509_OBJECT *a) X509_CRL_free(a->data.crl); break; } +} + +int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj) +{ + if (a == NULL || !X509_up_ref(obj)) + return 0; + + x509_object_free_internal(a); + a->type = X509_LU_X509; + a->data.x509 = obj; + return 1; +} + +int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj) +{ + if (a == NULL || !X509_CRL_up_ref(obj)) + return 0; + + x509_object_free_internal(a); + a->type = X509_LU_CRL; + a->data.crl = obj; + return 1; +} + +void X509_OBJECT_free(X509_OBJECT *a) +{ + x509_object_free_internal(a); OPENSSL_free(a); } @@ -489,6 +521,9 @@ STACK_OF(X509) *X509_STORE_CTX_get1_certs(X509_STORE_CTX *ctx, X509_NAME *nm) X509 *x; X509_OBJECT *obj; + if (ctx->ctx == NULL) + return NULL; + CRYPTO_THREAD_write_lock(ctx->ctx->lock); idx = x509_object_idx_cnt(ctx->ctx->objs, X509_LU_X509, nm, &cnt); if (idx < 0) { @@ -538,8 +573,10 @@ STACK_OF(X509_CRL) *X509_STORE_CTX_get1_crls(X509_STORE_CTX *ctx, X509_NAME *nm) X509_OBJECT *obj, *xobj = X509_OBJECT_new(); /* Always do lookup to possibly add new CRLs to cache */ - if (sk == NULL || xobj == NULL || - !X509_STORE_CTX_get_by_subject(ctx, X509_LU_CRL, nm, xobj)) { + if (sk == NULL + || xobj == NULL + || ctx->ctx == NULL + || !X509_STORE_CTX_get_by_subject(ctx, X509_LU_CRL, nm, xobj)) { X509_OBJECT_free(xobj); sk_X509_CRL_free(sk); return NULL; @@ -633,6 +670,9 @@ int X509_STORE_CTX_get1_issuer(X509 **issuer, X509_STORE_CTX *ctx, X509 *x) } X509_OBJECT_free(obj); + if (ctx->ctx == NULL) + return 0; + /* Else find index of first cert accepted by 'check_issued' */ ret = 0; CRYPTO_THREAD_write_lock(ctx->ctx->lock); diff --git a/deps/openssl/openssl/crypto/x509/x509_meth.c b/deps/openssl/openssl/crypto/x509/x509_meth.c new file mode 100644 index 000000000000..05ed4bf86372 --- /dev/null +++ b/deps/openssl/openssl/crypto/x509/x509_meth.c @@ -0,0 +1,166 @@ +/* + * Copyright 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 + */ + +#include +#include +#include + +#include "internal/cryptlib.h" +#include +#include +#include +#include "x509_lcl.h" + +X509_LOOKUP_METHOD *X509_LOOKUP_meth_new(const char *name) +{ + X509_LOOKUP_METHOD *method = OPENSSL_zalloc(sizeof(X509_LOOKUP_METHOD)); + + if (method != NULL) { + method->name = OPENSSL_strdup(name); + if (method->name == NULL) { + X509err(X509_F_X509_LOOKUP_METH_NEW, ERR_R_MALLOC_FAILURE); + goto err; + } + } + + return method; + +err: + OPENSSL_free(method); + return NULL; +} + +void X509_LOOKUP_meth_free(X509_LOOKUP_METHOD *method) +{ + if (method != NULL) + OPENSSL_free(method->name); + OPENSSL_free(method); +} + +int X509_LOOKUP_meth_set_new_item(X509_LOOKUP_METHOD *method, + int (*new_item) (X509_LOOKUP *ctx)) +{ + method->new_item = new_item; + return 1; +} + +int (*X509_LOOKUP_meth_get_new_item(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx) +{ + return method->new_item; +} + +int X509_LOOKUP_meth_set_free( + X509_LOOKUP_METHOD *method, + void (*free) (X509_LOOKUP *ctx)) +{ + method->free = free; + return 1; +} + +void (*X509_LOOKUP_meth_get_free(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx) +{ + return method->free; +} + +int X509_LOOKUP_meth_set_init(X509_LOOKUP_METHOD *method, + int (*init) (X509_LOOKUP *ctx)) +{ + method->init = init; + return 1; +} + +int (*X509_LOOKUP_meth_get_init(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx) +{ + return method->init; +} + +int X509_LOOKUP_meth_set_shutdown( + X509_LOOKUP_METHOD *method, + int (*shutdown) (X509_LOOKUP *ctx)) +{ + method->shutdown = shutdown; + return 1; +} + +int (*X509_LOOKUP_meth_get_shutdown(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx) +{ + return method->shutdown; +} + +int X509_LOOKUP_meth_set_ctrl( + X509_LOOKUP_METHOD *method, + X509_LOOKUP_ctrl_fn ctrl) +{ + method->ctrl = ctrl; + return 1; +} + +X509_LOOKUP_ctrl_fn X509_LOOKUP_meth_get_ctrl(const X509_LOOKUP_METHOD *method) +{ + return method->ctrl; +} + +int X509_LOOKUP_meth_set_get_by_subject(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_subject_fn get_by_subject) +{ + method->get_by_subject = get_by_subject; + return 1; +} + +X509_LOOKUP_get_by_subject_fn X509_LOOKUP_meth_get_get_by_subject( + const X509_LOOKUP_METHOD *method) +{ + return method->get_by_subject; +} + + +int X509_LOOKUP_meth_set_get_by_issuer_serial(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_issuer_serial_fn get_by_issuer_serial) +{ + method->get_by_issuer_serial = get_by_issuer_serial; + return 1; +} + +X509_LOOKUP_get_by_issuer_serial_fn + X509_LOOKUP_meth_get_get_by_issuer_serial(const X509_LOOKUP_METHOD *method) +{ + return method->get_by_issuer_serial; +} + + +int X509_LOOKUP_meth_set_get_by_fingerprint(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_fingerprint_fn get_by_fingerprint) +{ + method->get_by_fingerprint = get_by_fingerprint; + return 1; +} + +X509_LOOKUP_get_by_fingerprint_fn X509_LOOKUP_meth_get_get_by_fingerprint( + const X509_LOOKUP_METHOD *method) +{ + return method->get_by_fingerprint; +} + +int X509_LOOKUP_meth_set_get_by_alias(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_alias_fn get_by_alias) +{ + method->get_by_alias = get_by_alias; + return 1; +} + +X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias( + const X509_LOOKUP_METHOD *method) +{ + return method->get_by_alias; +} + diff --git a/deps/openssl/openssl/crypto/x509/x509_vfy.c b/deps/openssl/openssl/crypto/x509/x509_vfy.c index 3018c69ae48a..f86871f6d2b9 100644 --- a/deps/openssl/openssl/crypto/x509/x509_vfy.c +++ b/deps/openssl/openssl/crypto/x509/x509_vfy.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -7,6 +7,7 @@ * https://www.openssl.org/source/license.html */ +#include #include #include #include @@ -557,6 +558,27 @@ static int check_chain_extensions(X509_STORE_CTX *ctx) return 1; } +static int has_san_id(X509 *x, int gtype) +{ + int i; + int ret = 0; + GENERAL_NAMES *gs = X509_get_ext_d2i(x, NID_subject_alt_name, NULL, NULL); + + if (gs == NULL) + return 0; + + for (i = 0; i < sk_GENERAL_NAME_num(gs); i++) { + GENERAL_NAME *g = sk_GENERAL_NAME_value(gs, i); + + if (g->type == gtype) { + ret = 1; + break; + } + } + GENERAL_NAMES_free(gs); + return ret; +} + static int check_name_constraints(X509_STORE_CTX *ctx) { int i; @@ -655,7 +677,12 @@ static int check_name_constraints(X509_STORE_CTX *ctx) int rv = NAME_CONSTRAINTS_check(x, nc); /* If EE certificate check commonName too */ - if (rv == X509_V_OK && i == 0) + if (rv == X509_V_OK && i == 0 + && (ctx->param->hostflags + & X509_CHECK_FLAG_NEVER_CHECK_SUBJECT) == 0 + && ((ctx->param->hostflags + & X509_CHECK_FLAG_ALWAYS_CHECK_SUBJECT) != 0 + || !has_san_id(x, GEN_DNS))) rv = NAME_CONSTRAINTS_check_CN(x, nc); switch (rv) { @@ -1756,119 +1783,67 @@ int X509_cmp_current_time(const ASN1_TIME *ctm) int X509_cmp_time(const ASN1_TIME *ctm, time_t *cmp_time) { - char *str; - ASN1_TIME atm; - long offset; - char buff1[24], buff2[24], *p; - int i, j, remaining; + static const size_t utctime_length = sizeof("YYMMDDHHMMSSZ") - 1; + static const size_t generalizedtime_length = sizeof("YYYYMMDDHHMMSSZ") - 1; + ASN1_TIME *asn1_cmp_time = NULL; + int i, day, sec, ret = 0; - p = buff1; - remaining = ctm->length; - str = (char *)ctm->data; /* - * Note that the following (historical) code allows much more slack in the - * time format than RFC5280. In RFC5280, the representation is fixed: + * Note that ASN.1 allows much more slack in the time format than RFC5280. + * In RFC5280, the representation is fixed: * UTCTime: YYMMDDHHMMSSZ * GeneralizedTime: YYYYMMDDHHMMSSZ + * + * We do NOT currently enforce the following RFC 5280 requirement: + * "CAs conforming to this profile MUST always encode certificate + * validity dates through the year 2049 as UTCTime; certificate validity + * dates in 2050 or later MUST be encoded as GeneralizedTime." */ - if (ctm->type == V_ASN1_UTCTIME) { - /* YYMMDDHHMM[SS]Z or YYMMDDHHMM[SS](+-)hhmm */ - int min_length = sizeof("YYMMDDHHMMZ") - 1; - int max_length = sizeof("YYMMDDHHMMSS+hhmm") - 1; - if (remaining < min_length || remaining > max_length) + switch (ctm->type) { + case V_ASN1_UTCTIME: + if (ctm->length != (int)(utctime_length)) return 0; - memcpy(p, str, 10); - p += 10; - str += 10; - remaining -= 10; - } else { - /* YYYYMMDDHHMM[SS[.fff]]Z or YYYYMMDDHHMM[SS[.f[f[f]]]](+-)hhmm */ - int min_length = sizeof("YYYYMMDDHHMMZ") - 1; - int max_length = sizeof("YYYYMMDDHHMMSS.fff+hhmm") - 1; - if (remaining < min_length || remaining > max_length) + break; + case V_ASN1_GENERALIZEDTIME: + if (ctm->length != (int)(generalizedtime_length)) return 0; - memcpy(p, str, 12); - p += 12; - str += 12; - remaining -= 12; + break; + default: + return 0; } - if ((*str == 'Z') || (*str == '-') || (*str == '+')) { - *(p++) = '0'; - *(p++) = '0'; - } else { - /* SS (seconds) */ - if (remaining < 2) + /** + * Verify the format: the ASN.1 functions we use below allow a more + * flexible format than what's mandated by RFC 5280. + * Digit and date ranges will be verified in the conversion methods. + */ + for (i = 0; i < ctm->length - 1; i++) { + if (!isdigit(ctm->data[i])) return 0; - *(p++) = *(str++); - *(p++) = *(str++); - remaining -= 2; - /* - * Skip any (up to three) fractional seconds... - * TODO(emilia): in RFC5280, fractional seconds are forbidden. - * Can we just kill them altogether? - */ - if (remaining && *str == '.') { - str++; - remaining--; - for (i = 0; i < 3 && remaining; i++, str++, remaining--) { - if (*str < '0' || *str > '9') - break; - } - } - } - *(p++) = 'Z'; - *(p++) = '\0'; - - /* We now need either a terminating 'Z' or an offset. */ - if (!remaining) + if (ctm->data[ctm->length - 1] != 'Z') return 0; - if (*str == 'Z') { - if (remaining != 1) - return 0; - offset = 0; - } else { - /* (+-)HHMM */ - if ((*str != '+') && (*str != '-')) - return 0; - /* Historical behaviour: the (+-)hhmm offset is forbidden in RFC5280. */ - if (remaining != 5) - return 0; - if (str[1] < '0' || str[1] > '9' || str[2] < '0' || str[2] > '9' || - str[3] < '0' || str[3] > '9' || str[4] < '0' || str[4] > '9') - return 0; - offset = ((str[1] - '0') * 10 + (str[2] - '0')) * 60; - offset += (str[3] - '0') * 10 + (str[4] - '0'); - if (*str == '-') - offset = -offset; - } - atm.type = ctm->type; - atm.flags = 0; - atm.length = sizeof(buff2); - atm.data = (unsigned char *)buff2; - if (X509_time_adj(&atm, offset * 60, cmp_time) == NULL) - return 0; + /* + * There is ASN1_UTCTIME_cmp_time_t but no + * ASN1_GENERALIZEDTIME_cmp_time_t or ASN1_TIME_cmp_time_t, + * so we go through ASN.1 + */ + asn1_cmp_time = X509_time_adj(NULL, 0, cmp_time); + if (asn1_cmp_time == NULL) + goto err; + if (!ASN1_TIME_diff(&day, &sec, ctm, asn1_cmp_time)) + goto err; - if (ctm->type == V_ASN1_UTCTIME) { - i = (buff1[0] - '0') * 10 + (buff1[1] - '0'); - if (i < 50) - i += 100; /* cf. RFC 2459 */ - j = (buff2[0] - '0') * 10 + (buff2[1] - '0'); - if (j < 50) - j += 100; - - if (i < j) - return -1; - if (i > j) - return 1; - } - i = strcmp(buff1, buff2); - if (i == 0) /* wait a second then return younger :-) */ - return -1; - else - return i; + /* + * X509_cmp_time comparison is <=. + * The return value 0 is reserved for errors. + */ + ret = (day >= 0 && sec >= 0) ? -1 : 1; + + err: + ASN1_TIME_free(asn1_cmp_time); + return ret; } ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long adj) @@ -3264,6 +3239,10 @@ static int check_sig_level(X509_STORE_CTX *ctx, X509 *cert) if (level > NUM_AUTH_LEVELS) level = NUM_AUTH_LEVELS; + /* We are not able to look up the CA MD for RSA PSS in this version */ + if (nid == NID_rsassaPss) + return 1; + /* Lookup signature algorithm digest */ if (nid && OBJ_find_sigid_algs(nid, &mdnid, NULL)) { const EVP_MD *md; diff --git a/deps/openssl/openssl/crypto/x509/x509_vpm.c b/deps/openssl/openssl/crypto/x509/x509_vpm.c index b5067220adbe..9bc4c6110130 100644 --- a/deps/openssl/openssl/crypto/x509/x509_vpm.c +++ b/deps/openssl/openssl/crypto/x509/x509_vpm.c @@ -1,5 +1,5 @@ /* - * Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2004-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 @@ -412,6 +412,11 @@ void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, param->hostflags = flags; } +unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param) +{ + return param->hostflags; +} + char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param) { return param->peername; diff --git a/deps/openssl/openssl/crypto/x509/x509name.c b/deps/openssl/openssl/crypto/x509/x509name.c index f87dc7db993a..81dce376f856 100644 --- a/deps/openssl/openssl/crypto/x509/x509name.c +++ b/deps/openssl/openssl/crypto/x509/x509name.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -191,7 +191,7 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, loc = n; else if (loc < 0) loc = n; - + inc = (set == 0); name->modified = 1; if (set == -1) { @@ -200,7 +200,6 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, inc = 1; } else { set = sk_X509_NAME_ENTRY_value(sk, loc - 1)->set; - inc = 0; } } else { /* if (set >= 0) */ @@ -211,12 +210,11 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, set = 0; } else set = sk_X509_NAME_ENTRY_value(sk, loc)->set; - inc = (set == 0) ? 1 : 0; } /* * X509_NAME_ENTRY_dup is ASN1 generated code, that can't be easily - * const'ified; harmless cast as dup() don't modify its input. + * const'ified; harmless cast since dup() don't modify its input. */ if ((new_name = X509_NAME_ENTRY_dup((X509_NAME_ENTRY *)ne)) == NULL) goto err; @@ -228,7 +226,7 @@ int X509_NAME_add_entry(X509_NAME *name, const X509_NAME_ENTRY *ne, int loc, if (inc) { n = sk_X509_NAME_ENTRY_num(sk); for (i = loc + 1; i < n; i++) - sk_X509_NAME_ENTRY_value(sk, i - 1)->set += 1; + sk_X509_NAME_ENTRY_value(sk, i)->set += 1; } return (1); err: diff --git a/deps/openssl/openssl/crypto/x509/x_name.c b/deps/openssl/openssl/crypto/x509/x_name.c index 0af5df5cfc4f..1a33dc1daa7c 100644 --- a/deps/openssl/openssl/crypto/x509/x_name.c +++ b/deps/openssl/openssl/crypto/x509/x_name.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -472,6 +472,8 @@ static int i2d_name_canon(STACK_OF(STACK_OF_X509_NAME_ENTRY) * _intname, int X509_NAME_set(X509_NAME **xn, X509_NAME *name) { + if (*xn == name) + return *xn != NULL; if ((name = X509_NAME_dup(name)) == NULL) return 0; X509_NAME_free(*xn); diff --git a/deps/openssl/openssl/crypto/x509v3/v3_enum.c b/deps/openssl/openssl/crypto/x509v3/v3_enum.c index 3b0f197444af..f39cb5ac2aab 100644 --- a/deps/openssl/openssl/crypto/x509v3/v3_enum.c +++ b/deps/openssl/openssl/crypto/x509v3/v3_enum.c @@ -38,7 +38,7 @@ const X509V3_EXT_METHOD v3_crl_reason = { crl_reasons }; -char *i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *method, +char *i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *method, const ASN1_ENUMERATED *e) { ENUMERATED_NAMES *enam; diff --git a/deps/openssl/openssl/crypto/x509v3/v3_ncons.c b/deps/openssl/openssl/crypto/x509v3/v3_ncons.c index 2eec405a36b5..bd7301e45589 100644 --- a/deps/openssl/openssl/crypto/x509v3/v3_ncons.c +++ b/deps/openssl/openssl/crypto/x509v3/v3_ncons.c @@ -1,5 +1,5 @@ /* - * Copyright 2003-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2003-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 @@ -297,47 +297,140 @@ int NAME_CONSTRAINTS_check(X509 *x, NAME_CONSTRAINTS *nc) } +static int cn2dnsid(ASN1_STRING *cn, unsigned char **dnsid, size_t *idlen) +{ + int utf8_length; + unsigned char *utf8_value; + int i; + int isdnsname = 0; + + /* Don't leave outputs uninitialized */ + *dnsid = NULL; + *idlen = 0; + + /*- + * Per RFC 6125, DNS-IDs representing internationalized domain names appear + * in certificates in A-label encoded form: + * + * https://tools.ietf.org/html/rfc6125#section-6.4.2 + * + * The same applies to CNs which are intended to represent DNS names. + * However, while in the SAN DNS-IDs are IA5Strings, as CNs they may be + * needlessly encoded in 16-bit Unicode. We perform a conversion to UTF-8 + * to ensure that we get an ASCII representation of any CNs that are + * representable as ASCII, but just not encoded as ASCII. The UTF-8 form + * may contain some non-ASCII octets, and that's fine, such CNs are not + * valid legacy DNS names. + * + * Note, 'int' is the return type of ASN1_STRING_to_UTF8() so that's what + * we must use for 'utf8_length'. + */ + if ((utf8_length = ASN1_STRING_to_UTF8(&utf8_value, cn)) < 0) + return X509_V_ERR_OUT_OF_MEM; + + /* + * Some certificates have had names that include a *trailing* NUL byte. + * Remove these harmless NUL characters. They would otherwise yield false + * alarms with the following embedded NUL check. + */ + while (utf8_length > 0 && utf8_value[utf8_length - 1] == '\0') + --utf8_length; + + /* Reject *embedded* NULs */ + if ((size_t)utf8_length != strlen((char *)utf8_value)) { + OPENSSL_free(utf8_value); + return X509_V_ERR_UNSUPPORTED_NAME_SYNTAX; + } + + /* + * XXX: Deviation from strict DNS name syntax, also check names with '_' + * Check DNS name syntax, any '-' or '.' must be internal, + * and on either side of each '.' we can't have a '-' or '.'. + * + * If the name has just one label, we don't consider it a DNS name. This + * means that "CN=sometld" cannot be precluded by DNS name constraints, but + * that is not a problem. + */ + for (i = 0; i < utf8_length; ++i) { + unsigned char c = utf8_value[i]; + + if ((c >= 'a' && c <= 'z') + || (c >= 'A' && c <= 'Z') + || (c >= '0' && c <= '9') + || c == '_') + continue; + + /* Dot and hyphen cannot be first or last. */ + if (i > 0 && i < utf8_length - 1) { + if (c == '-') + continue; + /* + * Next to a dot the preceding and following characters must not be + * another dot or a hyphen. Otherwise, record that the name is + * plausible, since it has two or more labels. + */ + if (c == '.' + && utf8_value[i + 1] != '.' + && utf8_value[i - 1] != '-' + && utf8_value[i + 1] != '-') { + isdnsname = 1; + continue; + } + } + isdnsname = 0; + break; + } + + if (isdnsname) { + *dnsid = utf8_value; + *idlen = (size_t)utf8_length; + return X509_V_OK; + } + OPENSSL_free(utf8_value); + return X509_V_OK; +} + +/* + * Check CN against DNS-ID name constraints. + */ int NAME_CONSTRAINTS_check_CN(X509 *x, NAME_CONSTRAINTS *nc) { int r, i; - X509_NAME *nm; - + X509_NAME *nm = X509_get_subject_name(x); ASN1_STRING stmp; GENERAL_NAME gntmp; + stmp.flags = 0; stmp.type = V_ASN1_IA5STRING; gntmp.type = GEN_DNS; gntmp.d.dNSName = &stmp; - nm = X509_get_subject_name(x); - /* Process any commonName attributes in subject name */ for (i = -1;;) { X509_NAME_ENTRY *ne; - ASN1_STRING *hn; + ASN1_STRING *cn; + unsigned char *idval; + size_t idlen; + i = X509_NAME_get_index_by_NID(nm, NID_commonName, i); if (i == -1) break; ne = X509_NAME_get_entry(nm, i); - hn = X509_NAME_ENTRY_get_data(ne); - /* Only process attributes that look like host names */ - if (asn1_valid_host(hn)) { - unsigned char *h; - int hlen = ASN1_STRING_to_UTF8(&h, hn); - if (hlen <= 0) - return X509_V_ERR_OUT_OF_MEM; + cn = X509_NAME_ENTRY_get_data(ne); - stmp.length = hlen; - stmp.data = h; - - r = nc_match(&gntmp, nc); - - OPENSSL_free(h); + /* Only process attributes that look like host names */ + if ((r = cn2dnsid(cn, &idval, &idlen)) != X509_V_OK) + return r; + if (idlen == 0) + continue; - if (r != X509_V_OK) - return r; - } + stmp.length = idlen; + stmp.data = idval; + r = nc_match(&gntmp, nc); + OPENSSL_free(idval); + if (r != X509_V_OK) + return r; } return X509_V_OK; } diff --git a/deps/openssl/openssl/crypto/x509v3/v3_purp.c b/deps/openssl/openssl/crypto/x509v3/v3_purp.c index 6d2f354d70f1..7ac067229fbb 100644 --- a/deps/openssl/openssl/crypto/x509v3/v3_purp.c +++ b/deps/openssl/openssl/crypto/x509v3/v3_purp.c @@ -78,11 +78,9 @@ int X509_check_purpose(X509 *x, int id, int ca) { int idx; const X509_PURPOSE *pt; - if (!(x->ex_flags & EXFLAG_SET)) { - CRYPTO_THREAD_write_lock(x->lock); - x509v3_cache_extensions(x); - CRYPTO_THREAD_unlock(x->lock); - } + + x509v3_cache_extensions(x); + /* Return if side-effect only call */ if (id == -1) return 1; @@ -352,10 +350,18 @@ static void x509v3_cache_extensions(X509 *x) ASN1_BIT_STRING *ns; EXTENDED_KEY_USAGE *extusage; X509_EXTENSION *ex; - int i; - if (x->ex_flags & EXFLAG_SET) + + /* fast lock-free check, see end of the function for details. */ + if (x->ex_cached) + return; + + CRYPTO_THREAD_write_lock(x->lock); + if (x->ex_flags & EXFLAG_SET) { + CRYPTO_THREAD_unlock(x->lock); return; + } + X509_digest(x, EVP_sha1(), x->sha1_hash, NULL); /* V1 should mean no extensions ... */ if (!X509_get_version(x)) @@ -489,6 +495,13 @@ static void x509v3_cache_extensions(X509 *x) } } x->ex_flags |= EXFLAG_SET; + CRYPTO_THREAD_unlock(x->lock); + /* + * It has to be placed after memory barrier, which is implied by unlock. + * Worst thing that can happen is that another thread proceeds to lock + * and checks x->ex_flags & EXFLAGS_SET. See beginning of the function. + */ + x->ex_cached = 1; } /*- @@ -541,11 +554,7 @@ void X509_set_proxy_pathlen(X509 *x, long l) int X509_check_ca(X509 *x) { - if (!(x->ex_flags & EXFLAG_SET)) { - CRYPTO_THREAD_write_lock(x->lock); - x509v3_cache_extensions(x); - CRYPTO_THREAD_unlock(x->lock); - } + x509v3_cache_extensions(x); return check_ca(x); } @@ -759,6 +768,7 @@ int X509_check_issued(X509 *issuer, X509 *subject) if (X509_NAME_cmp(X509_get_subject_name(issuer), X509_get_issuer_name(subject))) return X509_V_ERR_SUBJECT_ISSUER_MISMATCH; + x509v3_cache_extensions(issuer); x509v3_cache_extensions(subject); diff --git a/deps/openssl/openssl/crypto/x509v3/v3_skey.c b/deps/openssl/openssl/crypto/x509v3/v3_skey.c index 749f51b2f00e..39597dc41d3f 100644 --- a/deps/openssl/openssl/crypto/x509v3/v3_skey.c +++ b/deps/openssl/openssl/crypto/x509v3/v3_skey.c @@ -24,7 +24,7 @@ const X509V3_EXT_METHOD v3_skey_id = { NULL }; -char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, +char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method, const ASN1_OCTET_STRING *oct) { return OPENSSL_buf2hexstr(oct->data, oct->length); diff --git a/deps/openssl/openssl/crypto/x509v3/v3_tlsf.c b/deps/openssl/openssl/crypto/x509v3/v3_tlsf.c index fec67243f8d3..d93781e1b7b7 100644 --- a/deps/openssl/openssl/crypto/x509v3/v3_tlsf.c +++ b/deps/openssl/openssl/crypto/x509v3/v3_tlsf.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -121,13 +121,12 @@ static TLS_FEATURE *v2i_TLS_FEATURE(const X509V3_EXT_METHOD *method, } } - ai = ASN1_INTEGER_new(); - if (ai == NULL) { + if ((ai = ASN1_INTEGER_new()) == NULL + || !ASN1_INTEGER_set(ai, tlsextid) + || sk_ASN1_INTEGER_push(tlsf, ai) <= 0) { X509V3err(X509V3_F_V2I_TLS_FEATURE, ERR_R_MALLOC_FAILURE); goto err; } - ASN1_INTEGER_set(ai, tlsextid); - sk_ASN1_INTEGER_push(tlsf, ai); } return tlsf; diff --git a/deps/openssl/openssl/demos/bio/descrip.mms b/deps/openssl/openssl/demos/bio/descrip.mms index d49725ffd191..8e127b079a51 100644 --- a/deps/openssl/openssl/demos/bio/descrip.mms +++ b/deps/openssl/openssl/demos/bio/descrip.mms @@ -23,7 +23,7 @@ SHARED = TRUE @ ! # Because we use an option file, we need to redefine this -.obj.exe : +.obj.exe : $(LINK) $(LINKFLAGS) $<,OPT:/OPT all : client-arg.exe client-conf.exe saccept.exe sconnect.exe - diff --git a/deps/openssl/openssl/demos/certs/README b/deps/openssl/openssl/demos/certs/README index 88cf56b1f8d0..126663a1d8c9 100644 --- a/deps/openssl/openssl/demos/certs/README +++ b/deps/openssl/openssl/demos/certs/README @@ -8,7 +8,7 @@ automatically using scripts. Example creates a root CA, an intermediate CA signed by the root and several certificates signed by the intermediate CA. The script then creates an empty index.txt file and adds entries for the -certificates and generates a CRL. Then one certificate is revoked and a +certificates and generates a CRL. Then one certificate is revoked and a second CRL generated. The script ocsprun.sh runs the test responder on port 8888 covering the @@ -16,3 +16,6 @@ client certificates. The script ocspquery.sh queries the status of the certificates using the test responder. + + + diff --git a/deps/openssl/openssl/demos/certs/apps/apps.cnf b/deps/openssl/openssl/demos/certs/apps/apps.cnf index f02d43bad03f..531afe64b20f 100644 --- a/deps/openssl/openssl/demos/certs/apps/apps.cnf +++ b/deps/openssl/openssl/demos/certs/apps/apps.cnf @@ -65,3 +65,5 @@ subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always basicConstraints = critical,CA:true keyUsage = critical, cRLSign, keyCertSign + + diff --git a/deps/openssl/openssl/demos/certs/apps/mkxcerts.sh b/deps/openssl/openssl/demos/certs/apps/mkxcerts.sh index ebe1920432be..0f88a48fb848 100644 --- a/deps/openssl/openssl/demos/certs/apps/mkxcerts.sh +++ b/deps/openssl/openssl/demos/certs/apps/mkxcerts.sh @@ -13,7 +13,7 @@ CN="OpenSSL Test RSA SHA-512 cert" $OPENSSL req \ -config apps.cnf -extensions usr_cert -x509 -nodes \ -keyout tsha512.pem -out tsha512.pem -new -days 3650 -sha512 -# Create EC parameters +# Create EC parameters $OPENSSL ecparam -name P-256 -out ecp256.pem $OPENSSL ecparam -name P-384 -out ecp384.pem diff --git a/deps/openssl/openssl/demos/certs/mkcerts.sh b/deps/openssl/openssl/demos/certs/mkcerts.sh index 498595d28c58..18daa6bcfb8d 100644 --- a/deps/openssl/openssl/demos/certs/mkcerts.sh +++ b/deps/openssl/openssl/demos/certs/mkcerts.sh @@ -42,7 +42,7 @@ CN="Test OCSP Responder Cert" $OPENSSL req -config ca.cnf -nodes \ $OPENSSL x509 -req -in respreq.pem -CA intca.pem -CAkey intkey.pem -days 3600 \ -extfile ca.cnf -extensions ocsp_cert -CAcreateserial -out resp.pem -# Example creating a PKCS#3 DH certificate. +# Example creating a PKCS#3 DH certificate. # First DH parameters @@ -93,3 +93,4 @@ openssl ca -revoke rev.pem -crl_reason superseded \ # Generate another CRL $OPENSSL ca -gencrl -keyfile root.pem -cert root.pem -config ca.cnf \ -md sha1 -crldays 1 -out crl2.pem + diff --git a/deps/openssl/openssl/demos/evp/Makefile b/deps/openssl/openssl/demos/evp/Makefile index 4a753e924771..72c6e81d7a9f 100644 --- a/deps/openssl/openssl/demos/evp/Makefile +++ b/deps/openssl/openssl/demos/evp/Makefile @@ -11,7 +11,7 @@ CFLAGS = $(OPENSSL_INCS_LOCATION) LDFLAGS = $(OPENSSL_LIBS_LOCATION) -lssl -lcrypto -all: aesccm aesgcm +all: aesccm aesgcm aesccm: aesccm.o aesgcm: aesgcm.o diff --git a/deps/openssl/openssl/demos/evp/aesgcm.c b/deps/openssl/openssl/demos/evp/aesgcm.c index 46d9a5639bc0..df59f469fd86 100644 --- a/deps/openssl/openssl/demos/evp/aesgcm.c +++ b/deps/openssl/openssl/demos/evp/aesgcm.c @@ -102,7 +102,7 @@ void aes_gcm_decrypt(void) printf("Plaintext:\n"); BIO_dump_fp(stdout, outbuf, outlen); /* Set expected tag value. */ - EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, sizeof(gcm_tag), + EVP_CIPHER_CTX_ctrl(ctx, EVP_CTRL_AEAD_SET_TAG, sizeof(gcm_tag), (void *)gcm_tag); /* Finalise: note get no output for GCM */ rv = EVP_DecryptFinal_ex(ctx, outbuf, &outlen); diff --git a/deps/openssl/openssl/doc/apps/cms.pod b/deps/openssl/openssl/doc/apps/cms.pod index 96acd315d4d3..64ec106b09cc 100644 --- a/deps/openssl/openssl/doc/apps/cms.pod +++ b/deps/openssl/openssl/doc/apps/cms.pod @@ -393,6 +393,9 @@ When encrypting a message this option may be used multiple times to specify each recipient. This form B be used if customised parameters are required (for example to specify RSA-OAEP). +Only certificates carrying RSA, Diffie-Hellman or EC keys are supported by this +option. + =item B<-keyid> use subject key identifier to identify certificates instead of issuer name and @@ -712,23 +715,20 @@ No revocation checking is done on the signer's certificate. =head1 HISTORY The use of multiple B<-signer> options and the B<-resign> command were first -added in OpenSSL 1.0.0 - -The B option was first added in OpenSSL 1.1.0 +added in OpenSSL 1.0.0. -The use of B<-recip> to specify the recipient when encrypting mail was first -added to OpenSSL 1.1.0 +The B option was first added in OpenSSL 1.0.2 -Support for RSA-OAEP and RSA-PSS was first added to OpenSSL 1.1.0. +Support for RSA-OAEP and RSA-PSS was first added to OpenSSL 1.0.2. The use of non-RSA keys with B<-encrypt> and B<-decrypt> was first added -to OpenSSL 1.1.0. +to OpenSSL 1.0.2. -The -no_alt_chains options was first added to OpenSSL 1.1.0. +The -no_alt_chains options was first added to OpenSSL 1.0.2b. =head1 COPYRIGHT -Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2008-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 diff --git a/deps/openssl/openssl/doc/apps/config.pod b/deps/openssl/openssl/doc/apps/config.pod index 76f282f28ce0..a5153a65f1a5 100644 --- a/deps/openssl/openssl/doc/apps/config.pod +++ b/deps/openssl/openssl/doc/apps/config.pod @@ -20,7 +20,7 @@ started or end of file is reached. A section name can consist of alphanumeric characters and underscores. The first section of a configuration file is special and is referred -to as the B section this is usually unnamed and is from the +to as the B section. This section is usually unnamed and spans from the start of file until the first named section. When a name is being looked up it is first looked up in a named section (if any) and then the default section. @@ -377,7 +377,7 @@ L, L, L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/apps/genpkey.pod b/deps/openssl/openssl/doc/apps/genpkey.pod index d48695200b13..91b12e249b3b 100644 --- a/deps/openssl/openssl/doc/apps/genpkey.pod +++ b/deps/openssl/openssl/doc/apps/genpkey.pod @@ -12,7 +12,7 @@ B B [B<-out filename>] [B<-outform PEM|DER>] [B<-pass arg>] -[B<-cipher>] +[B<-I>] [B<-engine id>] [B<-paramfile file>] [B<-algorithm alg>] @@ -39,21 +39,21 @@ standard output is used. =item B<-outform DER|PEM> -This specifies the output format DER or PEM. +This specifies the output format DER or PEM. The default format is PEM. =item B<-pass arg> -the output file password source. For more information about the format of B +The output file password source. For more information about the format of B see the B section in L. -=item B<-cipher> +=item B<-I> This option encrypts the private key with the supplied cipher. Any algorithm name accepted by EVP_get_cipherbyname() is acceptable such as B. =item B<-engine id> -specifying an engine (by its unique B string) will cause B +Specifying an engine (by its unique B string) will cause B to attempt to obtain a functional reference to the specified engine, thus initialising it if needed. The engine will then be set as the default for all available algorithms. If used this option should precede all other @@ -61,19 +61,32 @@ options. =item B<-algorithm alg> -public key algorithm to use such as RSA, DSA or DH. If used this option must +Public key algorithm to use such as RSA, DSA or DH. If used this option must precede any B<-pkeyopt> options. The options B<-paramfile> and B<-algorithm> -are mutually exclusive. +are mutually exclusive. Engines may add algorithms in addition to the standard +built-in ones. + +Valid built-in algorithm names for private key generation are RSA and EC. + +Valid built-in algorithm names for parameter generation (see the B<-genparam> +option) are DH, DSA and EC. + +Note that the algorithm name X9.42 DH may be used as a synonym for the DH +algorithm. These are identical and do not indicate the type of parameters that +will be generated. Use the B option to indicate whether PKCS#3 +or X9.42 DH parameters are required. See L +below for more details. =item B<-pkeyopt opt:value> -set the public key algorithm option B to B. The precise set of +Set the public key algorithm option B to B. The precise set of options supported depends on the public key algorithm used and its -implementation. See B below for more details. +implementation. See L and +L below for more details. =item B<-genparam> -generate a set of parameters instead of a private key. If used this option must +Generate a set of parameters instead of a private key. If used this option must precede any B<-algorithm>, B<-paramfile> or B<-pkeyopt> options. =item B<-paramfile filename> @@ -97,7 +110,7 @@ The options supported by each algorithm and indeed each implementation of an algorithm can vary. The options for the OpenSSL implementations are detailed below. -=head1 RSA KEY GENERATION OPTIONS +=head2 RSA Key Generation Options =over 4 @@ -112,91 +125,92 @@ hexadecimal value if preceded by B<0x>. Default value is 65537. =back -=head1 DSA PARAMETER GENERATION OPTIONS +=head2 EC Key Generation Options + +The EC key generation options can also be used for parameter generation. =over 4 -=item B +=item B + +The EC curve to use. OpenSSL supports NIST curve names such as "P-256". -The number of bits in the generated parameters. If not specified 1024 is used. +=item B + +The encoding to use for parameters. The "encoding" parameter must be either +"named_curve" or "explicit". The default value is "named_curve". =back -=head1 DH PARAMETER GENERATION OPTIONS +=head1 PARAMETER GENERATION OPTIONS + +The options supported by each algorithm and indeed each implementation of an +algorithm can vary. The options for the OpenSSL implementations are detailed +below. + +=head2 DSA Parameter Generation Options =over 4 -=item B +=item B -The number of bits in the prime parameter B

. +The number of bits in the generated prime. If not specified 1024 is used. -=item B +=item B -The value to use for the generator B. +The number of bits in the q parameter. Must be one of 160, 224 or 256. If not +specified 160 is used. -=item B +=item B -If this option is set then the appropriate RFC5114 parameters are used -instead of generating new parameters. The value B can take the -values 1, 2 or 3 corresponding to RFC5114 DH parameters consisting of -1024 bit group with 160 bit subgroup, 2048 bit group with 224 bit subgroup -and 2048 bit group with 256 bit subgroup as mentioned in RFC5114 sections -2.1, 2.2 and 2.3 respectively. +The digest to use during parameter generation. Must be one of B, B +or B. If set, then the number of bits in B will match the output size +of the specified digest and the B parameter will be +ignored. If not set, then a digest will be used that gives an output matching +the number of bits in B, i.e. B if q length is 160, B if it 224 +or B if it is 256. =back -=head1 EC PARAMETER GENERATION OPTIONS - -The EC parameter generation options below can also -be supplied as EC key generation options. This can (for example) generate a -key from a named curve without the need to use an explicit parameter file. +=head2 DH Parameter Generation Options =over 4 -=item B - -the EC curve to use. OpenSSL supports NIST curve names such as "P-256". +=item B -=item B +The number of bits in the prime parameter B

. The default is 1024. -the encoding to use for parameters. The "encoding" parameter must be either -"named_curve" or "explicit". +=item B -=back +The number of bits in the sub prime parameter B. The default is 256 if the +prime is at least 2048 bits long or 160 otherwise. Only relevant if used in +conjunction with the B option to generate X9.42 DH parameters. -=head1 GOST2001 KEY GENERATION AND PARAMETER OPTIONS - -Gost 2001 support is not enabled by default. To enable this algorithm, -one should load the ccgost engine in the OpenSSL configuration file. -See README.gost file in the engines/ccgost directory of the source -distribution for more details. +=item B -Use of a parameter file for the GOST R 34.10 algorithm is optional. -Parameters can be specified during key generation directly as well as -during generation of parameter file. +The value to use for the generator B. The default is 2. -=over 4 +=item B -=item B +The type of DH parameters to generate. Use 0 for PKCS#3 DH and 1 for X9.42 DH. +The default is 0. -Specifies GOST R 34.10-2001 parameter set according to RFC 4357. -Parameter set can be specified using abbreviated name, object short name or -numeric OID. Following parameter sets are supported: +=item B - paramset OID Usage - A 1.2.643.2.2.35.1 Signature - B 1.2.643.2.2.35.2 Signature - C 1.2.643.2.2.35.3 Signature - XA 1.2.643.2.2.36.0 Key exchange - XB 1.2.643.2.2.36.1 Key exchange - test 1.2.643.2.2.35.0 Test purposes +If this option is set, then the appropriate RFC5114 parameters are used +instead of generating new parameters. The value B can take the +values 1, 2 or 3 corresponding to RFC5114 DH parameters consisting of +1024 bit group with 160 bit subgroup, 2048 bit group with 224 bit subgroup +and 2048 bit group with 256 bit subgroup as mentioned in RFC5114 sections +2.1, 2.2 and 2.3 respectively. If present this overrides all other DH parameter +options. =back -=head1 X25519 KEY GENERATION OPTIONS - -The X25519 algorithm does not currently support any key generation options. +=head2 EC Parameter Generation Options +The EC parameter generation options are the same as for key generation. See +L above. =head1 NOTES @@ -219,19 +233,25 @@ Generate a 2048 bit RSA key using 3 as the public exponent: openssl genpkey -algorithm RSA -out key.pem -pkeyopt rsa_keygen_bits:2048 \ -pkeyopt rsa_keygen_pubexp:3 -Generate 1024 bit DSA parameters: +Generate 2048 bit DSA parameters: openssl genpkey -genparam -algorithm DSA -out dsap.pem \ - -pkeyopt dsa_paramgen_bits:1024 + -pkeyopt dsa_paramgen_bits:2048 Generate DSA key from parameters: openssl genpkey -paramfile dsap.pem -out dsakey.pem -Generate 1024 bit DH parameters: +Generate 2048 bit DH parameters: openssl genpkey -genparam -algorithm DH -out dhp.pem \ - -pkeyopt dh_paramgen_prime_len:1024 + -pkeyopt dh_paramgen_prime_len:2048 + +Generate 2048 bit X9.42 DH parameters: + + openssl genpkey -genparam -algorithm DH -out dhpx.pem \ + -pkeyopt dh_paramgen_prime_len:2048 \ + -pkeyopt dh_paramgen_type:1 Output RFC5114 2048 bit DH parameters with 224 bit subgroup: @@ -264,11 +284,12 @@ Generate an X25519 private key: =head1 HISTORY The ability to use NIST curve names, and to generate an EC key directly, -were added in OpenSSL 1.0.2. +were added in OpenSSL 1.0.2. The ability to generate X25519 keys was added in +OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2006-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-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 diff --git a/deps/openssl/openssl/doc/apps/rehash.pod b/deps/openssl/openssl/doc/apps/rehash.pod index 79268d47926c..22f3b7a40a6d 100644 --- a/deps/openssl/openssl/doc/apps/rehash.pod +++ b/deps/openssl/openssl/doc/apps/rehash.pod @@ -99,6 +99,12 @@ Note that current versions will not use the old style. Do not remove existing links. This is needed when keeping new and old-style links in the same directory. +=item B<-compat> + +Generate links for both old-style (MD5) and new-style (SHA1) hashing. +This allows releases before 1.0.0 to use these links along-side newer +releases. + =item B<-v> Print messages about old links removed and new links created. @@ -130,7 +136,7 @@ L. =head1 COPYRIGHT -Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-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 diff --git a/deps/openssl/openssl/doc/apps/s_client.pod b/deps/openssl/openssl/doc/apps/s_client.pod index 01a6c5f7fc7a..9c17075337b4 100644 --- a/deps/openssl/openssl/doc/apps/s_client.pod +++ b/deps/openssl/openssl/doc/apps/s_client.pod @@ -281,8 +281,9 @@ be used as a test that session caching is working. =item B<-showcerts> -display the whole server certificate chain: normally only the server -certificate itself is displayed. +Displays the server certificate list as sent by the server: it only consists of +certificates the server has sent (in the order the server has sent them). It is +B a verified chain. =item B<-prexit> @@ -579,7 +580,8 @@ a client certificate. Therefor merely including a client certificate on the command line is no guarantee that the certificate works. If there are problems verifying a server certificate then the -B<-showcerts> option can be used to show the whole chain. +B<-showcerts> option can be used to show all the certificates sent by the +server. The B utility is a test tool and is designed to continue the handshake after any certificate verification errors. As a result it will @@ -609,7 +611,7 @@ The -no_alt_chains options was first added to OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/ASN1_INTEGER_get_int64.pod b/deps/openssl/openssl/doc/crypto/ASN1_INTEGER_get_int64.pod index f61268d6ac39..d0a6a3c810a1 100644 --- a/deps/openssl/openssl/doc/crypto/ASN1_INTEGER_get_int64.pod +++ b/deps/openssl/openssl/doc/crypto/ASN1_INTEGER_get_int64.pod @@ -11,10 +11,10 @@ ASN1_INTEGER_get_int64, ASN1_INTEGER_get, ASN1_INTEGER_set_int64, ASN1_INTEGER_s #include int ASN1_INTEGER_get_int64(int64_t *pr, const ASN1_INTEGER *a); - int ASN1_INTEGER_get(const ASN1_INTEGER *a, long v); + long ASN1_INTEGER_get(const ASN1_INTEGER *a); int ASN1_INTEGER_set_int64(ASN1_INTEGER *a, int64_t r); - long ASN1_INTEGER_set(const ASN1_INTEGER *a); + int ASN1_INTEGER_set(const ASN1_INTEGER *a, long v); int ASN1_INTEGER_get_uint64(uint64_t *pr, const ASN1_INTEGER *a); int ASN1_INTEGER_set_uint64(ASN1_INTEGER *a, uint64_t r); @@ -123,7 +123,7 @@ were added to OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-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 diff --git a/deps/openssl/openssl/doc/crypto/BIO_meth_new.pod b/deps/openssl/openssl/doc/crypto/BIO_meth_new.pod index f682c37d171e..89179a46e76a 100644 --- a/deps/openssl/openssl/doc/crypto/BIO_meth_new.pod +++ b/deps/openssl/openssl/doc/crypto/BIO_meth_new.pod @@ -17,26 +17,26 @@ BIO_meth_set_callback_ctrl - Routines to build up BIO methods int BIO_get_new_index(void); BIO_METHOD *BIO_meth_new(int type, const char *name); void BIO_meth_free(BIO_METHOD *biom); - int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int); + int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int); int BIO_meth_set_write(BIO_METHOD *biom, int (*write) (BIO *, const char *, int)); - int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int); + int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int); int BIO_meth_set_read(BIO_METHOD *biom, int (*read) (BIO *, char *, int)); - int (*BIO_meth_get_puts(BIO_METHOD *biom)) (BIO *, const char *); + int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *); int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts) (BIO *, const char *)); - int (*BIO_meth_get_gets(BIO_METHOD *biom)) (BIO *, char *, int); + int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int); int BIO_meth_set_gets(BIO_METHOD *biom, int (*gets) (BIO *, char *, int)); - long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *); + long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *); int BIO_meth_set_ctrl(BIO_METHOD *biom, long (*ctrl) (BIO *, int, long, void *)); - int (*BIO_meth_get_create(BIO_METHOD *bion)) (BIO *); + int (*BIO_meth_get_create(const BIO_METHOD *bion)) (BIO *); int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)); - int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *); + int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *); int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)); - long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) + long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *); int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, long (*callback_ctrl) (BIO *, int, @@ -121,7 +121,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/BN_add.pod b/deps/openssl/openssl/doc/crypto/BN_add.pod index db3b0d45b479..b2c5dd2cc54d 100644 --- a/deps/openssl/openssl/doc/crypto/BN_add.pod +++ b/deps/openssl/openssl/doc/crypto/BN_add.pod @@ -92,7 +92,9 @@ BN_exp() raises I to the I

-th power and places the result in I BN_mul(). BN_mod_exp() computes I to the I

-th power modulo I (C). This function uses less time and space than BN_exp(). +m>). This function uses less time and space than BN_exp(). Do not call this +function when B is even and any of the parameters have the +B flag set. BN_gcd() computes the greatest common divisor of I and I and places the result in I. I may be the same B as I or @@ -117,7 +119,7 @@ L, L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/BN_bn2bin.pod b/deps/openssl/openssl/doc/crypto/BN_bn2bin.pod index ac46948477dc..c9ca33fd136d 100644 --- a/deps/openssl/openssl/doc/crypto/BN_bn2bin.pod +++ b/deps/openssl/openssl/doc/crypto/BN_bn2bin.pod @@ -55,8 +55,8 @@ freed later using OPENSSL_free(). BN_hex2bn() takes as many characters as possible from the string B, including the leading character '-' which means negative, to form a valid hexadecimal number representation and converts them to a B and -stores it in **B. If *B is NULL, a new B is created. If -B is NULL, it only computes the length of valid representation. +stores it in **B. If *B is NULL, a new B is created. If +B is NULL, it only computes the length of valid representation. A "negative zero" is converted to zero. BN_dec2bn() is the same using the decimal system. @@ -106,7 +106,7 @@ L =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/BN_generate_prime.pod b/deps/openssl/openssl/doc/crypto/BN_generate_prime.pod index c97536b5c4e3..4cd667e2e36e 100644 --- a/deps/openssl/openssl/doc/crypto/BN_generate_prime.pod +++ b/deps/openssl/openssl/doc/crypto/BN_generate_prime.pod @@ -100,7 +100,17 @@ If B, this test is skipped. Both BN_is_prime_ex() and BN_is_prime_fasttest_ex() perform a Miller-Rabin probabilistic primality test with B iterations. If B, a number of iterations is used that -yields a false positive rate of at most 2^-80 for random input. +yields a false positive rate of at most 2^-64 for random input. +The error rate depends on the size of the prime and goes down for bigger primes. +The rate is 2^-80 starting at 308 bits, 2^-112 at 852 bits, 2^-128 at 1080 bits, +2^-192 at 3747 bits and 2^-256 at 6394 bits. + +When the source of the prime is not random or not trusted, the number +of checks needs to be much higher to reach the same level of assurance: +It should equal half of the targeted security level in bits (rounded up to the +next integer if necessary). +For instance, to reach the 128 bit security level, B should be set to +64. If B is not B, B is called after the j-th iteration (j = 0, 1, ...). B is a @@ -184,7 +194,7 @@ and BN_GENCB_get_arg() were added in OpenSSL 1.1.0 =head1 COPYRIGHT -Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/CMS_encrypt.pod b/deps/openssl/openssl/doc/crypto/CMS_encrypt.pod index 0ed42628c3cf..cbd5a21353e2 100644 --- a/deps/openssl/openssl/doc/crypto/CMS_encrypt.pod +++ b/deps/openssl/openssl/doc/crypto/CMS_encrypt.pod @@ -18,9 +18,8 @@ B is the symmetric cipher to use. B is an optional set of flags. =head1 NOTES -Only certificates carrying RSA keys are supported so the recipient certificates -supplied to this function must all contain RSA public keys, though they do not -have to be signed using the RSA algorithm. +Only certificates carrying RSA, Diffie-Hellman or EC keys are supported by this +function. EVP_des_ede3_cbc() (triple DES) is the algorithm of choice for S/MIME use because most clients will support it. @@ -94,7 +93,7 @@ The B flag was first supported in OpenSSL 1.0.0. =head1 COPYRIGHT -Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2008-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 diff --git a/deps/openssl/openssl/doc/crypto/CMS_get0_SignerInfos.pod b/deps/openssl/openssl/doc/crypto/CMS_get0_SignerInfos.pod index e5532c96f440..cea088857a6f 100644 --- a/deps/openssl/openssl/doc/crypto/CMS_get0_SignerInfos.pod +++ b/deps/openssl/openssl/doc/crypto/CMS_get0_SignerInfos.pod @@ -54,7 +54,7 @@ CMS_SignerInfo_set1_signer_cert(). Once all signer certificates have been set CMS_verify() can be used. -Although CMS_get0_SignerInfos() can return NULL is an error occur B if +Although CMS_get0_SignerInfos() can return NULL if an error occurs B if there are no signers this is not a problem in practice because the only error which can occur is if the B structure is not of type signedData due to application error. @@ -79,7 +79,7 @@ L, L =head1 COPYRIGHT -Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2008-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 diff --git a/deps/openssl/openssl/doc/crypto/CMS_get1_ReceiptRequest.pod b/deps/openssl/openssl/doc/crypto/CMS_get1_ReceiptRequest.pod index 79f5f4232dd1..cb961be79758 100644 --- a/deps/openssl/openssl/doc/crypto/CMS_get1_ReceiptRequest.pod +++ b/deps/openssl/openssl/doc/crypto/CMS_get1_ReceiptRequest.pod @@ -48,7 +48,7 @@ CMS_verify(). CMS_ReceiptRequest_create0() returns a signed receipt request structure or NULL if an error occurred. -CMS_add1_ReceiptRequest() returns 1 for success or 0 is an error occurred. +CMS_add1_ReceiptRequest() returns 1 for success or 0 if an error occurred. CMS_get1_ReceiptRequest() returns 1 is a signed receipt request is found and decoded. It returns 0 if a signed receipt request is not present and -1 if @@ -62,7 +62,7 @@ L =head1 COPYRIGHT -Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2008-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 diff --git a/deps/openssl/openssl/doc/crypto/DH_meth_new.pod b/deps/openssl/openssl/doc/crypto/DH_meth_new.pod index d768da8c6eb7..ef0a80b19510 100644 --- a/deps/openssl/openssl/doc/crypto/DH_meth_new.pod +++ b/deps/openssl/openssl/doc/crypto/DH_meth_new.pod @@ -19,7 +19,7 @@ DH_meth_set_generate_params - Routines to build up DH methods DH_METHOD *DH_meth_dup(const DH_METHOD *dhm); const char *DH_meth_get0_name(const DH_METHOD *dhm); int DH_meth_set1_name(DH_METHOD *dhm, const char *name); - int DH_meth_get_flags(DH_METHOD *dhm); + int DH_meth_get_flags(const DH_METHOD *dhm); int DH_meth_set_flags(DH_METHOD *dhm, int flags); void *DH_meth_get0_app_data(const DH_METHOD *dhm); int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data); @@ -146,7 +146,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/DSA_meth_new.pod b/deps/openssl/openssl/doc/crypto/DSA_meth_new.pod index 948ab29b58c8..8ebf7ab6bcc1 100644 --- a/deps/openssl/openssl/doc/crypto/DSA_meth_new.pod +++ b/deps/openssl/openssl/doc/crypto/DSA_meth_new.pod @@ -21,7 +21,7 @@ DSA_meth_set_keygen - Routines to build up DSA methods DSA_METHOD *DSA_meth_dup(const DSA_METHOD *meth); const char *DSA_meth_get0_name(const DSA_METHOD *dsam); int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name); - int DSA_meth_get_flags(DSA_METHOD *dsam); + int DSA_meth_get_flags(const DSA_METHOD *dsam); int DSA_meth_set_flags(DSA_METHOD *dsam, int flags); void *DSA_meth_get0_app_data(const DSA_METHOD *dsam); int DSA_meth_set0_app_data(DSA_METHOD *dsam, void *app_data); @@ -183,7 +183,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/DSA_sign.pod b/deps/openssl/openssl/doc/crypto/DSA_sign.pod index ba0f6b863ecf..b91f89f0733c 100644 --- a/deps/openssl/openssl/doc/crypto/DSA_sign.pod +++ b/deps/openssl/openssl/doc/crypto/DSA_sign.pod @@ -24,13 +24,12 @@ digest B using the private key B and places its ASN.1 DER encoding at B. The length of the signature is places in *B. B must point to DSA_size(B) bytes of memory. -DSA_sign_setup() may be used to precompute part of the signing -operation in case signature generation is time-critical. It expects -B to contain DSA parameters. It places the precomputed values -in newly allocated Bs at *B and *B, after freeing -the old ones unless *B and *B are NULL. These values may -be passed to DSA_sign() in Bkinv> and Br>. -B is a pre-allocated B or NULL. +DSA_sign_setup() is defined only for backward binary compatibility and +should not be used. +Since OpenSSL 1.1.0 the DSA type is opaque and the output of +DSA_sign_setup() cannot be used anyway: calling this function will only +cause overhead, and does not affect the actual signature +(pre-)computation. DSA_verify() verifies that the signature B of size B matches a given message digest B of size B. @@ -60,7 +59,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/ECDSA_SIG_new.pod b/deps/openssl/openssl/doc/crypto/ECDSA_SIG_new.pod index 9e1f662c621f..f544ccbb32fe 100644 --- a/deps/openssl/openssl/doc/crypto/ECDSA_SIG_new.pod +++ b/deps/openssl/openssl/doc/crypto/ECDSA_SIG_new.pod @@ -114,6 +114,8 @@ returned as a newly allocated B structure (or NULL on error). =head1 RETURN VALUES +ECDSA_SIG_new() returns NULL if the allocation fails. + ECDSA_SIG_set0() returns 1 on success or 0 on failure. ECDSA_size() returns the maximum length signature or 0 on error. @@ -197,7 +199,7 @@ L =head1 COPYRIGHT -Copyright 2004-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2004-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 diff --git a/deps/openssl/openssl/doc/crypto/EVP_DigestInit.pod b/deps/openssl/openssl/doc/crypto/EVP_DigestInit.pod index bb7ef7a28fd6..1dc76cbdf86b 100644 --- a/deps/openssl/openssl/doc/crypto/EVP_DigestInit.pod +++ b/deps/openssl/openssl/doc/crypto/EVP_DigestInit.pod @@ -3,11 +3,12 @@ =head1 NAME EVP_MD_CTX_new, EVP_MD_CTX_reset, EVP_MD_CTX_free, EVP_MD_CTX_copy_ex, +EVP_MD_CTX_set_flags, EVP_MD_CTX_clear_flags, EVP_MD_CTX_test_flags, EVP_DigestInit_ex, EVP_DigestUpdate, EVP_DigestFinal_ex, EVP_DigestInit, EVP_DigestFinal, EVP_MD_CTX_copy, EVP_MD_type, EVP_MD_pkey_type, EVP_MD_size, EVP_MD_block_size, EVP_MD_CTX_md, EVP_MD_CTX_size, -EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_md_null, EVP_md2, EVP_md5, EVP_sha1, -EVP_sha224, EVP_sha256, EVP_sha384, EVP_sha512, EVP_mdc2, +EVP_MD_CTX_block_size, EVP_MD_CTX_type, EVP_MD_CTX_md_data, EVP_md_null, EVP_md2, +EVP_md5, EVP_sha1, EVP_sha224, EVP_sha256, EVP_sha384, EVP_sha512, EVP_mdc2, EVP_ripemd160, EVP_blake2b512, EVP_blake2s256, EVP_get_digestbyname, EVP_get_digestbynid, EVP_get_digestbyobj - EVP digest routines @@ -18,6 +19,9 @@ EVP_get_digestbynid, EVP_get_digestbyobj - EVP digest routines EVP_MD_CTX *EVP_MD_CTX_new(void); int EVP_MD_CTX_reset(EVP_MD_CTX *ctx); void EVP_MD_CTX_free(EVP_MD_CTX *ctx); + void EVP_MD_CTX_set_flags(EVP_MD_CTX *ctx, int flags); + void EVP_MD_CTX_clear_flags(EVP_MD_CTX *ctx, int flags); + int EVP_MD_CTX_test_flags(const EVP_MD_CTX *ctx, int flags); int EVP_DigestInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl); int EVP_DigestUpdate(EVP_MD_CTX *ctx, const void *d, size_t cnt); @@ -41,6 +45,7 @@ EVP_get_digestbynid, EVP_get_digestbyobj - EVP digest routines int EVP_MD_CTX_size(const EVP_MD *ctx); int EVP_MD_CTX_block_size(const EVP_MD *ctx); int EVP_MD_CTX_type(const EVP_MD *ctx); + void *EVP_MD_CTX_md_data(const EVP_MD_CTX *ctx); const EVP_MD *EVP_md_null(void); const EVP_MD *EVP_md2(void); @@ -73,6 +78,9 @@ to reuse an already existing context. EVP_MD_CTX_free() cleans up digest context B and frees up the space allocated to it. +EVP_MD_CTX_set_flags(), EVP_MD_CTX_clear_flags() and EVP_MD_CTX_test_flags() +sets, clears and tests B flags. See L below for more information. + EVP_DigestInit_ex() sets up digest context B to use a digest B from ENGINE B. B must be initialized before calling this function. B will typically be supplied by a function such as EVP_sha1(). @@ -117,6 +125,11 @@ representing the given message digest when passed an B structure. For example EVP_MD_type(EVP_sha1()) returns B. This function is normally used when setting ASN1 OIDs. +EVP_MD_CTX_md_data() return the digest method private data for the passed +B. +The space is allocated by OpenSSL and has the size originally set with +EVP_MD_meth_set_app_datasize(). + EVP_MD_CTX_md() returns the B structure corresponding to the passed B. @@ -139,6 +152,38 @@ EVP_get_digestbyname(), EVP_get_digestbynid() and EVP_get_digestbyobj() return an B structure when passed a digest name, a digest NID or an ASN1_OBJECT structure respectively. +=head1 FLAGS + +EVP_MD_CTX_set_flags(), EVP_MD_CTX_clear_flags() and EVP_MD_CTX_test_flags() +can be used the manipulate and test these B flags: + +=over 4 + +=item EVP_MD_CTX_FLAG_ONESHOT + +This flag instructs the digest to optimize for one update only, if possible. + +=for comment EVP_MD_CTX_FLAG_CLEANED is internal, don't mention it + +=for comment EVP_MD_CTX_FLAG_REUSE is internal, don't mention it + +=for comment We currently avoid documenting flags that are only bit holder: +EVP_MD_CTX_FLAG_NON_FIPS_ALLOW, EVP_MD_CTX_FLAGS_PAD_* + +=item EVP_MD_CTX_FLAG_NO_INIT + +This flag instructs EVP_DigestInit() and similar not to initialise the +implementation specific data. + +=item EVP_MD_CTX_FLAG_FINALISE + +Some functions such as EVP_DigestSign only finalise copies of internal +contexts so additional data can be included after the finalisation call. +This is inefficient if this functionality is not required, and can be +disabled with this flag. + +=back + =head1 RETURN VALUES EVP_DigestInit_ex(), EVP_DigestUpdate() and EVP_DigestFinal_ex() return 1 for @@ -249,7 +294,7 @@ was removed in OpenSSL 1.1.0 =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/crypto/EVP_DigestSignInit.pod b/deps/openssl/openssl/doc/crypto/EVP_DigestSignInit.pod index 7ec06b7a272e..5fadc82e6aac 100644 --- a/deps/openssl/openssl/doc/crypto/EVP_DigestSignInit.pod +++ b/deps/openssl/openssl/doc/crypto/EVP_DigestSignInit.pod @@ -21,7 +21,48 @@ EVP_DigestSignInit() sets up signing context B to use digest B from ENGINE B and private key B. B must be created with EVP_MD_CTX_new() before calling this function. If B is not NULL the EVP_PKEY_CTX of the signing operation will be written to B<*pctx>: this can -be used to set alternative signing options. +be used to set alternative signing options. The digest B may be NULL if +the signing algorithm supports it. + +Only EVP_PKEY types that support signing can be used with these functions. This +includes MAC algorithms where the MAC generation is considered as a form of +"signing." Built-in EVP_PKEY types supported by these functions are CMAC, DSA, +ECDSA, HMAC and RSA. + +Not all digests can be used for all key types. The following combinations apply. + +=over 4 + +=item DSA + +Supports SHA1, SHA224, SHA256, SHA384 and SHA512 + +=item ECDSA + +Supports SHA1, SHA224, SHA256, SHA384 and SHA512 + +=item RSA with no padding + +Supports no digests (the digest B must be NULL) + +=item RSA with X931 padding + +Supports SHA1, SHA256, SHA384 and SHA512 + +=item All other RSA padding types + +Support SHA1, SHA224, SHA256, SHA384, SHA512, MD5, MD5_SHA1, MD2, MD4, MDC2, +RIPEMD160 + +=item HMAC + +Supports any digest + +=item CMAC + +Will ignore any digest provided. + +=back EVP_DigestSignUpdate() hashes B bytes of data at B into the signature context B. This function can be called several times on the @@ -86,7 +127,7 @@ were first added to OpenSSL 1.0.0. =head1 COPYRIGHT -Copyright 2006-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2006-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 diff --git a/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_hkdf_md.pod b/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_hkdf_md.pod index 61e0eec52882..459e7a02ffcc 100644 --- a/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_hkdf_md.pod +++ b/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_hkdf_md.pod @@ -59,7 +59,7 @@ All these functions are implemented as macros. A context for HKDF can be obtained by calling: - EVP_PKEY_CTX *pctx = EVP_PKEY_new_id(EVP_PKEY_HKDF, NULL); + EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_HKDF, NULL); The digest, key, salt and info values must be set before a key is derived or an error occurs. @@ -118,7 +118,7 @@ L =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_tls1_prf_md.pod b/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_tls1_prf_md.pod index f1f0ae4fbe4d..fe35a5ece8cf 100644 --- a/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_tls1_prf_md.pod +++ b/deps/openssl/openssl/doc/crypto/EVP_PKEY_CTX_set_tls1_prf_md.pod @@ -50,7 +50,7 @@ All these functions are implemented as macros. A context for the TLS PRF can be obtained by calling: - EVP_PKEY_CTX *pctx = EVP_PKEY_new_id(EVP_PKEY_TLS1_PRF, NULL); + EVP_PKEY_CTX *pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_TLS1_PRF, NULL); The digest, secret value and seed must be set before a key is derived or an error occurs. @@ -98,7 +98,7 @@ L =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/EVP_PKEY_asn1_get_count.pod b/deps/openssl/openssl/doc/crypto/EVP_PKEY_asn1_get_count.pod index a190f5e9ab0c..9ad2daed4f5b 100644 --- a/deps/openssl/openssl/doc/crypto/EVP_PKEY_asn1_get_count.pod +++ b/deps/openssl/openssl/doc/crypto/EVP_PKEY_asn1_get_count.pod @@ -48,7 +48,7 @@ engine that implements it. EVP_PKEY_asn1_get0_info() returns the public key ID, base public key ID (both NIDs), any flags, the method description and PEM type string -associated with the public key ASN.1 method B<*ameth>. +associated with the public key ASN.1 method B<*ameth>. EVP_PKEY_asn1_count(), EVP_PKEY_asn1_get0(), EVP_PKEY_asn1_find() and EVP_PKEY_asn1_find_str() are not thread safe, but as long as all diff --git a/deps/openssl/openssl/doc/crypto/OBJ_nid2obj.pod b/deps/openssl/openssl/doc/crypto/OBJ_nid2obj.pod index 3ada6679cf92..c84adb2e4634 100644 --- a/deps/openssl/openssl/doc/crypto/OBJ_nid2obj.pod +++ b/deps/openssl/openssl/doc/crypto/OBJ_nid2obj.pod @@ -54,7 +54,7 @@ constants. OBJ_nid2obj(), OBJ_nid2ln() and OBJ_nid2sn() convert the NID B to an ASN1_OBJECT structure, its long name and its short name respectively, -or B is an error occurred. +or B if an error occurred. OBJ_obj2nid(), OBJ_ln2nid(), OBJ_sn2nid() return the corresponding NID for the object B, the long name or the short name respectively @@ -188,7 +188,7 @@ OBJ_cleanup() was deprecated in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2002-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2002-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 diff --git a/deps/openssl/openssl/doc/crypto/OCSP_resp_find_status.pod b/deps/openssl/openssl/doc/crypto/OCSP_resp_find_status.pod index 5123f0ad6da4..e014df500b6f 100644 --- a/deps/openssl/openssl/doc/crypto/OCSP_resp_find_status.pod +++ b/deps/openssl/openssl/doc/crypto/OCSP_resp_find_status.pod @@ -7,7 +7,8 @@ OCSP_resp_get0_signer, OCSP_resp_get0_id, OCSP_resp_get0_produced_at, OCSP_resp_find_status, OCSP_resp_count, OCSP_resp_get0, OCSP_resp_find, -OCSP_single_get0_status, OCSP_check_validity +OCSP_single_get0_status, OCSP_check_validity, +OCSP_basic_verify - OCSP response utility functions =head1 SYNOPSIS @@ -44,6 +45,9 @@ OCSP_single_get0_status, OCSP_check_validity ASN1_GENERALIZEDTIME *nextupd, long sec, long maxsec); + int OCSP_basic_verify(OCSP_BASICRESP *bs, STACK_OF(X509) *certs, + X509_STORE *st, unsigned long flags); + =head1 DESCRIPTION OCSP_resp_find_status() searches B for an OCSP response for B. If it is @@ -93,6 +97,27 @@ OCSP_single_get0_status(). If B is non-zero it indicates how many seconds leeway should be allowed in the check. If B is positive it indicates the maximum age of B in seconds. +OCSP_basic_verify() checks that the basic response message B is correctly +signed and that the signer certificate can be validated. It takes B as +the trusted store and B as a set of untrusted intermediate certificates. +The function first tries to find the signer certificate of the response +in . It also searches the certificates the responder may have included +in B unless the B contain B. +It fails if the signer certificate cannot be found. +Next, the function checks the signature of B and fails on error +unless the B contain B. Then the function already returns +success if the B contain B or if the signer certificate +was found in B and the B contain B. +Otherwise the function continues by validating the signer certificate. +To this end, all certificates in B and in B are considered as +untrusted certificates for the construction of the validation path for the +signer certificate unless the B flag is set. After successful path +validation the function returns success if the B flag is set. +Otherwise it verifies that the signer certificate meets the OCSP issuer +criteria including potential delegation. If this does not succeed and the +B do not contain B the function checks for explicit +trust for OCSP signing in the root CA certificate. + =head1 RETURN VALUES OCSP_resp_find_status() returns 1 if B is found in B and 0 otherwise. @@ -112,6 +137,9 @@ occurred. OCSP_resp_get0_signer() returns 1 if the signing certificate was located, or 0 on error. +OCSP_basic_verify() returns 1 on success, 0 on error, or -1 on fatal error such +as malloc failure. + =head1 NOTES Applications will typically call OCSP_resp_find_status() using the certificate @@ -142,7 +170,7 @@ L =head1 COPYRIGHT -Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-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 diff --git a/deps/openssl/openssl/doc/crypto/OPENSSL_VERSION_NUMBER.pod b/deps/openssl/openssl/doc/crypto/OPENSSL_VERSION_NUMBER.pod index f50faec772d5..f5429d217e52 100644 --- a/deps/openssl/openssl/doc/crypto/OPENSSL_VERSION_NUMBER.pod +++ b/deps/openssl/openssl/doc/crypto/OPENSSL_VERSION_NUMBER.pod @@ -47,11 +47,6 @@ number was therefore 0x0090581f. OpenSSL_version_num() returns the version number. -The macro OPENSSL_VERSION_AT_LEAST(major,minor) can be used at compile -time test if the current version is at least as new as the version provided. -The arguments major, minor and fix correspond to the version information -as given above. - OpenSSL_version() returns different strings depending on B: =over 4 diff --git a/deps/openssl/openssl/doc/crypto/OPENSSL_init_crypto.pod b/deps/openssl/openssl/doc/crypto/OPENSSL_init_crypto.pod index f0b3c8aa8da5..f9664ee35298 100644 --- a/deps/openssl/openssl/doc/crypto/OPENSSL_init_crypto.pod +++ b/deps/openssl/openssl/doc/crypto/OPENSSL_init_crypto.pod @@ -190,10 +190,10 @@ resources should be freed at an earlier time, or under the circumstances described in the NOTES section below. The B flag will load a default configuration -file. To specify a different file, an B must -be created and used. The routines -OPENSSL_init_new() and OPENSSL_INIT_set_config_appname() can be used to -allocate the object and set the application name, and then the +file. For optional configuration file settings, an B +must be created and used. +The routines OPENSSL_init_new() and OPENSSL_INIT_set_config_appname() can +be used to allocate the object and set the application name, and then the object can be released with OPENSSL_INIT_free() when done. =head1 NOTES @@ -235,7 +235,7 @@ and OPENSSL_INIT_free() functions were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/OPENSSL_malloc.pod b/deps/openssl/openssl/doc/crypto/OPENSSL_malloc.pod index 2104f43108f1..ba5dc1069f39 100644 --- a/deps/openssl/openssl/doc/crypto/OPENSSL_malloc.pod +++ b/deps/openssl/openssl/doc/crypto/OPENSSL_malloc.pod @@ -68,8 +68,8 @@ CRYPTO_mem_leaks, CRYPTO_mem_leaks_fp - Memory allocation functions int CRYPTO_mem_debug_push(const char *info, const char *file, int line); int CRYPTO_mem_debug_pop(void); - void CRYPTO_mem_leaks(BIO *b); - void CRYPTO_mem_leaks_fp(FILE *fp); + int CRYPTO_mem_leaks(BIO *b); + int CRYPTO_mem_leaks_fp(FILE *fp); =head1 DESCRIPTION @@ -197,7 +197,7 @@ only, say, the malloc() implementation is outright dangerous.> =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/PEM_read_bio_PrivateKey.pod b/deps/openssl/openssl/doc/crypto/PEM_read_bio_PrivateKey.pod index 6b3006ef3523..b0ba62a3b367 100644 --- a/deps/openssl/openssl/doc/crypto/PEM_read_bio_PrivateKey.pod +++ b/deps/openssl/openssl/doc/crypto/PEM_read_bio_PrivateKey.pod @@ -294,7 +294,7 @@ for it twice) if B is 1. The B parameter has the same value as the B parameter passed to the PEM routine. It allows arbitrary data to be passed to the callback by the application (for example a window handle in a GUI application). The callback -B return the number of characters in the passphrase or 0 if +B return the number of characters in the passphrase or -1 if an error occurred. =head1 EXAMPLES @@ -348,17 +348,16 @@ Skeleton pass phrase callback: int pass_cb(char *buf, int size, int rwflag, void *u) { - int len; - char *tmp; /* We'd probably do something else if 'rwflag' is 1 */ printf("Enter pass phrase for \"%s\"\n", (char *)u); /* get pass phrase, length 'len' into 'tmp' */ - tmp = "hello"; - len = strlen(tmp); - if (len <= 0) - return 0; + char *tmp = "hello"; + if (tmp == NULL) /* An error occurred */ + return -1; + + size_t len = strlen(tmp); if (len > size) len = size; @@ -471,7 +470,7 @@ L, L =head1 COPYRIGHT -Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2001-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 diff --git a/deps/openssl/openssl/doc/crypto/RSA_meth_new.pod b/deps/openssl/openssl/doc/crypto/RSA_meth_new.pod index 9970aa6b73ef..9c89426a9a28 100644 --- a/deps/openssl/openssl/doc/crypto/RSA_meth_new.pod +++ b/deps/openssl/openssl/doc/crypto/RSA_meth_new.pod @@ -24,7 +24,7 @@ RSA_meth_set_verify, RSA_meth_get_keygen, RSA_meth_set_keygen RSA_METHOD *RSA_meth_dup(const RSA_METHOD *meth); const char *RSA_meth_get0_name(const RSA_METHOD *meth); int RSA_meth_set1_name(RSA_METHOD *meth, const char *name); - int RSA_meth_get_flags(RSA_METHOD *meth); + int RSA_meth_get_flags(const RSA_METHOD *meth); int RSA_meth_set_flags(RSA_METHOD *meth, int flags); void *RSA_meth_get0_app_data(const RSA_METHOD *meth); int RSA_meth_set0_app_data(RSA_METHOD *meth, void *app_data); @@ -225,7 +225,7 @@ The functions described here were added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/crypto/SMIME_read_PKCS7.pod b/deps/openssl/openssl/doc/crypto/SMIME_read_PKCS7.pod index 3eb8bbc9a0f8..c11090891ad3 100644 --- a/deps/openssl/openssl/doc/crypto/SMIME_read_PKCS7.pod +++ b/deps/openssl/openssl/doc/crypto/SMIME_read_PKCS7.pod @@ -57,7 +57,7 @@ streaming single pass option should be available. =head1 RETURN VALUES SMIME_read_PKCS7() returns a valid B structure or B -is an error occurred. The error can be obtained from ERR_get_error(3). +if an error occurred. The error can be obtained from ERR_get_error(3). =head1 SEE ALSO @@ -68,7 +68,7 @@ L =head1 COPYRIGHT -Copyright 2002-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2002-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 diff --git a/deps/openssl/openssl/doc/crypto/UI_STRING.pod b/deps/openssl/openssl/doc/crypto/UI_STRING.pod index 8a0d9f2d250c..340d9b2ae2c5 100644 --- a/deps/openssl/openssl/doc/crypto/UI_STRING.pod +++ b/deps/openssl/openssl/doc/crypto/UI_STRING.pod @@ -132,3 +132,4 @@ in the file LICENSE in the source distribution or at L. =cut + diff --git a/deps/openssl/openssl/doc/crypto/X509_LOOKUP_hash_dir.pod b/deps/openssl/openssl/doc/crypto/X509_LOOKUP_hash_dir.pod index 5f8dfa93b0f1..4f2768d4f4a5 100644 --- a/deps/openssl/openssl/doc/crypto/X509_LOOKUP_hash_dir.pod +++ b/deps/openssl/openssl/doc/crypto/X509_LOOKUP_hash_dir.pod @@ -117,10 +117,11 @@ L, L, L, L, +L, =head1 COPYRIGHT -Copyright 2015-2017 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2015-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 diff --git a/deps/openssl/openssl/doc/crypto/X509_LOOKUP_meth_new.pod b/deps/openssl/openssl/doc/crypto/X509_LOOKUP_meth_new.pod new file mode 100644 index 000000000000..fb165fd6ad9d --- /dev/null +++ b/deps/openssl/openssl/doc/crypto/X509_LOOKUP_meth_new.pod @@ -0,0 +1,189 @@ +=pod + +=head1 NAME + +X509_LOOKUP_meth_new, X509_LOOKUP_meth_free, X509_LOOKUP_meth_set_new_item, +X509_LOOKUP_meth_get_new_item, X509_LOOKUP_meth_set_free, +X509_LOOKUP_meth_get_free, X509_LOOKUP_meth_set_init, +X509_LOOKUP_meth_get_init, X509_LOOKUP_meth_set_shutdown, +X509_LOOKUP_meth_get_shutdown, +X509_LOOKUP_ctrl_fn, X509_LOOKUP_meth_set_ctrl, X509_LOOKUP_meth_get_ctrl, +X509_LOOKUP_get_by_subject_fn, X509_LOOKUP_meth_set_get_by_subject, +X509_LOOKUP_meth_get_get_by_subject, +X509_LOOKUP_get_by_issuer_serial_fn, X509_LOOKUP_meth_set_get_by_issuer_serial, +X509_LOOKUP_meth_get_get_by_issuer_serial, +X509_LOOKUP_get_by_fingerprint_fn, X509_LOOKUP_meth_set_get_by_fingerprint, +X509_LOOKUP_meth_get_get_by_fingerprint, +X509_LOOKUP_get_by_alias_fn, X509_LOOKUP_meth_set_get_by_alias, +X509_LOOKUP_meth_get_get_by_alias, +X509_LOOKUP_set_method_data, X509_LOOKUP_get_method_data, +X509_LOOKUP_get_store, X509_OBJECT_set1_X509, X509_OBJECT_set1_X509_CRL +- Routines to build up X509_LOOKUP methods + +=head1 SYNOPSIS + + #include + + X509_LOOKUP_METHOD *X509_LOOKUP_meth_new(const char *name); + void X509_LOOKUP_meth_free(X509_LOOKUP_METHOD *method); + + int X509_LOOKUP_meth_set_new_item(X509_LOOKUP_METHOD *method, + int (*new_item) (X509_LOOKUP *ctx)); + int (*X509_LOOKUP_meth_get_new_item(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + + int X509_LOOKUP_meth_set_free(X509_LOOKUP_METHOD *method, + void (*free) (X509_LOOKUP *ctx)); + void (*X509_LOOKUP_meth_get_free(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + + int X509_LOOKUP_meth_set_init(X509_LOOKUP_METHOD *method, + int (*init) (X509_LOOKUP *ctx)); + int (*X509_LOOKUP_meth_get_init(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + + int X509_LOOKUP_meth_set_shutdown(X509_LOOKUP_METHOD *method, + int (*shutdown) (X509_LOOKUP *ctx)); + int (*X509_LOOKUP_meth_get_shutdown(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + + typedef int (*X509_LOOKUP_ctrl_fn)(X509_LOOKUP *ctx, int cmd, const char *argc, + long argl, char **ret); + int X509_LOOKUP_meth_set_ctrl(X509_LOOKUP_METHOD *method, + X509_LOOKUP_ctrl_fn ctrl_fn); + X509_LOOKUP_ctrl_fn X509_LOOKUP_meth_get_ctrl(const X509_LOOKUP_METHOD *method); + + typedef int (*X509_LOOKUP_get_by_subject_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + X509_NAME *name, + X509_OBJECT *ret); + int X509_LOOKUP_meth_set_get_by_subject(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_subject_fn fn); + X509_LOOKUP_get_by_subject_fn X509_LOOKUP_meth_get_get_by_subject( + const X509_LOOKUP_METHOD *method); + + typedef int (*X509_LOOKUP_get_by_issuer_serial_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + X509_NAME *name, + ASN1_INTEGER *serial, + X509_OBJECT *ret); + int X509_LOOKUP_meth_set_get_by_issuer_serial( + X509_LOOKUP_METHOD *method, X509_LOOKUP_get_by_issuer_serial_fn fn); + X509_LOOKUP_get_by_issuer_serial_fn X509_LOOKUP_meth_get_get_by_issuer_serial( + const X509_LOOKUP_METHOD *method); + + typedef int (*X509_LOOKUP_get_by_fingerprint_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + const unsigned char* bytes, + int len, + X509_OBJECT *ret); + int X509_LOOKUP_meth_set_get_by_fingerprint(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_fingerprint_fn fn); + X509_LOOKUP_get_by_fingerprint_fn X509_LOOKUP_meth_get_get_by_fingerprint( + const X509_LOOKUP_METHOD *method); + + typedef int (*X509_LOOKUP_get_by_alias_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + const char *str, + int len, + X509_OBJECT *ret); + int X509_LOOKUP_meth_set_get_by_alias(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_alias_fn fn); + X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias( + const X509_LOOKUP_METHOD *method); + + int X509_LOOKUP_set_method_data(X509_LOOKUP *ctx, void *data); + void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx); + + X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx); + + int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj); + int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj); + +=head1 DESCRIPTION + +The B type is a structure used for the implementation of new +X509_LOOKUP types. It provides a set of functions used by OpenSSL for the +implementation of various X509 and X509_CRL lookup capabilities. One instance +of an X509_LOOKUP_METHOD can be associated to many instantiations of an +B structure. + +X509_LOOKUP_meth_new() creates a new B structure. It should +be given a human-readable string containing a brief description of the lookup +method. + +X509_LOOKUP_meth_free() destroys a B structure. + +X509_LOOKUP_get_new_item() and X509_LOOKUP_set_new_item() get and set the +function that is called when an B object is created with +X509_LOOKUP_new(). If an X509_LOOKUP_METHOD requires any per-X509_LOOKUP +specific data, the supplied new_item function should allocate this data and +invoke X509_LOOKUP_set_method_data(). + +X509_LOOKUP_get_free() and X509_LOOKUP_set_free() get and set the function +that is used to free any method data that was allocated and set from within +new_item function. + +X509_LOOKUP_meth_get_init() and X509_LOOKUP_meth_set_init() get and set the +function that is used to initialize the method data that was set with +X509_LOOKUP_set_method_data() as part of the new_item routine. + +X509_LOOKUP_meth_get_shutdown() and X509_LOOKUP_meth_set_shutdown() get and set +the function that is used to shut down the method data whose state was +previously initialized in the init function. + +X509_LOOKUP_meth_get_ctrl() and X509_LOOKUP_meth_set_ctrl() get and set a +function to be used to handle arbitrary control commands issued by +X509_LOOKUP_ctrl(). The control function is given the X509_LOOKUP +B, along with the arguments passed by X509_LOOKUP_ctrl. B is +an arbitrary integer that defines some operation. B is a pointer +to an array of characters. B is an integer. B, if set, +points to a location where any return data should be written to. How +B and B are used depends entirely on the control function. + + +X509_LOOKUP_set_get_by_subject(), X509_LOOKUP_set_get_by_issuer_serial(), +X509_LOOKUP_set_get_by_fingerprint(), X509_LOOKUP_set_get_by_alias() set +the functions used to retrieve an X509 or X509_CRL object by the object's +subject, issuer, fingerprint, and alias respectively. These functions are given +the X509_LOOKUP context, the type of the X509_OBJECT being requested, parameters +related to the lookup, and an X509_OBJECT that will receive the requested +object. + +Implementations should use either X509_OBJECT_set1_X509() or +X509_OBJECT_set1_X509_CRL() to set the result. Any method data that was +created as a result of the new_item function set by +X509_LOOKUP_meth_set_new_item() can be accessed with +X509_LOOKUP_get_method_data(). The B object that owns the +X509_LOOKUP may be accessed with X509_LOOKUP_get_store(). Successful lookups +should return 1, and unsuccessful lookups should return 0. + +X509_LOOKUP_get_get_by_subject(), X509_LOOKUP_get_get_by_issuer_serial(), +X509_LOOKUP_get_get_by_fingerprint(), X509_LOOKUP_get_get_by_alias() retrieve +the function set by the corresponding setter. + +=head1 RETURN VALUES + +The B functions return 1 on success or 0 on error. + +The B functions return the corresponding function +pointers. + +=head1 SEE ALSO + +L, L + +=head1 HISTORY + +The functions described here were added in OpenSSL 1.1.0i. + +=head1 COPYRIGHT + +Copyright 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 +L. + +=cut diff --git a/deps/openssl/openssl/doc/crypto/X509_VERIFY_PARAM_set_flags.pod b/deps/openssl/openssl/doc/crypto/X509_VERIFY_PARAM_set_flags.pod index 5263facfd48d..320b258a85cd 100644 --- a/deps/openssl/openssl/doc/crypto/X509_VERIFY_PARAM_set_flags.pod +++ b/deps/openssl/openssl/doc/crypto/X509_VERIFY_PARAM_set_flags.pod @@ -11,7 +11,9 @@ X509_VERIFY_PARAM_get_auth_level, X509_VERIFY_PARAM_set_time, X509_VERIFY_PARAM_get_time, X509_VERIFY_PARAM_add0_policy, X509_VERIFY_PARAM_set1_policies, X509_VERIFY_PARAM_set1_host, X509_VERIFY_PARAM_add1_host, -X509_VERIFY_PARAM_set_hostflags, X509_VERIFY_PARAM_get0_peername, +X509_VERIFY_PARAM_set_hostflags, +X509_VERIFY_PARAM_get_hostflags, +X509_VERIFY_PARAM_get0_peername, X509_VERIFY_PARAM_set1_email, X509_VERIFY_PARAM_set1_ip, X509_VERIFY_PARAM_set1_ip_asc - X509 verification parameters @@ -54,6 +56,7 @@ X509_VERIFY_PARAM_set1_ip_asc const char *name, size_t namelen); void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, unsigned int flags); + unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param); char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param); int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, const char *email, size_t emaillen); @@ -130,14 +133,32 @@ B clearing any previously specified host name or names. If B is NULL, or empty the list of hostnames is cleared, and name checks are not performed on the peer certificate. If B is NUL-terminated, B may be zero, otherwise B -must be set to the length of B. When a hostname is specified, +must be set to the length of B. + +When a hostname is specified, certificate verification automatically invokes L with flags equal to the B argument given to X509_VERIFY_PARAM_set_hostflags() (default zero). Applications are strongly advised to use this interface in preference to explicitly -calling L, hostname checks are out of scope +calling L, hostname checks may be out of scope with the DANE-EE(3) certificate usage, and the internal check will -be suppressed as appropriate when DANE support is added to OpenSSL. +be suppressed as appropriate when DANE verification is enabled. + +When the subject CommonName will not be ignored, whether as a result of the +B host flag, or because no DNS subject +alternative names are present in the certificate, any DNS name constraints in +issuer certificates apply to the subject CommonName as well as the subject +alternative name extension. + +When the subject CommonName will be ignored, whether as a result of the +B host flag, or because some DNS subject +alternative names are present in the certificate, DNS name constraints in +issuer certificates will not be applied to the subject DN. +As described in X509_check_host(3) the B +flag takes precendence over the B flag. + +X509_VERIFY_PARAM_get_hostflags() returns any host flags previously set via a +call to X509_VERIFY_PARAM_set_hostflags(). X509_VERIFY_PARAM_add1_host() adds B as an additional reference identifier that can match the peer's certificate. Any previous names @@ -186,6 +207,8 @@ failure. X509_VERIFY_PARAM_get_flags() returns the current verification flags. +X509_VERIFY_PARAM_get_hostflags() returns any current host flags. + X509_VERIFY_PARAM_get_inh_flags() returns the current inheritance flags. X509_VERIFY_PARAM_set_time() and X509_VERIFY_PARAM_set_depth() do not return @@ -347,6 +370,8 @@ The B flag was added in OpenSSL 1.1.0 The legacy B flag is deprecated as of OpenSSL 1.1.0, and has no effect. +X509_VERIFY_PARAM_get_hostflags() was added in OpenSSL 1.1.0i. + =head1 COPYRIGHT Copyright 2009-2018 The OpenSSL Project Authors. All Rights Reserved. diff --git a/deps/openssl/openssl/doc/crypto/X509_check_host.pod b/deps/openssl/openssl/doc/crypto/X509_check_host.pod index 93848152b5ec..fb9f6a64ecd5 100644 --- a/deps/openssl/openssl/doc/crypto/X509_check_host.pod +++ b/deps/openssl/openssl/doc/crypto/X509_check_host.pod @@ -93,6 +93,9 @@ consider the subject DN even if the certificate contains no subject alternative names of the right type (DNS name or email address as appropriate); the default is to use the subject DN when no corresponding subject alternative names are present. +If both B and +B are specified, the latter takes +precedence and the subject DN is not checked for matching names. If set, B disables wildcard expansion; this only applies to B. @@ -128,9 +131,9 @@ NULs. Applications are encouraged to use X509_VERIFY_PARAM_set1_host() rather than explicitly calling L. Host name -checks are out of scope with the DANE-EE(3) certificate usage, +checks may be out of scope with the DANE-EE(3) certificate usage, and the internal checks will be suppressed as appropriate when -DANE support is added to OpenSSL. +DANE support is enabled. =head1 SEE ALSO @@ -147,7 +150,7 @@ These functions were added in OpenSSL 1.0.2. =head1 COPYRIGHT -Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2012-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 diff --git a/deps/openssl/openssl/doc/crypto/X509_cmp_time.pod b/deps/openssl/openssl/doc/crypto/X509_cmp_time.pod new file mode 100644 index 000000000000..5bf51114511a --- /dev/null +++ b/deps/openssl/openssl/doc/crypto/X509_cmp_time.pod @@ -0,0 +1,39 @@ +=pod + +=head1 NAME + +X509_cmp_time - X509 time functions + +=head1 SYNOPSIS + + X509_cmp_time(const ASN1_TIME *asn1_time, time_t *cmp_time); + +=head1 DESCRIPTION + +X509_cmp_time() compares the ASN1_TIME in B with the time in +. + +B must satisfy the ASN1_TIME format mandated by RFC 5280, i.e., +its format must be either YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ. + +If B is NULL the current time is used. + +=head1 BUGS + +Unlike many standard comparison functions, X509_cmp_time returns 0 on error. + +=head1 RETURN VALUES + +X509_cmp_time() returns -1 if B is earlier than, or equal to, +B, and 1 otherwise. It returns 0 on error. + +=head1 COPYRIGHT + +Copyright 2017-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 +L. + +=cut diff --git a/deps/openssl/openssl/doc/crypto/bio.pod b/deps/openssl/openssl/doc/crypto/bio.pod index 7be3121fd1d1..1e1dd02106db 100644 --- a/deps/openssl/openssl/doc/crypto/bio.pod +++ b/deps/openssl/openssl/doc/crypto/bio.pod @@ -87,3 +87,4 @@ in the file LICENSE in the source distribution or at L. =cut + diff --git a/deps/openssl/openssl/doc/fingerprints.txt b/deps/openssl/openssl/doc/fingerprints.txt index 1863224df37a..2cb74aec2778 100644 --- a/deps/openssl/openssl/doc/fingerprints.txt +++ b/deps/openssl/openssl/doc/fingerprints.txt @@ -18,10 +18,7 @@ uid Richard Levitte uid Richard Levitte uid Richard Levitte -pub 4096R/FA40E9E2 2005-03-19 - Key fingerprint = 6260 5AA4 334A F9F0 DDE5 D349 D357 7507 FA40 E9E2 -uid Dr Stephen N Henson - pub 2048R/0E604491 2013-04-30 Key fingerprint = 8657 ABB2 60F0 56B1 E519 0839 D9C4 D26D 0E60 4491 +uid Matt Caswell uid Matt Caswell diff --git a/deps/openssl/openssl/doc/openssl-c-indent.el b/deps/openssl/openssl/doc/openssl-c-indent.el index cca118303e30..852f794f9656 100644 --- a/deps/openssl/openssl/doc/openssl-c-indent.el +++ b/deps/openssl/openssl/doc/openssl-c-indent.el @@ -54,6 +54,7 @@ (arglist-close . c-lineup-arglist) ; From "gnu" style (inline-open . 0) ; From "gnu" style (brace-list-open . +) ; From "gnu" style + (inextern-lang . 0) ; Don't indent inside extern block (topmost-intro-cont first c-lineup-topmost-intro-cont c-lineup-gnu-DEFUN-intro-cont) ; From "gnu" style ) diff --git a/deps/openssl/openssl/doc/ssl/SSL_CONF_cmd.pod b/deps/openssl/openssl/doc/ssl/SSL_CONF_cmd.pod index a28e21833285..12fdcab83c4a 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_CONF_cmd.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_CONF_cmd.pod @@ -506,10 +506,6 @@ Set supported curves to P-256, P-384: SSL_CONF_cmd(ctx, "Curves", "P-256:P-384"); -Set automatic support for any elliptic curve for key exchange: - - SSL_CONF_cmd(ctx, "ECDHParameters", "Automatic"); - =head1 RETURN VALUES SSL_CONF_cmd() returns 1 if the value of B is recognised and B is diff --git a/deps/openssl/openssl/doc/ssl/SSL_CTX_set_ctlog_list_file.pod b/deps/openssl/openssl/doc/ssl/SSL_CTX_set_ctlog_list_file.pod index 1dead1dbfcca..4a2fa946fe82 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_CTX_set_ctlog_list_file.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_CTX_set_ctlog_list_file.pod @@ -24,7 +24,7 @@ See L for the file format. =head1 NOTES These functions will not clear the existing CT log list - it will be appended -to. To replace the existing list, use L first. +to. To replace the existing list, use L first. If an error occurs whilst parsing a particular log entry in the file, that log entry will be skipped. diff --git a/deps/openssl/openssl/doc/ssl/SSL_CTX_use_certificate.pod b/deps/openssl/openssl/doc/ssl/SSL_CTX_use_certificate.pod index c645f58078e8..8ed7b5ea15c8 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_CTX_use_certificate.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_CTX_use_certificate.pod @@ -153,6 +153,13 @@ L. of view, it however does not make sense as the data in the certificate is considered public anyway.) +All of the functions to set a new certificate will replace any existing +certificate of the same type that has already been set. Similarly all of the +functions to set a new private key will replace any private key that has already +been set. Applications should call L or +L as appropriate after loading a new certificate and +private key to confirm that the certificate and key match. + =head1 RETURN VALUES On success, the functions return 1. @@ -170,7 +177,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/ssl/SSL_get_ciphers.pod b/deps/openssl/openssl/doc/ssl/SSL_get_ciphers.pod index cc55095d4784..2759cc3cc617 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_get_ciphers.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_get_ciphers.pod @@ -2,8 +2,12 @@ =head1 NAME -SSL_get1_supported_ciphers, SSL_get_client_ciphers, -SSL_get_ciphers, SSL_CTX_get_ciphers, SSL_get_cipher_list +SSL_get1_supported_ciphers, +SSL_get_client_ciphers, +SSL_get_ciphers, +SSL_CTX_get_ciphers, +SSL_get_cipher_list, +SSL_get_shared_ciphers - get list of available SSL_CIPHERs =head1 SYNOPSIS @@ -15,6 +19,7 @@ SSL_get_ciphers, SSL_CTX_get_ciphers, SSL_get_cipher_list STACK_OF(SSL_CIPHER) *SSL_get1_supported_ciphers(SSL *s); STACK_OF(SSL_CIPHER) *SSL_get_client_ciphers(const SSL *ssl); const char *SSL_get_cipher_list(const SSL *ssl, int priority); + char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size); =head1 DESCRIPTION @@ -25,16 +30,16 @@ is returned. SSL_CTX_get_ciphers() returns the stack of available SSL_CIPHERs for B. SSL_get1_supported_ciphers() returns the stack of enabled SSL_CIPHERs for -B, sorted by preference. +B as would be sent in a ClientHello (that is, sorted by preference). The list depends on settings like the cipher list, the supported protocol versions, the security level, and the enabled signature algorithms. SRP and PSK ciphers are only enabled if the appropriate callbacks or settings have been applied. -This is the list that will be sent by the client to the server. -The list supported by the server might include more ciphers in case there is a -hole in the list of supported protocols. -The server will also not use ciphers from this list depending on the -configured certificates and DH parameters. +The list of ciphers that would be sent in a ClientHello can differ from +the list of ciphers that would be acceptable when acting as a server. +For example, additional ciphers may be usable by a server if there is +a gap in the list of supported protocols, and some ciphers may not be +usable by a server if there is not a suitable certificate configured. If B is NULL or no ciphers are available, NULL is returned. SSL_get_client_ciphers() returns the stack of available SSL_CIPHERs matching the @@ -46,6 +51,19 @@ listed for B with B. If B is NULL, no ciphers are available, or there are less ciphers than B available, NULL is returned. +SSL_get_shared_ciphers() creates a colon separated and NUL terminated list of +SSL_CIPHER names that are available in both the client and the server. B is +the buffer that should be populated with the list of names and B is the +size of that buffer. A pointer to B is returned on success or NULL on +error. If the supplied buffer is not large enough to contain the complete list +of names then a truncated list of names will be returned. Note that just because +a ciphersuite is available (i.e. it is configured in the cipher list) and shared +by both the client and the server it does not mean that it is enabled (see the +description of SSL_get1_supported_ciphers() above). This function will return +available shared ciphersuites whether or not they are enabled. This is a server +side function only and must only be called after the completion of the initial +handshake. + =head1 NOTES The details of the ciphers obtained by SSL_get_ciphers(), SSL_CTX_get_ciphers() @@ -74,7 +92,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/ssl/SSL_get_session.pod b/deps/openssl/openssl/doc/ssl/SSL_get_session.pod index 99936ad76542..2de241fcdae2 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_get_session.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_get_session.pod @@ -28,6 +28,11 @@ count of the B is incremented by one. The ssl session contains all information required to re-establish the connection without a new handshake. +A session will be automatically removed from the session cache and marked as +non-resumable if the connection is not closed down cleanly, e.g. if a fatal +error occurs on the connection or L is not called prior to +L. + SSL_get0_session() returns a pointer to the actual session. As the reference counter is not incremented, the pointer is only valid while the connection is in use. If L or @@ -72,7 +77,7 @@ L =head1 COPYRIGHT -Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2000-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 diff --git a/deps/openssl/openssl/doc/ssl/SSL_get_version.pod b/deps/openssl/openssl/doc/ssl/SSL_get_version.pod index 23b6497d4f3b..507ca9f3627d 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_get_version.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_get_version.pod @@ -15,7 +15,9 @@ SSL_get_version, SSL_is_dtls - get the protocol information of a connection =head1 DESCRIPTION SSL_get_version() returns the name of the protocol used for the -connection B. +connection B. It should only be called after the initial handshake has been +completed. Prior to that the results returned from this function may be +unreliable. SSL_is_dtls() returns one if the connection is using DTLS, zero if not. @@ -43,7 +45,7 @@ The connection uses the TLSv1.2 protocol. =item unknown -This indicates that no version has been set (no connection established). +This indicates an unknown protocol version. =back @@ -57,7 +59,7 @@ SSL_is_dtls() was added in OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2001-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 diff --git a/deps/openssl/openssl/doc/ssl/SSL_set1_host.pod b/deps/openssl/openssl/doc/ssl/SSL_set1_host.pod index 3339a0e803b5..715845e1f7c6 100644 --- a/deps/openssl/openssl/doc/ssl/SSL_set1_host.pod +++ b/deps/openssl/openssl/doc/ssl/SSL_set1_host.pod @@ -56,7 +56,7 @@ is cleared or freed, or a renegotiation takes place. Applications must not free the return value. SSL clients are advised to use these functions in preference to -explicitly calling L. Hostname checks are out +explicitly calling L. Hostname checks may be out of scope with the RFC7671 DANE-EE(3) certificate usage, and the internal check will be suppressed as appropriate when DANE is enabled. @@ -111,7 +111,7 @@ These functions were first added to OpenSSL 1.1.0. =head1 COPYRIGHT -Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +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 diff --git a/deps/openssl/openssl/doc/ssl/ssl.pod b/deps/openssl/openssl/doc/ssl/ssl.pod index 4d919072ea38..da12e29c6351 100644 --- a/deps/openssl/openssl/doc/ssl/ssl.pod +++ b/deps/openssl/openssl/doc/ssl/ssl.pod @@ -91,12 +91,6 @@ includes both more private SSL headers and headers from the B library. Whenever you need hard-core details on the internals of the SSL API, look inside this header file. -OPENSSL_VERSION_AT_LEAST(major,minor) can be -used in C<#if> statements in order to determine which version of the library is -being used. This can be used to either enable optional features at compile -time, or work around issues with a previous version. -See L. - =item B Unused. Present for backwards compatibility only. @@ -574,7 +568,7 @@ fresh handle for each connection. =item SSL_SESSION *B(const SSL *ssl); -=item char *B(const SSL *ssl, char *buf, int len); +=item char *B(const SSL *ssl, char *buf, int size); =item int B(const SSL *ssl); diff --git a/deps/openssl/openssl/engines/asm/e_padlock-x86.pl b/deps/openssl/openssl/engines/asm/e_padlock-x86.pl index fec99bfb65cf..bf6b312cd1b8 100644 --- a/deps/openssl/openssl/engines/asm/e_padlock-x86.pl +++ b/deps/openssl/openssl/engines/asm/e_padlock-x86.pl @@ -448,7 +448,7 @@ sub generate_mode { &mov ("esi",&wparam(1)); &mov ("ecx",&wparam(2)); if ($::win32 or $::coff) { - &push (&::islabel("_win32_segv_handler")); + &push (&::islabel("_win32_segv_handler")); &data_byte(0x64,0xff,0x30); # push %fs:(%eax) &data_byte(0x64,0x89,0x20); # mov %esp,%fs:(%eax) } @@ -499,7 +499,7 @@ sub generate_mode { &mov ("edi",&wparam(0)); &movups (&QWP(0,"edi"),"xmm0"); # copy-out context &mov (&DWP(16,"edi"),"eax"); - &pop ("esi"); + &pop ("esi"); &pop ("edi"); &ret (); &function_end_B("padlock_sha1_blocks"); @@ -512,7 +512,7 @@ sub generate_mode { &mov ("esi",&wparam(1)); &mov ("ecx",&wparam(2)); if ($::win32 or $::coff) { - &push (&::islabel("_win32_segv_handler")); + &push (&::islabel("_win32_segv_handler")); &data_byte(0x64,0xff,0x30); # push %fs:(%eax) &data_byte(0x64,0x89,0x20); # mov %esp,%fs:(%eax) } diff --git a/deps/openssl/openssl/engines/asm/e_padlock-x86_64.pl b/deps/openssl/openssl/engines/asm/e_padlock-x86_64.pl index 834b1ea79cd0..da285abc61dd 100644 --- a/deps/openssl/openssl/engines/asm/e_padlock-x86_64.pl +++ b/deps/openssl/openssl/engines/asm/e_padlock-x86_64.pl @@ -535,7 +535,7 @@ sub generate_mode { sub $len,%rsp shr \$3,$len lea (%rsp),$out - .byte 0xf3,0x48,0xa5 # rep movsq + .byte 0xf3,0x48,0xa5 # rep movsq lea (%r8),$out lea (%rsp),$inp mov $chunk,$len diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/INSTALL b/deps/openssl/openssl/external/perl/Text-Template-1.46/INSTALL index 466f8e5040fe..7c5e4c6bde97 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/INSTALL +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/INSTALL @@ -21,7 +21,7 @@ Detailed documentation is at the bottom of the lib/Text/Template.pm file. You may be able to view it with the following command: perldoc Text::Template - + Or: perldoc lib/Text/Template.pm diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/README b/deps/openssl/openssl/external/perl/Text-Template-1.46/README index bdd3dd4a42d7..e184d8cd2f7b 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/README +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/README @@ -5,7 +5,7 @@ This is a library for generating form letters, building HTML pages, or filling in templates generally. A `template' is a piece of text that has little Perl programs embedded in it here and there. When you `fill in' a template, you evaluate the little programs and replace -them with their values. +them with their values. Here's an example of a template: @@ -45,7 +45,7 @@ encourages functional separation. You can fill in the template in a `Safe' compartment. This means that if you don't trust the person who wrote the code in the template, you won't have to worry that they are tampering with your program when you -execute it. +execute it. ---------------------------------------------------------------- @@ -87,7 +87,7 @@ What's new in v1.46 since v1.44: parameter to ->new is omitted. ---------------------------------------------------------------- -What's new in v1.44 since v1.43: +What's new in v1.44 since v1.43: This is a maintentance release. There are no feature changes. @@ -182,7 +182,7 @@ What's new in v1.40 since v1.31: ---------------------------------------------------------------- What's new in v1.31 since v1.23: - Just bug fixes---fill_in_string was failing. Thanks to + Just bug fixes---fill_in_string was failing. Thanks to Donald L. Greer Jr. for the test case. ---------------------------------------------------------------- @@ -252,7 +252,7 @@ What's new in v1.10 since v1.03: New OUTPUT option delivers template results directly to a filehandle instead of making them into a string. Saves space - and time. + and time. PACKAGE and HASH now work intelligently with SAFE. @@ -263,16 +263,16 @@ What's new in v1.10 since v1.03: { my $blist = ''; foreach $i (@items) { $blist .= qq{ * $i\n}; - } + } $blist; - } + } You can now write this instead, because $OUT is special. { foreach $i (@items) { $OUT.= " * $i\n"; - } - } + } + } (`A spoonful of sugar makes the medicine go down.') @@ -281,7 +281,7 @@ What's new in v1.10 since v1.03: More documentation. Errors fixed. - Lots more tests. + Lots more tests. ---------------------------------------------------------------- @@ -289,22 +289,22 @@ What's new in v1.03 since v1.0: Code added to support HASH option to fill_in. (Incl. `_gensym' function.) - + Documentation for HASH. - + New test file for HASH. - + Note about failure of lexical variables to propagate into - templates. Why does this surprise people? - + templates. Why does this surprise people? + Bug fix: program fragments are evaluated in an environment with - `no strict' by default. Otherwise, you get a lot of `Global - symbol "$v" requires explicit package name' failures. Why didn't - the test program pick this up? Because the only variable the test - program ever used was `$a', which is exempt. Duhhhhh. - + `no strict' by default. Otherwise, you get a lot of `Global + symbol "$v" requires explicit package name' failures. Why didn't + the test program pick this up? Because the only variable the test + program ever used was `$a', which is exempt. Duhhhhh. + Fixed the test program. - + Various minor documentation fixes. @@ -315,24 +315,25 @@ Improvements of 1.0 over the old 0.1beta: New features: - At least twice as fast + At least twice as fast - Better support for filling out the same template more than once + Better support for filling out the same template more than once Now supports evaluation of program fragments in Safe - compartments. (Thanks, Jonathan!) + compartments. (Thanks, Jonathan!) - Better argument syntax + Better argument syntax - More convenience functions + More convenience functions - The parser is much better and simpler. + The parser is much better and simpler. Once a template is parsed, the parsed version is stored so that - it needn't be parsed again. + it needn't be parsed again. BROKEN function behavior is rationalized. You can now pass an arbitrary argument to your BROKEN function, or return a value - from it to the main program. + from it to the main program. + + Documentation overhauled. - Documentation overhauled. diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template.pm b/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template.pm index 2b8a391b5398..dc4f3bac77e1 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template.pm +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template.pm @@ -5,7 +5,7 @@ # # Copyright 2013 M. J. Dominus. # You may copy and distribute this program under the -# same terms as Perl iteself. +# same terms as Perl iteself. # If in doubt, write to mjd-perl-template+@plover.com for a license. # # Version 1.46 @@ -44,7 +44,7 @@ sub always_prepend { my %LEGAL_TYPE; - BEGIN { + BEGIN { %LEGAL_TYPE = map {$_=>1} qw(FILE FILEHANDLE STRING ARRAY); } sub new { @@ -78,7 +78,7 @@ sub always_prepend bless $self => $pack; return unless $self->_acquire_data; - + $self; } } @@ -89,7 +89,7 @@ sub _acquire_data { my ($self) = @_; my $type = $self->{TYPE}; if ($type eq 'STRING') { - # nothing necessary + # nothing necessary } elsif ($type eq 'FILE') { my $data = _load_text($self->{SOURCE}); unless (defined $data) { @@ -115,7 +115,7 @@ sub _acquire_data { } $self->{SOURCE} = $data; } else { - # This should have been caught long ago, so it represents a + # This should have been caught long ago, so it represents a # drastic `can't-happen' sort of failure my $pack = ref $self; die "Can only acquire data for $pack objects of subtype STRING, but this is $type; aborting"; @@ -145,7 +145,7 @@ sub compile { return undef unless $self->_acquire_data; unless ($self->{TYPE} eq 'STRING') { my $pack = ref $self; - # This should have been caught long ago, so it represents a + # This should have been caught long ago, so it represents a # drastic `can't-happen' sort of failure die "Can only compile $pack objects of subtype STRING, but this is $self->{TYPE}; aborting"; } @@ -153,7 +153,7 @@ sub compile { my @tokens; my $delim_pats = shift() || $self->{DELIM}; - + my ($t_open, $t_close) = ('{', '}'); my $DELIM; # Regex matches a delimiter if $delim_pats @@ -215,7 +215,7 @@ sub compile { } else { die "Can't happen error #1"; } - + $self->{TYPE} = 'PREPARSED'; $self->{SOURCE} = \@content; 1; @@ -247,7 +247,7 @@ sub fill_in { my $fi_varhash = _param('hash', %fi_a); my $fi_package = _param('package', %fi_a) ; - my $fi_broken = + my $fi_broken = _param('broken', %fi_a) || $fi_self->{BROKEN} || \&_default_broken; my $fi_broken_arg = _param('broken_arg', %fi_a) || []; my $fi_safe = _param('safe', %fi_a); @@ -305,7 +305,7 @@ sub fill_in { } elsif ($fi_type eq 'PROG') { no strict; my $fi_lcomment = "#line $fi_lineno $fi_filename"; - my $fi_progtext = + my $fi_progtext = "package $fi_eval_package; $fi_prepend;\n$fi_lcomment\n$fi_text;"; my $fi_res; my $fi_eval_err = ''; @@ -445,7 +445,7 @@ sub _unconditionally_untaint { } } } - + # Given a hashful of variables (or a list of such hashes) # install the variables into the specified package, # overwriting whatever variables were there before. @@ -467,7 +467,7 @@ sub _install_hash { } elsif (ref $val) { *SYM = $val; } else { - *SYM = \$val; + *SYM = \$val; } } } @@ -478,7 +478,7 @@ sub TTerror { $ERROR } 1; -=head1 NAME +=head1 NAME Text::Template - Expand template text with embedded Perl @@ -539,7 +539,7 @@ This file documents C version B<1.46> $text = fill_in_string( < 'T', ...); Dear {$recipient}, Pay me at once. - Love, + Love, G.V. EOM @@ -555,7 +555,7 @@ This is a library for generating form letters, building HTML pages, or filling in templates generally. A `template' is a piece of text that has little Perl programs embedded in it here and there. When you `fill in' a template, you evaluate the little programs and replace -them with their values. +them with their values. You can store a template in a file outside your program. People can modify the template without modifying the program. You can separate @@ -683,16 +683,16 @@ The fragments are evaluated in order, and side effects from earlier fragments will persist into later fragments: {$x = @things; ''}The Lord High Chamberlain has gotten {$x} - things for me this year. - { $diff = $x - 17; + things for me this year. + { $diff = $x - 17; $more = 'more' if ($diff == 0) { $diff = 'no'; } elsif ($diff < 0) { $more = 'fewer'; - } + } ''; - } + } That is {$diff} {$more} than he gave me last year. The value of C<$x> set in the first line will persist into the next @@ -701,11 +701,11 @@ C<$more> set in the second fragment will persist and be interpolated into the last line. The output will look something like this: The Lord High Chamberlain has gotten 42 - things for me this year. + things for me this year. That is 25 more than he gave me last year. -That is all the syntax there is. +That is all the syntax there is. =head2 The C<$OUT> variable @@ -726,9 +726,9 @@ One way to do it is with a template like this: { my $blist = ''; foreach $i (@items) { $blist .= qq{ * $i\n}; - } + } $blist; - } + } Here we construct the list in a variable called C<$blist>, which we return at the end. This is a little cumbersome. There is a shortcut. @@ -743,11 +743,11 @@ This means that you can write the template above like this: Here is a list of the things I have got for you since 1907: { foreach $i (@items) { $OUT .= " * $i\n"; - } - } + } + } C<$OUT> is reinitialized to the empty string at the start of each -program fragment. It is private to C, so +program fragment. It is private to C, so you can't use a variable named C<$OUT> in your template without invoking the special behavior. @@ -780,15 +780,15 @@ else that makes sense with C. The C can also be C, in which case the C should be a string: - new Text::Template ( TYPE => 'STRING', + new Text::Template ( TYPE => 'STRING', SOURCE => "This is the actual template!" ); The C can be C, in which case the source should be a reference to an array of strings. The concatenation of these strings is the template: - new Text::Template ( TYPE => 'ARRAY', - SOURCE => [ "This is ", "the actual", + new Text::Template ( TYPE => 'ARRAY', + SOURCE => [ "This is ", "the actual", " template!", ] ); @@ -800,7 +800,7 @@ C will read the text from the filehandle up to end-of-file, and that text is the template: # Read template source code from STDIN: - new Text::Template ( TYPE => 'FILEHANDLE', + new Text::Template ( TYPE => 'FILEHANDLE', SOURCE => \*STDIN ); @@ -870,7 +870,7 @@ overridden in the arguments to C. See L> below. Loads all the template text from the template's source, parses and compiles it. If successful, returns true; otherwise returns false and sets C<$Text::Template::ERROR>. If the template is already compiled, -it returns true and does nothing. +it returns true and does nothing. You don't usually need to invoke this function, because C (see below) compiles the template if it isn't compiled already. @@ -977,10 +977,10 @@ variables. You may not want to put the template variables into a package. Packages can be hard to manage: You can't copy them, for example. -C provides an alternative. +C provides an alternative. The value for C should be a reference to a hash that maps -variable names to values. For example, +variable names to values. For example, $template->fill_in(HASH => { recipient => "The King", items => ['gold', 'frankincense', 'myrrh'], @@ -996,19 +996,19 @@ should be passed by reference. We also want to pass an object, which is in C<$self>; note that we pass a reference to the object, C<\$self> instead. Since we've passed a reference to a scalar, inside the template the object appears as -C<$object>. +C<$object>. The full details of how it works are a little involved, so you might want to skip to the next section. -Suppose the key in the hash is I and the value is I. +Suppose the key in the hash is I and the value is I. =over 4 =item * If the I is C, then any variables named C<$key>, -C<@key>, C<%key>, etc., are undefined. +C<@key>, C<%key>, etc., are undefined. =item * @@ -1032,7 +1032,7 @@ and have almost exactly the same effect. (The difference is that in the former case, the value is copied, and in the latter case it is -aliased.) +aliased.) =item * @@ -1074,7 +1074,7 @@ You can also use this to set two variables with the same name: ] ); -This sets C<$v> to C<"The King"> and C<@v> to C<(1,2,3)>. +This sets C<$v> to C<"The King"> and C<@v> to C<(1,2,3)>. =item C @@ -1082,13 +1082,13 @@ If any of the program fragments fails to compile or aborts for any reason, and you have set the C option to a function reference, C will invoke the function. This function is called the I function>. The C function will tell -C what to do next. +C what to do next. If the C function returns C, C will immediately abort processing the template and return the text that it has accumulated so far. If your function does this, it should set a flag that you can examine after C returns so that you can -tell whether there was a premature return or not. +tell whether there was a premature return or not. If the C function returns any other value, that value will be interpolated into the template as if that value had been the return @@ -1150,7 +1150,7 @@ If you supply the C option to C, the value of the option is passed to the C function whenever it is called. The default C function ignores the C, but you can write a custom C function that uses the C to get -more information about what went wrong. +more information about what went wrong. The C function could also use the C as a reference to store an error message or some other information that it wants to @@ -1158,7 +1158,7 @@ communicate back to the caller. For example: $error = ''; - sub my_broken { + sub my_broken { my %args = @_; my $err_ref = $args{arg}; ... @@ -1191,7 +1191,7 @@ operations that can be performed in them. If you use the C option with C, the package you specify will be placed into the safe compartment and evaluation will take -place in that package as usual. +place in that package as usual. If not, C operation is a little different from the default. Usually, if you don't specify a package, evaluation of program @@ -1235,11 +1235,11 @@ If this option is present, its value should be a reference to a list of two strings. The first string is the string that signals the beginning of each program fragment, and the second string is the string that signals the end of each program fragment. See -L<"Alternative Delimiters">, below. +L<"Alternative Delimiters">, below. If you specify C in the call to C, they override any delimiters you set when you created the template object with -C. +C. =back @@ -1266,7 +1266,7 @@ An example: $text = Text::Template->fill_this_in( <<'EOM', PACKAGE => Q); Dear {$name}, - You owe me \\${sprintf('%.2f', $amount)}. + You owe me \\${sprintf('%.2f', $amount)}. Pay or I will break your {$part}. Love, Grand Vizopteryx of Irkutsk. @@ -1371,7 +1371,7 @@ The text C doesn't get into the form letter. Why not? Because C<$recipient> is a C variable, and the whole point of C variables is that they're private and inaccessible except in the scope in which they're declared. The template is not part of that -scope, so the template can't see C<$recipient>. +scope, so the template can't see C<$recipient>. If that's not the behavior you want, don't use C. C means a private variable, and in this case you don't want the variable to be @@ -1380,7 +1380,7 @@ package, and use the C option to C: $Q::recipient = $recipient; my $text = fill_in_file('formletter.tmpl', PACKAGE => 'Q'); - + or pass the names and values in a hash with the C option: @@ -1397,8 +1397,8 @@ rest of your program and wreck something. Nevertheless, there's really no way (except with C) to protect against a template that says - { $Important::Secret::Security::Enable = 0; - # Disable security checks in this program + { $Important::Secret::Security::Enable = 0; + # Disable security checks in this program } or @@ -1462,12 +1462,12 @@ you may be able to make it work by doing this instead: --@] It may be safer to choose delimiters that begin with a newline -character. +character. Because the parsing of templates is simplified by the absence of backslash escapes, using alternative C may speed up the parsing process by 20-25%. This shows that my original choice of C<{> -and C<}> was very bad. +and C<}> was very bad. =head2 C feature and using C in templates @@ -1492,11 +1492,11 @@ each and every code fragment: Because we didn't put C at the top of the second fragment, it was only active in the first fragment, and we didn't get any C checking in the second fragment. Then we mispelled C<$foo> -and the error wasn't caught. +and the error wasn't caught. C version 1.22 and higher has a new feature to make this easier. You can specify that any text at all be automatically -added to the beginning of each program fragment. +added to the beginning of each program fragment. When you make a call to C, you can specify a @@ -1541,7 +1541,7 @@ except where overridden by C options to C or C. =head2 Prepending in Derived Classes This section is technical, and you should skip it on the first few -readings. +readings. Normally there are three places that prepended text could come from. It could come from the C option in the C call, from @@ -1551,12 +1551,12 @@ C looks for these three things in order and takes the first one that it finds. In a subclass of C, this last possibility is -ambiguous. Suppose C is a subclass of C. Should +ambiguous. Suppose C is a subclass of C. Should Text::Template->always_prepend(...); affect objects in class C? The answer is that you can have it -either way. +either way. The C value for C is normally stored in a hash variable named C<%GLOBAL_PREPEND> under the key @@ -1587,7 +1587,7 @@ method to get an arbitrary effect. Jennifer D. St Clair asks: > Most of my pages contain JavaScript and Stylesheets. - > How do I change the template identifier? + > How do I change the template identifier? Jennifer is worried about the braces in the JavaScript being taken as the delimiters of the Perl program fragments. Of course, disaster @@ -1600,13 +1600,13 @@ some reason, there are two easy workarounds: 1. You can put C<\> in front of C<{>, C<}>, or C<\> to remove its special meaning. So, for example, instead of - if (br== "n3") { + if (br== "n3") { // etc. } you can put - if (br== "n3") \{ + if (br== "n3") \{ // etc. \} @@ -1627,21 +1627,21 @@ So if we wrote {q{foo}} -it would turn into +it would turn into foo So for your JavaScript, just write - {q{if (br== "n3") { - // etc. + {q{if (br== "n3") { + // etc. }} } and it'll come out as - if (br== "n3") { - // etc. + if (br== "n3") { + // etc. } which is what you want. @@ -1657,7 +1657,7 @@ their templates, like this: } Then they complain because there is a C<17> at the top of the output -that they didn't want to have there. +that they didn't want to have there. Remember that a program fragment is replaced with its own return value, and that in Perl the return value of a code block is the value @@ -1723,14 +1723,14 @@ complicated to remember, but probably easier to use. The rule is now: Backslashes are always passed to Perl unchanged I they occur as part of a sequence like C<\\\\\\{> or C<\\\\\\}>. In these contexts, they are special; C<\\> is replaced with C<\>, and C<\{> and -C<\}> signal a literal brace. +C<\}> signal a literal brace. Examples: \{ foo \} is I evaluated, because the C<\> before the braces signals that -they should be taken literally. The result in the output looks like this: +they should be taken literally. The result in the output looks like this: { foo } @@ -1797,7 +1797,7 @@ It's totally straightforward. Just call the C functions from inside the template: { $q->checkbox_group(NAME => 'toppings', - LINEBREAK => true, + LINEBREAK => true, COLUMNS => 3, VALUES => \@toppings, ); @@ -1864,7 +1864,7 @@ of the mailing list. The mailing list address is a secret.) =head1 THANKS Many thanks to the following people for offering support, -encouragement, advice, bug reports, and all the other good stuff. +encouragement, advice, bug reports, and all the other good stuff. David H. Adler / Joel Appelbaum / @@ -1895,7 +1895,7 @@ Matt X. Hunter / Robert M. Ioffe / Daniel LaLiberte / Reuven M. Lerner / -Trip Lilley / +Trip Lilley / Yannis Livassof / Val Luck / Kevin Madsen / @@ -1941,12 +1941,12 @@ Special thanks to: =over 2 -=item Jonathan Roy +=item Jonathan Roy for telling me how to do the C support (I spent two years worrying about it, and then Jonathan pointed out that it was trivial.) -=item Ranjit Bhatnagar +=item Ranjit Bhatnagar for demanding less verbose fragments like they have in ASP, for helping me figure out the Right Thing, and, especially, for talking me diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template/Preprocess.pm b/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template/Preprocess.pm index c6e3298ee221..1e41037bd362 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template/Preprocess.pm +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/lib/Text/Template/Preprocess.pm @@ -28,7 +28,7 @@ sub preprocessor { 1; -=head1 NAME +=head1 NAME Text::Template::Preprocess - Expand template text with embedded Perl @@ -82,8 +82,8 @@ this: Plain text here... { perl code } { more perl code } @@ -96,7 +96,7 @@ JavaScript program with executable Perl code. One strategy: s()(q{$1})gsi; } -Then use C \"e_scripts>. This will transform +Then use C \"e_scripts>. This will transform @@ -141,3 +141,4 @@ For updates, visit C. =cut + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/00-version.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/00-version.t index 4784ba008e5c..5f9560f89875 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/00-version.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/00-version.t @@ -8,3 +8,4 @@ if ($Text::Template::VERSION == 1.46) { } else { print "not ok 1\n"; } + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/01-basic.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/01-basic.t index d983797786c4..be43390c67fa 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/01-basic.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/01-basic.t @@ -33,12 +33,12 @@ if (defined($template)) { $n++; # (3) Fill in template from file -$X::v = "abc"; +$X::v = "abc"; $resultX = < abc We will evaluate 1+1 here -> 2 EOM -$Y::v = "ABC"; +$Y::v = "ABC"; $resultY = < ABC We will evaluate 1+1 here -> 2 @@ -74,7 +74,7 @@ $n++; # (6) test creation of template from filehandle if (open (TMPL, "< $TEMPFILE")) { - $template = new Text::Template ('type' => 'FILEHANDLE', + $template = new Text::Template ('type' => 'FILEHANDLE', 'source' => *TMPL); if (defined($template)) { print "ok $n\n"; @@ -109,9 +109,9 @@ if (open (TMPL, "< $TEMPFILE")) { # (9) test creation of template from array -$template = new Text::Template - ('type' => 'ARRAY', - 'source' => [ +$template = new Text::Template + ('type' => 'ARRAY', + 'source' => [ 'We will put value of $v (which is "abc") here -> {$v}', "\n", 'We will evaluate 1+1 here -> {1+1}', @@ -209,7 +209,7 @@ for ($i=0; $i<@tests; $i+=2) { # MJD 20010827 # (28) test creation of template from filehandle if (open (TMPL, "< $TEMPFILE")) { - $template = new Text::Template ('type' => 'FILEHANDLE', + $template = new Text::Template ('type' => 'FILEHANDLE', 'source' => \*TMPL); if (defined($template)) { print "ok $n\n"; diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/02-hash.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/02-hash.t index 050638c853a5..29ba51a40e21 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/02-hash.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/02-hash.t @@ -68,13 +68,13 @@ my $WARNINGS = 0; local $^W = 1; # Make sure this is on for this test $template8 = 'We will put value of $v (which is "good") here -> {defined $v ? "bad" : "good"}'; $result8 = 'We will put value of $v (which is "good") here -> good'; - my $template = + my $template = new Text::Template ('type' => 'STRING', 'source' => $template8); my $text = $template->fill_in(HASH => {'v' => undef}); # (8) Did we generate a warning? print +($WARNINGS == 0 ? '' : 'not '), "ok $n\n"; $n++; - + # (9) Was the output correct? print +($text eq $result8 ? '' : 'not '), "ok $n\n"; $n++; @@ -85,7 +85,7 @@ my $WARNINGS = 0; # (10) Did we generate a warning? print +($WARNINGS == 0 ? '' : 'not '), "ok $n\n"; $n++; - + # (11) Was the output correct? if ($] < 5.005) { print "ok $n # skipped -- not supported before 5.005\n"; @@ -98,7 +98,7 @@ my $WARNINGS = 0; # (12) Now we'll test the multiple-hash option (Added for 1.20.) $text = Text::Template::fill_in_string(q{$v: {$v}. @v: [{"@v"}].}, - HASH => [{'v' => 17}, + HASH => [{'v' => 17}, {'v' => ['a', 'b', 'c']}, {'v' => \23}, ]); @@ -108,3 +108,4 @@ $n++; exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/03-out.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/03-out.t index 8094392dcaf3..0ba65a54dc5e 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/03-out.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/03-out.t @@ -46,10 +46,11 @@ $textOUT = $templateOUT->fill_in() print +($text eq $textOUT ? '' : 'not '), "ok $n\n"; $n++; -# Missing: Test this feature in Safe compartments; +# Missing: Test this feature in Safe compartments; # it's a totally different code path. # Decision: Put that into safe.t, because that file should # be skipped when Safe.pm is unavailable. exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/04-safe.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/04-safe.t index 6d94820d2a91..4c07121b449f 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/04-safe.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/04-safe.t @@ -141,13 +141,13 @@ print +($text1 eq $text2 ? '' : 'not '), "ok $n\n"; $n++; # (16) Try the BROKEN routine in safe compartments -sub my_broken { +sub my_broken { my %a = @_; $a{error} =~ s/ at.*//s; "OK! text:$a{text} error:$a{error} lineno:$a{lineno} arg:$a{arg}" ; } $templateB = new Text::Template (TYPE => 'STRING', SOURCE => '{die}') or die; -$text1 = $templateB->fill_in(BROKEN => \&my_broken, +$text1 = $templateB->fill_in(BROKEN => \&my_broken, BROKEN_ARG => 'barg', SAFE => new Safe, ); @@ -158,3 +158,4 @@ $n++; exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/05-safe2.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/05-safe2.t index 71f242592f99..03534770f175 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/05-safe2.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/05-safe2.t @@ -96,7 +96,10 @@ print +($Q::H eq 'good7' ? '' : 'not '), "ok $n\n"; $Q::H = $Q::H; $n++; -# (12) +# (12) print +($Q2::H eq 'good8' ? '' : 'not '), "ok $n\n"; $Q2::H = $Q2::H; $n++; + + + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/06-ofh.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/06-ofh.t index 22d4a1c841e4..6865ad194531 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/06-ofh.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/06-ofh.t @@ -36,3 +36,4 @@ print +($t eq "My process ID is $$" ? '' : 'not '), "ok $n\n"; $n++; exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/07-safe3.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/07-safe3.t index 8baaf7ad4449..5f438f61480e 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/07-safe3.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/07-safe3.t @@ -88,3 +88,4 @@ $n++; } exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/08-exported.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/08-exported.t index 6014400840a7..ef9cfafdeeed 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/08-exported.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/08-exported.t @@ -14,7 +14,7 @@ Aborting" print "1..6\n"; $n=1; -$Q::n = $Q::n = 119; +$Q::n = $Q::n = 119; # (1) Test fill_in_string $out = fill_in_string('The value of $n is {$n}.', PACKAGE => 'Q' ); @@ -26,7 +26,7 @@ $TEMPFILE = "tt$$"; open F, "> $TEMPFILE" or die "Couldn't open test file: $!; aborting"; print F 'The value of $n is {$n}.', "\n"; close F or die "Couldn't write test file: $!; aborting"; -$R::n = $R::n = 8128; +$R::n = $R::n = 8128; $out = fill_in_file($TEMPFILE, PACKAGE => 'R'); print +($out eq "The value of \$n is 8128.\n" ? '' : 'not '), "ok $n\n"; @@ -42,7 +42,7 @@ print +($out eq "With a message here? It is good!\n" ? '' : 'not '), "ok $n\n"; $n++; # (4) It probably occurs in fill_this_in also: -$out = +$out = Text::Template->fill_this_in("With a message here? [% \$var %]\n", DELIMITERS => ['[%', '%]'], HASH => { "var" => \"It is good!" }); @@ -50,7 +50,7 @@ print +($out eq "With a message here? It is good!\n" ? '' : 'not '), "ok $n\n"; $n++; # (5) This test failed in 1.25. It was supplied by Donald L. Greer Jr. -# Note that it's different from (1) in that there's no explicit +# Note that it's different from (1) in that there's no explicit # package=> argument. use vars qw($string $foo $r); $string='Hello {$foo}'; @@ -72,3 +72,4 @@ package main; END { $TEMPFILE && unlink $TEMPFILE } exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/09-error.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/09-error.t index c9d03f27f873..40f9fac6cbc8 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/09-error.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/09-error.t @@ -49,14 +49,15 @@ if ($@ =~ /^\QIllegal value `WLUNCH' for TYPE parameter/) { $n++; # (4-5) File does not exist -my $o = Text::Template->new(TYPE => 'file', +my $o = Text::Template->new(TYPE => 'file', SOURCE => 'this file does not exist'); print $o ? "not ok $n\n" : "ok $n\n"; $n++; -print defined($Text::Template::ERROR) +print defined($Text::Template::ERROR) && $Text::Template::ERROR =~ /^Couldn't open file/ ? "ok $n\n" : "not ok $n\n"; $n++; exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/10-delimiters.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/10-delimiters.t index 4b32ce041154..f74d591cc755 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/10-delimiters.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/10-delimiters.t @@ -19,7 +19,7 @@ $n = 1; $V = $V = 119; $template = q{The value of $V is <<$V>>.}; $result = q{The value of $V is 119.}; -$template1 = Text::Template->new(TYPE => STRING, +$template1 = Text::Template->new(TYPE => STRING, SOURCE => $template, DELIMITERS => ['<<', '>>'] ) @@ -37,7 +37,7 @@ $n++; # (3) Now we'll try using regex metacharacters # First with the delimiters specified at object creation time $template = q{The value of $V is [$V].}; -$template1 = Text::Template->new(TYPE => STRING, +$template1 = Text::Template->new(TYPE => STRING, SOURCE => $template, DELIMITERS => ['[', ']'] ) @@ -63,10 +63,10 @@ my @tests = ('{""}' => '', # (5) '{"}"}' => undef, '{"\\}"}' => undef, # One backslash '{"\\\\}"}' => undef, # Two backslashes - '{"\\\\\\}"}' => undef, # Three backslashes + '{"\\\\\\}"}' => undef, # Three backslashes '{"\\\\\\\\}"}' => undef, # Four backslashes (10) '{"\\\\\\\\\\}"}' => undef, # Five backslashes - + # Backslashes are always passed directly to Perl '{"x20"}' => 'x20', '{"\\x20"}' => ' ', # One backslash @@ -96,3 +96,4 @@ for ($i=0; $i<@tests; $i+=2) { exit; + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/11-prepend.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/11-prepend.t index 833a5fa4449c..fe242e5898a2 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/11-prepend.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/11-prepend.t @@ -22,11 +22,11 @@ my $tin = q{The value of $foo is: {$foo}}; Text::Template->always_prepend(q{$foo = "global"}); $tmpl1 = Text::Template->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, ); $tmpl2 = Text::Template->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, PREPEND => q{$foo = "template"}, ); @@ -46,11 +46,11 @@ print "ok $n\n"; $n++; Emptyclass1->always_prepend(q{$foo = 'Emptyclass global';}); $tmpl1 = Emptyclass1->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, ); $tmpl2 = Emptyclass1->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, PREPEND => q{$foo = "template"}, ); @@ -69,11 +69,11 @@ print "ok $n\n"; $n++; print "ok $n\n"; $n++; $tmpl1 = Emptyclass2->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, ); $tmpl2 = Emptyclass2->new(TYPE => 'STRING', - SOURCE => $tin, + SOURCE => $tin, PREPEND => q{$foo = "template"}, ); @@ -90,3 +90,5 @@ print "ok $n\n"; $n++; print "ok $n\n"; $n++; ($t3 eq 'The value of $foo is: fillin') or print "not "; print "ok $n\n"; $n++; + + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/12-preprocess.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/12-preprocess.t index 422b10ec9aec..60b6b0c65beb 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/12-preprocess.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/12-preprocess.t @@ -32,16 +32,16 @@ for my $trial (1, 0) { for my $test (0 .. 3) { my $tmpl; if ($trial == 0) { - $tmpl = new Text::Template::Preprocess + $tmpl = new Text::Template::Preprocess (TYPE => 'STRING', SOURCE => $t) or die; } else { open TF, "< $TMPFILE" or die "Couldn't open test file: $!; aborting"; - $tmpl = new Text::Template::Preprocess + $tmpl = new Text::Template::Preprocess (TYPE => 'FILEHANDLE', SOURCE => \*TF) or die; } $tmpl->preprocessor($py) if ($test & 1) == 1; my @args = ((($test & 2) == 2) ? (PREPROCESSOR => $pz) : ()); - my $o = $tmpl->fill_in(@args, + my $o = $tmpl->fill_in(@args, HASH => {x => 119, 'y' => 23, z => 5}); # print STDERR "$o/$result[$test]\n"; print +(($o eq $result[$test]) ? '' : 'not '), "ok $n\n"; diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/13-taint.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/13-taint.t index 30664993ac36..d92a37463ab3 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/13-taint.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/13-taint.t @@ -58,14 +58,14 @@ sub should_be_tainted { if (Text::Template::_is_clean($_[0])) { print "not ok $n\n"; $n++; return; } - print "ok $n\n"; $n++; return; + print "ok $n\n"; $n++; return; } sub should_be_clean { unless (Text::Template::_is_clean($_[0])) { print "not ok $n\n"; $n++; return; } - print "ok $n\n"; $n++; return; + print "ok $n\n"; $n++; return; } # Tainted filename should die with and without UNTAINT option @@ -116,3 +116,4 @@ Text::Template::_unconditionally_untaint($tfile); should_be_clean($tfile); END { unlink $file } + diff --git a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/14-broken.t b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/14-broken.t index db88a0711f19..d362395cfbc7 100644 --- a/deps/openssl/openssl/external/perl/Text-Template-1.46/t/14-broken.t +++ b/deps/openssl/openssl/external/perl/Text-Template-1.46/t/14-broken.t @@ -68,7 +68,7 @@ Aborting" # (5) BROKEN sub passed correct args when called in ->fill_in? { my $r = Text::Template->new(TYPE => 'string', SOURCE => '{1/0}', - )->fill_in(BROKEN => + )->fill_in(BROKEN => sub { my %a = @_; qq{$a{lineno},$a{error},$a{text}} }); @@ -79,3 +79,4 @@ Aborting" } $n++; } + diff --git a/deps/openssl/openssl/external/perl/transfer/Text/Template.pm b/deps/openssl/openssl/external/perl/transfer/Text/Template.pm index 7dbfe3f84f4d..b21f875312b5 100644 --- a/deps/openssl/openssl/external/perl/transfer/Text/Template.pm +++ b/deps/openssl/openssl/external/perl/transfer/Text/Template.pm @@ -1,4 +1,4 @@ -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -7,6 +7,9 @@ # Quick transfer to the downloaded Text::Template +package transfer::Text::Template; +$VERSION = 1.46; + BEGIN { use File::Spec::Functions; use File::Basename; diff --git a/deps/openssl/openssl/fuzz/test-corpus.c b/deps/openssl/openssl/fuzz/test-corpus.c index c553697d6c78..628e633536d3 100644 --- a/deps/openssl/openssl/fuzz/test-corpus.c +++ b/deps/openssl/openssl/fuzz/test-corpus.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL licenses, (the "License"); * you may not use this file except in compliance with the License. @@ -16,31 +16,86 @@ #include #include +#include #include #include #include "fuzzer.h" +#include "internal/o_dir.h" -int main(int argc, char **argv) { - int n; +#if defined(_WIN32) && defined(_MAX_PATH) +# define PATH_MAX _MAX_PATH +#endif - FuzzerInitialize(&argc, &argv); +#ifndef PATH_MAX +# define PATH_MAX 4096 +#endif - for (n = 1; n < argc; ++n) { - struct stat st; - FILE *f; - unsigned char *buf; - size_t s; - - stat(argv[n], &st); - f = fopen(argv[n], "rb"); - if (f == NULL) - continue; - buf = malloc(st.st_size); +# if !defined(S_ISREG) +# define S_ISREG(m) ((m) & S_IFREG) +# endif + +static void testfile(const char *pathname) +{ + struct stat st; + FILE *f; + unsigned char *buf; + size_t s; + + if (stat(pathname, &st) < 0 || !S_ISREG(st.st_mode)) + return; + printf("# %s\n", pathname); + fflush(stdout); + f = fopen(pathname, "rb"); + if (f == NULL) + return; + buf = malloc(st.st_size); + if (buf != NULL) { s = fread(buf, 1, st.st_size, f); OPENSSL_assert(s == (size_t)st.st_size); FuzzerTestOneInput(buf, s); free(buf); - fclose(f); + } + fclose(f); +} + +int main(int argc, char **argv) { + int n; + + FuzzerInitialize(&argc, &argv); + + for (n = 1; n < argc; ++n) { + size_t dirname_len = strlen(argv[n]); + const char *filename = NULL; + char *pathname = NULL; + OPENSSL_DIR_CTX *ctx = NULL; + int wasdir = 0; + + /* + * We start with trying to read the given path as a directory. + */ + while ((filename = OPENSSL_DIR_read(&ctx, argv[n])) != NULL) { + wasdir = 1; + if (pathname == NULL) { + pathname = malloc(PATH_MAX); + if (pathname == NULL) + break; + strcpy(pathname, argv[n]); +#ifdef __VMS + if (strchr(":<]", pathname[dirname_len - 1]) == NULL) +#endif + pathname[dirname_len++] = '/'; + pathname[dirname_len] = '\0'; + } + strcpy(pathname + dirname_len, filename); + testfile(pathname); + } + OPENSSL_DIR_end(&ctx); + + /* If it wasn't a directory, treat it as a file instead */ + if (!wasdir) + testfile(argv[n]); + + free(pathname); } return 0; } diff --git a/deps/openssl/openssl/include/internal/__DECC_INCLUDE_EPILOGUE.H b/deps/openssl/openssl/include/internal/__DECC_INCLUDE_EPILOGUE.H new file mode 100644 index 000000000000..5f63860808b6 --- /dev/null +++ b/deps/openssl/openssl/include/internal/__DECC_INCLUDE_EPILOGUE.H @@ -0,0 +1,16 @@ +/* + * 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 + */ + +/* + * This file is only used by HP C on VMS, and is included automatically + * after each header file from this directory + */ + +/* restore state. Must correspond to the save in __decc_include_prologue.h */ +#pragma names restore diff --git a/deps/openssl/openssl/include/internal/__DECC_INCLUDE_PROLOGUE.H b/deps/openssl/openssl/include/internal/__DECC_INCLUDE_PROLOGUE.H new file mode 100644 index 000000000000..78b2a87d8868 --- /dev/null +++ b/deps/openssl/openssl/include/internal/__DECC_INCLUDE_PROLOGUE.H @@ -0,0 +1,20 @@ +/* + * 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 + */ + +/* + * This file is only used by HP C on VMS, and is included automatically + * after each header file from this directory + */ + +/* save state */ +#pragma names save +/* have the compiler shorten symbols larger than 31 chars to 23 chars + * followed by a 8 hex char CRC + */ +#pragma names as_is,shortened diff --git a/deps/openssl/openssl/include/internal/numbers.h b/deps/openssl/openssl/include/internal/numbers.h index cf2c30eebbc4..31931df3c2ff 100644 --- a/deps/openssl/openssl/include/internal/numbers.h +++ b/deps/openssl/openssl/include/internal/numbers.h @@ -65,3 +65,4 @@ # endif #endif + diff --git a/deps/openssl/openssl/include/internal/sslconf.h b/deps/openssl/openssl/include/internal/sslconf.h new file mode 100644 index 000000000000..d538f8614f58 --- /dev/null +++ b/deps/openssl/openssl/include/internal/sslconf.h @@ -0,0 +1,20 @@ +/* + * Copyright 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 + */ + +#ifndef HEADER_SSLCONF_H +# define HEADER_SSLCONF_H + +typedef struct ssl_conf_cmd_st SSL_CONF_CMD; + +const SSL_CONF_CMD *conf_ssl_get(size_t idx, const char **name, size_t *cnt); +int conf_ssl_name_find(const char *name, size_t *idx); +void conf_ssl_get_cmd(const SSL_CONF_CMD *cmd, size_t idx, char **cmdstr, + char **arg); + +#endif diff --git a/deps/openssl/openssl/include/openssl/asn1.h b/deps/openssl/openssl/include/openssl/asn1.h index 05ae1dbe1c23..d0b1099a4faf 100644 --- a/deps/openssl/openssl/include/openssl/asn1.h +++ b/deps/openssl/openssl/include/openssl/asn1.h @@ -953,8 +953,10 @@ int ERR_load_ASN1_strings(void); # define ASN1_F_D2I_AUTOPRIVATEKEY 207 # define ASN1_F_D2I_PRIVATEKEY 154 # define ASN1_F_D2I_PUBLICKEY 155 +# define ASN1_F_DO_BUF 142 # define ASN1_F_DO_TCREATE 222 # define ASN1_F_I2D_ASN1_BIO_STREAM 211 +# define ASN1_F_I2D_ASN1_OBJECT 143 # define ASN1_F_I2D_DSA_PUBKEY 161 # define ASN1_F_I2D_EC_PUBKEY 181 # define ASN1_F_I2D_PRIVATEKEY 163 diff --git a/deps/openssl/openssl/include/openssl/bio.h b/deps/openssl/openssl/include/openssl/bio.h index f435bd8ef6db..3a72862561fa 100644 --- a/deps/openssl/openssl/include/openssl/bio.h +++ b/deps/openssl/openssl/include/openssl/bio.h @@ -730,26 +730,26 @@ __bio_h__attr__((__format__(__printf__, 3, 0))); BIO_METHOD *BIO_meth_new(int type, const char *name); void BIO_meth_free(BIO_METHOD *biom); -int (*BIO_meth_get_write(BIO_METHOD *biom)) (BIO *, const char *, int); +int (*BIO_meth_get_write(const BIO_METHOD *biom)) (BIO *, const char *, int); int BIO_meth_set_write(BIO_METHOD *biom, int (*write) (BIO *, const char *, int)); -int (*BIO_meth_get_read(BIO_METHOD *biom)) (BIO *, char *, int); +int (*BIO_meth_get_read(const BIO_METHOD *biom)) (BIO *, char *, int); int BIO_meth_set_read(BIO_METHOD *biom, int (*read) (BIO *, char *, int)); -int (*BIO_meth_get_puts(BIO_METHOD *biom)) (BIO *, const char *); +int (*BIO_meth_get_puts(const BIO_METHOD *biom)) (BIO *, const char *); int BIO_meth_set_puts(BIO_METHOD *biom, int (*puts) (BIO *, const char *)); -int (*BIO_meth_get_gets(BIO_METHOD *biom)) (BIO *, char *, int); +int (*BIO_meth_get_gets(const BIO_METHOD *biom)) (BIO *, char *, int); int BIO_meth_set_gets(BIO_METHOD *biom, int (*gets) (BIO *, char *, int)); -long (*BIO_meth_get_ctrl(BIO_METHOD *biom)) (BIO *, int, long, void *); +long (*BIO_meth_get_ctrl(const BIO_METHOD *biom)) (BIO *, int, long, void *); int BIO_meth_set_ctrl(BIO_METHOD *biom, long (*ctrl) (BIO *, int, long, void *)); -int (*BIO_meth_get_create(BIO_METHOD *bion)) (BIO *); +int (*BIO_meth_get_create(const BIO_METHOD *bion)) (BIO *); int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)); -int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *); +int (*BIO_meth_get_destroy(const BIO_METHOD *biom)) (BIO *); int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)); -long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) +long (*BIO_meth_get_callback_ctrl(const BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *); int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, long (*callback_ctrl) (BIO *, int, diff --git a/deps/openssl/openssl/include/openssl/bn.h b/deps/openssl/openssl/include/openssl/bn.h index 54ae760152f1..301edd525062 100644 --- a/deps/openssl/openssl/include/openssl/bn.h +++ b/deps/openssl/openssl/include/openssl/bn.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -119,25 +119,76 @@ void *BN_GENCB_get_arg(BN_GENCB *cb); * on the size of the number */ /* - * number of Miller-Rabin iterations for an error rate of less than 2^-80 for - * random 'b'-bit input, b >= 100 (taken from table 4.4 in the Handbook of - * Applied Cryptography [Menezes, van Oorschot, Vanstone; CRC Press 1996]; - * original paper: Damgaard, Landrock, Pomerance: Average case error - * estimates for the strong probable prime test. -- Math. Comp. 61 (1993) - * 177-194) + * BN_prime_checks_for_size() returns the number of Miller-Rabin iterations + * that will be done for checking that a random number is probably prime. The + * error rate for accepting a composite number as prime depends on the size of + * the prime |b|. The error rates used are for calculating an RSA key with 2 primes, + * and so the level is what you would expect for a key of double the size of the + * prime. + * + * This table is generated using the algorithm of FIPS PUB 186-4 + * Digital Signature Standard (DSS), section F.1, page 117. + * (https://dx.doi.org/10.6028/NIST.FIPS.186-4) + * + * The following magma script was used to generate the output: + * securitybits:=125; + * k:=1024; + * for t:=1 to 65 do + * for M:=3 to Floor(2*Sqrt(k-1)-1) do + * S:=0; + * // Sum over m + * for m:=3 to M do + * s:=0; + * // Sum over j + * for j:=2 to m do + * s+:=(RealField(32)!2)^-(j+(k-1)/j); + * end for; + * S+:=2^(m-(m-1)*t)*s; + * end for; + * A:=2^(k-2-M*t); + * B:=8*(Pi(RealField(32))^2-6)/3*2^(k-2)*S; + * pkt:=2.00743*Log(2)*k*2^-k*(A+B); + * seclevel:=Floor(-Log(2,pkt)); + * if seclevel ge securitybits then + * printf "k: %5o, security: %o bits (t: %o, M: %o)\n",k,seclevel,t,M; + * break; + * end if; + * end for; + * if seclevel ge securitybits then break; end if; + * end for; + * + * It can be run online at: + * http://magma.maths.usyd.edu.au/calc + * + * And will output: + * k: 1024, security: 129 bits (t: 6, M: 23) + * + * k is the number of bits of the prime, securitybits is the level we want to + * reach. + * + * prime length | RSA key size | # MR tests | security level + * -------------+--------------|------------+--------------- + * (b) >= 6394 | >= 12788 | 3 | 256 bit + * (b) >= 3747 | >= 7494 | 3 | 192 bit + * (b) >= 1345 | >= 2690 | 4 | 128 bit + * (b) >= 1080 | >= 2160 | 5 | 128 bit + * (b) >= 852 | >= 1704 | 5 | 112 bit + * (b) >= 476 | >= 952 | 5 | 80 bit + * (b) >= 400 | >= 800 | 6 | 80 bit + * (b) >= 347 | >= 694 | 7 | 80 bit + * (b) >= 308 | >= 616 | 8 | 80 bit + * (b) >= 55 | >= 110 | 27 | 64 bit + * (b) >= 6 | >= 12 | 34 | 64 bit */ -# define BN_prime_checks_for_size(b) ((b) >= 1300 ? 2 : \ - (b) >= 850 ? 3 : \ - (b) >= 650 ? 4 : \ - (b) >= 550 ? 5 : \ - (b) >= 450 ? 6 : \ - (b) >= 400 ? 7 : \ - (b) >= 350 ? 8 : \ - (b) >= 300 ? 9 : \ - (b) >= 250 ? 12 : \ - (b) >= 200 ? 15 : \ - (b) >= 150 ? 18 : \ - /* b >= 100 */ 27) + +# define BN_prime_checks_for_size(b) ((b) >= 3747 ? 3 : \ + (b) >= 1345 ? 4 : \ + (b) >= 476 ? 5 : \ + (b) >= 400 ? 6 : \ + (b) >= 347 ? 7 : \ + (b) >= 308 ? 8 : \ + (b) >= 55 ? 27 : \ + /* b >= 6 */ 34) # define BN_num_bytes(a) ((BN_num_bits(a)+7)/8) diff --git a/deps/openssl/openssl/include/openssl/conf.h b/deps/openssl/openssl/include/openssl/conf.h index 980a51b157f4..e0539e312884 100644 --- a/deps/openssl/openssl/include/openssl/conf.h +++ b/deps/openssl/openssl/include/openssl/conf.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -191,6 +191,7 @@ int ERR_load_CONF_strings(void); # define CONF_F_NCONF_LOAD_BIO 110 # define CONF_F_NCONF_LOAD_FP 114 # define CONF_F_NCONF_NEW 111 +# define CONF_F_SSL_MODULE_INIT 123 # define CONF_F_STR_COPY 101 /* Reason codes. */ @@ -206,6 +207,10 @@ int ERR_load_CONF_strings(void); # define CONF_R_NO_SECTION 107 # define CONF_R_NO_SUCH_FILE 114 # define CONF_R_NO_VALUE 108 +# define CONF_R_SSL_COMMAND_SECTION_EMPTY 117 +# define CONF_R_SSL_COMMAND_SECTION_NOT_FOUND 118 +# define CONF_R_SSL_SECTION_EMPTY 119 +# define CONF_R_SSL_SECTION_NOT_FOUND 120 # define CONF_R_UNABLE_TO_CREATE_NEW_SECTION 103 # define CONF_R_UNKNOWN_MODULE_NAME 113 # define CONF_R_VARIABLE_EXPANSION_TOO_LONG 116 diff --git a/deps/openssl/openssl/include/openssl/crypto.h b/deps/openssl/openssl/include/openssl/crypto.h index 1ba7f25f0123..fa3f12af3b23 100644 --- a/deps/openssl/openssl/include/openssl/crypto.h +++ b/deps/openssl/openssl/include/openssl/crypto.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -371,7 +371,9 @@ int CRYPTO_memcmp(const volatile void * volatile in_a, # define OPENSSL_INIT_ENGINE_CAPI 0x00002000L # define OPENSSL_INIT_ENGINE_PADLOCK 0x00004000L # define OPENSSL_INIT_ENGINE_AFALG 0x00008000L -/* OPENSSL_INIT flag 0x00010000 reserved for internal use */ +/* OPENSSL_INIT_ZLIB 0x00010000L */ +/* currently unused 0x00020000L */ +/* OPENSSL_INIT_BASE_ONLY 0x00040000L */ /* OPENSSL_INIT flag range 0xfff00000 reserved for OPENSSL_init_ssl() */ /* Max OPENSSL_INIT flag value is 0x80000000 */ diff --git a/deps/openssl/openssl/include/openssl/dh.h b/deps/openssl/openssl/include/openssl/dh.h index fbd479039e9e..8cf879e14fad 100644 --- a/deps/openssl/openssl/include/openssl/dh.h +++ b/deps/openssl/openssl/include/openssl/dh.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -187,7 +187,7 @@ void DH_meth_free(DH_METHOD *dhm); DH_METHOD *DH_meth_dup(const DH_METHOD *dhm); const char *DH_meth_get0_name(const DH_METHOD *dhm); int DH_meth_set1_name(DH_METHOD *dhm, const char *name); -int DH_meth_get_flags(DH_METHOD *dhm); +int DH_meth_get_flags(const DH_METHOD *dhm); int DH_meth_set_flags(DH_METHOD *dhm, int flags); void *DH_meth_get0_app_data(const DH_METHOD *dhm); int DH_meth_set0_app_data(DH_METHOD *dhm, void *app_data); diff --git a/deps/openssl/openssl/include/openssl/dsa.h b/deps/openssl/openssl/include/openssl/dsa.h index 139718edb940..3a7b1a626e19 100644 --- a/deps/openssl/openssl/include/openssl/dsa.h +++ b/deps/openssl/openssl/include/openssl/dsa.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -146,10 +146,12 @@ int DSAparams_print_fp(FILE *fp, const DSA *x); int DSA_print_fp(FILE *bp, const DSA *x, int off); # endif -# define DSS_prime_checks 50 +# define DSS_prime_checks 64 /* - * Primality test according to FIPS PUB 186[-1], Appendix 2.1: 50 rounds of - * Rabin-Miller + * Primality test according to FIPS PUB 186-4, Appendix C.3. Since we only + * have one value here we set the number of checks to 64 which is the 128 bit + * security level that is the highest level and valid for creating a 3072 bit + * DSA key. */ # define DSA_is_prime(n, callback, cb_arg) \ BN_is_prime(n, DSS_prime_checks, callback, NULL, cb_arg) @@ -186,7 +188,7 @@ void DSA_meth_free(DSA_METHOD *dsam); DSA_METHOD *DSA_meth_dup(const DSA_METHOD *dsam); const char *DSA_meth_get0_name(const DSA_METHOD *dsam); int DSA_meth_set1_name(DSA_METHOD *dsam, const char *name); -int DSA_meth_get_flags(DSA_METHOD *dsam); +int DSA_meth_get_flags(const DSA_METHOD *dsam); int DSA_meth_set_flags(DSA_METHOD *dsam, int flags); void *DSA_meth_get0_app_data(const DSA_METHOD *dsam); int DSA_meth_set0_app_data(DSA_METHOD *dsam, void *app_data); @@ -260,6 +262,7 @@ int ERR_load_DSA_strings(void); # define DSA_F_DSA_SIG_NEW 102 # define DSA_F_OLD_DSA_PRIV_DECODE 122 # define DSA_F_PKEY_DSA_CTRL 120 +# define DSA_F_PKEY_DSA_CTRL_STR 104 # define DSA_F_PKEY_DSA_KEYGEN 121 /* Reason codes. */ diff --git a/deps/openssl/openssl/include/openssl/evp.h b/deps/openssl/openssl/include/openssl/evp.h index 43c97a7560fb..36e2934485aa 100644 --- a/deps/openssl/openssl/include/openssl/evp.h +++ b/deps/openssl/openssl/include/openssl/evp.h @@ -1351,34 +1351,34 @@ void EVP_PKEY_meth_set_ctrl(EVP_PKEY_METHOD *pmeth, const char *type, const char *value)); -void EVP_PKEY_meth_get_init(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_init(const EVP_PKEY_METHOD *pmeth, int (**pinit) (EVP_PKEY_CTX *ctx)); -void EVP_PKEY_meth_get_copy(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_copy(const EVP_PKEY_METHOD *pmeth, int (**pcopy) (EVP_PKEY_CTX *dst, EVP_PKEY_CTX *src)); -void EVP_PKEY_meth_get_cleanup(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_cleanup(const EVP_PKEY_METHOD *pmeth, void (**pcleanup) (EVP_PKEY_CTX *ctx)); -void EVP_PKEY_meth_get_paramgen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_paramgen(const EVP_PKEY_METHOD *pmeth, int (**pparamgen_init) (EVP_PKEY_CTX *ctx), int (**pparamgen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_keygen(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_keygen(const EVP_PKEY_METHOD *pmeth, int (**pkeygen_init) (EVP_PKEY_CTX *ctx), int (**pkeygen) (EVP_PKEY_CTX *ctx, EVP_PKEY *pkey)); -void EVP_PKEY_meth_get_sign(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_sign(const EVP_PKEY_METHOD *pmeth, int (**psign_init) (EVP_PKEY_CTX *ctx), int (**psign) (EVP_PKEY_CTX *ctx, unsigned char *sig, size_t *siglen, const unsigned char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify(const EVP_PKEY_METHOD *pmeth, int (**pverify_init) (EVP_PKEY_CTX *ctx), int (**pverify) (EVP_PKEY_CTX *ctx, const unsigned char *sig, @@ -1386,7 +1386,7 @@ void EVP_PKEY_meth_get_verify(EVP_PKEY_METHOD *pmeth, const unsigned char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verify_recover(const EVP_PKEY_METHOD *pmeth, int (**pverify_recover_init) (EVP_PKEY_CTX *ctx), int (**pverify_recover) (EVP_PKEY_CTX @@ -1398,7 +1398,7 @@ void EVP_PKEY_meth_get_verify_recover(EVP_PKEY_METHOD *pmeth, char *tbs, size_t tbslen)); -void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_signctx(const EVP_PKEY_METHOD *pmeth, int (**psignctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**psignctx) (EVP_PKEY_CTX *ctx, @@ -1406,7 +1406,7 @@ void EVP_PKEY_meth_get_signctx(EVP_PKEY_METHOD *pmeth, size_t *siglen, EVP_MD_CTX *mctx)); -void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_verifyctx(const EVP_PKEY_METHOD *pmeth, int (**pverifyctx_init) (EVP_PKEY_CTX *ctx, EVP_MD_CTX *mctx), int (**pverifyctx) (EVP_PKEY_CTX *ctx, @@ -1414,7 +1414,7 @@ void EVP_PKEY_meth_get_verifyctx(EVP_PKEY_METHOD *pmeth, int siglen, EVP_MD_CTX *mctx)); -void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_encrypt(const EVP_PKEY_METHOD *pmeth, int (**pencrypt_init) (EVP_PKEY_CTX *ctx), int (**pencryptfn) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -1422,7 +1422,7 @@ void EVP_PKEY_meth_get_encrypt(EVP_PKEY_METHOD *pmeth, const unsigned char *in, size_t inlen)); -void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_decrypt(const EVP_PKEY_METHOD *pmeth, int (**pdecrypt_init) (EVP_PKEY_CTX *ctx), int (**pdecrypt) (EVP_PKEY_CTX *ctx, unsigned char *out, @@ -1430,13 +1430,13 @@ void EVP_PKEY_meth_get_decrypt(EVP_PKEY_METHOD *pmeth, const unsigned char *in, size_t inlen)); -void EVP_PKEY_meth_get_derive(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_derive(const EVP_PKEY_METHOD *pmeth, int (**pderive_init) (EVP_PKEY_CTX *ctx), int (**pderive) (EVP_PKEY_CTX *ctx, unsigned char *key, size_t *keylen)); -void EVP_PKEY_meth_get_ctrl(EVP_PKEY_METHOD *pmeth, +void EVP_PKEY_meth_get_ctrl(const EVP_PKEY_METHOD *pmeth, int (**pctrl) (EVP_PKEY_CTX *ctx, int type, int p1, void *p2), int (**pctrl_str) (EVP_PKEY_CTX *ctx, @@ -1506,6 +1506,8 @@ int ERR_load_EVP_strings(void); # define EVP_F_EVP_PKEY_GET0_RSA 121 # define EVP_F_EVP_PKEY_KEYGEN 146 # define EVP_F_EVP_PKEY_KEYGEN_INIT 147 +# define EVP_F_EVP_PKEY_METH_ADD0 172 +# define EVP_F_EVP_PKEY_METH_NEW 173 # define EVP_F_EVP_PKEY_NEW 106 # define EVP_F_EVP_PKEY_PARAMGEN 148 # define EVP_F_EVP_PKEY_PARAMGEN_INIT 149 @@ -1570,6 +1572,7 @@ int ERR_load_EVP_strings(void); # define EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE 150 # define EVP_R_OPERATON_NOT_INITIALIZED 151 # define EVP_R_PARTIALLY_OVERLAPPING 162 +# define EVP_R_PBKDF2_ERROR 176 # define EVP_R_PKEY_APPLICATION_ASN1_METHOD_ALREADY_REGISTERED 175 # define EVP_R_PKEY_ASN1_METHOD_ALREADY_REGISTERED 164 # define EVP_R_PRIVATE_KEY_DECODE_ERROR 145 diff --git a/deps/openssl/openssl/include/openssl/lhash.h b/deps/openssl/openssl/include/openssl/lhash.h index 82d40c1e0e70..8ecc58848420 100644 --- a/deps/openssl/openssl/include/openssl/lhash.h +++ b/deps/openssl/openssl/include/openssl/lhash.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -95,7 +95,7 @@ void OPENSSL_LH_node_usage_stats_bio(const OPENSSL_LHASH *lh, BIO *out); # define _LHASH OPENSSL_LHASH # define LHASH_NODE OPENSSL_LH_NODE # define lh_error OPENSSL_LH_error -# define lh_new OPENSSL_lh_new +# define lh_new OPENSSL_LH_new # define lh_free OPENSSL_LH_free # define lh_insert OPENSSL_LH_insert # define lh_delete OPENSSL_LH_delete diff --git a/deps/openssl/openssl/include/openssl/opensslconf.h.in b/deps/openssl/openssl/include/openssl/opensslconf.h.in index 9f8634a3a28e..17807fb6bd37 100644 --- a/deps/openssl/openssl/include/openssl/opensslconf.h.in +++ b/deps/openssl/openssl/include/openssl/opensslconf.h.in @@ -68,12 +68,18 @@ extern "C" { * 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; +#ifndef DECLARE_DEPRECATED +# if defined(OPENSSL_NO_DEPRECATED) +# define DECLARE_DEPRECATED(f) +# else +# define DECLARE_DEPRECATED(f) f; +# ifdef __GNUC__ +# if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) +# undef DECLARE_DEPRECATED +# define DECLARE_DEPRECATED(f) f __attribute__ ((deprecated)); +# endif +# endif +# endif #endif #ifndef OPENSSL_FILE diff --git a/deps/openssl/openssl/include/openssl/opensslv.h b/deps/openssl/openssl/include/openssl/opensslv.h index 4fb437f2ee3e..c5ef2a753564 100644 --- a/deps/openssl/openssl/include/openssl/opensslv.h +++ b/deps/openssl/openssl/include/openssl/opensslv.h @@ -39,18 +39,13 @@ extern "C" { * (Prior to 0.9.5a beta1, a different scheme was used: MMNNFFRBB for * major minor fix final patch/beta) */ -# define OPENSSL_VERSION_NUMBER 0x1010008fL +# define OPENSSL_VERSION_NUMBER 0x1010009fL # ifdef OPENSSL_FIPS -# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0h-fips 27 Mar 2018" +# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0i-fips 14 Aug 2018" # else -# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0h 27 Mar 2018" +# define OPENSSL_VERSION_TEXT "OpenSSL 1.1.0i 14 Aug 2018" # endif -#define OPENSSL_MAKE_VERSION(maj,min,fix,patch) ((0x10000000L)+((maj&0xff)<<20)+((min&0xff)<<12)+((fix&0xff)<<4)+patch) - -/* use this for #if tests, should never depend upon fix/patch */ -#define OPENSSL_VERSION_AT_LEAST(maj,min) (OPENSSL_MAKE_VERSION(maj,min, 0, 0) >= OPENSSL_VERSION_NUMBER) - /*- * The macros below are to be used for shared library (.so, .dll, ...) * versioning. That kind of versioning works a bit differently between diff --git a/deps/openssl/openssl/include/openssl/pem.h b/deps/openssl/openssl/include/openssl/pem.h index 2375d6355381..f7ce3c61f5fa 100644 --- a/deps/openssl/openssl/include/openssl/pem.h +++ b/deps/openssl/openssl/include/openssl/pem.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -322,7 +322,8 @@ int PEM_SignUpdate(EVP_MD_CTX *ctx, unsigned char *d, unsigned int cnt); int PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret, unsigned int *siglen, EVP_PKEY *pkey); -int PEM_def_callback(char *buf, int num, int w, void *key); +/* The default pem_password_cb that's used internally */ +int PEM_def_callback(char *buf, int num, int rwflag, void *userdata); void PEM_proc_type(char *buf, int type); void PEM_dek_info(char *buf, const char *type, int len, char *str); diff --git a/deps/openssl/openssl/include/openssl/rsa.h b/deps/openssl/openssl/include/openssl/rsa.h index d97d6e075aef..790831b94545 100644 --- a/deps/openssl/openssl/include/openssl/rsa.h +++ b/deps/openssl/openssl/include/openssl/rsa.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -374,7 +374,7 @@ void RSA_meth_free(RSA_METHOD *meth); RSA_METHOD *RSA_meth_dup(const RSA_METHOD *meth); const char *RSA_meth_get0_name(const RSA_METHOD *meth); int RSA_meth_set1_name(RSA_METHOD *meth, const char *name); -int RSA_meth_get_flags(RSA_METHOD *meth); +int RSA_meth_get_flags(const RSA_METHOD *meth); int RSA_meth_set_flags(RSA_METHOD *meth, int flags); void *RSA_meth_get0_app_data(const RSA_METHOD *meth); int RSA_meth_set0_app_data(RSA_METHOD *meth, void *app_data); diff --git a/deps/openssl/openssl/include/openssl/ssl.h b/deps/openssl/openssl/include/openssl/ssl.h index 1cb3462f4854..56e2056260d6 100644 --- a/deps/openssl/openssl/include/openssl/ssl.h +++ b/deps/openssl/openssl/include/openssl/ssl.h @@ -381,7 +381,7 @@ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx); # define SSL_OP_PKCS1_CHECK_1 0x0 /* Removed from OpenSSL 1.0.1. Was 0x10000000L */ # define SSL_OP_PKCS1_CHECK_2 0x0 -/* Removed from OpenSSL 1.1.0. Was 0x20000000L */ +/* Removed from OpenSSL 1.1.0. Was 0x20000000L */ # define SSL_OP_NETSCAPE_CA_DN_BUG 0x0 /* Removed from OpenSSL 1.1.0. Was 0x40000000L */ # define SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG 0x0 @@ -967,8 +967,8 @@ size_t SSL_get_peer_finished(const SSL *s, void *buf, size_t count); # define SSL_VERIFY_FAIL_IF_NO_PEER_CERT 0x02 # define SSL_VERIFY_CLIENT_ONCE 0x04 -# define OpenSSL_add_ssl_algorithms() SSL_library_init() # if OPENSSL_API_COMPAT < 0x10100000L +# define OpenSSL_add_ssl_algorithms() SSL_library_init() # define SSLeay_add_ssl_algorithms() SSL_library_init() # endif @@ -1358,7 +1358,7 @@ __owur int SSL_get_fd(const SSL *s); __owur int SSL_get_rfd(const SSL *s); __owur int SSL_get_wfd(const SSL *s); __owur const char *SSL_get_cipher_list(const SSL *s, int n); -__owur char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len); +__owur char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size); __owur int SSL_get_read_ahead(const SSL *s); __owur int SSL_pending(const SSL *s); __owur int SSL_has_pending(const SSL *s); diff --git a/deps/openssl/openssl/include/openssl/ssl3.h b/deps/openssl/openssl/include/openssl/ssl3.h index 4ca434e760ed..115940ad3157 100644 --- a/deps/openssl/openssl/include/openssl/ssl3.h +++ b/deps/openssl/openssl/include/openssl/ssl3.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -252,9 +252,15 @@ extern "C" { # define SSL3_CT_FORTEZZA_DMS 20 /* * SSL3_CT_NUMBER is used to size arrays and it must be large enough to - * contain all of the cert types defined either for SSLv3 and TLSv1. + * contain all of the cert types defined for *either* SSLv3 and TLSv1. */ -# define SSL3_CT_NUMBER 9 +# define SSL3_CT_NUMBER 10 + +# if defined(TLS_CT_NUMBER) +# if TLS_CT_NUMBER != SSL3_CT_NUMBER +# error "SSL/TLS CT_NUMBER values do not match" +# endif +# endif # define SSL3_FLAGS_NO_RENEGOTIATE_CIPHERS 0x0001 diff --git a/deps/openssl/openssl/include/openssl/tls1.h b/deps/openssl/openssl/include/openssl/tls1.h index 3fe01fe81383..732e87ab35c2 100644 --- a/deps/openssl/openssl/include/openssl/tls1.h +++ b/deps/openssl/openssl/include/openssl/tls1.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -883,7 +883,13 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb) * when correcting this number, correct also SSL3_CT_NUMBER in ssl3.h (see * comment there) */ -# define TLS_CT_NUMBER 9 +# define TLS_CT_NUMBER 10 + +# if defined(SSL3_CT_NUMBER) +# if TLS_CT_NUMBER != SSL3_CT_NUMBER +# error "SSL/TLS CT_NUMBER values do not match" +# endif +# endif # define TLS1_FINISH_MAC_LENGTH 12 diff --git a/deps/openssl/openssl/include/openssl/x509.h b/deps/openssl/openssl/include/openssl/x509.h index d23fad8e3596..780386d530ce 100644 --- a/deps/openssl/openssl/include/openssl/x509.h +++ b/deps/openssl/openssl/include/openssl/x509.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -805,7 +805,7 @@ X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_txt(X509_NAME_ENTRY **ne, const unsigned char *bytes, int len); X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_NID(X509_NAME_ENTRY **ne, int nid, - int type, + int type, const unsigned char *bytes, int len); int X509_NAME_add_entry_by_txt(X509_NAME *name, const char *field, int type, @@ -1055,6 +1055,7 @@ int ERR_load_X509_strings(void); # define X509_F_X509_LOAD_CERT_CRL_FILE 132 # define X509_F_X509_LOAD_CERT_FILE 111 # define X509_F_X509_LOAD_CRL_FILE 112 +# define X509_F_X509_LOOKUP_METH_NEW 160 # define X509_F_X509_NAME_ADD_ENTRY 113 # define X509_F_X509_NAME_ENTRY_CREATE_BY_NID 114 # define X509_F_X509_NAME_ENTRY_CREATE_BY_TXT 131 diff --git a/deps/openssl/openssl/include/openssl/x509_vfy.h b/deps/openssl/openssl/include/openssl/x509_vfy.h index 1aa0a33b8a32..d91581c77353 100644 --- a/deps/openssl/openssl/include/openssl/x509_vfy.h +++ b/deps/openssl/openssl/include/openssl/x509_vfy.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -257,7 +257,9 @@ X509_OBJECT *X509_OBJECT_new(void); void X509_OBJECT_free(X509_OBJECT *a); X509_LOOKUP_TYPE X509_OBJECT_get_type(const X509_OBJECT *a); X509 *X509_OBJECT_get0_X509(const X509_OBJECT *a); +int X509_OBJECT_set1_X509(X509_OBJECT *a, X509 *obj); X509_CRL *X509_OBJECT_get0_X509_CRL(X509_OBJECT *a); +int X509_OBJECT_set1_X509_CRL(X509_OBJECT *a, X509_CRL *obj); X509_STORE *X509_STORE_new(void); void X509_STORE_free(X509_STORE *v); int X509_STORE_lock(X509_STORE *ctx); @@ -364,6 +366,76 @@ X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m); X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void); X509_LOOKUP_METHOD *X509_LOOKUP_file(void); +typedef int (*X509_LOOKUP_ctrl_fn)(X509_LOOKUP *ctx, int cmd, const char *argc, + long argl, char **ret); +typedef int (*X509_LOOKUP_get_by_subject_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + X509_NAME *name, + X509_OBJECT *ret); +typedef int (*X509_LOOKUP_get_by_issuer_serial_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + X509_NAME *name, + ASN1_INTEGER *serial, + X509_OBJECT *ret); +typedef int (*X509_LOOKUP_get_by_fingerprint_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + const unsigned char* bytes, + int len, + X509_OBJECT *ret); +typedef int (*X509_LOOKUP_get_by_alias_fn)(X509_LOOKUP *ctx, + X509_LOOKUP_TYPE type, + const char *str, + int len, + X509_OBJECT *ret); + +X509_LOOKUP_METHOD *X509_LOOKUP_meth_new(const char *name); +void X509_LOOKUP_meth_free(X509_LOOKUP_METHOD *method); + +int X509_LOOKUP_meth_set_new_item(X509_LOOKUP_METHOD *method, + int (*new_item) (X509_LOOKUP *ctx)); +int (*X509_LOOKUP_meth_get_new_item(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + +int X509_LOOKUP_meth_set_free(X509_LOOKUP_METHOD *method, + void (*free) (X509_LOOKUP *ctx)); +void (*X509_LOOKUP_meth_get_free(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + +int X509_LOOKUP_meth_set_init(X509_LOOKUP_METHOD *method, + int (*init) (X509_LOOKUP *ctx)); +int (*X509_LOOKUP_meth_get_init(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + +int X509_LOOKUP_meth_set_shutdown(X509_LOOKUP_METHOD *method, + int (*shutdown) (X509_LOOKUP *ctx)); +int (*X509_LOOKUP_meth_get_shutdown(const X509_LOOKUP_METHOD* method)) + (X509_LOOKUP *ctx); + +int X509_LOOKUP_meth_set_ctrl(X509_LOOKUP_METHOD *method, + X509_LOOKUP_ctrl_fn ctrl_fn); +X509_LOOKUP_ctrl_fn X509_LOOKUP_meth_get_ctrl(const X509_LOOKUP_METHOD *method); + +int X509_LOOKUP_meth_set_get_by_subject(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_subject_fn fn); +X509_LOOKUP_get_by_subject_fn X509_LOOKUP_meth_get_get_by_subject( + const X509_LOOKUP_METHOD *method); + +int X509_LOOKUP_meth_set_get_by_issuer_serial(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_issuer_serial_fn fn); +X509_LOOKUP_get_by_issuer_serial_fn X509_LOOKUP_meth_get_get_by_issuer_serial( + const X509_LOOKUP_METHOD *method); + +int X509_LOOKUP_meth_set_get_by_fingerprint(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_fingerprint_fn fn); +X509_LOOKUP_get_by_fingerprint_fn X509_LOOKUP_meth_get_get_by_fingerprint( + const X509_LOOKUP_METHOD *method); + +int X509_LOOKUP_meth_set_get_by_alias(X509_LOOKUP_METHOD *method, + X509_LOOKUP_get_by_alias_fn fn); +X509_LOOKUP_get_by_alias_fn X509_LOOKUP_meth_get_get_by_alias( + const X509_LOOKUP_METHOD *method); + + int X509_STORE_add_cert(X509_STORE *ctx, X509 *x); int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x); @@ -393,6 +465,9 @@ int X509_LOOKUP_by_fingerprint(X509_LOOKUP *ctx, X509_LOOKUP_TYPE type, X509_OBJECT *ret); int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, X509_LOOKUP_TYPE type, const char *str, int len, X509_OBJECT *ret); +int X509_LOOKUP_set_method_data(X509_LOOKUP *ctx, void *data); +void *X509_LOOKUP_get_method_data(const X509_LOOKUP *ctx); +X509_STORE *X509_LOOKUP_get_store(const X509_LOOKUP *ctx); int X509_LOOKUP_shutdown(X509_LOOKUP *ctx); int X509_STORE_load_locations(X509_STORE *ctx, @@ -475,6 +550,7 @@ int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param, const char *name, size_t namelen); void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, unsigned int flags); +unsigned int X509_VERIFY_PARAM_get_hostflags(const X509_VERIFY_PARAM *param); char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *); void X509_VERIFY_PARAM_move_peername(X509_VERIFY_PARAM *, X509_VERIFY_PARAM *); int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, diff --git a/deps/openssl/openssl/ms/uplink-x86.pl b/deps/openssl/openssl/ms/uplink-x86.pl index e25668ea35d1..2c0b12b86e74 100755 --- a/deps/openssl/openssl/ms/uplink-x86.pl +++ b/deps/openssl/openssl/ms/uplink-x86.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2008-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2008-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 @@ -41,4 +41,4 @@ } &asm_finish(); -close OUTPUT; +close STDOUT; diff --git a/deps/openssl/openssl/ssl/record/rec_layer_d1.c b/deps/openssl/openssl/ssl/record/rec_layer_d1.c index b3ff5f1fbfc7..6111a2e1913e 100644 --- a/deps/openssl/openssl/ssl/record/rec_layer_d1.c +++ b/deps/openssl/openssl/ssl/record/rec_layer_d1.c @@ -423,6 +423,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, /* get new packet if necessary */ if ((SSL3_RECORD_get_length(rr) == 0) || (s->rlayer.rstate == SSL_ST_READ_BODY)) { + RECORD_LAYER_set_numrpipes(&s->rlayer, 0); ret = dtls1_get_record(s); if (ret <= 0) { ret = dtls1_read_failed(s, ret); @@ -432,6 +433,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, else goto start; } + RECORD_LAYER_set_numrpipes(&s->rlayer, 1); } /* @@ -442,6 +444,19 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, && SSL3_RECORD_get_length(rr) != 0) s->rlayer.alert_count = 0; + if (SSL3_RECORD_get_type(rr) != SSL3_RT_HANDSHAKE + && SSL3_RECORD_get_type(rr) != SSL3_RT_CHANGE_CIPHER_SPEC + && !SSL_in_init(s) + && (s->d1->next_timeout.tv_sec != 0 + || s->d1->next_timeout.tv_usec != 0)) { + /* + * The timer is still running but we've received something that isn't + * handshake data - so the peer must have finished processing our + * last handshake flight. Stop the timer. + */ + dtls1_stop_timer(s); + } + /* we now have a packet which can be read and processed */ if (s->s3->change_cipher_spec /* set when we receive ChangeCipherSpec, @@ -458,6 +473,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, return -1; } SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -467,8 +483,9 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, */ if (s->shutdown & SSL_RECEIVED_SHUTDOWN) { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); s->rwstate = SSL_NOTHING; - return (0); + return 0; } if (type == SSL3_RECORD_get_type(rr) @@ -493,8 +510,16 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, if (recvd_type != NULL) *recvd_type = SSL3_RECORD_get_type(rr); - if (len <= 0) - return (len); + if (len <= 0) { + /* + * Mark a zero length record as read. This ensures multiple calls to + * SSL_read() with a zero length buffer will eventually cause + * SSL_pending() to report data as being available. + */ + if (SSL3_RECORD_get_length(rr) == 0) + SSL3_RECORD_set_read(rr); + return len; + } if ((unsigned int)len > SSL3_RECORD_get_length(rr)) n = SSL3_RECORD_get_length(rr); @@ -502,12 +527,16 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, n = (unsigned int)len; memcpy(buf, &(SSL3_RECORD_get_data(rr)[SSL3_RECORD_get_off(rr)]), n); - if (!peek) { + if (peek) { + if (SSL3_RECORD_get_length(rr) == 0) + SSL3_RECORD_set_read(rr); + } else { SSL3_RECORD_sub_length(rr, n); SSL3_RECORD_add_off(rr, n); if (SSL3_RECORD_get_length(rr) == 0) { s->rlayer.rstate = SSL_ST_READ_HEADER; SSL3_RECORD_set_off(rr, 0); + SSL3_RECORD_set_read(rr); } } #ifndef OPENSSL_NO_SCTP @@ -558,6 +587,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, } /* Exit and notify application to read again */ SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); s->rwstate = SSL_READING; BIO_clear_retry_flags(SSL_get_rbio(s)); BIO_set_retry_read(SSL_get_rbio(s)); @@ -602,6 +632,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, #endif s->rlayer.rstate = SSL_ST_READ_HEADER; SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -611,6 +642,8 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, SSL3_RECORD_add_off(rr, 1); SSL3_RECORD_add_length(rr, -1); } + if (SSL3_RECORD_get_length(rr) == 0) + SSL3_RECORD_set_read(rr); *dest_len = dest_maxlen; } } @@ -681,6 +714,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, } } else { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); ssl3_send_alert(s, SSL3_AL_WARNING, SSL_AD_NO_RENEGOTIATION); } /* @@ -705,6 +739,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, || (s->options & SSL_OP_NO_RENEGOTIATION) != 0)) { s->rlayer.d->handshake_fragment_len = 0; SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); ssl3_send_alert(s, SSL3_AL_WARNING, SSL_AD_NO_RENEGOTIATION); goto start; } @@ -732,6 +767,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, if (alert_level == SSL3_AL_WARNING) { s->s3->warn_alert = alert_descr; + SSL3_RECORD_set_read(rr); s->rlayer.alert_count++; if (s->rlayer.alert_count == MAX_WARN_ALERT_COUNT) { @@ -796,6 +832,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, BIO_snprintf(tmp, sizeof(tmp), "%d", alert_descr); ERR_add_error_data(2, "SSL alert number ", tmp); s->shutdown |= SSL_RECEIVED_SHUTDOWN; + SSL3_RECORD_set_read(rr); SSL_CTX_remove_session(s->session_ctx, s->session); return (0); } else { @@ -811,7 +848,8 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * shutdown */ s->rwstate = SSL_NOTHING; SSL3_RECORD_set_length(rr, 0); - return (0); + SSL3_RECORD_set_read(rr); + return 0; } if (SSL3_RECORD_get_type(rr) == SSL3_RT_CHANGE_CIPHER_SPEC) { @@ -820,6 +858,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, * are still missing, so just drop it. */ SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -834,6 +873,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, dtls1_get_message_header(rr->data, &msg_hdr); if (SSL3_RECORD_get_epoch(rr) != s->rlayer.d->r_epoch) { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } @@ -847,6 +887,19 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, dtls1_retransmit_buffered_messages(s); SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); + if (!(s->mode & SSL_MODE_AUTO_RETRY)) { + if (SSL3_BUFFER_get_left(&s->rlayer.rbuf) == 0) { + /* no read-ahead left? */ + BIO *bio; + + s->rwstate = SSL_READING; + bio = SSL_get_rbio(s); + BIO_clear_retry_flags(bio); + BIO_set_retry_read(bio); + return -1; + } + } goto start; } @@ -889,6 +942,7 @@ int dtls1_read_bytes(SSL *s, int type, int *recvd_type, unsigned char *buf, /* TLS just ignores unknown message types */ if (s->version == TLS1_VERSION) { SSL3_RECORD_set_length(rr, 0); + SSL3_RECORD_set_read(rr); goto start; } al = SSL_AD_UNEXPECTED_MESSAGE; diff --git a/deps/openssl/openssl/ssl/record/rec_layer_s3.c b/deps/openssl/openssl/ssl/record/rec_layer_s3.c index 20225d2db779..1ffc1205d97b 100644 --- a/deps/openssl/openssl/ssl/record/rec_layer_s3.c +++ b/deps/openssl/openssl/ssl/record/rec_layer_s3.c @@ -368,7 +368,7 @@ int ssl3_write_bytes(SSL *s, int type, const void *buf_, int len) * promptly send beyond the end of the users buffer ... so we trap and * report the error in a way the user will notice */ - if (((unsigned int)len < s->rlayer.wnum) + if (((unsigned int)len < s->rlayer.wnum) || ((wb->left != 0) && ((unsigned int)len < (s->rlayer.wnum + s->rlayer.wpend_tot)))) { SSLerr(SSL_F_SSL3_WRITE_BYTES, SSL_R_BAD_LENGTH); return -1; diff --git a/deps/openssl/openssl/ssl/record/ssl3_record.c b/deps/openssl/openssl/ssl/record/ssl3_record.c index c7a54feb126a..c80add37f931 100644 --- a/deps/openssl/openssl/ssl/record/ssl3_record.c +++ b/deps/openssl/openssl/ssl/record/ssl3_record.c @@ -1531,6 +1531,7 @@ int dtls1_get_record(SSL *s) p += 6; n2s(p, rr->length); + rr->read = 0; /* * Lets check the version. We tolerate alerts that don't have the exact @@ -1540,6 +1541,7 @@ int dtls1_get_record(SSL *s) if (version != s->version) { /* unexpected version, silently discard */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1548,6 +1550,7 @@ int dtls1_get_record(SSL *s) if ((version & 0xff00) != (s->version & 0xff00)) { /* wrong version, silently discard record */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1555,10 +1558,10 @@ int dtls1_get_record(SSL *s) if (rr->length > SSL3_RT_MAX_ENCRYPTED_LENGTH) { /* record too long, silently discard it */ rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } - /* now s->rlayer.rstate == SSL_ST_READ_BODY */ } @@ -1572,6 +1575,7 @@ int dtls1_get_record(SSL *s) /* this packet contained a partial record, dump it */ if (n != i) { rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } @@ -1588,6 +1592,7 @@ int dtls1_get_record(SSL *s) bitmap = dtls1_get_bitmap(s, rr, &is_next_epoch); if (bitmap == NULL) { rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ goto again; /* get another record */ } @@ -1602,6 +1607,7 @@ int dtls1_get_record(SSL *s) */ if (!dtls1_record_replay_check(s, bitmap)) { rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ goto again; /* get another record */ } @@ -1610,8 +1616,10 @@ int dtls1_get_record(SSL *s) #endif /* just read a 0 length packet */ - if (rr->length == 0) + if (rr->length == 0) { + rr->read = 1; goto again; + } /* * If this record is from the next epoch (either HM or ALERT), and a @@ -1626,12 +1634,14 @@ int dtls1_get_record(SSL *s) return -1; } rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); goto again; } if (!dtls1_process_record(s, bitmap)) { rr->length = 0; + rr->read = 1; RECORD_LAYER_reset_packet_length(&s->rlayer); /* dump this record */ goto again; /* get another record */ } diff --git a/deps/openssl/openssl/ssl/ssl_ciph.c b/deps/openssl/openssl/ssl/ssl_ciph.c index 7a393cbe8031..b8da98210585 100644 --- a/deps/openssl/openssl/ssl/ssl_ciph.c +++ b/deps/openssl/openssl/ssl/ssl_ciph.c @@ -101,10 +101,7 @@ static const ssl_cipher_table ssl_cipher_table_cipher[SSL_ENC_NUM_IDX] = { {SSL_CHACHA20POLY1305, NID_chacha20_poly1305}, }; -static const EVP_CIPHER *ssl_cipher_methods[SSL_ENC_NUM_IDX] = { - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, - NULL, NULL -}; +static const EVP_CIPHER *ssl_cipher_methods[SSL_ENC_NUM_IDX]; #define SSL_COMP_NULL_IDX 0 #define SSL_COMP_ZLIB_IDX 1 diff --git a/deps/openssl/openssl/ssl/ssl_conf.c b/deps/openssl/openssl/ssl/ssl_conf.c index 7f894885dc51..9d9309ac15f3 100644 --- a/deps/openssl/openssl/ssl/ssl_conf.c +++ b/deps/openssl/openssl/ssl/ssl_conf.c @@ -222,8 +222,9 @@ static int cmd_ECDHParameters(SSL_CONF_CTX *cctx, const char *value) int nid; /* Ignore values supported by 1.0.2 for the automatic selection */ - if ((cctx->flags & SSL_CONF_FLAG_FILE) && - strcasecmp(value, "+automatic") == 0) + if ((cctx->flags & SSL_CONF_FLAG_FILE) + && (strcasecmp(value, "+automatic") == 0 + || strcasecmp(value, "automatic") == 0)) return 1; if ((cctx->flags & SSL_CONF_FLAG_CMDLINE) && strcmp(value, "auto") == 0) diff --git a/deps/openssl/openssl/ssl/ssl_init.c b/deps/openssl/openssl/ssl/ssl_init.c index 3e62d4811102..dc16e39bf341 100644 --- a/deps/openssl/openssl/ssl/ssl_init.c +++ b/deps/openssl/openssl/ssl/ssl_init.c @@ -1,5 +1,5 @@ /* - * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -12,6 +12,7 @@ #include "internal/err.h" #include #include +#include #include #include "ssl_locl.h" #include "internal/thread_once.h" @@ -126,8 +127,8 @@ DEFINE_RUN_ONCE_STATIC(ossl_init_load_ssl_strings) "ERR_load_SSL_strings()\n"); # endif ERR_load_SSL_strings(); -#endif ssl_strings_inited = 1; +#endif return 1; } @@ -191,11 +192,13 @@ int OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS * settings) return 0; } - if (!RUN_ONCE(&ssl_base, ossl_init_ssl_base)) + if (!OPENSSL_init_crypto(opts + | OPENSSL_INIT_ADD_ALL_CIPHERS + | OPENSSL_INIT_ADD_ALL_DIGESTS, + settings)) return 0; - if (!OPENSSL_init_crypto(opts | OPENSSL_INIT_ADD_ALL_CIPHERS - | OPENSSL_INIT_ADD_ALL_DIGESTS, settings)) + if (!RUN_ONCE(&ssl_base, ossl_init_ssl_base)) return 0; if ((opts & OPENSSL_INIT_NO_LOAD_SSL_STRINGS) diff --git a/deps/openssl/openssl/ssl/ssl_lib.c b/deps/openssl/openssl/ssl/ssl_lib.c index 8a190d23e807..2002c1712f68 100644 --- a/deps/openssl/openssl/ssl/ssl_lib.c +++ b/deps/openssl/openssl/ssl/ssl_lib.c @@ -2213,28 +2213,37 @@ int SSL_set_cipher_list(SSL *s, const char *str) return 1; } -char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len) +char *SSL_get_shared_ciphers(const SSL *s, char *buf, int size) { char *p; - STACK_OF(SSL_CIPHER) *sk; + STACK_OF(SSL_CIPHER) *clntsk, *srvrsk; const SSL_CIPHER *c; int i; - if ((s->session == NULL) || (s->session->ciphers == NULL) || (len < 2)) - return (NULL); + if (!s->server + || s->session == NULL + || s->session->ciphers == NULL + || size < 2) + return NULL; p = buf; - sk = s->session->ciphers; + clntsk = s->session->ciphers; + srvrsk = SSL_get_ciphers(s); + if (clntsk == NULL || srvrsk == NULL) + return NULL; - if (sk_SSL_CIPHER_num(sk) == 0) + if (sk_SSL_CIPHER_num(clntsk) == 0 || sk_SSL_CIPHER_num(srvrsk) == 0) return NULL; - for (i = 0; i < sk_SSL_CIPHER_num(sk); i++) { + for (i = 0; i < sk_SSL_CIPHER_num(clntsk); i++) { int n; - c = sk_SSL_CIPHER_value(sk, i); + c = sk_SSL_CIPHER_value(clntsk, i); + if (sk_SSL_CIPHER_find(srvrsk, c) < 0) + continue; + n = strlen(c->name); - if (n + 1 > len) { + if (n + 1 > size) { if (p != buf) --p; *p = '\0'; @@ -2243,7 +2252,7 @@ char *SSL_get_shared_ciphers(const SSL *s, char *buf, int len) memcpy(p, c->name, n + 1); p += n; *(p++) = ':'; - len -= n + 1; + size -= n + 1; } p[-1] = '\0'; return (buf); @@ -3035,12 +3044,13 @@ void ssl_update_cache(SSL *s, int mode) /* * If sid_ctx_length is 0 there is no specific application context * associated with this session, so when we try to resume it and - * SSL_VERIFY_PEER is requested, we have no indication that this is - * actually a session for the proper application context, and the - * *handshake* will fail, not just the resumption attempt. - * Do not cache these sessions that are not resumable. + * SSL_VERIFY_PEER is requested to verify the client identity, we have no + * indication that this is actually a session for the proper application + * context, and the *handshake* will fail, not just the resumption attempt. + * Do not cache (on the server) these sessions that are not resumable + * (clients can set SSL_VERIFY_PEER without needing a sid_ctx set). */ - if (s->session->sid_ctx_length == 0 + if (s->server && s->session->sid_ctx_length == 0 && (s->verify_mode & SSL_VERIFY_PEER) != 0) return; @@ -3519,7 +3529,6 @@ void ssl_free_wbio_buffer(SSL *s) return; s->wbio = BIO_pop(s->wbio); - assert(s->wbio != NULL); BIO_free(s->bbio); s->bbio = NULL; } diff --git a/deps/openssl/openssl/ssl/ssl_locl.h b/deps/openssl/openssl/ssl/ssl_locl.h index d86bd7e8e207..3c7c1a8e6483 100644 --- a/deps/openssl/openssl/ssl/ssl_locl.h +++ b/deps/openssl/openssl/ssl/ssl_locl.h @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -164,6 +164,8 @@ (c)[1]=(unsigned char)(((l)>> 8)&0xff), \ (c)[2]=(unsigned char)(((l) )&0xff)),(c)+=3) +# define SSL_MAX_2_BYTE_LEN (0xffff) + /* * DTLS version numbers are strange because they're inverted. Except for * DTLS1_BAD_VER, which should be considered "lower" than the rest. @@ -347,6 +349,9 @@ /* we have used 0000003f - 26 bits left to go */ +# define SSL_IS_FIRST_HANDSHAKE(S) ((s)->s3->tmp.finish_md_len == 0 \ + || (s)->s3->tmp.peer_finish_md_len == 0) + /* Check if an SSL structure is using DTLS */ # define SSL_IS_DTLS(s) (s->method->ssl3_enc->enc_flags & SSL_ENC_FLAG_DTLS) /* See if we need explicit IV */ @@ -537,7 +542,7 @@ struct ssl_session_st { const SSL_CIPHER *cipher; unsigned long cipher_id; /* when ASN.1 loaded, this needs to be used to * load the 'cipher' structure */ - STACK_OF(SSL_CIPHER) *ciphers; /* shared ciphers? */ + STACK_OF(SSL_CIPHER) *ciphers; /* ciphers offered by the client */ CRYPTO_EX_DATA ex_data; /* application specific data */ /* * These are used to make removal of session-ids more efficient and to diff --git a/deps/openssl/openssl/ssl/ssl_mcnf.c b/deps/openssl/openssl/ssl/ssl_mcnf.c index c2d9dba64ac9..24742660e434 100644 --- a/deps/openssl/openssl/ssl/ssl_mcnf.c +++ b/deps/openssl/openssl/ssl/ssl_mcnf.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -11,148 +11,35 @@ #include #include #include "ssl_locl.h" +#include "internal/sslconf.h" /* SSL library configuration module. */ -struct ssl_conf_name { - /* Name of this set of commands */ - char *name; - /* List of commands */ - struct ssl_conf_cmd *cmds; - /* Number of commands */ - size_t cmd_count; -}; - -struct ssl_conf_cmd { - /* Command */ - char *cmd; - /* Argument */ - char *arg; -}; - -static struct ssl_conf_name *ssl_names; -static size_t ssl_names_count; - -static void ssl_module_free(CONF_IMODULE *md) -{ - size_t i, j; - if (ssl_names == NULL) - return; - for (i = 0; i < ssl_names_count; i++) { - struct ssl_conf_name *tname = ssl_names + i; - OPENSSL_free(tname->name); - for (j = 0; j < tname->cmd_count; j++) { - OPENSSL_free(tname->cmds[j].cmd); - OPENSSL_free(tname->cmds[j].arg); - } - OPENSSL_free(tname->cmds); - } - OPENSSL_free(ssl_names); - ssl_names = NULL; - ssl_names_count = 0; -} - -static int ssl_module_init(CONF_IMODULE *md, const CONF *cnf) -{ - size_t i, j, cnt; - int rv = 0; - const char *ssl_conf_section; - STACK_OF(CONF_VALUE) *cmd_lists; - ssl_conf_section = CONF_imodule_get_value(md); - cmd_lists = NCONF_get_section(cnf, ssl_conf_section); - if (sk_CONF_VALUE_num(cmd_lists) <= 0) { - if (cmd_lists == NULL) - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_SECTION_NOT_FOUND); - else - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_SECTION_EMPTY); - ERR_add_error_data(2, "section=", ssl_conf_section); - goto err; - } - cnt = sk_CONF_VALUE_num(cmd_lists); - ssl_names = OPENSSL_zalloc(sizeof(*ssl_names) * cnt); - ssl_names_count = cnt; - for (i = 0; i < ssl_names_count; i++) { - struct ssl_conf_name *ssl_name = ssl_names + i; - CONF_VALUE *sect = sk_CONF_VALUE_value(cmd_lists, i); - STACK_OF(CONF_VALUE) *cmds = NCONF_get_section(cnf, sect->value); - if (sk_CONF_VALUE_num(cmds) <= 0) { - if (cmds == NULL) - SSLerr(SSL_F_SSL_MODULE_INIT, - SSL_R_SSL_COMMAND_SECTION_NOT_FOUND); - else - SSLerr(SSL_F_SSL_MODULE_INIT, SSL_R_SSL_COMMAND_SECTION_EMPTY); - ERR_add_error_data(4, "name=", sect->name, ", value=", sect->value); - goto err; - } - ssl_name->name = BUF_strdup(sect->name); - if (ssl_name->name == NULL) - goto err; - cnt = sk_CONF_VALUE_num(cmds); - ssl_name->cmds = OPENSSL_zalloc(cnt * sizeof(struct ssl_conf_cmd)); - if (ssl_name->cmds == NULL) - goto err; - ssl_name->cmd_count = cnt; - for (j = 0; j < cnt; j++) { - const char *name; - CONF_VALUE *cmd_conf = sk_CONF_VALUE_value(cmds, j); - struct ssl_conf_cmd *cmd = ssl_name->cmds + j; - /* Skip any initial dot in name */ - name = strchr(cmd_conf->name, '.'); - if (name != NULL) - name++; - else - name = cmd_conf->name; - cmd->cmd = BUF_strdup(name); - cmd->arg = BUF_strdup(cmd_conf->value); - if (cmd->cmd == NULL || cmd->arg == NULL) - goto err; - } - - } - rv = 1; - err: - if (rv == 0) - ssl_module_free(md); - return rv; -} - void SSL_add_ssl_module(void) { - CONF_module_add("ssl_conf", ssl_module_init, ssl_module_free); -} - -static const struct ssl_conf_name *ssl_name_find(const char *name) -{ - size_t i; - const struct ssl_conf_name *nm; - if (name == NULL) - return NULL; - for (i = 0, nm = ssl_names; i < ssl_names_count; i++, nm++) { - if (strcmp(nm->name, name) == 0) - return nm; - } - return NULL; + /* Just load all of the crypto builtin modules. This includes the SSL one */ + OPENSSL_load_builtin_modules(); } static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name) { SSL_CONF_CTX *cctx = NULL; - size_t i; + size_t i, idx, cmd_count; int rv = 0; unsigned int flags; const SSL_METHOD *meth; - const struct ssl_conf_name *nm; - struct ssl_conf_cmd *cmd; + const SSL_CONF_CMD *cmds; + if (s == NULL && ctx == NULL) { SSLerr(SSL_F_SSL_DO_CONFIG, ERR_R_PASSED_NULL_PARAMETER); goto err; } - nm = ssl_name_find(name); - if (nm == NULL) { + if (!conf_ssl_name_find(name, &idx)) { SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_INVALID_CONFIGURATION_NAME); ERR_add_error_data(2, "name=", name); goto err; } + cmds = conf_ssl_get(idx, &name, &cmd_count); cctx = SSL_CONF_CTX_new(); if (cctx == NULL) goto err; @@ -170,15 +57,18 @@ static int ssl_do_config(SSL *s, SSL_CTX *ctx, const char *name) if (meth->ssl_connect != ssl_undefined_function) flags |= SSL_CONF_FLAG_CLIENT; SSL_CONF_CTX_set_flags(cctx, flags); - for (i = 0, cmd = nm->cmds; i < nm->cmd_count; i++, cmd++) { - rv = SSL_CONF_cmd(cctx, cmd->cmd, cmd->arg); + for (i = 0; i < cmd_count; i++) { + char *cmdstr, *arg; + + conf_ssl_get_cmd(cmds, i, &cmdstr, &arg); + rv = SSL_CONF_cmd(cctx, cmdstr, arg); if (rv <= 0) { if (rv == -2) SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_UNKNOWN_COMMAND); else SSLerr(SSL_F_SSL_DO_CONFIG, SSL_R_BAD_VALUE); - ERR_add_error_data(6, "section=", name, ", cmd=", cmd->cmd, - ", arg=", cmd->arg); + ERR_add_error_data(6, "section=", name, ", cmd=", cmdstr, + ", arg=", arg); goto err; } } diff --git a/deps/openssl/openssl/ssl/ssl_sess.c b/deps/openssl/openssl/ssl/ssl_sess.c index 0dea8b52242a..926b55c7ba2b 100644 --- a/deps/openssl/openssl/ssl/ssl_sess.c +++ b/deps/openssl/openssl/ssl/ssl_sess.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -734,11 +734,11 @@ static int remove_session_lock(SSL_CTX *ctx, SSL_SESSION *c, int lck) if (lck) CRYPTO_THREAD_unlock(ctx->lock); - if (ret) - SSL_SESSION_free(r); - if (ctx->remove_session_cb != NULL) ctx->remove_session_cb(ctx, c); + + if (ret) + SSL_SESSION_free(r); } else ret = 0; return (ret); diff --git a/deps/openssl/openssl/ssl/ssl_txt.c b/deps/openssl/openssl/ssl/ssl_txt.c index dbbf9d9e8d8b..f149a3ad0915 100644 --- a/deps/openssl/openssl/ssl/ssl_txt.c +++ b/deps/openssl/openssl/ssl/ssl_txt.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -70,18 +70,18 @@ int SSL_SESSION_print(BIO *bp, const SSL_SESSION *x) if (x->cipher == NULL) { if (((x->cipher_id) & 0xff000000) == 0x02000000) { - if (BIO_printf - (bp, " Cipher : %06lX\n", x->cipher_id & 0xffffff) <= 0) + if (BIO_printf(bp, " Cipher : %06lX\n", + x->cipher_id & 0xffffff) <= 0) goto err; } else { - if (BIO_printf - (bp, " Cipher : %04lX\n", x->cipher_id & 0xffff) <= 0) + if (BIO_printf(bp, " Cipher : %04lX\n", + x->cipher_id & 0xffff) <= 0) goto err; } } else { - if (BIO_printf - (bp, " Cipher : %s\n", - ((x->cipher == NULL) ? "unknown" : x->cipher->name)) <= 0) + if (BIO_printf(bp, " Cipher : %s\n", + ((x->cipher->name == NULL) ? "unknown" + : x->cipher->name)) <= 0) goto err; } if (BIO_puts(bp, " Session-ID: ") <= 0) diff --git a/deps/openssl/openssl/ssl/statem/README b/deps/openssl/openssl/ssl/statem/README index 4467bd1e5889..145c69db8d54 100644 --- a/deps/openssl/openssl/ssl/statem/README +++ b/deps/openssl/openssl/ssl/statem/README @@ -60,3 +60,4 @@ Conceptually the state machine component is designed as follows: | Non core functions common | | Non core functions common to | | to both servers and clients | | both DTLS servers and clients | |_____________________________| |_______________________________| + diff --git a/deps/openssl/openssl/ssl/statem/statem.c b/deps/openssl/openssl/ssl/statem/statem.c index b91ec0a360a3..69bb40f00e11 100644 --- a/deps/openssl/openssl/ssl/statem/statem.c +++ b/deps/openssl/openssl/ssl/statem/statem.c @@ -556,10 +556,8 @@ static SUB_STATE_RETURN read_state_machine(SSL *s) * Validate that we are allowed to move to the new state and move * to that state if so */ - if (!transition(s, mt)) { - ossl_statem_set_error(s); + if (!transition(s, mt)) return SUB_STATE_ERROR; - } if (s->s3->tmp.message_size > max_message_size(s)) { ssl3_send_alert(s, SSL3_AL_FATAL, SSL_AD_ILLEGAL_PARAMETER); diff --git a/deps/openssl/openssl/ssl/statem/statem_clnt.c b/deps/openssl/openssl/ssl/statem/statem_clnt.c index 6fa3f1db6702..ed993553c56e 100644 --- a/deps/openssl/openssl/ssl/statem/statem_clnt.c +++ b/deps/openssl/openssl/ssl/statem/statem_clnt.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -265,6 +265,21 @@ int ossl_statem_client_read_transition(SSL *s, int mt) err: /* No valid transition found */ + if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { + BIO *rbio; + + /* + * CCS messages don't have a message sequence number so this is probably + * because of an out-of-order CCS. We'll just drop it. + */ + s->init_num = 0; + s->rwstate = SSL_READING; + rbio = SSL_get_rbio(s); + BIO_clear_retry_flags(rbio); + BIO_set_retry_read(rbio); + return 0; + } + ossl_statem_set_error(s); ssl3_send_alert(s, SSL3_AL_FATAL, SSL3_AD_UNEXPECTED_MESSAGE); SSLerr(SSL_F_OSSL_STATEM_CLIENT_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); return 0; diff --git a/deps/openssl/openssl/ssl/statem/statem_dtls.c b/deps/openssl/openssl/ssl/statem/statem_dtls.c index 6b80620ee9c5..5b3442544536 100644 --- a/deps/openssl/openssl/ssl/statem/statem_dtls.c +++ b/deps/openssl/openssl/ssl/statem/statem_dtls.c @@ -493,7 +493,8 @@ static int dtls1_retrieve_buffered_fragment(SSL *s, int *ok) al = dtls1_preprocess_fragment(s, &frag->msg_header); - if (al == 0) { /* no alert */ + /* al will be 0 if no alert */ + if (al == 0 && frag->msg_header.frag_len > 0) { unsigned char *p = (unsigned char *)s->init_buf->data + DTLS1_HM_HEADER_LENGTH; memcpy(&p[frag->msg_header.frag_off], frag->fragment, diff --git a/deps/openssl/openssl/ssl/statem/statem_lib.c b/deps/openssl/openssl/ssl/statem/statem_lib.c index 36d410bdf778..eba4c6fb4011 100644 --- a/deps/openssl/openssl/ssl/statem/statem_lib.c +++ b/deps/openssl/openssl/ssl/statem/statem_lib.c @@ -299,6 +299,15 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst) s->ctx->stats.sess_accept_good++; s->handshake_func = ossl_statem_accept; + + if (SSL_IS_DTLS(s) && !s->hit) { + /* + * We are finishing after the client. We start the timer going + * in case there are any retransmits of our final flight + * required. + */ + dtls1_start_timer(s); + } } else { ssl_update_cache(s, SSL_SESS_CACHE_CLIENT); if (s->hit) @@ -306,6 +315,15 @@ WORK_STATE tls_finish_handshake(SSL *s, WORK_STATE wst) s->handshake_func = ossl_statem_connect; s->ctx->stats.sess_connect_good++; + + if (SSL_IS_DTLS(s) && s->hit) { + /* + * We are finishing after the server. We start the timer going + * in case there are any retransmits of our final flight + * required. + */ + dtls1_start_timer(s); + } } if (s->info_callback != NULL) @@ -1073,6 +1091,13 @@ int ssl_set_client_hello_version(SSL *s) { int ver_min, ver_max, ret; + /* + * In a renegotiation we always send the same client_version that we sent + * last time, regardless of which version we eventually negotiated. + */ + if (!SSL_IS_FIRST_HANDSHAKE(s)) + return 0; + ret = ssl_get_client_min_max_version(s, &ver_min, &ver_max); if (ret != 0) diff --git a/deps/openssl/openssl/ssl/statem/statem_srvr.c b/deps/openssl/openssl/ssl/statem/statem_srvr.c index c7cd9eb662d4..f81fa5e19943 100644 --- a/deps/openssl/openssl/ssl/statem/statem_srvr.c +++ b/deps/openssl/openssl/ssl/statem/statem_srvr.c @@ -1,5 +1,5 @@ /* - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * 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 @@ -213,6 +213,21 @@ int ossl_statem_server_read_transition(SSL *s, int mt) } /* No valid transition found */ + if (SSL_IS_DTLS(s) && mt == SSL3_MT_CHANGE_CIPHER_SPEC) { + BIO *rbio; + + /* + * CCS messages don't have a message sequence number so this is probably + * because of an out-of-order CCS. We'll just drop it. + */ + s->init_num = 0; + s->rwstate = SSL_READING; + rbio = SSL_get_rbio(s); + BIO_clear_retry_flags(rbio); + BIO_set_retry_read(rbio); + return 0; + } + ossl_statem_set_error(s); ssl3_send_alert(s, SSL3_AL_FATAL, SSL3_AD_UNEXPECTED_MESSAGE); SSLerr(SSL_F_OSSL_STATEM_SERVER_READ_TRANSITION, SSL_R_UNEXPECTED_MESSAGE); return 0; @@ -1698,6 +1713,12 @@ int tls_construct_server_key_exchange(SSL *s) } dh = EVP_PKEY_get0_DH(s->s3->tmp.pkey); + if (dh == NULL) { + al = SSL_AD_INTERNAL_ERROR; + SSLerr(SSL_F_TLS_CONSTRUCT_SERVER_KEY_EXCHANGE, + ERR_R_INTERNAL_ERROR); + goto err; + } EVP_PKEY_free(pkdh); pkdh = NULL; @@ -1985,6 +2006,11 @@ int tls_construct_certificate_request(SSL *s) const unsigned char *psigs; unsigned char *etmp = p; nl = tls12_get_psigalgs(s, 1, &psigs); + if (nl > SSL_MAX_2_BYTE_LEN) { + SSLerr(SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, + SSL_R_LENGTH_TOO_LONG); + goto err; + } /* Skip over length for now */ p += 2; nl = tls12_copy_sigalgs(s, p, psigs, nl); @@ -2004,6 +2030,11 @@ int tls_construct_certificate_request(SSL *s) for (i = 0; i < sk_X509_NAME_num(sk); i++) { name = sk_X509_NAME_value(sk, i); j = i2d_X509_NAME(name, NULL); + if (j > SSL_MAX_2_BYTE_LEN) { + SSLerr(SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, + SSL_R_LENGTH_TOO_LONG); + goto err; + } if (!BUF_MEM_grow_clean(buf, SSL_HM_HEADER_LENGTH(s) + n + j + 2)) { SSLerr(SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, ERR_R_BUF_LIB); goto err; @@ -2013,6 +2044,11 @@ int tls_construct_certificate_request(SSL *s) i2d_X509_NAME(name, &p); n += 2 + j; nl += 2 + j; + if (nl > SSL_MAX_2_BYTE_LEN) { + SSLerr(SSL_F_TLS_CONSTRUCT_CERTIFICATE_REQUEST, + SSL_R_LENGTH_TOO_LONG); + goto err; + } } } /* else no CA names */ @@ -2303,13 +2339,12 @@ static int tls_process_cke_dhe(SSL *s, PACKET *pkt, int *al) SSLerr(SSL_F_TLS_PROCESS_CKE_DHE, SSL_R_BN_LIB); goto err; } + cdh = EVP_PKEY_get0_DH(ckey); pub_key = BN_bin2bn(data, i, NULL); - - if (pub_key == NULL || !DH_set0_key(cdh, pub_key, NULL)) { + if (pub_key == NULL || cdh == NULL || !DH_set0_key(cdh, pub_key, NULL)) { SSLerr(SSL_F_TLS_PROCESS_CKE_DHE, ERR_R_INTERNAL_ERROR); - if (pub_key != NULL) - BN_free(pub_key); + BN_free(pub_key); goto err; } diff --git a/deps/openssl/openssl/ssl/t1_lib.c b/deps/openssl/openssl/ssl/t1_lib.c index 7a5721a1e213..95711fb6df87 100644 --- a/deps/openssl/openssl/ssl/t1_lib.c +++ b/deps/openssl/openssl/ssl/t1_lib.c @@ -408,7 +408,7 @@ int tls1_set_curves(unsigned char **pext, size_t *pextlen, return 1; } -# define MAX_CURVELIST 28 +# define MAX_CURVELIST OSSL_NELEM(nid_list) typedef struct { size_t nidcnt; @@ -490,13 +490,16 @@ static int tls1_set_ec_id(unsigned char *curve_id, unsigned char *comp_id, return 1; } +# define DONT_CHECK_OWN_GROUPS 0 +# define CHECK_OWN_GROUPS 1 /* Check an EC key is compatible with extensions */ -static int tls1_check_ec_key(SSL *s, - unsigned char *curve_id, unsigned char *comp_id) +static int tls1_check_ec_key(SSL *s, unsigned char *curve_id, + unsigned char *comp_id, int check_own_groups) { const unsigned char *pformats, *pcurves; size_t num_formats, num_curves, i; int j; + /* * If point formats extension present check it, otherwise everything is * supported (see RFC4492). @@ -513,8 +516,12 @@ static int tls1_check_ec_key(SSL *s, } if (!curve_id) return 1; + + if (!s->server && !check_own_groups) + return 1; + /* Check curve is consistent with client and server preferences */ - for (j = 0; j <= 1; j++) { + for (j = check_own_groups ? 0 : 1; j <= 1; j++) { if (!tls1_get_curvelist(s, j, &pcurves, &num_curves)) return 0; if (j == 1 && num_curves == 0) { @@ -579,9 +586,12 @@ static int tls1_check_cert_param(SSL *s, X509 *x, int set_ee_md) return 0; /* * Can't check curve_id for client certs as we don't have a supported - * curves extension. + * curves extension. For server certs we will tolerate certificates that + * aren't in our own list of curves. If we've been configured to use an EC + * cert then we should use it - therefore we use DONT_CHECK_OWN_GROUPS here. */ - rv = tls1_check_ec_key(s, s->server ? curve_id : NULL, &comp_id); + rv = tls1_check_ec_key(s, s->server ? curve_id : NULL, &comp_id, + DONT_CHECK_OWN_GROUPS); if (!rv) return 0; /* @@ -644,7 +654,7 @@ int tls1_check_ec_tmp_key(SSL *s, unsigned long cid) return 0; curve_id[0] = 0; /* Check this curve is acceptable */ - if (!tls1_check_ec_key(s, curve_id, NULL)) + if (!tls1_check_ec_key(s, curve_id, NULL, CHECK_OWN_GROUPS)) return 0; return 1; } @@ -746,8 +756,9 @@ size_t tls12_get_psigalgs(SSL *s, int sent, const unsigned char **psigs) } /* - * Check signature algorithm is consistent with sent supported signature - * algorithms and if so return relevant digest. + * Check signature algorithm received from the peer with a signature is + * consistent with the sent supported signature algorithms and if so return + * relevant digest. */ int tls12_check_peer_sigalg(const EVP_MD **pmd, SSL *s, const unsigned char *sig, EVP_PKEY *pkey) @@ -769,7 +780,8 @@ int tls12_check_peer_sigalg(const EVP_MD **pmd, SSL *s, /* Check compression and curve matches extensions */ if (!tls1_set_ec_id(curve_id, &comp_id, EVP_PKEY_get0_EC_KEY(pkey))) return 0; - if (!s->server && !tls1_check_ec_key(s, curve_id, &comp_id)) { + if (!s->server && !tls1_check_ec_key(s, curve_id, &comp_id, + CHECK_OWN_GROUPS)) { SSLerr(SSL_F_TLS12_CHECK_PEER_SIGALG, SSL_R_WRONG_CURVE); return 0; } @@ -2144,6 +2156,10 @@ static int ssl_scan_clienthello_tlsext(SSL *s, PACKET *pkt, int *al) } } } else if (type == TLSEXT_TYPE_status_request) { + /* Ignore this if resuming */ + if (s->hit) + continue; + if (!PACKET_get_1(&extension, (unsigned int *)&s->tlsext_status_type)) { return 0; @@ -2784,7 +2800,7 @@ int tls1_set_server_sigalgs(SSL *s) if (!s->cert->shared_sigalgs) { SSLerr(SSL_F_TLS1_SET_SERVER_SIGALGS, SSL_R_NO_SHARED_SIGNATURE_ALGORITHMS); - al = SSL_AD_ILLEGAL_PARAMETER; + al = SSL_AD_HANDSHAKE_FAILURE; goto err; } } else { @@ -4125,13 +4141,16 @@ DH *ssl_get_auto_dh(SSL *s) if (dhp == NULL) return NULL; g = BN_new(); - if (g != NULL) - BN_set_word(g, 2); + if (g == NULL || !BN_set_word(g, 2)) { + DH_free(dhp); + BN_free(g); + return NULL; + } if (dh_secbits >= 192) p = BN_get_rfc3526_prime_8192(NULL); else p = BN_get_rfc3526_prime_3072(NULL); - if (p == NULL || g == NULL || !DH_set0_pqg(dhp, p, NULL, g)) { + if (p == NULL || !DH_set0_pqg(dhp, p, NULL, g)) { DH_free(dhp); BN_free(p); BN_free(g); @@ -4172,6 +4191,9 @@ static int ssl_security_cert_sig(SSL *s, SSL_CTX *ctx, X509 *x, int op) if ((X509_get_extension_flags(x) & EXFLAG_SS) != 0) return 1; sig_nid = X509_get_signature_nid(x); + /* We are not able to look up the CA MD for RSA PSS in this version */ + if (sig_nid == NID_rsassaPss) + return 1; if (sig_nid && OBJ_find_sigid_algs(sig_nid, &md_nid, NULL)) { const EVP_MD *md; if (md_nid && (md = EVP_get_digestbynid(md_nid))) diff --git a/deps/openssl/openssl/ssl/t1_trce.c b/deps/openssl/openssl/ssl/t1_trce.c index 76bdf792ae3b..588cb8cc3d8f 100644 --- a/deps/openssl/openssl/ssl/t1_trce.c +++ b/deps/openssl/openssl/ssl/t1_trce.c @@ -1,5 +1,5 @@ /* - * Copyright 2012-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2012-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 @@ -725,6 +725,8 @@ static int ssl_print_extensions(BIO *bio, int indent, int server, BIO_puts(bio, "No Extensions\n"); return 1; } + if (msglen < 2) + return 0; extslen = (msg[0] << 8) | msg[1]; if (extslen != msglen - 2) return 0; @@ -1092,6 +1094,8 @@ static int ssl_print_cert_request(BIO *bio, int indent, SSL *s, msglen -= xlen + 2; skip_sig: + if (msglen < 2) + return 0; xlen = (msg[0] << 8) | msg[1]; BIO_indent(bio, indent, 80); if (msglen < xlen + 2) @@ -1271,7 +1275,16 @@ void SSL_trace(int write_p, int version, int content_type, switch (content_type) { case SSL3_RT_HEADER: { - int hvers = msg[1] << 8 | msg[2]; + int hvers; + + /* avoid overlapping with length at the end of buffer */ + if (msglen < (size_t)(SSL_IS_DTLS(ssl) ? + DTLS1_RT_HEADER_LENGTH : SSL3_RT_HEADER_LENGTH)) { + BIO_puts(bio, write_p ? "Sent" : "Received"); + ssl_print_hex(bio, 0, " too short message", msg, msglen); + break; + } + hvers = msg[1] << 8 | msg[2]; BIO_puts(bio, write_p ? "Sent" : "Received"); BIO_printf(bio, " Record\nHeader:\n Version = %s (0x%x)\n", ssl_trace_str(hvers, ssl_version_tbl), hvers); diff --git a/deps/openssl/openssl/test/README b/deps/openssl/openssl/test/README index b1222399f7b7..ef39d38ac97c 100644 --- a/deps/openssl/openssl/test/README +++ b/deps/openssl/openssl/test/README @@ -38,9 +38,9 @@ A recipe that just runs a test executable A script that just runs a program looks like this: #! /usr/bin/perl - + use OpenSSL::Test::Simple; - + simple_test("test_{name}", "{name}test", "{name}"); {name} is the unique name you have chosen for your test. @@ -62,28 +62,28 @@ documentation. For OpenSSL::Test, do `perldoc test/testlib/OpenSSL/Test.pm'. A script to start from could be this: #! /usr/bin/perl - + use strict; use warnings; use OpenSSL::Test; - + setup("test_{name}"); - + plan tests => 2; # The number of tests being performed - + ok(test1, "test1"); ok(test2, "test1"); - + sub test1 { # test feature 1 } - + sub test2 { # test feature 2 } - + Changes to test/Makefile ======================== diff --git a/deps/openssl/openssl/test/bioprinttest.c b/deps/openssl/openssl/test/bioprinttest.c index d8bb2c2e349a..b2d26225e52c 100644 --- a/deps/openssl/openssl/test/bioprinttest.c +++ b/deps/openssl/openssl/test/bioprinttest.c @@ -221,3 +221,5 @@ int main(int argc, char **argv) } return 0; } + + diff --git a/deps/openssl/openssl/test/build.info b/deps/openssl/openssl/test/build.info index c262248b6f27..d850b5229cee 100644 --- a/deps/openssl/openssl/test/build.info +++ b/deps/openssl/openssl/test/build.info @@ -1,5 +1,6 @@ IF[{- !$disabled{tests} -}] PROGRAMS_NO_INST=\ + versions \ aborttest \ sanitytest exdatatest bntest \ ectest ecdsatest gmdifftest pbelutest ideatest \ @@ -17,7 +18,11 @@ IF[{- !$disabled{tests} -}] dtlsv1listentest ct_test threadstest afalgtest d2i_test \ ssl_test_ctx_test ssl_test x509aux cipherlist_test asynciotest \ bioprinttest sslapitest dtlstest sslcorrupttest bio_enc_test \ - ocspapitest fatalerrtest + ocspapitest fatalerrtest x509_time_test x509_dup_cert_test errtest + + SOURCE[versions]=versions.c + INCLUDE[versions]=../include + DEPEND[versions]=../libcrypto SOURCE[aborttest]=aborttest.c INCLUDE[aborttest]=../include @@ -292,11 +297,23 @@ IF[{- !$disabled{tests} -}] INCLUDE[bio_enc_test]=../include DEPEND[bio_enc_test]=../libcrypto + SOURCE[x509_time_test]=x509_time_test.c testutil.c + INCLUDE[x509_time_test]=.. ../include + DEPEND[x509_time_test]=../libcrypto + + SOURCE[x509_dup_cert_test]=x509_dup_cert_test.c + INCLUDE[x509_dup_cert_test]=../include + DEPEND[x509_dup_cert_test]=../libcrypto + IF[{- !$disabled{shared} -}] PROGRAMS_NO_INST=shlibloadtest SOURCE[shlibloadtest]=shlibloadtest.c INCLUDE[shlibloadtest]=../include ENDIF + + SOURCE[errtest]=errtest.c testutil.c + INCLUDE[errtest]=../include + DEPEND[errtest]=../libcrypto ENDIF {- diff --git a/deps/openssl/openssl/test/certs/alt1-cert.pem b/deps/openssl/openssl/test/certs/alt1-cert.pem index b94d0eaf9ddd..d68b0e519305 100644 --- a/deps/openssl/openssl/test/certs/alt1-cert.pem +++ b/deps/openssl/openssl/test/certs/alt1-cert.pem @@ -1,22 +1,21 @@ -----BEGIN CERTIFICATE----- -MIIDlTCCAn2gAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 -IE5DIENBIDEwIBcNMTYwNzA5MTQ0ODExWhgPMjExNjA3MTAxNDQ4MTFaMGgxIzAh -BgNVBAoMGkdvb2QgTkMgVGVzdCBDZXJ0aWZpY2F0ZSAxMRUwEwYDVQQDDAx3d3cu -Z29vZC5vcmcxEzARBgNVBAMMCkpvZSBCbG9nZ3MxFTATBgNVBAMMDGFueS5nb29k -LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALAv1X8S8uUpnjTa -3bv7m1jJbbX7bC9w7k4TfxiU5XL/m3EhN//EUBJSoamy6vFC6oy/6jA8XmptlVrY -Sp3ZKFdjdZh+CyYZKcrv4JReF2lfRIINn6d6EgcAobGTNwdcv67xuNtMi0meAvmK -gLjOa/IhCHNC+l8vNDJx/a+7mxH+yNxPL6lC/kJMja6oaYndx74WJpPC22LJ/cCp -xspKKsoPYYjk0BX9RvbKO8s4b86Wjzzntht+NpQ4LLh9XwPZog11qGE4UIrsV8XA -YxJrMGQNZd69cnCOz8vnOVCszFOa4qVvXeAGr0iFlZAXbQJevpiiXaXHMEt8C1qH -xpcW8DcCAwEAAaOBmDCBlTAdBgNVHQ4EFgQUw8nB25NP0gUaFCrOwAO5KzllnREw -HwYDVR0jBBgwFoAUCNGb+ebVZHCg8Wsanu1S2t31UEMwCQYDVR0TBAIwADBIBgNV -HREEQTA/ggx3d3cuZ29vZC5vcmeCDGFueS5nb29kLmNvbYENZ29vZEBnb29kLm9y -Z4EMYW55QGdvb2QuY29thwTAqAABMA0GCSqGSIb3DQEBCwUAA4IBAQBUnDMrg1py -8/iYXzs11Qbw7bBhc/HQDpu5QVgriaX2zDUpTLSEUV7qZFSHmwWm91ILw2VA1Xni -ua2sF19o/tJT0ZHpapkfqGpfsym2H04NDMKy0l0fSZhlCB5Kv5wpiFt9hBUrxS/2 -Dd6Kg+Ka02nD5QBXSAk/xz0FmgezzGGCLjg85/Sfe9Y7tNhQXh3HuGXuJizYccdQ -Fh1IAFYW3DZoDKS7dDTCltvDEma/2IE684+CRJiA6PH9rYfJ1CCUfAMpyA85CxKT -P68GDKI++WoUgM8LDfxS0KOL7A9cqcpM2L27hjyEgnqIBPHFfm9fxztBotuCTl5L -vRlTFVjv65nn +MIIDgTCCAmmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 +IE5DIENBIDEwIBcNMTgwNTE2MDIzODEzWhgPMjExODA1MTcwMjM4MTNaMFQxIzAh +BgNVBAoMGkdvb2QgTkMgVGVzdCBDZXJ0aWZpY2F0ZSAxMRgwFgYDVQQDDA93d3cu +ZXhhbXBsZS5uZXQxEzARBgNVBAMMCkpvZSBCbG9nZ3MwggEiMA0GCSqGSIb3DQEB +AQUAA4IBDwAwggEKAoIBAQDTqvf6j+WxCtn4RU8/6uXXgCTcksv6NDXCZ9JAz4Vv +cQbJfhFbDWpGZQZDOCqwtj+7CSVIraxItHzPlrt36cevsoPmpuqGbHrUaOLneme2 +x81SXUq0z/DmDvwxVENmRj1u7iCt3sL7awcid4SiotLOY2F1jBazmqprqKZBUiyQ +XqpSp+9uSav77ydwDXCrQozBdns1YRshgU9omQrTcIqHCj1f9Lo+A2y4+TZYZkvS +DuUZiTfPTPouR6sopM8JLyAZc+TvFFncEg24N+zz3O3jwH82BZEjzavw92J9npJB +UXvKb8O9z7UA65WYuL2he7kSQCsPNLoRWZnVpchwr3VHAgMBAAGjgZgwgZUwHQYD +VR0OBBYEFHvLhGWckFjVXdDI3ds9Wti6zgXAMB8GA1UdIwQYMBaAFAjRm/nm1WRw +oPFrGp7tUtrd9VBDMAkGA1UdEwQCMAAwSAYDVR0RBEEwP4IMd3d3Lmdvb2Qub3Jn +ggxhbnkuZ29vZC5jb22BDWdvb2RAZ29vZC5vcmeBDGFueUBnb29kLmNvbYcEwKgA +ATANBgkqhkiG9w0BAQsFAAOCAQEATVcTyrAxsehdQNrkL6kquXxWlyegJcxvVxUe +hfh9+Lw4620b2S1/l2YxFM3peLAsRgJOznmJOeG18+y7/kx/3UNqYGY7e8iJQ3Gl +JwDIJp5JCaUOlodjhMJtRc7jn9RcsL97oizXdcryyWT0vSlM9Pie9NtHG5iq5X4+ +oL3X8+OG25MOkF2h3YVCEG3vDu7quyTlHc2ebwpdLZRndcOewO2Cap1ettyWXUPP +Mha6wyJE8LJhrGmrI8Lw+i7gGscP0xYZn3yCLk5BtOabn4dvCiDmb+TPruKQQARw +BG45LEZzGxz+Ad3xRdZyVi1I67v9YShoYTCpMTSxJaR0erH74g== -----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/certs/alt1-key.pem b/deps/openssl/openssl/test/certs/alt1-key.pem index b5d4d326c55a..6df050a38f3a 100644 --- a/deps/openssl/openssl/test/certs/alt1-key.pem +++ b/deps/openssl/openssl/test/certs/alt1-key.pem @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCwL9V/EvLlKZ40 -2t27+5tYyW21+2wvcO5OE38YlOVy/5txITf/xFASUqGpsurxQuqMv+owPF5qbZVa -2Eqd2ShXY3WYfgsmGSnK7+CUXhdpX0SCDZ+nehIHAKGxkzcHXL+u8bjbTItJngL5 -ioC4zmvyIQhzQvpfLzQycf2vu5sR/sjcTy+pQv5CTI2uqGmJ3ce+FiaTwttiyf3A -qcbKSirKD2GI5NAV/Ub2yjvLOG/Olo8857YbfjaUOCy4fV8D2aINdahhOFCK7FfF -wGMSazBkDWXevXJwjs/L5zlQrMxTmuKlb13gBq9IhZWQF20CXr6Yol2lxzBLfAta -h8aXFvA3AgMBAAECggEAa073DcqQvhq3DSIw4wm/+DfW5nwXzF1QB6XAR0yI453j -IuhEnzcGPeKuLBmZFxDWoptRG8fpCZFs4kPSTomxFGizewlp6O5ykfPAKR2VzMwF -geCiWPL0f+dWlD1Byu4moXsASDE6tL/UuAAvnl+7R2HvL6SfsdGiTQc4qAvvyukM -szks+MePHSlXmL5Eld7HfKgpvxY1SbYOQU0aPXAQAnLaOT931q+tgZMG6nBWN+pu -w5bgKCA26BMAAaUAdIIDEa9fjzkpXjElCT4qhJYVKQn9Pb7aSc4jihSpCknqbb9c -55nW5PWMZJyCbCOUG/SVTblXV+NmhdtwrgUbHImXIQKBgQDcb/7vp+rq06uNx3b4 -AjTZdzCVbHM8gp7b1GkGD0SncrzX6RxPSzNn7d4AUKY065bwa89A+TRwV8DSo7G8 -hxjzdU/FKCg8ce0eqoCtWjIT2r+rV2P9dFhfRT5jdOwHrym8LeSGzANjIBNV7FOf -FIRkQ1BVD0QSPla+26ASqsw60wKBgQDMnEzChQWgAsBelALmGaj/wDdWDUXK8xRg -s7dG1Sx41SLk39SAjCUYXPyy8IHBitJtPZNDp23tR4/m8Ui1pB2T0EnlzBsuzrZ/ -0aCbJnQ08FXE8iVajrgce4ZCdT8vkeH8EVhqDpJIlAhoKy3HaoAr4o2/uRoGDpHZ -iAbDLTEOjQKBgFrp4dXLhkqFNArMShetKUjLLIFj8f7xzDzT1ODH6UO6QYI2xRM6 -65+gbd/pYzMOOvk7LYYZgXQX7RGyq3oaqcK3Dkg88KNFRUtRfLKCMYcYv9YVu8pr -cosQTtPMBBCDQI44yziA6aC3OOJGDpLcbmG/lWEPY762cSZUBCfOw147AoGAd8S+ -AdcPtdwmcrY9BCfdDuea/JoEUon7UaehDqtVvt0z8bk7kIt4Y0x69ttleL8j8aHr -g9yLsisDhvGR2BFa5t0zhHn3J20E0skINAlMWHieHAyJ5PpJtxJvQpOTCutf1sbo -dBxXcHiGe0NbJrGmmQmiY6mcHBOHOEgxfSoE3zkCgYAc+ozIr3xmUcooUeA7uqpd -LvGGqHThGrtXVFIErOIcajC9bHEeZw4Do/oT5L7Wr7pOZ20VUmuRvwytd7IYYTVV -g+nIyKaMttEaCzHEsO0CQUHexOkJbL4rpc3HiK5hIhL8Yo2L/obQgCxYmvyChpo3 -sXJAoFllBNfAK3aanFOR1Q== +MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDTqvf6j+WxCtn4 +RU8/6uXXgCTcksv6NDXCZ9JAz4VvcQbJfhFbDWpGZQZDOCqwtj+7CSVIraxItHzP +lrt36cevsoPmpuqGbHrUaOLneme2x81SXUq0z/DmDvwxVENmRj1u7iCt3sL7awci +d4SiotLOY2F1jBazmqprqKZBUiyQXqpSp+9uSav77ydwDXCrQozBdns1YRshgU9o +mQrTcIqHCj1f9Lo+A2y4+TZYZkvSDuUZiTfPTPouR6sopM8JLyAZc+TvFFncEg24 +N+zz3O3jwH82BZEjzavw92J9npJBUXvKb8O9z7UA65WYuL2he7kSQCsPNLoRWZnV +pchwr3VHAgMBAAECggEACPTB+1sdV+lioaulF8pDoWOtq5uWf+a3o5sq/U0Kk1WP ++PSZnWWq6oGZyzxUKhf8CFjxt+qJUKY6Zbo2AnPk3B1MkXTclYV/iP9LIoo+WzCH +EoYaBB6MTd+ycg/jri8oqEnxHgo/681yhtXRyePj0ZHI7OVZjI3tyhJfvoHQmuci +u6qYYUP0GWuyM+kHS11vn6Q1U8nOZWvXpEDXDDdJ7+2QRuv01AXcjFxpbFzkMn2W +JkhKkCTIQpUU66VMRHwNexi+TR2rRESq0G+fa+6gaVFVIs0vBukq48IeC5W21j1L +zyftHxci67FlYC9iaiUxDVt3KB+lcukx6Cz5mjtzqQKBgQD/GrAtFfjiXKj9O5ld +K7dnnBHE8fzyWQWyOfwpVjNAC1J7tgwFvDpBpTHOwS5JnCwMWWM3rkBPRhCusmrF +AtfE8b643G+cJbTgDuEhGh11QR0p9VWMVFQL9kZxx12PegDtFBfzcfcI3XQwKVKL +ZbQn4ibW3BKSt9+Nh3APa0s5iwKBgQDUaTxZBajTdzoDd6Pg3warL5BhsxWr2tUQ +qf+iVoba2Y9NTBdxBht2whSaYweU9kxmeNZvnCu95B8HeRGE69Dxb7IWwpsaxoaf +ND0NcCF7aPZgx7hvhbHF7duzt3nuv+q5sOuuyHPzm+nF2snAuY3Zg+Bpv3nlYekf +18aXZdwStQKBgEpF8e9ei1UUl1sLZC6dUMvIw9+sePHye1cVzNYYM9m8sio0qbFt +ySRdvW+uDRT/dE+wItQOVsj95FOIvM9ZcYr0u4vFGnXDALOPgXqKyPLfn2cc9+hg +kQvei0oLOrFQWz6rcAHAN6WMHIz9KvxNAzPtg1NhRcMT5/Gj8jt7CK7bAoGAIeKz +7OO5Phr8F0eDzkDmGHMbDmr6XxMnAGSOUoCJPOqOMN+dsbsusHBfxw1bTUlJgONw +GhgI5l85EAEhaVoRWCLgfz8GbWwUV9uGjdlAjiZ9f4z9AFWMua2rae0wN4VIVd1C +i/yQeuF5lsXDf8paNcQTDeus74oCHcFXfhmS1S0CgYB2q8E+H0kFHbUxkIZYwhsM +r0lTecn+kVsyPPje2UlzfTwvcC9dFIC4ppCdJGUJAwi/PJnr6xNyOH6I1pjUA8ER +Aofm4Oj2DwX8W+81oO71/RXSfEFUjdOw0H6iRDyvWa1gqftj2/aWjV7Ifdo49thx +EzX/9GdsRInifN6FfOfo/A== -----END PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/certs/badalt6-cert.pem b/deps/openssl/openssl/test/certs/badalt6-cert.pem index fbe040b52c6a..f41568f6eefa 100644 --- a/deps/openssl/openssl/test/certs/badalt6-cert.pem +++ b/deps/openssl/openssl/test/certs/badalt6-cert.pem @@ -1,22 +1,21 @@ -----BEGIN CERTIFICATE----- -MIIDljCCAn6gAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 -IE5DIENBIDEwIBcNMTYwNzA5MTQ0ODExWhgPMjExNjA3MTAxNDQ4MTFaMGkxIjAg +MIIDeDCCAmCgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 +IE5DIENBIDEwIBcNMTgwNTE2MDMyNjMyWhgPMjExODA1MTcwMzI2MzJaMGkxIjAg BgNVBAoMGUJhZCBOQyBUZXN0IENlcnRpZmljYXRlIDYxFzAVBgNVBAMMDm90aGVy Lmdvb2Qub3JnMRMwEQYDVQQDDApKb2UgQmxvZ2dzMRUwEwYDVQQDDAxhbnkuZ29v -ZC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDKz8F/ndKz0vuv -BymjTUjtrWSQsnsuisR+oW8CIliNBi8yqqeNrtoa2s+e2GBC7gxDlK9IOqGo4Ulu -9jY5On6RysrFWLpK97I7EP9cg63alH+NRFEwczRzErHtYx54yiBjcovcCVeTtdnd -7/P4T8hIGy6QjdW68lzwnN/I9x11NWoipIKvAOGXz0L/WaPPWZ0GJFlBqEX//O3+ -6sweSUX4ivAC9txou3rwDA8kJx5Ge9trQ9dPPG/jpL96f1DLE9H2SkVff1KLTPmb -jUwiYj161lsKLxGkbdmPWRjt1pP4+5UUhioo1Y0WrTd5ELwB1eKTtWsOlRsdLOa8 -1L6m8ngXAgMBAAGjgZgwgZUwHQYDVR0OBBYEFBIKyD5bUUNIFxlQJl/rBvvIm0XZ -MB8GA1UdIwQYMBaAFAjRm/nm1WRwoPFrGp7tUtrd9VBDMAkGA1UdEwQCMAAwSAYD -VR0RBEEwP4IMd3d3Lmdvb2Qub3JnggxhbnkuZ29vZC5jb22BDWdvb2RAZ29vZC5v -cmeBDGFueUBnb29kLmNvbYcEwKgAATANBgkqhkiG9w0BAQsFAAOCAQEAa2lydA7a -YgRhYeIuPEtR+bKyDkIKNjvx2IRL/FL70s/IWFWDK1rpsMYLGNa7rWpW5gq4T6zb -JIwC/770Rw1p+0j9eAC95d2wCEhyNcLdoP4ch7whr0MhxYHUJ8zQGPdQ97DWGoEB -2seLjrhMrX004TM4UlM+lpjsb88QEcD+kOEhdDTKm0ABUygOr1KRay437mtUhAzb -WyUbAjKbhgyv6IFRNHKy6YtCMugPihn+Pd1NY6c2ACRVOAUS/+rvVyjxBCATW5Wk -zAtNIxYgcm3rYRroGYT2BGj8Ic7oqPOWPdGWhsieX0c+y2ZnS727Kwc5tXFfW9By -GH32QmEN5o5jZQ== +ZC5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDl46xhstHmmYhp +XY/FcnQStR4XHtHcNRyvq1perl0fezeCY85KkddGppic5qIWQDL4ViP3HfvhMlDZ +E0tAjEfr8Auac9gpa2IFVJAzMnnzOkhO6cr5kmid4392tNCG5sUWS99t2Z4f9sOP +DQKdoN7lnmxnpZqNf9NUERsN5i4fcvErfQZ4LqV5ld810ZAQZUfarn1rg6/U/ADc +qA0uQgk9RxVgSDt3M5mi8AaC73Be9nAefXQUybzs6J8EfsDijhD85msxs4Fha4pg +gM+bXHv9C7whxM5F2WTeET0cIcAfE3+jzQlkjcjlS1rTEq4d0Pd+1rXkhMwZeze2 +KRL2Le8jAgMBAAGjezB5MB0GA1UdDgQWBBRJJljvheyfKr9neNplhIMIFx25QjAf +BgNVHSMEGDAWgBQI0Zv55tVkcKDxaxqe7VLa3fVQQzAJBgNVHRMEAjAAMCwGA1Ud +EQQlMCOBDWdvb2RAZ29vZC5vcmeBDGFueUBnb29kLmNvbYcEwKgAATANBgkqhkiG +9w0BAQsFAAOCAQEAPfRFkpkTsPlH54n/i3kxR8Hw17kUOV0/v39fnNzV+PXS/IIU +9OFfP7qNeuoWVQKXCwNWGWYXb7O0LNJMJQWWtyXtzWH3rOSxdSRIrTsCVHA41Lbo +te2nrfnGMtg6em51Do6Kk0JM304sVAWl5OY/eckBmuDgN/5WfZudOLd8Ohv8vZ6U +ZNoSBNpu1x5gfEPywMUGAgbkNZVpzNAfulx3/D2kWk0qwEKqnphUyaXiTVqO49gr +n1LwSVdqBcmapBmEO3puV4TBWFwM49iMMNGn0fp/JBVsLjt+q7TK96qGBo/BSEL+ +e2TXTNpdkn3l+ZK2FYdf7s8fytoe+6o92dN+fA== -----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/certs/badalt6-key.pem b/deps/openssl/openssl/test/certs/badalt6-key.pem index 203a4c7a0010..782d69334a40 100644 --- a/deps/openssl/openssl/test/certs/badalt6-key.pem +++ b/deps/openssl/openssl/test/certs/badalt6-key.pem @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDKz8F/ndKz0vuv -BymjTUjtrWSQsnsuisR+oW8CIliNBi8yqqeNrtoa2s+e2GBC7gxDlK9IOqGo4Ulu -9jY5On6RysrFWLpK97I7EP9cg63alH+NRFEwczRzErHtYx54yiBjcovcCVeTtdnd -7/P4T8hIGy6QjdW68lzwnN/I9x11NWoipIKvAOGXz0L/WaPPWZ0GJFlBqEX//O3+ -6sweSUX4ivAC9txou3rwDA8kJx5Ge9trQ9dPPG/jpL96f1DLE9H2SkVff1KLTPmb -jUwiYj161lsKLxGkbdmPWRjt1pP4+5UUhioo1Y0WrTd5ELwB1eKTtWsOlRsdLOa8 -1L6m8ngXAgMBAAECggEBAJNMHK8BAvzTqTPPsfAGu4bTvgxRdKGy609FFAiqxUF3 -UmQsCZEfgwyqCszFPfSeS43xuPRukObE6L6MV4ls8GwWqvp1nKfCClJX3/9jK6tq -2tDQ416a7Wb+FvfgW0tDEg7oLKfcqRyAoQFNuxWHbGDiTQlz2dzzFYkzhlzBDUYH -/pu9qkNFGfYMFwsBUd8pp8zMnv552CCIgalBBFr1hy9q47HBaJPaF2/CjZJmsqkp -rVMBH7+j0y1DW3JO5rSKcRdz+mgEd9m/yQIazvBPJKxeGza8JfLBuACYFLIoO1S+ -b8s/zmQPHeZwTxSsM64M1uYi4dmJy0viozLlWsjrE1ECgYEA/GxGG/lB1mL+Hzmc -kXzWmA2nLPxZXGxMBOYH/n8l4OyDmKi2Bmly7kS0kLdY6gYTVBWFCRcvPxf+UJu9 -x4NcKDkjXVXSg7Muux3Bh1JoRCOKB2Hk3pqdDe55GcT5bSikkd5PYCNobcnqzSK1 -HzKveDdukraZxIPFpVs1VM9/gxMCgYEAza+BJUAEWoq925a1RKlMwdXW1ONBhFqU -fXon15fgycHkiYIBGbGE65Oyz8BwE6jNAT+SwKlNCc6jPAkXvEUpczEi5Rcox8Ec -hNoXBHcBxHEhtfV2VKX5I9JFAadmvnfS5St7HjRLzE2Y6xym1+fKfnAlSLpdb3W2 -eRqVBi3F020CgYEA6K/yrQTHwRX+BdC42JCIzSAA1IJG6eDW7skR43NX+pBr+sTD -DwQTszrYbHLnXst888zmluutXO8EO1Bl0E3yHQ4W4IolhcweLtUOOm0nunA8Y/PE -48MJNfd34N5nw01s7x5Mc2YQdOxmKvVsmzbA9AO9RTdYZgPGpVh/wA+LDssCgYBh -F2+G/ekQNF3awhFfD+vDtAVtCLlsmLVvZbJY+sCJfJU8s7mBP2LXMSk/GD/Ph+b9 -p9zGRSSwdHJpbIFfxeYDEja+nWgKowWrUKd83BBhgmW/Vtc8rfwlBKS+Wx8M2dMb -iqLbZyRAlICSuzumvyu+84EmC5L/gjlYgUvHVuQDIQKBgHH7q3hrKI5mQ0BR9h75 -4yP98c+Duz8IsQllIG0gzCiiOYIVTl3uzTCa/E9Sa+jG+kFsCeUDchmC6LmHdF/Z -ZHfECcQT4B37xMMwvjwNW7E6/FyRx3XC762Fd5vlz3fBuVKburfh1JpfpcO85Wvo -R1UfsJugW9Yetsqd9WB6q3ln +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDl46xhstHmmYhp +XY/FcnQStR4XHtHcNRyvq1perl0fezeCY85KkddGppic5qIWQDL4ViP3HfvhMlDZ +E0tAjEfr8Auac9gpa2IFVJAzMnnzOkhO6cr5kmid4392tNCG5sUWS99t2Z4f9sOP +DQKdoN7lnmxnpZqNf9NUERsN5i4fcvErfQZ4LqV5ld810ZAQZUfarn1rg6/U/ADc +qA0uQgk9RxVgSDt3M5mi8AaC73Be9nAefXQUybzs6J8EfsDijhD85msxs4Fha4pg +gM+bXHv9C7whxM5F2WTeET0cIcAfE3+jzQlkjcjlS1rTEq4d0Pd+1rXkhMwZeze2 +KRL2Le8jAgMBAAECggEBAMcDjTTa2GmYWoZUr+UPizqyvsTnMmg/NoFBhy9WJVne +kpR3kJvvm30XNiEGbCV1GGryL5p7w5UVuPXjhQ7xIkY3feQNC4H361iP93HK7dXJ +i9V9AfGCdLzSuILsT2Wpm88MifUQIpqrRmqtqakKHkyMFG655409rpYlZNVogl9H +vzrTE8rjysNMjP+bpbgkxUJfeATw8OYhEwd9ahj/E0r0r2enYhGEP3j+1zYsGdmM +L2Uy4M+modaAWpZg5pUWpFjxl+V2cSJHdaQc8KYg8Z8RUyzYipFk3YzjP5jtprq5 +dHf9FqlcXk+MtzcYe+x8mIb3uwZhOtdpnUqe5l+GTyECgYEA9j++rS9sajQzMqp0 +p+EptacD/p7A3wldIDGEpPJsSQL+vhcigyn4iPCM1pGWR4iuR7Od9RpQSf3Tfnqc +ZwUJQOpiYpxo1+QlqlBJkDjDRztp+kETZAgzc084ZhwQv9PfYyxa+8layQFhnClt +Z9G0o4AV1povVeQLO5+9CQZQ4VMCgYEA7v4WuydzlLGKppsJEG8vvieR64mjOfO4 +gHBMEYnzEeTZPDvIfEfguM1upJCvt5GXp3huVHCAsFgs6kDjVbpIL1A2HzrMPtOa +MNDSOrpuLcakAgEgx2VFv4TMnA1QKPg3//YCqEqqTJyX0C4OwaADRZJS7YfHp9lg +mpv90baE8PECgYAv3oxulj15F9SsEL7Es9yr11/La4kK0oMr8vRaLFYoi1CCG3U2 +Ej6iQEDgpUSVe1iFz8DxGMBq4dDvUV5+GFiIKggeK1GmRk+cICdsxdwQSNh9MZFX +bNCzpb7M+r+2yrUuTj0RnT7svDwBY3xFJlr7PbcBFNAG3mHgoVjaHEQ0yQKBgHbS +zepvSv/65bzACFmrbklU0zAQVp9RlcIGE0wFEl0rMvbHon5oHkrDmOcpKLRUJtqU +/gXtiY4jyPEPIfhVjd44OzB7w2DZRChRKrUYS/9ma9SzSuDYcT0vgat00w4Lm4wf +fGK//Lvqf3B59cw/CmFkxuZiQ9ooMees9x11adOBAoGBAMdb0r8sAtgh+KTbA8Kq +guIWiknOk6/LYUTuT3fidPIPbErrUQQR9WWHuXjrj2RyHI/RLjYLFamikvhU7PmE +jPjPAo4p1a0WBwrYgjGDIRjTVjbUK282vuYkunGWYfgnZurAyjJCndL/eNZuX2F5 +m1rTfab8O+tOOGKGyzfouD2A -----END PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/certs/badalt7-cert.pem b/deps/openssl/openssl/test/certs/badalt7-cert.pem index b515ba43d99b..4fa81b3c6f8d 100644 --- a/deps/openssl/openssl/test/certs/badalt7-cert.pem +++ b/deps/openssl/openssl/test/certs/badalt7-cert.pem @@ -1,23 +1,22 @@ -----BEGIN CERTIFICATE----- -MIID1DCCArygAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 -IE5DIENBIDEwIBcNMTYwNzA5MTQ0ODExWhgPMjExNjA3MTAxNDQ4MTFaMIGmMTsw +MIIDtjCCAp6gAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 +IE5DIENBIDEwIBcNMTgwNTE2MDMyNzA5WhgPMjExODA1MTcwMzI3MDlaMIGmMTsw OQYDVQQKHjIAQgBhAGQAIABOAEMAIABUAGUAcwB0ACAAQwBlAHIAdABpAGYAaQBj AGEAdABlACAANzElMCMGA1UEAx4cAG8AdABoAGUAcgAuAGcAbwBvAGQALgBvAHIA ZzEdMBsGA1UEAx4UAEoAbwBlACAAQgBsAG8AZwBnAHMxITAfBgNVBAMeGABhAG4A eQAuAGcAbwBvAGQALgBjAG8AbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC -ggEBANStByWr70u2A49OO+LYu0ivQP+uBu2n3E6RoEYf+op/+JF3clwfMQCGqiSg -QxOJMHkcu4gJDudRLCSXqHPnR0hOd+mQ5wQQJmLj8A99ImcD2oN5R3V5I4bSlXP9 -GCq2pFDnwXuEcJ3d2Dt1HYO4jA4Ol/RBT3NIqmwSnQzXv98mjYFpy6AuAIaYGmbh -1DLWxsTPI2NjNafJYS85NrQDLkTpq48nCmQCJ+ly6Zzu7WuJiDKD1Rxs7ZwgNtLi -Zhp41TeFHxCbfSFKe9u4rnUmImKxwgc9KuzOLpLAzD9avWpPGHtkCsLFsiw/EJYf -UdeCXc7tz9WhXZzOk/ffLOcrorMCAwEAAaOBmDCBlTAdBgNVHQ4EFgQUwYsR1XfZ -2cPcAR7i5i9obalnJcIwHwYDVR0jBBgwFoAUCNGb+ebVZHCg8Wsanu1S2t31UEMw -CQYDVR0TBAIwADBIBgNVHREEQTA/ggx3d3cuZ29vZC5vcmeCDGFueS5nb29kLmNv -bYENZ29vZEBnb29kLm9yZ4EMYW55QGdvb2QuY29thwTAqAABMA0GCSqGSIb3DQEB -CwUAA4IBAQAN/klfzMLi2acp5KdH9UZR4XCk3cZBOuMuI0vU+wrU/ETgY6rFhAwY -gSZsO6vX0mt/G6QfOmY5+kW4FY5XavGhhNVY2x5ATZKvQCf+orIsUHOBxVTjH6az -uEnxGDRTbjXSkBTCTSoOqdJNeOmEwiaHEVy/atumUW2B2KP5FeBGdud/94c4Q9/O -WBJ0EICGF6hYTDra63lAjxyARTvocVakIE8zytT1SbU4yO05mYPyNdXxiXikepFE -phPQWNSLx4EPBIorGCFj7MPDmFCH/+EjDjGz3SNUvqsak6MstzK94KVriQyIHKex -IL5WuKFm0XSGKTX8SzyMGErMGeriveL2 +ggEBAOG4PegItzkmJDwlSA/FyVHWLWUIQrnxgS0KSds3On2CMsjDJ+X77B4s1IPI +yKHuqNbXqV/hJGAxKnZRZe0D6VsmKlYOYpz9QtFxvpo5DwA3q6BTx6sIElFn/lip +Pbu5ZeIMNeN4bot7x5sBobr6OgidAVaAuqQHHJnD7mQ1s22qY0UqkBqNBhhJWOmx +YC0Q56WDi9+C7Cy2+kiiSlT4jCZ8m1K0F7tTK5mF0p4HppXmXLzcecZ/Sw8jOqQK +JM/4UCj/nxWCGYKWkv8zLJtG+ryfZMf15/0Cd1dzHAS9mYU4mFssPdFyT+WFpw7b +K3TOTXkS/tAPbj0xin2wqBJz8m8CAwEAAaN7MHkwHQYDVR0OBBYEFOWYNq+H1LH6 +lZUpgijb/S/sAiDsMB8GA1UdIwQYMBaAFAjRm/nm1WRwoPFrGp7tUtrd9VBDMAkG +A1UdEwQCMAAwLAYDVR0RBCUwI4ENZ29vZEBnb29kLm9yZ4EMYW55QGdvb2QuY29t +hwTAqAABMA0GCSqGSIb3DQEBCwUAA4IBAQAwUxnqq0gBgKmEHIRgZVu10KtOknjt +p/wEcqQ9METvXb+4/a4U6ftjTgaOrPVjamNFlaoUcTgx2nk2zRsjM+e+tpnxDgRR +/yoVB3HsISpdeN70s/WYAgvev/FdV3O+JWhUYHdKrDB4DMfPhlRIfSgOymJljo6+ +wL8qa7lVonF91Im4SCbq4dqtAnbg4ttblQ3yjFfQtuwzyJD/3ism6FQPLbg1K4eu +1Si0EDL4Fct581Gb5D+NU8PYiwg7Nk8ubNlRHXydoVGDLmT0hLE+/IsPd1M8tMqm +sifRl2Is+lGVeg4pPHFjB0npTNkaYafu89dz/3PNRRr5If06B+apk4AX -----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/certs/badalt7-key.pem b/deps/openssl/openssl/test/certs/badalt7-key.pem index 50557e896812..b453f1ff30a2 100644 --- a/deps/openssl/openssl/test/certs/badalt7-key.pem +++ b/deps/openssl/openssl/test/certs/badalt7-key.pem @@ -1,28 +1,28 @@ -----BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDUrQclq+9LtgOP -Tjvi2LtIr0D/rgbtp9xOkaBGH/qKf/iRd3JcHzEAhqokoEMTiTB5HLuICQ7nUSwk -l6hz50dITnfpkOcEECZi4/APfSJnA9qDeUd1eSOG0pVz/RgqtqRQ58F7hHCd3dg7 -dR2DuIwODpf0QU9zSKpsEp0M17/fJo2BacugLgCGmBpm4dQy1sbEzyNjYzWnyWEv -OTa0Ay5E6auPJwpkAifpcumc7u1riYgyg9UcbO2cIDbS4mYaeNU3hR8Qm30hSnvb -uK51JiJiscIHPSrszi6SwMw/Wr1qTxh7ZArCxbIsPxCWH1HXgl3O7c/VoV2czpP3 -3yznK6KzAgMBAAECggEADjQ0Kv7tr3fLixGljEP/Vh5mT+02hz7TxueQ9b4DBKcB -We3JVH+8zRUxXdraP/7EnwIdQDuipC5WrWb3mC4VI64h8hZ8Z1gQyEAC83XfC1RF -jsxVynG5vrJnyuRXbdre5Ixl7rLsto5vd6EdxINZz0KIQYbvIHr07tzbYlUyelvA -mu0kYdtbjm2p2AGJJ99zN3EiQ9lZDyiFirOXEA9P/YdKKVlIwpDPbn/TmNY/k6Ul -mRxgAJKwKiR6Gg3QMdTUKeaXBpKf/pa+5rzR7zxNbiQO3IXOVx7ZzQ2R0Wuivpqk -yjMaqUa7dDuvtIHJBpJB7TIL6SlQkiS1lEQFhO7EAQKBgQDz30obdymxqQVy7IsH -NLo5xRX1hRRN9h34Y4qC0JXkCTG1fWJ19KYHod0S5peaIo/ThDVf1UXln6amdCjM -oIfhmo0baNIdMMpxxBdsdLfUKwyVh8qROaBscPE4FGBUrfEW/wSn1WRYcWh+oda3 -LuLVf5Qt9a9f6ZYuy1X6dDi8swKBgQDfQJTSFUNkV8yKfMX54x0DcUkiWOu3LaET -GSu0UXqBVn1Q+u6CUAkh5jA9fpyM5sp9+t5FuwjO+ITHfiNFoD/LCeMUfYVDF7O2 -uCLTsN+7gTGpKMnfL/rg9exrsfDdsmbQe4BhrUFBsYfKgBlBraL0QGD+25qgU8CS -CQ6toGCCAQKBgQDCYJskwRoObPXW4AsAN1qnaRtTkjrY2O6SaGSiV7bhByMD0WiF -M/aR5sXapsj3Jc0Vfi88rzUDDPk7eyJ51wn3G8SUsDuo4Ja7jtxMqctL5PQmyxD+ -J7xiMrNRS4xscifTeHgxfbh5dgsfw8bsQwaxvPpSl5ytCfWWXqOs+K2wWQKBgBM4 -Mher8PNQg7FgcILExJipRgyI7zID4ZwNTK/nW86KrZstHx9k2IRslraUkdGnhMM3 -t671HRsEVhn+h/bUhulp3nzDGZffEH+odocW8QvpYWcYtdha/xQi18mltgC//Q3x -s+m0yqtnJzONt57p3d99M1x9d2BaFXf9A6B68BQBAoGBAOatu9+wGaIEB//fpaQt -mnsS2XBJco5gHTjOegCSNe3gQQsB5mhTEekOeMzJ8WLTMVXQVCXx9/8HxKoycbq8 -M/7ScH1iT/wJTkSsjyeycUgH31GPeRvmo9YU2PsW3NN6ZyNpxWJFdcPYHAzZqJeA -cZtQWiEyaf026DdR8YBYn6tf +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDhuD3oCLc5JiQ8 +JUgPxclR1i1lCEK58YEtCknbNzp9gjLIwyfl++weLNSDyMih7qjW16lf4SRgMSp2 +UWXtA+lbJipWDmKc/ULRcb6aOQ8AN6ugU8erCBJRZ/5YqT27uWXiDDXjeG6Le8eb +AaG6+joInQFWgLqkBxyZw+5kNbNtqmNFKpAajQYYSVjpsWAtEOelg4vfguwstvpI +okpU+IwmfJtStBe7UyuZhdKeB6aV5ly83HnGf0sPIzqkCiTP+FAo/58VghmClpL/ +MyybRvq8n2TH9ef9AndXcxwEvZmFOJhbLD3Rck/lhacO2yt0zk15Ev7QD249MYp9 +sKgSc/JvAgMBAAECggEAZG2cJawTEXtV7ejMii//Jck8g1JMlfzM86Q7Pizxejw+ +qjKiguI2qSpbF5NzKRFNz+E+e+lpTN8zPFd1GSJ/Zk2x0n4uBBlu7E9GdcnjUb5z +Py9njEJYHB4//WS3kdmoag3ywBWqYaceJWpxcga5YXGx0bIO2MJNSGDzpWR7Q9QQ +tG/lWmno5goY2BxI08BTKSlqNIBkg/rr9jJo3axRcEmbx7hj4vUkAlypFKtmR4dW +bNo0f6VAd5Y6c9YbnKybR/44lScBksuSkZjm076cbbbp5PpsiLGe/12bqUcwCH+T +8hRVndmOLdOxC11OZOvMbX6x2uXNh3/Qr/GMyfzZcQKBgQD4we7E9vOygk1J5Vbl +1zETR9x3dujpBBx3xaHXUSJNUTNwmnZ+0JoFTqPkRmmPMNK7XfZuPymBehtk8WYt +NnezM2UNTdbfVOnJWnU6igRNGBaDW6F9AezlADBNwIbFVw6RqP4fTUFsmm9TQ/8M +4kZmmlW4uLZyX0WQO+AJa7NShwKBgQDoSpnQgmWqXMcaHwY2l8fEDuDc41nDoJIm +/CMppPbr7GkUX4OU785p6E0N0o1ONt+xCBT1lxHwWEeMAKZXrNC1XGpfvhpVZ72v +VruATDFs1rcL3S2Sty7A+jhFKKXlGeDWNcpaKY8nDvv2uJG0+J3bLprdMqnY/gQ1 +C+FzyQ6S2QKBgDnHIaRSD6xoo3cEc7iS0O0/ha+hyNtGfy46kyqlx6fZsm73EYrG +/N86ssp0qFP/7RJj8rcMqKFQMUiy4R6jRg4zY8dBSyU4XczM2+mq4PDfJWuBPvMA +HXvbHV0R2LvBSrr+W3f9w7Jr9GuMoZLmg5+VPU/YZ1gNVOT5Y0IM5+vFAoGBANx9 +CzlGvLeTrw1VS3GAaobn1Hr2dlrhTDki9UFvK03PLgK/ksdJRLV0YcdwBt6p6XRB +hpuC1O087lSuvTXVfJnZacMNUDOm7/7BpeJm8DcuK7tgKwTrSb61A7ppleY7xRWv +Iy6n6hCaAYIzuWJ85mGJAEhb8apdmqK7bzmXK3UpAoGBALdOvJfqbF0YlHbdQCVi +ftjtxs/dZKdF1rNARR0VMqUtZX+WP2b6OPXlwux94Cr//iNv5ih3B4Z4LIgTpgBJ +AKGXEBGMMthAlptC4BcOAEs9cYeWGLAoYk8jpNmXvXjhGqvzhPO2YrX5xy46dVOG +iiCseyA7Kr8Axt9QhUzoi5f7 -----END PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/certs/badcn1-cert.pem b/deps/openssl/openssl/test/certs/badcn1-cert.pem new file mode 100644 index 000000000000..3b3bad658bc4 --- /dev/null +++ b/deps/openssl/openssl/test/certs/badcn1-cert.pem @@ -0,0 +1,20 @@ +-----BEGIN CERTIFICATE----- +MIIDQDCCAiigAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 +IE5DIENBIDEwIBcNMTgwNTE2MDI0MTMyWhgPMjExODA1MTcwMjQxMzJaME4xIzAh +BgNVBAoMGkdvb2QgTkMgVGVzdCBDZXJ0aWZpY2F0ZSAxMRUwEwYDVQQDDAx3d3cu +Z29vZC5vcmcxEDAOBgNVBAMMB2JhZC5uZXQwggEiMA0GCSqGSIb3DQEBAQUAA4IB +DwAwggEKAoIBAQDN9WI6OyxnW+R98FqrWwMo3JE165bRB8iQOdDP3xE1+bvUMDYh +8wFR9gfNrKhqXubJ3lCHKgaApTXNKM/jwrT/pqhF6iNfPIbKAMTT4VZPy4/eI45R +03Yn+dJnZLDz7BDpnuhORp8XzQqfxSGBX0Rdr17xYOwGHcruwoitRyS/w8p8EKos +/LIDvjzye5GaPXqXkAkcBcLBpWlgMm+j8xE+LzGw1NVw8vWMSpP2WX9kp7aPbh+A +jSbT522yHy1r6WeElbSY7WOFvnmgbZ19pUdyz8CN6KKb87dBA0joyWSly5ZsNbjh +/YuRhCgRExvdQ6kImwdKAfO7RLkxho6jny1HAgMBAAGjXjBcMB0GA1UdDgQWBBT5 +fenRjyFKUb1XvUnm4GV9kZmONDAfBgNVHSMEGDAWgBQI0Zv55tVkcKDxaxqe7VLa +3fVQQzAJBgNVHRMEAjAAMA8GA1UdEQQIMAaHBMCoAAEwDQYJKoZIhvcNAQELBQAD +ggEBACKtfZCcP/pY8Bu+lb/pGZj5txsmNbJ1l2RVACQA7CGjwfUr7VaQGMuT+FuA +Erlh+UnEC3R/e1xQwgJeuAXBOWFkxA61isVSrmM7YM6vDB0+t8N9lMUFjPbRyEkM +A5kaSLPrgSOg7ONsO6YGbaWm1XCoUC6Ilrdzy+ckzklgjYRth99b2d5WrjIxEWIq +BX2DI2ruetjXYGRzsqSK+O9d4fsqrb5M0ZCNWQZ4WnrMNaAeHWpW6NqSvof/N21x +WC5zcU7GXLrDigwWPMDLQhVtu4OihWjsqugh6Jl7DxDBhi8JKO6tJQAISHjKaL98 +yXZFsQ//q7ATwlcHyB81B+X16AI= +-----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/certs/badcn1-key.pem b/deps/openssl/openssl/test/certs/badcn1-key.pem new file mode 100644 index 000000000000..dbcf4b5d44ca --- /dev/null +++ b/deps/openssl/openssl/test/certs/badcn1-key.pem @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDN9WI6OyxnW+R9 +8FqrWwMo3JE165bRB8iQOdDP3xE1+bvUMDYh8wFR9gfNrKhqXubJ3lCHKgaApTXN +KM/jwrT/pqhF6iNfPIbKAMTT4VZPy4/eI45R03Yn+dJnZLDz7BDpnuhORp8XzQqf +xSGBX0Rdr17xYOwGHcruwoitRyS/w8p8EKos/LIDvjzye5GaPXqXkAkcBcLBpWlg +Mm+j8xE+LzGw1NVw8vWMSpP2WX9kp7aPbh+AjSbT522yHy1r6WeElbSY7WOFvnmg +bZ19pUdyz8CN6KKb87dBA0joyWSly5ZsNbjh/YuRhCgRExvdQ6kImwdKAfO7RLkx +ho6jny1HAgMBAAECggEBAKDxiUHx7cATShm0ElZnd6+dtQfKwv8zsuIpm+hk62Ef +d0zYI+UhrT1sIiryKmV9JaJITOtixtQOxl088D+Obrx8cnC4B84rUTVXpnfgVf9j +FljDtjpxIZsZmPbc836ZUZoOaICKpVYHD69Mb+NWG+mN2oaLc8VP0L4FXKLzvl7u +69NQlTPG2CS61BktVqMtWWc/9CvdOwqwVbckyISj9QLUgSXIyB4IP3bjp0RYSpOu +m3nhuhil1G3c05R4UfiE2d9Er7SBBoQ304ld892YRinSgtZqC1G25uZmWJ3ekAAM +bg6P0hBd86F/G2TxNdelYrxTazjqZShYi1N48SK6kUECgYEA+51O19Q5XkskD/Dn +VfaCjSOTFwDlb5ATmVCrJu+13/5IJfmJgWA6xdqfWoqxSOsJzXBEETKWgkahoo4K +OU1UaBTHEJ588xOpoMzbJkKlb5hPseEQsvu055Ky0euMgmlrALPQQ9e1DUSlowui +Cq9wCak4dqq9NNs6FMIeGhqczGECgYEA0YxcajJFxPHJsdFCVa4tdy9jgfC64t4Y +CWDzRfUnuX24ILbW9+olvvoZkMSzoVpiQ9YU8kPJUaOyFrw6jUV5GRHUCMgfkx2Y +nqe+7aSFmv0Nlo0RMV2PqaOZzlxnG9FzyNE+4PygZqtFhN21b5Idc69k2Ltu7K4J +J4MG1kMUGqcCgYEA0ttUPEisPtoHgZhntUFczHx4gnmMzH5X/k5876dIqkrFGZXR +5urGthHtIwpBYZMeZtxjHmpfeRNJ1xjjdnvYdVScMdAvc+ERcSDbsmd9jlR8zNuI +jAWl576nPoX//TXspu0JZiE5p8HUcRuJkxzMbjwyhje1Ubs6JDU81rFgn2ECgYAG +3WVNqVX1zMIBzEwzCGC+7dOBt0Q4GHSLIhz2JsDlZ8P3dmX2ezo/Vmwt/POxjod3 +l3TaNvRKc2VrL0FvzV3ZP2dF3mCCbk7Iq9AqcuBZon6mdvqgNmN1eEGarBZIqAT2 +CDzaHAyZMHU3lBfUjuHeH1nba9CHenAcVkOME2h+MwKBgQDiHAnTK4ovCNmT5E9i +03x/wPSH8FZ3Wrb1GMtNlTc7lOtB5eYIvwkaloJkNKHbUDv57V66hnYT6CyH4u45 +dPtuohtafL9mdScYqmicGLtbLLglSQpJYt4J59hffNZ30E84dKXtyDN7E5P5Z00Z +8PbOMUy3oK6j+GMP/xRNI76RtA== +-----END PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/certs/goodcn1-cert.pem b/deps/openssl/openssl/test/certs/goodcn1-cert.pem new file mode 100644 index 000000000000..d9205e03b005 --- /dev/null +++ b/deps/openssl/openssl/test/certs/goodcn1-cert.pem @@ -0,0 +1,22 @@ +-----BEGIN CERTIFICATE----- +MIIDkTCCAnmgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAXMRUwEwYDVQQDDAxUZXN0 +IE5DIENBIDEwIBcNMTgwNTE2MDI0MDA0WhgPMjExODA1MTcwMjQwMDRaMIGeMSMw +IQYDVQQKDBpHb29kIE5DIFRlc3QgQ2VydGlmaWNhdGUgMTEVMBMGA1UEAwwMd3d3 +Lmdvb2Qub3JnMRUwEwYDVQQDDAxhbnkuZ29vZC5jb20xETAPBgNVBAMMCG5vdC4u +ZG5zMRAwDgYDVQQDDAdub3RAZG5zMREwDwYDVQQDDAhub3QtLmRuczERMA8GA1UE +AwwIbm90LmRucy4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDDigxI +nlYVjHtrFI+Iv/3b0jeZbs1jVnPF6ZREk46BTNAVNZsq24jKFG6yK4n9vKA/JuS7 +jZe+gMX+sWh/S1IlsNDY8/Io1UsG/s1tmsvE2UrURUX4s8HnqB6AZ4Y9Cp4rSADe +mD/YdekRf3HFA0IKQvIFRkpegj8uuWwILC0n/ozMNUlNmxCBlOmtFwjFxmNr9Txa +ZeFvWvvc6oTubAETK4HcjLdimx1tePdd4+0mxJ/akQ3wVzUAI2ysijMmMJDzTxLs +FPkw4yUtJHK0/H2yJtpoJ4wQjsWd6a8F7wY/pHszAud1M8QZJKQDzkJOMnqLKNLT +OKw6dm1UG2J7iuqtAgMBAAGjXjBcMB0GA1UdDgQWBBSTKvqap2ab0z/UPrdDgc0V +m88R3TAfBgNVHSMEGDAWgBQI0Zv55tVkcKDxaxqe7VLa3fVQQzAJBgNVHRMEAjAA +MA8GA1UdEQQIMAaHBMCoAAEwDQYJKoZIhvcNAQELBQADggEBADcdm62qaOHbIDoa +5oUjXGHSQjV1g4BFe6DLH5/CZ0wOws3QzfQbPIxJrp3yJgDcQyZNOE/xQlq/nASS +thU6cUTB07voFVnbotB8YQuNU1wM9TAJOHC9LT1Y0J2GIP6QeXts6Cz6aBlqaQEZ +IrGRLuKVZePTO0Haup0mZ91XoXs3CBzkSerl0XpFL7BeugSigrhprFRPB4UC3IWb +pdNar61Wk4bN/COb6utRkK3iYk5YUTqYFib9EG4VBdxYfXv/tiBIGqQLnqPbId6w +q+McpSEPF1DIcCyL0vEDdIVN0SzxMfnfHMx0Qp0sh2aydIZk4xfEqXHZgZthSrse +u7nhn7s= +-----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/certs/goodcn1-key.pem b/deps/openssl/openssl/test/certs/goodcn1-key.pem new file mode 100644 index 000000000000..2ad660c6dbfa --- /dev/null +++ b/deps/openssl/openssl/test/certs/goodcn1-key.pem @@ -0,0 +1,28 @@ +-----BEGIN PRIVATE KEY----- +MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDDigxInlYVjHtr +FI+Iv/3b0jeZbs1jVnPF6ZREk46BTNAVNZsq24jKFG6yK4n9vKA/JuS7jZe+gMX+ +sWh/S1IlsNDY8/Io1UsG/s1tmsvE2UrURUX4s8HnqB6AZ4Y9Cp4rSADemD/YdekR +f3HFA0IKQvIFRkpegj8uuWwILC0n/ozMNUlNmxCBlOmtFwjFxmNr9TxaZeFvWvvc +6oTubAETK4HcjLdimx1tePdd4+0mxJ/akQ3wVzUAI2ysijMmMJDzTxLsFPkw4yUt +JHK0/H2yJtpoJ4wQjsWd6a8F7wY/pHszAud1M8QZJKQDzkJOMnqLKNLTOKw6dm1U +G2J7iuqtAgMBAAECggEAeQ1xZVOAf36kuTnVUhdplTii6v3JcQIIUjG0dG/U/P8M +otS45uNZ36CelvaVStwHaJEvcVzK4EjgSjiSNJvwkxzPbkA3XkgNVptPmdcG5yqO +RLNOChVeqYdOurdcR1XXbXv57dPbUqpMS2TWjdzieW/QXKuTRsbjTo3D75tJqUO6 +1Bm4sSM3PogmsQwTP8HlZAmJXuSD+ZSB22Np5pT1dn5TvQU6xeA3NJR4ZO/HEZz4 +CHJEiOx2BuGD6M0V1ZL6DzEsyIS/KKsvj4I2F4ROAK1j3lSD5VqrYPXn3oEsQdlm +OW8aVnHPYO6FI0LVLgcIEKxhdwGV3i6v/GRUe0Y9kQKBgQD0Zqn1trAuP5Peiy1K +Wc91yRjQxQTwSD00hzXMtvKzkEIiLEuVZq9qrqQ2TRRa5xneDGHDuUY9eZY8JwEr +l7f8CcfYC93PXLyRM2Gaz0jMxZxVPz5w7zssK3DZ+7JvH3nKkCUl7+Y0tH26qTO0 +wTD9w9jd9bf85SLVgk3zSbUDwwKBgQDM0b2ffZpxyA16h7w8ZBuk1Z+iumrxnn5/ +lKtffR2b4dZN37KiWw2c265vYhRfe/ANnVuagXb9aRM97yeQloRlWR10AaXJz3EB +sromqFShkorYRhwZoRiJC0laLG3W76wKMRr2T6TM1UG9gJ0szdGFG/yUDU+9pTRo +uq514rGgzwKBgQCGtsAgLF7YXzsGg/im7vInnn0LNk4OlAMInS7OdFk7GN0bMQdI +hp1SVIk3VS1PHetoNbL9y3YoFIj3BxjiCnLjfhClyYSt9BQMhSHbzz31gUc2xfGJ +FpSrOBawUMh97/+V4/ZV/vIJQyO6a+GQVJzIg9daIUMVJsgYoAaPf6VDOQKBgFyH +eHnf/XDfpq8vOOuzcgWieG7EduHW72DlohIObNzqRq2BnKraJakyWXh6P6fvTsBn +0WVYjY/n80hsjVw1k3RRsQuiXupv66aPvqcOLsWbdVxFOBaf/3yR+75gCfMq7Xbh +PkP+MP5UbVGWE+uUw821mgKsjNSpGKcjhwM8uXBjAoGAFEU3O8gQXfocVB8lxUeU +c0inLdAIgiw/36NPuW4NwKxzLOmHzlmvn7C98ihnbnGoQ0XBRfLw8siTbD3INgHY +NA0JeK8Qrt56b6wK14w9RzLQTu9gy1pULW21p1wswdNK4tlxfnnnozISZAYxeqAx +YMTtYZN77nb+yY4oE6XEugQ= +-----END PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/certs/setup.sh b/deps/openssl/openssl/test/certs/setup.sh index 7e1086a2240d..018e5fc69095 100755 --- a/deps/openssl/openssl/test/certs/setup.sh +++ b/deps/openssl/openssl/test/certs/setup.sh @@ -241,15 +241,30 @@ NC="$NC excluded;DNS:bad.ok.good.com" NC=$NC ./mkcert.sh genca "Test NC sub CA" ncca3-key ncca3-cert \ ncca1-key ncca1-cert -# all subjectAltNames allowed by CA1. +# all subjectAltNames allowed by CA1. Some CNs are not! ./mkcert.sh req alt1-key "O = Good NC Test Certificate 1" \ - "1.CN=www.good.org" "2.CN=Joe Bloggs" "3.CN=any.good.com" | \ + "1.CN=www.example.net" "2.CN=Joe Bloggs" | \ ./mkcert.sh geneealt alt1-key alt1-cert ncca1-key ncca1-cert \ "DNS.1 = www.good.org" "DNS.2 = any.good.com" \ "email.1 = good@good.org" "email.2 = any@good.com" \ "IP = 127.0.0.1" "IP = 192.168.0.1" +# all DNS-like CNs allowed by CA1, no DNS SANs. + +./mkcert.sh req goodcn1-key "O = Good NC Test Certificate 1" \ + "1.CN=www.good.org" "2.CN=any.good.com" \ + "3.CN=not..dns" "4.CN=not@dns" "5.CN=not-.dns" "6.CN=not.dns." | \ + ./mkcert.sh geneealt goodcn1-key goodcn1-cert ncca1-key ncca1-cert \ + "IP = 127.0.0.1" "IP = 192.168.0.1" + +# Some DNS-like CNs not permitted by CA1, no DNS SANs. + +./mkcert.sh req badcn1-key "O = Good NC Test Certificate 1" \ + "1.CN=www.good.org" "3.CN=bad.net" | \ + ./mkcert.sh geneealt badcn1-key badcn1-cert ncca1-key ncca1-cert \ + "IP = 127.0.0.1" "IP = 192.168.0.1" + # no subjectAltNames excluded by CA2. ./mkcert.sh req alt2-key "O = Good NC Test Certificate 2" | \ @@ -293,19 +308,17 @@ NC=$NC ./mkcert.sh genca "Test NC sub CA" ncca3-key ncca3-cert \ "email.1 = good@good.org" "email.2 = any@good.com" \ "IP = 127.0.0.2" -# all subject alt names OK but subject CN not allowed by CA1. +# No DNS-ID SANs and subject CN not allowed by CA1. ./mkcert.sh req badalt6-key "O = Bad NC Test Certificate 6" \ "1.CN=other.good.org" "2.CN=Joe Bloggs" "3.CN=any.good.com" | \ ./mkcert.sh geneealt badalt6-key badalt6-cert ncca1-key ncca1-cert \ - "DNS.1 = www.good.org" "DNS.2 = any.good.com" \ "email.1 = good@good.org" "email.2 = any@good.com" \ "IP = 127.0.0.1" "IP = 192.168.0.1" -# all subject alt names OK but subject CN not allowed by CA1, BMPSTRING +# No DNS-ID SANS and subject CN not allowed by CA1, BMPSTRING REQMASK=MASK:0x800 ./mkcert.sh req badalt7-key "O = Bad NC Test Certificate 7" \ "1.CN=other.good.org" "2.CN=Joe Bloggs" "3.CN=any.good.com" | \ ./mkcert.sh geneealt badalt7-key badalt7-cert ncca1-key ncca1-cert \ - "DNS.1 = www.good.org" "DNS.2 = any.good.com" \ "email.1 = good@good.org" "email.2 = any@good.com" \ "IP = 127.0.0.1" "IP = 192.168.0.1" diff --git a/deps/openssl/openssl/test/ct/log_list.conf b/deps/openssl/openssl/test/ct/log_list.conf index 3724599a9d32..4b68e5355803 100644 --- a/deps/openssl/openssl/test/ct/log_list.conf +++ b/deps/openssl/openssl/test/ct/log_list.conf @@ -35,3 +35,4 @@ key = MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEluqsHEYMG1XcDfy1lCdGV0JwOmkY4r87xNuroP [venafi] description = Venafi log key = MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAolpIHxdSlTXLo1s6H1OCdpSj/4DyHDc8wLG9wVmLqy1lk9fz4ATVmm+/1iN2Nk8jmctUKK2MFUtlWXZBSpym97M7frGlSaQXUWyA3CqQUEuIJOmlEjKTBEiQAvpfDjCHjlV2Be4qTM6jamkJbiWtgnYPhJL6ONaGTiSPm7Byy57iaz/hbckldSOIoRhYBiMzeNoA0DiRZ9KmfSeXZ1rB8y8X5urSW+iBzf2SaOfzBvDpcoTuAaWx2DPazoOl28fP1hZ+kHUYvxbcMjttjauCFx+JII0dmuZNIwjfeG/GBb9frpSX219k1O4Wi6OEbHEr8at/XQ0y7gTikOxBn/s5wQIDAQAB + diff --git a/deps/openssl/openssl/test/danetest.in b/deps/openssl/openssl/test/danetest.in index c94f526aabfb..0cedf10a2a78 100644 --- a/deps/openssl/openssl/test/danetest.in +++ b/deps/openssl/openssl/test/danetest.in @@ -26,7 +26,7 @@ # 3 1 0 3059301306072A8648CE3D020106082A8648CE3D03010703420004664995F47BDE35E7B4DE48B258E9E8A07ADEBBDB863B3D06F481A1946C83DA9F56CFF4D9389B855D2F364B1585B0C734FCFA263026964FF5A4308B3FC879BDB8 # 3 1 1 3111668338043DE264D0256A702248696C9484B6221A42740F920187B4C61838 # 3 1 2 CB861AF6DDED185EE04472A9092052CCC735120C34785E72C996C94B122EBA6F329BE630B1B4C6E2756E7A75392C21E253C6AEACC31FD45FF4595DED375FAF62 -# -- +# -- # subject= CN = Issuer CA # 2 0 0 308201683082010DA003020102020102300A06082A8648CE3D04030230123110300E06035504030C07526F6F742043413020170D3135313231333233323030395A180F33303135303431353233323030395A30143112301006035504030C094973737565722043413059301306072A8648CE3D020106082A8648CE3D030107034200047D4BAE18B49F5DC69D0A3C85C66A3E2119DE92CFAD081FAD55C12D510EC97B6C00E13695A8D9713548FE60DF15573390433E2A1BD92DB4B7AA016EC6185DC5AFA350304E301D0603551D0E041604147AB75A3CD295CA5DF7C5150916E18FF5CC376A15301F0603551D23041830168014E4BD405F052A820DDF9883F93D7D3F90AAEC723F300C0603551D13040530030101FF300A06082A8648CE3D0403020349003046022100831DCD882DA8785D50E41020898C0248879DDDF72D701D1DC1DE6BE08155B43E022100B84B2FB519C4CD3CBC791603D4488F7707597DB7980D9C173E7FDD0ECD7CA308 # 2 0 1 0DAA76425A1FC398C55A643D5A2485AE4CC2B64B9515A75054722B2E83C31BBD diff --git a/deps/openssl/openssl/test/errtest.c b/deps/openssl/openssl/test/errtest.c new file mode 100644 index 000000000000..df4cddb096dd --- /dev/null +++ b/deps/openssl/openssl/test/errtest.c @@ -0,0 +1,40 @@ +/* + * Copyright 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 + */ + +#include +#include + +#include "testutil.h" + +#if defined(OPENSSL_SYS_WINDOWS) +# include +#else +# include +#endif + +/* Test that querying the error queue preserves the OS error. */ +static int preserves_system_error(void) +{ +#if defined(OPENSSL_SYS_WINDOWS) + SetLastError(ERROR_INVALID_FUNCTION); + ERR_get_error(); + return GetLastError() == ERROR_INVALID_FUNCTION; +#else + errno = EINVAL; + ERR_get_error(); + return errno == EINVAL; +#endif +} + +int main(int argc, char **argv) +{ + ADD_TEST(preserves_system_error); + + return run_tests(argv[0]); +} diff --git a/deps/openssl/openssl/test/evp_test.c b/deps/openssl/openssl/test/evp_test.c index 4bea4ea2b92c..ea9455374f48 100644 --- a/deps/openssl/openssl/test/evp_test.c +++ b/deps/openssl/openssl/test/evp_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -1592,19 +1592,19 @@ static int pderive_test_run(struct evp_test *t) struct pkey_data *kdata = t->data; unsigned char *out = NULL; size_t out_len; - const char *err = "INTERNAL_ERROR"; + const char *err = "DERIVE_ERROR"; - out_len = kdata->output_len; + if (EVP_PKEY_derive(kdata->ctx, NULL, &out_len) <= 0) + goto err; out = OPENSSL_malloc(out_len); if (!out) { fprintf(stderr, "Error allocating output buffer!\n"); exit(1); } - err = "DERIVE_ERROR"; if (EVP_PKEY_derive(kdata->ctx, out, &out_len) <= 0) goto err; err = "SHARED_SECRET_LENGTH_MISMATCH"; - if (out_len != kdata->output_len) + if (kdata->output == NULL || out_len != kdata->output_len) goto err; err = "SHARED_SECRET_MISMATCH"; if (check_output(t, kdata->output, out, out_len)) @@ -2169,3 +2169,4 @@ static const struct evp_test_method keypair_test_method = { void_test_parse, keypair_test_run }; + diff --git a/deps/openssl/openssl/test/evptests.txt b/deps/openssl/openssl/test/evptests.txt index 83c6c6a3a913..269684e11b3f 100644 --- a/deps/openssl/openssl/test/evptests.txt +++ b/deps/openssl/openssl/test/evptests.txt @@ -1,5 +1,5 @@ # -# Copyright 2001-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2001-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 @@ -15,7 +15,7 @@ # Which is currently unsupported by OpenSSL. They were generated using the # reference implementation. RFC7693 also mentions the 616263 / "abc" values. Digest = BLAKE2s256 -Input = +Input = Output = 69217a3079908094e11121d042354a7c1f55b6482ca1a51e1b250dfd1ed0eef9 Digest = BLAKE2s256 @@ -51,7 +51,7 @@ Input = 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20212223 Output = C80ABEEBB669AD5DEEB5F5EC8EA6B7A05DDF7D31EC4C0A2EE20B0B98CAEC6746 Digest = BLAKE2b512 -Input = +Input = Output = 786a02f742015903c6c6fd852552d272912f4740e15847618a86e217f71f5419d25e1031afee585313896444934eb04b903a685b1448b755d56f701afe9be2ce Digest = BLAKE2b512 @@ -19144,6 +19144,35 @@ PeerKey=KAS-ECC-CDH_B-571_C24-Peer-PUBLIC Ctrl=ecdh_cofactor_mode:1 SharedSecret=02da266a269bdc8d8b2a0c6bb5762f102fc801c8d5394a9271539136bd81d4b69cfbb7525cd0a983fb7f7e9deec583b8f8e574c6184b2d79831ec770649e484dc006fa35b0bffd0b +# for cofactor-order points, ECC CDH (co-factor ECDH) should fail. Test that. + +PrivateKey=ALICE_cf_sect283k1 +-----BEGIN PRIVATE KEY----- +MIGQAgEAMBAGByqGSM49AgEGBSuBBAAQBHkwdwIBAQQkAHtPwRfQZ9pWgSctyHdt +xt3pd8ESMI3ugVx8MDLkiVB8GkCRoUwDSgAEA+xpY5sDcgM2yYxoWOrzH7WUH+b3 +n68A32kODgcKu8PXRYEKBH8Xzbr974982ZJW1sGrDs+P81sIFH8tdp45Jkr+OtfM +8uKr +-----END PRIVATE KEY----- + +PublicKey=ALICE_cf_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEA+xpY5sDcgM2yYxoWOrzH7WUH+b3n68A +32kODgcKu8PXRYEKBH8Xzbr974982ZJW1sGrDs+P81sIFH8tdp45Jkr+OtfM8uKr +-----END PUBLIC KEY----- + +PublicKey=BOB_cf_sect283k1_PUB +-----BEGIN PUBLIC KEY----- +MF4wEAYHKoZIzj0CAQYFK4EEABADSgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB +-----END PUBLIC KEY----- + +PrivPubKeyPair = ALICE_cf_sect283k1:ALICE_cf_sect283k1_PUB + +# ECDH Alice with Bob peer +Derive=ALICE_cf_sect283k1 +PeerKey=BOB_cf_sect283k1_PUB +Ctrl=ecdh_cofactor_mode:1 +Result = DERIVE_ERROR # Test mismatches PrivPubKeyPair = Alice-25519:Bob-25519-PUBLIC diff --git a/deps/openssl/openssl/test/r160test.c b/deps/openssl/openssl/test/r160test.c index 9ed453849e1f..06033eb91f83 100644 --- a/deps/openssl/openssl/test/r160test.c +++ b/deps/openssl/openssl/test/r160test.c @@ -6,3 +6,4 @@ * in the file LICENSE in the source distribution or at * https://www.openssl.org/source/license.html */ + diff --git a/deps/openssl/openssl/test/recipes/04-test_err.t b/deps/openssl/openssl/test/recipes/04-test_err.t new file mode 100644 index 000000000000..dd7681afa4e4 --- /dev/null +++ b/deps/openssl/openssl/test/recipes/04-test_err.t @@ -0,0 +1,12 @@ +#! /usr/bin/env perl +# Copyright 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 + + +use OpenSSL::Test::Simple; + +simple_test("test_err", "errtest"); diff --git a/deps/openssl/openssl/test/recipes/04-test_pem_data/cert-trailingwhitespace.pem b/deps/openssl/openssl/test/recipes/04-test_pem_data/cert-trailingwhitespace.pem index 99ddf079a499..ab0dfe85b7c0 100644 --- a/deps/openssl/openssl/test/recipes/04-test_pem_data/cert-trailingwhitespace.pem +++ b/deps/openssl/openssl/test/recipes/04-test_pem_data/cert-trailingwhitespace.pem @@ -1,28 +1,28 @@ -----BEGIN CERTIFICATE----- -MIIEzDCCA7QCCQCgxkRox+YljjANBgkqhkiG9w0BAQsFADCCASYxYzBhBgNVBAgM -WlRoZSBHcmVhdCBTdGF0ZSBvZiBMb25nLVdpbmRlZCBDZXJ0aWZpY2F0ZSBGaWVs -ZCBOYW1lcyBXaGVyZWJ5IHRvIEluY3JlYXNlIHRoZSBPdXRwdXQgU2l6ZTEfMB0G -A1UEBwwWVG9vbWFueWNoYXJhY3RlcnN2aWxsZTFIMEYGA1UECgw/VGhlIEJlbmV2 -b2xlbnQgU29jaWV0eSBvZiBMb3F1YWNpb3VzIGFuZCBQbGVvbmFzdGljIFBlcmlw -aHJhc2lzMT0wOwYDVQQLDDRFbmRvcnNlbWVudCBvZiBWb3VjaHNhZmUnZCBFdmlk -ZW50aWFyeSBDZXJ0aWZpY2F0aW9uMRUwEwYDVQQDDAxjZXJ0LmV4YW1wbGUwHhcN -MTcwMjIzMjAyNTM2WhcNMTcwMzI1MjAyNTM2WjCCASYxYzBhBgNVBAgMWlRoZSBH -cmVhdCBTdGF0ZSBvZiBMb25nLVdpbmRlZCBDZXJ0aWZpY2F0ZSBGaWVsZCBOYW1l -cyBXaGVyZWJ5IHRvIEluY3JlYXNlIHRoZSBPdXRwdXQgU2l6ZTEfMB0GA1UEBwwW -VG9vbWFueWNoYXJhY3RlcnN2aWxsZTFIMEYGA1UECgw/VGhlIEJlbmV2b2xlbnQg -U29jaWV0eSBvZiBMb3F1YWNpb3VzIGFuZCBQbGVvbmFzdGljIFBlcmlwaHJhc2lz -MT0wOwYDVQQLDDRFbmRvcnNlbWVudCBvZiBWb3VjaHNhZmUnZCBFdmlkZW50aWFy -eSBDZXJ0aWZpY2F0aW9uMRUwEwYDVQQDDAxjZXJ0LmV4YW1wbGUwggEiMA0GCSqG -SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7MOIrqH+ZIJiZdroKMrelKMSvvRKg2MEg -j/sx9TaHHqrKys4AiL4Rq/ybQEigFC6G8mpZWbBrU+vN2SLr1ZsPftCHIY12LF56 -0WLYTYNqDgF5BdCZCrjJ2hhN+XwML2tgYdWioV/Eey8SJSqUskf03MpcwnLbVfSp -hwmowqNfiEFFqPBCf7E8IVarGWctbMpvlMbAM5owhMev/Ccmqqt81NFkb1WVejvN -5v/JKv243/Xedf4I7ZJv7zKeswoP9piFzWHXCd9SIVzWqF77u/crHufIhoEa7NkZ -hSC2aosQF619iKnfk0nqWaLDJ182CCXkHERoQC7q9X2IGLDLoA0XAgMBAAEwDQYJ -KoZIhvcNAQELBQADggEBAKbtLx+YlCGRCBmYn3dfYF+BIvK/b/e0DKNhDKhb4s9J -ywlJ4qnAB48tgPx0q+ZB+EdMYRqCwyvXJxEdZ7PsCdUeU6xI2ybkhSdUUfQbYem3 -aYRG+yukGzazySQJs8lGqxBlRMFl/FGCg+oSQ/I32eGf8micDskj2zkAJtCkUPHX -30YrWMfOwW1r2xYr2mBNXbNWXJhW/sIg5u8aa9fcALeuQcMXkbsbVoPmC5aLdiVZ -rvUFoJ8DPg0aYYwj64RwU0B5HW/7jKhQ25FgKVAzLGrgYx1DivkM7UQGdWYnU8IA -A8S89gRjGk2hnkeagWas3dxqTTpgJDhprgWzyKa9hII= +MIIEzDCCA7QCCQCgxkRox+YljjANBgkqhkiG9w0BAQsFADCCASYxYzBhBgNVBAgM +WlRoZSBHcmVhdCBTdGF0ZSBvZiBMb25nLVdpbmRlZCBDZXJ0aWZpY2F0ZSBGaWVs +ZCBOYW1lcyBXaGVyZWJ5IHRvIEluY3JlYXNlIHRoZSBPdXRwdXQgU2l6ZTEfMB0G +A1UEBwwWVG9vbWFueWNoYXJhY3RlcnN2aWxsZTFIMEYGA1UECgw/VGhlIEJlbmV2 +b2xlbnQgU29jaWV0eSBvZiBMb3F1YWNpb3VzIGFuZCBQbGVvbmFzdGljIFBlcmlw +aHJhc2lzMT0wOwYDVQQLDDRFbmRvcnNlbWVudCBvZiBWb3VjaHNhZmUnZCBFdmlk +ZW50aWFyeSBDZXJ0aWZpY2F0aW9uMRUwEwYDVQQDDAxjZXJ0LmV4YW1wbGUwHhcN +MTcwMjIzMjAyNTM2WhcNMTcwMzI1MjAyNTM2WjCCASYxYzBhBgNVBAgMWlRoZSBH +cmVhdCBTdGF0ZSBvZiBMb25nLVdpbmRlZCBDZXJ0aWZpY2F0ZSBGaWVsZCBOYW1l +cyBXaGVyZWJ5IHRvIEluY3JlYXNlIHRoZSBPdXRwdXQgU2l6ZTEfMB0GA1UEBwwW +VG9vbWFueWNoYXJhY3RlcnN2aWxsZTFIMEYGA1UECgw/VGhlIEJlbmV2b2xlbnQg +U29jaWV0eSBvZiBMb3F1YWNpb3VzIGFuZCBQbGVvbmFzdGljIFBlcmlwaHJhc2lz +MT0wOwYDVQQLDDRFbmRvcnNlbWVudCBvZiBWb3VjaHNhZmUnZCBFdmlkZW50aWFy +eSBDZXJ0aWZpY2F0aW9uMRUwEwYDVQQDDAxjZXJ0LmV4YW1wbGUwggEiMA0GCSqG +SIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7MOIrqH+ZIJiZdroKMrelKMSvvRKg2MEg +j/sx9TaHHqrKys4AiL4Rq/ybQEigFC6G8mpZWbBrU+vN2SLr1ZsPftCHIY12LF56 +0WLYTYNqDgF5BdCZCrjJ2hhN+XwML2tgYdWioV/Eey8SJSqUskf03MpcwnLbVfSp +hwmowqNfiEFFqPBCf7E8IVarGWctbMpvlMbAM5owhMev/Ccmqqt81NFkb1WVejvN +5v/JKv243/Xedf4I7ZJv7zKeswoP9piFzWHXCd9SIVzWqF77u/crHufIhoEa7NkZ +hSC2aosQF619iKnfk0nqWaLDJ182CCXkHERoQC7q9X2IGLDLoA0XAgMBAAEwDQYJ +KoZIhvcNAQELBQADggEBAKbtLx+YlCGRCBmYn3dfYF+BIvK/b/e0DKNhDKhb4s9J +ywlJ4qnAB48tgPx0q+ZB+EdMYRqCwyvXJxEdZ7PsCdUeU6xI2ybkhSdUUfQbYem3 +aYRG+yukGzazySQJs8lGqxBlRMFl/FGCg+oSQ/I32eGf8micDskj2zkAJtCkUPHX +30YrWMfOwW1r2xYr2mBNXbNWXJhW/sIg5u8aa9fcALeuQcMXkbsbVoPmC5aLdiVZ +rvUFoJ8DPg0aYYwj64RwU0B5HW/7jKhQ25FgKVAzLGrgYx1DivkM7UQGdWYnU8IA +A8S89gRjGk2hnkeagWas3dxqTTpgJDhprgWzyKa9hII= -----END CERTIFICATE----- diff --git a/deps/openssl/openssl/test/recipes/04-test_pem_data/dsa-trailingwhitespace.pem b/deps/openssl/openssl/test/recipes/04-test_pem_data/dsa-trailingwhitespace.pem index 78ebd1b70289..0b5de58c4cfb 100644 --- a/deps/openssl/openssl/test/recipes/04-test_pem_data/dsa-trailingwhitespace.pem +++ b/deps/openssl/openssl/test/recipes/04-test_pem_data/dsa-trailingwhitespace.pem @@ -2,22 +2,22 @@ Proc-Type: 4,ENCRYPTED DEK-Info: AES-256-CBC,A2A7FA3E5E454B59C8777564E7AF3CD6 -EBDWX0Qfarl+QNsHgCUudLyb6DkC4zyaDU/vUqWyHX0m+8W2bbmT5TexlL3hsM5U -gz7KsGqyjeOuK9QT5LOM4VyK6BgmhqpQaJ1MgCWA/gbBPTgBp2jfp3oS0WC5D6GM -wcsdqoeIpD/wce3k0H2Gfu6+rINBmbITtn4DTf3PkOcDIwdDceN2qkZanloFVriS -3kABUIh1ehYIXQibLRFY5rXdQnhY2CZNrQFIMwl64hK5P5hQbcyJKGDHAYzXV7ou -pdXy5F9oyEd6eA5ix+n1jKFRB7PmApZmuiQjzfExVKmBPGxRzOGT0qR5vLylQhei -SC77nkerawUyjA2QlIa/SmNzXEYkN3goDzHSFKBauB0o5qFc1b1x7dXPCFL0atG5 -UxoRr/Ep7tiab4DZmYEnOGkL2dVN8jA04F+HQGBeP6nDOSKhXRjbUODUpDpDvj+F -Jf77Rv0p48l9ip8i/bquwukXlMed3O4d6rnEwkggdySS5itiShwaVLPf+icI/Yd4 -vcPXDPUHTkj1XmoZ4f1mUF17OtCohsJT7O4oMBBMBwqCkC7enrLaALi9jiKym47g -2bZH05xJPpWXS/kSEkwt/jI+a+o4CuDPly3XhIcYRtsaWBJWiam1OT7sGQ+zkjTG -Aa6NfwbR8ScQC8MzDfVnkJ3VnXjT345bz+F7HTAveQ8a7KGxNntPhE0KVjpl369K -q2TMLyexQARJapabBf/ST9zWP7wxzWfrEbX3OEZCuRDVkwWf18BH/Eh6Lqnqg5QM -4GuX708NiFpiwQt9p/DAuQdhBrP67BxL64CbI7CgW4Lv3z3qnKfFV9zY5/mxCERn -9mPOig2r8WvvXt7ch6nhzBPfCwq0BoPqLKUFgDpeXsNdJ9sW5IV3yi/3Bh98ZBYX -zj8g/7XMo6v998fct+EiHPscuqeYUaoJZ6+Zj7W45nGA9DGsnEmZ0Wux2tTj70mD -oH//21TiRAx6ypPP+Iq2YDzqh7VXc/gssOn/vU1Aj19gzL+MRn1Z55SMrA7nO90m -OgOyEP+uGrXyahfZGPbmpgIx+MTbtfvRtZBsG3EcXyW9NnHJfk4O8xN3hYPWXaBI -o15qB3jYbx1oktbcQPo0hzaNv+PJ5wtT47JLNcbMeMSnwKM8MB4CXlM43RUtKws6 +EBDWX0Qfarl+QNsHgCUudLyb6DkC4zyaDU/vUqWyHX0m+8W2bbmT5TexlL3hsM5U +gz7KsGqyjeOuK9QT5LOM4VyK6BgmhqpQaJ1MgCWA/gbBPTgBp2jfp3oS0WC5D6GM +wcsdqoeIpD/wce3k0H2Gfu6+rINBmbITtn4DTf3PkOcDIwdDceN2qkZanloFVriS +3kABUIh1ehYIXQibLRFY5rXdQnhY2CZNrQFIMwl64hK5P5hQbcyJKGDHAYzXV7ou +pdXy5F9oyEd6eA5ix+n1jKFRB7PmApZmuiQjzfExVKmBPGxRzOGT0qR5vLylQhei +SC77nkerawUyjA2QlIa/SmNzXEYkN3goDzHSFKBauB0o5qFc1b1x7dXPCFL0atG5 +UxoRr/Ep7tiab4DZmYEnOGkL2dVN8jA04F+HQGBeP6nDOSKhXRjbUODUpDpDvj+F +Jf77Rv0p48l9ip8i/bquwukXlMed3O4d6rnEwkggdySS5itiShwaVLPf+icI/Yd4 +vcPXDPUHTkj1XmoZ4f1mUF17OtCohsJT7O4oMBBMBwqCkC7enrLaALi9jiKym47g +2bZH05xJPpWXS/kSEkwt/jI+a+o4CuDPly3XhIcYRtsaWBJWiam1OT7sGQ+zkjTG +Aa6NfwbR8ScQC8MzDfVnkJ3VnXjT345bz+F7HTAveQ8a7KGxNntPhE0KVjpl369K +q2TMLyexQARJapabBf/ST9zWP7wxzWfrEbX3OEZCuRDVkwWf18BH/Eh6Lqnqg5QM +4GuX708NiFpiwQt9p/DAuQdhBrP67BxL64CbI7CgW4Lv3z3qnKfFV9zY5/mxCERn +9mPOig2r8WvvXt7ch6nhzBPfCwq0BoPqLKUFgDpeXsNdJ9sW5IV3yi/3Bh98ZBYX +zj8g/7XMo6v998fct+EiHPscuqeYUaoJZ6+Zj7W45nGA9DGsnEmZ0Wux2tTj70mD +oH//21TiRAx6ypPP+Iq2YDzqh7VXc/gssOn/vU1Aj19gzL+MRn1Z55SMrA7nO90m +OgOyEP+uGrXyahfZGPbmpgIx+MTbtfvRtZBsG3EcXyW9NnHJfk4O8xN3hYPWXaBI +o15qB3jYbx1oktbcQPo0hzaNv+PJ5wtT47JLNcbMeMSnwKM8MB4CXlM43RUtKws6 -----END DSA PRIVATE KEY----- diff --git a/deps/openssl/openssl/test/recipes/15-test_genrsa.t b/deps/openssl/openssl/test/recipes/15-test_genrsa.t index cc74e303f115..766ea4f0aa3f 100644 --- a/deps/openssl/openssl/test/recipes/15-test_genrsa.t +++ b/deps/openssl/openssl/test/recipes/15-test_genrsa.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2017 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2017-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 @@ -18,9 +18,38 @@ setup("test_genrsa"); plan tests => 5; +# We want to know that an absurdly small number of bits isn't support is(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', '8'])), 0, "genrsa -3 8"); -ok(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', '16'])), "genrsa -3 16"); -ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout'])), "rsa -check"); -ok(run(app([ 'openssl', 'genrsa', '-f4', '-out', 'genrsatest.pem', '16'])), "genrsa -f4 16"); -ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout'])), "rsa -check"); + +# Depending on the shared library, we might have different lower limits. +# Let's find it! This is a simple binary search +# ------------------------------------------------------------ +# NOTE: $good may need an update in the future +# ------------------------------------------------------------ +note "Looking for lowest amount of bits"; +my $bad = 3; # Log2 of number of bits (2 << 3 == 8) +my $good = 11; # Log2 of number of bits (2 << 11 == 2048) +while ($good > $bad + 1) { + my $checked = int(($good + $bad + 1) / 2); + if (run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', + 2 ** $checked ], stderr => undef))) { + note 2 ** $checked, " bits is good"; + $good = $checked; + } else { + note 2 ** $checked, " bits is bad"; + $bad = $checked; + } +} +$good++ if $good == $bad; +$good = 2 ** $good; +note "Found lowest allowed amount of bits to be $good"; + +ok(run(app([ 'openssl', 'genrsa', '-3', '-out', 'genrsatest.pem', $good ])), + "genrsa -3 $good"); +ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout' ])), + "rsa -check"); +ok(run(app([ 'openssl', 'genrsa', '-f4', '-out', 'genrsatest.pem', $good ])), + "genrsa -f4 $good"); +ok(run(app([ 'openssl', 'rsa', '-check', '-in', 'genrsatest.pem', '-noout' ])), + "rsa -check"); unlink 'genrsatest.pem'; diff --git a/deps/openssl/openssl/test/recipes/25-test_verify.t b/deps/openssl/openssl/test/recipes/25-test_verify.t index 11bd43090f0b..11f54d0486f6 100644 --- a/deps/openssl/openssl/test/recipes/25-test_verify.t +++ b/deps/openssl/openssl/test/recipes/25-test_verify.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2015-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 @@ -30,7 +30,7 @@ sub verify { run(app([@args])); } -plan tests => 127; +plan tests => 129; # Canonical success ok(verify("ee-cert", "sslserver", ["root-cert"], ["ca-cert"]), @@ -326,6 +326,12 @@ ok(verify("alt2-cert", "sslserver", ["root-cert"], ["ncca2-cert"], ), ok(verify("alt3-cert", "sslserver", ["root-cert"], ["ncca1-cert", "ncca3-cert"], ), "Name Constraints nested test all permitted"); +ok(verify("goodcn1-cert", "sslserver", ["root-cert"], ["ncca1-cert"], ), + "Name Constraints CNs permitted"); + +ok(!verify("badcn1-cert", "sslserver", ["root-cert"], ["ncca1-cert"], ), + "Name Constraints CNs not permitted"); + ok(!verify("badalt1-cert", "sslserver", ["root-cert"], ["ncca1-cert"], ), "Name Constraints hostname not permitted"); diff --git a/deps/openssl/openssl/test/recipes/60-test_x509_dup_cert.t b/deps/openssl/openssl/test/recipes/60-test_x509_dup_cert.t new file mode 100644 index 000000000000..8e1c31381470 --- /dev/null +++ b/deps/openssl/openssl/test/recipes/60-test_x509_dup_cert.t @@ -0,0 +1,19 @@ +#! /usr/bin/env perl +# Copyright 2017-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 +# +# ====================================================================== +# Copyright (c) 2017 Oracle and/or its affiliates. All rights reserved. + + +use OpenSSL::Test qw/:DEFAULT srctop_file/; + +setup("test_x509_dup_cert"); + +plan tests => 1; + +ok(run(test(["x509_dup_cert_test", srctop_file("test", "certs", "leaf.pem")]))); diff --git a/deps/openssl/openssl/test/recipes/60-test_x509_time.t b/deps/openssl/openssl/test/recipes/60-test_x509_time.t new file mode 100644 index 000000000000..e812cd0b26f3 --- /dev/null +++ b/deps/openssl/openssl/test/recipes/60-test_x509_time.t @@ -0,0 +1,12 @@ +#! /usr/bin/env perl +# Copyright 2017-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 + + +use OpenSSL::Test::Simple; + +simple_test("test_x509_time", "x509_time_test"); diff --git a/deps/openssl/openssl/test/recipes/80-test_ca.t b/deps/openssl/openssl/test/recipes/80-test_ca.t index f40aba1d4ddd..28a090ea7dd9 100644 --- a/deps/openssl/openssl/test/recipes/80-test_ca.t +++ b/deps/openssl/openssl/test/recipes/80-test_ca.t @@ -56,3 +56,4 @@ sub yes { close PIPE; return 0; } + diff --git a/deps/openssl/openssl/test/recipes/80-test_cipherlist.t b/deps/openssl/openssl/test/recipes/80-test_cipherlist.t index 98d537e5f368..5c1b1d45457f 100644 --- a/deps/openssl/openssl/test/recipes/80-test_cipherlist.t +++ b/deps/openssl/openssl/test/recipes/80-test_cipherlist.t @@ -1,6 +1,6 @@ #! /usr/bin/perl # -# Copyright 2016-2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -12,11 +12,16 @@ use strict; use warnings; use OpenSSL::Test::Simple; -use OpenSSL::Test; +use OpenSSL::Test qw(:DEFAULT openssl_versions); use OpenSSL::Test::Utils qw(alldisabled available_protocols); setup("test_cipherlist"); +my ($build_version, $library_version) = openssl_versions(); +plan skip_all => + "This test recipe isn't supported when doing regression testing" + if $build_version != $library_version; + my $no_anytls = alldisabled(available_protocols("tls")); # If we have no protocols, then we also have no supported ciphers. diff --git a/deps/openssl/openssl/test/recipes/80-test_x509aux.t b/deps/openssl/openssl/test/recipes/80-test_x509aux.t index b4897c580883..65ba5fcf5292 100644 --- a/deps/openssl/openssl/test/recipes/80-test_x509aux.t +++ b/deps/openssl/openssl/test/recipes/80-test_x509aux.t @@ -19,7 +19,7 @@ plan skip_all => "test_dane uses ec which is not supported by this OpenSSL build plan tests => 1; # The number of tests being performed -ok(run(test(["x509aux", +ok(run(test(["x509aux", srctop_file("test", "certs", "roots.pem"), srctop_file("test", "certs", "root+anyEKU.pem"), srctop_file("test", "certs", "root-anyEKU.pem"), diff --git a/deps/openssl/openssl/test/recipes/90-test_fuzz.t b/deps/openssl/openssl/test/recipes/90-test_fuzz.t index d15292573350..8d3b3541fc4b 100644 --- a/deps/openssl/openssl/test/recipes/90-test_fuzz.t +++ b/deps/openssl/openssl/test/recipes/90-test_fuzz.t @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -26,14 +26,14 @@ plan tests => scalar @fuzzers; foreach my $f (@fuzzers) { subtest "Fuzzing $f" => sub { - my @files = glob(srctop_file('fuzz', 'corpora', $f, '*')); - push @files, glob(srctop_file('fuzz', 'corpora', "$f-*", '*')); + my @dirs = glob(srctop_file('fuzz', 'corpora', $f)); + push @dirs, glob(srctop_file('fuzz', 'corpora', "$f-*")); - plan skip_all => "No corpora for $f-test" unless @files; + plan skip_all => "No corpora for $f-test" unless @dirs; - plan tests => scalar @files; + plan tests => scalar @dirs; - foreach (@files) { + foreach (@dirs) { ok(run(fuzz(["$f-test", $_]))); } } diff --git a/deps/openssl/openssl/test/recipes/90-test_shlibload.t b/deps/openssl/openssl/test/recipes/90-test_shlibload.t index 2bc86fdec55d..04d52658900b 100644 --- a/deps/openssl/openssl/test/recipes/90-test_shlibload.t +++ b/deps/openssl/openssl/test/recipes/90-test_shlibload.t @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -20,7 +20,7 @@ use configdata; plan skip_all => "Test only supported in a shared build" if disabled("shared"); -plan tests => 3; +plan tests => 4; my $libcrypto_idx = $unified_info{rename}->{libcrypto} // "libcrypto"; my $libssl_idx = $unified_info{rename}->{libssl} // "libssl"; @@ -35,3 +35,6 @@ ok(run(test(["shlibloadtest", "-ssl_first", $libcrypto, $libssl])), "running shlibloadtest -ssl_first"); ok(run(test(["shlibloadtest", "-just_crypto", $libcrypto, $libssl])), "running shlibloadtest -just_crypto"); +ok(run(test(["shlibloadtest", "-dso_ref", $libcrypto, $libssl])), + "running shlibloadtest -dso_ref"); + diff --git a/deps/openssl/openssl/test/recipes/tconversion.pl b/deps/openssl/openssl/test/recipes/tconversion.pl index e19147b69757..1cf68dc09b8b 100644 --- a/deps/openssl/openssl/test/recipes/tconversion.pl +++ b/deps/openssl/openssl/test/recipes/tconversion.pl @@ -23,7 +23,7 @@ sub tconversion { my $testtype = shift; my $t = shift; - my @conversionforms = + my @conversionforms = defined($conversionforms{$testtype}) ? @{$conversionforms{$testtype}} : @{$conversionforms{"*"}}; diff --git a/deps/openssl/openssl/test/run_tests.pl b/deps/openssl/openssl/test/run_tests.pl index 889d6dc117eb..77dffb332b39 100644 --- a/deps/openssl/openssl/test/run_tests.pl +++ b/deps/openssl/openssl/test/run_tests.pl @@ -21,7 +21,7 @@ BEGIN use OpenSSL::Glob; use Module::Load::Conditional qw(can_load); -my $TAP_Harness = can_load(modules => { 'TAP::Harness' => undef }) +my $TAP_Harness = can_load(modules => { 'TAP::Harness' => undef }) ? 'TAP::Harness' : 'OpenSSL::TAP::Harness'; my $srctop = $ENV{SRCTOP} || $ENV{TOP}; diff --git a/deps/openssl/openssl/test/shlibloadtest.c b/deps/openssl/openssl/test/shlibloadtest.c index 25df363f235b..d584413ac9be 100644 --- a/deps/openssl/openssl/test/shlibloadtest.c +++ b/deps/openssl/openssl/test/shlibloadtest.c @@ -40,6 +40,16 @@ static OpenSSL_version_num_t OpenSSL_version_num; #ifdef DSO_DLFCN +# define DSO_DSOBYADDR "DSO_dsobyaddr" +# define DSO_FREE "DSO_free" + +typedef void DSO; +typedef DSO * (*DSO_dsobyaddr_t)(void (*addr)(void), int flags); +typedef int (*DSO_free_t)(DSO *dso); + +static DSO_dsobyaddr_t DSO_dsobyaddr; +static DSO_free_t DSO_free; + # include typedef void * SHLIB; @@ -108,11 +118,13 @@ static int shlib_close(SHLIB lib) # define CRYPTO_FIRST_OPT "-crypto_first" # define SSL_FIRST_OPT "-ssl_first" # define JUST_CRYPTO_OPT "-just_crypto" +# define DSO_REFTEST_OPT "-dso_ref" enum test_types_en { CRYPTO_FIRST, SSL_FIRST, - JUST_CRYPTO + JUST_CRYPTO, + DSO_REFTEST }; int main(int argc, char **argv) @@ -123,7 +135,7 @@ int main(int argc, char **argv) void (*func) (void); SHLIB_SYM sym; } tls_method_sym, ssl_ctx_new_sym, ssl_ctx_free_sym, err_get_error_sym, - openssl_version_num_sym; + openssl_version_num_sym, dso_dsobyaddr_sym, dso_free_sym; enum test_types_en test_type; int i; @@ -138,6 +150,8 @@ int main(int argc, char **argv) test_type = SSL_FIRST; } else if (strcmp(argv[1], JUST_CRYPTO_OPT) == 0) { test_type = JUST_CRYPTO; + } else if (strcmp(argv[1], DSO_REFTEST_OPT) == 0) { + test_type = DSO_REFTEST; } else { printf("Unrecognised argument\n"); return 1; @@ -145,7 +159,8 @@ int main(int argc, char **argv) for (i = 0; i < 2; i++) { if ((i == 0 && (test_type == CRYPTO_FIRST - || test_type == JUST_CRYPTO)) + || test_type == JUST_CRYPTO + || test_type == DSO_REFTEST)) || (i == 1 && test_type == SSL_FIRST)) { if (!shlib_load(argv[2], &cryptolib)) { printf("Unable to load libcrypto\n"); @@ -161,7 +176,7 @@ int main(int argc, char **argv) } } - if (test_type != JUST_CRYPTO) { + if (test_type != JUST_CRYPTO && test_type != DSO_REFTEST) { if (!shlib_sym(ssllib, TLS_METHOD, &tls_method_sym.sym) || !shlib_sym(ssllib, SSL_CTX_NEW, &ssl_ctx_new_sym.sym) || !shlib_sym(ssllib, SSL_CTX_FREE, &ssl_ctx_free_sym.sym)) { @@ -215,6 +230,38 @@ int main(int argc, char **argv) return 1; } + if (test_type == DSO_REFTEST) { +# ifdef DSO_DLFCN + /* + * This is resembling the code used in ossl_init_base() and + * OPENSSL_atexit() to block unloading the library after dlclose(). + * We are not testing this on Windows, because it is done there in a + * completely different way. Especially as a call to DSO_dsobyaddr() + * will always return an error, because DSO_pathbyaddr() is not + * implemented there. + */ + if (!shlib_sym(cryptolib, DSO_DSOBYADDR, &dso_dsobyaddr_sym.sym) + || !shlib_sym(cryptolib, DSO_FREE, &dso_free_sym.sym)) { + printf("Unable to load crypto dso symbols\n"); + return 1; + } + + DSO_dsobyaddr = (DSO_dsobyaddr_t)dso_dsobyaddr_sym.func; + DSO_free = (DSO_free_t)dso_free_sym.func; + + { + DSO *hndl; + /* use known symbol from crypto module */ + if ((hndl = DSO_dsobyaddr((void (*)(void))ERR_get_error, 0)) != NULL) { + DSO_free(hndl); + } else { + printf("Unable to obtain DSO reference from crypto symbol\n"); + return 1; + } + } +# endif /* DSO_DLFCN */ + } + for (i = 0; i < 2; i++) { if ((i == 0 && test_type == CRYPTO_FIRST) || (i == 1 && test_type == SSL_FIRST)) { @@ -224,7 +271,8 @@ int main(int argc, char **argv) } } if ((i == 0 && (test_type == SSL_FIRST - || test_type == JUST_CRYPTO)) + || test_type == JUST_CRYPTO + || test_type == DSO_REFTEST)) || (i == 1 && test_type == CRYPTO_FIRST)) { if (!shlib_close(cryptolib)) { printf("Unable to close libcrypto\n"); diff --git a/deps/openssl/openssl/test/ssl-tests/01-simple.conf b/deps/openssl/openssl/test/ssl-tests/01-simple.conf index 65c7e5d151f1..5f4dd841b473 100644 --- a/deps/openssl/openssl/test/ssl-tests/01-simple.conf +++ b/deps/openssl/openssl/test/ssl-tests/01-simple.conf @@ -74,3 +74,5 @@ VerifyMode = Peer [test-2] ExpectedClientAlert = UnknownCA ExpectedResult = ClientFail + + diff --git a/deps/openssl/openssl/test/ssl-tests/02-protocol-version.conf b/deps/openssl/openssl/test/ssl-tests/02-protocol-version.conf index cb737f80722e..cb89dbc10aa6 100644 --- a/deps/openssl/openssl/test/ssl-tests/02-protocol-version.conf +++ b/deps/openssl/openssl/test/ssl-tests/02-protocol-version.conf @@ -9971,3 +9971,5 @@ VerifyMode = Peer [test-360] ExpectedProtocol = TLSv1.2 ExpectedResult = Success + + diff --git a/deps/openssl/openssl/test/ssl-tests/03-custom_verify.conf b/deps/openssl/openssl/test/ssl-tests/03-custom_verify.conf index 65c9005ff85c..8dca715e74da 100644 --- a/deps/openssl/openssl/test/ssl-tests/03-custom_verify.conf +++ b/deps/openssl/openssl/test/ssl-tests/03-custom_verify.conf @@ -234,3 +234,5 @@ client = 8-verify-custom-fail-no-root-client-extra [8-verify-custom-fail-no-root-client-extra] VerifyCallback = RejectAll + + diff --git a/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf b/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf index bf374039d186..0e91bed9f18e 100644 --- a/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf +++ b/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf @@ -588,3 +588,5 @@ VerifyMode = Peer [test-19] ExpectedResult = ServerFail ExpectedServerAlert = UnknownCA + + diff --git a/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf.in b/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf.in index bb7fddb8bc90..8738aaa76966 100644 --- a/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf.in +++ b/deps/openssl/openssl/test/ssl-tests/04-client_auth.conf.in @@ -119,5 +119,5 @@ sub generate_tests() { } } } - + generate_tests(); diff --git a/deps/openssl/openssl/test/ssl-tests/05-sni.conf b/deps/openssl/openssl/test/ssl-tests/05-sni.conf index 4278cbf85b0d..e1fb3d9d8967 100644 --- a/deps/openssl/openssl/test/ssl-tests/05-sni.conf +++ b/deps/openssl/openssl/test/ssl-tests/05-sni.conf @@ -199,3 +199,5 @@ ServerNameCallback = RejectMismatch [5-SNI-bad-sni-reject-mismatch-client-extra] ServerName = invalid + + diff --git a/deps/openssl/openssl/test/ssl-tests/06-sni-ticket.conf b/deps/openssl/openssl/test/ssl-tests/06-sni-ticket.conf index 9ee9c71fcc64..9620e015a1a9 100644 --- a/deps/openssl/openssl/test/ssl-tests/06-sni-ticket.conf +++ b/deps/openssl/openssl/test/ssl-tests/06-sni-ticket.conf @@ -730,3 +730,5 @@ ServerNameCallback = IgnoreMismatch [16-sni-session-ticket-client-extra] ServerName = server2 + + diff --git a/deps/openssl/openssl/test/ssl-tests/07-dtls-protocol-version.conf b/deps/openssl/openssl/test/ssl-tests/07-dtls-protocol-version.conf index bd9a5db7a28b..3304a3bbaaec 100644 --- a/deps/openssl/openssl/test/ssl-tests/07-dtls-protocol-version.conf +++ b/deps/openssl/openssl/test/ssl-tests/07-dtls-protocol-version.conf @@ -1816,3 +1816,5 @@ VerifyMode = Peer ExpectedProtocol = DTLSv1.2 ExpectedResult = Success Method = DTLS + + diff --git a/deps/openssl/openssl/test/ssl-tests/08-npn.conf b/deps/openssl/openssl/test/ssl-tests/08-npn.conf index 8b4b5360c070..9115ef458b89 100644 --- a/deps/openssl/openssl/test/ssl-tests/08-npn.conf +++ b/deps/openssl/openssl/test/ssl-tests/08-npn.conf @@ -790,3 +790,5 @@ NPNProtocols = baz [19-npn-used-if-alpn-not-supported-resumption-client-extra] ALPNProtocols = foo NPNProtocols = bar,baz + + diff --git a/deps/openssl/openssl/test/ssl-tests/08-npn.conf.in b/deps/openssl/openssl/test/ssl-tests/08-npn.conf.in index 796599224474..bcb632f051dd 100644 --- a/deps/openssl/openssl/test/ssl-tests/08-npn.conf.in +++ b/deps/openssl/openssl/test/ssl-tests/08-npn.conf.in @@ -237,7 +237,7 @@ our @tests = ( test => { "ExpectedALPNProtocol" => undef, "ExpectedNPNProtocol" => "bar", - "ExpectedServerName" => "server2", + "ExpectedServerName" => "server2", }, }, { diff --git a/deps/openssl/openssl/test/ssl-tests/09-alpn.conf b/deps/openssl/openssl/test/ssl-tests/09-alpn.conf index bb11102636e6..e7e6cb95348b 100644 --- a/deps/openssl/openssl/test/ssl-tests/09-alpn.conf +++ b/deps/openssl/openssl/test/ssl-tests/09-alpn.conf @@ -615,3 +615,5 @@ ALPNProtocols = foo [15-alpn-no-client-support-resumption-client-extra] ALPNProtocols = foo + + diff --git a/deps/openssl/openssl/test/ssl-tests/09-alpn.conf.in b/deps/openssl/openssl/test/ssl-tests/09-alpn.conf.in index 41c9486fa52e..37035f1d84d4 100644 --- a/deps/openssl/openssl/test/ssl-tests/09-alpn.conf.in +++ b/deps/openssl/openssl/test/ssl-tests/09-alpn.conf.in @@ -180,7 +180,7 @@ our @tests = ( name => "alpn-selected-sni-server-does-not-support-alpn", server => { extra => { - "ALPNProtocols" => "bar", + "ALPNProtocols" => "bar", "ServerNameCallback" => "IgnoreMismatch", }, }, diff --git a/deps/openssl/openssl/test/ssl-tests/10-resumption.conf b/deps/openssl/openssl/test/ssl-tests/10-resumption.conf index 4c79b0898e7b..b2deee4209fd 100644 --- a/deps/openssl/openssl/test/ssl-tests/10-resumption.conf +++ b/deps/openssl/openssl/test/ssl-tests/10-resumption.conf @@ -1332,3 +1332,5 @@ VerifyMode = Peer ExpectedProtocol = TLSv1.2 HandshakeMode = Resume ResumptionExpected = Yes + + diff --git a/deps/openssl/openssl/test/ssl-tests/11-dtls_resumption.conf b/deps/openssl/openssl/test/ssl-tests/11-dtls_resumption.conf index df28ecb1e7bd..ceed95974472 100644 --- a/deps/openssl/openssl/test/ssl-tests/11-dtls_resumption.conf +++ b/deps/openssl/openssl/test/ssl-tests/11-dtls_resumption.conf @@ -608,3 +608,5 @@ ExpectedProtocol = DTLSv1.2 HandshakeMode = Resume Method = DTLS ResumptionExpected = Yes + + diff --git a/deps/openssl/openssl/test/ssl-tests/12-ct.conf b/deps/openssl/openssl/test/ssl-tests/12-ct.conf index 985292e9000f..2e6e9dea6757 100644 --- a/deps/openssl/openssl/test/ssl-tests/12-ct.conf +++ b/deps/openssl/openssl/test/ssl-tests/12-ct.conf @@ -187,3 +187,5 @@ CTValidation = Strict [5-ct-strict-resumption-resume-client-extra] CTValidation = Strict + + diff --git a/deps/openssl/openssl/test/ssl-tests/13-fragmentation.conf b/deps/openssl/openssl/test/ssl-tests/13-fragmentation.conf index 02feb2c7783a..4c1e9e2b3389 100644 --- a/deps/openssl/openssl/test/ssl-tests/13-fragmentation.conf +++ b/deps/openssl/openssl/test/ssl-tests/13-fragmentation.conf @@ -393,3 +393,5 @@ VerifyMode = Peer [test-15] ApplicationData = 4096 MaxFragmentSize = 4096 + + diff --git a/deps/openssl/openssl/test/ssl-tests/14-curves.conf b/deps/openssl/openssl/test/ssl-tests/14-curves.conf index 61b297053e7f..7f7ac4ba8dc0 100644 --- a/deps/openssl/openssl/test/ssl-tests/14-curves.conf +++ b/deps/openssl/openssl/test/ssl-tests/14-curves.conf @@ -783,3 +783,5 @@ VerifyMode = Peer [test-28] ExpectedResult = Success ExpectedTmpKeyType = X25519 + + diff --git a/deps/openssl/openssl/test/ssl-tests/15-certstatus.conf b/deps/openssl/openssl/test/ssl-tests/15-certstatus.conf index 770f024d13fc..bf6c41cda2f3 100644 --- a/deps/openssl/openssl/test/ssl-tests/15-certstatus.conf +++ b/deps/openssl/openssl/test/ssl-tests/15-certstatus.conf @@ -58,3 +58,5 @@ server = 1-certstatus-bad-server-extra [1-certstatus-bad-server-extra] CertStatus = BadResponse + + diff --git a/deps/openssl/openssl/test/ssl-tests/16-dtls-certstatus.conf b/deps/openssl/openssl/test/ssl-tests/16-dtls-certstatus.conf index eb55bbd71c2e..a561803a5544 100644 --- a/deps/openssl/openssl/test/ssl-tests/16-dtls-certstatus.conf +++ b/deps/openssl/openssl/test/ssl-tests/16-dtls-certstatus.conf @@ -58,3 +58,5 @@ server = 1-certstatus-bad-server-extra [1-certstatus-bad-server-extra] CertStatus = BadResponse + + diff --git a/deps/openssl/openssl/test/ssl-tests/17-renegotiate.conf b/deps/openssl/openssl/test/ssl-tests/17-renegotiate.conf index 45a9d5864b1f..48f569fad6da 100644 --- a/deps/openssl/openssl/test/ssl-tests/17-renegotiate.conf +++ b/deps/openssl/openssl/test/ssl-tests/17-renegotiate.conf @@ -424,3 +424,5 @@ ExpectedResult = ClientFail HandshakeMode = RenegotiateClient Method = TLS ResumptionExpected = No + + diff --git a/deps/openssl/openssl/test/ssl-tests/18-dtls-renegotiate.conf b/deps/openssl/openssl/test/ssl-tests/18-dtls-renegotiate.conf index d23a84a89b77..3d8ebd74c455 100644 --- a/deps/openssl/openssl/test/ssl-tests/18-dtls-renegotiate.conf +++ b/deps/openssl/openssl/test/ssl-tests/18-dtls-renegotiate.conf @@ -272,3 +272,5 @@ client = 8-renegotiate-aead-to-aead-client-extra [8-renegotiate-aead-to-aead-client-extra] RenegotiateCiphers = AES256-GCM-SHA384 + + diff --git a/deps/openssl/openssl/test/ssl-tests/19-mac-then-encrypt.conf b/deps/openssl/openssl/test/ssl-tests/19-mac-then-encrypt.conf index 8626a06669c5..40480edbf890 100644 --- a/deps/openssl/openssl/test/ssl-tests/19-mac-then-encrypt.conf +++ b/deps/openssl/openssl/test/ssl-tests/19-mac-then-encrypt.conf @@ -152,3 +152,5 @@ VerifyMode = Peer [test-5] ExpectedResult = Success + + diff --git a/deps/openssl/openssl/test/ssl_test.tmpl b/deps/openssl/openssl/test/ssl_test.tmpl index 0517bff44fd8..9506837f84e5 100644 --- a/deps/openssl/openssl/test/ssl_test.tmpl +++ b/deps/openssl/openssl/test/ssl_test.tmpl @@ -92,35 +92,35 @@ client = {-$testname-}-client{- $OUT .= "\n[$testname-server-extra]\n"; foreach my $key (sort keys %{$server{"extra"}}) { $OUT .= qq{$key} . " = " . qq{$server{"extra"}{$key}\n} - if defined $server{"extra"}{$key}; + if defined $server{"extra"}{$key}; } } if (%server2 && $server2{"extra"}) { $OUT .= "\n[$testname-server2-extra]\n"; foreach my $key (sort keys %{$server2{"extra"}}) { $OUT .= qq{$key} . " = " . qq{$server2{"extra"}{$key}\n} - if defined $server2{"extra"}{$key}; + if defined $server2{"extra"}{$key}; } } if (%resume_server && $resume_server{"extra"}) { $OUT .= "\n[$testname-resume-server-extra]\n"; foreach my $key (sort keys %{$resume_server{"extra"}}) { $OUT .= qq{$key} . " = " . qq{$resume_server{"extra"}{$key}\n} - if defined $resume_server{"extra"}{$key}; + if defined $resume_server{"extra"}{$key}; } } if ($client{"extra"}) { $OUT .= "\n[$testname-client-extra]\n"; foreach my $key (sort keys %{$client{"extra"}}) { $OUT .= qq{$key} . " = " . qq{$client{"extra"}{$key}\n} - if defined $client{"extra"}{$key}; + if defined $client{"extra"}{$key}; } } if (%resume_client && $resume_client{"extra"}) { $OUT .= "\n[$testname-resume-client-extra]\n"; foreach my $key (sort keys %{$resume_client{"extra"}}) { $OUT .= qq{$key} . " = " . qq{$resume_client{"extra"}{$key}\n} - if defined $resume_client{"extra"}{$key}; + if defined $resume_client{"extra"}{$key}; } } -} diff --git a/deps/openssl/openssl/test/sslapitest.c b/deps/openssl/openssl/test/sslapitest.c index 77e8f2e9ad36..8badd284e328 100644 --- a/deps/openssl/openssl/test/sslapitest.c +++ b/deps/openssl/openssl/test/sslapitest.c @@ -1208,6 +1208,61 @@ static int test_custom_exts(int tst) return testresult; } +static int test_ssl_pending(int tst) +{ + SSL_CTX *cctx = NULL, *sctx = NULL; + SSL *clientssl = NULL, *serverssl = NULL; + int testresult = 0; + char msg[] = "A test message"; + char buf[5]; + size_t written; + + if (tst == 0) { + if (!create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(), + TLS1_VERSION, TLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) { + printf("Failed creating SSL_CTX pair\n"); + goto end; + } + } else { +#ifndef OPENSSL_NO_DTLS + if (!create_ssl_ctx_pair(DTLS_server_method(), DTLS_client_method(), + DTLS1_VERSION, DTLS_MAX_VERSION, + &sctx, &cctx, cert, privkey)) { + printf("Failed creating SSL_CTX pair\n"); + goto end; + } +#else + return 1; +#endif + } + + if (!create_ssl_objects(sctx, cctx, &serverssl, &clientssl, NULL, NULL) + || !create_ssl_connection(serverssl, clientssl)) { + printf("Failed creating connection\n"); + goto end; + } + + written = SSL_write(serverssl, msg, sizeof(msg)); + if (written != sizeof(msg) + || SSL_read(clientssl, buf, sizeof(buf)) != sizeof(buf) + || SSL_pending(clientssl) != (int)(written - sizeof(buf))) { + printf("Failed checking SSL_pending\n"); + goto end; + } + + testresult = 1; + + end: + SSL_free(serverssl); + SSL_free(clientssl); + SSL_CTX_free(sctx); + SSL_CTX_free(cctx); + + return testresult; +} + + int main(int argc, char *argv[]) { BIO *err = NULL; @@ -1244,6 +1299,7 @@ int main(int argc, char *argv[]) ADD_TEST(test_ssl_bio_change_wbio); ADD_ALL_TESTS(test_set_sigalgs, OSSL_NELEM(testsigalgs) * 2); ADD_ALL_TESTS(test_custom_exts, 2); + ADD_ALL_TESTS(test_ssl_pending, 2); testresult = run_tests(argv[0]); diff --git a/deps/openssl/openssl/test/verify_extra_test.c b/deps/openssl/openssl/test/verify_extra_test.c index cc05bc2ef1f0..fabc1dc59f6f 100644 --- a/deps/openssl/openssl/test/verify_extra_test.c +++ b/deps/openssl/openssl/test/verify_extra_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2015-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2015-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 @@ -137,6 +137,43 @@ static int test_alt_chains_cert_forgery(const char *roots_f, return ret; } +static int test_store_ctx(const char *bad_f) +{ + X509_STORE_CTX *sctx = NULL; + X509 *x = NULL; + BIO *bio = NULL; + int testresult = 0, ret; + + bio = BIO_new_file(bad_f, "r"); + if (bio == NULL) + goto err; + + x = PEM_read_bio_X509(bio, NULL, 0, NULL); + if (x == NULL) + goto err; + + sctx = X509_STORE_CTX_new(); + if (sctx == NULL) + goto err; + + if (!X509_STORE_CTX_init(sctx, NULL, x, NULL)) + goto err; + + /* Verifying a cert where we have no trusted certs should fail */ + ret = X509_verify_cert(sctx); + + if (ret == 0) { + /* This is the result we were expecting: Test passed */ + testresult = 1; + } + + err: + X509_STORE_CTX_free(sctx); + X509_free(x); + BIO_free(bio); + return testresult; +} + int main(int argc, char **argv) { CRYPTO_set_mem_debug(1); @@ -152,6 +189,11 @@ int main(int argc, char **argv) return 1; } + if (!test_store_ctx(argv[3])) { + fprintf(stderr, "Test X509_STORE_CTX failed\n"); + return 1; + } + #ifndef OPENSSL_NO_CRYPTO_MDEBUG if (CRYPTO_mem_leaks_fp(stderr) <= 0) return 1; diff --git a/deps/openssl/openssl/test/versions.c b/deps/openssl/openssl/test/versions.c new file mode 100644 index 000000000000..3ab05ec35d5d --- /dev/null +++ b/deps/openssl/openssl/test/versions.c @@ -0,0 +1,20 @@ +/* + * Copyright 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 + */ + +#include +#include +#include + +/* A simple helper for the perl function OpenSSL::Test::openssl_versions */ +int main(void) +{ + printf("Build version: 0x%08lX\n", OPENSSL_VERSION_NUMBER); + printf("Library version: 0x%08lX\n", OpenSSL_version_num()); + return 0; +} diff --git a/deps/openssl/openssl/test/x509_dup_cert_test.c b/deps/openssl/openssl/test/x509_dup_cert_test.c new file mode 100644 index 000000000000..7f7adebbb0fb --- /dev/null +++ b/deps/openssl/openssl/test/x509_dup_cert_test.c @@ -0,0 +1,70 @@ +/* + * Copyright 2017-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 + */ + +/* ==================================================================== + * Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved. + */ + +#include +#include +#include + +static int test_509_dup_cert(const char *cert_f) +{ + int ret = 0; + X509_STORE_CTX *sctx = NULL; + X509_STORE *store = NULL; + X509_LOOKUP *lookup = NULL; + + store = X509_STORE_new(); + if (store == NULL) + goto err; + + lookup = X509_STORE_add_lookup(store, X509_LOOKUP_file()); + if (lookup == NULL) + goto err; + + if (!X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM)) + goto err; + if (!X509_load_cert_file(lookup, cert_f, X509_FILETYPE_PEM)) + goto err; + + ret = 1; + + err: + X509_STORE_CTX_free(sctx); + X509_STORE_free(store); + if (ret != 1) + ERR_print_errors_fp(stderr); + return ret; +} + +int main(int argc, char **argv) +{ + CRYPTO_set_mem_debug(1); + CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON); + + if (argc != 2) { + fprintf(stderr, "usage: x509_dup_cert_test cert.pem\n"); + return 1; + } + + if (!test_509_dup_cert(argv[1])) { + fprintf(stderr, "Test X509 duplicate cert failed\n"); + return 1; + } + +#ifndef OPENSSL_NO_CRYPTO_MDEBUG + if (CRYPTO_mem_leaks_fp(stderr) <= 0) + return 1; +#endif + + printf("PASS\n"); + return 0; +} diff --git a/deps/openssl/openssl/test/x509_time_test.c b/deps/openssl/openssl/test/x509_time_test.c new file mode 100644 index 000000000000..32d65c87617b --- /dev/null +++ b/deps/openssl/openssl/test/x509_time_test.c @@ -0,0 +1,212 @@ +/* + * Copyright 2017-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 + */ + +/* Tests for X509 time functions */ + +#include +#include + +#include +#include +#include "testutil.h" +#include "e_os.h" + +typedef struct { + const char *data; + int type; + time_t cmp_time; + /* -1 if asn1_time <= cmp_time, 1 if asn1_time > cmp_time, 0 if error. */ + int expected; +} TESTDATA; + +static TESTDATA x509_cmp_tests[] = { + { + "20170217180154Z", V_ASN1_GENERALIZEDTIME, + /* The same in seconds since epoch. */ + 1487354514, -1, + }, + { + "20170217180154Z", V_ASN1_GENERALIZEDTIME, + /* One second more. */ + 1487354515, -1, + }, + { + "20170217180154Z", V_ASN1_GENERALIZEDTIME, + /* One second less. */ + 1487354513, 1, + }, + /* Same as UTC time. */ + { + "170217180154Z", V_ASN1_UTCTIME, + /* The same in seconds since epoch. */ + 1487354514, -1, + }, + { + "170217180154Z", V_ASN1_UTCTIME, + /* One second more. */ + 1487354515, -1, + }, + { + "170217180154Z", V_ASN1_UTCTIME, + /* One second less. */ + 1487354513, 1, + }, + /* UTCTime from the 20th century. */ + { + "990217180154Z", V_ASN1_UTCTIME, + /* The same in seconds since epoch. */ + 919274514, -1, + }, + { + "990217180154Z", V_ASN1_UTCTIME, + /* One second more. */ + 919274515, -1, + }, + { + "990217180154Z", V_ASN1_UTCTIME, + /* One second less. */ + 919274513, 1, + }, + /* Various invalid formats. */ + { + /* No trailing Z. */ + "20170217180154", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* No trailing Z, UTCTime. */ + "170217180154", V_ASN1_UTCTIME, 0, 0, + }, + { + /* No seconds. */ + "201702171801Z", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* No seconds, UTCTime. */ + "1702171801Z", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Fractional seconds. */ + "20170217180154.001Z", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Fractional seconds, UTCTime. */ + "170217180154.001Z", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Timezone offset. */ + "20170217180154+0100", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Timezone offset, UTCTime. */ + "170217180154+0100", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Extra digits. */ + "2017021718015400Z", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Extra digits, UTCTime. */ + "17021718015400Z", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Non-digits. */ + "2017021718015aZ", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Non-digits, UTCTime. */ + "17021718015aZ", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Trailing garbage. */ + "20170217180154Zlongtrailinggarbage", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Trailing garbage, UTCTime. */ + "170217180154Zlongtrailinggarbage", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Swapped type. */ + "20170217180154Z", V_ASN1_UTCTIME, 0, 0, + }, + { + /* Swapped type. */ + "170217180154Z", V_ASN1_GENERALIZEDTIME, 0, 0, + }, + { + /* Bad type. */ + "20170217180154Z", V_ASN1_OCTET_STRING, 0, 0, + }, +}; + +static int test_x509_cmp_time(int idx) +{ + ASN1_TIME t; + int result; + + memset(&t, 0, sizeof(t)); + t.type = x509_cmp_tests[idx].type; + t.data = (unsigned char*)(x509_cmp_tests[idx].data); + t.length = strlen(x509_cmp_tests[idx].data); + + result = X509_cmp_time(&t, &x509_cmp_tests[idx].cmp_time); + if (result != x509_cmp_tests[idx].expected) { + fprintf(stderr, "test_x509_cmp_time(%d) failed: expected %d, got %d\n", + idx, x509_cmp_tests[idx].expected, result); + return 0; + } + return 1; +} + +static int test_x509_cmp_time_current() +{ + time_t now = time(NULL); + /* Pick a day earlier and later, relative to any system clock. */ + ASN1_TIME *asn1_before = NULL, *asn1_after = NULL; + int cmp_result, failed = 0; + + asn1_before = ASN1_TIME_adj(NULL, now, -1, 0); + asn1_after = ASN1_TIME_adj(NULL, now, 1, 0); + + cmp_result = X509_cmp_time(asn1_before, NULL); + if (cmp_result != -1) { + fprintf(stderr, "test_x509_cmp_time_current failed: expected -1, got %d\n", + cmp_result); + failed = 1; + } + + cmp_result = X509_cmp_time(asn1_after, NULL); + if (cmp_result != 1) { + fprintf(stderr, "test_x509_cmp_time_current failed: expected 1, got %d\n", + cmp_result); + failed = 1; + } + + ASN1_TIME_free(asn1_before); + ASN1_TIME_free(asn1_after); + + return failed == 0; +} + +int main(int argc, char **argv) +{ + int ret = 0; + unsigned int idx; + + if (!test_x509_cmp_time_current()) + ret = 1; + + for (idx=0 ; idx < OSSL_NELEM(x509_cmp_tests) ; ++idx) { + if (!test_x509_cmp_time(idx)) + ret = 1; + } + + if (ret == 0) + printf("PASS\n"); + return ret; +} diff --git a/deps/openssl/openssl/util/copy.pl b/deps/openssl/openssl/util/copy.pl index 01964f585e87..fe1c908e681a 100644 --- a/deps/openssl/openssl/util/copy.pl +++ b/deps/openssl/openssl/util/copy.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2005-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2005-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 @@ -18,6 +18,7 @@ my $stripcr = 0; my $arg; +my @excludes = (); foreach $arg (@ARGV) { if ($arg eq "-stripcr") @@ -25,11 +26,16 @@ $stripcr = 1; next; } + if ($arg =~ /^-exclude_re=(.*)$/) + { + push @excludes, $1; + next; + } $arg =~ s|\\|/|g; # compensate for bug/feature in cygwin glob... $arg = qq("$arg") if ($arg =~ /\s/); # compensate for bug in 5.10... - foreach (glob $arg) + foreach my $f (glob $arg) { - push @filelist, $_; + push @filelist, $f unless grep { $f =~ /$_/ } @excludes; } } diff --git a/deps/openssl/openssl/util/dofile.pl b/deps/openssl/openssl/util/dofile.pl index fc72989b0fd9..4533c135a30e 100644 --- a/deps/openssl/openssl/util/dofile.pl +++ b/deps/openssl/openssl/util/dofile.pl @@ -40,7 +40,7 @@ package OpenSSL::Template; use File::Basename; use File::Spec::Functions; use lib "$FindBin::Bin/perl"; -use with_fallback qw(Text::Template); +use with_fallback "Text::Template 1.46"; #use parent qw/Text::Template/; use vars qw/@ISA/; @@ -99,9 +99,9 @@ package main; # This adds quotes (") around the given string, and escapes any $, @, \, # " and ' by prepending a \ to them. sub quotify1 { - my $s = my $orig = shift @_; + my $s = shift @_; $s =~ s/([\$\@\\"'])/\\$1/g; - $s ne $orig || $s =~ /\s/ ? '"'.$s.'"' : $s; + '"'.$s.'"'; } # quotify_l LIST diff --git a/deps/openssl/openssl/util/echo.pl b/deps/openssl/openssl/util/echo.pl new file mode 100644 index 000000000000..d90e52129bab --- /dev/null +++ b/deps/openssl/openssl/util/echo.pl @@ -0,0 +1,12 @@ +#! /usr/bin/perl + +use strict; +use warnings; +use Getopt::Std; + +our $opt_n = 0; + +getopts('n') or die "Invalid option: $!\n"; + +print join(' ', @ARGV); +print "\n" unless $opt_n; diff --git a/deps/openssl/openssl/util/fipslink.pl b/deps/openssl/openssl/util/fipslink.pl index 8248382c8483..18a91532be53 100644 --- a/deps/openssl/openssl/util/fipslink.pl +++ b/deps/openssl/openssl/util/fipslink.pl @@ -20,7 +20,7 @@ sub check_env my ($fips_cc,$fips_cc_args, $fips_link,$fips_target, $fips_libdir, $sha1_exe) = check_env("FIPS_CC", "FIPS_CC_ARGS", "FIPS_LINK", "FIPS_TARGET", - "FIPSLIB_D", "FIPS_SHA1_EXE"); + "FIPSLIB_D", "FIPS_SHA1_EXE"); @@ -109,5 +109,7 @@ sub check_hash $hashval =~ s/^.*=\s+//; die "Invalid hash syntax in file" if (length($hashfile) != 40); die "Invalid hash received for file" if (length($hashval) != 40); - die "***HASH VALUE MISMATCH FOR FILE $filename ***" if ($hashval ne $hashfile); + die "***HASH VALUE MISMATCH FOR FILE $filename ***" if ($hashval ne $hashfile); } + + diff --git a/deps/openssl/openssl/util/incore b/deps/openssl/openssl/util/incore index 8a88f81559c4..26fcf95033fc 100755 --- a/deps/openssl/openssl/util/incore +++ b/deps/openssl/openssl/util/incore @@ -65,7 +65,7 @@ # put aside e_machine in case one has to treat specific # platforms differently, see EM_ constants in elf.h for - # assortment... + # assortment... $self->{e_machine} = $elf_ehdr{e_machine}; ################################################# @@ -131,12 +131,12 @@ my $name; # (STT_OBJECT || STT_FUNC) if ($st_bind<3 && ($st_type==1 || $st_type==2) - && $st_secn <= $#sections # sane st_shndx + && $st_secn <= $#sections # sane st_shndx && @sections[$st_secn]->{sh_type} # not SHN_UNDEF && ($name=(split(chr(0),substr($strings,$elf_sym{st_name},128)))[0]) ) { # synthesize st_offset, ... - $elf_sym{st_offset} = $elf_sym{st_value} + $elf_sym{st_offset} = $elf_sym{st_value} - @sections[$st_secn]->{sh_addr} + @sections[$st_secn]->{sh_offset}; $elf_sym{st_name} = $name; diff --git a/deps/openssl/openssl/util/libcrypto.num b/deps/openssl/openssl/util/libcrypto.num index 8414d97ff114..51f1d7d6540a 100644 --- a/deps/openssl/openssl/util/libcrypto.num +++ b/deps/openssl/openssl/util/libcrypto.num @@ -4234,3 +4234,32 @@ CRYPTO_secure_clear_free 4315 1_1_0g EXIST::FUNCTION: EVP_PKEY_set1_engine 4347 1_1_0g EXIST::FUNCTION:ENGINE OCSP_resp_get0_signer 4374 1_1_0h EXIST::FUNCTION:OCSP X509_get0_authority_key_id 4448 1_1_0h EXIST::FUNCTION: +conf_ssl_name_find 4469 1_1_0i EXIST::FUNCTION: +conf_ssl_get_cmd 4470 1_1_0i EXIST::FUNCTION: +conf_ssl_get 4471 1_1_0i EXIST::FUNCTION: +X509_VERIFY_PARAM_get_hostflags 4472 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_get_by_fingerprint 4493 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_new 4494 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_init 4495 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_get_by_alias 4496 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_new_item 4497 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_shutdown 4498 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_new_item 4499 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_ctrl 4500 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_get_by_issuer_serial 4501 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_get_store 4502 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_ctrl 4503 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_get_by_alias 4504 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_get_by_subject 4505 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_free 4506 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_get_by_subject 4507 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_free 4508 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_shutdown 4509 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_set_method_data 4510 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_get_method_data 4511 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_get_by_fingerprint 4512 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_free 4513 1_1_0i EXIST::FUNCTION: +X509_OBJECT_set1_X509 4514 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_get_get_by_issuer_serial 4515 1_1_0i EXIST::FUNCTION: +X509_LOOKUP_meth_set_init 4516 1_1_0i EXIST::FUNCTION: +X509_OBJECT_set1_X509_CRL 4517 1_1_0i EXIST::FUNCTION: diff --git a/deps/openssl/openssl/util/local_shlib.com.in b/deps/openssl/openssl/util/local_shlib.com.in index a381872537e1..e49aa15c7792 100644 --- a/deps/openssl/openssl/util/local_shlib.com.in +++ b/deps/openssl/openssl/util/local_shlib.com.in @@ -16,7 +16,7 @@ $ $ NAMES := {- join(",", keys %names); -} {- join("\n", map { "\$ __$_ = \"".$names{$_}."\"" } keys %names); --} +-} $ I = 0 $ LOOP: $ E = F$ELEMENT(I,",",NAMES) diff --git a/deps/openssl/openssl/util/mkdef.pl b/deps/openssl/openssl/util/mkdef.pl index 66db26c3b956..823cb664d0ae 100755 --- a/deps/openssl/openssl/util/mkdef.pl +++ b/deps/openssl/openssl/util/mkdef.pl @@ -252,6 +252,7 @@ $crypto.=" include/internal/o_str.h"; $crypto.=" include/internal/err.h"; $crypto.=" include/internal/asn1t.h"; +$crypto.=" include/internal/sslconf.h"; $crypto.=" include/openssl/des.h" ; # unless $no_des; $crypto.=" include/openssl/idea.h" ; # unless $no_idea; $crypto.=" include/openssl/rc4.h" ; # unless $no_rc4; @@ -1335,7 +1336,7 @@ sub print_def_file } elsif ($VMS) { print OUT ")\n"; (my $libvmaj, my $libvmin, my $libvedit) = - $currversion =~ /^(\d+)_(\d+)_(\d+)$/; + $currversion =~ /^(\d+)_(\d+)_(\d+)[a-z]{0,2}$/; # The reason to multiply the edit number with 100 is to make space # for the possibility that we want to encode the patch letters print OUT "GSMATCH=LEQUAL,",($libvmaj * 100 + $libvmin),",",($libvedit * 100),"\n"; diff --git a/deps/openssl/openssl/util/perl/OpenSSL/Test.pm b/deps/openssl/openssl/util/perl/OpenSSL/Test.pm index 5de7b58e8be4..a6be4878950a 100644 --- a/deps/openssl/openssl/util/perl/OpenSSL/Test.pm +++ b/deps/openssl/openssl/util/perl/OpenSSL/Test.pm @@ -21,7 +21,8 @@ $VERSION = "0.8"; @EXPORT_OK = (@Test::More::EXPORT_OK, qw(bldtop_dir bldtop_file srctop_dir srctop_file data_file - pipe with cmdstr quotify)); + pipe with cmdstr quotify + openssl_versions)); =head1 NAME @@ -695,6 +696,32 @@ sub quotify { return map { $arg_formatter->($_) } @_; } +=over 4 + +=item B + +Returns a list of two numbers, the first representing the build version, +the second representing the library version. See opensslv.h for more +information on those numbers. + += back + +=cut + +my @versions = (); +sub openssl_versions { + unless (@versions) { + my %lines = + map { s/\R$//; + /^(.*): (0x[[:xdigit:]]{8})$/; + die "Weird line: $_" unless defined $1; + $1 => hex($2) } + run(test(['versions']), capture => 1); + @versions = ( $lines{'Build version'}, $lines{'Library version'} ); + } + return @versions; +} + ###################################################################### # private functions. These are never exported. diff --git a/deps/openssl/openssl/util/perl/TLSProxy/Message.pm b/deps/openssl/openssl/util/perl/TLSProxy/Message.pm index 10daba4b4246..0821bdedd328 100644 --- a/deps/openssl/openssl/util/perl/TLSProxy/Message.pm +++ b/deps/openssl/openssl/util/perl/TLSProxy/Message.pm @@ -170,7 +170,7 @@ sub get_messages $startoffset = $recoffset; $recoffset += 4; $payload = ""; - + if ($recoffset <= $record->decrypt_len) { #Some payload data is present in this record if ($record->decrypt_len - $recoffset >= $messlen) { @@ -296,7 +296,7 @@ sub new $records, $startoffset, $message_frag_lens) = @_; - + my $self = { server => $server, data => $data, diff --git a/deps/openssl/openssl/util/perl/TLSProxy/Record.pm b/deps/openssl/openssl/util/perl/TLSProxy/Record.pm index ad942d4251de..786ba0c72b66 100644 --- a/deps/openssl/openssl/util/perl/TLSProxy/Record.pm +++ b/deps/openssl/openssl/util/perl/TLSProxy/Record.pm @@ -178,7 +178,7 @@ sub new $decrypt_len, $data, $decrypt_data) = @_; - + my $self = { flight => $flight, content_type => $content_type, diff --git a/deps/openssl/openssl/util/perl/TLSProxy/ServerHello.pm b/deps/openssl/openssl/util/perl/TLSProxy/ServerHello.pm index fd3fba569455..79a8be9a895e 100644 --- a/deps/openssl/openssl/util/perl/TLSProxy/ServerHello.pm +++ b/deps/openssl/openssl/util/perl/TLSProxy/ServerHello.pm @@ -20,7 +20,7 @@ sub new $records, $startoffset, $message_frag_lens) = @_; - + my $self = $class->SUPER::new( $server, TLSProxy::Message::MT_SERVER_HELLO, @@ -66,7 +66,7 @@ sub parse my $extension_data; if ($extensions_len != 0) { $extension_data = substr($self->data, $ptr); - + if (length($extension_data) != $extensions_len) { die "Invalid extension length\n"; } diff --git a/deps/openssl/openssl/util/perl/TLSProxy/ServerKeyExchange.pm b/deps/openssl/openssl/util/perl/TLSProxy/ServerKeyExchange.pm index c011d2707a9f..6e5b4cdcb42f 100644 --- a/deps/openssl/openssl/util/perl/TLSProxy/ServerKeyExchange.pm +++ b/deps/openssl/openssl/util/perl/TLSProxy/ServerKeyExchange.pm @@ -20,7 +20,7 @@ sub new $records, $startoffset, $message_frag_lens) = @_; - + my $self = $class->SUPER::new( $server, TLSProxy::Message::MT_SERVER_KEY_EXCHANGE, diff --git a/deps/openssl/openssl/util/perl/with_fallback.pm b/deps/openssl/openssl/util/perl/with_fallback.pm index 2af1d5fbd50d..242365033fc4 100644 --- a/deps/openssl/openssl/util/perl/with_fallback.pm +++ b/deps/openssl/openssl/util/perl/with_fallback.pm @@ -1,4 +1,4 @@ -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -8,15 +8,17 @@ package with_fallback; sub import { + shift; + use File::Basename; use File::Spec::Functions; foreach (@_) { - eval "require $_"; + eval "use $_"; if ($@) { unshift @INC, catdir(dirname(__FILE__), "..", "..", "external", "perl"); my $transfer = "transfer::$_"; - eval "require $transfer"; + eval "use $transfer"; shift @INC; warn $@ if $@; } diff --git a/deps/openssl/openssl/util/process_docs.pl b/deps/openssl/openssl/util/process_docs.pl index e084df78a571..f7daef0dd896 100755 --- a/deps/openssl/openssl/util/process_docs.pl +++ b/deps/openssl/openssl/util/process_docs.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. +# 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 @@ -101,7 +101,7 @@ my $suffix = { man => ".$podinfo{section}".($options{suffix} // ""), html => ".html" } -> {$options{type}}; my $generate = { man => "pod2man --name=$name --section=$podinfo{section} --center=OpenSSL --release=$config{version} \"$podpath\"", - html => "pod2html \"--podroot=$options{sourcedir}\" --htmldir=$updir --podpath=apps:crypto:ssl \"--infile=$podpath\" \"--title=$podname\"" + html => "pod2html \"--podroot=$options{sourcedir}\" --htmldir=$updir --podpath=apps:crypto:ssl \"--infile=$podpath\" \"--title=$podname\" --quiet" } -> {$options{type}}; my $output_dir = catdir($options{destdir}, "man$podinfo{section}"); my $output_file = $podname . $suffix; @@ -115,6 +115,32 @@ @output = `$generate`; map { s|href="http://man\.he\.net/(man\d/[^"]+)(?:\.html)?"|href="../$1.html|g; } @output if $options{type} eq "html"; + if ($options{type} eq "man") { + # Because some *roff parsers are more strict than others, + # multiple lines in the NAME section must be merged into + # one. + my $in_name = 0; + my $name_line = ""; + my @newoutput = (); + foreach (@output) { + if ($in_name) { + if (/^\.SH "/) { + $in_name = 0; + push @newoutput, $name_line."\n"; + } else { + chomp (my $x = $_); + $name_line .= " " if $name_line; + $name_line .= $x; + next; + } + } + if (/^\.SH +"NAME" *$/) { + $in_name = 1; + } + push @newoutput, $_; + } + @output = @newoutput; + } } print STDERR "DEBUG: Done processing\n" if $options{debug}; @@ -238,7 +264,7 @@ =head1 OPTIONS =head1 COPYRIGHT -Copyright 2013-2016 The OpenSSL Project Authors. All Rights Reserved. +Copyright 2013-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 diff --git a/test/parallel/test-crypto-scrypt.js b/test/parallel/test-crypto-scrypt.js index a99bff9255f9..982b0ac6d5b6 100644 --- a/test/parallel/test-crypto-scrypt.js +++ b/test/parallel/test-crypto-scrypt.js @@ -95,8 +95,6 @@ const good = [ const bad = [ { N: 1, p: 1, r: 1 }, // N < 2 { N: 3, p: 1, r: 1 }, // Not power of 2. - { N: 2 ** 16, p: 1, r: 1 }, // N >= 2**(r*16) - { N: 2, p: 2 ** 30, r: 1 }, // p > (2**30-1)/r { N: 1, cost: 1 }, // both N and cost { p: 1, parallelization: 1 }, // both p and parallelization { r: 1, blockSize: 1 } // both r and blocksize @@ -104,6 +102,8 @@ const bad = [ // Test vectors where 128*N*r exceeds maxmem. const toobig = [ + { N: 2 ** 16, p: 1, r: 1 }, // N >= 2**(r*16) + { N: 2, p: 2 ** 30, r: 1 }, // p > (2**30-1)/r { N: 2 ** 20, p: 1, r: 8 }, { N: 2 ** 10, p: 1, r: 8, maxmem: 2 ** 20 }, ]; diff --git a/test/parallel/test-tls-passphrase.js b/test/parallel/test-tls-passphrase.js index b183309af714..6ed19c74d22f 100644 --- a/test/parallel/test-tls-passphrase.js +++ b/test/parallel/test-tls-passphrase.js @@ -221,7 +221,7 @@ server.listen(0, common.mustCall(function() { }, common.mustCall()); })).unref(); -const errMessagePassword = /bad password read/; +const errMessagePassword = /bad decrypt/; // Missing passphrase assert.throws(function() {