Commit Graph

264 Commits

Author SHA1 Message Date
is bcb4c98ba9 Properly check for overflows. Fixes PR8314 as annotated by mjl. 1999-11-13 04:52:50 +00:00
jdolecek 894f4bc996 add freeaddrinfo(3) and gai_strerror(3) as links to getaddrinfo(3) 1999-11-10 22:41:00 +00:00
is 94efbddebd Check for invalid component numbers (wrong hex "digits", octal numbers
with digits of 8 or 9) and complain. Fixes PR 8314 by ITOH Yasufumi (but
adding the check of hexadecimal numbers).
1999-11-03 11:47:02 +00:00
lukem 0e4f2591aa change default nsswitch.conf entry for `hosts' from:
hosts: dns files
to
	hosts: files dns

this should speed things up a lot at boot if hostnames that are in
/etc/hosts are used for ifconfig, route, etc.
1999-10-24 12:36:02 +00:00
kleink 749057fddc Need internal names for these, too. 1999-09-20 15:07:21 +00:00
lukem d896261208 back out the #ifdef _DIAGNOSTIC argument checks; too many people complained.
_DIAGASSERT() is still retained.
1999-09-20 04:38:56 +00:00
lukem 2393f50e9e return NS_UNAVAIL if args are dodgy 1999-09-16 23:43:52 +00:00
lukem b48252f365 * use _DIAGASSERT() to check pointer arguments against NULL and file
descriptors against -1 (as appropriate).
* add actual checks which to detect stuff that would trigger_DIAGASSERT(),
  and attempt to return a sane error condition.
* knf some code
* remove some `register' decls.

the first two items result in the addition of code similar to the
following in various functions:

		_DIAGASSERT(path != NULL)
	#ifdef _DIAGNOSTIC
		if (path == NULL) {
			errno = EFAULT;
			return (-1);
		}
	#endif
1999-09-16 11:44:54 +00:00
kleink 252971afdb Add indirect reference stubs for inet_[ap]ton() for environments not supporting
weak aliases; addresses PR lib/7435 but leaves the original file intact.
1999-09-15 14:21:01 +00:00
kleink 5f3726439e Need "namespace.h". 1999-08-22 12:54:02 +00:00
itojun 46c3891136 bring in IPv6 numeric address parsing fix from bind821.
XXX bind821 should be imported here
1999-08-17 17:50:27 +00:00
mycroft 9f5f4ac699 Make some needed weak aliases. 1999-08-17 03:58:39 +00:00
mycroft 6ea04fe2cd This file was incorrect. The indirect name is res_close(),
not _res_close()!
1999-08-17 03:57:15 +00:00
itojun 94c4bdf1cc pacify too-picky compiler.
From: onoe@sm.sony.co.jp
1999-08-13 09:45:51 +00:00
itojun daa44a5758 do not make reverse query against IPv6 unspecified, or loopback addresses.
From: ume@mahoroba.org
1999-08-09 15:00:14 +00:00
itojun bc3bad7a1c - provide reverse query for mapped address (::ffff:10.1.1.1).
- NI_NUMERICHOST and NI_HOSTREQD conflict with each other,
  so bark if there are both.
(sync with recent KAME)
1999-08-01 06:45:28 +00:00
christos caf92b66b5 - make sure that host_addr is suitably aligned
- add appropriate casts
- take out & in from array; it is meaningless
1999-07-19 19:42:27 +00:00
tron 5f9dd87d66 Make sure that "h_addr_list" pointers are longword aligned because some
broken applications depend on it. Fixes PR lib/8032 by David K Brownlee.
1999-07-19 17:43:59 +00:00
itojun f958dccbd1 - do not make query for AFs that are not supported by kernel.
i.e. do not make query for IPv6 addresses, when running on non-IPv6 kernel,
  or, do not query for IPv4 address on IPv6-only kernel :-)

  This kind of behavior is not very well documented in RFC2553.  This
  may violate the spec.

- on EAI_AGAIN, only retry 3 times (3 is a magic number).  Previous code
  made retries forever.  This solves situation where name server is wrongly
  configured and nameserver:53 returns icmp port unreach.

The only proper fix for all getaddrinfo() related twists would be to
implement getipnodebyname() and get rid of wacky get_addr().
We need to contribute bind8 development for this.
1999-07-14 22:10:03 +00:00
itojun 2842a2f6bb fix name resolution problem when you have "hosts: files dns" on
/etc/nsswitch.conf.

This was because of two reasons:
- /etc/hosts lookup code damaged some of internal
  state used by gethostbyname2().
- getaddrinfo() was not persistent enough against errors.

Sorry for the delay, and hope this fix all the following PRs
(I checked in my environment immitating those PRs and it worked for me)
PR: 7901, 7912, 7921
1999-07-06 02:00:41 +00:00
itojun 06d4151d10 check address family on getting entries from /etc/hosts. 1999-07-04 22:44:28 +00:00
itojun db0f8786bd if the list of name server on /etc/resolv.conf is in a
non-supported AF, try the next nameserver instead of abort.

