1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +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:
Joseph Myers
2014-06-25 16:39:33 +00:00
parent 9aea0cb842
commit a4ccbc9b24
3 changed files with 9 additions and 34 deletions

View File

@ -289,35 +289,5 @@ __statfs_chown_restricted (int result, const struct statfs *fsbuf)
return -1;
}
#if __ASSUME_XFS_RESTRICTED_CHOWN
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
}