crypto/rsa/rsa_eay.c:206: error: BUFFER_OVERRUN_L3
  Offset: [3, +oo] (⇐ [0, +oo] + 3) Size: [0, +oo] by call to `BN_BLINDING_convert`.
Showing all 14 steps of the trace


crypto/rsa/rsa_eay.c:201:6: Call
199.   	if (i <= 0) goto err;
200.   
201.   	if (BN_bin2bn(buf,num,&f) == NULL) goto err;
            ^
202.   
203.   	if ((rsa->flags & RSA_FLAG_BLINDING) && (rsa->blinding == NULL))

crypto/bn/bn_lib.c:595:1: Parameter `*ret->d`
  593.   
  594.   /* ignore negative */
  595. > BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret)
  596.   	{
  597.   	unsigned int i,m;

crypto/rsa/rsa_eay.c:206:8: Call
204.   		RSA_blinding_on(rsa,ctx);
205.   	if (rsa->flags & RSA_FLAG_BLINDING)
206.   		if (!BN_BLINDING_convert(&f,rsa->blinding,ctx)) goto err;
              ^
207.   
208.   	if (	(rsa->p != NULL) &&

crypto/bn/bn_blind.c:115:1: Parameter `*n->d`
  113.   	}
  114.   
  115. > int BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx)
  116.   	{
  117.   	bn_check_top(n);

crypto/bn/bn_blind.c:124:9: Call
  122.   		return(0);
  123.   		}
  124.   	return(BN_mod_mul(n,n,b->A,b->mod,ctx));
                 ^
  125.   	}
  126.   

crypto/bn/bn_exp.c:66:1: Parameter `*a->d`
    64.   
    65.   /* slow but works */
    66. > int BN_mod_mul(BIGNUM *ret, BIGNUM *a, BIGNUM *b, BIGNUM *m, BN_CTX *ctx)
    67.   	{
    68.   	BIGNUM *t;

crypto/bn/bn_exp.c:77:10: Call
    75.   	t= &(ctx->bn[ctx->tos++]);
    76.   	if (a == b)
    77.   		{ if (!BN_sqr(t,a,ctx)) goto err; }
                   ^
    78.   	else
    79.   		{ if (!BN_mul(t,a,b,ctx)) goto err; }

crypto/bn/bn_sqr.c:65:1: Parameter `*a->d`
      63.   /* r must not be a */
      64.   /* I've just gone over this and it is now %20 faster on x86 - eay - 27 Jun 96 */
      65. > int BN_sqr(BIGNUM *r, BIGNUM *a, BN_CTX *ctx)
      66.   	{
      67.   	int max,al;

crypto/bn/bn_sqr.c:112:4: Call
      110.   			{
      111.   			BN_ULONG t[BN_SQR_RECURSIVE_SIZE_NORMAL*2];
      112.   			bn_sqr_normal(rr->d,a->d,al,t);
                ^
      113.   			}
      114.   		else

crypto/bn/bn_sqr.c:146:1: Parameter `*a`
        144.   
        145.   /* tmp must have 2*n words */
        146. > void bn_sqr_normal(BN_ULONG *r, BN_ULONG *a, int n, BN_ULONG *tmp)
        147.   	{
        148.   	int i,j,max;

crypto/bn/bn_sqr.c:177:2: Call
        175.   	/* There will not be a carry */
        176.   
        177.   	bn_sqr_words(tmp,a,n);
                ^
        178.   
        179.   	bn_add_words(r,r,tmp,max);

crypto/bn/bn_asm.c:197:1: <Length trace>
195.   	} 
196.   
197. > void bn_sqr_words(BN_ULONG *r, BN_ULONG *a, int n)
198.           {
199.   	bn_check_num(n);

crypto/bn/bn_asm.c:197:1: Parameter `*a`
          195.   	} 
          196.   
          197. > void bn_sqr_words(BN_ULONG *r, BN_ULONG *a, int n)
          198.           {
          199.   	bn_check_num(n);

crypto/bn/bn_asm.c:212:3: Array access: Offset: [3, +oo] (⇐ [0, +oo] + 3) Size: [0, +oo] by call to `BN_BLINDING_convert` 
          210.   		if (--n == 0) break;
          211.   
          212.   		sqr64(r[6],r[7],a[3]);
                   ^
          213.   		if (--n == 0) break;
          214.   
