From 7f602256ab5b85db1dbfb5f40bd109c4b37b68c8 Mon Sep 17 00:00:00 2001 From: Arjun Shankar Date: Mon, 2 Oct 2023 14:55:27 +0200 Subject: [PATCH] Move getaddrinfo from 'posix' into 'nss' getaddrinfo is an entry point for nss functionality. This commit moves it from 'sysdeps/posix' to 'nss', gets rid of the stub in 'posix', and moves all associated tests as well. Reviewed-by: Adhemerval Zanella --- nss/Makefile | 19 ++++++++++++-- nss/Versions | 1 + {sysdeps/posix => nss}/getaddrinfo.c | 0 {posix => nss}/tst-getaddrinfo.c | 0 {posix => nss}/tst-getaddrinfo2.c | 0 {posix => nss}/tst-getaddrinfo3.c | 0 {posix => nss}/tst-getaddrinfo4.c | 0 {posix => nss}/tst-getaddrinfo5.c | 0 {posix => nss}/tst-rfc3484-2.c | 2 +- {posix => nss}/tst-rfc3484-3.c | 2 +- {posix => nss}/tst-rfc3484.c | 2 +- posix/Makefile | 10 -------- posix/Versions | 2 +- posix/getaddrinfo.c | 38 ---------------------------- 14 files changed, 22 insertions(+), 54 deletions(-) rename {sysdeps/posix => nss}/getaddrinfo.c (100%) rename {posix => nss}/tst-getaddrinfo.c (100%) rename {posix => nss}/tst-getaddrinfo2.c (100%) rename {posix => nss}/tst-getaddrinfo3.c (100%) rename {posix => nss}/tst-getaddrinfo4.c (100%) rename {posix => nss}/tst-getaddrinfo5.c (100%) rename {posix => nss}/tst-rfc3484-2.c (99%) rename {posix => nss}/tst-rfc3484-3.c (98%) rename {posix => nss}/tst-rfc3484.c (98%) delete mode 100644 posix/getaddrinfo.c diff --git a/nss/Makefile b/nss/Makefile index e88754bf51..da5bd207aa 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -127,6 +127,7 @@ endif # hosts routines: routines += \ + getaddrinfo \ gethstbyad \ gethstbyad_r \ gethstbynm \ @@ -138,6 +139,7 @@ routines += \ # routines ifeq ($(have-thread-library),yes) +CFLAGS-getaddrinfo.c += -fexceptions CFLAGS-gethstbyad.c += -fexceptions CFLAGS-gethstbyad_r.c += -fexceptions CFLAGS-gethstbynm.c += -fexceptions @@ -300,7 +302,13 @@ others-extras = $(makedb-modules) extra-objs += $(makedb-modules:=.o) tests-static = tst-field -tests-internal = tst-field + +tests-internal := \ + tst-field \ + tst-rfc3484 \ + tst-rfc3484-2 \ + tst-rfc3484-3 \ + # tests-internal tests := \ bug17079 \ @@ -309,6 +317,9 @@ tests := \ test-rpcent \ testgrp \ tst-fgetsgent_r \ + tst-getaddrinfo \ + tst-getaddrinfo2 \ + tst-getaddrinfo3 \ tst-gethnm \ tst-getpw \ tst-gshadow \ @@ -327,7 +338,11 @@ tests := \ tst-shadow \ # tests -xtests = bug-erange +xtests := \ + bug-erange \ + tst-getaddrinfo4 \ + tst-getaddrinfo5 \ + # xtests tests-container := \ tst-initgroups1 \ diff --git a/nss/Versions b/nss/Versions index d8c4e373c9..158a9175a4 100644 --- a/nss/Versions +++ b/nss/Versions @@ -19,6 +19,7 @@ libc { fgetspent; fgetspent_r; # g* + getaddrinfo; getaliasbyname; getaliasbyname_r; getaliasent; getaliasent_r; getgrent; getgrent_r; getgrgid; getgrgid_r; getgrnam; getgrnam_r; getgroups; diff --git a/sysdeps/posix/getaddrinfo.c b/nss/getaddrinfo.c similarity index 100% rename from sysdeps/posix/getaddrinfo.c rename to nss/getaddrinfo.c diff --git a/posix/tst-getaddrinfo.c b/nss/tst-getaddrinfo.c similarity index 100% rename from posix/tst-getaddrinfo.c rename to nss/tst-getaddrinfo.c diff --git a/posix/tst-getaddrinfo2.c b/nss/tst-getaddrinfo2.c similarity index 100% rename from posix/tst-getaddrinfo2.c rename to nss/tst-getaddrinfo2.c diff --git a/posix/tst-getaddrinfo3.c b/nss/tst-getaddrinfo3.c similarity index 100% rename from posix/tst-getaddrinfo3.c rename to nss/tst-getaddrinfo3.c diff --git a/posix/tst-getaddrinfo4.c b/nss/tst-getaddrinfo4.c similarity index 100% rename from posix/tst-getaddrinfo4.c rename to nss/tst-getaddrinfo4.c diff --git a/posix/tst-getaddrinfo5.c b/nss/tst-getaddrinfo5.c similarity index 100% rename from posix/tst-getaddrinfo5.c rename to nss/tst-getaddrinfo5.c diff --git a/posix/tst-rfc3484-2.c b/nss/tst-rfc3484-2.c similarity index 99% rename from posix/tst-rfc3484-2.c rename to nss/tst-rfc3484-2.c index ce8ccd5f38..a5f8f82c04 100644 --- a/posix/tst-rfc3484-2.c +++ b/nss/tst-rfc3484-2.c @@ -57,7 +57,7 @@ _res_hconf_init (void) } #undef USE_NSCD -#include "../sysdeps/posix/getaddrinfo.c" +#include "getaddrinfo.c" nss_action_list __nss_hosts_database attribute_hidden; diff --git a/posix/tst-rfc3484-3.c b/nss/tst-rfc3484-3.c similarity index 98% rename from posix/tst-rfc3484-3.c rename to nss/tst-rfc3484-3.c index ecb163963f..edf0b7db2e 100644 --- a/posix/tst-rfc3484-3.c +++ b/nss/tst-rfc3484-3.c @@ -57,7 +57,7 @@ _res_hconf_init (void) } #undef USE_NSCD -#include "../sysdeps/posix/getaddrinfo.c" +#include "getaddrinfo.c" nss_action_list __nss_hosts_database attribute_hidden; diff --git a/posix/tst-rfc3484.c b/nss/tst-rfc3484.c similarity index 98% rename from posix/tst-rfc3484.c rename to nss/tst-rfc3484.c index 3b2052eb54..5b4a0c5b82 100644 --- a/posix/tst-rfc3484.c +++ b/nss/tst-rfc3484.c @@ -57,7 +57,7 @@ _res_hconf_init (void) } #undef USE_NSCD -#include "../sysdeps/posix/getaddrinfo.c" +#include "getaddrinfo.c" nss_action_list __nss_hosts_database attribute_hidden; diff --git a/posix/Makefile b/posix/Makefile index be7d319394..3ab124d040 100644 --- a/posix/Makefile +++ b/posix/Makefile @@ -88,7 +88,6 @@ routines := \ fpathconf \ gai_strerror \ get_child_max \ - getaddrinfo \ getegid \ geteuid \ getgid \ @@ -287,9 +286,6 @@ tests := \ tst-fnmatch7 \ tst-fork \ tst-gai_strerror \ - tst-getaddrinfo \ - tst-getaddrinfo2 \ - tst-getaddrinfo3 \ tst-getopt_long1 \ tst-glob-tilde \ tst-glob_symlinks \ @@ -351,9 +347,6 @@ tests-internal := \ bug-regex5 \ bug-regex20 \ bug-regex33 \ - tst-rfc3484 \ - tst-rfc3484-2 \ - tst-rfc3484-3 \ # tests-internal tests-container := \ @@ -368,8 +361,6 @@ tests-time64 := \ # tests-time64 xtests := \ - tst-getaddrinfo4 \ - tst-getaddrinfo5 \ tst-sched_rr_get_interval \ # xtests @@ -556,7 +547,6 @@ $(objpfx)config-name.h: $(..)scripts/config-uname.sh $(common-objpfx)config.make '$(config-machine)-$(config-vendor)' > $@.new mv -f $@.new $@ -CFLAGS-getaddrinfo.c += -fexceptions CFLAGS-pause.c += -fexceptions -fasynchronous-unwind-tables CFLAGS-pread.c += -fexceptions -fasynchronous-unwind-tables CFLAGS-pread64.c += -fexceptions -fasynchronous-unwind-tables $(config-cflags-wno-ignored-attributes) diff --git a/posix/Versions b/posix/Versions index 2eedbc3e79..b24c7c87ff 100644 --- a/posix/Versions +++ b/posix/Versions @@ -34,7 +34,7 @@ libc { fnmatch; fork; fpathconf; freeaddrinfo; # g* - getaddrinfo; getdtablesize; getegid; geteuid; getgid; getopt; getopt_long; + getdtablesize; getegid; geteuid; getgid; getopt; getopt_long; getopt_long_only; getpgid; getpgrp; getpid; getppid; getsid; getuid; glob; glob_pattern_p; globfree; group_member; diff --git a/posix/getaddrinfo.c b/posix/getaddrinfo.c deleted file mode 100644 index 0e36a4564c..0000000000 --- a/posix/getaddrinfo.c +++ /dev/null @@ -1,38 +0,0 @@ -/* Stub version of getaddrinfo function. - Copyright (C) 1996-2023 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, see - . */ - -#include -#include - -int -getaddrinfo (const char *name, const char *service, const struct addrinfo *req, - struct addrinfo **pai) -{ - __set_errno (ENOSYS); - return EAI_SYSTEM; -} -stub_warning (getaddrinfo) -libc_hidden_def (getaddrinfo) - -void -freeaddrinfo (struct addrinfo *ai) -{ - /* Nothing. */ -} -stub_warning (freeaddrinfo) -libc_hidden_def (freeaddrinfo)