apps/pkcs8.c:235: error: BUFFER_OVERRUN_L3
  Offset: [1, +oo] Size: [0, +oo] by call to `PKCS12_decrypt_d2i`.
Showing all 18 steps of the trace


apps/pkcs8.c:221:9: Call
219.   	} else {
220.   		if(informat == FORMAT_PEM) 
221.   			p8 = PEM_read_bio_PKCS8(in, NULL, NULL);
               ^
222.   		else if(informat == FORMAT_ASN1)
223.   			p8 = d2i_PKCS8_bio(in, NULL);

crypto/pem/pem_all.c:79:1: Call
  77.   					PEM_STRING_X509, NETSCAPE_CERT_SEQUENCE)
  78.   
  79. > IMPLEMENT_PEM_rw(PKCS8, X509_SIG, PEM_STRING_PKCS8, X509_SIG)
  80.   IMPLEMENT_PEM_rw(PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO, PEM_STRING_PKCS8INF,
  81.   							 PKCS8_PRIV_KEY_INFO)

crypto/pem/pem_lib.c:212:10: Call
    210.   		else if (strcmp(nm,PEM_STRING_PKCS8INF) == 0) {
    211.   			PKCS8_PRIV_KEY_INFO *p8inf;
    212.   			p8inf=d2i_PKCS8_PRIV_KEY_INFO(
                    ^
    213.   					(PKCS8_PRIV_KEY_INFO **) x, &p, len);
    214.   			ret = (char *)EVP_PKCS82PKEY(p8inf);

crypto/asn1/p8_pkey.c:99:1: Parameter `(*a)->version->length`
      97.   }
      98.   
      99. > PKCS8_PRIV_KEY_INFO *d2i_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO **a,
      100.   	     unsigned char **pp, long length)
      101.   {

apps/pkcs8.c:235:11: Call
233.   		}
234.   		EVP_read_pw_string(pass, 50, "Enter Password:", 0);
235.   		p8inf = M_PKCS8_decrypt(p8, pass, strlen(pass));
                 ^
236.   		X509_SIG_free(p8);
237.   	}

crypto/pkcs12/p12_decr.c:110:1: Parameter `oct->length`
  108.    */
  109.   
  110. > char * PKCS12_decrypt_d2i (X509_ALGOR *algor, char * (*d2i)(),
  111.   	     void (*free_func)(), const char *pass, int passlen,
  112.   	     ASN1_OCTET_STRING *oct, int seq)

crypto/pkcs12/p12_decr.c:118:7: Call
  116.   	int outlen;
  117.   
  118.   	if (!PKCS12_pbe_crypt (algor, pass, passlen, oct->data, oct->length,
               ^
  119.   			       &out, &outlen, 0)) {
  120.   		PKCS12err(PKCS12_F_PKCS12_DECRYPT_D2I,PKCS12_R_PKCS12_PBE_CRYPT_ERROR);

crypto/pkcs12/p12_decr.c:71:1: Parameter `**data`
    69.    */
    70.   
    71. > unsigned char * PKCS12_pbe_crypt (X509_ALGOR *algor, const char *pass,
    72.   	     int passlen, unsigned char *in, int inlen, unsigned char **data,
    73.   	     int *datalen, int en_de)

crypto/pkcs12/p12_decr.c:123:2: Assignment
  121.   		return NULL;
  122.   	}
  123.   	p = out;
          ^
  124.   #ifdef DEBUG_DECRYPT
  125.   	{

crypto/pkcs12/p12_decr.c:136:30: Call
  134.   	}
  135.   #endif
  136.   	if (seq & 1) ret = (char *) d2i_ASN1_SET(NULL, &p, outlen, d2i,
                                      ^
  137.   				free_func, V_ASN1_SEQUENCE, V_ASN1_UNIVERSAL);
  138.   	else ret = d2i(NULL, &p, outlen);

crypto/asn1/a_set.c:154:1: Parameter `**pp`
    152.           }
    153.   
    154. > STACK *d2i_ASN1_SET(STACK **a, unsigned char **pp, long length,
    155.   	     char *(*func)(), void (*free_func)(), int ex_tag, int ex_class)
    156.   	{

crypto/asn1/a_set.c:165:2: Assignment
    163.   		ret=(*a);
    164.   
    165.   	c.p= *pp;
            ^
    166.   	c.max=(length == 0)?0:(c.p+length);
    167.   

crypto/asn1/a_set.c:168:8: Call
    166.   	c.max=(length == 0)?0:(c.p+length);
    167.   
    168.   	c.inf=ASN1_get_object(&c.p,&c.slen,&c.tag,&c.xclass,c.max-c.p);
                  ^
    169.   	if (c.inf & 0x80) goto err;
    170.   	if (ex_class != c.xclass)

crypto/asn1/asn1_lib.c:83:1: <Length trace>
81.   
82.   
83. > int ASN1_get_object(unsigned char **pp, long *plength, int *ptag, int *pclass,
84.   	     long omax)
85.   	{

crypto/asn1/asn1_lib.c:83:1: Parameter `**pp`
      81.   
      82.   
      83. > int ASN1_get_object(unsigned char **pp, long *plength, int *ptag, int *pclass,
      84.   	     long omax)
      85.   	{

crypto/asn1/asn1_lib.c:88:2: Assignment
      86.   	int i,ret;
      87.   	long l;
      88.   	unsigned char *p= *pp;
             ^
      89.   	int tag,xclass,inf;
      90.   	long max=omax;

crypto/asn1/asn1_lib.c:98:3: Assignment
      96.   	if (i == V_ASN1_PRIMITIVE_TAG)
      97.   		{		/* high-tag */
      98.   		p++;
               ^
      99.   		if (--max == 0) goto err;
      100.   		l=0;

crypto/asn1/asn1_lib.c:101:10: Array access: Offset: [1, +oo] Size: [0, +oo] by call to `PKCS12_decrypt_d2i` 
      99.   		if (--max == 0) goto err;
      100.   		l=0;
      101.   		while (*p&0x80)
                      ^
      102.   			{
      103.   			l<<=7L;
