/* @(#)$Id: netdb.h,v 2.1 90/04/05 15:06:01 sources Exp $ */
* Copyright (c) 1980,1983,1988 Regents of the University of California.
* Redistribution and use in source and binary forms are permitted
* provided that this notice is preserved and that due credit is given
* to the University of California at Berkeley. The name of the University
* may not be used to endorse or promote products derived from this
* software without specific prior written permission. This software
* is provided ``as is'' without express or implied warranty.
* @(#)netdb.h 5.9 (Berkeley) 4/5/88
* Structures returned by network
* data base library. All addresses
* are supplied in host order, and
* returned in network order (suitable
* for use in system calls).
char *h_name
; /* official name of host */
char **h_aliases
; /* alias list */
int h_addrtype
; /* host address type */
int h_length
; /* length of address */
char **h_addr_list
; /* list of addresses from name server */
#define h_addr h_addr_list[0] /* address, for backward compatiblity */
* Assumption here is that a network number
* fits in 32 bits -- probably a poor one.
char *n_name
; /* official name of net */
char **n_aliases
; /* alias list */
int n_addrtype
; /* net address type */
unsigned long n_net
; /* network # */
char *s_name
; /* official service name */
char **s_aliases
; /* alias list */
char *s_proto
; /* protocol to use */
char *p_name
; /* official protocol name */
char **p_aliases
; /* alias list */
int p_proto
; /* protocol # */
struct hostent
*gethostbyname(), *gethostbyaddr(), *gethostent();
struct netent
*getnetbyname(), *getnetbyaddr(), *getnetent();
struct servent
*getservbyname(), *getservbyport(), *getservent();
struct protoent
*getprotobyname(), *getprotobynumber(), *getprotoent();
* Error return codes from gethostbyname() and gethostbyaddr()
* (left in extern int h_errno).
#define HOST_NOT_FOUND 1 /* Authoritative Answer Host not found */
#define TRY_AGAIN 2 /* Non-Authoritive Host not found, or SERVERFAIL */
#define NO_RECOVERY 3 /* Non recoverable errors, FORMERR, REFUSED, NOTIMP */
#define NO_DATA 4 /* Valid name, no data record of requested type */
#define NO_ADDRESS NO_DATA /* no address, look for MX record */