crypto/dh/dh_check.c:110: error: BUFFER_OVERRUN_L3
  Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: [0, +oo] by call to `BN_is_prime`.
Showing all 13 steps of the trace


crypto/dh/dh_check.c:105:7: Call
103.   		*ret|=DH_UNABLE_TO_CHECK_GENERATOR;
104.   
105.   	if (!BN_is_prime(dh->p,BN_prime_checks,NULL,ctx,NULL))
             ^
106.   		*ret|=DH_CHECK_P_NOT_PRIME;
107.   	else

crypto/bn/bn_prime.c:154:1: Parameter `a->top`
  152.   	}
  153.   
  154. > int BN_is_prime(BIGNUM *a, int checks, void (*callback)(int,int,char *),
  155.   	     BN_CTX *ctx_passed, char *cb_arg)
  156.   	{

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->d`
  93.   	}
  94.   
  95. > int BN_rshift1(BIGNUM *r, BIGNUM *a)
  96.   	{
  97.   	BN_ULONG *ap,*rp,t,c;

crypto/dh/dh_check.c:110:8: Call
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;
112.   		}

crypto/bn/bn_prime.c:154:1: Parameter `*a->d`
  152.   	}
  153.   
  154. > int BN_is_prime(BIGNUM *a, int checks, void (*callback)(int,int,char *),
  155.   	     BN_CTX *ctx_passed, char *cb_arg)
  156.   	{

crypto/bn/bn_prime.c:175:7: Call
  173.   
  174.   	/* Setup the montgomery structure */
  175.   	if (!BN_MONT_CTX_set(mont,a,ctx2)) goto err;
               ^
  176.   
  177.   	for (i=0; i<checks; i++)

crypto/bn/bn_mont.c:301:1: Parameter `*mod->d`
    299.   	}
    300.   
    301. > int BN_MONT_CTX_set(BN_MONT_CTX *mont, BIGNUM *mod, BN_CTX *ctx)
    302.   	{
    303.   	BIGNUM Ri,*R;

crypto/bn/bn_mont.c:307:2: Call
    305.   	BN_init(&Ri);
    306.   	R= &(mont->RR);					/* grab RR as a temp */
    307.   	BN_copy(&(mont->N),mod);			/* Set N */
            ^
    308.   
    309.   #ifdef BN_RECURSION_MONT

crypto/bn/bn_lib.c:454:1: <Length trace>
452.   	}
453.   
454. > BIGNUM *BN_copy(BIGNUM *a, BIGNUM *b)
455.   	{
456.   	int i;

crypto/bn/bn_lib.c:454:1: Parameter `*b->d`
      452.   	}
      453.   
      454. > BIGNUM *BN_copy(BIGNUM *a, BIGNUM *b)
      455.   	{
      456.   	int i;

crypto/bn/bn_lib.c:466:2: Assignment
      464.   #if 1
      465.   	A=a->d;
      466.   	B=b->d;
              ^
      467.   	for (i=b->top&(~7); i>0; i-=8)
      468.   		{

crypto/bn/bn_lib.c:476:8: Array access: Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: [0, +oo] by call to `BN_is_prime` 
      474.   		A[5]=B[5];
      475.   		A[6]=B[6];
      476.   		A[7]=B[7];
                    ^
      477.   		A+=8;
      478.   		B+=8;
