LINUX.ORG.RU

INADDR_BROADCAST


0

0

Товарищи, подкиньте сокет на перле для отправки и приёма широковещательных удп, а то чё-то я запоролся совсем.

anonymous

Что-то типа этого должно прокатить. Только обработку ошибок надо 
добавить конечно. 

...
    my $socket;
    my $proto = getprotobyname('udp');
    socket($socket, PF_INET, SOCK_DGRAM, $proto);
    setsockopt($socket, SOL_SOCKET, SO_REUSEADDR, 1);
    setsockopt($socket, SOL_SOCKET, SO_BROADCAST, 1);
    bind($socket, sockaddr_in(0, INADDR_ANY));
    my $server = sockaddr_in($port, INADDR_BROADCAST);

    send($socket, "RRRRRR", 0, $server);
    my $peer_addr = recv($socket, $answ, 200, 0);
...

anonymous
()
Ответ на: комментарий от anonymous

Теперь работает (я просто не правильно использовал send)

Спасибо за помощь!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.