Функциии сокета, относящиеся к входящим соединениям. Ниже перечислены новые функции, которые обеспечивают обработку входящих соединений на сервере.
$boolean = bind(SOCK,$my_addr)
Выполняет привязку локального адреса к сокету и возвращает истинное значение при успешном выполнении и ложное - в противном случае. Сокет уже должен быть создан с помощью функции soket(), а упакованный адрес сформирован функцией sockaddr_in() или равнозначной функцией. В части порта адреса может быть указан любой неиспользуемый порт в системе, а в части IP-адреса может быть представлен адрес одного из сетевых интерфейсов хоста, адрес петли обратной связи или символ шаблона INADDR_ANY. Работать с этой функцией также просто, как установить стеклянные перегородки в квартире http://steklo-profi.ru/peregorodki-steklo/peregorodki-v-kvartire.html при наличии профессиональной подготовки.
В системах UNIX для привязки зарезервированных портов с номерами ниже 1024 требуются привилегии суперпользователя (пользователя root). В ином случае при попытке выполнить привязку функция возвращает значение undef и устанавливает в переменной $! значение ошибки доступ запрещен.
Функция bind() обычно вызывается в серверных программах для привязки вновь созданного сокета к известному порту, однако она может быть также вызвана в клиентской программе, если необходимо указать в ней локальный порт и/или сетевой интерфейс.
$boolean = listen(SOCK,$max_queue)
Функция listen() сообщает операционной системе, что сокет будет применяться для приема входящих соединений. Для вызова этой функции используются два параметра: дескриптор файла (должен быть уже создан с помощью функции socket (), и целочисленное значение, указывающее число входящих соединений, которые могут быть поставлены в очередь.