Add support for the noCheck OCSP extension. This is
[openssl.git] / crypto / x509v3 / v3_ia5.c
index 3446c5cd6a60442999cbbcf2b08f91503b4ff6a6..f3bba382693176d066656a7f95ad28f371f164ef 100644 (file)
@@ -63,7 +63,6 @@
 #include <openssl/conf.h>
 #include <openssl/x509v3.h>
 
-static ASN1_IA5STRING *ia5string_new(void);
 static char *i2s_ASN1_IA5STRING(X509V3_EXT_METHOD *method, ASN1_IA5STRING *ia5);
 static ASN1_IA5STRING *s2i_ASN1_IA5STRING(X509V3_EXT_METHOD *method, X509V3_CTX *ctx, char *str);
 X509V3_EXT_METHOD v3_ns_ia5_list[] = { 
@@ -78,17 +77,12 @@ EXT_END
 };
 
 
-static ASN1_IA5STRING *ia5string_new(void)
-{
-       return ASN1_IA5STRING_new();
-}
-
 static char *i2s_ASN1_IA5STRING(X509V3_EXT_METHOD *method,
             ASN1_IA5STRING *ia5)
 {
        char *tmp;
        if(!ia5 || !ia5->length) return NULL;
-       tmp = Malloc(ia5->length + 1);
+       tmp = OPENSSL_malloc(ia5->length + 1);
        memcpy(tmp, ia5->data, ia5->length);
        tmp[ia5->length] = 0;
        return tmp;
@@ -102,12 +96,15 @@ static ASN1_IA5STRING *s2i_ASN1_IA5STRING(X509V3_EXT_METHOD *method,
                X509V3err(X509V3_F_S2I_ASN1_IA5STRING,X509V3_R_INVALID_NULL_ARGUMENT);
                return NULL;
        }
-       if(!(ia5 = ASN1_IA5STRING_new())) goto err;
+       if(!(ia5 = M_ASN1_IA5STRING_new())) goto err;
        if(!ASN1_STRING_set((ASN1_STRING *)ia5, (unsigned char*)str,
                            strlen(str))) {
-               ASN1_IA5STRING_free(ia5);
+               M_ASN1_IA5STRING_free(ia5);
                goto err;
        }
+#ifdef CHARSET_EBCDIC
+        ebcdic2ascii(ia5->data, ia5->data, ia5->length);
+#endif /*CHARSET_EBCDIC*/
        return ia5;
        err:
        X509V3err(X509V3_F_S2I_ASN1_IA5STRING,ERR_R_MALLOC_FAILURE);