Activity log for bug #719691

Date Who What changed Old value New value Message
2011-02-15 23:30:35 Mark Schreiber bug added bug
2011-02-16 01:42:06 Mark Schreiber description Binary package hint: linux-generic When using ecryptfs (the filesystem used for encrypted home directories on Ubuntu by default), attempts to read(2)/read(3) from an open()ed directory return EINVAL, rather than EISDIR. This causes, for example, grep to spit out errors. Test case: (on ext4, working correctly) $ mkdir foo $ grep blah foo $ strace -fe open,read grep blah foo [clip] open("foo", O_RDONLY) = 3 read(3, 0x890000, 32768) = -1 EISDIR (Is a directory) (on an ecryptfs mount, broken) $ mkdir foo $ grep blah foo grep: foo: Invalid argument $ strace -fe open,read grep blah foo [clip] open("foo", O_RDONLY) = 3 read(3, 0x7fe000, 32768) = -1 EINVAL (Invalid argument) [clip] According to SUSv2, the ecryptfs behavior is indeed incorrect: [EINVAL] [OB XSR] [Option Start] The STREAM or multiplexer referenced by fildes is linked (directly or indirectly) downstream from a multiplexer. [Option End] [EISDIR] [XSI] [Option Start] The fildes argument refers to a directory and the implementation does not allow the directory to be read using read() or pread(). The readdir() function should be used instead. [Option End] Binary package hint: linux-generic When using ecryptfs (the filesystem used for encrypted home directories on Ubuntu by default), attempts to read(2)/read(3) from an open()ed directory return EINVAL, rather than EISDIR. This causes, for example, grep to spit out errors. Test case: (on an ecryptfs mount, broken) $ mkdir foo $ grep blah foo grep: foo: Invalid argument $ strace -fe open,read grep blah foo [clip] open("foo", O_RDONLY) = 3 read(3, 0x7fe000, 32768) = -1 EINVAL (Invalid argument) [clip] (on ext4, working correctly) $ mkdir foo $ grep blah foo $ strace -fe open,read grep blah foo [clip] open("foo", O_RDONLY) = 3 read(3, 0x890000, 32768) = -1 EISDIR (Is a directory) According to SUSv2, the ecryptfs behavior is indeed incorrect: [EINVAL] [OB XSR] [Option Start] The STREAM or multiplexer referenced by fildes is linked (directly or indirectly) downstream from a multiplexer. [Option End] [EISDIR] [XSI] [Option Start] The fildes argument refers to a directory and the implementation does not allow the directory to be read using read() or pread(). The readdir() function should be used instead. [Option End]
2011-02-16 03:09:01 Andy Whitcroft affects linux-meta (Ubuntu) linux (Ubuntu)
2011-02-16 03:10:06 Andy Whitcroft linux (Ubuntu): status New Triaged
2011-02-16 03:10:54 Andy Whitcroft bug added subscriber John Johansen
2011-02-16 03:32:15 Andy Whitcroft linux (Ubuntu): assignee Andy Whitcroft (apw)
2011-02-16 03:32:19 Andy Whitcroft linux (Ubuntu): status Triaged In Progress
2011-02-16 03:45:51 Andy Whitcroft linux (Ubuntu): importance Undecided Low
2011-02-16 23:40:12 Launchpad Janitor linux (Ubuntu): status In Progress Fix Released
2011-02-23 16:11:23 Tyler Hicks bug task added ecryptfs
2011-02-23 16:12:21 Tyler Hicks ecryptfs: status New Fix Released
2011-02-23 16:12:21 Tyler Hicks ecryptfs: assignee Tyler Hicks (tyhicks)
2012-02-16 17:01:31 Colin Ian King nominated for series Ubuntu Lucid
2012-02-16 17:50:28 Tim Gardner bug task added linux (Ubuntu Lucid)
2012-02-16 17:50:37 Tim Gardner linux (Ubuntu Lucid): status New Fix Committed
2012-03-08 19:05:01 Herton R. Krzesinski tags verification-done-lucid
2012-03-08 19:05:16 Herton R. Krzesinski linux (Ubuntu Lucid): assignee Colin King (colin-king)
2012-03-08 19:05:27 Herton R. Krzesinski linux (Ubuntu Lucid): importance Undecided Low
2012-03-09 06:06:19 Launchpad Janitor branch linked lp:ubuntu/lucid-proposed/linux-ec2
2012-03-22 14:55:23 Launchpad Janitor linux (Ubuntu Lucid): status Fix Committed Fix Released
2012-03-22 14:55:23 Launchpad Janitor cve linked 2011-4347
2012-03-22 14:55:23 Launchpad Janitor cve linked 2012-0879
2012-04-10 09:36:23 Launchpad Janitor branch linked lp:ubuntu/maverick-updates/linux-mvl-dove