Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/crypto/external/bsd/openssl/dist Import OpenSSL 1.0.1 stable...



details:   https://anonhg.NetBSD.org/src/rev/c2517b2c7336
branches:  trunk
changeset: 765766:c2517b2c7336
user:      spz <spz%NetBSD.org@localhost>
date:      Sun Jun 05 14:55:58 2011 +0000

description:
Import OpenSSL 1.0.1 stable of 20110605:

this is sort of a sidegrade onto the release branch. Changes against the
last version imported:

*) Backport libcrypto audit of return value checking from HEAD, not
   all cases can be covered as some introduce binary incompatibilities.
   [Steve Henson]

*) Redirect RSA operations to FIPS module including keygen,
   encrypt, decrypt, sign and verify. Block use of non FIPS RSA methods.
   [Steve Henson]

*) Add similar low level API blocking to ciphers.
   [Steve Henson]

*) Low level digest APIs are not approved in FIPS mode: any attempt
   to use these will cause a fatal error. Applications that *really* want
   to use them can use the private_* version instead.
   [Steve Henson]

*) Redirect cipher operations to FIPS module for FIPS builds.
   [Steve Henson]

*) Redirect digest operations to FIPS module for FIPS builds.
   [Steve Henson]

*) Update build system to add "fips" flag which will link in fipscanister.o
   for static and shared library builds embedding a signature if needed.
   [Steve Henson]

*) Output TLS supported curves in preference order instead of numerical
   order. This is currently hardcoded for the highest order curves first.
   This should be configurable so applications can judge speed vs strength.
   [Steve Henson]

*) Add protection against ECDSA timing attacks as mentioned in the paper
   by Billy Bob Brumley and Nicola Tuveri, see:

      http://eprint.iacr.org/2011/232.pdf

   [Billy Bob Brumley and Nicola Tuveri]

*) Add TLS v1.2 server support for client authentication.
   [Steve Henson]

*) Add support for FIPS mode in ssl library: disable SSLv3, non-FIPS ciphers
   and enable MD5.
   [Steve Henson]

*) Functions FIPS_mode_set() and FIPS_mode() which call the underlying
   FIPS modules versions.
   [Steve Henson]

*) Add TLS v1.2 client side support for client authentication. Keep cache
   of handshake records longer as we don't know the hash algorithm to use
   until after the certificate request message is received.
   [Steve Henson]

*) Initial TLS v1.2 client support. Add a default signature algorithms
   extension including all the algorithms we support. Parse new signature
   format in client key exchange. Relax some ECC signing restrictions for
   TLS v1.2 as indicated in RFC5246.
   [Steve Henson]

*) Add server support for TLS v1.2 signature algorithms extension. Switch
   to new signature format when needed using client digest preference.
   All server ciphersuites should now work correctly in TLS v1.2. No client
   support yet and no support for client certificates.
   [Steve Henson]

*) Initial TLS v1.2 support. Add new SHA256 digest to ssl code, switch
   to SHA256 for PRF when using TLS v1.2 and later. Add new SHA256 based
   ciphersuites. At present only RSA key exchange ciphersuites work with
   TLS v1.2. Add new option for TLS v1.2 replacing the old and obsolete
   SSL_OP_PKCS1_CHECK flags with SSL_OP_NO_TLSv1_2. New TLSv1.2 methods
   and version checking.
   [Steve Henson]

*) New option OPENSSL_NO_SSL_INTERN. If an application can be compiled
   with this defined it will not be affected by any changes to ssl internal
   structures. Add several utility functions to allow openssl application
   to work with OPENSSL_NO_SSL_INTERN defined.
   [Steve Henson]

*) Add SRP support.
   [Tom Wu <tjw%cs.stanford.edu@localhost> and Ben Laurie]

*) Add functions to copy EVP_PKEY_METHOD and retrieve flags and id.
   [Steve Henson]

*) Add EC_GFp_nistp224_method(), a 64-bit optimized implementation for
   elliptic curve NIST-P224 with constant-time single point multiplication on
   typical inputs.  EC_GROUP_new_by_curve_name() will automatically use this
   (while EC_GROUP_new_curve_GFp() currently won't and prefers the more
   flexible implementations).

   The implementation requires support for the nonstandard type __uint128_t,
   and so is disabled by default.  To include this in your build of OpenSSL,
   use -DEC_NISTP224_64_GCC_128 on the Configure (or config) command line,
   and run "make depend" (or "make update").
   [Emilia K<E4>sper <emilia.kasper%esat.kuleuven.be@localhost> (Google)]

*) Permit abbreviated handshakes when renegotiating using the function
   SSL_renegotiate_abbreviated().
   [Robin Seggelmann <seggelmann%fh-muenster.de@localhost>]

*) Add call to ENGINE_register_all_complete() to
   ENGINE_load_builtin_engines(), so some implementations get used
   automatically instead of needing explicit application support.
   [Steve Henson]

*) Add support for TLS key exporter as described in RFC5705.
   [Robin Seggelmann <seggelmann%fh-muenster.de@localhost>, Steve Henson]