This helps situations like:
- you write IPv6 nameserver into /etc/resolv.conf and
- run non-IPv6 kernel
1999-07-04 03:52:55 +00:00
lukem abd1f8ab5b capitalize the first word of most error strings except those words that are
argument names to the function. e.g, if `const char *servname' is an argument
name, keep using "servname invalid [...]" instead of "Servname invalid [...]"
1999-07-04 02:02:29 +00:00
itojun 4620b00436 add NetBSD RCSID on top. 1999-07-04 00:43:43 +00:00
itojun d505f1145c fix USE_GETIPNODEBY case. 1999-07-04 00:34:20 +00:00
itojun f69724e659 fix behavior when there's dangling CNAME on specific AF.
TODO: have getipnodeby{name,addr} and let them do the trick.
1999-07-04 00:33:14 +00:00
itojun a45fa8f3c7 improve lint friendliness on USE_GETIPNODEBY case.
(no change in behavior)
1999-07-03 14:29:29 +00:00
kleink 350df37660 Add a reference to XNS5.2 D2.0 for inet_{ntop,pton}(). 1999-07-03 14:16:12 +00:00
kleink 4531426e5f Add missing LIBRARY sections. 1999-07-03 13:58:31 +00:00
kleink b1b0fd03a8 <sys/errno.h> -> <errno.h>; kill our own declaration of errno (_REENTRANT!). 1999-07-03 13:57:26 +00:00
lukem b8e9b3ff69 remove trailing `.' on error messages, since messages from strerror() and
h_strerror() don't return messages with a trailing `.' (and the `.' looks
ugly when using warnx() with the error message).
1999-07-03 07:00:42 +00:00
kleink 312f023d61 Need "namespace.h". 1999-07-02 15:27:08 +00:00
itojun 37e8159125 add IPv6 support functions.
get{addr,name} info are implemented to have as little impact to existing
resolver code as possible, so they are NOT the optimal implementation.
They are at this moment not very thread safe (as they call
gethostby{name,addr}).

(shlib minor version)++, as new interfaces are added.

TODO: getipnodeby{name,addr} - which needs total reimplementation of
gethostby{name,addr}.
upgrade rcmd.c for multiple af support (needed for IPv6-ready rsh/rlogin)
1999-07-01 18:23:53 +00:00
itojun e24b45d811 IPv6 DNS transport support for resolver.
Now you can write
	nameserver 3ffe:0501:4819::42
in /etc/resolv.conf for DNS query over IPv6 network.
(the above address is alive as DNS server)
1999-07-01 18:19:35 +00:00
itojun 7f7f5bff87 document gethostbyname2(). 1999-07-01 18:18:27 +00:00
itojun e061ef3163 fix hardcoded T_A.
this fixes gethostbyname2(host, AF_INET6) to actually work.
1999-07-01 16:43:18 +00:00
sommerfeld fc8fafa627 Clarify that sdl->sdl_len must be initialized before call to link_addr() 1999-06-25 16:13:21 +00:00
tron 23b3336739 As discussed on "tech-net@netbsd.org":
Enhance the file resolver to return all IP addresses of a host on a
call to gethostbyname().
1999-06-02 22:14:07 +00:00
kleink 0b4eeeca95 Use a _files prefix for local backend routines; would clash with namespace.h
otherwise.
1999-05-04 15:11:42 +00:00
christos 5b997c7925 Remove unused 'len' and the relevant gcc kludges. 1999-05-04 13:51:39 +00:00
christos 180ff547a4 int -> socklen_t 1999-05-03 15:26:12 +00:00
christos 588dd8cf5a Don't bother de-linting inside __GNUC__ ifdefs. 1999-05-03 15:20:28 +00:00
christos 8fe3352a10 sprinkle argsused till lint smiles at you. 1999-05-03 15:17:13 +00:00
christos bcb1db5f7b Make these work again, by undef'ing the macro that could cause syntax errors.
Also add NOSTRICT in the {h,n}to{n,h}s() cases where the prototype would get
widened...
1999-05-03 13:12:34 +00:00
mycroft 77b2201463 Do a lame hack to reduce the size of the lexer state buffer, which reduces
memory consumption substantially.  The buffer is only used to print line
numbers...
1999-04-22 00:37:42 +00:00
lukem 257ec2e899 specifically include stdarg/varargs.h 1999-04-18 02:27:53 +00:00
mycroft 68d6f4bf44 Remove spurious .ne's. 1999-03-24 06:27:49 +00:00
garbled 38c96853cf Last of the .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Wheee!
1999-03-22 19:44:33 +00:00
fair 0204f38aae Several things: a patch from PR#6355, nroff/mandoc cleanup, and
update a reference to RFC 1884 to RFC 2373.
1999-03-17 23:19:43 +00:00
christos 3bb2365914 - fix gcc-2.8.1 warnings
- portability fix: Don't use bindresvport() if !BSD4_4 because we could
  be on an operating system where it takes different arguments (hint, hint).
1999-03-16 18:15:13 +00:00