1. 26 5月, 2023 1 次提交
  2. 12 4月, 2023 2 次提交
  3. 10 8月, 2021 1 次提交
  4. 27 2月, 2020 1 次提交
  5. 28 9月, 2019 2 次提交
    • D
      Reorganize local header files · b5acbf91
      Dr. Matthias St. Pierre 提交于
      Apart from public and internal header files, there is a third type called
      local header files, which are located next to source files in the source
      directory. Currently, they have different suffixes like
      
        '*_lcl.h', '*_local.h', or '*_int.h'
      
      This commit changes the different suffixes to '*_local.h' uniformly.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9681)
      b5acbf91
    • D
      Reorganize private crypto header files · 0c994d54
      Dr. Matthias St. Pierre 提交于
      Currently, there are two different directories which contain internal
      header files of libcrypto which are meant to be shared internally:
      
      While header files in 'include/internal' are intended to be shared
      between libcrypto and libssl, the files in 'crypto/include/internal'
      are intended to be shared inside libcrypto only.
      
      To make things complicated, the include search path is set up in such
      a way that the directive #include "internal/file.h" could refer to
      a file in either of these two directoroes. This makes it necessary
      in some cases to add a '_int.h' suffix to some files to resolve this
      ambiguity:
      
        #include "internal/file.h"      # located in 'include/internal'
        #include "internal/file_int.h"  # located in 'crypto/include/internal'
      
      This commit moves the private crypto headers from
      
        'crypto/include/internal'  to  'include/crypto'
      
      As a result, the include directives become unambiguous
      
        #include "internal/file.h"       # located in 'include/internal'
        #include "crypto/file.h"         # located in 'include/crypto'
      
      hence the superfluous '_int.h' suffixes can be stripped.
      
      The files 'store_int.h' and 'store.h' need to be treated specially;
      they are joined into a single file.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/9681)
      0c994d54
  6. 17 4月, 2018 1 次提交
  7. 13 4月, 2018 2 次提交
    • M
      Add support for the SRP base64 alphabet · 3fd59700
      Matt Caswell 提交于
      Historically we used to implement standalone base64 code for SRP. This
      was replaced by commit 3d3f21aa with the standard base64 processing code.
      
      However, the SRP base64 code was designed to be compatible with other SRP
      libraries (notably libsrp, but also others) that use a variant of standard
      base64. Specifically a different alphabet is used and no padding '='
      characters are used. Instead 0 padding is added to the front of the string.
      By changing to standard base64 we change the behaviour of the API which may
      impact interoperability. It also means that SRP verifier files created prior
      to 1.1.1 would not be readable in 1.1.1 and vice versa.
      
      Instead we expand our standard base64 processing with the capability to be
      able to read and generate the SRP base64 variant.
      Reviewed-by: NAndy Polyakov <appro@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/5925)
      3fd59700
    • M
      Change SRP functions to use EVP_EncodeUpdate/EVP_DecodeUpdate functions · c0804614
      Matt Caswell 提交于
      Previously they were using EVP_EncodeBlock/EVP_DecodeBlock. These are low
      level functions that do not handle padding characters. This was causing
      the SRP code to fail. One side effect of using EVP_EncodeUpdate is that
      it inserts newlines which is not what we need in SRP so we add a flag to
      avoid that.
      Reviewed-by: NAndy Polyakov <appro@openssl.org>
      (Merged from https://github.com/openssl/openssl/pull/5925)
      c0804614
  8. 18 10月, 2017 1 次提交
  9. 09 10月, 2017 1 次提交
  10. 25 7月, 2016 1 次提交
  11. 28 6月, 2016 1 次提交
  12. 16 6月, 2016 1 次提交
  13. 18 5月, 2016 1 次提交
  14. 03 5月, 2016 2 次提交
    • M
      Ensure EVP_EncodeUpdate handles an output length that is too long · 2bd5d70c
      Matt Caswell 提交于
      With the EVP_EncodeUpdate function it is the caller's responsibility to
      determine how big the output buffer should be. The function writes the
      amount actually used to |*outl|. However this could go negative with a
      sufficiently large value for |inl|. We add a check for this error
      condition.
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      2bd5d70c
    • M
      Avoid overflow in EVP_EncodeUpdate · ee1e3cac
      Matt Caswell 提交于
      An overflow can occur in the EVP_EncodeUpdate function which is used for
      Base64 encoding of binary data. If an attacker is able to supply very large
      amounts of input data then a length check can overflow resulting in a heap
      corruption. Due to the very large amounts of data involved this will most
      likely result in a crash.
      
      Internally to OpenSSL the EVP_EncodeUpdate function is primarly used by the
      PEM_write_bio* family of functions. These are mainly used within the
      OpenSSL command line applications, so any application which processes
      data from an untrusted source and outputs it as a PEM file should be
      considered vulnerable to this issue.
      
      User applications that call these APIs directly with large amounts of
      untrusted data may also be vulnerable.
      
      Issue reported by Guido Vranken.
      
      CVE-2016-2105
      Reviewed-by: NRichard Levitte <levitte@openssl.org>
      ee1e3cac
  15. 09 2月, 2016 1 次提交
  16. 27 1月, 2016 1 次提交
    • R
      Remove /* foo.c */ comments · 34980760
      Rich Salz 提交于
      This was done by the following
              find . -name '*.[ch]' | /tmp/pl
      where /tmp/pl is the following three-line script:
              print unless $. == 1 && m@/\* .*\.[ch] \*/@;
              close ARGV if eof; # Close file to reset $.
      
      And then some hand-editing of other files.
      Reviewed-by: NViktor Dukhovni <viktor@openssl.org>
      34980760
  17. 11 12月, 2015 1 次提交
  18. 19 9月, 2015 1 次提交
  19. 18 9月, 2015 2 次提交
  20. 14 5月, 2015 1 次提交
  21. 01 5月, 2015 1 次提交
  22. 24 1月, 2015 1 次提交
    • R
      ifdef cleanup, part 4a: '#ifdef undef' · a2b18e65
      Rich Salz 提交于
      This removes all code surrounded by '#ifdef undef'
      One case is left: memmove() replaced by open-coded for loop,
      in crypto/stack/stack.c  That needs further review.
      
      Also removed a couple of instances of /* dead code */ if I saw them
      while doing the main removal.
      Reviewed-by: NMatt Caswell <matt@openssl.org>
      a2b18e65
  23. 22 1月, 2015 1 次提交
  24. 31 12月, 2014 1 次提交
  25. 07 5月, 2014 1 次提交
  26. 06 9月, 2013 1 次提交
  27. 12 6月, 2010 1 次提交
  28. 12 11月, 2008 1 次提交
  29. 02 11月, 2008 1 次提交
  30. 13 10月, 2007 1 次提交
  31. 21 6月, 2005 1 次提交
  32. 04 4月, 2005 1 次提交
  33. 16 3月, 2004 1 次提交
  34. 30 10月, 2003 1 次提交
    • G
      A general spring-cleaning (in autumn) to fix up signed/unsigned warnings. · 27545970
      Geoff Thorpe 提交于
      I have tried to convert 'len' type variable declarations to unsigned as a
      means to address these warnings when appropriate, but when in doubt I have
      used casts in the comparisons instead. The better solution (that would get
      us all lynched by API users) would be to go through and convert all the
      function prototypes and structure definitions to use unsigned variables
      except when signed is necessary. The proliferation of (signed) "int" for
      strictly non-negative uses is unfortunate.
      27545970
  35. 13 11月, 2002 1 次提交