11127842fa
- 0005-libssl-Hide-library-private-symbols.patch: hide private symbols, this *only* applies to libssl where it is straightforward to do so as applications should not be using any of the symbols declared/defined in headers that the library does not install. A separate patch MAY be provided in the future for libcrypto where things are much more complicated and threfore requires careful testing. (forwarded request 185819 from elvigia) OBS-URL: https://build.opensuse.org/request/show/185827 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/openssl?expand=0&rev=93
68 lines
1.7 KiB
Diff
68 lines
1.7 KiB
Diff
From 89d5aecbc62842651cf22e48c405eb435feb0df3 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Cristian=20Rodr=C3=ADguez?= <crrodriguez@opensuse.org>
|
|
Date: Wed, 24 Jul 2013 23:29:05 -0400
|
|
Subject: [PATCH 5/5] libssl: Hide library private symbols
|
|
|
|
This patch only contains the libssl part (the easy one)
|
|
patch to libcrypto will follow after it is complete and good enough.
|
|
|
|
It hides all the library symbols that are not part of the public
|
|
API/ABI when GCC 4 or later is used.
|
|
---
|
|
ssl/kssl_lcl.h | 9 +++++++++
|
|
ssl/ssl_locl.h | 8 ++++++++
|
|
2 files changed, 17 insertions(+)
|
|
|
|
diff --git a/ssl/kssl_lcl.h b/ssl/kssl_lcl.h
|
|
index c039c91..69972b1 100644
|
|
--- a/ssl/kssl_lcl.h
|
|
+++ b/ssl/kssl_lcl.h
|
|
@@ -61,6 +61,10 @@
|
|
|
|
#include <openssl/kssl.h>
|
|
|
|
+#if defined(__GNUC__) && __GNUC__ >= 4
|
|
+#pragma GCC visibility push(hidden)
|
|
+#endif
|
|
+
|
|
#ifndef OPENSSL_NO_KRB5
|
|
|
|
#ifdef __cplusplus
|
|
@@ -84,4 +88,9 @@ int kssl_tgt_is_available(KSSL_CTX *kssl_ctx);
|
|
}
|
|
#endif
|
|
#endif /* OPENSSL_NO_KRB5 */
|
|
+
|
|
+#if defined(__GNUC__) && __GNUC__ >= 4
|
|
+#pragma GCC visibility pop
|
|
+#endif
|
|
+
|
|
#endif /* KSSL_LCL_H */
|
|
diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h
|
|
index 56f9b4b..dde4e3e 100644
|
|
--- a/ssl/ssl_locl.h
|
|
+++ b/ssl/ssl_locl.h
|
|
@@ -165,6 +165,10 @@
|
|
#include <openssl/ssl.h>
|
|
#include <openssl/symhacks.h>
|
|
|
|
+#if defined(__GNUC__) && __GNUC__ >= 4
|
|
+#pragma GCC visibility push(hidden)
|
|
+#endif
|
|
+
|
|
#ifdef OPENSSL_BUILD_SHLIBSSL
|
|
# undef OPENSSL_EXTERN
|
|
# define OPENSSL_EXTERN OPENSSL_EXPORT
|
|
@@ -1357,4 +1361,8 @@ void tls_fips_digest_extra(
|
|
const EVP_CIPHER_CTX *cipher_ctx, EVP_MD_CTX *mac_ctx,
|
|
const unsigned char *data, size_t data_len, size_t orig_len);
|
|
|
|
+#if defined(__GNUC__) && __GNUC__ >= 4
|
|
+#pragma GCC visibility pop
|
|
+#endif
|
|
+
|
|
#endif
|
|
--
|
|
1.8.3.1
|
|
|