logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

i2s_ASN1_IA5STRING, s2i_ASN1_IA5STRING, i2s_ASN1_INTEGER, s2i_ASN1_INTEGER, i2s_ASN1_OCTET_STRING,

Description

       These functions convert OpenSSL objects to and from their ASN.1/string representation. This function is
       used for X509v3 extensions.

History

i2s_ASN1_UTF8STRING() and s2i_ASN1_UTF8STRING() were made public in OpenSSL 3.0.

Name

       i2s_ASN1_IA5STRING, s2i_ASN1_IA5STRING, i2s_ASN1_INTEGER, s2i_ASN1_INTEGER, i2s_ASN1_OCTET_STRING,
       s2i_ASN1_OCTET_STRING, i2s_ASN1_ENUMERATED, i2s_ASN1_ENUMERATED_TABLE, i2s_ASN1_UTF8STRING,
       s2i_ASN1_UTF8STRING - convert objects from/to ASN.1/string representation

Notes

       The letters i and s in i2s and s2i stand for "internal" (that is, an internal C structure) and string
       respectively.  So i2s_ASN1_IA5STRING() converts from internal to string.

       It is the caller's responsibility to free the returned string.  In the i2s_ASN1_IA5STRING() function the
       string is copied and the ownership of the original string remains with the caller.

Return Values

i2s_ASN1_IA5STRING() returns the pointer to a IA5 string or NULL if an error occurs.

       s2i_ASN1_IA5STRING() return a valid ASN1_IA5STRING structure or NULL if an error occurs.

       i2s_ASN1_INTEGER() return a valid string or NULL if an error occurs.

       s2i_ASN1_INTEGER() returns the pointer to a ASN1_INTEGER structure or NULL if an error occurs.

       i2s_ASN1_OCTET_STRING() returns the pointer to a OCTET_STRING string or NULL if an error occurs.

       s2i_ASN1_OCTET_STRING() return a valid ASN1_OCTET_STRING structure or NULL if an error occurs.

       i2s_ASN1_ENUMERATED() return a valid string or NULL if an error occurs.

       s2i_ASN1_ENUMERATED() returns the pointer to a ASN1_ENUMERATED structure or NULL if an error occurs.

       s2i_ASN1_UTF8STRING() return a valid ASN1_UTF8STRING structure or NULL if an error occurs.

       i2s_ASN1_UTF8STRING() returns the pointer to a UTF-8 string or NULL if an error occurs.

Synopsis

        #include <openssl/x509v3.h>

        char *i2s_ASN1_IA5STRING(X509V3_EXT_METHOD *method, ASN1_IA5STRING *ia5);
        ASN1_IA5STRING *s2i_ASN1_IA5STRING(X509V3_EXT_METHOD *method,
                                          X509V3_CTX *ctx, const char *str);
        char *i2s_ASN1_INTEGER(X509V3_EXT_METHOD *method, const ASN1_INTEGER *a);
        ASN1_INTEGER *s2i_ASN1_INTEGER(X509V3_EXT_METHOD *method, const char *value);
        char *i2s_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method,
                                   const ASN1_OCTET_STRING *oct);
        ASN1_OCTET_STRING *s2i_ASN1_OCTET_STRING(X509V3_EXT_METHOD *method,
                                                X509V3_CTX *ctx, const char *str);
        char *i2s_ASN1_ENUMERATED(X509V3_EXT_METHOD *method, const ASN1_ENUMERATED *a);
        char *i2s_ASN1_ENUMERATED_TABLE(X509V3_EXT_METHOD *method,
                                       const ASN1_ENUMERATED *e);

        char *i2s_ASN1_UTF8STRING(X509V3_EXT_METHOD *method,
                                  ASN1_UTF8STRING *utf8);
        ASN1_UTF8STRING *s2i_ASN1_UTF8STRING(X509V3_EXT_METHOD *method,
                                             X509V3_CTX *ctx, const char *str);

See Also