aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Vorel <pvorel@suse.cz>2020-07-08 13:06:55 +0200
committerFlorian Weimer <fweimer@redhat.com>2020-07-08 17:25:57 +0200
commitae7a94e5e3edf78f4da562edc05ece229614c716 (patch)
treebe0969c61080fc1dbd69293944a3362b20db7cff
parentacb527929d0c2b3bb0798472c42ddb3203729708 (diff)
downloadglibc-ae7a94e5e3edf78f4da562edc05ece229614c716.tar.xz
glibc-ae7a94e5e3edf78f4da562edc05ece229614c716.zip
Remove --enable-obsolete-nsl configure flag
this means that *always* libnsl is only built as shared library for backward compatibility and the NSS modules libnss_nis and libnss_nisplus are not built at all, libnsl's headers aren't installed. This compatibility is kept only for architectures and ABIs that have been added in or before version 2.28. Replacement implementations based on TIRPC, which additionally support IPv6, are available from <https://github.com/thkukuk/>. This change does not affect libnss_compat which does not depended on libnsl since 2.27 and thus can be used without NIS. libnsl code depends on Sun RPC, e.g. on --enable-obsolete-rpc (installed libnsl headers use installed Sun RPC headers), which will be removed in the following commit.
-rw-r--r--INSTALL9
-rw-r--r--NEWS20
-rw-r--r--config.h.in4
-rw-r--r--config.make.in1
-rwxr-xr-xconfigure20
-rw-r--r--configure.ac11
-rw-r--r--grp/initgroups.c8
-rw-r--r--include/aliases.h2
-rw-r--r--include/dlfcn.h9
-rw-r--r--include/grp.h2
-rw-r--r--include/libc-symbols.h55
-rw-r--r--include/netdb.h6
-rw-r--r--include/netinet/ether.h2
-rw-r--r--include/pwd.h2
-rw-r--r--include/rpc/auth.h11
-rw-r--r--include/rpc/auth_des.h13
-rw-r--r--include/rpc/netdb.h2
-rw-r--r--include/rpcsvc/yp_prot.h1
-rw-r--r--include/shadow.h2
-rw-r--r--manual/install.texi10
-rw-r--r--manual/nss.texi15
-rw-r--r--manual/nsswitch.texi16
-rw-r--r--nis/Makefile55
-rw-r--r--nis/Versions58
-rw-r--r--nis/libnsl.h3
-rw-r--r--nis/nisplus-parser.h35
-rw-r--r--nis/nss-default.c127
-rw-r--r--nis/nss-nis.c44
-rw-r--r--nis/nss-nis.h59
-rw-r--r--nis/nss-nisplus.c78
-rw-r--r--nis/nss-nisplus.h41
-rw-r--r--nis/nss_nis/nis-alias.c281
-rw-r--r--nis/nss_nis/nis-ethers.c292
-rw-r--r--nis/nss_nis/nis-grp.c359
-rw-r--r--nis/nss_nis/nis-hosts.c535
-rw-r--r--nis/nss_nis/nis-initgroups.c343
-rw-r--r--nis/nss_nis/nis-netgrp.c98
-rw-r--r--nis/nss_nis/nis-network.c314
-rw-r--r--nis/nss_nis/nis-proto.c278
-rw-r--r--nis/nss_nis/nis-pwd.c581
-rw-r--r--nis/nss_nis/nis-rpc.c279
-rw-r--r--nis/nss_nis/nis-service.c438
-rw-r--r--nis/nss_nis/nis-spwd.c235
-rw-r--r--nis/nss_nisplus/nisplus-alias.c337
-rw-r--r--nis/nss_nisplus/nisplus-ethers.c356
-rw-r--r--nis/nss_nisplus/nisplus-grp.c401
-rw-r--r--nis/nss_nisplus/nisplus-hosts.c584
-rw-r--r--nis/nss_nisplus/nisplus-initgroups.c148
-rw-r--r--nis/nss_nisplus/nisplus-netgrp.c191
-rw-r--r--nis/nss_nisplus/nisplus-network.c494
-rw-r--r--nis/nss_nisplus/nisplus-parser.c375
-rw-r--r--nis/nss_nisplus/nisplus-proto.c441
-rw-r--r--nis/nss_nisplus/nisplus-pwd.c408
-rw-r--r--nis/nss_nisplus/nisplus-rpc.c444
-rw-r--r--nis/nss_nisplus/nisplus-service.c461
-rw-r--r--nis/nss_nisplus/nisplus-spwd.c220
-rw-r--r--nis/rpcsvc/nis.x474
-rw-r--r--nis/rpcsvc/nis_callback.x63
-rw-r--r--nis/rpcsvc/nis_object.x328
-rw-r--r--nis/rpcsvc/yp.x311
-rw-r--r--nis/rpcsvc/yp_prot.h366
-rw-r--r--nscd/initgrcache.c8
-rw-r--r--nss/grp-lookup.c6
-rw-r--r--nss/nsswitch.c14
-rw-r--r--nss/nsswitch.conf2
-rw-r--r--nss/pwd-lookup.c6
-rw-r--r--nss/spwd-lookup.c6
-rwxr-xr-xscripts/build-many-glibcs.py6
-rw-r--r--shlib-versions2
-rw-r--r--sysdeps/mach/Makefile2
-rw-r--r--sysdeps/unix/sysv/linux/mips/shlib-versions2
71 files changed, 48 insertions, 11162 deletions
diff --git a/INSTALL b/INSTALL
index 62e78725f5..3f5575e23e 100644
--- a/INSTALL
+++ b/INSTALL
@@ -227,15 +227,6 @@ if 'CFLAGS' is specified it must enable optimization. For example:
colon-separated list in a single environment variable
'GLIBC_TUNABLES'.
-'--enable-obsolete-nsl'
- By default, libnsl is only built as shared library for backward
- compatibility and the NSS modules libnss_compat, libnss_nis and
- libnss_nisplus are not built at all. Use this option to enable
- libnsl with all depending NSS modules and header files. For
- architectures and ABIs that have been added after version 2.28 of
- the GNU C Library this option is not available, and the libnsl
- compatibility library is not built.
-
'--disable-crypt'
Do not install the passphrase-hashing library 'libcrypt' or the
header file 'crypt.h'. 'unistd.h' will still declare the function
diff --git a/NEWS b/NEWS
index 5083f5eacf..65e9999cc3 100644
--- a/NEWS
+++ b/NEWS
@@ -80,6 +80,16 @@ Major new features:
Deprecated and removed features, and other changes affecting compatibility:
+* Remove configure option --enable-obsolete-nsl. libnsl is only built
+ as shared library for backward compatibility and the NSS modules "nis"
+ and "nisplus" are not built at all and libnsl's headers aren't
+ installed. This compatibility is kept only for architectures and ABIs
+ that have been added in or before version 2.28. Replacement
+ implementations based on TI-RPC, which additionally support IPv6, are
+ available from <https://github.com/thkukuk/>. This change does not
+ affect the "compat" NSS module, which does not depended on libnsl
+ since 2.27 and thus can be used without NIS.
+
* The deprecated <sys/sysctl.h> header and the sysctl function have been
removed. To support old binaries, the sysctl function continues to
exist as a compatibility symbol (on those architectures which had it),
@@ -115,11 +125,11 @@ Deprecated and removed features, and other changes affecting compatibility:
or contents might be overwritten on subsequent calls in the same thread or
if the thread is terminated. It makes strerror MT-safe.
-* The "files", "nis" and "nisplus" NSS modules no longer supports the
- "key" database (used for secure RPC). The contents of the
- /etc/publickey file will be ignored, regardless of the settings in
- /etc/nsswitch.conf. (This method of storing RPC keys only supported
- the obsolete and insecure AUTH_DES flavor of secure RPC.)
+* The "files" NSS module no longer supports the "key" database (used for
+ secure RPC). The contents of the /etc/publickey file will be ignored,
+ regardless of the settings in /etc/nsswitch.conf. (This method of
+ storing RPC keys only supported the obsolete and insecure AUTH_DES
+ flavor of secure RPC.)
Changes to build and runtime requirements:
diff --git a/config.h.in b/config.h.in
index 7921917ad2..d5e1f6819e 100644
--- a/config.h.in
+++ b/config.h.in
@@ -167,10 +167,6 @@
to link against. */
#undef LINK_OBSOLETE_RPC
-/* Define if obsolete libnsl code should be made available for user-level
- code to link against. */
-#undef LINK_OBSOLETE_NSL
-
/* Define if Systemtap <sys/sdt.h> probes should be defined. */
#undef USE_STAP_PROBE
diff --git a/config.make.in b/config.make.in
index 2fed3da773..cefb6d4a90 100644
--- a/config.make.in
+++ b/config.make.in
@@ -97,7 +97,6 @@ build-static-nss = @static_nss@
cross-compiling = @cross_compiling@
force-install = @force_install@
link-obsolete-rpc = @link_obsolete_rpc@
-build-obsolete-nsl = @build_obsolete_nsl@
build-crypt = @build_crypt@
build-nscd = @build_nscd@
use-nscd = @use_nscd@
diff --git a/configure b/configure
index b8ef8c7a51..793c0068cc 100755
--- a/configure
+++ b/configure
@@ -673,7 +673,6 @@ base_machine
have_tunables
build_pt_chown
build_nscd
-build_obsolete_nsl
link_obsolete_rpc
libc_cv_static_nss_crypt
libc_cv_nss_crypt
@@ -786,7 +785,6 @@ enable_experimental_malloc
enable_crypt
enable_nss_crypt
enable_obsolete_rpc
-enable_obsolete_nsl
enable_systemtap
enable_build_nscd
enable_nscd
@@ -1459,8 +1457,6 @@ Optional Features:
--enable-nss-crypt enable libcrypt to use nss
--enable-obsolete-rpc build and install the obsolete RPC code for
link-time usage
- --enable-obsolete-nsl build and install the obsolete libnsl library and
- depending NSS modules
--enable-systemtap enable systemtap static probe points [default=no]
--disable-build-nscd disable building and installing the nscd daemon
--disable-nscd library functions will not contact the nscd daemon
@@ -3654,20 +3650,6 @@ if test "$link_obsolete_rpc" = yes; then
fi
-# Check whether --enable-obsolete-nsl was given.
-if test "${enable_obsolete_nsl+set}" = set; then :
- enableval=$enable_obsolete_nsl; build_obsolete_nsl=$enableval
-else
- build_obsolete_nsl=no
-fi
-
-
-
-if test "$build_obsolete_nsl" = yes; then
- $as_echo "#define LINK_OBSOLETE_NSL 1" >>confdefs.h
-
-fi
-
# Check whether --enable-systemtap was given.
if test "${enable_systemtap+set}" = set; then :
enableval=$enable_systemtap; systemtap=$enableval
@@ -3785,7 +3767,7 @@ main ()
{
#ifndef __CET__
-#error no CET compiler support
+# error no CET compiler support
#endif
;
return 0;
diff --git a/configure.ac b/configure.ac
index ff00591fd4..33a1189804 100644
--- a/configure.ac
+++ b/configure.ac
@@ -387,17 +387,6 @@ if test "$link_obsolete_rpc" = yes; then
AC_DEFINE(LINK_OBSOLETE_RPC)
fi
-AC_ARG_ENABLE([obsolete-nsl],
- AC_HELP_STRING([--enable-obsolete-nsl],
- [build and install the obsolete libnsl library and depending NSS modules]),
- [build_obsolete_nsl=$enableval],
- [build_obsolete_nsl=no])
-AC_SUBST(build_obsolete_nsl)
-
-if test "$build_obsolete_nsl" = yes; then
- AC_DEFINE(LINK_OBSOLETE_NSL)
-fi
-
AC_ARG_ENABLE([systemtap],
[AS_HELP_STRING([--enable-systemtap],
[enable systemtap static probe points @<:@default=no@:>@])