summaryrefslogtreecommitdiff
path: root/source3/smbd/dfree.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2005-03-16 01:41:21 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:56:03 -0500
commit7dcbde86ae22379b67d0a571c93aa34b2a1311aa (patch)
tree4502511b1aa3be03c0f7404fe7abcce3fc387e42 /source3/smbd/dfree.c
parent99db77b2b2ce078c1097aaca2631aeee35544f5a (diff)
downloadsamba-7dcbde86ae22379b67d0a571c93aa34b2a1311aa.tar.gz
samba-7dcbde86ae22379b67d0a571c93aa34b2a1311aa.tar.bz2
samba-7dcbde86ae22379b67d0a571c93aa34b2a1311aa.zip
r5822: Actually return an error message if disk_free fails ! Pointed out by Ying Li <ying.li2@hp.com>.
Jeremy. (This used to be commit b5d31b2caf5c4739607bf57cb7e4e0569b57012b)
Diffstat (limited to 'source3/smbd/dfree.c')
-rw-r--r--source3/smbd/dfree.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/source3/smbd/dfree.c b/source3/smbd/dfree.c
index c556c8c8ab..81a48b94fc 100644
--- a/source3/smbd/dfree.c
+++ b/source3/smbd/dfree.c
@@ -115,10 +115,19 @@ static SMB_BIG_UINT disk_free(const char *path, BOOL small_query,
} else {
DEBUG (0, ("disk_free: sys_popen() failed for command %s. Error was : %s\n",
syscmd, strerror(errno) ));
- sys_fsusage(path, dfree, dsize);
+ if (sys_fsusage(path, dfree, dsize) != 0) {
+ DEBUG (0, ("disk_free: sys_fsusage() failed. Error was : %s\n",
+ strerror(errno) ));
+ return (SMB_BIG_UINT)-1;
+ }
+ }
+ } else {
+ if (sys_fsusage(path, dfree, dsize) != 0) {
+ DEBUG (0, ("disk_free: sys_fsusage() failed. Error was : %s\n",
+ strerror(errno) ));
+ return (SMB_BIG_UINT)-1;
}
- } else
- sys_fsusage(path, dfree, dsize);
+ }
if (disk_quotas(path, &bsize_q, &dfree_q, &dsize_q)) {
(*bsize) = bsize_q;