Fix for d2i_ASN1_bytes and stop PKCS#7 routines crashing is signed message
contains no certificates. Also fix typo in RANLIB changes.
This commit is contained in:
parent
f846335657
commit
393f2c651d
10
CHANGES
10
CHANGES
@ -4,6 +4,16 @@
|
||||
|
||||
Changes between 0.9.4 and 0.9.5 [xx XXX 1999]
|
||||
|
||||
*) Fix so PKCS7_dataVerify() doesn't crash if no certificates are contained
|
||||
in the message. This was handled by allowing
|
||||
X509_find_by_issuer_and_serial() to tolerate a NULL passed to it.
|
||||
[Steve Henson, reported by Sampo Kellomaki <sampo@mail.neuronio.pt>]
|
||||
|
||||
*) Fix for bug in d2i_ASN1_bytes(): other ASN1 functions add an extra null
|
||||
to the end of the strings whereas this didn't. This would cause problems
|
||||
if strings read with d2i_ASN1_bytes() were later modified.
|
||||
[Steve Henson, reported by Arne Ansper <arne@ats.cyber.ee>]
|
||||
|
||||
*) Fix for base64 decode bug. When a base64 bio reads only one line of
|
||||
data and it contains EOF it will end up returning an error. This is
|
||||
caused by input 46 bytes long. The cause is due to the way base64
|
||||
|
@ -342,7 +342,7 @@ install: all
|
||||
@for i in $(DIRS) ;\
|
||||
do \
|
||||
(cd $$i; echo "installing $$i..."; \
|
||||
$(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALL_PREFIX='${INSTALL_PREFIX}' INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' EX_LIBS='${EX_LIBS}' SDIRS='${SDIRS}' RANLIB='${RANLIB} install ); \
|
||||
$(MAKE) CC='${CC}' CFLAG='${CFLAG}' INSTALL_PREFIX='${INSTALL_PREFIX}' INSTALLTOP='${INSTALLTOP}' OPENSSLDIR='${OPENSSLDIR}' EX_LIBS='${EX_LIBS}' SDIRS='${SDIRS}' RANLIB='${RANLIB}' install ); \
|
||||
done
|
||||
@for i in $(LIBS) ;\
|
||||
do \
|
||||
|
@ -219,7 +219,7 @@ ASN1_STRING *d2i_ASN1_bytes(ASN1_STRING **a, unsigned char **pp, long length,
|
||||
if ((ret->length < len) || (ret->data == NULL))
|
||||
{
|
||||
if (ret->data != NULL) Free((char *)ret->data);
|
||||
s=(unsigned char *)Malloc((int)len);
|
||||
s=(unsigned char *)Malloc((int)len + 1);
|
||||
if (s == NULL)
|
||||
{
|
||||
i=ERR_R_MALLOC_FAILURE;
|
||||
@ -229,6 +229,7 @@ ASN1_STRING *d2i_ASN1_bytes(ASN1_STRING **a, unsigned char **pp, long length,
|
||||
else
|
||||
s=ret->data;
|
||||
memcpy(s,p,(int)len);
|
||||
s[len] = '\0';
|
||||
p+=len;
|
||||
}
|
||||
else
|
||||
|
@ -207,6 +207,8 @@ X509 *X509_find_by_issuer_and_serial(STACK_OF(X509) *sk, X509_NAME *name,
|
||||
X509_CINF cinf;
|
||||
X509 x,*x509=NULL;
|
||||
|
||||
if(!sk) return NULL;
|
||||
|
||||
x.cert_info= &cinf;
|
||||
cinf.serialNumber=serial;
|
||||
cinf.issuer=name;
|
||||
|
Loading…
x
Reference in New Issue
Block a user