aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/file.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2005-12-06 17:59:55 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2005-12-06 17:59:55 +0000
commit044da2e9e04e48ff1c275b9a674725cb5fd2bd1d (patch)
treee058252dadc4fc4fe604ae8db69b0c00e0f84702 /kernel/file.c
parentfa829b5577e6ee2dd8046f488042195bfba496e0 (diff)
downloadlibfuse-044da2e9e04e48ff1c275b9a674725cb5fd2bd1d.tar.gz
fix
Diffstat (limited to 'kernel/file.c')
-rw-r--r--kernel/file.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/file.c b/kernel/file.c
index a4cc04d..2365d2e 100644
--- a/kernel/file.c
+++ b/kernel/file.c
@@ -516,7 +516,12 @@ static int fuse_commit_write(struct file *file, struct page *page,
struct inode *inode = page->mapping->host;
struct fuse_conn *fc = get_fuse_conn(inode);
loff_t pos = page_offset(page) + offset;
- struct fuse_req *req = fuse_get_request(fc);
+ struct fuse_req *req;
+
+ if (count > fc->max_write)
+ return -EIO;
+
+ req = fuse_get_request(fc);
if (!req)
return -EINTR;