aboutsummaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
authorArjun Shankar <arjun@redhat.com>2023-10-02 14:55:24 +0200
committerArjun Shankar <arjun@redhat.com>2023-10-24 12:30:59 +0200
commita25a060c358358d61d683dc8e9aa9df91e877a35 (patch)
treee01407aca6f3cf2a7891c428681314842aca5878 /nss
parent5a6e784e64c9e3d9b16b257f73cc6332771d9e18 (diff)
downloadglibc-a25a060c358358d61d683dc8e9aa9df91e877a35.zip
glibc-a25a060c358358d61d683dc8e9aa9df91e877a35.tar.gz
glibc-a25a060c358358d61d683dc8e9aa9df91e877a35.tar.bz2
Move 'protocols' routines from 'inet' into 'nss'
The getprotoby* and getprotoent* routines are entry points for nss functionality. This commit moves them from the 'inet' subdirectory to 'nss'. Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Diffstat (limited to 'nss')
-rw-r--r--nss/Makefile15
-rw-r--r--nss/Versions3
-rw-r--r--nss/getproto.c31
-rw-r--r--nss/getproto_r.c30
-rw-r--r--nss/getprtent.c28
-rw-r--r--nss/getprtent_r.c32
-rw-r--r--nss/getprtname.c31
-rw-r--r--nss/getprtname_r.c30
8 files changed, 200 insertions, 0 deletions
diff --git a/nss/Makefile b/nss/Makefile
index 023a11f..df22d36 100644
--- a/nss/Makefile
+++ b/nss/Makefile
@@ -178,6 +178,21 @@ CFLAGS-getnetent.c += -fexceptions
CFLAGS-getnetent_r.c += -fexceptions
endif
+# protocols routines:
+routines += \
+ getproto \
+ getproto_r \
+ getprtent \
+ getprtent_r \
+ getprtname \
+ getprtname_r \
+ # routines
+
+ifeq ($(have-thread-library),yes)
+CFLAGS-getprtent_r.c += -fexceptions
+CFLAGS-getprtent.c += -fexceptions
+endif
+
# pwd routines:
routines += \
fgetpwent \
diff --git a/nss/Versions b/nss/Versions
index 95219f0..c5de97f 100644
--- a/nss/Versions
+++ b/nss/Versions
@@ -27,6 +27,8 @@ libc {
getnetgrent; getnetgrent_r;
getnetbyaddr; getnetbyaddr_r; getnetbyname; getnetbyname_r;
getnetent; getnetent_r;
+ getprotobyname; getprotobyname_r; getprotobynumber;
+ getprotobynumber_r; getprotoent; getprotoent_r;
getpw; getpwent; getpwent_r; getpwnam; getpwnam_r; getpwuid; getpwuid_r;
getspent; getspent_r; getspnam; getspnam_r;
@@ -58,6 +60,7 @@ libc {
# g*
getgrent_r; getgrgid_r; getgrnam_r;
getnetgrent_r;
+ getprotobyname_r; getprotobynumber_r; getprotoent_r;
getpwent_r; getpwuid_r; getpwnam_r;
getspent_r; getspnam_r;
}
diff --git a/nss/getproto.c b/nss/getproto.c
new file mode 100644
index 0000000..297d67d
--- /dev/null
+++ b/nss/getproto.c
@@ -0,0 +1,31 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobynumber
+#define DATABASE_NAME protocols
+#define ADD_PARAMS int proto
+#define ADD_VARIABLES proto
+#define BUFLEN 1024
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXbyYY.c"
diff --git a/nss/getproto_r.c b/nss/getproto_r.c
new file mode 100644
index 0000000..789d3dd
--- /dev/null
+++ b/nss/getproto_r.c
@@ -0,0 +1,30 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobynumber
+#define DATABASE_NAME protocols
+#define ADD_PARAMS int proto
+#define ADD_VARIABLES proto
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXbyYY_r.c"
diff --git a/nss/getprtent.c b/nss/getprtent.c
new file mode 100644
index 0000000..83df7d8
--- /dev/null
+++ b/nss/getprtent.c
@@ -0,0 +1,28 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define GETFUNC_NAME getprotoent
+#define BUFLEN 1024
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXent.c"
diff --git a/nss/getprtent_r.c b/nss/getprtent_r.c
new file mode 100644
index 0000000..39975ca
--- /dev/null
+++ b/nss/getprtent_r.c
@@ -0,0 +1,32 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define SETFUNC_NAME setprotoent
+#define GETFUNC_NAME getprotoent
+#define ENDFUNC_NAME endprotoent
+#define DATABASE_NAME protocols
+#define STAYOPEN int stayopen
+#define STAYOPEN_VAR stayopen
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXent_r.c"
diff --git a/nss/getprtname.c b/nss/getprtname.c
new file mode 100644
index 0000000..8206347
--- /dev/null
+++ b/nss/getprtname.c
@@ -0,0 +1,31 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobyname
+#define DATABASE_NAME protocols
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+#define BUFLEN 1024
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXbyYY.c"
diff --git a/nss/getprtname_r.c b/nss/getprtname_r.c
new file mode 100644
index 0000000..a69d6a5
--- /dev/null
+++ b/nss/getprtname_r.c
@@ -0,0 +1,30 @@
+/* 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
+ <https://www.gnu.org/licenses/>. */
+
+#include <netdb.h>
+
+
+#define LOOKUP_TYPE struct protoent
+#define FUNCTION_NAME getprotobyname
+#define DATABASE_NAME protocols
+#define ADD_PARAMS const char *name
+#define ADD_VARIABLES name
+
+/* There is no nscd support for the protocols file. */
+#undef USE_NSCD
+
+#include "../nss/getXXbyYY_r.c"