Hello, This patch moves UTF8_getc and UTF8_putc from asn1_locl.h to asn1.h. These functions are exported in asn1.h in OpenSSL, and is used by some applications, e.g., PKIX-SSH (http://roumenpetrov.info/openssh/).
I've sent a pull request on GitHub, for reference: https://github.com/libressl-portable/openbsd/pull/25 diff -ur libressl-2.1.6/crypto/asn1/asn1_locl.h libressl-2.1.6.new/crypto/asn1/asn1_locl.h --- libressl-2.1.6/crypto/asn1/asn1_locl.h 2014-12-06 17:15:50.000000000 -0600 +++ libressl-2.1.6.new/crypto/asn1/asn1_locl.h 2015-03-31 20:40:13.000000000 -0500 @@ -146,6 +146,3 @@ #define UNICODE_IS_SURROGATE(x) \ ((x) >= UNICODE_SURROGATE_MIN && (x) <= UNICODE_SURROGATE_MAX) - -int UTF8_getc(const unsigned char *str, int len, unsigned long *val); -int UTF8_putc(unsigned char *str, int len, unsigned long value); diff -ur libressl-2.1.6/include/openssl/asn1.h libressl-2.1.6.new/include/openssl/asn1.h --- libressl-2.1.6/include/openssl/asn1.h 2015-01-31 10:22:01.000000000 -0600 +++ libressl-2.1.6.new/include/openssl/asn1.h 2015-03-31 20:39:25.000000000 -0500 @@ -831,6 +831,9 @@ DECLARE_ASN1_FUNCTIONS(ASN1_NULL) DECLARE_ASN1_FUNCTIONS(ASN1_BMPSTRING) +int UTF8_getc(const unsigned char *str, int len, unsigned long *val); +int UTF8_putc(unsigned char *str, int len, unsigned long value); + DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, ASN1_PRINTABLE) DECLARE_ASN1_FUNCTIONS_name(ASN1_STRING, DIRECTORYSTRING) -- -Austin