Add support for symbol hiding disabled by default.
authorbeck <beck@openbsd.org>
Fri, 11 Nov 2022 11:25:18 +0000 (11:25 +0000)
committerbeck <beck@openbsd.org>
Fri, 11 Nov 2022 11:25:18 +0000 (11:25 +0000)
commitec6848bc68497924e9fc9ce8881742eba4e842d5
tree0d3f0630f9338d6ce04349ad226134b8e4bd0714
parent76981aeb2e81250c73432bbb33e9200842af4543
Add support for symbol hiding disabled by default.

Fully explained in libcrypto/README. TL;DR make sure libcrypto
and libssl's function calls internally and to each other are via
symbol names that won't get overridden by linking other libraries.

Mostly work by guenther@, which will currently be gated behind a
build setting NAMESPACE=yes. once we convert all the symbols to
this method we will do a major bump and pick up the changes.

ok tb@ jsing@
lib/libcrypto/Makefile
lib/libcrypto/Symbols.namespace [new file with mode: 0644]
lib/libcrypto/hidden/README [new file with mode: 0644]
lib/libcrypto/hidden/crypto_namespace.h [new file with mode: 0644]
lib/libcrypto/hidden/openssl/hmac.h [new file with mode: 0644]
lib/libcrypto/hmac/hmac.c
lib/libssl/Makefile
lib/libssl/bio_ssl.c
lib/libssl/hidden/openssl/ssl.h [new file with mode: 0644]
lib/libssl/hidden/ssl_namespace.h [new file with mode: 0644]