1. 15 12月, 2015 1 次提交
    • M
      Fix s_server problem with no-ec · 8caab744
      Matt Caswell 提交于
      s_server was trying to set the ECDH curve when no-ec was defined. This also
      highlighted the fact that the -no_ecdhe option to s_server is broken, and
      doesn't make any sense any more (ECDHE is on by default and the only way it
      can be disabled is through the cipherstring). Therefore this commit removes
      the option.
      Reviewed-by: NKurt Roeckx <kurt@openssl.org>
      8caab744
  2. 12 12月, 2015 1 次提交
  3. 06 12月, 2015 1 次提交
  4. 21 11月, 2015 9 次提交
  5. 10 11月, 2015 1 次提交
  6. 31 10月, 2015 1 次提交
  7. 30 10月, 2015 3 次提交
  8. 13 10月, 2015 1 次提交
    • M
      Centralise loading default apps config file · a0a82324
      Matt Caswell 提交于
      Loading the config file after processing command line options can
      cause problems, e.g. where an engine provides new ciphers/digests
      these are not then recoginised on the command line. Move the
      default config file loading to before the command line option
      processing. Whilst we're doing this we might as well centralise
      this instead of doing it individually for each application. Finally
      if we do it before the OpenSSL_add_ssl_algorithms() call then
      ciphersuites provided by an engine (e.g. GOST) can be available to
      the apps.
      
      RT#4085
      RT#4086
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      a0a82324
  9. 11 10月, 2015 1 次提交
  10. 28 9月, 2015 1 次提交
  11. 25 9月, 2015 1 次提交
    • M
      Add support for -no-CApath and -no-CAfile options · 2b6bcb70
      Matt Caswell 提交于
      For those command line options that take the verification options
      -CApath and -CAfile, if those options are absent then the default path or
      file is used instead. It is not currently possible to specify *no* path or
      file at all. This change adds the options -no-CApath and -no-CAfile to
      specify that the default locations should not be used to all relevant
      applications.
      Reviewed-by: NAndy Polyakov <appro@openssl.org>
      2b6bcb70
  12. 23 9月, 2015 2 次提交
  13. 20 9月, 2015 2 次提交
  14. 11 9月, 2015 1 次提交
  15. 06 9月, 2015 1 次提交
    • R
      Change the treatment of stdin and stdout to allow binary data · a60994df
      Richard Levitte 提交于
      If the output to stdout or the input from stdin is meant to be binary,
      it's deeply unsetting to get the occasional LF converted to CRLF or
      the other way around.  If someone happens to forget to redirect stdin
      or stdout, they will get gibberish anyway, line ending conversion will
      not change that.
      
      Therefore, let's not have dup_bio_* decide unilaterally what mode the
      BIO derived from stdin and stdout, and rather let the app decide by
      declaring the intended format.
      Reviewed-by: NTim Hudson <tjh@openssl.org>
      a60994df
  16. 05 8月, 2015 1 次提交
  17. 31 7月, 2015 1 次提交
  18. 16 6月, 2015 1 次提交
    • R
      RT2547: Tighten perms on generated privkey files · 3b061a00
      Rich Salz 提交于
      When generating a private key, try to make the output file be readable
      only by the owner.  Put it in CHANGES file since it might be noticeable.
      
      Add "int private" flag to apps that write private keys, and check that it's
      set whenever we do write a private key.  Checked via assert so that this
      bug (security-related) gets fixed.  Thanks to Viktor for help in tracing
      the code-paths where private keys are written.
      Reviewed-by: NViktor Dukhovni <viktor@openssl.org>
      3b061a00
  19. 10 6月, 2015 2 次提交
  20. 03 6月, 2015 1 次提交
    • R
      Standardize handling of #ifdef'd options. · 9c3bcfa0
      Rich Salz 提交于
      Here are the "rules" for handling flags that depend on #ifdef:
      
      - Do not ifdef the enum.  Only ifdef the OPTIONS table.  All ifdef'd
        entries appear at the end; by convention "engine" is last.  This
        ensures that at run-time, the flag will never be recognized/allowed.
        The next two bullets entries are for silencing compiler warnings:
      - In the while/switch parsing statement, use #ifdef for the body to
        disable it; leave the "case OPT_xxx:" and "break" statements outside
        the ifdef/ifndef.  See ciphers.c for example.
      - If there are multiple options controlled by a single guard, OPT_FOO,
        OPT_BAR, etc., put a an #ifdef around the set, and then do "#else"
        and a series of case labels and a break. See OPENSSL_NO_AES in cms.c
        for example.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      9c3bcfa0
  21. 29 5月, 2015 1 次提交
  22. 23 5月, 2015 1 次提交
  23. 22 5月, 2015 1 次提交
  24. 19 5月, 2015 1 次提交
  25. 16 5月, 2015 1 次提交
    • 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
  26. 15 5月, 2015 1 次提交
  27. 13 5月, 2015 1 次提交