ASN1_UNIVERSALSTRING_TO_(3) Library Functions ManualASN1_UNIVERSALSTRING_TO_(3)
NAME
ASN1_UNIVERSALSTRING_to_string — recode UTF-32 to ISO Latin-1
SYNOPSIS
#include <openssl/asn1.h>
int
ASN1_UNIVERSALSTRING_to_string(ASN1_UNIVERSALSTRING *string);
DESCRIPTION
ASN1_UNIVERSALSTRING_to_string() assumes that the given string is encoded in UTF-32, recodes it in place to ISO Latin-1, and changes the type according to ASN1_PRINTABLE_type(3).
ASN1_UNIVERSALSTRING_to_string() fails and leaves the string unchanged if its ASN1_STRING_type(3) is not V_ASN1_UNIVERSALSTRING, if its ASN1_STRING_length(3) is not a multiple of four bytes, or if any of its characters cannot be represented in ISO Latin-1.
In case of success, the ASN1_STRING_length(3) of the string is reduced by a factor of four.
RETURN VALUES
ASN1_UNIVERSALSTRING_to_string() returns 1 on success or 0 on failure.
SEE ALSO
ASN1_mbstring_copy(3), ASN1_STRING_new(3), ASN1_STRING_to_UTF8(3)
HISTORY
ASN1_UNIVERSALSTRING_to_string() first appeared in SSLeay 0.8.0 and has been available since OpenBSD 2.4. GNU November 15, 2021ASN1_UNIVERSALSTRING_TO_STRING(3)