From 949d967964cd1684833b215ec59d8824b1920753 Mon Sep 17 00:00:00 2001 From: Daan De Meyer Date: Sun, 21 Apr 2024 21:21:10 +0200 Subject: [PATCH] test: Make sure test_fdset_close_others does not affect logging fds --- src/test/test-fdset.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/test/test-fdset.c b/src/test/test-fdset.c index 8f00e598fdd..cfbd8e270a8 100644 --- a/src/test/test-fdset.c +++ b/src/test/test-fdset.c @@ -116,9 +116,18 @@ TEST(fdset_close_others) { copyfd = fdset_put_dup(fdset, fd); assert_se(copyfd >= 0); + /* fdset_close_others() will close any logging file descriptors as well, so close them beforehand + * and reopen them again afterwards. */ + log_close(); assert_se(fdset_close_others(fdset) >= 0); + flags = fcntl(fd, F_GETFD); assert_se(flags < 0); + + /* Open log again after checking that fd is invalid, since reopening the log might make fd a valid + * file descriptor again. */ + (void) log_open(); + flags = fcntl(copyfd, F_GETFD); assert_se(flags >= 0); } -- 2.47.3