Loading...
Select Version
&pagelevel(5)&pagelevel
Bei der Adressfamilie AF_INET besteht ein Name aus einer Internet-Adresse und einer Portnummer. Für die Adressfamilie AF_INET verwenden Sie die Adress-Struktur sockaddr_in.
Die Struktur sockaddr_in ist in der Include-Datei <netinet/in.h> wie folgt deklariert:
struct sockaddr_in {
sa_family_t sin_family; /* Adressfamilie */
in_port_t sin_port; /* 16 bit Portnummer */
struct in_addr sin_addr; /* 32 bit Internet-Adresse */;
unsigned char sin_zero[8];
};
struct in_addr {
in_addr_t s_addr;
};
Mit den folgenden Anweisungen versorgen Sie eine Variable server vom Typ struct sockaddr_in mit einem Namen:
struct sockaddr_in server; ... server.sin_family = AF_INET; server.sin_port = htons(8888); server.sin_addr.s_addr = htonl(INADDR_ANY);
Ein Zeiger auf die Variable server kann nun als aktueller Parameter z.B. bei einem bind()-Aufruf übergeben werden, um den Namen an einen Socket zu binden:
bind (..., (struct sockaddr *)&server, ...); /* bind()-Aufruf mit Typ-Konvertierung */