engines/ccgost/gost_sign.c:67: error: INTEGER_OVERFLOW_L2
  ([0, +oo] - 1):unsigned64 by call to `BN_div`.
Showing all 12 steps of the trace


engines/ccgost/gost_sign.c:55:15: Call
53.   	BIGNUM *k=NULL,*tmp=NULL,*tmp2=NULL;
54.   	DSA_SIG *newsig = DSA_SIG_new();
55.   	BIGNUM *md = hashsum2bn(dgst);
                    ^
56.   	/* check if H(M) mod q is zero */
57.   	BN_CTX *ctx=BN_CTX_new();

engines/ccgost/gost_sign.c:290:9: Call
  288.   		buf[31-i]=dgst[i];
  289.   		}
  290.   	return getbnfrombuf(buf,32);
                 ^
  291.   	}
  292.   

engines/ccgost/gost_sign.c:302:10: Call
    300.   	if (len)
    301.   		{
    302.   		return BN_bin2bn(buf,len,NULL);
                    ^
    303.   		}
    304.   	else

crypto/bn/bn_lib.c:597:1: Parameter `ret->top`
      595.   	}
      596.   
      597. > BIGNUM *BN_bin2bn(const unsigned char *s, size_t len, BIGNUM *ret)
      598.   	{
      599.   	unsigned int i,m;

engines/ccgost/gost_sign.c:67:2: Call
65.   	k = BN_CTX_get(ctx);
66.   	tmp2 = BN_CTX_get(ctx);
67.   	BN_mod(tmp,md,dsa->q,ctx);
       ^
68.   	if (BN_is_zero(tmp))
69.   		{

crypto/bn/bn_div.c:181:1: Parameter `num->top`
  179.   static int BN_div_no_branch(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num,
  180.           const BIGNUM *divisor, BN_CTX *ctx);
  181. > int BN_div(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, const BIGNUM *divisor,
  182.   	   BN_CTX *ctx)
  183.   	{

crypto/bn/bn_div.c:204:10: Call
  202.   	if ((BN_get_flags(num, BN_FLG_CONSTTIME) != 0) || (BN_get_flags(divisor, BN_FLG_CONSTTIME) != 0))
  203.   		{
  204.   		return BN_div_no_branch(dv, rm, num, divisor, ctx);
                  ^
  205.   		}
  206.   

crypto/bn/bn_div.c:426:1: Parameter `num->top`
    424.    * branches that may leak sensitive information.
    425.    */
    426. > static int BN_div_no_branch(BIGNUM *dv, BIGNUM *rm, const BIGNUM *num, 
    427.   	const BIGNUM *divisor, BN_CTX *ctx)
    428.   	{

crypto/bn/bn_div.c:460:8: Call
    458.   	sdiv->neg=0;
    459.   	norm_shift+=BN_BITS2;
    460.   	if (!(BN_lshift(snum,num,norm_shift))) goto err;
                  ^
    461.   	snum->neg=0;
    462.   

crypto/bn/bn_shift.c:132:1: <LHS trace>
130.   	}
131.   
132. > int BN_lshift(BIGNUM *r, const BIGNUM *a, int n)
133.   	{
134.   	int i,nw,lb,rb;

crypto/bn/bn_shift.c:132:1: Parameter `a->top`
      130.   	}
      131.   
      132. > int BN_lshift(BIGNUM *r, const BIGNUM *a, int n)
      133.   	{
      134.   	int i,nw,lb,rb;

crypto/bn/bn_shift.c:150:8: Binary operation: ([0, +oo] - 1):unsigned64 by call to `BN_div` 
      148.   	t[a->top+nw]=0;
      149.   	if (lb == 0)
      150.   		for (i=a->top-1; i>=0; i--)
                    ^
      151.   			t[nw+i]=f[i];
      152.   	else
