|
@@ -117,8 +117,8 @@ static void destroy_inodecache(void)
|
|
|
|
|
|
static int isofs_remount(struct super_block *sb, int *flags, char *data)
|
|
|
{
|
|
|
- /* we probably want a lot more here */
|
|
|
- *flags |= MS_RDONLY;
|
|
|
+ if (!(*flags & MS_RDONLY))
|
|
|
+ return -EROFS;
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -763,15 +763,6 @@ root_found:
|
|
|
*/
|
|
|
s->s_maxbytes = 0x80000000000LL;
|
|
|
|
|
|
- /*
|
|
|
- * The CDROM is read-only, has no nodes (devices) on it, and since
|
|
|
- * all of the files appear to be owned by root, we really do not want
|
|
|
- * to allow suid. (suid or devices will not show up unless we have
|
|
|
- * Rock Ridge extensions)
|
|
|
- */
|
|
|
-
|
|
|
- s->s_flags |= MS_RDONLY /* | MS_NODEV | MS_NOSUID */;
|
|
|
-
|
|
|
/* Set this for reference. Its not currently used except on write
|
|
|
which we don't have .. */
|
|
|
|
|
@@ -1530,6 +1521,9 @@ struct inode *isofs_iget(struct super_block *sb,
|
|
|
static struct dentry *isofs_mount(struct file_system_type *fs_type,
|
|
|
int flags, const char *dev_name, void *data)
|
|
|
{
|
|
|
+ /* We don't support read-write mounts */
|
|
|
+ if (!(flags & MS_RDONLY))
|
|
|
+ return ERR_PTR(-EACCES);
|
|
|
return mount_bdev(fs_type, flags, dev_name, data, isofs_fill_super);
|
|
|
}
|
|
|
|