engines/e_ubsec.c:849: error: INTEGER_OVERFLOW_L2
  ([0, `dsa->p->top`] - 1):unsigned64 by call to `BN_num_bits`.
Showing all 7 steps of the trace


engines/e_ubsec.c:819:1: Parameter `dsa->p->top`
817.   }
818.   
819. > static int ubsec_dsa_verify(const unsigned char *dgst, int dgst_len,
820.                                   DSA_SIG *sig, DSA *dsa)
821.   	{

engines/e_ubsec.c:834:10: Call
832.   	}
833.   
834.   	v_len = BN_num_bits(dsa->p);
                ^
835.   
836.   	d_len = p_UBSEC_ubsec_bytes_to_bits((unsigned char *)dgst, dgst_len);

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;

engines/e_ubsec.c:849:31: Call
847.   	if (p_UBSEC_dsa_verify_ioctl(fd, 0, /* compute hash before signing */
848.   		(unsigned char *)dgst, d_len,
849.   		(unsigned char *)dsa->p->d, BN_num_bits(dsa->p), 
                                     ^
850.   		(unsigned char *)dsa->q->d, BN_num_bits(dsa->q),
851.   		(unsigned char *)dsa->g->d, BN_num_bits(dsa->g),

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->p->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.   
