TAYBENGH@NUSDISCS.BITNET (06/15/90)
I tried to broadcast using UDP socket in Sun OS 4.0.3, sendto() failed
giving error 51 -> Network is Unreachable, is there anything wrong in the
following code segment:
on = 1;
if (setsockopt(id, SOL_SOCKET, SO_BROADCAST, (char *)&on, sizeof(on))
< 0)
syserr("bs_broadcast: setsockopt")
if (getsockopt(id, SOL_SOCKET, SO_BROADCAST, (char *)&on, &onlen) <0)
syserr("bs_broadcast: getsockopt")
printf("on=%d, onlen=%d\n", on, onlen);
/*
* broadcast address
*/
remote_sock.sin_addr.s_addr = INADDR_BROADCAST; ------> ???
remote_sock.sin_family = AF_INET;
remote_sock.sin_port = htons(remote_port);
size = sendto(id, buf, buflen, 0, (struct sockaddr *)&remote_sock,
sizeof(remote_sock));
--------------------------------------------------------------------
I suspect it is something to do with the INADDR_BROADCAST, can anybody
please tell me how broadcast UDP properly? Please reply to me directly.
Thanks.
- Beng Hang Tay (email: taybengh@nusdiscs)