Skip to content
Permalink
Browse files

deps: upgrade openssl sources to 1.1.1c

This updates all sources in deps/openssl/openssl by:
    $ cd deps/openssl/
    $ rm -rf openssl
    $ tar zxf ~/tmp/openssl-1.1.1c.tar.gz
    $ mv openssl-1.1.1c openssl
    $ git add --all openssl
    $ git commit openssl

PR-URL: #28212
Reviewed-By: Beth Griggs <Bethany.Griggs@uk.ibm.com>
  • Loading branch information...
sam-github authored and BethGriggs committed Jun 12, 2019
1 parent c59e0c2 commit 9e62852724bb94ede4f7e3c6e1fd57e4f5f72a5d
Showing with 38,803 additions and 2,656 deletions.
  1. +71 −0 deps/openssl/openssl/CHANGES
  2. +6 −2 deps/openssl/openssl/Configurations/unix-Makefile.tmpl
  3. +2 −1 deps/openssl/openssl/Configurations/windows-makefile.tmpl
  4. +725 −722 deps/openssl/openssl/Configure
  5. +18 −3 deps/openssl/openssl/INSTALL
  6. +4 −0 deps/openssl/openssl/NEWS
  7. +1 −1 deps/openssl/openssl/NOTES.PERL
  8. +2 −2 deps/openssl/openssl/README
  9. +6 −8 deps/openssl/openssl/apps/asn1pars.c
  10. +2 −1 deps/openssl/openssl/apps/cms.c
  11. +2 −2 deps/openssl/openssl/apps/enc.c
  12. +8 −3 deps/openssl/openssl/apps/ocsp.c
  13. +81 −25 deps/openssl/openssl/apps/s_cb.c
  14. +1 −1 deps/openssl/openssl/apps/s_client.c
  15. +55 −28 deps/openssl/openssl/apps/speed.c
  16. +3 −3 deps/openssl/openssl/crypto/aes/asm/aesp8-ppc.pl
  17. +6 −0 deps/openssl/openssl/crypto/bio/b_addr.c
  18. +29 −12 deps/openssl/openssl/crypto/bio/bss_mem.c
  19. +5 −5 deps/openssl/openssl/crypto/blake2/blake2b.c
  20. +2 −2 deps/openssl/openssl/crypto/bn/asm/mips.pl
  21. +2 −1 deps/openssl/openssl/crypto/bn/asm/ppc.pl
  22. +2 −0 deps/openssl/openssl/crypto/bn/bn_ctx.c
  23. +2 −0 deps/openssl/openssl/crypto/bn/bn_lib.c
  24. +2 −3 deps/openssl/openssl/crypto/bn/bn_prime.c
  25. +1 −0 deps/openssl/openssl/crypto/conf/conf_sap.c
  26. +12 −16 deps/openssl/openssl/crypto/dh/dh_check.c
  27. +3 −5 deps/openssl/openssl/crypto/dh/dh_gen.c
  28. +3 −5 deps/openssl/openssl/crypto/dh/dh_key.c
  29. +2 −2 deps/openssl/openssl/crypto/dh/dh_pmeth.c
  30. +3 −5 deps/openssl/openssl/crypto/dsa/dsa_gen.c
  31. +7 −1 deps/openssl/openssl/crypto/dsa/dsa_ossl.c
  32. +10 −6 deps/openssl/openssl/crypto/dsa/dsa_pmeth.c
  33. +2 −2 deps/openssl/openssl/crypto/dso/dso_openssl.c
  34. +108 −2 deps/openssl/openssl/crypto/dso/dso_win32.c
  35. +2 −1 deps/openssl/openssl/crypto/ec/curve25519.c
  36. +3 −3 deps/openssl/openssl/crypto/ec/curve448/curve448.c
  37. +1,424 −416 deps/openssl/openssl/crypto/ec/curve448/curve448_tables.c
  38. +4 −2 deps/openssl/openssl/crypto/ec/curve448/curve448utils.h
  39. +4 −4 deps/openssl/openssl/crypto/ec/curve448/f_generic.c
  40. +10 −10 deps/openssl/openssl/crypto/ec/curve448/scalar.c
  41. +6 −5 deps/openssl/openssl/crypto/ec/ec2_oct.c
  42. +1 −2 deps/openssl/openssl/crypto/ec/ec2_smpl.c
  43. +7 −2 deps/openssl/openssl/crypto/ec/ec_ameth.c
  44. +2 −3 deps/openssl/openssl/crypto/ec/ec_lib.c
  45. +5 −6 deps/openssl/openssl/crypto/ec/ec_mult.c
  46. +6 −2 deps/openssl/openssl/crypto/ec/ec_pmeth.c
  47. +3 −4 deps/openssl/openssl/crypto/ec/ecdh_ossl.c
  48. +8 −3 deps/openssl/openssl/crypto/ec/ecp_nistp521.c
  49. +1 −2 deps/openssl/openssl/crypto/ec/ecp_nistz256.c
  50. +2 −4 deps/openssl/openssl/crypto/ec/ecp_smpl.c
  51. +23 −26 deps/openssl/openssl/crypto/err/err.c
  52. +4 −1 deps/openssl/openssl/crypto/evp/digest.c
  53. +10 −6 deps/openssl/openssl/crypto/evp/e_aes.c
  54. +14 −2 deps/openssl/openssl/crypto/evp/e_aria.c
  55. +4 −2 deps/openssl/openssl/crypto/evp/e_chacha20_poly1305.c
  56. +6 −1 deps/openssl/openssl/crypto/evp/p_lib.c
  57. +2 −2 deps/openssl/openssl/crypto/evp/p_open.c
  58. +8 −1 deps/openssl/openssl/crypto/hmac/hmac.c
  59. +0 −1 deps/openssl/openssl/crypto/include/internal/bn_conf.h
  60. +0 −1 deps/openssl/openssl/crypto/include/internal/dso_conf.h
  61. +4 −3 deps/openssl/openssl/crypto/include/internal/dso_conf.h.in
  62. +7 −9 deps/openssl/openssl/crypto/init.c
  63. +2 −2 deps/openssl/openssl/crypto/mips_arch.h
  64. +2 −0 deps/openssl/openssl/crypto/modes/asm/ghash-x86_64.pl
  65. +2 −2 deps/openssl/openssl/crypto/modes/ccm128.c
  66. +23 −4 deps/openssl/openssl/crypto/o_str.c
  67. +2 −2 deps/openssl/openssl/crypto/objects/obj_dat.h
  68. +1 −1 deps/openssl/openssl/crypto/objects/objects.txt
  69. +3 −3 deps/openssl/openssl/crypto/ocsp/ocsp_ext.c
  70. +3 −3 deps/openssl/openssl/crypto/ocsp/ocsp_lib.c
  71. +2 −2 deps/openssl/openssl/crypto/pem/pem_sign.c
  72. +0 −1 deps/openssl/openssl/crypto/poly1305/build.info
  73. +3 −2 deps/openssl/openssl/crypto/ppccap.c
  74. +3 −3 deps/openssl/openssl/crypto/rand/drbg_lib.c
  75. +6 −6 deps/openssl/openssl/crypto/rand/rand_lib.c
  76. +26 −3 deps/openssl/openssl/crypto/rand/rand_unix.c
  77. +5 −1 deps/openssl/openssl/crypto/rand/rand_vms.c
  78. +3 −3 deps/openssl/openssl/crypto/rand/rand_win.c
  79. +2 −2 deps/openssl/openssl/crypto/rand/randfile.c
  80. +4 −2 deps/openssl/openssl/crypto/rsa/rsa_ameth.c
  81. +2 −3 deps/openssl/openssl/crypto/rsa/rsa_gen.c
  82. +24 −24 deps/openssl/openssl/crypto/rsa/rsa_oaep.c
  83. +6 −10 deps/openssl/openssl/crypto/rsa/rsa_ossl.c
  84. +23 −23 deps/openssl/openssl/crypto/rsa/rsa_pk1.c
  85. +7 −6 deps/openssl/openssl/crypto/rsa/rsa_pmeth.c
  86. +30 −27 deps/openssl/openssl/crypto/rsa/rsa_ssl.c
  87. +3 −5 deps/openssl/openssl/crypto/rsa/rsa_x931g.c
  88. +25 −25 deps/openssl/openssl/crypto/sha/keccak1600.c
  89. +5 −1 deps/openssl/openssl/crypto/threads_win.c
  90. +4 −1 deps/openssl/openssl/crypto/x509/x509_lu.c
  91. +3 −3 deps/openssl/openssl/crypto/x509v3/v3_genn.c
  92. +28 −20 deps/openssl/openssl/demos/pkcs12/pkread.c
  93. +5 −5 deps/openssl/openssl/doc/man1/genpkey.pod
  94. +6 −7 deps/openssl/openssl/doc/man1/pkeyutl.pod
  95. +2 −2 deps/openssl/openssl/doc/man1/s_client.pod
  96. +1 −1 deps/openssl/openssl/doc/man1/s_server.pod
  97. +2 −2 deps/openssl/openssl/doc/man1/s_time.pod
  98. +4 −3 deps/openssl/openssl/doc/man1/ts.pod
  99. +33 −33 deps/openssl/openssl/doc/man3/ASN1_TIME_set.pod
  100. +8 −8 deps/openssl/openssl/doc/man3/ASN1_generate_nconf.pod
  101. +7 −7 deps/openssl/openssl/doc/man3/BIO_connect.pod
  102. +8 −8 deps/openssl/openssl/doc/man3/BIO_push.pod
  103. +19 −19 deps/openssl/openssl/doc/man3/BIO_s_file.pod
  104. +17 −1 deps/openssl/openssl/doc/man3/BIO_s_mem.pod
  105. +2 −1 deps/openssl/openssl/doc/man3/BN_CTX_start.pod
  106. +2 −1 deps/openssl/openssl/doc/man3/BN_new.pod
  107. +10 −10 deps/openssl/openssl/doc/man3/BN_rand.pod
  108. +5 −5 deps/openssl/openssl/doc/man3/BN_security_bits.pod
  109. +2 −2 deps/openssl/openssl/doc/man3/CMS_verify.pod
  110. +6 −6 deps/openssl/openssl/doc/man3/CONF_modules_load_file.pod
  111. +6 −6 deps/openssl/openssl/doc/man3/DES_random_key.pod
  112. +2 −2 deps/openssl/openssl/doc/man3/ECDSA_SIG_new.pod
  113. +3 −3 deps/openssl/openssl/doc/man3/EVP_DigestVerifyInit.pod
  114. +7 −3 deps/openssl/openssl/doc/man3/EVP_EncryptInit.pod
  115. +5 −5 deps/openssl/openssl/doc/man3/EVP_PKEY_meth_new.pod
  116. +12 −9 deps/openssl/openssl/doc/man3/EVP_PKEY_set1_RSA.pod
  117. +10 −2 deps/openssl/openssl/doc/man3/EVP_chacha20.pod
  118. +3 −1 deps/openssl/openssl/doc/man3/HMAC.pod
  119. +12 −12 deps/openssl/openssl/doc/man3/OBJ_nid2obj.pod
  120. +3 −3 deps/openssl/openssl/doc/man3/OCSP_cert_to_id.pod
  121. +70 −70 deps/openssl/openssl/doc/man3/PEM_read_bio_PrivateKey.pod
  122. +5 −5 deps/openssl/openssl/doc/man3/RAND_DRBG_generate.pod
  123. +5 −6 deps/openssl/openssl/doc/man3/RAND_DRBG_get0_master.pod
  124. +5 −5 deps/openssl/openssl/doc/man3/RAND_DRBG_new.pod
  125. +11 −6 deps/openssl/openssl/doc/man3/RAND_DRBG_reseed.pod
  126. +5 −6 deps/openssl/openssl/doc/man3/RAND_DRBG_set_callbacks.pod
  127. +6 −6 deps/openssl/openssl/doc/man3/RAND_add.pod
  128. +10 −10 deps/openssl/openssl/doc/man3/RAND_bytes.pod
  129. +5 −5 deps/openssl/openssl/doc/man3/RAND_cleanup.pod
  130. +41 −19 deps/openssl/openssl/doc/man3/RSA_padding_add_PKCS1_type_1.pod
  131. +26 −12 deps/openssl/openssl/doc/man3/RSA_public_encrypt.pod
  132. +10 −7 deps/openssl/openssl/doc/man3/SSL_CIPHER_get_name.pod
  133. +17 −17 deps/openssl/openssl/doc/man3/SSL_CONF_cmd.pod
  134. +18 −18 deps/openssl/openssl/doc/man3/SSL_CTX_load_verify_locations.pod
  135. +7 −7 deps/openssl/openssl/doc/man3/SSL_CTX_new.pod
  136. +5 −5 deps/openssl/openssl/doc/man3/SSL_CTX_set1_sigalgs.pod
  137. +3 −1 deps/openssl/openssl/doc/man3/SSL_CTX_set_client_hello_cb.pod
  138. +6 −6 deps/openssl/openssl/doc/man3/SSL_CTX_set_default_passwd_cb.pod
  139. +9 −9 deps/openssl/openssl/doc/man3/SSL_CTX_set_generate_session_id.pod
  140. +5 −5 deps/openssl/openssl/doc/man3/SSL_CTX_set_min_proto_version.pod
  141. +2 −2 deps/openssl/openssl/doc/man3/SSL_CTX_set_read_ahead.pod
  142. +5 −5 deps/openssl/openssl/doc/man3/SSL_CTX_set_split_send_fragment.pod
  143. +5 −5 deps/openssl/openssl/doc/man3/SSL_CTX_set_tlsext_ticket_key_cb.pod
  144. +9 −9 deps/openssl/openssl/doc/man3/SSL_CTX_set_tmp_dh_callback.pod
  145. +1 −1 deps/openssl/openssl/doc/man3/SSL_get_error.pod
  146. +16 −16 deps/openssl/openssl/doc/man3/SSL_load_client_CA_file.pod
  147. +5 −5 deps/openssl/openssl/doc/man3/SSL_read.pod
  148. +2 −2 deps/openssl/openssl/doc/man3/SSL_session_reused.pod
  149. +1 −1 deps/openssl/openssl/doc/man3/SSL_shutdown.pod
  150. +5 −5 deps/openssl/openssl/doc/man3/SSL_write.pod
  151. +15 −5 deps/openssl/openssl/doc/man3/X509_LOOKUP_meth_new.pod
  152. +10 −10 deps/openssl/openssl/doc/man3/X509_NAME_add_entry_by_txt.pod
  153. +13 −13 deps/openssl/openssl/doc/man3/X509_NAME_get_index_by_NID.pod
  154. +9 −9 deps/openssl/openssl/doc/man3/X509_get_subject_name.pod
  155. +14 −14 deps/openssl/openssl/doc/man3/d2i_X509.pod
  156. +5 −6 deps/openssl/openssl/e_os.h
  157. +4 −4 deps/openssl/openssl/engines/e_padlock.c
  158. +1 −1 deps/openssl/openssl/fuzz/oids.txt
  159. +3 −6 deps/openssl/openssl/include/internal/dsoerr.h
  160. +13 −3 deps/openssl/openssl/include/internal/refcount.h
  161. +1 −1 deps/openssl/openssl/include/internal/tsan_assist.h
  162. +2 −1 deps/openssl/openssl/include/openssl/err.h
  163. +1 −0 deps/openssl/openssl/include/openssl/evp.h
  164. +1 −1 deps/openssl/openssl/include/openssl/obj_mac.h
  165. +3 −3 deps/openssl/openssl/include/openssl/ocsp.h
  166. +0 −1 deps/openssl/openssl/include/openssl/opensslconf.h
  167. +3 −3 deps/openssl/openssl/include/openssl/opensslv.h
  168. +1 −1 deps/openssl/openssl/include/openssl/ssl.h
  169. +3 −3 deps/openssl/openssl/include/openssl/x509v3.h
  170. +6 −1 deps/openssl/openssl/ssl/ssl_lib.c
  171. +8 −5 deps/openssl/openssl/ssl/ssl_locl.h
  172. +0 −2 deps/openssl/openssl/ssl/statem/extensions.c
  173. +24 −14 deps/openssl/openssl/ssl/statem/extensions_clnt.c
  174. +3 −3 deps/openssl/openssl/ssl/statem/extensions_srvr.c
  175. +1 −4 deps/openssl/openssl/ssl/statem/statem_clnt.c
  176. +4 −0 deps/openssl/openssl/ssl/statem/statem_srvr.c
  177. +5 −5 deps/openssl/openssl/test/bioprinttest.c
  178. +212 −174 deps/openssl/openssl/test/bntest.c
  179. +12 −4 deps/openssl/openssl/test/build.info
  180. +3 −3 deps/openssl/openssl/test/ct_test.c
  181. +234 −304 deps/openssl/openssl/test/ecdsatest.c
  182. +10,214 −0 deps/openssl/openssl/test/ecdsatest.h
  183. +71 −1 deps/openssl/openssl/test/ectest.c
  184. +62 −0 deps/openssl/openssl/test/evp_extra_test.c
  185. +20 −9 deps/openssl/openssl/test/evp_test.c
  186. +82 −2 deps/openssl/openssl/test/ocspapitest.c
  187. +5 −5 deps/openssl/openssl/test/recipes/15-test_rsapss.t
  188. +2 −2 deps/openssl/openssl/test/recipes/30-test_evp.t
  189. +23,927 −0 deps/openssl/openssl/test/recipes/30-test_evp_data/evpccmcavs.txt
  190. +80 −3 deps/openssl/openssl/test/recipes/30-test_evp_data/evpciph.txt
  191. +9 −1 deps/openssl/openssl/test/recipes/30-test_evp_data/evpmac.txt
  192. +9 −1 deps/openssl/openssl/test/recipes/80-test_cms.t
  193. +32 −1 deps/openssl/openssl/test/rsa_test.c
  194. +121 −0 deps/openssl/openssl/util/cavs-to-evptest.pl
  195. +22 −1 deps/openssl/openssl/util/find-doc-nits
  196. +1 −0 deps/openssl/openssl/util/libcrypto.num
