aboutsummaryrefslogtreecommitdiffstats
path: root/fs/isofs/export.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/isofs/export.c')
-rw-r--r--fs/isofs/export.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/isofs/export.c b/fs/isofs/export.c
index aa4356d09ee..2b4f2358ead 100644
--- a/fs/isofs/export.c
+++ b/fs/isofs/export.c
@@ -134,6 +134,7 @@ isofs_export_encode_fh(struct inode *inode,
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 (parent) {
struct iso_inode_info *eparent;
@@ -174,7 +175,7 @@ static struct dentry *isofs_fh_to_parent(struct super_block *sb,
{
struct isofs_fid *ifid = (struct isofs_fid *)fid;
- if (fh_type != 2)
+ if (fh_len < 2 || fh_type != 2)
return NULL;
return isofs_export_iget(sb,