Provided by:
manpages-de-dev_0.10-1_all 
BEZEICHNUNG
gethostbyname, gethostbyaddr, sethostent, endhostent, herror - Lesen
der Netzwerk Rechnereintrage
Diese Handbuchseite ist eventuell veraltet. Im Zweifelsfall ziehen Sie
die englischsprachige Handbuchseite zu Rate, indem Sie
man -LC 3 gethostbyname
eingeben.
"UBERSICHT
#include <netdb.h>
extern int h_errno;
struct hostent *gethostbyname(const char *name);
struct hostent *gethostbyaddr(const char *addr, int len, int type);
void sethostent(int stayopen);
void endhostent(void);
void herror(const char *s);
BESCHREIBUNG
Die gethostbyname()-Funktion liefert fur den angegebenen Host name eine
Struktur vom Typ hostent zuruck. Falls name nicht mit einem Punkt
endet, dann werden die aktuelle und die daruberliegenden Domains
durchsucht. Wenn name nicht mit einem Punkt endet und die
Umgebungsvariable HOSTALIASES gesetzt ist, dann wird zuerst in der
Alias-Datei auf die HOSTALIASES zeigt nach name gesucht.
Die gethostbyaddr()-Funktion liefert fur die angegebene Adresse addr
mit der Lange len vom Adresstyp type eine Struktur vom Typ hostent
zuruck. Der z.Zt. einzig gultige Adresstyp ist AF_INET.
Die sethostent()-Funktion legt fest, falls stayopen wahr (1) ist, dass
eine bestehende TCP-Verbindung fur Nameserveranfragen genutzt werden
soll und dass die Verbindung fur die nachfolgenden Anfragen offen
bleiben soll. Ansonsten werden fur Nameserveranfragen UDP-Datagramme
benutzt.
Die endhostent()-Funktion beendet die Benutzung einer TCP-Verbindung
fur Namerserveranfragen.
Die herror()-Funktion gibt die zum aktuellen Wert von h_errno gehorende
Fehlermeldung auf stderr aus.
Die Funktionen gethostbyname() und gethostbyaddr() benutzen fur ihre
Anfragen den Nameserver named(8), die Datei /etc/hosts und den Network
Information Service (NIS oder YP). Was davon und in welcher Reihenfolge
benutzt wird, bestimmt die order-Zeile in der Datei /etc/host.conf
Siehe dazu auch resolv+(8) Das Standardverhalten ist zuerst den
Nameserver zu befragen und danach die Datei /etc/hosts zu durchsuchen.
Die hostent-Struktur ist in <netdb.h> folgendermaBen definiert:
struct hostent {
char *h_name; /* Offizieller Name des Rechners */
char **h_aliases; /* Aliasliste */
int h_addrtype; /* Host-Adress-Typ */
int h_length; /* Adresslange */
char **h_addr_list; /* Adressliste */
}
#define h_addr h_addr_list[0] /* fur Abwartskompatibilitat */
Die Felder der hostent-Struktur sind:
h_name Der Offizielle Name des Rechners.
h_aliases
Ein Null-terminiertes Array mit den alternativen Namen des
Rechner.
h_addrtype
Adresstyp, z.Zt. immer AF_INET.
h_length
Die Lange der Adresse in Bytes.
h_addr_list
Ein Null-terminiertes Array von Netzwerkadressen des Rechners in
der Netzwerk-Byte-Reihenfolge (network byte order).
h_addr Die erste Adresse in h_addr_list fur Abwartskompatibilitat.
R"UCKGABEWERTE
Die gethostbyname()-und gethostbyaddr()-Funktionen liefern eine
hostent-Struktur zuruck. Bei einem Fehler wird ein NULL-Zeiger
zuruckgegeben, in diesem Fall enthalt die Variable h_errno die
Fehlernummer.
FEHLER
Die Variable h_errno kann folgende Werte annehmen.
HOST_NOT_FOUND
Der angegebene Rechner ist unbekannt.
NO_ADDRESS
Der angegebene Name ist gultig, aber es existiert dazu keine IP-
Adresse.
NO_RECOVERY
Ein nichtbehebbarer Nameserverfehler ist aufgetreten.
TRY_AGAIN
Beim zustandigen Nameserver ist ein vorubergehender Fehler
aufgetreten. Versuchen Sie es spater nochmals.
DATEIEN
/etc/host.conf
Konfigurationsdatei des Namenauflosers (resolver).
/etc/hosts
Rechnerdatenbankdatei
KONFORM ZU
BSD 4.3
SIEHE AUCH
resolver(3), hosts(5), hostname(7), resolv+(8), named(8).