JDK-7152948 : (dc) DatagramDispatcher.c should memset msghdr to make it portable to other platforms
  • Type: Enhancement
  • Component: core-libs
  • Sub-Component: java.nio
  • Affected Version: 7
  • Priority: P5
  • Status: Closed
  • Resolution: Fixed
  • OS: linux
  • CPU: x86
  • Submitted: 2012-03-12
  • Updated: 2013-06-26
  • Resolved: 2012-05-13
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 7 JDK 8
7u40Fixed 8 b32Fixed
Description
FULL PRODUCT VERSION :


ADDITIONAL OS VERSION INFORMATION :
AIX HY-AIX64 1 7 000562E4D700

A DESCRIPTION OF THE PROBLEM :
In src/solaris/native/sun/nio/ch/DatagramDispatcher.c,
Java_sun_nio_ch_DatagramDispatcher_readv0 will invoke recvmsg(int socket, const struct msghdr *message, int flags) system call and Java_sun_nio_ch_DatagramDispatcher_writev0 will invoke sendmsg(int socket, const struct msghdr *message, int flags) system call. The msghdr structure differs from Solaris and other platform and it can be initialized on all platforms with setting 0 in this structure.


REPRODUCIBILITY :
This bug can be reproduced always.

Comments
EVALUATION Changeset: 68efc74309f9 Author: chegar Date: 2012-03-14 15:14 +0000 URL: http://hg.openjdk.java.net/jdk8/tl/jdk/rev/68efc74309f9 7152948: DatagramDispatcher.c should memset msghdr to make it portable to other platforms Reviewed-by: alanb, chegar Contributed-by: Shi Jun Zhang <###@###.###> ! src/solaris/native/sun/nio/ch/DatagramDispatcher.c
14-03-2012