crypto/dh/dh_check.c:109: error: BUFFER_OVERRUN_L1
  Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: 4 by call to `BN_rshift1`.
Showing all 11 steps of the trace


crypto/dh/dh_check.c:83:4: Call
81.   	ctx=BN_CTX_new();
82.   	if (ctx == NULL) goto err;
83.   	q=BN_new();
         ^
84.   	if (q == NULL) goto err;
85.   

crypto/bn/bn_lib.c:300:2: Assignment
  298.   		}
  299.   	ret->flags=BN_FLG_MALLOCED;
  300.   	ret->top=0;
          ^
  301.   	ret->neg=0;
  302.   	ret->max=0;

crypto/dh/dh_check.c:109:8: Call
107.   	else
108.   		{
109.   		if (!BN_rshift1(q,dh->p)) goto err;
              ^
110.   		if (!BN_is_prime(q,BN_prime_checks,NULL,ctx,NULL))
111.   			*ret|=DH_CHECK_P_NOT_STRONG_PRIME;

crypto/bn/bn_shift.c:95:1: Parameter `r->top`
  93.   	}
  94.   
  95. > int BN_rshift1(BIGNUM *r, BIGNUM *a)
  96.   	{
  97.   	BN_ULONG *ap,*rp,t,c;

crypto/bn/bn_shift.c:102:3: Call
  100.   	if (BN_is_zero(a))
  101.   		{
  102.   		BN_zero(r);
           ^
  103.   		return(1);
  104.   		}

crypto/bn/bn_lib.c:567:1: Parameter `a->top`
    565.   	}
    566.   
    567. > int BN_set_word(BIGNUM *a, BN_ULONG w)
    568.   	{
    569.   	int i,n;

crypto/bn/bn_lib.c:570:6: Call
    568.   	{
    569.   	int i,n;
    570.   	if (bn_expand(a,sizeof(BN_ULONG)*8) == NULL) return(0);
                ^
    571.   
    572.   	n=sizeof(BN_ULONG)/BN_BYTES;

crypto/bn/bn_lib.c:344:1: <Length trace>
342.   	}
343.   
344. > BIGNUM *bn_expand2(BIGNUM *b, int words)
345.   	{
346.   	BN_ULONG *A,*a;

crypto/bn/bn_lib.c:344:1: Parameter `b->top`
      342.   	}
      343.   
      344. > BIGNUM *bn_expand2(BIGNUM *b, int words)
      345.   	{
      346.   	BN_ULONG *A,*a;

crypto/bn/bn_lib.c:466:3: Assignment
      464.   		/* Now need to zero any data between b->top and b->max */
      465.   
      466.   		A= &(b->d[b->top]);
               ^
      467.   		for (i=(b->max - b->top)>>3; i>0; i--,A+=8)
      468.   			{

crypto/bn/bn_lib.c:470:28: Array access: Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: 4 by call to `BN_rshift1` 
      468.   			{
      469.   			A[0]=0; A[1]=0; A[2]=0; A[3]=0;
      470.   			A[4]=0; A[5]=0; A[6]=0; A[7]=0;
                                        ^
      471.   			}
      472.   		for (i=(b->max - b->top)&7; i>0; i--,A++)