@@ -7,6 +7,77 @@
https://github.com/openssl/openssl/commits/ and pick the appropriate
release branch.

Changes between 1.1.1b and 1.1.1c [28 May 2019]

*) Add build tests for C++. These are generated files that only do one
thing, to include one public OpenSSL head file each. This tests that
the public header files can be usefully included in a C++ application.

This test isn't enabled by default. It can be enabled with the option
'enable-buildtest-c++'.
[Richard Levitte]

*) Enable SHA3 pre-hashing for ECDSA and DSA.
[Patrick Steuer]

*) Change the default RSA, DSA and DH size to 2048 bit instead of 1024.
This changes the size when using the genpkey app when no size is given. It
fixes an omission in earlier changes that changed all RSA, DSA and DH
generation apps to use 2048 bits by default.
[Kurt Roeckx]

*) Reorganize the manual pages to consistently have RETURN VALUES,
EXAMPLES, SEE ALSO and HISTORY come in that order, and adjust
util/fix-doc-nits accordingly.
[Paul Yang, Joshua Lock]

*) Add the missing accessor EVP_PKEY_get0_engine()
[Matt Caswell]

*) Have apps like 's_client' and 's_server' output the signature scheme
along with other cipher suite parameters when debugging.
[Lorinczy Zsigmond]

