aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Clouter <[email protected]>2018-09-27 15:17:29 +0100
committerAlexander Clouter <[email protected]>2018-09-29 00:11:05 +0100
commitf29c1d4bc5ac7cb578206a1193867c9037741bd3 (patch)
tree8528585f407b1792225e608fbd0df7a8f77e74b2
parent377f19f25aeec6939a6728bd0c4910086c22ccdc (diff)
downloadotp-f29c1d4bc5ac7cb578206a1193867c9037741bd3.tar.gz
otp-f29c1d4bc5ac7cb578206a1193867c9037741bd3.tar.bz2
otp-f29c1d4bc5ac7cb578206a1193867c9037741bd3.zip
SELinux is another cause of MSG_CTRUNC
https://github.com/termux/termux-packages/issues/2882
-rw-r--r--erts/emulator/sys/unix/sys_uds.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/erts/emulator/sys/unix/sys_uds.c b/erts/emulator/sys/unix/sys_uds.c
index 39a4866065..c9f73622ba 100644
--- a/erts/emulator/sys/unix/sys_uds.c
+++ b/erts/emulator/sys/unix/sys_uds.c
@@ -88,8 +88,9 @@ sys_uds_readv(int fd, struct iovec *iov, size_t iov_len,
if((msg.msg_flags & MSG_CTRUNC) == MSG_CTRUNC)
{
/* We assume that we have given enough space for any header
- that are sent to us. So the only remaining reason to get
- this flag set is if the caller has run out of file descriptors.
+ that are sent to us. So the only remaining reasons to get
+ this flag set is if the caller has run out of file descriptors
+ or an SELinux policy prunes the response (eg. O_APPEND on STDERR).
*/
errno = EMFILE;
return -1;