diffstat:

 crypto/external/bsd/openssl/dist/ACKNOWLEDGMENTS                              |    25 +
 crypto/external/bsd/openssl/dist/CHANGES                                      |   346 ++-
 crypto/external/bsd/openssl/dist/Configure                                    |    95 +-
 crypto/external/bsd/openssl/dist/FAQ                                          |    55 +-
 crypto/external/bsd/openssl/dist/INSTALL                                      |     6 +
 crypto/external/bsd/openssl/dist/INSTALL.VMS                                  |    52 +-
 crypto/external/bsd/openssl/dist/INSTALL.W32                                  |    22 +-
 crypto/external/bsd/openssl/dist/LICENSE                                      |     2 +-
 crypto/external/bsd/openssl/dist/Makefile.org                                 |    50 +-
 crypto/external/bsd/openssl/dist/Makefile.shared                              |    26 +-
 crypto/external/bsd/openssl/dist/NEWS                                         |    66 +-
 crypto/external/bsd/openssl/dist/PROBLEMS                                     |     4 +-
 crypto/external/bsd/openssl/dist/README                                       |     4 +-
 crypto/external/bsd/openssl/dist/STATUS                                       |    20 +-
 crypto/external/bsd/openssl/dist/TABLE                                        |   170 +-
 crypto/external/bsd/openssl/dist/VMS/install-vms.com                          |    67 +
 crypto/external/bsd/openssl/dist/VMS/mkshared.com                             |   235 +-
 crypto/external/bsd/openssl/dist/VMS/openssl_startup.com                      |   108 +
 crypto/external/bsd/openssl/dist/VMS/openssl_undo.com                         |    20 +
 crypto/external/bsd/openssl/dist/apps/CA.com                                  |   100 +-
 crypto/external/bsd/openssl/dist/apps/Makefile                                |    92 +-
 crypto/external/bsd/openssl/dist/apps/apps.c                                  |    27 +-
 crypto/external/bsd/openssl/dist/apps/apps.h                                  |     3 +
 crypto/external/bsd/openssl/dist/apps/asn1pars.c                              |     1 +
 crypto/external/bsd/openssl/dist/apps/ciphers.c                               |     2 +-
 crypto/external/bsd/openssl/dist/apps/cms.c                                   |    35 +-
 crypto/external/bsd/openssl/dist/apps/demoSRP/srp_verifier.txt                |     6 +
 crypto/external/bsd/openssl/dist/apps/demoSRP/srp_verifier.txt.attr           |     1 +
 crypto/external/bsd/openssl/dist/apps/dgst.c                                  |     2 +-
 crypto/external/bsd/openssl/dist/apps/dh.c                                    |     5 +-
 crypto/external/bsd/openssl/dist/apps/dhparam.c                               |     5 +-
 crypto/external/bsd/openssl/dist/apps/dsa.c                                   |     2 +-
 crypto/external/bsd/openssl/dist/apps/dsaparam.c                              |     9 +-
 crypto/external/bsd/openssl/dist/apps/ec.c                                    |     5 +-
 crypto/external/bsd/openssl/dist/apps/ecparam.c                               |     5 +-
 crypto/external/bsd/openssl/dist/apps/enc.c                                   |     9 +-
 crypto/external/bsd/openssl/dist/apps/gendh.c                                 |     5 +-
 crypto/external/bsd/openssl/dist/apps/gendsa.c                                |     5 +-
 crypto/external/bsd/openssl/dist/apps/genrsa.c                                |     5 +-
 crypto/external/bsd/openssl/dist/apps/install-apps.com                        |   107 +
 crypto/external/bsd/openssl/dist/apps/makeapps.com                            |   341 +-
 crypto/external/bsd/openssl/dist/apps/openssl.c                               |    80 +-
 crypto/external/bsd/openssl/dist/apps/pkcs12.c                                |     2 +-
 crypto/external/bsd/openssl/dist/apps/pkcs7.c                                 |     5 +-
 crypto/external/bsd/openssl/dist/apps/pkcs8.c                                 |     4 +
 crypto/external/bsd/openssl/dist/apps/pkeyparam.c                             |     3 +-
 crypto/external/bsd/openssl/dist/apps/pkeyutl.c                               |    12 +-
 crypto/external/bsd/openssl/dist/apps/privkey.pem                             |    34 +-
 crypto/external/bsd/openssl/dist/apps/progs.h                                 |     4 +
 crypto/external/bsd/openssl/dist/apps/rand.c                                  |     5 +-
 crypto/external/bsd/openssl/dist/apps/req.c                                   |     6 +
 crypto/external/bsd/openssl/dist/apps/rsa.c                                   |     2 +-
 crypto/external/bsd/openssl/dist/apps/s_cb.c                                  |    60 +-
 crypto/external/bsd/openssl/dist/apps/s_client.c                              |   217 +-
 crypto/external/bsd/openssl/dist/apps/s_server.c                              |   145 +-
 crypto/external/bsd/openssl/dist/apps/s_socket.c                              |    13 +-
 crypto/external/bsd/openssl/dist/apps/sess_id.c                               |    18 +-
 crypto/external/bsd/openssl/dist/apps/srp.c                                   |   759 +++++
 crypto/external/bsd/openssl/dist/apps/tsget                                   |     2 +-
 crypto/external/bsd/openssl/dist/apps/vms_decc_init.c                         |   188 +
 crypto/external/bsd/openssl/dist/apps/x509.c                                  |    31 +-
 crypto/external/bsd/openssl/dist/config                                       |     4 +
 crypto/external/bsd/openssl/dist/crypto/LPdir_vms.c                           |    49 +-
 crypto/external/bsd/openssl/dist/crypto/Makefile                              |     9 +-
 crypto/external/bsd/openssl/dist/crypto/aes/Makefile                          |     4 -
 crypto/external/bsd/openssl/dist/crypto/aes/aes_wrap.c                        |    12 +-
 crypto/external/bsd/openssl/dist/crypto/aes/asm/aes-armv4.pl                  |   402 +-
 crypto/external/bsd/openssl/dist/crypto/aes/asm/aes-ppc.pl                    |   293 +-
 crypto/external/bsd/openssl/dist/crypto/aes/asm/aes-s390x.pl                  |     6 +
 crypto/external/bsd/openssl/dist/crypto/alphacpuid.pl                         |   128 +
 crypto/external/bsd/openssl/dist/crypto/asn1/a_int.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/a_object.c                       |     6 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/a_strex.c                        |    17 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/a_strnid.c                       |     2 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/ameth_lib.c                      |     6 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/asn1.h                           |     3 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/asn1_err.c                       |     1 -
 crypto/external/bsd/openssl/dist/crypto/asn1/bio_ndef.c                       |     3 -
 crypto/external/bsd/openssl/dist/crypto/asn1/n_pkey.c                         |     3 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/p5_pbev2.c                       |   140 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/t_crl.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/tasn_dec.c                       |     3 +-
 crypto/external/bsd/openssl/dist/crypto/asn1/x_algor.c                        |    14 +
 crypto/external/bsd/openssl/dist/crypto/asn1/x_x509.c                         |     4 +-
 crypto/external/bsd/openssl/dist/crypto/bf/bf_skey.c                          |     8 +
 crypto/external/bsd/openssl/dist/crypto/bf/blowfish.h                         |     4 +-
 crypto/external/bsd/openssl/dist/crypto/bio/bf_nbio.c                         |     2 -
 crypto/external/bsd/openssl/dist/crypto/bio/bio_lib.c                         |     4 +-
 crypto/external/bsd/openssl/dist/crypto/bio/bss_acpt.c                        |     5 +-
 crypto/external/bsd/openssl/dist/crypto/bio/bss_dgram.c                       |    42 +-
 crypto/external/bsd/openssl/dist/crypto/bio/bss_sock.c                        |    13 -
 crypto/external/bsd/openssl/dist/crypto/bn/Makefile                           |     9 +-
 crypto/external/bsd/openssl/dist/crypto/bn/asm/alpha-mont.pl                  |    44 +-
 crypto/external/bsd/openssl/dist/crypto/bn/asm/armv4-mont.pl                  |     1 +
 crypto/external/bsd/openssl/dist/crypto/bn/asm/s390x-mont.pl                  |     4 +-
 crypto/external/bsd/openssl/dist/crypto/bn/asm/s390x.S                        |    86 +-
 crypto/external/bsd/openssl/dist/crypto/bn/asm/x86_64-gcc.c                   |     1 +
 crypto/external/bsd/openssl/dist/crypto/bn/bn.h                               |    29 +
 crypto/external/bsd/openssl/dist/crypto/bn/bn_div.c                           |     2 +-
 crypto/external/bsd/openssl/dist/crypto/bn/bn_exp2.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/bn/bn_gf2m.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/bn/bn_lib.c                           |    19 -
 crypto/external/bsd/openssl/dist/crypto/bn/bn_mul.c                           |     9 +-
 crypto/external/bsd/openssl/dist/crypto/bn/bn_nist.c                          |    64 +-
 crypto/external/bsd/openssl/dist/crypto/bn/bn_print.c                         |    19 +
 crypto/external/bsd/openssl/dist/crypto/bn/bn_x931p.c                         |   272 +
 crypto/external/bsd/openssl/dist/crypto/buffer/Makefile                       |    11 +-
 crypto/external/bsd/openssl/dist/crypto/buffer/buf_str.c                      |   119 +
 crypto/external/bsd/openssl/dist/crypto/buffer/buffer.c                       |    58 -
 crypto/external/bsd/openssl/dist/crypto/cast/c_skey.c                         |     9 +-
 crypto/external/bsd/openssl/dist/crypto/cmac/Makefile                         |    76 +
 crypto/external/bsd/openssl/dist/crypto/cmac/cm_ameth.c                       |    97 +
 crypto/external/bsd/openssl/dist/crypto/cmac/cm_pmeth.c                       |   224 +
 crypto/external/bsd/openssl/dist/crypto/cmac/cmac.c                           |   271 +
 crypto/external/bsd/openssl/dist/crypto/cmac/cmac.h                           |    82 +
 crypto/external/bsd/openssl/dist/crypto/cms/Makefile                          |     6 +-
 crypto/external/bsd/openssl/dist/crypto/cms/cms.h                             |    19 -
 crypto/external/bsd/openssl/dist/crypto/cms/cms_asn1.c                        |    13 +-
 crypto/external/bsd/openssl/dist/crypto/cms/cms_env.c                         |    10 +-
 crypto/external/bsd/openssl/dist/crypto/cms/cms_err.c                         |    13 +-
 crypto/external/bsd/openssl/dist/crypto/cms/cms_lcl.h                         |    10 -
 crypto/external/bsd/openssl/dist/crypto/cms/cms_lib.c                         |     8 +-
 crypto/external/bsd/openssl/dist/crypto/cms/cms_smime.c                       |    24 -
 crypto/external/bsd/openssl/dist/crypto/comp/c_rle.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/conf/conf_api.c                       |     2 +-
 crypto/external/bsd/openssl/dist/crypto/cpt_err.c                             |     4 +-
 crypto/external/bsd/openssl/dist/crypto/cryptlib.c                            |    61 +-
 crypto/external/bsd/openssl/dist/crypto/cryptlib.h                            |     3 +-
 crypto/external/bsd/openssl/dist/crypto/crypto-lib.com                        |   381 +-
 crypto/external/bsd/openssl/dist/crypto/des/des-lib.com                       |    12 +-
 crypto/external/bsd/openssl/dist/crypto/des/rpc_des.h                         |     4 +-
 crypto/external/bsd/openssl/dist/crypto/des/set_key.c                         |     9 +
 crypto/external/bsd/openssl/dist/crypto/dsa/Makefile                          |     7 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa.h                             |     1 +
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_ameth.c                       |    10 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_asn1.c                        |    40 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_err.c                         |     1 +
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_gen.c                         |     8 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_locl.h                        |     1 +
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_ossl.c                        |    36 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_pmeth.c                       |     6 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_sign.c                        |    40 +-
 crypto/external/bsd/openssl/dist/crypto/dsa/dsa_vrf.c                         |    21 -
 crypto/external/bsd/openssl/dist/crypto/dso/Makefile                          |     2 +-
 crypto/external/bsd/openssl/dist/crypto/dso/dso_vms.c                         |   177 +-
 crypto/external/bsd/openssl/dist/crypto/ec/Makefile                           |     5 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec.h                               |    25 +
 crypto/external/bsd/openssl/dist/crypto/ec/ec2_mult.c                         |    13 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec2_smpl.c                         |    11 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec_curve.c                         |   175 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec_err.c                           |    11 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec_key.c                           |    83 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec_lcl.h                           |    15 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ec_mult.c                          |     6 +-
 crypto/external/bsd/openssl/dist/crypto/ec/ecp_nistp224.c                     |  1492 ++++++++++
 crypto/external/bsd/openssl/dist/crypto/ec/ecp_smpl.c                         |     3 +
 crypto/external/bsd/openssl/dist/crypto/ec/ectest.c                           |   261 +-
 crypto/external/bsd/openssl/dist/crypto/ecdh/ech_lib.c                        |     3 +-
 crypto/external/bsd/openssl/dist/crypto/ecdsa/ecdsatest.c                     |     5 +-
 crypto/external/bsd/openssl/dist/crypto/ecdsa/ecs_lib.c                       |     2 -
 crypto/external/bsd/openssl/dist/crypto/ecdsa/ecs_ossl.c                      |    10 +
 crypto/external/bsd/openssl/dist/crypto/engine/Makefile                       |    21 +-
 crypto/external/bsd/openssl/dist/crypto/engine/eng_cnf.c                      |    17 +-
 crypto/external/bsd/openssl/dist/crypto/engine/eng_err.c                      |     3 +-
 crypto/external/bsd/openssl/dist/crypto/engine/eng_fat.c                      |     3 +-
 crypto/external/bsd/openssl/dist/crypto/engine/eng_list.c                     |     1 +
 crypto/external/bsd/openssl/dist/crypto/engine/eng_table.c                    |     3 +-
 crypto/external/bsd/openssl/dist/crypto/err/err.c                             |    13 +-
 crypto/external/bsd/openssl/dist/crypto/err/err.h                             |     9 +-
 crypto/external/bsd/openssl/dist/crypto/err/err_prn.c                         |     3 +-
 crypto/external/bsd/openssl/dist/crypto/evp/Makefile                          |    14 +-
 crypto/external/bsd/openssl/dist/crypto/evp/bio_b64.c                         |    77 +-
 crypto/external/bsd/openssl/dist/crypto/evp/bio_enc.c                         |    39 +-
 crypto/external/bsd/openssl/dist/crypto/evp/bio_ok.c                          |     8 +-
 crypto/external/bsd/openssl/dist/crypto/evp/c_all.c                           |     2 +-
 crypto/external/bsd/openssl/dist/crypto/evp/c_allc.c                          |     6 -
 crypto/external/bsd/openssl/dist/crypto/evp/digest.c                          |    29 +-
 crypto/external/bsd/openssl/dist/crypto/evp/e_aes.c                           |    88 +-
 crypto/external/bsd/openssl/dist/crypto/evp/e_des3.c                          |     3 +
 crypto/external/bsd/openssl/dist/crypto/evp/encode.c                          |     3 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp.h                             |   158 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp_enc.c                         |   118 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp_err.c                         |    13 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp_fips.c                        |   112 +
 crypto/external/bsd/openssl/dist/crypto/evp/evp_key.c                         |     9 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp_lib.c                         |    19 +
 crypto/external/bsd/openssl/dist/crypto/evp/evp_locl.h                        |    33 +-
 crypto/external/bsd/openssl/dist/crypto/evp/evp_pbe.c                         |     5 -
 crypto/external/bsd/openssl/dist/crypto/evp/evptests.txt                      |    13 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_dss.c                           |     2 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_dss1.c                          |     3 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_ecdsa.c                         |     3 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_md4.c                           |     2 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_md5.c                           |     1 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_mdc2.c                          |     4 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_ripemd.c                        |     1 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_sha.c                           |     1 +
 crypto/external/bsd/openssl/dist/crypto/evp/m_sigver.c                        |     4 +-
 crypto/external/bsd/openssl/dist/crypto/evp/m_wp.c                            |     1 +
 crypto/external/bsd/openssl/dist/crypto/evp/names.c                           |     4 +-
 crypto/external/bsd/openssl/dist/crypto/evp/p5_crpt2.c                        |    81 +-
 crypto/external/bsd/openssl/dist/crypto/evp/p_lib.c                           |     3 +
 crypto/external/bsd/openssl/dist/crypto/evp/p_sign.c                          |     2 +-
 crypto/external/bsd/openssl/dist/crypto/evp/p_verify.c                        |     2 +-
 crypto/external/bsd/openssl/dist/crypto/evp/pmeth_gn.c                        |     5 +-
 crypto/external/bsd/openssl/dist/crypto/evp/pmeth_lib.c                       |    56 +-
 crypto/external/bsd/openssl/dist/crypto/hmac/hm_pmeth.c                       |     2 +
 crypto/external/bsd/openssl/dist/crypto/hmac/hmac.c                           |     9 +-
 crypto/external/bsd/openssl/dist/crypto/hmac/hmac.h                           |    11 +-
 crypto/external/bsd/openssl/dist/crypto/ia64cpuid.S                           |     4 +-
 crypto/external/bsd/openssl/dist/crypto/install-crypto.com                    |   196 +
 crypto/external/bsd/openssl/dist/crypto/jpake/jpake.c                         |    29 +
 crypto/external/bsd/openssl/dist/crypto/jpake/jpake.h                         |     2 +
 crypto/external/bsd/openssl/dist/crypto/jpake/jpake_err.c                     |     4 +-
 crypto/external/bsd/openssl/dist/crypto/md2/md2.h                             |     3 +
 crypto/external/bsd/openssl/dist/crypto/md2/md2_dgst.c                        |     2 +-
 crypto/external/bsd/openssl/dist/crypto/md5/asm/md5-ia64.S                    |     2 +-
 crypto/external/bsd/openssl/dist/crypto/mdc2/mdc2.h                           |     3 +
 crypto/external/bsd/openssl/dist/crypto/mdc2/mdc2dgst.c                       |     3 +-
 crypto/external/bsd/openssl/dist/crypto/mem.c                                 |     2 +
 crypto/external/bsd/openssl/dist/crypto/modes/cfb128.c                        |     9 +-
 crypto/external/bsd/openssl/dist/crypto/modes/ctr128.c                        |    28 +-
 crypto/external/bsd/openssl/dist/crypto/modes/ofb128.c                        |     4 +-
 crypto/external/bsd/openssl/dist/crypto/o_fips.c                              |    83 +
 crypto/external/bsd/openssl/dist/crypto/o_init.c                              |    82 +
 crypto/external/bsd/openssl/dist/crypto/o_time.c                              |    22 +-
 crypto/external/bsd/openssl/dist/crypto/objects/obj_dat.h                     |   152 +-
 crypto/external/bsd/openssl/dist/crypto/objects/obj_mac.h                     |   111 +-
 crypto/external/bsd/openssl/dist/crypto/objects/obj_mac.num                   |    19 +
 crypto/external/bsd/openssl/dist/crypto/objects/obj_xref.h                    |     2 +-
 crypto/external/bsd/openssl/dist/crypto/objects/objects.txt                   |    33 +-
 crypto/external/bsd/openssl/dist/crypto/ocsp/ocsp_ht.c                        |    12 +-
 crypto/external/bsd/openssl/dist/crypto/ocsp/ocsp_lib.c                       |     8 +-
 crypto/external/bsd/openssl/dist/crypto/ocsp/ocsp_prn.c                       |     3 +-
 crypto/external/bsd/openssl/dist/crypto/pem/pem.h                             |     9 +-
 crypto/external/bsd/openssl/dist/crypto/pem/pem_lib.c                         |    31 +-
 crypto/external/bsd/openssl/dist/crypto/pem/pem_seal.c                        |    15 +-
 crypto/external/bsd/openssl/dist/crypto/pem/pem_sign.c                        |     8 +-
 crypto/external/bsd/openssl/dist/crypto/pem/pvkfmt.c                          |    15 +-
 crypto/external/bsd/openssl/dist/crypto/perlasm/ppc-xlate.pl                  |     7 +
 crypto/external/bsd/openssl/dist/crypto/perlasm/x86_64-xlate.pl               |    30 +-
 crypto/external/bsd/openssl/dist/crypto/perlasm/x86asm.pl                     |    17 -
 crypto/external/bsd/openssl/dist/crypto/perlasm/x86gas.pl                     |     2 +-
 crypto/external/bsd/openssl/dist/crypto/perlasm/x86masm.pl                    |     2 +-
 crypto/external/bsd/openssl/dist/crypto/perlasm/x86nasm.pl                    |     2 +-
 crypto/external/bsd/openssl/dist/crypto/pkcs12/p12_key.c                      |    39 +-
 crypto/external/bsd/openssl/dist/crypto/pkcs12/p12_npas.c                     |    17 +-
 crypto/external/bsd/openssl/dist/crypto/pkcs7/pk7_doit.c                      |     3 -
 crypto/external/bsd/openssl/dist/crypto/pkcs7/pk7_lib.c                       |     2 -
 crypto/external/bsd/openssl/dist/crypto/pkcs7/pkcs7.h                         |     2 -
 crypto/external/bsd/openssl/dist/crypto/ppccpuid.pl                           |     2 +
 crypto/external/bsd/openssl/dist/crypto/pqueue/pqueue.c                       |     5 +-
 crypto/external/bsd/openssl/dist/crypto/rand/md_rand.c                        |   128 +-
 crypto/external/bsd/openssl/dist/crypto/rand/rand.h                           |     8 +-
 crypto/external/bsd/openssl/dist/crypto/rand/rand_lib.c                       |   103 +
 crypto/external/bsd/openssl/dist/crypto/rand/rand_nw.c                        |     4 +-
 crypto/external/bsd/openssl/dist/crypto/rand/rand_vms.c                       |    16 +-
 crypto/external/bsd/openssl/dist/crypto/rand/rand_win.c                       |    23 +-
 crypto/external/bsd/openssl/dist/crypto/rc2/rc2_skey.c                        |     8 +
 crypto/external/bsd/openssl/dist/crypto/rsa/Makefile                          |    19 +-
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa.h                             |    61 +
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_crpt.c                        |   257 +
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_err.c                         |    13 +-
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_gen.c                         |    15 +
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_lib.c                         |   170 +-
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_pmeth.c                       |   122 +-
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_pss.c                         |    52 +-
 crypto/external/bsd/openssl/dist/crypto/rsa/rsa_sign.c                        |    17 +
 crypto/external/bsd/openssl/dist/crypto/s390xcap.c                            |    37 +
 crypto/external/bsd/openssl/dist/crypto/s390xcpuid.S                          |    16 +-
 crypto/external/bsd/openssl/dist/crypto/seed/seed.c                           |     9 +-
 crypto/external/bsd/openssl/dist/crypto/seed/seed.h                           |     4 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-586.pl                   |   102 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-armv4-large.pl           |    85 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-ia64.pl                  |   192 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-s390x.pl                 |     5 +
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-sparcv9.pl               |     1 +
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-sparcv9a.pl              |     1 +
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha1-x86_64.pl                |   317 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha256-armv4.pl               |    36 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha512-armv4.pl               |    33 +-
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha512-s390x.pl               |     5 +
 crypto/external/bsd/openssl/dist/crypto/sha/asm/sha512-sparcv9.pl             |     1 +
 crypto/external/bsd/openssl/dist/crypto/sha/sha1dgst.c                        |     1 +
 crypto/external/bsd/openssl/dist/crypto/sha/sha512.c                          |     4 +-
 crypto/external/bsd/openssl/dist/crypto/sha/sha_dgst.c                        |     1 +
 crypto/external/bsd/openssl/dist/crypto/sparccpuid.S                          |    90 +-
 crypto/external/bsd/openssl/dist/crypto/sparcv9cap.c                          |    97 +-
 crypto/external/bsd/openssl/dist/crypto/srp/Makefile                          |    97 +
 crypto/external/bsd/openssl/dist/crypto/srp/srp.h                             |   172 +
 crypto/external/bsd/openssl/dist/crypto/srp/srp_grps.h                        |   517 +++
 crypto/external/bsd/openssl/dist/crypto/srp/srp_lcl.h                         |    83 +
 crypto/external/bsd/openssl/dist/crypto/srp/srp_lib.c                         |   357 ++
 crypto/external/bsd/openssl/dist/crypto/srp/srp_vfy.c                         |   657 ++++
 crypto/external/bsd/openssl/dist/crypto/srp/srptest.c                         |   162 +
 crypto/external/bsd/openssl/dist/crypto/stack/safestack.h                     |   131 +-
 crypto/external/bsd/openssl/dist/crypto/symhacks.h                            |    34 +
 crypto/external/bsd/openssl/dist/crypto/ts/Makefile                           |     3 +-
 crypto/external/bsd/openssl/dist/crypto/ts/ts_verify_ctx.c                    |     5 +-
 crypto/external/bsd/openssl/dist/crypto/ui/ui.h                               |     2 +
 crypto/external/bsd/openssl/dist/crypto/ui/ui_lib.c                           |    19 +
 crypto/external/bsd/openssl/dist/crypto/vms_rms.h                             |    51 +
 crypto/external/bsd/openssl/dist/crypto/whrlpool/whrlpool.h                   |     3 +
 crypto/external/bsd/openssl/dist/crypto/whrlpool/wp_dgst.c                    |     3 +-
 crypto/external/bsd/openssl/dist/crypto/x509/by_dir.c                         |     5 +-
 crypto/external/bsd/openssl/dist/crypto/x509/x509.h                           |    11 +-
 crypto/external/bsd/openssl/dist/crypto/x509/x509_cmp.c                       |    14 +
 crypto/external/bsd/openssl/dist/crypto/x509/x509_lu.c                        |    83 +-
 crypto/external/bsd/openssl/dist/crypto/x509/x509_vfy.c                       |     2 +-
 crypto/external/bsd/openssl/dist/crypto/x509/x_all.c                          |     1 +
 crypto/external/bsd/openssl/dist/crypto/x509v3/pcy_tree.c                     |     3 +-
 crypto/external/bsd/openssl/dist/crypto/x509v3/v3_addr.c                      |     6 +
 crypto/external/bsd/openssl/dist/crypto/x509v3/v3_asid.c                      |    31 +-
 crypto/external/bsd/openssl/dist/crypto/x509v3/v3_ncons.c                     |     1 -
 crypto/external/bsd/openssl/dist/crypto/x509v3/v3_pci.c                       |    28 +-
 crypto/external/bsd/openssl/dist/crypto/x86_64cpuid.pl                        |     3 +
 crypto/external/bsd/openssl/dist/crypto/x86cpuid.pl                           |     3 +
 crypto/external/bsd/openssl/dist/demos/cms/cms_enc.c                          |     2 +-
 crypto/external/bsd/openssl/dist/demos/cms/cms_ver.c                          |     6 +-
 crypto/external/bsd/openssl/dist/demos/pkcs12/pkread.c                        |     2 +-
 crypto/external/bsd/openssl/dist/doc/apps/smime.pod                           |     8 +-
 crypto/external/bsd/openssl/dist/doc/apps/verify.pod                          |    12 +-
 crypto/external/bsd/openssl/dist/doc/apps/x509.pod                            |    16 +
 crypto/external/bsd/openssl/dist/doc/crypto/BIO_f_buffer.pod                  |     9 +-
 crypto/external/bsd/openssl/dist/doc/crypto/BIO_s_file.pod                    |     4 +
 crypto/external/bsd/openssl/dist/doc/crypto/BIO_should_retry.pod              |     2 +-
 crypto/external/bsd/openssl/dist/doc/crypto/EVP_PKEY_verify.pod               |     2 +-
 crypto/external/bsd/openssl/dist/doc/crypto/EVP_PKEY_verifyrecover.pod        |     2 +-
 crypto/external/bsd/openssl/dist/doc/crypto/OPENSSL_ia32cap.pod               |    41 +-
 crypto/external/bsd/openssl/dist/doc/crypto/X509_STORE_set_verify_cb_func.pod |     2 +-
 crypto/external/bsd/openssl/dist/doc/ssl/SSL_CTX_set_options.pod              |   110 +-
 crypto/external/bsd/openssl/dist/doc/ssl/SSL_library_init.pod                 |    16 +-
 crypto/external/bsd/openssl/dist/e_os.h                                       |     1 -
 crypto/external/bsd/openssl/dist/e_os2.h                                      |     6 -
 crypto/external/bsd/openssl/dist/engines/Makefile                             |     4 +-
 crypto/external/bsd/openssl/dist/engines/alpha.opt                            |     1 +
 crypto/external/bsd/openssl/dist/engines/ccgost/Makefile                      |    10 +-
 crypto/external/bsd/openssl/dist/engines/ccgost/gost2001.c                    |     3 +
 crypto/external/bsd/openssl/dist/engines/ccgost/gost_ameth.c                  |     6 +-
 crypto/external/bsd/openssl/dist/engines/ccgost/gost_crypt.c                  |    10 +-
 crypto/external/bsd/openssl/dist/engines/e_aep.c                              |     8 +-
 crypto/external/bsd/openssl/dist/engines/e_capi.c                             |    34 +-
 crypto/external/bsd/openssl/dist/engines/e_capi_err.c                         |     2 +-
 crypto/external/bsd/openssl/dist/engines/e_chil.c                             |    67 +-
 crypto/external/bsd/openssl/dist/engines/e_cswift.c                           |     2 -
 crypto/external/bsd/openssl/dist/engines/e_gmp.c                              |     2 +
 crypto/external/bsd/openssl/dist/engines/e_padlock.c                          |   148 +-
 crypto/external/bsd/openssl/dist/engines/e_sureware.c                         |    15 +-
 crypto/external/bsd/openssl/dist/engines/e_ubsec.c                            |     8 +-
 crypto/external/bsd/openssl/dist/engines/ia64.opt                             |     1 +
 crypto/external/bsd/openssl/dist/engines/makeengines.com                      |   359 +-
 crypto/external/bsd/openssl/dist/install.com                                  |   217 +-
 crypto/external/bsd/openssl/dist/makevms.com                                  |   788 +++-
 crypto/external/bsd/openssl/dist/ms/README                                    |     2 +-
 crypto/external/bsd/openssl/dist/ms/bcb4.bat                                  |    12 +-
 crypto/external/bsd/openssl/dist/ms/do_nt.bat                                 |    14 +-
 crypto/external/bsd/openssl/dist/ms/do_win64a.bat                             |    18 +-
 crypto/external/bsd/openssl/dist/ms/do_win64i.bat                             |    18 +-
 crypto/external/bsd/openssl/dist/ms/mingw32.bat                               |   180 +-
 crypto/external/bsd/openssl/dist/ms/mw.bat                                    |    52 +-
 crypto/external/bsd/openssl/dist/ms/tenc.bat                                  |    28 +-
 crypto/external/bsd/openssl/dist/ms/tencce.bat                                |    38 +-
 crypto/external/bsd/openssl/dist/ms/testenc.bat                               |   188 +-
 crypto/external/bsd/openssl/dist/ms/testencce.bat                             |   194 +-
 crypto/external/bsd/openssl/dist/ms/testpem.bat                               |    64 +-
 crypto/external/bsd/openssl/dist/ms/testpemce.bat                             |    84 +-
 crypto/external/bsd/openssl/dist/ms/testss.bat                                |   196 +-
 crypto/external/bsd/openssl/dist/ms/testssce.bat                              |   208 +-
 crypto/external/bsd/openssl/dist/ms/tpem.bat                                  |    12 +-
 crypto/external/bsd/openssl/dist/ms/tpemce.bat                                |    16 +-
 crypto/external/bsd/openssl/dist/ms/x86asm.bat                                |   114 +-
 crypto/external/bsd/openssl/dist/openssl.spec                                 |     4 +-
 crypto/external/bsd/openssl/dist/ssl/Makefile                                 |    73 +-
 crypto/external/bsd/openssl/dist/ssl/bio_ssl.c                                |     4 +
 crypto/external/bsd/openssl/dist/ssl/d1_both.c                                |   313 +-
 crypto/external/bsd/openssl/dist/ssl/d1_clnt.c                                |    23 +-
 crypto/external/bsd/openssl/dist/ssl/d1_enc.c                                 |     6 +-
 crypto/external/bsd/openssl/dist/ssl/d1_lib.c                                 |    75 +-
 crypto/external/bsd/openssl/dist/ssl/d1_pkt.c                                 |    52 +-
 crypto/external/bsd/openssl/dist/ssl/d1_srvr.c                                |    42 +-
 crypto/external/bsd/openssl/dist/ssl/dtls1.h                                  |    18 +-
 crypto/external/bsd/openssl/dist/ssl/install-ssl.com                          |   136 +
 crypto/external/bsd/openssl/dist/ssl/kssl.c                                   |    22 +
 crypto/external/bsd/openssl/dist/ssl/kssl.h                                   |     4 +
 crypto/external/bsd/openssl/dist/ssl/s23_lib.c                                |     7 -
 crypto/external/bsd/openssl/dist/ssl/s23_meth.c                               |     4 +
 crypto/external/bsd/openssl/dist/ssl/s23_srvr.c                               |    50 +-
 crypto/external/bsd/openssl/dist/ssl/s2_srvr.c                                |     7 +-
 crypto/external/bsd/openssl/dist/ssl/s3_both.c                                |     2 +
 crypto/external/bsd/openssl/dist/ssl/ssl-lib.com                              |   319 +-
 crypto/external/bsd/openssl/dist/ssl/ssl.h                                    |   198 +-
 crypto/external/bsd/openssl/dist/ssl/ssl2.h                                   |     4 +
 crypto/external/bsd/openssl/dist/ssl/ssl3.h                                   |    18 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_algs.c                               |    12 +
 crypto/external/bsd/openssl/dist/ssl/ssl_asn1.c                               |    44 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_cert.c                               |    23 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_err.c                                |    22 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_lib.c                                |   136 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_sess.c                               |    43 +-
 crypto/external/bsd/openssl/dist/ssl/ssl_stat.c                               |    19 +
 crypto/external/bsd/openssl/dist/ssl/ssl_txt.c                                |     6 +
 crypto/external/bsd/openssl/dist/ssl/t1_clnt.c                                |     7 +
 crypto/external/bsd/openssl/dist/ssl/t1_meth.c                                |     7 +
 crypto/external/bsd/openssl/dist/ssl/t1_reneg.c                               |    12 +-
 crypto/external/bsd/openssl/dist/ssl/t1_srvr.c                                |     7 +
 crypto/external/bsd/openssl/dist/ssl/tls1.h                                   |    81 +
 crypto/external/bsd/openssl/dist/ssl/tls_srp.c                                |   527 +++
 crypto/external/bsd/openssl/dist/test/CAtsa.cnf                               |     5 +-
 crypto/external/bsd/openssl/dist/test/Makefile                                |    57 +-
 crypto/external/bsd/openssl/dist/test/asn1test.c                              |    22 +
 crypto/external/bsd/openssl/dist/test/bctest.com                              |   152 +
 crypto/external/bsd/openssl/dist/test/bntest.com                              |    76 +
 crypto/external/bsd/openssl/dist/test/clean_test.com                          |    35 +
 crypto/external/bsd/openssl/dist/test/cms-test.pl                             |   102 +-
 crypto/external/bsd/openssl/dist/test/maketests.com                           |   434 ++-
 crypto/external/bsd/openssl/dist/test/tcrl.com                                |    15 +-
 crypto/external/bsd/openssl/dist/test/testca.com                              |    10 +-
 crypto/external/bsd/openssl/dist/test/testenc.com                             |    15 +-
 crypto/external/bsd/openssl/dist/test/testgen.com                             |    23 +-
 crypto/external/bsd/openssl/dist/test/tests.com                               |   179 +-
 crypto/external/bsd/openssl/dist/test/testss.com                              |    19 +-
 crypto/external/bsd/openssl/dist/test/testssl                                 |    10 +
 crypto/external/bsd/openssl/dist/test/testssl.com                             |    28 +-
 crypto/external/bsd/openssl/dist/test/testtsa.com                             |   124 +-
 crypto/external/bsd/openssl/dist/test/tpkcs7.com                              |    15 +-
 crypto/external/bsd/openssl/dist/test/tpkcs7d.com                             |    15 +-
 crypto/external/bsd/openssl/dist/test/treq.com                                |    15 +-
 crypto/external/bsd/openssl/dist/test/trsa.com                                |    15 +-
 crypto/external/bsd/openssl/dist/test/tsid.com                                |    15 +-
 crypto/external/bsd/openssl/dist/test/tverify.com                             |    12 +-
 crypto/external/bsd/openssl/dist/test/tx509.com                               |    15 +-
 crypto/external/bsd/openssl/dist/tools/c_rehash.in                            |     3 +-
 crypto/external/bsd/openssl/dist/util/copy.pl                                 |    11 +
 crypto/external/bsd/openssl/dist/util/cygwin.sh                               |    11 +-
 crypto/external/bsd/openssl/dist/util/libeay.num                              |   103 +-
 crypto/external/bsd/openssl/dist/util/mk1mf.pl                                |    28 +-
 crypto/external/bsd/openssl/dist/util/mkdef.pl                                |    25 +-
 crypto/external/bsd/openssl/dist/util/mkerr.pl                                |     4 +-
 crypto/external/bsd/openssl/dist/util/mkfiles.pl                              |     1 +
 crypto/external/bsd/openssl/dist/util/mkstack.pl                              |    20 +-
 crypto/external/bsd/openssl/dist/util/pl/VC-32.pl                             |    43 +-
 crypto/external/bsd/openssl/dist/util/pod2man.pl                              |     2 +-
 crypto/external/bsd/openssl/dist/util/ssleay.num                              |    49 +
 443 files changed, 18116 insertions(+), 5360 deletions(-)

