Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

bind()-Aufruf bei AF_UNIX

&pagelevel(4)&pagelevel

Im Fall AF_UNIX besteht name aus einem Pfadnamen. Der Pfadname wird übergeben in einer Variablen vom Typ struct sockaddr_un (siehe "Adress-Struktur sockaddr_un der Adressfamilie AF_UNIX").

Der folgende Programmausschnitt skizziert, wie einem Socket ein Name zugeordnet wird:

#include <sys/types.h>
#include <sys/un.h>
...
struct sockaddr_un sun;
... 
/* Hier müssen die Anweisungen stehen, die "sun" mit dem 
   Pfadnamen versorgen.*/ 
...
bind(s, (struct sockaddr *)&sun, sizeof sun);

Der in der Komponente sun.sun_path anzugebende Pfadname wird durch bind() als Datei im Dateisystem erzeugt. Der Prozess, der bind() aufruft, muss daher die Schreibberechtigung für das Verzeichnis besitzen, in dem die Datei angelegt werden soll. Die Datei wird vom System nicht gelöscht. Deshalb sollte der Prozess die Datei löschen, wenn er sie nicht mehr benötigt.