Commit Graph

51 Commits

Author SHA1 Message Date
kleink 4e3cae58ff Move the (at this time private) get{proto,serv}ent_r() prototypes and
data structures into the libc sources until the interface gets redone.
Approved by christos.
2005-04-18 19:39:45 +00:00
kleink 53b42c4e52 Add restrict qualifiers to getaddrinfo() and getnameinfo() arguments. 2005-03-21 13:30:50 +00:00
kleink f62b22c92b Remove already #if 0'ed getipnode*() prototypes and related definitions;
we are not going to ship those.
2005-03-17 10:16:14 +00:00
perry 19b7469a00 de-__P -- the hack is long since useless. Discussed with christos,
matt, kleink, others. Approved by christos.
2005-02-03 04:39:32 +00:00
itojun 384b8c15c2 remove NI_WITHSCOPEID 2004-11-16 06:00:51 +00:00
christos 88ae7d9d8f Resolve conflicts. 2004-11-07 01:48:01 +00:00
jmc a2d438e65c Fix proto for gethostent to match reality (takes void args) 2004-08-17 04:24:16 +00:00
ginsbach 30ef75e3f4 Restore gethostent() as a supported interface. Yes, it maybe obsolete
but it is specified by IEEE Std 1003.1, 2004 Edition (POSIX) and
the X/Open standards (Issue 6 and XNS 5.2).

* revert change removing gethostent() from gethostbyname(3) man page
* delete kruft from gethnamaddr.c leaving only gethostent() as a
  wrapper around _gethtent().
* revert recent changes to <netdb.h>
  + restore gethostent() prototype
  + restore freehostent() prototype; handle similar to non-shipped
    getipnodby*() prototypes
  + use correct XOPEN_SOURCE version (520 not 500) for freeaddrinfo()
    prototype; interface specified by XNS5.2 not XNS5

Reviewd by <christos> and <drochner>.
2004-08-17 02:29:56 +00:00
drochner e6dd3245b7 Delete prototypes for gethostent() and freehostent();
there functions don't exist in libc.
2004-08-11 16:13:00 +00:00
christos afa83b513a notyet is in the users namespace as pointed out by klaus. 2004-05-25 14:49:38 +00:00
christos fdaf51dfc9 we don't implement getipnode*(), so don't define their flags for now. It
confuses some software (ntpd).
2004-05-25 13:55:48 +00:00
yamt 7ca373cce9 remove a duplicated prototype of getprotoent_r. 2004-05-24 12:34:28 +00:00
christos 3bffc96400 Import selected changes from bind9. Follow the copyright structure there. 2004-05-21 02:14:39 +00:00
kleink 5f2ea73659 * __sparc64__ -> __sparc__ && _LP64,
* add a comment on the purpose of __ai_pad0.
Both suggested by mrg.
2004-05-08 18:55:23 +00:00
kleink 8d54bc1847 struct netnet.n_net used to be an unsigned long integer.
In XNS5, and subsequently in POSIX-2001 it was changed to socklen_t.

To accomodate for this while preserving binary compatibility with the
old interface, prepend or append 32 bits of padding, depending on
the (LP64 data model) architecture's endianness.  Fixes PR
standards/21411 from Ben Harris.

This should be deleted the next time the libc major number is
incremented.

Also, update getnetbyaddr(3)'s `net' argument accordingly.
2004-05-08 18:52:15 +00:00
itojun 0fc4d34dfc fix comment (there could be more than 3 AI_xxx) 2004-04-14 04:37:59 +00:00
itojun a1b7e86ab4 implement AI_NUMERICSERV (as defined in RFC3493) 2004-04-14 04:37:06 +00:00
christos 639e111c0e Do not expose the current implementation of the serv*_r proto*_r functions,
since this is not how we will implement them when we do. From discussions
with Brian Ginsbach and Soda-san.
2004-03-20 18:22:22 +00:00
christos a2ef38401f in servent and protent data:
- add a dummy field for extensions.
- add a line field to keep the current line buffer.
2004-02-23 16:05:19 +00:00
christos 885e0fc7f3 protoent_r/servent_r 2004-02-19 19:30:30 +00:00
agc 039cc95684 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22270, verified by myself.
2003-08-07 09:44:09 +00:00
bjh21 86abe62ffa Header cleanup:
* IPv6 functions are in POSIX-2001, so make them visible there.
* freehostent(), getipnodebyaddr() and getipnodebyname() are _only_ in
  XNS5.2, so don't expose them to XSH6 or POSIX applications.
2003-05-05 14:20:03 +00:00
bjh21 4be7a2dcf3 Add a new feature-test macro, _NETBSD_SOURCE. If this is defined
by the application, all NetBSD interfaces are made visible, even
if some other feature-test macro (like _POSIX_C_SOURCE) is defined.
<sys/featuretest.h> defined _NETBSD_SOURCE if none of _ANSI_SOURCE,
_POSIX_C_SOURCE and _XOPEN_SOURCE is defined, so as to preserve
existing behaviour.

This has two major advantages:
+ Programs that require non-POSIX facilities but define _POSIX_C_SOURCE
  can trivially be overruled by putting -D_NETBSD_SOURCE in their CFLAGS.
+ It makes most of the #ifs simpler, in that they're all now ORs of the
  various macros, rather than having checks for (!defined(_ANSI_SOURCE) ||
  !defined(_POSIX_C_SOURCE) || !defined(_XOPEN_SOURCE)) all over the place.

