On Mon, Feb 02, 2015 at 07:15:12PM +0530, Gayathri Manoj wrote: > unsigned char *ptr, *tmp=NULL; > X509_SIG sig; > .... How is "sig" initialized? > len=i2d_X509_SIG(sig,NULL); > tmp = (unsigned char*) malloc(513); Why 513 and not len? What is the value of len? > ptr=tmp; > i2d_X509_SIG(&sig, &ptr); // here causing problem. -- Viktor.