aboutsummaryrefslogtreecommitdiff
path: root/libio
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2023-07-20 23:38:24 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-07-20 23:42:56 +0200
commitf7f181c12c140ff1fe45376b98fe32eb491e363f (patch)
treeb436194e7c63244f7c143f27b33ceea86bbf8033 /libio
parenta3090c2c98facbab3d47aa23a94f8d2caeb78d71 (diff)
downloadglibc-f7f181c12c140ff1fe45376b98fe32eb491e363f.zip
glibc-f7f181c12c140ff1fe45376b98fe32eb491e363f.tar.gz
glibc-f7f181c12c140ff1fe45376b98fe32eb491e363f.tar.bz2
hurd: Fix tst-openloc
On GNU/Hurd, O_RDWR actually is O_WRONLY|O_RDONLY, so checking through bitness really is wrong. O_ACCMODE is there for this. Fixes: 5324d258427f ("fileops: Don't process ,ccs= as individual mode flags (BZ#18906)")
Diffstat (limited to 'libio')
-rw-r--r--libio/tst-fopenloc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libio/tst-fopenloc.c b/libio/tst-fopenloc.c
index 5b3c184..51a485c 100644
--- a/libio/tst-fopenloc.c
+++ b/libio/tst-fopenloc.c
@@ -76,7 +76,8 @@ do_bz18906 (void)
if (fp != NULL)
{
flags = fcntl (fileno (fp), F_GETFL);
- retval = (flags & O_RDWR) | (flags & O_WRONLY);
+ retval = ((flags & O_ACCMODE) == O_RDWR);
+ retval |= ((flags & O_ACCMODE) == O_WRONLY);
TEST_COMPARE (retval, false);
fclose (fp);
}