From 6c3825f2b750bf9b913c6ea986739e648c470603 Mon Sep 17 00:00:00 2001
From: Richard Braun <rbraun@sceen.net>
Date: Wed, 2 Oct 2013 20:30:15 +0200
Subject: Check for negative sizes in file_set_size

* libdiskfs/file-set-size.c (diskfs_S_file_set_size): Return EINVAL if
size is negative.
* libnetfs/file-set-size.c (netfs_S_file_set_size): Likewise.
* libtreefs/s-file.c (treefs_S_file_set_size): Likewise.
* storeio/io.c (trivfs_S_file_set_size): Likewise.
* term/users.c (trivfs_S_file_set_size): Likewise.
* trans/null.c (trivfs_S_file_set_size): Likewise.
* trans/streamio.c (trivfs_S_file_set_size): Likewise.
---
 libtreefs/s-file.c | 2 ++
 1 file changed, 2 insertions(+)

(limited to 'libtreefs')

diff --git a/libtreefs/s-file.c b/libtreefs/s-file.c
index 73c32d7f..c24d645e 100644
--- a/libtreefs/s-file.c
+++ b/libtreefs/s-file.c
@@ -220,6 +220,8 @@ treefs_S_file_set_size (struct treefs_protid *cred, off_t size)
 {
   if (!cred)
     return EOPNOTSUPP;
+  else if (size < 0)
+    return EINVAL;
   return treefs_s_file_set_size (cred, size);
 }
 
-- 
cgit v1.2.3