diffs (truncated from 38875 to 300 lines):

diff -r 1b6151d3febf -r c2517b2c7336 crypto/external/bsd/openssl/dist/ACKNOWLEDGMENTS
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/crypto/external/bsd/openssl/dist/ACKNOWLEDGMENTS  Sun Jun 05 14:55:58 2011 +0000
@@ -0,0 +1,25 @@
+The OpenSSL project depends on volunteer efforts and financial support from
+the end user community. That support comes in the form of donations and paid
+sponsorships, software support contracts, paid consulting services
+and commissioned software development.
+
+Since all these activities support the continued development and improvement
+of OpenSSL we consider all these clients and customers as sponsors of the
+OpenSSL project.
+
+We would like to identify and thank the following such sponsors for their past
+or current significant support of the OpenSSL project:
+
+Very significant support:
+
+       OpenGear: www.opengear.com
+
+Significant support:
+
+       PSW Group: www.psw.net
+
+Please note that we ask permission to identify sponsors and that some sponsors
+we consider eligible for inclusion here have requested to remain anonymous.
+
+Additional sponsorship or financial support is always welcome: for more
+information please contact the OpenSSL Software Foundation.
diff -r 1b6151d3febf -r c2517b2c7336 crypto/external/bsd/openssl/dist/CHANGES
--- a/crypto/external/bsd/openssl/dist/CHANGES  Sun Jun 05 14:43:12 2011 +0000
+++ b/crypto/external/bsd/openssl/dist/CHANGES  Sun Jun 05 14:55:58 2011 +0000
@@ -2,7 +2,117 @@
  OpenSSL CHANGES
  _______________
 
