crypto/bn/bn_exp2.c:74: error: BUFFER_OVERRUN_L3
  Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: [0, +oo] by call to `BN_mod`.
Showing all 15 steps of the trace


crypto/bn/bn_exp2.c:67:3: Call
65.   	if (BN_ucmp(a1,m) >= 0)
66.   		{
67.   		BN_mod(&(val[1][0]),a1,m,ctx);
        ^
68.   		aa1= &(val[1][0]);
69.   		}

crypto/bn/bn_div.c:286:1: Parameter `*rem->d`
  284.   
  285.   /* rem != m */
  286. > int BN_mod(BIGNUM *rem, BIGNUM *m, BIGNUM *d, BN_CTX *ctx)
  287.   	{
  288.   #if 0 /* The old slow way */

crypto/bn/bn_div.c:312:9: Call
  310.   	return(1);
  311.   #else
  312.   	return(BN_div(NULL,rem,m,d,ctx));
                 ^
  313.   #endif
  314.   	}

crypto/bn/bn_div.c:120:1: Parameter `*rm->d`
    118.   #else
    119.   
    120. > int BN_div(BIGNUM *dv, BIGNUM *rm, BIGNUM *num, BIGNUM *divisor,
    121.   	     BN_CTX *ctx)
    122.   	{

crypto/bn/bn_exp2.c:74:3: Call
72.   	if (BN_ucmp(a2,m) >= 0)
73.   		{
74.   		BN_mod(&(val[0][1]),a2,m,ctx);
        ^
75.   		aa2= &(val[0][1]);
76.   		}

crypto/bn/bn_div.c:286:1: Parameter `*rem->d`
  284.   
  285.   /* rem != m */
  286. > int BN_mod(BIGNUM *rem, BIGNUM *m, BIGNUM *d, BN_CTX *ctx)
  287.   	{
  288.   #if 0 /* The old slow way */

crypto/bn/bn_div.c:312:9: Call
  310.   	return(1);
  311.   #else
  312.   	return(BN_div(NULL,rem,m,d,ctx));
                 ^
  313.   #endif
  314.   	}

crypto/bn/bn_div.c:120:1: Parameter `*rm->d`
    118.   #else
    119.   
    120. > int BN_div(BIGNUM *dv, BIGNUM *rm, BIGNUM *num, BIGNUM *divisor,
    121.   	     BN_CTX *ctx)
    122.   	{

crypto/bn/bn_div.c:275:3: Call
    273.   	if (rm != NULL)
    274.   		{
    275.   		BN_rshift(rm,snum,norm_shift);
             ^
    276.   		rm->neg=num->neg;
    277.   		}

crypto/bn/bn_shift.c:156:1: Parameter `*r->d`
      154.   	}
      155.   
      156. > int BN_rshift(BIGNUM *r, BIGNUM *a, int n)
      157.   	{
      158.   	int i,j,nw,lb,rb;

crypto/bn/bn_shift.c:173:7: Call
      171.   		{
      172.   		r->neg=a->neg;
      173.   		if (bn_wexpand(r,a->top-nw+1) == NULL) return(0);
                   ^
      174.   		}
      175.   

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

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

crypto/bn/bn_lib.c:367:3: Assignment
        365.   memset(A,0x5c,sizeof(BN_ULONG)*(words+1));
        366.   #if 1
        367.   		B=b->d;
                 ^
        368.   		/* Check if the previous number needs to be copied */
        369.   		if (B != NULL)

crypto/bn/bn_lib.c:377:43: Array access: Offset: [7, +oo] (⇐ [0, +oo] + 7) Size: [0, +oo] by call to `BN_mod` 
        375.   				{
        376.   				A[0]=B[0]; A[1]=B[1]; A[2]=B[2]; A[3]=B[3];
        377.   				A[4]=B[4]; A[5]=B[5]; A[6]=B[6]; A[7]=B[7];
                                                         ^
        378.   				A+=8;
        379.   				B+=8;
