Добрый день. Вот пишу прогу чтобы между двумя сетями работал широковещательный трафик в одной сети через libpcap слушаю потом в udp перегоняю другой проге в другой сети.... Короче та часть которая принимает должна пакет принятый на том конце (включая IP заголовок) выплюнуть в сеть назначения. так вот делаю.
fd=socket(AF_INET,SOCK_RAW,IPPROTO_UDP);
int rc=1; setsockopt(fd,IPPROTO_IP,IP_HDRINCL,&rc,sizeof(rc));
по приему пакета все его содержимое отправляю через sendto
rc=recv(..... принимаю udp
struct sockaddr_in out; out.sin_addr.s_addr=inet_addr("192.168.1.255"); out.sin_port=0; out.sin_family=AF_INET; sendto(fd,mybuff,rc,0,(struct sockaddr *)&out,sizeof(out));
sendto возвращает -1 и perror пишет Permission denided...
Что делать?