diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2012-07-02 10:59:30 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2012-07-02 10:59:30 +0200 |
commit | 6e4b15537b522fc6d393d664c12f40b4a00b5ef6 (patch) | |
tree | dc6dde42fe31820cd86719ed1d0c3e20983dff6b /fs | |
parent | dd3c898d06a55a4c6fe94dae3f732a541e983432 (diff) | |
parent | a0b061147767c16eb443f510b7424e03d2f07209 (diff) | |
download | barebox-6e4b15537b522fc6d393d664c12f40b4a00b5ef6.tar.gz barebox-6e4b15537b522fc6d393d664c12f40b4a00b5ef6.tar.xz |
Merge branch 'for-next/misc'
Diffstat (limited to 'fs')
-rw-r--r-- | fs/devfs.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/devfs.c b/fs/devfs.c index 5aace362e2..2549ea60a8 100644 --- a/fs/devfs.c +++ b/fs/devfs.c @@ -49,6 +49,9 @@ static int devfs_write(struct device_d *_dev, FILE *f, const void *buf, size_t s { struct cdev *cdev = f->inode; + if (cdev->flags & DEVFS_PARTITION_READONLY) + return -EPERM; + return cdev_write(cdev, buf, size, f->pos, f->flags); } @@ -70,6 +73,9 @@ static int devfs_erase(struct device_d *_dev, FILE *f, size_t count, loff_t offs { struct cdev *cdev = f->inode; + if (cdev->flags & DEVFS_PARTITION_READONLY) + return -EPERM; + if (!cdev->ops->erase) return -ENOSYS; |