Sortix nightly manual
This manual documents Sortix nightly, a development build that has not been officially released. You can instead view this document in the latest official manual.
NAME
d2i_ASN1_OCTET_STRING, i2d_ASN1_OCTET_STRING, d2i_ASN1_BIT_STRING, i2d_ASN1_BIT_STRING, d2i_ASN1_INTEGER, i2d_ASN1_INTEGER, d2i_ASN1_UINTEGER, d2i_ASN1_ENUMERATED, i2d_ASN1_ENUMERATED, d2i_ASN1_UTF8STRING, i2d_ASN1_UTF8STRING, d2i_ASN1_IA5STRING, i2d_ASN1_IA5STRING, d2i_ASN1_UNIVERSALSTRING, i2d_ASN1_UNIVERSALSTRING, d2i_ASN1_BMPSTRING, i2d_ASN1_BMPSTRING, d2i_ASN1_GENERALSTRING, i2d_ASN1_GENERALSTRING, d2i_ASN1_T61STRING, i2d_ASN1_T61STRING, d2i_ASN1_VISIBLESTRING, i2d_ASN1_VISIBLESTRING, d2i_ASN1_PRINTABLESTRING, i2d_ASN1_PRINTABLESTRING, d2i_ASN1_PRINTABLE, i2d_ASN1_PRINTABLE, d2i_DIRECTORYSTRING, i2d_DIRECTORYSTRING, d2i_DISPLAYTEXT, i2d_DISPLAYTEXT, d2i_ASN1_GENERALIZEDTIME, i2d_ASN1_GENERALIZEDTIME, d2i_ASN1_UTCTIME, i2d_ASN1_UTCTIME, d2i_ASN1_TIME, i2d_ASN1_TIME — decode and encode ASN1_STRING objectsSYNOPSIS
#include <openssl/asn1.h>d2i_ASN1_OCTET_STRING(ASN1_OCTET_STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_OCTET_STRING(ASN1_OCTET_STRING *val_in, unsigned char **der_out);
d2i_ASN1_BIT_STRING(ASN1_BIT_STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_BIT_STRING(ASN1_BIT_STRING *val_in, unsigned char **der_out);
d2i_ASN1_INTEGER(ASN1_INTEGER **val_out, const unsigned char **der_in, long length);
i2d_ASN1_INTEGER(ASN1_INTEGER *val_in, unsigned char **der_out);
d2i_ASN1_UINTEGER(ASN1_INTEGER **val_out, const unsigned char **der_in, long length);
d2i_ASN1_ENUMERATED(ASN1_ENUMERATED **val_out, const unsigned char **der_in, long length);
i2d_ASN1_ENUMERATED(ASN1_ENUMERATED *val_in, unsigned char **der_out);
d2i_ASN1_UTF8STRING(ASN1_UTF8STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_UTF8STRING(ASN1_UTF8STRING *val_in, unsigned char **der_out);
d2i_ASN1_IA5STRING(ASN1_IA5STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_IA5STRING(ASN1_IA5STRING *val_in, unsigned char **der_out);
d2i_ASN1_UNIVERSALSTRING(ASN1_UNIVERSALSTRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_UNIVERSALSTRING(ASN1_UNIVERSALSTRING *val_in, unsigned char **der_out);
d2i_ASN1_BMPSTRING(ASN1_BMPSTRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_BMPSTRING(ASN1_BMPSTRING *val_in, unsigned char **der_out);
d2i_ASN1_GENERALSTRING(ASN1_GENERALSTRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_GENERALSTRING(ASN1_GENERALSTRING *val_in, unsigned char **der_out);
d2i_ASN1_T61STRING(ASN1_T61STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_T61STRING(ASN1_T61STRING *val_in, unsigned char **der_out);
d2i_ASN1_VISIBLESTRING(ASN1_VISIBLESTRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_VISIBLESTRING(ASN1_VISIBLESTRING *val_in, unsigned char **der_out);
d2i_ASN1_PRINTABLESTRING(ASN1_PRINTABLESTRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_PRINTABLESTRING(ASN1_PRINTABLESTRING *val_in, unsigned char **der_out);
d2i_ASN1_PRINTABLE(ASN1_STRING **val_out, const unsigned char **der_in, long length);
i2d_ASN1_PRINTABLE(ASN1_STRING *val_in, unsigned char **der_out);
d2i_DIRECTORYSTRING(ASN1_STRING **val_out, const unsigned char **der_in, long length);
i2d_DIRECTORYSTRING(ASN1_STRING *val_in, unsigned char **der_out);
d2i_DISPLAYTEXT(ASN1_STRING **val_out, const unsigned char **der_in, long length);
i2d_DISPLAYTEXT(ASN1_STRING *val_in, unsigned char **der_out);
d2i_ASN1_GENERALIZEDTIME(ASN1_GENERALIZEDTIME **val_out, const unsigned char **der_in, long length);
i2d_ASN1_GENERALIZEDTIME(ASN1_GENERALIZEDTIME *val_in, unsigned char **der_out);
d2i_ASN1_UTCTIME(ASN1_UTCTIME **val_out, const unsigned char **der_in, long length);
i2d_ASN1_UTCTIME(ASN1_UTCTIME *val_in, unsigned char **der_out);
d2i_ASN1_TIME(ASN1_TIME **val_out, const unsigned char **der_in, long length);
i2d_ASN1_TIME(ASN1_TIME *val_in, unsigned char **der_out);
DESCRIPTION
These functions decode and encode various ASN.1 built-in types that can be represented by ASN1_STRING objects. For details about the semantics, examples, caveats, and bugs, see ASN1_item_d2i(3).OpenSSL type | identifier | ASN.1 type |
ASN1_OCTET_STRING | 0x04 | OCTET STRING |
ASN1_BIT_STRING | 0x03 | BIT STRING |
ASN1_INTEGER | 0x02 | INTEGER |
ASN1_ENUMERATED | 0x0a | ENUMERATED |
ASN1_UTF8STRING | 0x0c | UTF8String |
ASN1_IA5STRING | 0x16 | IA5String |
ASN1_UNIVERSALSTRING | 0x1c | UniversalString |
ASN1_BMPSTRING | 0x1e | BMPString |
ASN1_GENERALSTRING | 0x1b | GeneralString |
ASN1_T61STRING | 0x14 | T61String |
ASN1_VISIBLESTRING | 0x1a | VisibleString |
ASN1_PRINTABLESTRING | 0x13 | PrintableString |
ASN1_GENERALIZEDTIME | 0x18 | GeneralizedTime |
ASN1_UTCTIME | 0x17 | UTCTime |
decoding function | mask constant |
d2i_DIRECTORYSTRING() | B_ASN1_DIRECTORYSTRING |
d2i_ASN1_PRINTABLE() | B_ASN1_PRINTABLE |
d2i_DISPLAYTEXT() | B_ASN1_DISPLAYTEXT |
d2i_ASN1_TIME() | B_ASN1_TIME |