Skip to content
  1. Mar 17, 2004
    • Geoff Thorpe's avatar
      Note my bignum hijinx in case app maintainers are using CHANGES for their · 7f663ce4
      Geoff Thorpe authored
      porting efforts. Also, add Richard's name to the prior change.
      7f663ce4
    • 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. Mar 16, 2004
  3. Mar 15, 2004
  4. Mar 13, 2004
    • 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. Mar 12, 2004
    • 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. Mar 10, 2004
  7. Mar 09, 2004
  8. Mar 08, 2004
  9. Mar 06, 2004
  10. Mar 05, 2004
  11. Mar 04, 2004
  12. Mar 02, 2004
  13. Mar 01, 2004
  14. Feb 27, 2004
  15. Feb 26, 2004
  16. Feb 22, 2004
  17. Feb 19, 2004
  18. Feb 10, 2004
  19. Feb 08, 2004
  20. Feb 07, 2004
  21. Feb 01, 2004