[PATCH 0/1] ecryptfs: read on a directory should return EISDIR if not supported

Colin King colin.king at canonical.com
Thu Feb 16 17:11:06 UTC 2012


From: Colin Ian King <colin.king at canonical.com>

SRU Justification:

Impact: Read on an ecryptfs directory should return EISDIR if not
supported however currently EINVAL is being returned rather than
EISDIR.

Fix: With this patch a .read operation for ecryptfs directories is
connected up to generic_read_dir() which then performs the correct
behavior.

Testcase:

$ mkdir foo
$ grep blah foo
grep: foo: Invalid argument
$ strace -fe open,read grep blah foo
[snip]
open("foo", O_RDONLY) = 3
read(3, 0x19a1000, 32768) = -1 EINVAL (Invalid argument)
[snip]

whereas with the fix, read returns:

read(3, 0x120d000, 32768) = -1 EISDIR (Is a directory)

This is a clean cherry pick of commit 323ef68faf1bbd9b1e66aea268fd09d358d7e8ab

Andy Whitcroft (1):
  ecryptfs: read on a directory should return EISDIR if not supported

 fs/ecryptfs/file.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)





More information about the kernel-team mailing list