[PATCH 0/3] sunrpc removal

Florian Weimer fweimer@redhat.com
Wed Jul 8 12:05:17 GMT 2020


This patch series polishes Petr Vorel's patches.  I think they are ready
for inclusion now.

I forced the removal for x86-64, and found a bunch of build issues:

* bindresvport and the NSS RPC functions need to preserved.  The easiest
  way to do that is to move their implementation to the inet
  subdirectory, which is what the first patch does.

* If sunrpc is gone, __libc_thread_freeres should not call
  __rpc_thread_destroy anymore.

* The cut-off point is glibc 2.31 for the sunrpc removal, not glibc
  2.28.  This affects the csky port (ABI baseline 2.29).

The --enable-obsolete-nsl patch deletes more things in this version.

I think we should delay merging the --enable-obsolete-rpc removal until
the ARC port is merged, along with the required abilist adjustments.
But the first two patches do not change the ARC ABI, and could go in
now.

Thanks,
Florian

Florian Weimer (1):
  Move non-deprecated RPC-related functions from sunrpc to inet

Petr Vorel (2):
  Remove --enable-obsolete-nsl configure flag
  Remove --enable-obsolete-rpc configure flag

 INSTALL                                       |    9 -
 NEWS                                          |   28 +-
 .../strcoll-inputs/filelist#en_US.UTF-8       |   29 -
 config.h.in                                   |    8 -
 config.make.in                                |    2 -
 configure                                     |   38 +-
 configure.ac                                  |   22 -
 grp/initgroups.c                              |    8 +-
 include/aliases.h                             |    2 -
 include/dlfcn.h                               |    9 +-
 include/grp.h                                 |    2 -
 include/libc-symbols.h                        |   62 +-
 include/netdb.h                               |    6 -
 include/netinet/ether.h                       |    2 -
 include/pwd.h                                 |    2 -
 include/rpc/auth.h                            |   11 -
 include/rpc/auth_des.h                        |   13 -
 include/rpc/netdb.h                           |    2 -
 include/rpcsvc/yp_prot.h                      |    1 -
 include/shadow.h                              |    2 -
 include/shlib-compat.h                        |    8 +-
 inet/Makefile                                 |   11 +-
 sunrpc/bindrsvprt.c => inet/bindresvport.c    |    0
 {sunrpc => inet}/etc.rpc                      |    0
 {sunrpc => inet}/getrpcbyname.c               |    0
 {sunrpc => inet}/getrpcbyname_r.c             |    0
 {sunrpc => inet}/getrpcbynumber.c             |    0
 {sunrpc => inet}/getrpcbynumber_r.c           |    0
 {sunrpc => inet}/getrpcent.c                  |    0
 {sunrpc => inet}/getrpcent_r.c                |    0
 malloc/thread-freeres.c                       |    5 +-
 manual/install.texi                           |   10 -
 manual/nss.texi                               |   21 +-
 manual/nsswitch.texi                          |   16 +-
 nis/Makefile                                  |   55 +-
 nis/Versions                                  |   58 +-
 nis/libnsl.h                                  |    3 -
 nis/nisplus-parser.h                          |   35 -
 nis/nss-default.c                             |  127 --
 nis/nss-nis.c                                 |   44 -
 nis/nss-nis.h                                 |   59 -
 nis/nss-nisplus.c                             |   78 -
 nis/nss-nisplus.h                             |   41 -
 nis/nss_nis/nis-alias.c                       |  281 ----
 nis/nss_nis/nis-ethers.c                      |  292 ----
 nis/nss_nis/nis-grp.c                         |  359 ----
 nis/nss_nis/nis-hosts.c                       |  535 ------
 nis/nss_nis/nis-initgroups.c                  |  343 ----
 nis/nss_nis/nis-netgrp.c                      |   98 --
 nis/nss_nis/nis-network.c                     |  314 ----
 nis/nss_nis/nis-proto.c                       |  278 ----
 nis/nss_nis/nis-pwd.c                         |  581 -------
 nis/nss_nis/nis-rpc.c                         |  279 ----
 nis/nss_nis/nis-service.c                     |  438 -----
 nis/nss_nis/nis-spwd.c                        |  235 ---
 nis/nss_nisplus/nisplus-alias.c               |  337 ----
 nis/nss_nisplus/nisplus-ethers.c              |  356 ----
 nis/nss_nisplus/nisplus-grp.c                 |  401 -----
 nis/nss_nisplus/nisplus-hosts.c               |  584 -------
 nis/nss_nisplus/nisplus-initgroups.c          |  148 --
 nis/nss_nisplus/nisplus-netgrp.c              |  191 ---
 nis/nss_nisplus/nisplus-network.c             |  494 ------
 nis/nss_nisplus/nisplus-parser.c              |  375 -----
 nis/nss_nisplus/nisplus-proto.c               |  441 -----
 nis/nss_nisplus/nisplus-pwd.c                 |  408 -----
 nis/nss_nisplus/nisplus-rpc.c                 |  444 -----
 nis/nss_nisplus/nisplus-service.c             |  461 ------
 nis/nss_nisplus/nisplus-spwd.c                |  220 ---
 nis/rpcsvc/nis.x                              |  474 ------
 nis/rpcsvc/nis_callback.x                     |   63 -
 nis/rpcsvc/nis_object.x                       |  328 ----
 nis/rpcsvc/yp.x                               |  311 ----
 nis/rpcsvc/yp_prot.h                          |  366 -----
 nscd/initgrcache.c                            |    8 +-
 nss/grp-lookup.c                              |    6 +-
 nss/nsswitch.c                                |   14 +-
 nss/nsswitch.conf                             |    2 -
 nss/pwd-lookup.c                              |    6 +-
 nss/spwd-lookup.c                             |    6 +-
 scripts/build-many-glibcs.py                  |    8 -
 shlib-versions                                |    2 -
 sunrpc/Makefile                               |  161 +-
 sunrpc/bug20790.x                             |    1 -
 sunrpc/proto.h                                |   65 -
 sunrpc/rpc_clntout.c                          |  333 ----
 sunrpc/rpc_cout.c                             |  811 ---------
 sunrpc/rpc_hout.c                             |  607 -------
 sunrpc/rpc_main.c                             | 1451 -----------------
 sunrpc/rpc_parse.c                            |  687 --------
 sunrpc/rpc_parse.h                            |  165 --
 sunrpc/rpc_sample.c                           |  336 ----
 sunrpc/rpc_scan.c                             |  544 ------
 sunrpc/rpc_scan.h                             |  104 --
 sunrpc/rpc_svcout.c                           | 1093 -------------
 sunrpc/rpc_tblout.c                           |  178 --
 sunrpc/rpc_util.c                             |  525 ------
 sunrpc/rpc_util.h                             |  154 --
 sunrpc/rpcgen.c                               |    2 -
 sunrpc/rpcsvc/bootparam.h                     |   23 -
 sunrpc/rpcsvc/bootparam_prot.x                |   97 --
 sunrpc/rpcsvc/key_prot.x                      |  283 ----
 sunrpc/rpcsvc/klm_prot.x                      |  130 --
 sunrpc/rpcsvc/mount.x                         |  161 --
 sunrpc/rpcsvc/nfs_prot.x                      |  352 ----
 sunrpc/rpcsvc/nlm_prot.x                      |  203 ---
 sunrpc/rpcsvc/rex.x                           |  229 ---
 sunrpc/rpcsvc/rquota.x                        |   61 -
 sunrpc/rpcsvc/rstat.x                         |  145 --
 sunrpc/rpcsvc/rusers.x                        |  228 ---
 sunrpc/rpcsvc/sm_inter.x                      |  110 --
 sunrpc/rpcsvc/spray.x                         |   84 -
 sunrpc/rpcsvc/yppasswd.x                      |   61 -
 sysdeps/mach/Makefile                         |    2 -
 sysdeps/unix/sysv/linux/mips/shlib-versions   |    2 -
 114 files changed, 92 insertions(+), 20612 deletions(-)
 delete mode 100644 include/rpcsvc/yp_prot.h
 rename sunrpc/bindrsvprt.c => inet/bindresvport.c (100%)
 rename {sunrpc => inet}/etc.rpc (100%)
 rename {sunrpc => inet}/getrpcbyname.c (100%)
 rename {sunrpc => inet}/getrpcbyname_r.c (100%)
 rename {sunrpc => inet}/getrpcbynumber.c (100%)
 rename {sunrpc => inet}/getrpcbynumber_r.c (100%)
 rename {sunrpc => inet}/getrpcent.c (100%)
 rename {sunrpc => inet}/getrpcent_r.c (100%)
 delete mode 100644 nis/nisplus-parser.h
 delete mode 100644 nis/nss-default.c
 delete mode 100644 nis/nss-nis.c
 delete mode 100644 nis/nss-nis.h
 delete mode 100644 nis/nss-nisplus.c
 delete mode 100644 nis/nss-nisplus.h
 delete mode 100644 nis/nss_nis/nis-alias.c
 delete mode 100644 nis/nss_nis/nis-ethers.c
 delete mode 100644 nis/nss_nis/nis-grp.c
 delete mode 100644 nis/nss_nis/nis-hosts.c
 delete mode 100644 nis/nss_nis/nis-initgroups.c
 delete mode 100644 nis/nss_nis/nis-netgrp.c
 delete mode 100644 nis/nss_nis/nis-network.c
 delete mode 100644 nis/nss_nis/nis-proto.c
 delete mode 100644 nis/nss_nis/nis-pwd.c
 delete mode 100644 nis/nss_nis/nis-rpc.c
 delete mode 100644 nis/nss_nis/nis-service.c
 delete mode 100644 nis/nss_nis/nis-spwd.c
 delete mode 100644 nis/nss_nisplus/nisplus-alias.c
 delete mode 100644 nis/nss_nisplus/nisplus-ethers.c
 delete mode 100644 nis/nss_nisplus/nisplus-grp.c
 delete mode 100644 nis/nss_nisplus/nisplus-hosts.c
 delete mode 100644 nis/nss_nisplus/nisplus-initgroups.c
 delete mode 100644 nis/nss_nisplus/nisplus-netgrp.c
 delete mode 100644 nis/nss_nisplus/nisplus-network.c
 delete mode 100644 nis/nss_nisplus/nisplus-parser.c
 delete mode 100644 nis/nss_nisplus/nisplus-proto.c
 delete mode 100644 nis/nss_nisplus/nisplus-pwd.c
 delete mode 100644 nis/nss_nisplus/nisplus-rpc.c
 delete mode 100644 nis/nss_nisplus/nisplus-service.c
 delete mode 100644 nis/nss_nisplus/nisplus-spwd.c
 delete mode 100644 nis/rpcsvc/nis.x
 delete mode 100644 nis/rpcsvc/nis_callback.x
 delete mode 100644 nis/rpcsvc/nis_object.x
 delete mode 100644 nis/rpcsvc/yp.x
 delete mode 100644 nis/rpcsvc/yp_prot.h
 delete mode 100644 sunrpc/bug20790.x
 delete mode 100644 sunrpc/proto.h
 delete mode 100644 sunrpc/rpc_clntout.c
 delete mode 100644 sunrpc/rpc_cout.c
 delete mode 100644 sunrpc/rpc_hout.c
 delete mode 100644 sunrpc/rpc_main.c
 delete mode 100644 sunrpc/rpc_parse.c
 delete mode 100644 sunrpc/rpc_parse.h
 delete mode 100644 sunrpc/rpc_sample.c
 delete mode 100644 sunrpc/rpc_scan.c
 delete mode 100644 sunrpc/rpc_scan.h
 delete mode 100644 sunrpc/rpc_svcout.c
 delete mode 100644 sunrpc/rpc_tblout.c
 delete mode 100644 sunrpc/rpc_util.c
 delete mode 100644 sunrpc/rpc_util.h
 delete mode 100644 sunrpc/rpcgen.c
 delete mode 100644 sunrpc/rpcsvc/bootparam.h
 delete mode 100644 sunrpc/rpcsvc/bootparam_prot.x
 delete mode 100644 sunrpc/rpcsvc/key_prot.x
 delete mode 100644 sunrpc/rpcsvc/klm_prot.x
 delete mode 100644 sunrpc/rpcsvc/mount.x
 delete mode 100644 sunrpc/rpcsvc/nfs_prot.x
 delete mode 100644 sunrpc/rpcsvc/nlm_prot.x
 delete mode 100644 sunrpc/rpcsvc/rex.x
 delete mode 100644 sunrpc/rpcsvc/rquota.x
 delete mode 100644 sunrpc/rpcsvc/rstat.x
 delete mode 100644 sunrpc/rpcsvc/rusers.x
 delete mode 100644 sunrpc/rpcsvc/sm_inter.x
 delete mode 100644 sunrpc/rpcsvc/spray.x
 delete mode 100644 sunrpc/rpcsvc/yppasswd.x

-- 
2.25.4



More information about the Libc-alpha mailing list