summaryrefslogtreecommitdiffstats
path: root/source/smbd/quotas.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2000-04-10 21:02:45 +0000
committerJeremy Allison <jra@samba.org>2000-04-10 21:02:45 +0000
commit5480ecf24bc7c97f25a5a6aee7e24eba7e87a458 (patch)
treefa75f22a63cb2be1296d00dfb90094b7667a2621 /source/smbd/quotas.c
parent5257ff5d67632922a64266ad2ce5d5a38c701cbc (diff)
downloadsamba-5480ecf24bc7c97f25a5a6aee7e24eba7e87a458.tar.gz
samba-5480ecf24bc7c97f25a5a6aee7e24eba7e87a458.tar.xz
samba-5480ecf24bc7c97f25a5a6aee7e24eba7e87a458.zip
Fix for soft quotas not being set from
Norbert Püschel <Pueschel.Norbert@Walzbarren-VAW.ne.uunet.de> Jeremy.
Diffstat (limited to 'source/smbd/quotas.c')
-rw-r--r--source/smbd/quotas.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/source/smbd/quotas.c b/source/smbd/quotas.c
index 329f261f273..1e81443c5ef 100644
--- a/source/smbd/quotas.c
+++ b/source/smbd/quotas.c
@@ -363,6 +363,11 @@ BOOL disk_quotas(char *path, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_U
#endif
}
+ /* If softlimit is zero, set it equal to hardlimit.
+ */
+
+ if (D.dqb_bsoftlimit==0)
+ D.dqb_bsoftlimit = D.dqb_bhardlimit;
/* Use softlimit to determine disk space. A user exceeding the quota is told
* that there's no space left. Writes might actually work for a bit if the
@@ -432,6 +437,12 @@ BOOL disk_quotas(char *path, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_U
return (False);
}
+ /* If softlimit is zero, set it equal to hardlimit.
+ */
+
+ if (D.dqb_bsoftlimit==0)
+ D.dqb_bsoftlimit = D.dqb_bhardlimit;
+
/* Use softlimit to determine disk space, except when it has been exceeded */
if (D.dqb_bsoftlimit==0)
@@ -662,6 +673,13 @@ BOOL disk_quotas(char *path, SMB_BIG_UINT *bsize, SMB_BIG_UINT *dfree, SMB_BIG_U
}
else return(False);
}
+
+ /* If softlimit is zero, set it equal to hardlimit.
+ */
+
+ if (D.dqb_bsoftlimit==0)
+ D.dqb_bsoftlimit = D.dqb_bhardlimit;
+
if (D.dqb_bsoftlimit==0)
return(False);
/* Use softlimit to determine disk space, except when it has been exceeded */
@@ -773,6 +791,12 @@ BOOL disk_quotas_vxfs(const pstring name, char *path, SMB_BIG_UINT *bsize, SMB_B
return(False);
}
+ /* If softlimit is zero, set it equal to hardlimit.
+ */
+
+ if (D.dqb_bsoftlimit==0)
+ D.dqb_bsoftlimit = D.dqb_bhardlimit;
+
/* Use softlimit to determine disk space. A user exceeding the quota is told
* that there's no space left. Writes might actually work for a bit if the
* hardlimit is set higher than softlimit. Effectively the disk becomes