< prev index next >

src/solaris/native/sun/nio/ch/DatagramChannelImpl.c

Print this page
rev 13048 : 8203369: Check for both EAGAIN and EWOULDBLOCK error codes
Reviewed-by: alanb

*** 1,7 **** /* ! * Copyright (c) 2001, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2001, 2018, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 160,170 **** do { retry = JNI_FALSE; n = recvfrom(fd, buf, len, 0, (struct sockaddr *)&sa, &sa_len); if (n < 0) { ! if (errno == EWOULDBLOCK) { return IOS_UNAVAILABLE; } if (errno == EINTR) { return IOS_INTERRUPTED; } --- 160,170 ---- do { retry = JNI_FALSE; n = recvfrom(fd, buf, len, 0, (struct sockaddr *)&sa, &sa_len); if (n < 0) { ! if (errno == EAGAIN || errno == EWOULDBLOCK) { return IOS_UNAVAILABLE; } if (errno == EINTR) { return IOS_INTERRUPTED; }
*** 237,247 **** return IOS_THROWN; } n = sendto(fd, buf, len, 0, (struct sockaddr *)&sa, sa_len); if (n < 0) { ! if (errno == EAGAIN) { return IOS_UNAVAILABLE; } if (errno == EINTR) { return IOS_INTERRUPTED; } --- 237,247 ---- return IOS_THROWN; } n = sendto(fd, buf, len, 0, (struct sockaddr *)&sa, sa_len); if (n < 0) { ! if (errno == EAGAIN || errno == EWOULDBLOCK) { return IOS_UNAVAILABLE; } if (errno == EINTR) { return IOS_INTERRUPTED; }
< prev index next >