about summary refs log tree commit diff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-07-06 17:59:26 +0200
committerFlorian Weimer <fweimer@redhat.com>2020-07-07 20:19:57 +0200
commited6fc7daed8858ae971e3d9c165ec45816759dbd (patch)
tree4c622c6c80ace7d4e2b8b974d56ef5c96237d1fd
parentd7ebcd43804891434c167ab4f1487aac65399548 (diff)
downloadglibc-ed6fc7daed8858ae971e3d9c165ec45816759dbd.tar.gz
glibc-ed6fc7daed8858ae971e3d9c165ec45816759dbd.tar.xz
glibc-ed6fc7daed8858ae971e3d9c165ec45816759dbd.zip
sunrpc: Do not export key handling hooks by default
__key_encryptsession_pk_LOCAL, __key_decryptsession_pk_LOCAL,
__key_gendes_LOCAL had a default version symbol even without
--enable-obsolete-rpc.
-rw-r--r--sunrpc/key_call.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/sunrpc/key_call.c b/sunrpc/key_call.c
index 9b8f9819c9..f13b0a7e4c 100644
--- a/sunrpc/key_call.c
+++ b/sunrpc/key_call.c
@@ -290,9 +290,20 @@ libc_hidden_nolink_sunrpc (key_get_conv, GLIBC_2_1)
  * implementations of these functions, and to call those in key_call().
  */
 
-cryptkeyres *(*__key_encryptsession_pk_LOCAL) (uid_t, char *);
-cryptkeyres *(*__key_decryptsession_pk_LOCAL) (uid_t, char *);
-des_block *(*__key_gendes_LOCAL) (uid_t, char *);
+cryptkeyres *(*__key_encryptsession_pk_LOCAL) (uid_t, char *)
+  __attribute__ ((nocommon));
+cryptkeyres *(*__key_decryptsession_pk_LOCAL) (uid_t, char *)
+  __attribute__ ((nocommon));
+des_block *(*__key_gendes_LOCAL) (uid_t, char *) __attribute__ ((nocommon));
+#ifdef SHARED
+# ifndef EXPORT_RPC_SYMBOLS
+compat_symbol (libc, __key_encryptsession_pk_LOCAL,
+	       __key_encryptsession_pk_LOCAL, GLIBC_2_1);
+compat_symbol (libc, __key_decryptsession_pk_LOCAL,
+	       __key_decryptsession_pk_LOCAL, GLIBC_2_1);
+compat_symbol (libc, __key_gendes_LOCAL, __key_gendes_LOCAL, GLIBC_2_1);
+# endif
+#endif
 
 #ifndef SO_PASSCRED
 static int