1 /* Copyright (C) 1996-2022 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3
4 This program is free software; you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published
6 by the Free Software Foundation; version 2 of the License, or
7 (at your option) any later version.
8
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13
14 You should have received a copy of the GNU General Public License
15 along with this program; if not, see <https://www.gnu.org/licenses/>. */
16
17 #include <netdb.h>
18
19
20 #define LOOKUP_TYPE struct hostent
21 #define FUNCTION_NAME gethostbyaddr2
22 #define FUNCTION2_NAME gethostbyaddr
23 #define DATABASE_NAME hosts
24 #define ADD_PARAMS const void *addr, socklen_t len, int type
25 #define EXTRA_PARAMS , int32_t *ttlp
26 #define ADD_VARIABLES addr, len, type
27 #define EXTRA_VARIABLES , ttlp
28 #define NEED_H_ERRNO 1
29 #define NEED__RES 1
30
31 /* We are nscd, so we don't want to be talking to ourselves. */
32 #undef USE_NSCD
33
34 #include "../nss/getXXbyYY_r.c"
35
36
37 int
__gethostbyaddr_r(const void * addr,socklen_t len,int type,struct hostent * result_buf,char * buf,size_t buflen,struct hostent ** result,int * h_errnop)38 __gethostbyaddr_r (const void *addr, socklen_t len, int type,
39 struct hostent *result_buf, char *buf, size_t buflen,
40 struct hostent **result, int *h_errnop)
41 {
42 return __gethostbyaddr2_r (addr, len, type, result_buf, buf, buflen,
43 result, h_errnop, NULL);
44 }
45