From 5a6e784e64c9e3d9b16b257f73cc6332771d9e18 Mon Sep 17 00:00:00 2001 From: Arjun Shankar Date: Mon, 2 Oct 2023 14:55:23 +0200 Subject: Move 'networks' routines from 'inet' into 'nss' The getnetby* and getnetent* routines are entry points for nss functionality. This commit moves them from the 'inet' subdirectory to 'nss'. Reviewed-by: Adhemerval Zanella --- nss/Makefile | 19 +++++++++++++++++++ nss/Versions | 2 ++ nss/getnetbyad.c | 33 +++++++++++++++++++++++++++++++++ nss/getnetbyad_r.c | 33 +++++++++++++++++++++++++++++++++ nss/getnetbynm.c | 32 ++++++++++++++++++++++++++++++++ nss/getnetbynm_r.c | 32 ++++++++++++++++++++++++++++++++ nss/getnetent.c | 29 +++++++++++++++++++++++++++++ nss/getnetent_r.c | 34 ++++++++++++++++++++++++++++++++++ 8 files changed, 214 insertions(+) create mode 100644 nss/getnetbyad.c create mode 100644 nss/getnetbyad_r.c create mode 100644 nss/getnetbynm.c create mode 100644 nss/getnetbynm_r.c create mode 100644 nss/getnetent.c create mode 100644 nss/getnetent_r.c (limited to 'nss') diff --git a/nss/Makefile b/nss/Makefile index 2a451f68d9..023a11fa4b 100644 --- a/nss/Makefile +++ b/nss/Makefile @@ -159,6 +159,25 @@ CFLAGS-getnetgrent.c += -fexceptions CFLAGS-getnetgrent_r.c += -fexceptions endif +# networks routines: +routines += \ + getnetbyad \ + getnetbyad_r \ + getnetbynm \ + getnetbynm_r \ + getnetent \ + getnetent_r \ + # routines + +ifeq ($(have-thread-library),yes) +CFLAGS-getnetbyad.c += -fexceptions +CFLAGS-getnetbyad_r.c += -fexceptions +CFLAGS-getnetbynm.c += -fexceptions +CFLAGS-getnetbynm_r.c += -fexceptions +CFLAGS-getnetent.c += -fexceptions +CFLAGS-getnetent_r.c += -fexceptions +endif + # pwd routines: routines += \ fgetpwent \ diff --git a/nss/Versions b/nss/Versions index 4ddc018012..95219f0fc7 100644 --- a/nss/Versions +++ b/nss/Versions @@ -25,6 +25,8 @@ libc { gethostbyaddr; gethostbyaddr_r; gethostbyname; gethostbyname2; gethostbyname2_r; gethostbyname_r; gethostent; gethostent_r; getnetgrent; getnetgrent_r; + getnetbyaddr; getnetbyaddr_r; getnetbyname; getnetbyname_r; + getnetent; getnetent_r; getpw; getpwent; getpwent_r; getpwnam; getpwnam_r; getpwuid; getpwuid_r; getspent; getspent_r; getspnam; getspnam_r; diff --git a/nss/getnetbyad.c b/nss/getnetbyad.c new file mode 100644 index 0000000000..8b4f387b74 --- /dev/null +++ b/nss/getnetbyad.c @@ -0,0 +1,33 @@ +/* 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 + + +#define LOOKUP_TYPE struct netent +#define FUNCTION_NAME getnetbyaddr +#define DATABASE_NAME networks +#define ADD_PARAMS uint32_t net, int type +#define ADD_VARIABLES net, type +#define BUFLEN 1024 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXbyYY.c" diff --git a/nss/getnetbyad_r.c b/nss/getnetbyad_r.c new file mode 100644 index 0000000000..9a06c5e40b --- /dev/null +++ b/nss/getnetbyad_r.c @@ -0,0 +1,33 @@ +/* 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 + + +#define LOOKUP_TYPE struct netent +#define FUNCTION_NAME getnetbyaddr +#define DATABASE_NAME networks +#define ADD_PARAMS uint32_t net, int type +#define ADD_VARIABLES net, type +#define NEED__RES 1 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXbyYY_r.c" diff --git a/nss/getnetbynm.c b/nss/getnetbynm.c new file mode 100644 index 0000000000..b763718873 --- /dev/null +++ b/nss/getnetbynm.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 + . */ + +#include + + +#define LOOKUP_TYPE struct netent +#define FUNCTION_NAME getnetbyname +#define DATABASE_NAME networks +#define ADD_PARAMS const char *name +#define ADD_VARIABLES name +#define BUFLEN 1024 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXbyYY.c" diff --git a/nss/getnetbynm_r.c b/nss/getnetbynm_r.c new file mode 100644 index 0000000000..feb8b303a3 --- /dev/null +++ b/nss/getnetbynm_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 + . */ + +#include + + +#define LOOKUP_TYPE struct netent +#define FUNCTION_NAME getnetbyname +#define DATABASE_NAME networks +#define ADD_PARAMS const char *name +#define ADD_VARIABLES name +#define NEED__RES 1 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXbyYY_r.c" diff --git a/nss/getnetent.c b/nss/getnetent.c new file mode 100644 index 0000000000..69b4e399d6 --- /dev/null +++ b/nss/getnetent.c @@ -0,0 +1,29 @@ +/* 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 + + +#define LOOKUP_TYPE struct netent +#define GETFUNC_NAME getnetent +#define BUFLEN 1024 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXent.c" diff --git a/nss/getnetent_r.c b/nss/getnetent_r.c new file mode 100644 index 0000000000..d0a05993ab --- /dev/null +++ b/nss/getnetent_r.c @@ -0,0 +1,34 @@ +/* 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 + + +#define LOOKUP_TYPE struct netent +#define SETFUNC_NAME setnetent +#define GETFUNC_NAME getnetent +#define ENDFUNC_NAME endnetent +#define DATABASE_NAME networks +#define STAYOPEN int stayopen +#define STAYOPEN_VAR stayopen +#define NEED__RES 1 +#define NEED_H_ERRNO 1 + +/* There is no nscd support for the networks file. */ +#undef USE_NSCD + +#include "../nss/getXXent_r.c" -- cgit 1.4.1