sendto() giving EPERM outside a jail
Steve Watt
steve at Watt.COM
Fri Mar 23 16:17:22 UTC 2007
In <200703221201.35028.doconnor at gsoft.com.au>,
Daniel O'Connor <doconnor at gsoft.com.au> wrote:
>Hi,
>I am trying to port miniupnpd (http://miniupnp.tuxfamily.org/) and by in large
>it seems to work fine (evil idea as it is :) However it spews out a lot of..
>miniupnpd[13010]: sendto(udp_notify): Operation not permitted
>
>According to my reading of the man page it is not possible to get this error
>unless I'm using jails (which I'm not). The code in question does..
That's probably a buglet in the man page.
>memset(&sockname, 0, sizeof(struct sockaddr_in));
>sockname.sin_family = AF_INET;
>sockname.sin_port = htons(PORT);
>sockname.sin_addr.s_addr = inet_addr(UPNP_MCAST_ADDR);
>while(known_service_types[i])
>{
> snprintf(bufr, sizeof(bufr),
> "NOTIFY * HTTP/1.1\r\n"
> "HOST:%s:%d\r\n"
>...
> n = sendto(s, bufr, strlen(bufr), 0,
> (struct sockaddr *)&sockname, sizeof(struct sockaddr_in) );
>
>(line 278 of miniupnpd.c).
>
>Can someone shed light on what the problem is? The application appears to work
>fine even with this error though.
man setsockopt, search for SO_BROADCAST.
--
Steve Watt KD6GGD PP-ASEL-IA ICBM: 121W 56' 57.5" / 37N 20' 15.3"
Internet: steve @ Watt.COM Whois: SW32-ARIN
Free time? There's no such thing. It just comes in varying prices...
More information about the freebsd-hackers
mailing list