Patrick,

> On 13 Jan 2020, at 16:30, Patrick Concannon <patrick.concan...@oracle.com> 
> wrote:
> 
> Hi,
> 
> Could someone please review my fix and CSR for issue JDK-8236105 'Behaviors 
> of DatagramSocket/DatagramChannel::socket send methods are not always 
> consistent' ?
> 
> The behaviour of the send methods for DatagramSocket, MulticastSocket, 
> DatagramChannel and DatagramSocketAdaptor are not consistent when given a 
> DatagramPacket with invalid details. This fix adds a check to ensure that the 
> exceptions thrown by the send method of DatagramSocket and MulticastSocket 
> match the exception thrown by DatagramChannel and DatagramSocketAdaptor i.e. 
> IllegalArgumentException
> 
> 
> bug: https://bugs.openjdk.java.net/browse/JDK-8236105 
> <https://bugs.openjdk.java.net/browse/JDK-8236105>
> 
> CSR: https://bugs.openjdk.java.net/browse/JDK-8236940 
> <https://bugs.openjdk.java.net/browse/JDK-8236940>
> webrev: http://cr.openjdk.java.net/~pconcannon/8236105/webrevs/webrev.00/  
> <http://cr.openjdk.java.net/~pconcannon/8236105/webrevs/webrev.00/>


Mostly looks good.

1) While investigating how one can create a datagram packet with an
   out-of-range port number I find that DatagramPacket::setPort is
   missing an "@throws IAE - if the given port is outside the range of
   valid port values". This could be added to this CSR?

2) DatagramPacket::setSocketAddress - same comment as above

3) Argh! several DatagramPacket constructors are also missing the IAE!

4) If we fix 1-3 above, then DatagramPacket would be a reasonable place
   to specify the range of valid port values ( or is that specified
   elsewhere? )

-Chris.

Reply via email to