[2/4] sunrpc: Do not export key handling hooks by default

Message ID d072dc2dda44815446c529c82218e5dc7844cb42.1594062056.git.fweimer@redhat.com
State New
Headers show
Series
  • sunrpc symbol cleanups
Related show

Commit Message

__key_encryptsession_pk_LOCAL, __key_decryptsession_pk_LOCAL,
__key_gendes_LOCAL had a default version symbol even without
--enable-obsolete-rpc.
---
 sunrpc/key_call.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

-- 
2.25.4

Comments

On Mon, Jul 6, 2020 at 12:05 PM Florian Weimer via Libc-alpha
<libc-alpha@sourceware.org> wrote:
>

> __key_encryptsession_pk_LOCAL, __key_decryptsession_pk_LOCAL,

> __key_gendes_LOCAL had a default version symbol even without

> --enable-obsolete-rpc.

> ---

>  sunrpc/key_call.c | 17 ++++++++++++++---

>  1 file 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

> --

> 2.25.4

>

>


LGTM.

Thanks.

-- 
H.J.

Patch

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