crypto/dsa/dsa_ossl.c:180: error: INTEGER_OVERFLOW_L2
  ([0, `dsa->q->top`] - 1):unsigned64 by call to `BN_num_bits`.
Showing all 7 steps of the trace


crypto/dsa/dsa_ossl.c:131:1: Parameter `dsa->q->top`
129.   }
130.   
131. > static DSA_SIG *dsa_do_sign(const unsigned char *dgst, int dlen, DSA *dsa)
132.   	{
133.   	BIGNUM *kinv=NULL,*r=NULL,*s=NULL;

crypto/dsa/dsa_ossl.c:176:13: Call
174.   
175.   	
176.   	if (dlen > BN_num_bytes(dsa->q))
                   ^
177.   		/* if the digest length is greater than the size of q use the
178.   		 * BN_num_bits(dsa->q) leftmost bits of the digest, see

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/dsa/dsa_ossl.c:180:10: Call
178.   		 * BN_num_bits(dsa->q) leftmost bits of the digest, see
179.   		 * fips 186-3, 4.2 */
180.   		dlen = BN_num_bytes(dsa->q);
                ^
181.   	if (BN_bin2bn(dgst,dlen,&m) == NULL)
182.   		goto err;

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, dsa->q->top] - 1):unsigned64 by call to `BN_num_bits` 
  248.   int BN_num_bits(const BIGNUM *a)
  249.   	{
  250.   	int i = a->top - 1;
          ^
  251.   	bn_check_top(a);
  252.   