*) Make OPENSSL_config() error agnostic again.
[Richard Levitte]

*) Do the error handling in RSA decryption constant time.
[Bernd Edlinger]

*) Prevent over long nonces in ChaCha20-Poly1305.

ChaCha20-Poly1305 is an AEAD cipher, and requires a unique nonce input
for every encryption operation. RFC 7539 specifies that the nonce value
(IV) should be 96 bits (12 bytes). OpenSSL allows a variable nonce length
and front pads the nonce with 0 bytes if it is less than 12
bytes. However it also incorrectly allows a nonce to be set of up to 16
bytes. In this case only the last 12 bytes are significant and any
additional leading bytes are ignored.

It is a requirement of using this cipher that nonce values are
unique. Messages encrypted using a reused nonce value are susceptible to
serious confidentiality and integrity attacks. If an application changes
the default nonce length to be longer than 12 bytes and then makes a
change to the leading bytes of the nonce expecting the new value to be a
new unique nonce then such an application could inadvertently encrypt
messages with a reused nonce.

Additionally the ignored bytes in a long nonce are not covered by the
integrity guarantee of this cipher. Any application that relies on the
integrity of these ignored leading bytes of a long nonce may be further
affected. Any OpenSSL internal use of this cipher, including in SSL/TLS,
is safe because no such use sets such a long nonce value. However user
applications that use this cipher directly and set a non-default nonce
length to be longer than 12 bytes may be vulnerable.

