From c71665ad060cd30c99399d7a4fa47566eaf8b961 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sat, 8 Mar 2008 05:21:41 +0000 Subject: [PATCH] * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED defined to zero. --- ChangeLog | 2 ++ io/tst-fchownat.c | 15 +++++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 10cb7876f9..ea4e62b1e7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -13,6 +13,8 @@ Implement __statfs_chown_restricted. * sysdeps/unix/sysv/linux/bits/posix_opt.h: Change _POSIX_CHOWN_RESTRICTED value to zero. + * io/tst-fchownat.c: Correctly handle _POSIX_CHOWN_RESTRICTED + defined to zero. * sysdeps/x86_64/rtld-memset.c: New file. diff --git a/io/tst-fchownat.c b/io/tst-fchownat.c index fd32ac9e6b..da8fd3b023 100644 --- a/io/tst-fchownat.c +++ b/io/tst-fchownat.c @@ -19,14 +19,17 @@ static int dir_fd; static void prepare (void) { -#if _POSIX_CHOWN_RESTRICTED > 0 - uid_t uid = getuid (); - if (uid != 0) +#if _POSIX_CHOWN_RESTRICTED == 0 + if (pathconf (test_dir, _PC_CHOWN_RESTRICTED) != 0) +#endif { - puts ("need root privileges"); - exit (0); + uid_t uid = getuid (); + if (uid != 0) + { + puts ("need root privileges"); + exit (0); + } } -#endif size_t test_dir_len = strlen (test_dir); static const char dir_name[] = "/tst-fchownat.XXXXXX";