I've tried not to change the semantics of the headers in any case where
_NETBSD_SOURCE wasn't defined, but there were some places where the
current semantics were clearly mad, and retaining them was harder than
correcting them.  In particular, I've mostly normalised things so that
_ANSI_SOURCE gets you the smallest set of stuff, then _POSIX_C_SOURCE,
_XOPEN_SOURCE and _NETBSD_SOURCE in that order.

Tested by building for vax, encouraged by thorpej, and uncontested in
tech-userlevel for a week.
2003-04-28 23:16:11 +00:00
wiz c053751628 compatibility, not compatiblity. 2003-01-06 13:26:24 +00:00
itojun d4a64790e3 remove unused/unsupported AI_xx. notified by PR 18072 2002-08-26 13:38:19 +00:00
kleink a24f74d0fd Turn the flags argument to getnameinfo(3) back into an int (from unsigned
int); this is consistent with RFC2553, the current draft-ietf-ipngwg-
rfc2553bis-05 and the majority of deployed implementations.

Also, there is an effort under way to have this changed back to int in
XBD6/XSH6, XNS, and POSIX-2001 TC1.
2002-05-22 09:42:37 +00:00
kleink 4b77e72e94 More XNS5.2/POSIX-2001 alignment: change the flags argument to
getnameinfo() from int to unsigned int.
2002-05-14 14:35:36 +00:00
kleink 485febee55 Align with XNS5.2/POSIX-2001: change hostlen and servlen arguments to
getnameinfo() from size_t to socklen_t.
2002-05-14 14:31:05 +00:00
kleink 06d36d9eee struct addrinfo.ai_addrlen used to be a size_t, per RFC 2553.
In XNS5.2, and subsequently in POSIX-2001 and draft-ietf-ipngwg-rfc2553bis-02
it was changed to a socklen_t.

To accomodate for this while preserving binary compatibility with the
old interface, prepend or append 32 bits of padding, depending on
the (LP64 data model) architecture's endianness.

This should be deleted the next time the libc major number is
incremented.
2002-05-14 13:45:13 +00:00
kleink 17aaf20cdd Update several name space/feature protection tests to check for
_XOPEN_SOURCE >= 520 (XNS 5.2), either rigging it for that version or
replacing the (wrong) test for >= 500.
2002-05-10 22:02:11 +00:00
kleink 91491e8dda Change the `len' arguemtn to gethostbyaddr(3) from int to socklen_t in
accordance with XNS5.2; fixes PR standards/12703.
2001-04-26 12:55:31 +00:00
lukem f02175ae7a be consistent with #define<TAB> usage 2000-07-30 06:33:18 +00:00
kleink 11ecb446f3 Avoid recursion with traditional cpp. 2000-07-28 09:33:28 +00:00
itojun b757ddbced correct arg type for getnameinfo(3) for RFC2553 conformance. 2000-06-04 08:51:23 +00:00
itojun 34a6354b59 revise extended scoped address format support. delimiter and the order
is changed, based on discussion in ipngwg scoped address cabal.
past code:	fe80::1@de0
now:		de0%fe80::1
this will be in sync with next extended address format proposal
(which should be final - I don't want to make this kind of change again).
2000-02-09 12:25:06 +00:00
mjl 0654fab2c2 Correct typo in comment. 2000-01-05 14:40:14 +00:00
itojun 50b9510128 hide functions that are not supplied. 1999-12-20 06:48:11 +00:00
itojun 9e39347354 add #define for kame's extension to scoped IPv6 numeric address.
(see draft-ietf-ipngwg-scopedaddr-format-00.txt)
1999-12-12 10:49:37 +00:00
kleink 48ce8436f2 * Since we actually only need size_t to be defined, nuke the previous inclusion
of <sys/types.h> and define size_t via <machine/ansi.h>.
* Various namespace protection issues, using XNS5.2 D2.0 as a reference.
1999-07-03 13:25:21 +00:00
itojun 10f59f2d42 define IPv6 library functions and structures, as defined in
RFC2292 and RFC2553.
define internal state structure for IPv6-transport resolver.

Commits for source code will follow.
1999-07-01 18:15:41 +00:00
kleink ca01c95791 * Remove the inclusion of <sys/param.h>; the most common use for this was
the MAXHOSTNAMELEN constant whose semantics are not intended for network
  database lookup operations, and which pollutes name space.
* Per XSH98, provide symbols from <inttypes.h>.
* Add various bits of name space protection.
1998-05-10 17:32:39 +00:00
perry dde65b6a43 fix/restore Id 1998-02-03 04:20:36 +00:00
perry b7b7322c68 merge lite-2 1998-02-02 21:07:13 +00:00
lukem 313ab54809 rcsid fascism 1997-10-13 09:26:06 +00:00
mrg 5be792e647 merge bind 4.9.5-P1. 1997-04-13 09:26:21 +00:00
mrg 70ee0aa047 update these for bind 4.9.3-p1. 1996-02-02 15:29:01 +00:00
jtc 30fcda93af Declare h_error as suggested by PR #1065 and done by many other systems. 1995-07-03 22:59:12 +00:00
cgd 4d2cbfce0a new RCS ID format. 1994-10-26 00:55:40 +00:00
deraadt bc93d2c77e new resolver. changes from 4.9.2 by <paul@vix.com>, as well as a number
of features and optimizations by myself.
1994-04-07 06:58:29 +00:00
mycroft e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00