mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-30 22:43:12 +03:00
Remove __ASSUME_XFS_RESTRICTED_CHOWN.
This patch removes the __ASSUME_XFS_RESTRICTED_CHOWN macro, now it can be presumed to be defined unconditionally. I'm not sure if what's left of __statfs_chown_restricted is actually useful (if not, a followup could remove it), but I left it there to keep the patch conservative and avoid changing the code generated for glibc. Tested x86_64 that the disassembly of installed shared libraries is unchanged by the patch. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_XFS_RESTRICTED_CHOWN): Remove macro. * sysdeps/unix/sysv/linux/pathconf.c (__statfs_chown_restricted) [__ASSUME_XFS_RESTRICTED_CHOWN]: Make code unconditional. (__statfs_chown_restricted) [!__ASSUME_XFS_RESTRICTED_CHOWN]: Remove conditional code.
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2014-06-25 Joseph Myers <joseph@codesourcery.com>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/kernel-features.h
|
||||||
|
(__ASSUME_XFS_RESTRICTED_CHOWN): Remove macro.
|
||||||
|
* sysdeps/unix/sysv/linux/pathconf.c (__statfs_chown_restricted)
|
||||||
|
[__ASSUME_XFS_RESTRICTED_CHOWN]: Make code unconditional.
|
||||||
|
(__statfs_chown_restricted) [!__ASSUME_XFS_RESTRICTED_CHOWN]:
|
||||||
|
Remove conditional code.
|
||||||
|
|
||||||
2014-06-25 Will Newton <will.newton@linaro.org>
|
2014-06-25 Will Newton <will.newton@linaro.org>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/arm/dl-procinfo.c
|
* sysdeps/unix/sysv/linux/arm/dl-procinfo.c
|
||||||
|
@ -228,7 +228,3 @@
|
|||||||
#if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100
|
#if defined __x86_64__ && __LINUX_KERNEL_VERSION >= 0x030100
|
||||||
# define __ASSUME_GETCPU_SYSCALL 1
|
# define __ASSUME_GETCPU_SYSCALL 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* 2.6.29 removed the XFS restricted_chown sysctl, so it is pointless looking
|
|
||||||
for it in newer kernels. */
|
|
||||||
#define __ASSUME_XFS_RESTRICTED_CHOWN 1
|
|
||||||
|
@ -289,35 +289,5 @@ __statfs_chown_restricted (int result, const struct statfs *fsbuf)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __ASSUME_XFS_RESTRICTED_CHOWN
|
|
||||||
return 1;
|
return 1;
|
||||||
#else
|
|
||||||
int fd;
|
|
||||||
int save_errno;
|
|
||||||
long int retval = 1;
|
|
||||||
switch (fsbuf->f_type)
|
|
||||||
{
|
|
||||||
case XFS_SUPER_MAGIC:
|
|
||||||
save_errno = errno;
|
|
||||||
/* Read the value from /proc/sys/fs/xfs/restrict_chown. If we cannot
|
|
||||||
read it default to assume the restriction is in place. */
|
|
||||||
fd = open_not_cancel_2 ("/proc/sys/fs/xfs/restrict_chown", O_RDONLY);
|
|
||||||
if (fd != -1)
|
|
||||||
{
|
|
||||||
char buf[2];
|
|
||||||
if (TEMP_FAILURE_RETRY (read_not_cancel (fd, buf, 2)) == 2
|
|
||||||
&& buf[0] >= '0' && buf[0] <= '1')
|
|
||||||
retval = buf[0] - '0';
|
|
||||||
|
|
||||||
close_not_cancel_no_status (fd);
|
|
||||||
}
|
|
||||||
__set_errno (save_errno);
|
|
||||||
break;
|
|
||||||
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return retval;
|
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user