This issue was reported to OpenSSL on 16th of March 2019 by Joran Dirk
Greef of Ronomon.
(CVE-2019-1543)
[Matt Caswell]

*) Ensure that SM2 only uses SM3 as digest algorithm
[Paul Yang]

Changes between 1.1.1a and 1.1.1b [26 Feb 2019]

*) Added SCA hardening for modular field inversion in EC_GROUP through
@@ -260,8 +260,8 @@ LIB_CPPFLAGS={- our $lib_cppflags =
join(' ', $target{lib_cppflags} || (),
$target{shared_cppflag} || (),
(map { '-D'.$_ }
@{$config{lib_defines}},
@{$config{shared_defines}}),
@{$config{lib_defines} || ()},
@{$config{shared_defines} || ()}),
@{$config{lib_cppflags}},
@{$config{shared_cppflag}});
join(' ', $lib_cppflags,
@@ -285,6 +285,9 @@ LIB_LDFLAGS={- join(' ', $target{shared_ldflag} || (),
LIB_EX_LIBS=$(CNF_EX_LIBS) $(EX_LIBS)
DSO_CPPFLAGS={- join(' ', $target{dso_cppflags} || (),
$target{module_cppflags} || (),
(map { '-D'.$_ }
@{$config{dso_defines} || ()},
@{$config{module_defines} || ()}),
@{$config{dso_cppflags}},
@{$config{module_cppflags}},
'$(CNF_CPPFLAGS)', '$(CPPFLAGS)') -}
@@ -305,6 +308,7 @@ DSO_LDFLAGS={- join(' ', $target{dso_ldflags} || (),
'$(CNF_LDFLAGS)', '$(LDFLAGS)') -}
DSO_EX_LIBS=$(CNF_EX_LIBS) $(EX_LIBS)
BIN_CPPFLAGS={- join(' ', $target{bin_cppflags} || (),
(map { '-D'.$_ } @{$config{bin_defines} || ()}),
@{$config{bin_cppflags}},
'$(CNF_CPPFLAGS)', '$(CPPFLAGS)') -}
BIN_CFLAGS={- join(' ', $target{bin_cflags} || (),
@@ -187,6 +187,7 @@ AS={- $config{AS} -}
ASFLAGS={- join(' ', @{$config{ASFLAGS}}) -}

RC={- $config{RC} -}
RCFLAGS={- join(' ', @{$config{RCFLAGS}}) -}

ECHO="$(PERL)" "$(SRCDIR)\util\echo.pl"

@@ -586,7 +587,7 @@ EOF
if ($srcs[0] =~ /\.rc$/) {
return <<"EOF";
$args{obj}: $deps
\$(RC) \$(RCOUTFLAG)\$\@ $srcs
\$(RC) \$(RCFLAGS) \$(RCOUTFLAG)\$\@ $srcs
EOF
}
(my $obj = $args{obj}) =~ s|\.o$||;

0 comments on commit 9e62852

Please sign in to comment.
You can’t perform that action at this time.