1. 17 Mar, 2004 1 commit
    • Geoff Thorpe's avatar
      Variety of belt-tightenings in the bignum code. (Please help test this!) · e042540f
      Geoff Thorpe authored
      - Remove some unnecessary "+1"-like fudges. Sizes should be handled
        exactly, as enlarging size parameters causes needless bloat and may just
        make bugs less likely rather than fixing them: bn_expand() macro,
        bn_expand_internal(), and BN_sqr().
      - Deprecate bn_dup_expand() - it's new since 0.9.7, unused, and not that
        useful.
      - Remove unnecessary zeroing of unused bytes in bn_expand2().
      - Rewrite BN_set_word() - it should be much simpler, the previous
        complexities probably date from old mismatched type issues.
      - Add missing bn_check_top() macros in bn_word.c
      - Improve some degenerate case handling in BN_[add|sub]_word(), add
        comments, and avoid a bignum expansion if an overflow isn't possible.
      e042540f
  2. 16 Mar, 2004 1 commit
  3. 15 Mar, 2004 4 commits
  4. 13 Mar, 2004 3 commits
    • Geoff Thorpe's avatar
      Convert openssl code not to assume the deprecated form of BN_zero(). · b6358c89
      Geoff Thorpe authored
      Remove certain redundant BN_zero() initialisations, because BN_CTX_get(),
      BN_init(), [etc] already initialise to zero.
      
      Correct error checking in bn_sqr.c, and be less wishy-wash about how/why
      the result's 'top' value is set (note also, 'max' is always > 0 at this
      point).
      b6358c89
    • Geoff Thorpe's avatar
      The efforts to eliminate the dual-representation of zero and to ensure · 5d735465
      Geoff Thorpe authored
      bignums are passed in and out of functions and APIs in a consistent form
      has highlighted that zero-valued bignums don't need any allocated word
      data. The use of BN_set_word() to initialise a bignum to zero causes
      needless allocation and gives it a return value that must be checked. This
      change converts BN_zero() to a self-contained macro that has no
      return/expression value and does not cause any expansion of bignum data.
      
      Note, it would be tempting to rewrite the deprecated version as a
      success-valued comma expression, such as;
         #define BN_zero(a) ((a)->top = (a)->neg = 0, 1)
      However, this evaluates 'a' twice and would confuse initialisation loops
      (eg. while(..) { BN_zero(bn++) } ). As such, the deprecated version
      continues to use BN_set_word().
      5d735465
    • Geoff Thorpe's avatar
      Document a change I'd already made, and at the same time, correct the · 9e051bac
      Geoff Thorpe authored
      change to work properly; BN_zero() should set 'neg' to zero as well as
      'top' to match the behaviour of BN_new().
      9e051bac
  5. 12 Mar, 2004 1 commit
    • Andy Polyakov's avatar
      IRIX 6.x shared build fix-up. · 30fbcaa2
      Andy Polyakov authored
      For reference. Note that both cc and gcc support -Wl flag, but we can't
      use -Wl,-[not]all with both drivers, because cc rearranges options
      passed through -Wl. We can't use -Wl,-all,libcrypto.a,-notall with cc
      either, because it refuses to start with "no input" error.
      30fbcaa2
  6. 10 Mar, 2004 1 commit
  7. 09 Mar, 2004 2 commits
  8. 08 Mar, 2004 2 commits
  9. 06 Mar, 2004 1 commit
  10. 05 Mar, 2004 4 commits
  11. 04 Mar, 2004 2 commits
  12. 02 Mar, 2004 3 commits
  13. 01 Mar, 2004 3 commits
  14. 27 Feb, 2004 2 commits
  15. 26 Feb, 2004 2 commits
  16. 22 Feb, 2004 2 commits
  17. 19 Feb, 2004 1 commit
  18. 10 Feb, 2004 1 commit
  19. 08 Feb, 2004 1 commit
  20. 07 Feb, 2004 1 commit
  21. 01 Feb, 2004 1 commit
  22. 30 Jan, 2004 1 commit