X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=crypto%2Fasn1%2Fd2i_s_pu.c;h=e0adaa0393677ed65fca4a6018b2f9d2b3b88f97;hb=9fd4ee5d7c0925aa4c1c52e33429bdebe868f9e2;hp=4d65cef5a9e1e9659ffe537e00936d66aaa56ba5;hpb=a9be3af5ad4836f7e50f0546311ca90c717b861e;p=oweals%2Fopenssl.git diff --git a/crypto/asn1/d2i_s_pu.c b/crypto/asn1/d2i_s_pu.c index 4d65cef5a9..e0adaa0393 100644 --- a/crypto/asn1/d2i_s_pu.c +++ b/crypto/asn1/d2i_s_pu.c @@ -56,8 +56,9 @@ * [including the GNU Public Licence.] */ -/* Origional version from Steven Schoch */ +/* Original version from Steven Schoch */ +#ifndef NO_DSA #include #include "cryptlib.h" #include @@ -65,6 +66,10 @@ #include #include +#ifdef NEG_PUBKEY_BUG +#define d2i_ASN1_INTEGER d2i_ASN1_UINTEGER +#endif + DSA *d2i_DSAPublicKey(DSA **a, unsigned char **pp, long length) { int i=ASN1_R_PARSING; @@ -102,7 +107,7 @@ DSA *d2i_DSAPublicKey(DSA **a, unsigned char **pp, long length) ret->write_params=1; } - ASN1_INTEGER_free(bs); + M_ASN1_INTEGER_free(bs); bs=NULL; M_ASN1_D2I_Finish_2(a); err_bn: @@ -110,7 +115,7 @@ err_bn: err: ASN1err(ASN1_F_D2I_DSAPUBLICKEY,i); if ((ret != NULL) && ((a == NULL) || (*a != ret))) DSA_free(ret); - if (bs != NULL) ASN1_INTEGER_free(bs); + if (bs != NULL) M_ASN1_INTEGER_free(bs); return(NULL); } - +#endif