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 */