int bind( int socket, const struct sockaddr *address, socklen_t address_len);
Die Funktion namens bind() weist einem Socket mit dem Parameter socket eine Adresse zu. Die Adresse ist vom Typ struct sockaddr (engl.: socket address internet). Ein Rechner kann mehr als eine Internet-Adresse besitzen. Solche Rechner werden als „Multi-Homed“-Systeme bezeichnet. Um nun anzugeben welche Internet-Adresse des Rechners verwendet werden soll, wird die Funktion bind() benötigt. Mittels des Parameter address wird die zu verwendende Internet-Adresse und der zu verwendende Port angegeben. Sollen alle Adressen des Rechners benutzt werden, wird der Internet-Addresse der Wert INADDR_ANY zugewiesen. Die Größe der Struktur address wird durch den Parameter address_len angegeben. Wurde die Funktion erfolgreich durchgeführt, dann liefert sie eine Zahl, die größer als 0 ist.
Beispiel:
int socket_descriptor; struct sockaddr_in server; int return_val; server.sin_family = PF_INET; server.sin_addr.s_addr = INADDR_ANY; server.sin_port = PORT; return_val = bind( socket_descriptor, (struct sockaddr*)&server, sizeof (struct server)); if(return_val < 0) { perror(“bind stream socket”); exit(1); }