crypto/rsa/rsa_eay.c:559: error: INTEGER_OVERFLOW_L2
  ([0, `rsa->n->top`] - 1):unsigned64 by call to `BN_MONT_CTX_set_locked`.
Showing all 13 steps of the trace


crypto/rsa/rsa_eay.c:480:1: Parameter `rsa->n->top`
478.   	}
479.   
480. > static int RSA_eay_private_decrypt(int flen, const unsigned char *from,
481.   	     unsigned char *to, RSA *rsa, int padding)
482.   	{

crypto/rsa/rsa_eay.c:496:8: Call
494.   	br  = BN_CTX_get(ctx);
495.   	ret = BN_CTX_get(ctx);
496.   	num = BN_num_bytes(rsa->n);
              ^
497.   	buf = OPENSSL_malloc(num);
498.   	if(!f || !ret || !buf)

crypto/bn/bn_lib.c:248:1: Parameter `a->top`
  246.   	}
  247.   
  248. > int BN_num_bits(const BIGNUM *a)
  249.   	{
  250.   	int i = a->top - 1;

crypto/rsa/rsa_eay.c:559:9: Call
557.   
558.   		if (rsa->flags & RSA_FLAG_CACHE_PUBLIC)
559.   			if (!BN_MONT_CTX_set_locked(&rsa->_method_mod_n, CRYPTO_LOCK_RSA, rsa->n, ctx))
               ^
560.   				goto err;
561.   		if (!rsa->meth->bn_mod_exp(ret,f,d,rsa->n,ctx,

crypto/bn/bn_mont.c:536:1: Parameter `mod->top`
  534.   	}
  535.   
  536. > BN_MONT_CTX *BN_MONT_CTX_set_locked(BN_MONT_CTX **pmont, int lock,
  537.   					const BIGNUM *mod, BN_CTX *ctx)
  538.   	{

crypto/bn/bn_mont.c:552:16: Call
  550.   			{
  551.   			ret = BN_MONT_CTX_new();
  552.   			if (ret && !BN_MONT_CTX_set(ret, mod, ctx))
                        ^
  553.   				BN_MONT_CTX_free(ret);
  554.   			else

crypto/bn/bn_mont.c:413:1: Parameter `mod->top`
    411.   	}
    412.   
    413. > int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *mod, BN_CTX *ctx)
    414.   	{
    415.   	int ret = 0;

crypto/bn/bn_mont.c:421:7: Call
    419.   	if((Ri = BN_CTX_get(ctx)) == NULL) goto err;
    420.   	R= &(mont->RR);					/* grab RR as a temp */
    421.   	if (!BN_copy(&(mont->N),mod)) goto err;		/* Set N */
                 ^
    422.   	mont->N.neg = 0;
    423.   

crypto/bn/bn_lib.c:497:1: Parameter `a->dmax`
      495.   	}
      496.   
      497. > BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b)
      498.   	{
      499.   	int i;

crypto/bn/bn_mont.c:434:13: Call
    432.   		tmod.neg=0;
    433.   
    434.   		mont->ri=(BN_num_bits(mod)+(BN_BITS2-1))/BN_BITS2*BN_BITS2;
                       ^
    435.   
    436.   #if defined(OPENSSL_BN_ASM_MONT) && (BN_BITS2<=32)

crypto/bn/bn_lib.c:248:1: <LHS trace>
246.   	}
247.   
248. > int BN_num_bits(const BIGNUM *a)
249.   	{
250.   	int i = a->top - 1;

crypto/bn/bn_lib.c:248:1: Parameter `a->top`
      246.   	}
      247.   
      248. > int BN_num_bits(const BIGNUM *a)
      249.   	{
      250.   	int i = a->top - 1;

crypto/bn/bn_lib.c:250:2: Binary operation: ([0, rsa->n->top] - 1):unsigned64 by call to `BN_MONT_CTX_set_locked` 
      248.   int BN_num_bits(const BIGNUM *a)
      249.   	{
      250.   	int i = a->top - 1;
              ^
      251.   	bn_check_top(a);
      252.   
