Fix OSSL_PARAM_allocate_from_text() for EBCDIC
authorRichard Levitte <levitte@openssl.org>
Tue, 26 Jan 2021 05:48:11 +0000 (06:48 +0100)
committerRichard Levitte <levitte@openssl.org>
Wed, 27 Jan 2021 11:06:29 +0000 (12:06 +0100)
commiteeb09f1bd7754e85e832853f46a726c761c93df1
tree4b3dd5083033b6d07a7bb9b15e837081ff7590ba
parent0c3eb2793b2a1fe35beeb90ba8f5cb2a0fdc3270
Fix OSSL_PARAM_allocate_from_text() for EBCDIC

OSSL_PARAM_allocate_from_text() converted text values to UTF-8
OSSL_PARAMs with a simple strncpy().  However, if the text is EBCDIC,
that won't become UTF-8.  Therefore, it's made to convert from EBCDIC
to ASCII on platforms where the native character encoding is the
former.

One might argue that the conversion should be the responsibility of
the application.  However, this is a helper function, and the calling
application can't easily know what sort of OSSL_PARAM the input values
are going to be used for.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/13961)
crypto/params_from_text.c
doc/man3/OSSL_PARAM_allocate_from_text.pod