Some 'const's for BNs.
authorBodo Möller <bodo@openssl.org>
Thu, 3 Feb 2000 01:26:07 +0000 (01:26 +0000)
committerBodo Möller <bodo@openssl.org>
Thu, 3 Feb 2000 01:26:07 +0000 (01:26 +0000)
crypto/bn/bn.h
crypto/bn/bn_prime.c
crypto/bn/bn_word.c
doc/crypto/BN_add_word.pod
doc/crypto/bn.pod

index 63fb9cc..417f370 100644 (file)
@@ -356,7 +356,7 @@ int BN_div(BIGNUM *dv, BIGNUM *rem, const BIGNUM *m, const BIGNUM *d,
               BN_CTX *ctx);
 int    BN_mul(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx);
 int    BN_sqr(BIGNUM *r, BIGNUM *a,BN_CTX *ctx);
-BN_ULONG BN_mod_word(BIGNUM *a, BN_ULONG w);
+BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w);
 BN_ULONG BN_div_word(BIGNUM *a, BN_ULONG w);
 int    BN_mul_word(BIGNUM *a, BN_ULONG w);
 int    BN_add_word(BIGNUM *a, BN_ULONG w);
index efc053e..0f07c22 100644 (file)
  */
 #include "bn_prime.h"
 
-static int witness(BIGNUM *w, BIGNUM *a, BIGNUM *a1, BIGNUM *a1_odd, int k,
-       BN_CTX *ctx, BN_MONT_CTX *mont);
+static int witness(BIGNUM *w, const BIGNUM *a, const BIGNUM *a1,
+       const BIGNUM *a1_odd, int k, BN_CTX *ctx, BN_MONT_CTX *mont);
 static int probable_prime(BIGNUM *rnd, int bits);
 static int probable_prime_dh(BIGNUM *rnd, int bits,
        BIGNUM *add, BIGNUM *rem, BN_CTX *ctx);
@@ -223,7 +223,7 @@ int BN_is_prime_fasttest(const BIGNUM *a, int checks,
        BN_CTX *ctx = NULL;
        BIGNUM *A1, *A1_odd, *check; /* taken from ctx */
        BN_MONT_CTX *mont = NULL;
-       BIGNUM *A;
+       const BIGNUM *A;
 
        if (checks == BN_prime_checks)
                checks = BN_prime_checks_for_size(BN_num_bits(a));
@@ -247,9 +247,10 @@ int BN_is_prime_fasttest(const BIGNUM *a, int checks,
        /* A := abs(a) */
        if (a->neg)
                {
-               A = &(ctx->bn[ctx->tos++]);
-               BN_copy(A, a);
-               A->neg = 0;
+               BIGNUM *t = &(ctx->bn[ctx->tos++]);
+               BN_copy(t, a);
+               t->neg = 0;
+               A = t;
                }
        else
                A = a;
@@ -318,8 +319,8 @@ err:
        return(ret);
        }
 
-static int witness(BIGNUM *w, BIGNUM *a, BIGNUM *a1, BIGNUM *a1_odd, int k,
-       BN_CTX *ctx, BN_MONT_CTX *mont)
+static int witness(BIGNUM *w, const BIGNUM *a, const BIGNUM *a1,
+       const BIGNUM *a1_odd, int k, BN_CTX *ctx, BN_MONT_CTX *mont)
        {
        if (!BN_mod_exp_mont(w, w, a1_odd, a, ctx, mont)) /* w := w^a1_odd mod a */
                return -1;
index c0cfbc6..73157a7 100644 (file)
@@ -60,7 +60,7 @@
 #include "cryptlib.h"
 #include "bn_lcl.h"
 
-BN_ULONG BN_mod_word(BIGNUM *a, BN_ULONG w)
+BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w)
        {
 #ifndef BN_LLONG
        BN_ULONG ret=0;
index ee02e98..1c3c629 100644 (file)
@@ -17,7 +17,7 @@ functions on BIGNUMs with integers
 
  BN_ULONG BN_div_word(BIGNUM *a, BN_ULONG w);
 
- BN_ULONG BN_mod_word(BIGNUM *a, BN_ULONG w);
+ BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w);
 
 =head1 DESCRIPTION
 
index 823561f..c1cb2f6 100644 (file)
@@ -43,7 +43,7 @@ bn - Multiprecision integer arithmetics
  int BN_sub_word(BIGNUM *a, BN_ULONG w);
  int BN_mul_word(BIGNUM *a, BN_ULONG w);
  BN_ULONG BN_div_word(BIGNUM *a, BN_ULONG w);
- BN_ULONG BN_mod_word(BIGNUM *a, BN_ULONG w);
+ BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w);
 
  int BN_cmp(BIGNUM *a, BIGNUM *b);
  int BN_ucmp(BIGNUM *a, BIGNUM *b);
@@ -63,7 +63,7 @@ bn - Multiprecision integer arithmetics
 
  BIGNUM *BN_generate_prime(BIGNUM *ret,int bits,int safe,BIGNUM *add,
          BIGNUM *rem,void (*callback)(int,int,void *),void *cb_arg);
- int BN_is_prime(BIGNUM *p,int nchecks,void (*callback)(int,int,void *),
+ int BN_is_prime(const BIGNUM *p,int nchecks,void (*callback)(int,int,void *),
          BN_CTX *ctx,void *cb_arg);
 
  int BN_set_bit(BIGNUM *a, int n);