harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexey Petrenko" <alexey.a.petre...@gmail.com>
Subject Re: [classlib][luni] Sending datagrams with 0 length
Date Mon, 19 Feb 2007 10:53:46 GMT
I did not quite understand.
Does your test fail on RI on Win?

SY, Alexey

2007/2/19, Mikhail Markov <mikhail.a.markov@gmail.com>:
> Hi!
>
> I found a difference between sending datagram packets with zero length on
> Windows and Linux:
> The test below passes both on RI and Harmony on Linux, but fails on my
> WinXP:
> RI: Exception in thread "main" java.net.SocketException: The message is
> larger than the maximum supported by the underlying transport: Datagram send
> failed
>        at java.net.PlainDatagramSocketImpl.send(Native Method)
>        at java.net.DatagramSocket.send(DatagramSocket.java:612)
>        at Test.main(Test.java:9)
>
> Harmony: Exception in thread "main" java.net.SocketException: (10040) A
> message sent on a datagram socket was larger than the internal message
> buffer or some other network limit, or the buffer used to receive a datagram
> into was smaller than the datagram itself.
>        at org.apache.harmony.luni.platform.OSNetworkSystem.sendDatagramImpl(Native
> Method)
>        at org.apache.harmony.luni.platform.OSNetworkSystem.sendDatagram(
> OSNetworkSystem.java:155)
>        at org.apache.harmony.luni.net.PlainDatagramSocketImpl.send(
> PlainDatagramSocketImpl.java:275)
>        at java.net.DatagramSocket.send(DatagramSocket.java:450)
>        at Test.main(Test.java:9)
>
> Due to this I have 9 constantly failed testcases from DatagramChannelTest
> (nio module):
>  testSend_NoServerTwice(),
>  testSend_NoServerNonBlockingTwice(),
>  testReceiveSend_Block_Empty(),
>  testReceiveSend_NonBlock_Empty(),
>  testReceiveSend_Block_Empty_S2C(),
>  testReceiveSend_NonBlock_Empty_S2C(),
>  testReceiveSend_Block_Empty_C2S(),
>  testReceiveSend_NonBlock_Empty_C2S(),
>  testReceiveSend_Empty_S2S()
> trying to send empty datagrams.
>
> I've filed the appropriate JIRA
> https://issues.apache.org/jira/browse/HARMONY-3185, and even provided the
> patch (which seems not correct :-).
>
> What should we do with these tests? Perhaps it makes sense to rework them to
> avoid sending empty datagrams?
>
> Regards,
> Mikhail
>
> Here is the test:
> import java.net.DatagramSocket;
> import java.net.DatagramPacket;
> import java.net.InetAddress;
>
> public class Test {
>    public static void main(String[] args) throws Exception {
>        DatagramSocket ds = new DatagramSocket();
>        DatagramPacket dp = new DatagramPacket(new byte[0], 0,
> InetAddress.getLocalHost(), 5555);
>        ds.send(dp);
>    }
> }
>

Mime
View raw message