Cygwin: define MSG_EOR and refuse in send(2)
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
489e7e2048
commit
f527171a93
|
@ -1351,6 +1351,13 @@ fhandler_socket_wsock::send_internal (struct _WSAMSG *wsamsg, int flags)
|
|||
DWORD wait_flags = flags & MSG_DONTWAIT;
|
||||
bool nosignal = !!(flags & MSG_NOSIGNAL);
|
||||
|
||||
/* MSG_EOR not supported by any protocol */
|
||||
if (flags & MSG_EOR)
|
||||
{
|
||||
set_errno (EOPNOTSUPP);
|
||||
return SOCKET_ERROR;
|
||||
}
|
||||
|
||||
flags &= (MSG_OOB | MSG_DONTROUTE);
|
||||
if (wsamsg->Control.len > 0)
|
||||
use_sendmsg = true;
|
||||
|
|
|
@ -207,6 +207,8 @@ struct OLD_msghdr
|
|||
/* AF_UNIX specific */
|
||||
#define MSG_CMSG_CLOEXEC 0x1000 /* Set O_CLOEXEC on fd's passed via
|
||||
SCM_RIGHTS */
|
||||
/* MSG_EOR is not supported. We use the MSG_PARTIAL flag here */
|
||||
#define MSG_EOR 0x8000 /* Terminates a record */
|
||||
|
||||
/* Setsockoptions(2) level. Thanks to BSD these must match IPPROTO_xxx */
|
||||
#define SOL_IP 0
|
||||
|
|
|
@ -24,3 +24,7 @@ Bug Fixes
|
|||
completed, instead of when only one key is typed.
|
||||
|
||||
- Make console I/O functions thread-safe.
|
||||
|
||||
- Define missing MSG_EOR. It's unsupported by the underlying Winsock
|
||||
layer so using it in send(2), sendto(2), or sendmsg(2) will return -1
|
||||
with errno set to EOPNOTSUPP and recvmsg(2) will never return it.
|
||||
|
|
Loading…
Reference in New Issue