From e538908e36b8e22675516b1976acd6cfe1d2745e Mon Sep 17 00:00:00 2001 From: bryce Date: Mon, 18 Feb 2002 07:32:34 +0000 Subject: 2002-02-18 Bryce McKinlay * java/net/natPlainDatagramSocketImpl.cc (bind): Call setsockopt to enable SO_BROADCAST. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@49835 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/java/net/natPlainDatagramSocketImpl.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'libjava/java/net') diff --git a/libjava/java/net/natPlainDatagramSocketImpl.cc b/libjava/java/net/natPlainDatagramSocketImpl.cc index d94a2f3d8a1..aedd48bbbdd 100644 --- a/libjava/java/net/natPlainDatagramSocketImpl.cc +++ b/libjava/java/net/natPlainDatagramSocketImpl.cc @@ -194,7 +194,6 @@ void java::net::PlainDatagramSocketImpl::bind (jint lport, java::net::InetAddress *host) { - // FIXME: prob. need to do a setsockopt with SO_BROADCAST to allow multicast. union SockAddr u; struct sockaddr *ptr = (struct sockaddr *) &u.address; // FIXME: Use getaddrinfo() to get actual protocol instead of assuming ipv4. @@ -233,6 +232,11 @@ java::net::PlainDatagramSocketImpl::bind (jint lport, localPort = ntohs (u.address.sin_port); else goto error; + /* Allow broadcast by default. */ + int broadcast = 1; + if (::setsockopt (fnum, SOL_SOCKET, SO_BROADCAST, (char *) &broadcast, + sizeof (broadcast)) != 0) + goto error; return; } error: -- cgit v1.2.3