Clean-up GAS targets: get rid of "cpp" stuff and replace it with "purified"
[openssl.git] / crypto / bn / bn_kron.c
index 0dd8a194cbe3cb11ed939e734a60475d3274e950..740359b7520de3609e825801d96a5f41df81ea98 100644 (file)
@@ -1,5 +1,3 @@
-/* totally untested */
-
 /* crypto/bn/bn_kron.c */
 /* ====================================================================
  * Copyright (c) 1998-2000 The OpenSSL Project.  All rights reserved.
@@ -55,9 +53,9 @@
  *
  */
 
+#include "cryptlib.h"
 #include "bn_lcl.h"
 
-
 /* least significant word */
 #define BN_lsw(n) (((n)->top == 0) ? (BN_ULONG) 0 : (n)->d[0])
 
@@ -76,6 +74,9 @@ int BN_kronecker(const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
         */
        static const int tab[8] = {0, 1, 0, -1, 0, -1, 0, 1};
 
+       bn_check_top(a);
+       bn_check_top(b);
+
        BN_CTX_start(ctx);
        A = BN_CTX_get(ctx);
        B = BN_CTX_get(ctx);
@@ -174,8 +175,7 @@ int BN_kronecker(const BIGNUM *a, const BIGNUM *b, BN_CTX *ctx)
                tmp = A; A = B; B = tmp;
                tmp->neg = 0;
                }
-       
- end:
+end:
        BN_CTX_end(ctx);
        if (err)
                return -2;