Commit da615ea7 authored by Stephen Rothwell's avatar Stephen Rothwell Committed by Linus Torvalds

[PATCH] utimes permission check

The utime and utimes should do exactly the smae permission check
according to SUSv3.
	"The effective user ID of the process shall match the owner of the file,
or has write access to the file or appropriate privileges to use this call
in this manner."

utimes when passed a NULL second argument would fail on a read only
file even if the file is owned by the caller.
parent a9a677ac
...@@ -304,7 +304,8 @@ asmlinkage long sys_utimes(char * filename, struct timeval * utimes) ...@@ -304,7 +304,8 @@ asmlinkage long sys_utimes(char * filename, struct timeval * utimes)
newattrs.ia_mtime = times[1].tv_sec; newattrs.ia_mtime = times[1].tv_sec;
newattrs.ia_valid |= ATTR_ATIME_SET | ATTR_MTIME_SET; newattrs.ia_valid |= ATTR_ATIME_SET | ATTR_MTIME_SET;
} else { } else {
if ((error = permission(inode,MAY_WRITE)) != 0) if (current->fsuid != inode->i_uid &&
(error = permission(inode,MAY_WRITE)) != 0)
goto dput_and_out; goto dput_and_out;
} }
down(&inode->i_sem); down(&inode->i_sem);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment