|
|
Message-Id: <20180913003424.12234-1-benjamin@python.org>
Date: Wed, 12 Sep 2018 17:34:24 -0700
From: Benjamin Peterson <benjamin@...hon.org>
To: musl@...ts.openwall.com
Subject: [PATCH] return EBADF from ttyname_r
POSIX allows ttyname(_r) to return EBADF if passed file descriptor is invalid.
---
src/unistd/ttyname_r.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/unistd/ttyname_r.c b/src/unistd/ttyname_r.c
index 33aa4ae1..e208b3c3 100644
--- a/src/unistd/ttyname_r.c
+++ b/src/unistd/ttyname_r.c
@@ -10,7 +10,10 @@ int ttyname_r(int fd, char *name, size_t size)
char procname[sizeof "/proc/self/fd/" + 3*sizeof(int) + 2];
ssize_t l;
- if (!isatty(fd)) return ENOTTY;
+ if (!isatty(fd)) {
+ if (errno == EBADF) return EBADF;
+ return ENOTTY;
+ }
__procfdname(procname, fd);
l = readlink(procname, name, size);
--
2.17.1
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.