]> git.hungrycats.org Git - linux/commitdiff
isofs: avoid info leak on export
authorMathias Krause <minipli@googlemail.com>
Thu, 12 Jul 2012 06:46:54 +0000 (08:46 +0200)
committerWilly Tarreau <w@1wt.eu>
Mon, 10 Jun 2013 09:43:20 +0000 (11:43 +0200)
commit fe685aabf7c8c9f138e5ea900954d295bf229175 upstream.

For type 1 the parent_offset member in struct isofs_fid gets copied
uninitialized to userland. Fix this by initializing it to 0.

Signed-off-by: Mathias Krause <minipli@googlemail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Cc: Ben Hutchings <ben@decadent.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Willy Tarreau <w@1wt.eu>
fs/isofs/export.c

index e81a30593ba9aa1b1e857032f3a6a6faac82aea8..caec670db81d542910128eaa3cec3154cbce92f2 100644 (file)
@@ -131,6 +131,7 @@ isofs_export_encode_fh(struct dentry *dentry,
        len = 3;
        fh32[0] = ei->i_iget5_block;
        fh16[2] = (__u16)ei->i_iget5_offset;  /* fh16 [sic] */
+       fh16[3] = 0;  /* avoid leaking uninitialized data */
        fh32[2] = inode->i_generation;
        if (connectable && !S_ISDIR(inode->i_mode)) {
                struct inode *parent;