- Changes between 1.0.0 and 1.1.0  [xx XXX xxxx]
+ Changes between 1.0.0d and 1.0.1  [xx XXX xxxx]
+
+  *) Backport libcrypto audit of return value checking from HEAD, not
+     all cases can be covered as some introduce binary incompatibilities.
+     [Steve Henson]
+
+  *) Redirect RSA operations to FIPS module including keygen,
+     encrypt, decrypt, sign and verify. Block use of non FIPS RSA methods.
+     [Steve Henson]
+
+  *) Add similar low level API blocking to ciphers.
+     [Steve Henson]
+
+  *) Low level digest APIs are not approved in FIPS mode: any attempt
+     to use these will cause a fatal error. Applications that *really* want
+     to use them can use the private_* version instead.
+     [Steve Henson]
+
+  *) Redirect cipher operations to FIPS module for FIPS builds. 
+     [Steve Henson]
+
+  *) Redirect digest operations to FIPS module for FIPS builds. 
+     [Steve Henson]
+
+  *) Update build system to add "fips" flag which will link in fipscanister.o
+     for static and shared library builds embedding a signature if needed.
+     [Steve Henson]
+
+  *) Output TLS supported curves in preference order instead of numerical
+     order. This is currently hardcoded for the highest order curves first.
+     This should be configurable so applications can judge speed vs strength.
+     [Steve Henson]
+
+  *) Add protection against ECDSA timing attacks as mentioned in the paper
+     by Billy Bob Brumley and Nicola Tuveri, see:
+
+       http://eprint.iacr.org/2011/232.pdf
+
+     [Billy Bob Brumley and Nicola Tuveri]
+
+  *) Add TLS v1.2 server support for client authentication. 
+     [Steve Henson]
+
+  *) Add support for FIPS mode in ssl library: disable SSLv3, non-FIPS ciphers
+     and enable MD5.
+     [Steve Henson]
+
+  *) Functions FIPS_mode_set() and FIPS_mode() which call the underlying
+     FIPS modules versions.
+     [Steve Henson]
+
+  *) Add TLS v1.2 client side support for client authentication. Keep cache
+     of handshake records longer as we don't know the hash algorithm to use
+     until after the certificate request message is received.
+     [Steve Henson]
+
+  *) Initial TLS v1.2 client support. Add a default signature algorithms
+     extension including all the algorithms we support. Parse new signature
+     format in client key exchange. Relax some ECC signing restrictions for
+     TLS v1.2 as indicated in RFC5246.
+     [Steve Henson]
+
+  *) Add server support for TLS v1.2 signature algorithms extension. Switch
+     to new signature format when needed using client digest preference.
+     All server ciphersuites should now work correctly in TLS v1.2. No client
+     support yet and no support for client certificates.
+     [Steve Henson]
+
+  *) Initial TLS v1.2 support. Add new SHA256 digest to ssl code, switch
+     to SHA256 for PRF when using TLS v1.2 and later. Add new SHA256 based
+     ciphersuites. At present only RSA key exchange ciphersuites work with
+     TLS v1.2. Add new option for TLS v1.2 replacing the old and obsolete
+     SSL_OP_PKCS1_CHECK flags with SSL_OP_NO_TLSv1_2. New TLSv1.2 methods
+     and version checking.
+     [Steve Henson]
+ 
+  *) New option OPENSSL_NO_SSL_INTERN. If an application can be compiled
+     with this defined it will not be affected by any changes to ssl internal
+     structures. Add several utility functions to allow openssl application
+     to work with OPENSSL_NO_SSL_INTERN defined.
+     [Steve Henson]
+
+  *) Add SRP support.
+     [Tom Wu <tjw%cs.stanford.edu@localhost> and Ben Laurie]
+
+  *) Add functions to copy EVP_PKEY_METHOD and retrieve flags and id.
+     [Steve Henson]
+
+  *) Add EC_GFp_nistp224_method(), a 64-bit optimized implementation for
+     elliptic curve NIST-P224 with constant-time single point multiplication on
+     typical inputs.  EC_GROUP_new_by_curve_name() will automatically use this
+     (while EC_GROUP_new_curve_GFp() currently won't and prefers the more
+     flexible implementations).
+
+     The implementation requires support for the nonstandard type __uint128_t,
+     and so is disabled by default.  To include this in your build of OpenSSL,
+     use -DEC_NISTP224_64_GCC_128 on the Configure (or config) command line,
+     and run "make depend" (or "make update").
+     [Emilia Käsper <emilia.kasper%esat.kuleuven.be@localhost> (Google)]
+
+  *) Permit abbreviated handshakes when renegotiating using the function
+     SSL_renegotiate_abbreviated().
+     [Robin Seggelmann <seggelmann%fh-muenster.de@localhost>]
+
+  *) Add call to ENGINE_register_all_complete() to
+     ENGINE_load_builtin_engines(), so some implementations get used
+     automatically instead of needing explicit application support.
+     [Steve Henson]
+
+  *) Add support for TLS key exporter as described in RFC5705.
+     [Robin Seggelmann <seggelmann%fh-muenster.de@localhost>, Steve Henson]
 
   *) Initial TLSv1.1 support. Since TLSv1.1 is very similar to TLS v1.0 only
      a few changes are required:
