Эта функция используется сервером для присваивания сокету имени. До выполнения функции bind (т.е. присваивания какого-либо имени, вид которого зависит от адресного домена ) сокет недоступен программам-клиентам.
Прототип:
int bind(int s, char * name, int namelen);
Первый параметр - сокет-дескриптор, который данная функция именует. Второй
параметр - указатель на структуру имени сокета, тип которой зависит от домена.
Для UNIX-домена этот тип называется sockaddr_un, он определен во включаемом
файле sys/un.h и выглядит таким образом:
struct sockaddr_un
{
short sun_family;
char sun_path[108];
};
В качестве первого элемента структуры, обозначающего класс адресов, мы будем
использовать константу AF_UNIX, второй элемент - имя файла, который будет
соответствовать используемому сокету.
Файл c именем, указанным в sun_path, действительно создается, поэтому после окончания работы с данным сокетом надо выполнить функцию unlink, в противном случае другие программы, которые попытаются использовать данное имя, получат сообщение об ошибке.