From 93e9a42bf04a1ec841353e7b1959107c731d60ad Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Fri, 3 Jan 2020 03:36:17 +0100 Subject: [PATCH] test_io: Verify that write() on an O_RDONLY fd fails with EBADF --- Userland/test_io.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/Userland/test_io.cpp b/Userland/test_io.cpp index 043fc2360dd..2296dff418a 100644 --- a/Userland/test_io.cpp +++ b/Userland/test_io.cpp @@ -64,6 +64,17 @@ void test_read_from_writeonly() ASSERT(rc == 0); } +void test_write_to_readonly() +{ + char str[] = "hello"; + int fd = open("/tmp/abcd123", O_CREAT | O_RDONLY); + ASSERT(fd >= 0); + int rc; + EXPECT_ERROR_3(EBADF, write, fd, str, sizeof(str)); + rc = close(fd); + ASSERT(rc == 0); +} + int main(int, char**) { int rc; @@ -78,6 +89,7 @@ int main(int, char**) test_read_from_directory(); test_write_to_directory(); test_read_from_writeonly(); + test_write_to_readonly(); return 0; }