diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-09-07 15:48:54 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2011-09-07 15:48:54 +0200 |
commit | 2def83667b99c3f196a030687e69ea6470400ec4 (patch) | |
tree | 4f694d1c6f2005c3f87869bc0ae4882650ea2a2b | |
parent | 5e960a990b062988ce2fb1dc883baff2292c618e (diff) |
Check the device read-only property during mount.
-rw-r--r-- | rtems/rtems_yaffs.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rtems/rtems_yaffs.c b/rtems/rtems_yaffs.c index d987685..f6869cd 100644 --- a/rtems/rtems_yaffs.c +++ b/rtems/rtems_yaffs.c @@ -790,6 +790,11 @@ int rtems_yaffs_mount_handler(rtems_filesystem_mount_table_entry_t *mt_entry, co const rtems_yaffs_mount_data *mount_data = data; struct yaffs_dev *dev = mount_data->dev; + if (dev->read_only && (mt_entry->options & RTEMS_FILESYSTEM_READ_WRITE) != 0) { + errno = EACCES; + return -1; + } + ylock(dev); if (yaffs_guts_initialise(dev) == YAFFS_FAIL) { yunlock(dev); |