Пишу вообщем скрипт, есть сокет - принимает бродкастовые удп пакеты и отсылает такиеже
socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); socket_set_option($socket, SOL_SOCKET, SO_BROADCAST, 1); socket_bind($socket, 0, $port);
while(1) { if($src = @socket_recv($socket, $data, 1024, 0)) { analize_packet ($data); } }
Вообщем всё работает нормально, но мне нужно знать откуда приходят пакеты (с какого адресса) Измеяю строчку if($src = @socket_recv($socket, $data, 1024, 0)) на if($src = @socket_recvfrom($socket, $data, 1024, 0, $pipe)) ($pipe потипу должен хранить адрес откуда пришел пакет) ну и вообщем после такой замены мой скрипт вылетает после первогже пакета, никаких сообщений об ошибке не пишет. Если кто знает в чем моя ошибка - помогите плз Да кстати скрипт зупускаю из под консоли. Дистр OpenSuSE 10.2