hostfs: Handle bogus st.mode
Make sure that we return EIO if one passes an invalid st.mode into hostfs. Signed-off-by: Richard Weinberger <richard@nod.at>
This commit is contained in:
Родитель
4c6dcafc69
Коммит
2ad2dca6fd
|
@ -534,11 +534,13 @@ static int read_name(struct inode *ino, char *name)
|
||||||
init_special_inode(ino, st.mode & S_IFMT, rdev);
|
init_special_inode(ino, st.mode & S_IFMT, rdev);
|
||||||
ino->i_op = &hostfs_iops;
|
ino->i_op = &hostfs_iops;
|
||||||
break;
|
break;
|
||||||
|
case S_IFREG:
|
||||||
default:
|
|
||||||
ino->i_op = &hostfs_iops;
|
ino->i_op = &hostfs_iops;
|
||||||
ino->i_fop = &hostfs_file_fops;
|
ino->i_fop = &hostfs_file_fops;
|
||||||
ino->i_mapping->a_ops = &hostfs_aops;
|
ino->i_mapping->a_ops = &hostfs_aops;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return -EIO;
|
||||||
}
|
}
|
||||||
|
|
||||||
ino->i_ino = st.ino;
|
ino->i_ino = st.ino;
|
||||||
|
|
Загрузка…
Ссылка в новой задаче