@@ -14,34 +124,63 @@
        Add command line options to s_client/s_server.
      [Steve Henson]
 
-  *) Experiemental password based recipient info support for CMS library:
-     implementing RFC3211.
-     [Steve Henson]
-
-  *) Split password based encryption into PBES2 and PBKDF2 functions. This
-     neatly separates the code into cipher and PBE sections and is required
-     for some algorithms that split PBES2 into separate pieces (such as
-     password based CMS).
-     [Steve Henson]
-
-  *) Extensive audit of libcrypto with DEBUG_UNUSED. Fix many cases where
-     return value is ignored. NB. The functions RAND_add(), RAND_seed(),
-     BIO_set_cipher() and some obscure PEM functions were changed so they
-     can now return an error. The RAND changes required a change to the
-     RAND_METHOD structure.
-     [Steve Henson]
-
-  *) 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. 
-     [Steve Henson]
-
- Changes between 0.9.8m (?) and 1.0.0  [xx XXX xxxx]
-
-  *) Constify crypto/cast (i.e., <openssl/cast.h>): a CAST_KEY doesn't
-     change when encrypting or decrypting.
-     [Bodo Moeller]
+ Changes between 1.0.0c and 1.0.0d [8 Feb 2011]
+
+  *) Fix parsing of OCSP stapling ClientHello extension. CVE-2011-0014
+     [Neel Mehta, Adam Langley, Bodo Moeller (Google)]
+
+  *) Fix bug in string printing code: if *any* escaping is enabled we must
+     escape the escape character (backslash) or the resulting string is
+     ambiguous.
+     [Steve Henson]
+
+ Changes between 1.0.0b and 1.0.0c  [2 Dec 2010]
+
+  *) Disable code workaround for ancient and obsolete Netscape browsers
+     and servers: an attacker can use it in a ciphersuite downgrade attack.
+     Thanks to Martin Rex for discovering this bug. CVE-2010-4180
+     [Steve Henson]
+
+  *) Fixed J-PAKE implementation error, originally discovered by
+     Sebastien Martini, further info and confirmation from Stefan
+     Arentz and Feng Hao. Note that this fix is a security fix. CVE-2010-4252
+     [Ben Laurie]
+
+ Changes between 1.0.0a and 1.0.0b  [16 Nov 2010]
+
+  *) Fix extension code to avoid race conditions which can result in a buffer
+     overrun vulnerability: resumed sessions must not be modified as they can
+     be shared by multiple threads. CVE-2010-3864
+     [Steve Henson]
+
+  *) Fix WIN32 build system to correctly link an ENGINE directory into
+     a DLL. 
+     [Steve Henson]
+
+ Changes between 1.0.0 and 1.0.0a  [01 Jun 2010]
+
+  *) Check return value of int_rsa_verify in pkey_rsa_verifyrecover 
+     (CVE-2010-1633)
+     [Steve Henson, Peter-Michael Hager <hager%dortmund.net@localhost>]
+
+ Changes between 0.9.8n and 1.0.0  [29 Mar 2010]
+
+  *) Add "missing" function EVP_CIPHER_CTX_copy(). This copies a cipher
+     context. The operation can be customised via the ctrl mechanism in
+     case ENGINEs want to include additional functionality.
+     [Steve Henson]
+
+  *) Tolerate yet another broken PKCS#8 key format: private key value negative.
+     [Steve Henson]
+
+  *) Add new -subject_hash_old and -issuer_hash_old options to x509 utility to
+     output hashes compatible with older versions of OpenSSL.
+     [Willy Weisz <weisz%vcpc.univie.ac.at@localhost>]
+
+  *) Fix compression algorithm handling: if resuming a session use the
+     compression algorithm of the resumed session instead of determining
+     it from client hello again. Don't allow server to change algorithm.
+     [Steve Henson]
 
   *) Add load_crls() function to apps tidying load_certs() too. Add option
      to verify utility to allow additional CRLs to be included.
