libtar-1.2.11 tarball sources, taken from Debian's orig tar
[libtar.git] / compat / gethostbyname_r.c
blob5264b844449da936965f384f8c9d1021d5a2d4be
1 /*
2 ** Copyright 2002 University of Illinois Board of Trustees
3 ** Copyright 2002 Mark D. Roth
4 ** All rights reserved.
5 **
6 ** gethostbyname_r.c - gethostbyname_r() function for compatibility library
7 **
8 ** Mark D. Roth <roth@uiuc.edu>
9 ** Campus Information Technologies and Educational Services
10 ** University of Illinois at Urbana-Champaign
13 #include <config.h>
15 #include <stdio.h>
16 #include <sys/types.h>
17 #include <netdb.h>
20 int
21 compat_gethostbyname_r(const char *name, struct hostent *hp,
22 char *buf, size_t buflen,
23 struct hostent **hpp, int *herr)
25 #if GETHOSTBYNAME_R_NUM_ARGS == 5
26 *hpp = gethostbyname_r(name, hp, buf, buflen, herr);
28 if (*hpp == NULL)
29 return -1;
30 return 0;
31 #elif GETHOSTBYNAME_R_NUM_ARGS == 3
32 struct hostent_data hdata;
34 if (gethostbyname_r(name, hp, &hdata) == -1)
35 return -1;
36 *hpp = hp;
37 return 0;
38 #endif /* GETHOSTBYNAME_R_NUM_ARGS == 5 */