Commit Graph

2989 Commits

Author SHA1 Message Date
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
perry 72ec01bc0e Restore some information about the page rounding behavior of these
functions, with a little bit of a caution that the page rounding
behavior isn't mentioned in standards documents that mention brk/sbrk.
Klaus removed this before, but I'm not sure why, and I've been unable
to reach him about the matter after trying for several days. The
information about the behavior has always been in the page and is
important for developers to know about.
1999-07-14 16:24:48 +00:00
kleink e79a283e47 XSH5: change function signature to `void *sbrk(intptr_t)'. 1999-07-12 21:55:19 +00:00
kleink d6127eeb14 Remove a paragraph from previous. 1999-07-12 14:51:10 +00:00
sommerfeld 508d2d0e9e Avoid infinite loop if pathname is longer than the maximum the kernel
is willing to return from getcwd().
(this can only happen in -current).
1999-07-11 18:01:46 +00:00
christos dc1c2ccb47 don't compare non-pointer values against NULL. 1999-07-10 17:48:54 +00:00
perry 0c91d3d222 Note that you can find out the system page size with sysconf(3). 1999-07-09 14:41:26 +00:00
thorpej 602452569d Make sure errno is set to ENOMEM if we return NULL. 1999-07-08 22:18:06 +00:00
danw 687108b42f add the ieeefp functions 1999-07-07 01:55:07 +00:00
danw e8559a61eb mark an asm statement volatile so it doesn't get optimized out 1999-07-07 01:53:38 +00:00
perry f31cd6341c note in BUGS that the prototype of our sbrk is not standards compliant
and will need fixing.
1999-07-06 23:12:04 +00:00
perry eeebdec53e Clean up this mess a lot. I believe we still have the following
issues (at least):

1) sbrk is defined as returning char *, which violates XPG
2) I'm not clear on what happens if you try to sbrk() on a negative
incr that is less than the page size. I'm guessing "nothing", but we
should document this behavior.
3) XPG says some interesting things about whether new pages are
guaranteed zeroed. We say nothing about this. We should document our
behavior.
4) It isn't clear if *we* guarantee that malloc and sbrk can be mixed
in our API (I've documented that it isn't universally portable.)

We really should clean these up, too.
1999-07-06 16:36:15 +00:00
darrenr b1319ee5b3 EOPNOTSUPP was incorrectly spelt as EOPNOSUPPORT
add ENFILE to list of errors.
1999-07-06 14:39:56 +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
thorpej 4d36288136 index -> ldx (and similar in some related variable names). Avoids a lint
warning.
1999-07-05 22:14:38 +00:00
thorpej 55fcfba6fe Oops, back out 1.21. Christos and I apparently stepped on each other. 1999-07-05 22:12:20 +00:00
christos 06b51a1a11 s/index/idx/
s/EXTRA_SANITY/MALLOC_EXTRA_SANITY/
const poisoning
use sysconf to get the pagesize
1999-07-05 21:55:46 +00:00
thorpej 3cedf1e346 Compute page size related parameters at run-time. 1999-07-05 21:49:05 +00:00
thorpej b2146da05a EXTRA_SANITY -> MALLOC_EXTRA_SANITY, consistently. 1999-07-05 21:08:38 +00:00
itojun 06d4151d10 check address family on getting entries from /etc/hosts. 1999-07-04 22:44:28 +00:00
sommerfeld 311927221b Build system call stubs using system includes from ${DESTDIR}/usr/include
if DESTDIR is set.
This allows you to build a working libc which include syscall stubs
for new syscalls not defined in /usr/include/sys/syscall.h
1999-07-04 15:46:10 +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
thorpej f759ceb8bf Only define MADV_FREE do MADV_DONTNEED if it's not already defined
by <sys/mman.h>.
1999-07-04 03:12:47 +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
wrstuden 1d74ac18fa Give fhopen, fhstat, and fhstatfs a man page. 1999-06-30 01:32:14 +00:00
wrstuden db40a6d795 Bump version #. 1999-06-29 22:30:19 +00:00
wrstuden e401af6e26 Add fhopen, fhstat, and fhstatfs syscall stubs. 1999-06-29 22:22:06 +00:00
pk 0ffda58ae9 A new implementation of _setjmp/_longjmp that uses the T_FLUSHWIN trap.
This means the stack frame and program counter can restored directly
from the jmp_buf, eliminating the need to backtrack through frames
which does not work in all cases.
1999-06-27 11:10:18 +00:00
tls e89d5d52c5 The 'new malloc' (phk's malloc, from FreeBSD) is now our only malloc. 1999-06-26 04:44:36 +00:00
sommerfeld 8f37bce679 fix PR/7855 1999-06-26 04:12:45 +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 adb46f40b2 Add missing reference to setsockopt(2) to "SEE ALSO" section. 1999-06-24 20:16:31 +00:00
kleink 7b67bca335 Add compile-time and run-time feature test knobs for the 1003.1 Mapped Files,
Process Memory Locking, Range Memory Locking and Memory Protection options.
1999-06-24 14:18:10 +00:00
tron d7678457d6 Fix definition of infinity. Patch supplied by Richard Earnshaw in
PR lib/7829.
1999-06-21 22:31:32 +00:00
thorpej 9b9494844a MCL_FUTURE is now implemented. 1999-06-18 05:37:30 +00:00
thorpej 3787c5c3d8 MAP_COPY -> MAP_PRIVATE 1999-06-17 21:09:47 +00:00
tls 3e2a95b2e4 add FreeBSD's malloc, compiled in only if MALLOC_NEW is set in mk.conf 1999-06-17 19:33:36 +00:00