Fix permission checking for the new utimensat() system call
authorLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 8 Jul 2007 19:02:55 +0000 (12:02 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 8 Jul 2007 19:02:55 +0000 (12:02 -0700)
commit1e5de2837c166535f9bb4232bfe97ea1f9fc7a1c
tree333a9686bbebefd85e1854f1b234a0fc0f75d77b
parent4e99325b462ba18075768582621af74a6b79d2a5
Fix permission checking for the new utimensat() system call

Commit 1c710c896eb461895d3c399e15bb5f20b39c9073 added the utimensat()
system call, but didn't handle the case of checking for the writability
of the target right, when the target was a file descriptor, not a
filename.

We cannot use vfs_permission(MAY_WRITE) for that case, and need to
simply check whether the file descriptor is writable.  The oops from
using the wrong function was noticed and narrowed down by Markus
Trippelsdorf.

Cc: Ulrich Drepper <drepper@redhat.com>
Cc: Markus Trippelsdorf <markus@trippelsdorf.de>
Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/utimes.c