assert(dup2(sv[R], R) == R);
assert(close(sv[R]) == 0);
- int r = send_mmsg(W, mmh, n_mmh, 0);
+ int r = send_mmsg(W, mmh, n_mmh, MSG_DONTROUTE | MSG_NOSIGNAL);
if (r < 0 && errno == ENOSYS)
perror_msg_and_skip("sendmmsg");
assert((size_t)r == n_mmh);
assert(close(W) == 0);
- assert(recv_mmsg(R, mmh, n_mmh, 0, NULL) == n_mmh);
+ assert(recv_mmsg(R, mmh, n_mmh, MSG_DONTWAIT, NULL) == n_mmh);
assert(close(R) == 0);
return 0;
-sendmmsg(1, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, 0) = 2
+sendmmsg(1, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, MSG_DONTROUTE|MSG_NOSIGNAL) = 2
= 2 buffers in vector 0
* 3 bytes in buffer 0
| 00000 6f 6e 65 one |
= 1 buffers in vector 1
* 5 bytes in buffer 0
| 00000 74 68 72 65 65 three |
-recvmmsg(0, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, 0, NULL) = 2 (left NULL)
+recvmmsg(0, {{{msg_name(0)=NULL, msg_iov(2)=[{"one", 3}, {"two", 3}], msg_controllen=0, msg_flags=0}, 6}, {{msg_name(0)=NULL, msg_iov(1)=[{"three", 5}], msg_controllen=0, msg_flags=0}, 5}}, 2, MSG_DONTWAIT, NULL) = 2 (left NULL)
= 2 buffers in vector 0
* 3 bytes in buffer 0
| 00000 6f 6e 65 one |