int socket( int domain, int type, int protocol);
Die Funktion socket() erzeugt einen Socket. Als Parameter erwartet die Funktion die Protokollfamilie (Parameter int domain) z.B. die Internet-Protokollfamilie PF_INET (auch Internet- Domain genannt), den Socket-Type (Parameter in type) - Z. B. SOCK_STREAM - und die Angabe eines Protokolls (Parameter int protocol). Mit dem Parameter protocol wird ein spezifisches Protokoll zum Parameter type ausgewählt. In der Regel erhält dieser Parameter den Wert 0. Ist der Wert nicht 0, dann wird ein Protokoll aus der Datei /etc/services ausgewählt.
Konnte ein Socket erfolgreich erzeugt werden, liefert die Funktion eine positive Zahl, die den Socket identifiziert. Ist die Funktion nicht erfolgreich ausgeführt worden, so liefert sie einen negativen Fehlercode.
Beispiel:
int socket_descriptor; socket_descriptor = socket ( PF_INET, SOCK_STREAM, 0); if(socket_descriptor < 0) { perror(“open stream socket”); exit(1); }