Date: Tue, 09 Dec 1997 21:25:16 +0100 From: Mattias Pantzare <pantzer@ludd.luth.se> To: "Alex.Boisvert" <boia01@gel.usherb.ca> Cc: freebsd-java@FreeBSD.ORG Subject: Re: Beta JDK 1.1.2 port for FreeBSD Message-ID: <199712092025.VAA26499@zed.ludd.luth.se> In-Reply-To: Your message of "Mon, 08 Dec 1997 11:33:22 EST." <Pine.SOL.3.91.971208113006.19583A@castor>
next in thread | previous in thread | raw e-mail | index | archive | help
This is a multipart MIME message. --==_Exmh_-14600911360 Content-Type: text/plain; charset=us-ascii > I just uploaded a new port of Sun's JDK 1.1.2 for FreeBSD at: > > "ftp://ftp.freebsd.org/pub/FreeBSD/incoming" > > Right now, there are two files, but only one is the right one: > > "jdk1.1.2-fbsd1.tgz.good" > > This is a "beta" release for people on this list, it'll probably release > another one in 2 weeks, after I get some initial comments on it. It has multicast problems. I get this when I run the attached test program: pantzer@skalman ~/java/mcast >java MulticastServer 224.111.11.1 1234 Multicast Server listening on port:1234 java.net.SocketException: Inappropriate ioctl for device The jdk1.1-kwhite port had the same problem, and the followig patch to src/freebsd/net/multicast.c fixed that in that port: 70c70 < if (!IN_MULTICAST(mname.imr_multiaddr.s_addr)) { --- > if (!IN_MULTICAST(addrptr->address)) { 114c114 < if (!IN_MULTICAST(mname.imr_multiaddr.s_addr)) { --- > if (!IN_MULTICAST(addrptr->address)) { It was just a simple mater of changing byte order at the wrong place. --==_Exmh_-14600911360 Content-Type: text/plain ; name="MulticastServer.java"; charset=us-ascii Content-Description: MulticastServer.java Content-Disposition: attachment; filename="MulticastServer.java" import java.io.*; import java.net.*; import java.util.*; // Run this classes as: // java_g MulticastServer 224.111.11.1 1234 // java_g MulticastClient 224.111.11.1 1234 // class MulticastServer { public static void main(String argv[]) { if (argv.length!=2) { System.out.println("java MulticastServer <multicast_addr> <port#>"); return; } try { int port = Integer.parseInt(argv[1]); MulticastSocket s = new MulticastSocket(port); // MulticastSocket s = new MulticastSocket(); System.out.print("Multicast Server listening on port:"); System.out.println(s.getLocalPort()); // join the multicast group s.joinGroup(InetAddress.getByName(argv[0])); byte buf[] = new byte[15]; DatagramPacket dp = new DatagramPacket(buf, buf.length); s.receive(dp); System.out.print("Received from inet address: " + dp.getAddress().toString()); System.out.println(" port number: " + dp.getPort()); System.out.println("Packet of length: " + dp.getLength()); for (int i=0; i<dp.getLength(); ++i) System.out.println(buf[i]); s.leaveGroup(InetAddress.getByName(argv[0])); s.close(); } catch (Exception e) { System.out.println(e); } } } class MulticastClient { public static void main(String argv[]) { if (argv.length!=2) { System.out.println("java MulticastClient <multicast_addr> <port#>"); return; } try { int port = Integer.parseInt(argv[1]); InetAddress in = InetAddress.getByName(argv[0]); MulticastSocket s = new MulticastSocket(); byte buf[] = new byte[10]; for (int i=0; i<buf.length; ++i) buf[i] = (byte)i; int ttl = 10; DatagramPacket dp = dp = new DatagramPacket(buf,buf.length, in, port); s.send(dp, (byte)ttl); System.out.print("Sent from port: " + s.getLocalPort()); System.out.println(" to: " + dp.getPort()); s.close(); } catch (Exception e) { System.err.println(e); } } } --==_Exmh_-14600911360--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199712092025.VAA26499>