gethostent(3N-xs) (X/OPEN SOCKETS) gethostent(3N-xs)
NAME
gethostent, gethostbyaddr, gethostbyname, sethostent, endhostent -
Funktionen der Netzrechnerdatei
SYNTAX
cc [flag ...] file ... -lxnet [library ...]
#include <netdb.h>
extern int herrno;
void endhostent(void);
struct hostent *gethostbyaddr(const void *addr, sizet len, int type);
struct hostent *gethostbyname(const char *name);
struct hostent *gethostent(void);
void sethostent(int stayopen);
BESCHREIBUNG
Die Funktionen gethostent, gethostbyaddr und gethostbyname geben einen
Zeiger auf eine Struktur hostent zurück, deren Komponenten die Felder
eines Eintrags in der Netzrechnerdatei enthalten.
Die Funktion gethostent liest jeweils den nächsten Eintrag der Datei
und stellt erforderlichenfalls eine Verbindung zur Datei her.
Die Funktion gethostbyaddr durchsucht die Datei nach dem ersten Ein-
trag, bei dem die über type angegebene Adreßfamilie mit der Komponente
haddrtype übereinstimmt und die Adresse, auf die addr zeigt, in der
Adressenliste haddrlist enthalten ist. Erforderlichenfalls stellt die
Funktion eine Verbindung zur Datei her. (Die Suche beginnt dabei am
Anfang der Datei.) Das Argument addr ist ein Zeiger auf die Adresse im
Binärformat (d. h. ohne Endenull) in der Netzbytereihenfolge, deren
Länge durch das Argument len angegeben wird. Der Datentyp der Adresse
hängt von der Adreßfamilie ab. Für eine Adresse des Typs AFINET, ist
dies eine inaddr-Struktur (definiert in <netinet/in.h>).
Die Funktion gethostbyname durchsucht die Datei nach dem ersten Ein-
trag, bei dem der über name angegebene Rechnername mit der Komponente
hname übereinstimmt. (Die Suche beginnt dabei am Anfang der Datei.)
Erforderlichenfalls stellt die Funktion eine Verbindung zur Datei her.
Die Funktion sethostent stellt eine Verbindung zur Netzrechnerdatei
her und setzt die Position des nächsten Eintrags auf den ersten Ein-
trag. Ist das Argument stayopen nicht Null, wird die Verbindung zur
Datei nicht nach jedem Aufruf von gethostent (entweder direkt oder
indirekt über eine der anderen gethost*-Funktionen) wieder aufgehoben.
Die Funktion endhostent beendet die Verbindung zur Datei.
Seite 1 Reliant UNIX 5.44 Gedruckt 11/98
gethostent(3N-xs) (X/OPEN SOCKETS) gethostent(3N-xs)
RÜCKGABEWERT
Bei erfolgreicher Ausführung geben gethostbyaddr, gethostbyname und
gethostent einen Zeiger auf eine Struktur hostent zurück, wenn der
angeforderte Eintrag gefunden wurde, und einen Null-Zeiger, wenn das
Ende der Datei erreicht oder der angeforderte Eintrag nicht gefunden
wurde. Andernfalls wird ein Null-Zeiger zurückgegeben
Wenn der Vorgang nicht erfolgreich war, wird von den Funktionen
gethostbyaddr und gethostbyname außerdem herrno gesetzt, um den Feh-
ler anzuzeigen.
FEHLER
Für endhostent, gethostent und sethostent sind keine Fehler definiert.
Die Funktionen gethostbyaddr und gethostbyname schlagen in den folgen-
den Fällen fehl, wobei herrno auf den entsprechenden Wert in der
nachfolgenden Liste gesetzt wird. Eventuelle Änderungen von errno sind
nicht spezifiziert.
HOSTNOTFOUND Der Rechner wurde nicht gefunden.
TRYAGAIN Ein temporärer, möglicherweise begrenzter Fehler ist
aufgetreten (beispielsweise, wenn ein Server-Rechner
nicht geantwortet hat).
NORECOVERY Ein unerwarteter Server-Fehler ist aufgetreten, der
nicht behoben werden kann.
NODATA Der Server hat zwar die Anforderung und den Namen
erkannt, es ist jedoch keine Adresse verfügbar. Mögli-
cherweise erfolgt eine Antwort bei einem anderen
Anforderungstyp an den Namens-Server für die Domäne.
ANWENDUNGSZWECK
Die Funktionen gethostent, gethostbyaddr und gethostbyname geben mög-
licherweise Zeiger auf statische Daten zurück, die durch nachfolgende
Aufrufe einer dieser Funktionen überschrieben werden können.
Diese Funktionen werden im allgemeinen mit der Internet-Adreßfamilie
verwendet.
SIEHE AUCH
byteorder(3N-xs), getservent(3N-xs), inet(3N-xs), netdb(5).
Seite 2 Reliant UNIX 5.44 Gedruckt 11/98