1. 30 9月, 2015 1 次提交
    • D
      Fix no-stdio build · 984d6c60
      David Woodhouse 提交于
      Much related/similar work also done by
      Ivan Nestlerode <ivan.nestlerode@sonos.com>
      
         +Replace FILE BIO's with dummy ops that fail.
         +Include <stdio.h> for sscanf() even with no-stdio (since the declaration
          is there). We rely on sscanf() to parse the OPENSSL_ia32cap environment
          variable, since it can be larger than a 'long'. And we don't rely on the
          availability of strtoull().
         +Remove OPENSSL_stderr(); not used.
         +Make OPENSSL_showfatal() do nothing (currently without stdio there's
          nothing we can do).
         +Remove file-based functionality from ssl/. The function
          prototypes were already gone, but not the functions themselves.
         +Remove unviable conf functionality via SYS_UEFI
         +Add fallback definition of BUFSIZ.
         +Remove functions taking FILE * from header files.
         +Add missing DECLARE_PEM_write_fp_const
         +Disable X509_LOOKUP_hash_dir(). X509_LOOKUP_file() was already compiled out,
          so remove its prototype.
         +Use OPENSSL_showfatal() in CRYPTO_destroy_dynlockid().
         +Eliminate SRP_VBASE_init() and supporting functions. Users will need to
          build the verifier manually instead.
         +Eliminate compiler warning for unused do_pk8pkey_fp().
         +Disable TEST_ENG_OPENSSL_PKEY.
         +Disable GOST engine as is uses [f]printf all over the place.
         +Eliminate compiler warning for unused send_fp_chars().
      Signed-off-by: NRich Salz <rsalz@akamai.com>
      Reviewed-by: NTim Hudson <tjh@openssl.org>
      984d6c60
  2. 25 9月, 2015 1 次提交
  3. 23 9月, 2015 1 次提交
  4. 17 9月, 2015 1 次提交
  5. 15 9月, 2015 1 次提交
    • D
      Fix PSK identity hint handling. · df6da24b
      Dr. Stephen Henson 提交于
      For server use a PSK identity hint value in the CERT structure which
      is inherited when SSL_new is called and which allows applications to
      set hints on a per-SSL basis. The previous version of
      SSL_use_psk_identity_hint tried (wrongly) to use the SSL_SESSION structure.
      
      PR#4039
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      df6da24b
  6. 11 9月, 2015 1 次提交
  7. 06 9月, 2015 1 次提交
  8. 04 9月, 2015 1 次提交
  9. 03 9月, 2015 1 次提交
  10. 01 9月, 2015 1 次提交
  11. 12 8月, 2015 1 次提交
  12. 30 7月, 2015 1 次提交
  13. 18 7月, 2015 1 次提交
  14. 22 6月, 2015 1 次提交
  15. 15 6月, 2015 1 次提交
  16. 28 5月, 2015 4 次提交
  17. 23 5月, 2015 2 次提交
    • M
      Fix typo setting up certificate masks · fdfe8b06
      Matt Caswell 提交于
      The certificate masks are used to select which ciphersuite we are going to
      use. The variables |emask_k| and |emask_a| relate to export grade key
      exchange and authentication respecitively. The variables |mask_k| and
      |mask_a| are the equivalent versions for non-export grade. This fixes an
      instance where the two usages of export/non-export were mixed up. In
      practice it makes little difference since it still works!
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      fdfe8b06
    • M
      Remove support for OPENSSL_NO_TLSEXT · e481f9b9
      Matt Caswell 提交于
      Given the pervasive nature of TLS extensions it is inadvisable to run
      OpenSSL without support for them. It also means that maintaining
      the OPENSSL_NO_TLSEXT option within the code is very invasive (and probably
      not well tested). Therefore it is being removed.
      Reviewed-by: NRich Salz <rsalz@openssl.org>
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      e481f9b9
  18. 19 5月, 2015 4 次提交
  19. 16 5月, 2015 2 次提交
    • M
      Updates following review comments · d45ba43d
      Matt Caswell 提交于
      Miscellaneous updates following review comments on the version negotiation
      rewrite patches.
      Reviewed-by: NKurt Roeckx <kurt@openssl.org>
      d45ba43d
    • M
      Server side version negotiation rewrite · 32ec4153
      Matt Caswell 提交于
      This commit changes the way that we do server side protocol version
      negotiation. Previously we had a whole set of code that had an "up front"
      state machine dedicated to the negotiating the protocol version. This adds
      significant complexity to the state machine. Historically the justification
      for doing this was the support of SSLv2 which works quite differently to
      SSLv3+. However, we have now removed support for SSLv2 so there is little
      reason to maintain this complexity.
      
      The one slight difficulty is that, although we no longer support SSLv2, we
      do still support an SSLv3+ ClientHello in an SSLv2 backward compatible
      ClientHello format. This is generally only used by legacy clients. This
      commit adds support within the SSLv3 code for these legacy format
      ClientHellos.
      
      Server side version negotiation now works in much the same was as DTLS,
      i.e. we introduce the concept of TLS_ANY_VERSION. If s->version is set to
      that then when a ClientHello is received it will work out the most
      appropriate version to respond with. Also, SSLv23_method and
      SSLv23_server_method have been replaced with TLS_method and
      TLS_server_method respectively. The old SSLv23* names still exist as
      macros pointing at the new name, although they are deprecated.
      
      Subsequent commits will look at client side version negotiation, as well of
      removal of the old s23* code.
      Reviewed-by: NKurt Roeckx <kurt@openssl.org>
      32ec4153
  20. 13 5月, 2015 1 次提交
  21. 12 5月, 2015 1 次提交
    • R
      Make COMP_CTX and COMP_METHOD opaque · 9a555706
      Rich Salz 提交于
      Since COMP_METHOD is now defined in comp_lcl.h, it is no
      longer possible to create new TLS compression methods without
      using the OpenSSL source.  Only ZLIB is supported by default.
      Also, since the types are opaque, #ifdef guards to use "char *"
      instead of the real type aren't necessary.
      
      The changes are actually minor.  Adding missing copyright to some
      files makes the diff misleadingly big.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      9a555706
  22. 11 5月, 2015 1 次提交
  23. 06 5月, 2015 1 次提交
  24. 05 5月, 2015 1 次提交
    • R
      Use safer sizeof variant in malloc · b4faea50
      Rich Salz 提交于
      For a local variable:
              TYPE *p;
      Allocations like this are "risky":
              p = OPENSSL_malloc(sizeof(TYPE));
      if the type of p changes, and the malloc call isn't updated, you
      could get memory corruption.  Instead do this:
              p = OPENSSL_malloc(sizeof(*p));
      Also fixed a few memset() calls that I noticed while doing this.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      b4faea50
  25. 02 5月, 2015 2 次提交
  26. 01 5月, 2015 3 次提交
    • R
      free NULL cleanup 11 · efa7dd64
      Rich Salz 提交于
      Don't check for NULL before calling free functions. This gets:
              ERR_STATE_free
              ENGINE_free
              DSO_free
              CMAC_CTX_free
              COMP_CTX_free
              CONF_free
              NCONF_free NCONF_free_data _CONF_free_data
              A sk_free use within OBJ_sigid_free
              TS_TST_INFO_free (rest of TS_ API was okay)
              Doc update for UI_free (all uses were fine)
              X509V3_conf_free
              X509V3_section_free
              X509V3_string_free
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      efa7dd64
    • R
      free null cleanup finale · b548a1f1
      Rich Salz 提交于
      Don't check for NULL before calling OPENSSL_free
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      b548a1f1
    • R
      free NULL cleanup 5a · 222561fe
      Rich Salz 提交于
      Don't check for NULL before calling a free routine.  This gets X509_.*free:
          x509_name_ex_free X509_policy_tree_free X509_VERIFY_PARAM_free
          X509_STORE_free X509_STORE_CTX_free X509_PKEY_free
          X509_OBJECT_free_contents X509_LOOKUP_free X509_INFO_free
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      222561fe
  27. 29 4月, 2015 1 次提交
  28. 17 4月, 2015 1 次提交
  29. 12 4月, 2015 1 次提交
    • R
      free NULL cleanup 9 · e0e920b1
      Rich Salz 提交于
      Ongoing work to skip NULL check before calling free routine.  This gets:
          ecp_nistz256_pre_comp_free nistp224_pre_comp_free nistp256_pre_comp_free
          nistp521_pre_comp_free PKCS7_free PKCS7_RECIP_INFO_free
          PKCS7_SIGNER_INFO_free sk_PKCS7_pop_free PKCS8_PRIV_KEY_INFO_free
          PKCS12_free PKCS12_SAFEBAG_free PKCS12_free sk_PKCS12_SAFEBAG_pop_free
          SSL_CONF_CTX_free SSL_CTX_free SSL_SESSION_free SSL_free ssl_cert_free
          ssl_sess_cert_free
      Reviewed-by: NKurt Roeckx <kurt@openssl.org>
      e0e920b1