isofs: avoid info leak on export
authorMathias Krause <minipli@googlemail.com>
Thu, 12 Jul 2012 06:46:54 +0000 (08:46 +0200)
committerPaul Gortmaker <paul.gortmaker@windriver.com>
Mon, 10 Feb 2014 21:11:25 +0000 (16:11 -0500)
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>
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
fs/isofs/export.c

index ed752cb3847426f108803af94566ba79d80786ed..344aa606eecdaf641cfd8924a4b571caa27d7297 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;