getservent

Autres langues

Langue: de

Version: 1. November 1996 (openSuse - 09/10/07)

Section: 3 (Bibliothèques de fonctions)

BEZEICHNUNG

getservent, getservbyname, getservbyport, setservent, endservent - hole Dienstdateieintrag

ÜBERSICHT


#include <netdb.h>



struct servent *getservent(void);



struct servent *getservbyname(const char *name, const char *proto);



struct servent *getservbyport(int port, const char *proto);



void setservent(int stayopen);



void endservent(void);

BESCHREIBUNG

Die Funktion getservent() liest die nächste Zeile der Datei /etc/services und gibt eine Struktur servent zurück, die die Felder der Zeile enthält. Die Datei /etc/services wird geöffnet, falls nötig.

Die Funktion getservbyname() gibt eine Struktur servent zurück für die Zeile aus /etc/services die dem Dienst name entspricht, der Protokoll proto benutzt.

Die Funktion getservbyport() gibt eine Struktur servent zurück für die Zeile, die dem Port port, angegeben in Netzwerk-Byte-Ordnung, entspricht, der Protokoll proto benutzt.

Die Funktion setservent() öffnet die Datei /etc/services und setzt den Dateizeigen auf den Anfang. Wenn stayopen wahr (1) ist, dann wird die Datei nicht geschlossen zwischen Aufrugen von getservbyname() und getservbyport().

Die Funktion endservent() schließt /etc/services.

Die Struktur servent ist in <netdb.h> wie folgt definiert:




struct servent {

        char    *s_name;        /* offizieller Dienstname */

        char    **s_aliases;    /* Aliasliste */

        int     s_port;         /* Portnummer */

        char    *s_proto;       /* zu benutzendes Protokoll */

}



Die Einträge der Struktur servent sind:

s_name
Der offizielle Name der Dienstes.
s_aliases
Eine mit Null beendete Liste von alternativen Namen für den Dienst.
s_port
Die Portnummer angegeben in Netzwerk-Byte-Ordnung.
s_proto
Der Name des Protokolles, das mit diesem Dienst zu benutzen ist.

RÜCKGABEWERT

Die Funktionen getservent(), getservbyname() und getservbyport() geben die Struktur servent zurück oder einen NULL-Zeiger wenn ein Fehler auftritt bzw. das Ende der Liste erreicht ist.

DATEIEN

/etc/services
Dienstdatenbankdatei

KONFORM ZU

BSD 4.3

SIEHE AUCH

getprotoent(3), getnetent(3), services(5).