diff options
| -rw-r--r-- | src/lib/libc/net/getaddrinfo.c | 10 | ||||
| -rw-r--r-- | src/lib/libc/net/gethostnamadr.c | 8 | ||||
| -rw-r--r-- | src/lib/libc/net/getnetnamadr.c | 8 | ||||
| -rw-r--r-- | src/lib/libc/net/getrrsetbyname.c | 4 | ||||
| -rw-r--r-- | src/lib/libc/net/res_debug.c | 8 | ||||
| -rw-r--r-- | src/lib/libc/net/res_init.c | 38 | ||||
| -rw-r--r-- | src/lib/libc/net/res_mkquery.c | 6 | ||||
| -rw-r--r-- | src/lib/libc/net/res_query.c | 10 | ||||
| -rw-r--r-- | src/lib/libc/net/res_send.c | 6 | ||||
| -rw-r--r-- | src/lib/libc/net/sethostent.c | 4 |
10 files changed, 68 insertions, 34 deletions
diff --git a/src/lib/libc/net/getaddrinfo.c b/src/lib/libc/net/getaddrinfo.c index c7cc0500c3..19967e8432 100644 --- a/src/lib/libc/net/getaddrinfo.c +++ b/src/lib/libc/net/getaddrinfo.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: getaddrinfo.c,v 1.51 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: getaddrinfo.c,v 1.52 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | /* $KAME: getaddrinfo.c,v 1.31 2000/08/31 17:36:43 itojun Exp $ */ | 2 | /* $KAME: getaddrinfo.c,v 1.31 2000/08/31 17:36:43 itojun Exp $ */ |
| 3 | 3 | ||
| 4 | /* | 4 | /* |
| @@ -516,7 +516,7 @@ explore_fqdn(const struct addrinfo *pai, const char *hostname, | |||
| 516 | return 0; | 516 | return 0; |
| 517 | } | 517 | } |
| 518 | 518 | ||
| 519 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 519 | if (_res_init(0) == -1) |
| 520 | strlcpy(lookups, "f", sizeof lookups); | 520 | strlcpy(lookups, "f", sizeof lookups); |
| 521 | else { | 521 | else { |
| 522 | bcopy(_resp->lookups, lookups, sizeof lookups); | 522 | bcopy(_resp->lookups, lookups, sizeof lookups); |
| @@ -1525,7 +1525,7 @@ res_queryN(const char *name, struct res_target *target) | |||
| 1525 | rcode = NOERROR; | 1525 | rcode = NOERROR; |
| 1526 | ancount = 0; | 1526 | ancount = 0; |
| 1527 | 1527 | ||
| 1528 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 1528 | if (_res_init(0) == -1) { |
| 1529 | h_errno = NETDB_INTERNAL; | 1529 | h_errno = NETDB_INTERNAL; |
| 1530 | free(buf); | 1530 | free(buf); |
| 1531 | return (-1); | 1531 | return (-1); |
| @@ -1631,7 +1631,7 @@ res_searchN(const char *name, struct res_target *target) | |||
| 1631 | int trailing_dot, ret, saved_herrno; | 1631 | int trailing_dot, ret, saved_herrno; |
| 1632 | int got_nodata = 0, got_servfail = 0, tried_as_is = 0; | 1632 | int got_nodata = 0, got_servfail = 0, tried_as_is = 0; |
| 1633 | 1633 | ||
| 1634 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 1634 | if (_res_init(0) == -1) { |
| 1635 | h_errno = NETDB_INTERNAL; | 1635 | h_errno = NETDB_INTERNAL; |
| 1636 | return (-1); | 1636 | return (-1); |
| 1637 | } | 1637 | } |
| @@ -1768,7 +1768,7 @@ res_querydomainN(const char *name, const char *domain, | |||
| 1768 | const char *longname = nbuf; | 1768 | const char *longname = nbuf; |
| 1769 | size_t n, d; | 1769 | size_t n, d; |
| 1770 | 1770 | ||
| 1771 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 1771 | if (_res_init(0) == -1) { |
| 1772 | h_errno = NETDB_INTERNAL; | 1772 | h_errno = NETDB_INTERNAL; |
| 1773 | return (-1); | 1773 | return (-1); |
| 1774 | } | 1774 | } |
diff --git a/src/lib/libc/net/gethostnamadr.c b/src/lib/libc/net/gethostnamadr.c index 0a42d0a27e..c643f2382a 100644 --- a/src/lib/libc/net/gethostnamadr.c +++ b/src/lib/libc/net/gethostnamadr.c | |||
| @@ -48,7 +48,7 @@ | |||
| 48 | */ | 48 | */ |
| 49 | 49 | ||
| 50 | #if defined(LIBC_SCCS) && !defined(lint) | 50 | #if defined(LIBC_SCCS) && !defined(lint) |
| 51 | static const char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.60 2004/07/29 03:09:40 itojun Exp $"; | 51 | static const char rcsid[] = "$OpenBSD: gethostnamadr.c,v 1.61 2005/03/30 02:58:28 tedu Exp $"; |
| 52 | #endif /* LIBC_SCCS and not lint */ | 52 | #endif /* LIBC_SCCS and not lint */ |
| 53 | 53 | ||
| 54 | #include <sys/param.h> | 54 | #include <sys/param.h> |
| @@ -479,7 +479,7 @@ gethostbyname(const char *name) | |||
| 479 | struct hostent *hp; | 479 | struct hostent *hp; |
| 480 | extern struct hostent *_gethtbyname2(const char *, int); | 480 | extern struct hostent *_gethtbyname2(const char *, int); |
| 481 | 481 | ||
| 482 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 482 | if (_res_init(0) == -1) |
| 483 | hp = _gethtbyname2(name, AF_INET); | 483 | hp = _gethtbyname2(name, AF_INET); |
| 484 | 484 | ||
| 485 | else if (_resp->options & RES_USE_INET6) { | 485 | else if (_resp->options & RES_USE_INET6) { |
| @@ -505,7 +505,7 @@ gethostbyname2(const char *name, int af) | |||
| 505 | extern struct hostent *_gethtbyname2(const char *, int); | 505 | extern struct hostent *_gethtbyname2(const char *, int); |
| 506 | extern struct hostent *_yp_gethtbyname(const char *); | 506 | extern struct hostent *_yp_gethtbyname(const char *); |
| 507 | 507 | ||
| 508 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 508 | if (_res_init(0) == -1) |
| 509 | return (_gethtbyname2(name, af)); | 509 | return (_gethtbyname2(name, af)); |
| 510 | 510 | ||
| 511 | switch (af) { | 511 | switch (af) { |
| @@ -653,7 +653,7 @@ gethostbyaddr(const char *addr, int len, int af) | |||
| 653 | extern struct hostent *_gethtbyaddr(const char *, int, int); | 653 | extern struct hostent *_gethtbyaddr(const char *, int, int); |
| 654 | extern struct hostent *_yp_gethtbyaddr(const char *); | 654 | extern struct hostent *_yp_gethtbyaddr(const char *); |
| 655 | 655 | ||
| 656 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 656 | if (_res_init(0) == -1) { |
| 657 | res = _gethtbyaddr(addr, len, af); | 657 | res = _gethtbyaddr(addr, len, af); |
| 658 | return (res); | 658 | return (res); |
| 659 | } | 659 | } |
diff --git a/src/lib/libc/net/getnetnamadr.c b/src/lib/libc/net/getnetnamadr.c index 42410264b1..303ac2cc54 100644 --- a/src/lib/libc/net/getnetnamadr.c +++ b/src/lib/libc/net/getnetnamadr.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: getnetnamadr.c,v 1.24 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: getnetnamadr.c,v 1.25 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Copyright (c) 1997, Jason Downs. All rights reserved. | 4 | * Copyright (c) 1997, Jason Downs. All rights reserved. |
| @@ -66,7 +66,7 @@ static char sccsid[] = "@(#)getnetbyaddr.c 8.1 (Berkeley) 6/4/93"; | |||
| 66 | static char sccsid_[] = "from getnetnamadr.c 1.4 (Coimbra) 93/06/03"; | 66 | static char sccsid_[] = "from getnetnamadr.c 1.4 (Coimbra) 93/06/03"; |
| 67 | static char rcsid[] = "$From: getnetnamadr.c,v 8.7 1996/08/05 08:31:35 vixie Exp $"; | 67 | static char rcsid[] = "$From: getnetnamadr.c,v 8.7 1996/08/05 08:31:35 vixie Exp $"; |
| 68 | #else | 68 | #else |
| 69 | static char rcsid[] = "$OpenBSD: getnetnamadr.c,v 1.24 2005/03/25 13:24:12 otto Exp $"; | 69 | static char rcsid[] = "$OpenBSD: getnetnamadr.c,v 1.25 2005/03/30 02:58:28 tedu Exp $"; |
| 70 | #endif | 70 | #endif |
| 71 | #endif /* LIBC_SCCS and not lint */ | 71 | #endif /* LIBC_SCCS and not lint */ |
| 72 | 72 | ||
| @@ -259,7 +259,7 @@ getnetbyaddr(in_addr_t net, int net_type) | |||
| 259 | char lookups[MAXDNSLUS]; | 259 | char lookups[MAXDNSLUS]; |
| 260 | int i; | 260 | int i; |
| 261 | 261 | ||
| 262 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 262 | if (_res_init(0) == -1) |
| 263 | return(_getnetbyaddr(net, net_type)); | 263 | return(_getnetbyaddr(net, net_type)); |
| 264 | 264 | ||
| 265 | bcopy(_resp->lookups, lookups, sizeof lookups); | 265 | bcopy(_resp->lookups, lookups, sizeof lookups); |
| @@ -347,7 +347,7 @@ getnetbyname(const char *net) | |||
| 347 | char lookups[MAXDNSLUS]; | 347 | char lookups[MAXDNSLUS]; |
| 348 | int i; | 348 | int i; |
| 349 | 349 | ||
| 350 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 350 | if (_res_init(0) == -1) |
| 351 | return (_getnetbyname(net)); | 351 | return (_getnetbyname(net)); |
| 352 | 352 | ||
| 353 | bcopy(_resp->lookups, lookups, sizeof lookups); | 353 | bcopy(_resp->lookups, lookups, sizeof lookups); |
diff --git a/src/lib/libc/net/getrrsetbyname.c b/src/lib/libc/net/getrrsetbyname.c index dcfc86a691..e679eb5d96 100644 --- a/src/lib/libc/net/getrrsetbyname.c +++ b/src/lib/libc/net/getrrsetbyname.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: getrrsetbyname.c,v 1.9 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: getrrsetbyname.c,v 1.10 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Copyright (c) 2001 Jakob Schlyter. All rights reserved. | 4 | * Copyright (c) 2001 Jakob Schlyter. All rights reserved. |
| @@ -126,7 +126,7 @@ getrrsetbyname(const char *hostname, unsigned int rdclass, | |||
| 126 | } | 126 | } |
| 127 | 127 | ||
| 128 | /* initialize resolver */ | 128 | /* initialize resolver */ |
| 129 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 129 | if (_res_init(0) == -1) { |
| 130 | result = ERRSET_FAIL; | 130 | result = ERRSET_FAIL; |
| 131 | goto fail; | 131 | goto fail; |
| 132 | } | 132 | } |
diff --git a/src/lib/libc/net/res_debug.c b/src/lib/libc/net/res_debug.c index 02f9e4a1ea..82a067c1f0 100644 --- a/src/lib/libc/net/res_debug.c +++ b/src/lib/libc/net/res_debug.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: res_debug.c,v 1.19 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: res_debug.c,v 1.20 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * ++Copyright++ 1985, 1990, 1993 | 4 | * ++Copyright++ 1985, 1990, 1993 |
| @@ -78,7 +78,7 @@ | |||
| 78 | static char sccsid[] = "@(#)res_debug.c 8.1 (Berkeley) 6/4/93"; | 78 | static char sccsid[] = "@(#)res_debug.c 8.1 (Berkeley) 6/4/93"; |
| 79 | static char rcsid[] = "$From: res_debug.c,v 8.19 1996/11/26 10:11:23 vixie Exp $"; | 79 | static char rcsid[] = "$From: res_debug.c,v 8.19 1996/11/26 10:11:23 vixie Exp $"; |
| 80 | #else | 80 | #else |
| 81 | static char rcsid[] = "$OpenBSD: res_debug.c,v 1.19 2005/03/25 13:24:12 otto Exp $"; | 81 | static char rcsid[] = "$OpenBSD: res_debug.c,v 1.20 2005/03/30 02:58:28 tedu Exp $"; |
| 82 | #endif | 82 | #endif |
| 83 | #endif /* LIBC_SCCS and not lint */ | 83 | #endif /* LIBC_SCCS and not lint */ |
| 84 | 84 | ||
| @@ -264,7 +264,7 @@ __fp_nquery(const u_char *msg, int len, FILE *file) | |||
| 264 | const HEADER *hp; | 264 | const HEADER *hp; |
| 265 | int n; | 265 | int n; |
| 266 | 266 | ||
| 267 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 267 | if (_res_init(0) == -1) |
| 268 | return; | 268 | return; |
| 269 | 269 | ||
| 270 | #define TruncTest(x) if (x > endMark) goto trunc | 270 | #define TruncTest(x) if (x > endMark) goto trunc |
| @@ -462,7 +462,7 @@ __p_rr(const u_char *cp, const u_char *msg, FILE *file) | |||
| 462 | char rrname[MAXDNAME]; /* The fqdn of this RR */ | 462 | char rrname[MAXDNAME]; /* The fqdn of this RR */ |
| 463 | char base64_key[MAX_KEY_BASE64]; | 463 | char base64_key[MAX_KEY_BASE64]; |
| 464 | 464 | ||
| 465 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 465 | if (_res_init(0) == -1) { |
| 466 | h_errno = NETDB_INTERNAL; | 466 | h_errno = NETDB_INTERNAL; |
| 467 | return (NULL); | 467 | return (NULL); |
| 468 | } | 468 | } |
diff --git a/src/lib/libc/net/res_init.c b/src/lib/libc/net/res_init.c index f4a8d31cb1..110542a404 100644 --- a/src/lib/libc/net/res_init.c +++ b/src/lib/libc/net/res_init.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: res_init.c,v 1.31 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: res_init.c,v 1.32 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * ++Copyright++ 1985, 1989, 1993 | 4 | * ++Copyright++ 1985, 1989, 1993 |
| @@ -60,7 +60,7 @@ | |||
| 60 | static char sccsid[] = "@(#)res_init.c 8.1 (Berkeley) 6/7/93"; | 60 | static char sccsid[] = "@(#)res_init.c 8.1 (Berkeley) 6/7/93"; |
| 61 | static char rcsid[] = "$From: res_init.c,v 8.7 1996/09/28 06:51:07 vixie Exp $"; | 61 | static char rcsid[] = "$From: res_init.c,v 8.7 1996/09/28 06:51:07 vixie Exp $"; |
| 62 | #else | 62 | #else |
| 63 | static char rcsid[] = "$OpenBSD: res_init.c,v 1.31 2005/03/25 13:24:12 otto Exp $"; | 63 | static char rcsid[] = "$OpenBSD: res_init.c,v 1.32 2005/03/30 02:58:28 tedu Exp $"; |
| 64 | #endif | 64 | #endif |
| 65 | #endif /* LIBC_SCCS and not lint */ | 65 | #endif /* LIBC_SCCS and not lint */ |
| 66 | 66 | ||
| @@ -68,6 +68,7 @@ static char rcsid[] = "$OpenBSD: res_init.c,v 1.31 2005/03/25 13:24:12 otto Exp | |||
| 68 | #include <sys/param.h> | 68 | #include <sys/param.h> |
| 69 | #include <sys/socket.h> | 69 | #include <sys/socket.h> |
| 70 | #include <sys/time.h> | 70 | #include <sys/time.h> |
| 71 | #include <sys/stat.h> | ||
| 71 | #include <netinet/in.h> | 72 | #include <netinet/in.h> |
| 72 | #include <arpa/inet.h> | 73 | #include <arpa/inet.h> |
| 73 | #include <arpa/nameser.h> | 74 | #include <arpa/nameser.h> |
| @@ -131,6 +132,8 @@ void *__THREAD_NAME(_res_ext); | |||
| 131 | struct __res_state_ext _res_ext; | 132 | struct __res_state_ext _res_ext; |
| 132 | #endif /* INET6 */ | 133 | #endif /* INET6 */ |
| 133 | 134 | ||
| 135 | int __res_chktime = 30; | ||
| 136 | |||
| 134 | /* | 137 | /* |
| 135 | * Set up default settings. If the configuration file exist, the values | 138 | * Set up default settings. If the configuration file exist, the values |
| 136 | * there will have precedence. Otherwise, the server address is set to | 139 | * there will have precedence. Otherwise, the server address is set to |
| @@ -155,6 +158,14 @@ struct __res_state_ext _res_ext; | |||
| 155 | int | 158 | int |
| 156 | res_init(void) | 159 | res_init(void) |
| 157 | { | 160 | { |
| 161 | |||
| 162 | return (_res_init(1)); | ||
| 163 | } | ||
| 164 | |||
| 165 | int | ||
| 166 | _res_init(int usercall) | ||
| 167 | { | ||
| 168 | struct stat sb; | ||
| 158 | struct __res_state *_resp = _THREAD_PRIVATE(_res, _res, &_res); | 169 | struct __res_state *_resp = _THREAD_PRIVATE(_res, _res, &_res); |
| 159 | #ifdef INET6 | 170 | #ifdef INET6 |
| 160 | struct __res_state_ext *_res_extp = _THREAD_PRIVATE(_res_ext, _res_ext, | 171 | struct __res_state_ext *_res_extp = _THREAD_PRIVATE(_res_ext, _res_ext, |
| @@ -176,6 +187,29 @@ res_init(void) | |||
| 176 | int dots; | 187 | int dots; |
| 177 | #endif | 188 | #endif |
| 178 | 189 | ||
| 190 | if (usercall == 0) { | ||
| 191 | if (_resp->options & RES_INIT && | ||
| 192 | _resp->reschktime >= time(NULL)) | ||
| 193 | return (0); | ||
| 194 | _resp->reschktime = time(NULL) + __res_chktime; | ||
| 195 | if (stat(_PATH_RESCONF, &sb) != -1) { | ||
| 196 | if (timespeccmp(&sb.st_mtimespec, | ||
| 197 | &_resp->restimespec, ==)) | ||
| 198 | return (0); | ||
| 199 | else | ||
| 200 | _resp->restimespec = sb.st_mtimespec; | ||
| 201 | } else { | ||
| 202 | /* | ||
| 203 | * Lost the file, in chroot? | ||
| 204 | * Don' trash settings | ||
| 205 | */ | ||
| 206 | if (timespecisset(&_resp->restimespec)) | ||
| 207 | return (0); | ||
| 208 | } | ||
| 209 | } else | ||
| 210 | _resp->reschktime = time(NULL) + __res_chktime; | ||
| 211 | |||
| 212 | |||
| 179 | /* | 213 | /* |
| 180 | * These three fields used to be statically initialized. This made | 214 | * These three fields used to be statically initialized. This made |
| 181 | * it hard to use this code in a shared library. It is necessary, | 215 | * it hard to use this code in a shared library. It is necessary, |
diff --git a/src/lib/libc/net/res_mkquery.c b/src/lib/libc/net/res_mkquery.c index 28ae92056d..a6c37379f9 100644 --- a/src/lib/libc/net/res_mkquery.c +++ b/src/lib/libc/net/res_mkquery.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: res_mkquery.c,v 1.15 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: res_mkquery.c,v 1.16 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * ++Copyright++ 1985, 1993 | 4 | * ++Copyright++ 1985, 1993 |
| @@ -56,7 +56,7 @@ | |||
| 56 | static char sccsid[] = "@(#)res_mkquery.c 8.1 (Berkeley) 6/4/93"; | 56 | static char sccsid[] = "@(#)res_mkquery.c 8.1 (Berkeley) 6/4/93"; |
| 57 | static char rcsid[] = "$From: res_mkquery.c,v 8.5 1996/08/27 08:33:28 vixie Exp $"; | 57 | static char rcsid[] = "$From: res_mkquery.c,v 8.5 1996/08/27 08:33:28 vixie Exp $"; |
| 58 | #else | 58 | #else |
| 59 | static char rcsid[] = "$OpenBSD: res_mkquery.c,v 1.15 2005/03/25 13:24:12 otto Exp $"; | 59 | static char rcsid[] = "$OpenBSD: res_mkquery.c,v 1.16 2005/03/30 02:58:28 tedu Exp $"; |
| 60 | #endif | 60 | #endif |
| 61 | #endif /* LIBC_SCCS and not lint */ | 61 | #endif /* LIBC_SCCS and not lint */ |
| 62 | 62 | ||
| @@ -94,7 +94,7 @@ res_mkquery(int op, | |||
| 94 | int n; | 94 | int n; |
| 95 | u_char *dnptrs[20], **dpp, **lastdnptr; | 95 | u_char *dnptrs[20], **dpp, **lastdnptr; |
| 96 | 96 | ||
| 97 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 97 | if (_res_init(0) == -1) { |
| 98 | h_errno = NETDB_INTERNAL; | 98 | h_errno = NETDB_INTERNAL; |
| 99 | return (-1); | 99 | return (-1); |
| 100 | } | 100 | } |
diff --git a/src/lib/libc/net/res_query.c b/src/lib/libc/net/res_query.c index 677c411a6e..4af1651cf1 100644 --- a/src/lib/libc/net/res_query.c +++ b/src/lib/libc/net/res_query.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: res_query.c,v 1.22 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: res_query.c,v 1.23 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * ++Copyright++ 1988, 1993 | 4 | * ++Copyright++ 1988, 1993 |
| @@ -56,7 +56,7 @@ | |||
| 56 | static char sccsid[] = "@(#)res_query.c 8.1 (Berkeley) 6/4/93"; | 56 | static char sccsid[] = "@(#)res_query.c 8.1 (Berkeley) 6/4/93"; |
| 57 | static char rcsid[] = "$From: res_query.c,v 8.9 1996/09/22 00:13:28 vixie Exp $"; | 57 | static char rcsid[] = "$From: res_query.c,v 8.9 1996/09/22 00:13:28 vixie Exp $"; |
| 58 | #else | 58 | #else |
| 59 | static char rcsid[] = "$OpenBSD: res_query.c,v 1.22 2005/03/25 13:24:12 otto Exp $"; | 59 | static char rcsid[] = "$OpenBSD: res_query.c,v 1.23 2005/03/30 02:58:28 tedu Exp $"; |
| 60 | #endif | 60 | #endif |
| 61 | #endif /* LIBC_SCCS and not lint */ | 61 | #endif /* LIBC_SCCS and not lint */ |
| 62 | 62 | ||
| @@ -111,7 +111,7 @@ res_query(const char *name, | |||
| 111 | 111 | ||
| 112 | hp->rcode = NOERROR; /* default */ | 112 | hp->rcode = NOERROR; /* default */ |
| 113 | 113 | ||
| 114 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 114 | if (_res_init(0) == -1) { |
| 115 | h_errno = NETDB_INTERNAL; | 115 | h_errno = NETDB_INTERNAL; |
| 116 | return (-1); | 116 | return (-1); |
| 117 | } | 117 | } |
| @@ -193,7 +193,7 @@ res_search(const char *name, | |||
| 193 | int trailing_dot, ret, saved_herrno; | 193 | int trailing_dot, ret, saved_herrno; |
| 194 | int got_nodata = 0, got_servfail = 0, tried_as_is = 0; | 194 | int got_nodata = 0, got_servfail = 0, tried_as_is = 0; |
| 195 | 195 | ||
| 196 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 196 | if (_res_init(0) == -1) { |
| 197 | h_errno = NETDB_INTERNAL; | 197 | h_errno = NETDB_INTERNAL; |
| 198 | return (-1); | 198 | return (-1); |
| 199 | } | 199 | } |
| @@ -332,7 +332,7 @@ res_querydomain(const char *name, | |||
| 332 | const char *longname = nbuf; | 332 | const char *longname = nbuf; |
| 333 | int n; | 333 | int n; |
| 334 | 334 | ||
| 335 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 335 | if (_res_init(0) == -1) { |
| 336 | h_errno = NETDB_INTERNAL; | 336 | h_errno = NETDB_INTERNAL; |
| 337 | return (-1); | 337 | return (-1); |
| 338 | } | 338 | } |
diff --git a/src/lib/libc/net/res_send.c b/src/lib/libc/net/res_send.c index 04eb268d90..ee7ce43035 100644 --- a/src/lib/libc/net/res_send.c +++ b/src/lib/libc/net/res_send.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: res_send.c,v 1.17 2005/03/25 13:24:12 otto Exp $ */ | 1 | /* $OpenBSD: res_send.c,v 1.18 2005/03/30 02:58:28 tedu Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * ++Copyright++ 1985, 1989, 1993 | 4 | * ++Copyright++ 1985, 1989, 1993 |
| @@ -60,7 +60,7 @@ | |||
| 60 | static char sccsid[] = "@(#)res_send.c 8.1 (Berkeley) 6/4/93"; | 60 | static char sccsid[] = "@(#)res_send.c 8.1 (Berkeley) 6/4/93"; |
| 61 | static char rcsid[] = "$From: res_send.c,v 8.12 1996/10/08 04:51:06 vixie Exp $"; | 61 | static char rcsid[] = "$From: res_send.c,v 8.12 1996/10/08 04:51:06 vixie Exp $"; |
| 62 | #else | 62 | #else |
| 63 | static char rcsid[] = "$OpenBSD: res_send.c,v 1.17 2005/03/25 13:24:12 otto Exp $"; | 63 | static char rcsid[] = "$OpenBSD: res_send.c,v 1.18 2005/03/30 02:58:28 tedu Exp $"; |
| 64 | #endif | 64 | #endif |
| 65 | #endif /* LIBC_SCCS and not lint */ | 65 | #endif /* LIBC_SCCS and not lint */ |
| 66 | 66 | ||
| @@ -343,7 +343,7 @@ res_send(const u_char *buf, int buflen, u_char *ans, int anssiz) | |||
| 343 | int n; | 343 | int n; |
| 344 | u_int badns; /* XXX NSMAX can't exceed #/bits in this var */ | 344 | u_int badns; /* XXX NSMAX can't exceed #/bits in this var */ |
| 345 | 345 | ||
| 346 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) { | 346 | if (_res_init(0) == -1) { |
| 347 | /* errno should have been set by res_init() in this case. */ | 347 | /* errno should have been set by res_init() in this case. */ |
| 348 | return (-1); | 348 | return (-1); |
| 349 | } | 349 | } |
diff --git a/src/lib/libc/net/sethostent.c b/src/lib/libc/net/sethostent.c index 2140d65d08..c0eae942ca 100644 --- a/src/lib/libc/net/sethostent.c +++ b/src/lib/libc/net/sethostent.c | |||
| @@ -28,7 +28,7 @@ | |||
| 28 | */ | 28 | */ |
| 29 | 29 | ||
| 30 | #if defined(LIBC_SCCS) && !defined(lint) | 30 | #if defined(LIBC_SCCS) && !defined(lint) |
| 31 | static char rcsid[] = "$OpenBSD: sethostent.c,v 1.7 2005/03/25 13:24:12 otto Exp $"; | 31 | static char rcsid[] = "$OpenBSD: sethostent.c,v 1.8 2005/03/30 02:58:28 tedu Exp $"; |
| 32 | #endif /* LIBC_SCCS and not lint */ | 32 | #endif /* LIBC_SCCS and not lint */ |
| 33 | 33 | ||
| 34 | #include <sys/param.h> | 34 | #include <sys/param.h> |
| @@ -44,7 +44,7 @@ sethostent(int stayopen) | |||
| 44 | { | 44 | { |
| 45 | struct __res_state *_resp = _THREAD_PRIVATE(_res, _res, &_res); | 45 | struct __res_state *_resp = _THREAD_PRIVATE(_res, _res, &_res); |
| 46 | 46 | ||
| 47 | if ((_resp->options & RES_INIT) == 0 && res_init() == -1) | 47 | if (_res_init(0) == -1) |
| 48 | return; | 48 | return; |
| 49 | if (stayopen) | 49 | if (stayopen) |
| 50 | _resp->options |= RES_STAYOPEN | RES_USEVC; | 50 | _resp->options |= RES_STAYOPEN | RES_USEVC; |