@@ -864,11 +1003,131 @@
 
   *) Change 'Configure' script to enable Camellia by default.
      [NTT]
-
- Changes between 0.9.8l (?) and 0.9.8m (?)  [xx XXX xxxx]
+  
+ Changes between 0.9.8q and 0.9.8r [8 Feb 2011]
+
+  *) Fix parsing of OCSP stapling ClientHello extension. CVE-2011-0014
+     [Neel Mehta, Adam Langley, Bodo Moeller (Google)]
+
+  *) Fix bug in string printing code: if *any* escaping is enabled we must
+     escape the escape character (backslash) or the resulting string is
+     ambiguous.
+     [Steve Henson]
+
+ Changes between 0.9.8p and 0.9.8q [2 Dec 2010]
+
+  *) Disable code workaround for ancient and obsolete Netscape browsers
+     and servers: an attacker can use it in a ciphersuite downgrade attack.
+     Thanks to Martin Rex for discovering this bug. CVE-2010-4180
+     [Steve Henson]
+
+  *) Fixed J-PAKE implementation error, originally discovered by
+     Sebastien Martini, further info and confirmation from Stefan
+     Arentz and Feng Hao. Note that this fix is a security fix. CVE-2010-4252
+     [Ben Laurie]
+
+ Changes between 0.9.8o and 0.9.8p [16 Nov 2010]
+
+  *) Fix extension code to avoid race conditions which can result in a buffer
+     overrun vulnerability: resumed sessions must not be modified as they can
+     be shared by multiple threads. CVE-2010-3864
+     [Steve Henson]
+
+  *) Fix for double free bug in ssl/s3_clnt.c CVE-2010-2939
+     [Steve Henson]
+
+  *) Don't reencode certificate when calculating signature: cache and use
+     the original encoding instead. This makes signature verification of
+     some broken encodings work correctly.
+     [Steve Henson]
+
+  *) ec2_GF2m_simple_mul bugfix: compute correct result if the output EC_POINT
+     is also one of the inputs.
+     [Emilia Käsper <emilia.kasper%esat.kuleuven.be@localhost> (Google)]
+
+  *) Don't repeatedly append PBE algorithms to table if they already exist.
+     Sort table on each new add. This effectively makes the table read only
+     after all algorithms are added and subsequent calls to PKCS12_pbe_add
+     etc are non-op.
+     [Steve Henson]
+
+ Changes between 0.9.8n and 0.9.8o [01 Jun 2010]
+
+  [NB: OpenSSL 0.9.8o and later 0.9.8 patch levels were released after



Home | Main Index | Thread Index | Old Index