1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-27 03:21:53 +03:00
Commit Graph

109 Commits

Author SHA1 Message Date
Jeremy Allison
0da76414fd s3: VFS: Change SMB_VFS_GET_QUOTA to use const struct smb_filename * instead of const char *.
We need to migrate all pathname based VFS calls to use a struct
to finish modernising the VFS with extra timestamp and flags parameters.

Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Richard Sharpe <realrichardsharpe@gmail.com>
2017-06-18 02:49:25 +02:00
Uri Simchoni
ea73bcd87b smbd: use owner uid for free disk calculation if owner is inherited
If "inherit owner" is enabled, then new files created under a
directory shall consume the quota of the directory's owner, so
the free disk calculation should take that quota into account,
not the quota of the user creating the file.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=12145

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2016-08-13 01:53:15 +02:00
Uri Simchoni
bd2ec88dca smbd: get a valid file stat to disk_quotas
Most calls to disk_quotas originate at a state with an
open file descriptor. Pass the file's stat info down to
disk_quota, so that we can avoid extra stat's and the related
error handling.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=12145

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2016-08-13 01:53:15 +02:00
Uri Simchoni
f722185723 s3-dfree-quota: remove special handling of EDQUOT
It is no longer part of the quota VFS interface to return
an EDQUOT error as an indication that getting quota succeeded
but the user/group is over-quota. A VFS module implementing
quota interface always returns 0 on success.

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2016-06-01 00:57:32 +02:00
Uri Simchoni
42151f6fa2 smbd: dfree - ignore quota if not enforced
When calculating free disk space, do not take user quota
into account if quota is globally not enforced on the file
system.

This is meant to fix a specific problem with XFS. One might
say "why don't you fix the XFS-specific code instead?". The
reason for that is that getting and setting quota must not
be affected by whether quota is actually enforced. NTFS has
the same notion of separating quota accounting (and being
able to configure / retrieve configured quota), from quota
enforcement.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=11937

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>

Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat May 28 00:09:05 CEST 2016 on sn-devel-144
2016-05-28 00:09:05 +02:00
Uri Simchoni
67a29a8661 smbd: remove quota support for some ancient OSs
Remove quota support for SunOS4 and VxFS on Solaris 2

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2016-03-17 01:08:32 +01:00
Uri Simchoni
91eeeb76f0 disk_quotas: style fix
Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
2016-01-26 15:58:12 +01:00
Uri Simchoni
19f9b31759 smbd: refactor disk_free handling
Move most of the logic that handles determination of
disk size and free space from default VFS handler to
the SMB layer - letting the VFS handle the basic task
of querying the file system for general stats and
quota.

Signed-off-by: Uri Simchoni <uri@samba.org>
Reviewed-by: Volker Lendecke <vl@samba.org>
2016-01-26 15:58:12 +01:00
Anoop C S
11620aefac smbd/quotas: Remove invalid quota status switch case
getquota_rslt structure from rquota.h defines the enum
named status whose values start from 1. But in quotas.c
we have an invalid check for status 0. This change is
to remove that particular switch case.

Signed-off-by: Anoop C S <anoopcs@redhat.com>
Reviewed-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>

Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat Oct 24 01:31:21 CEST 2015 on sn-devel-104
2015-10-24 01:31:21 +02:00
Björn Jacke
5de7a3d739 quota: move function again to its belonging ifdef block
Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Tue Sep 11 04:44:28 CEST 2012 on sn-devel-104
2012-09-11 04:44:28 +02:00
Björn Jacke
1f61abd322 s3-smbd: Remove OSF1 support from old (pre-sysquotas) code
"recent" Tru64 releases had QUOTACTL_4B support
2012-09-07 14:15:57 +02:00
Björn Jacke
d6cc08b9ee s3:quota: don't force the block size to 512
there is no point in forcing the block size to 512 when curblocks is 1. This
will only lead to false quota reporting. See bug #3272
2012-09-06 15:08:22 +02:00
Andrew Bartlett
146ad30387 s3-smbd: Remove remaining references to removed OS support in old-style quota code
Signed-off-by: Björn Jacke <bj@sernet.de>

Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Thu Sep  6 10:47:18 CEST 2012 on sn-devel-104
2012-09-06 10:47:18 +02:00
Andrew Bartlett
9bfab7ec8c s3-smbd: Remove IRIX support from old (pre-sysquotas) code
This should be essentially dead code, as while it is possible to disable sysquotas, the sysquotas has since 2003 supported the 4A varient used on IRIX.

Andrew Bartlett

Signed-off-by: Björn Jacke <bj@sernet.de>
2012-09-06 09:08:57 +02:00
Andrew Bartlett
79bc9e5ace s3-smbd: Remove HPUX support from old (pre-sysquotas) code
This should be essentially dead code, as while it is possible to disable sysquotas, the sysquotas has since 2003 supported the 4A varient used on HPUX.

Andrew Bartlett

Signed-off-by: Björn Jacke <bj@sernet.de>
2012-09-06 09:08:57 +02:00
Andrew Bartlett
8b90f6ace3 s3-smbd: Remove BSD support from old (pre-sysquotas) code
This is essentially dead code, as while it is possible to disable
sysquotas, the default for BSD is now to use sysquotas with the
addition of 4B support via the recent Darwin patch by James Peach.

NFS support has been in sysquotas for quite some time now.

Andrew Bartlett

Signed-off-by: Björn Jacke <bj@sernet.de>
2012-09-06 09:08:57 +02:00
Andrew Bartlett
28ccb67170 s3-smbd: Remove Linux support from old (pre-sysquotas) code
This is essentially dead code, as while it is possible to disable sysquotas, the default
for Linux has been to use sysquotas for quite some time now.

Andrew Bartlett

Signed-off-by: Björn Jacke <bj@sernet.de>
2012-09-06 09:08:57 +02:00
Andrew Bartlett
24013bda45 build: Remove Unicos support (quota in particular)
Unicos machines are long gone now (Cray now make Linux compute nodes),
so remove the quota support.

Andrew Bartlett

Signed-off-by: Björn Jacke <bj@sernet.de>
2012-09-06 09:08:57 +02:00
Björn Jacke
9dd0e1608e s3: remove some duplicate quota code 2012-09-02 21:44:54 +02:00
Andrew Bartlett
b74fe73a6f build: Remove sys_fopen wrapper 2012-04-05 02:39:08 +02:00
Andrew Bartlett
d166b79852 build: Remove sys_open wrapper 2012-04-05 02:39:08 +02:00
Stefan Metzmacher
8096b1a9a4 s3:smbd/quotas: add #include "system/filesys.h" (bug #8224)
This should fix the build on FreeBSD

metze

Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Jun 14 09:38:49 CEST 2011 on sn-devel-104
2011-06-14 09:38:49 +02:00
Günther Deschner
8c24ebf371 s3: include smbd/smbd.h where needed.
Guenther
2011-03-30 01:13:08 +02:00
Michael Adam
be598569bb s3:smbd: add nfs quota support to the linux-non-sysquota code
This is based on the implementation for solaris and FreeBSD.
It makes rpc calls out to the nfs server to retrieve quota
information.
2010-08-25 14:05:51 +02:00
Volker Lendecke
24a398b5b4 s3: Fix a very embarrassing build failure 2009-12-12 16:57:49 +01:00
Volker Lendecke
359e71d956 s3: "disk_quotas" only looks at the devicenumber 2009-11-29 11:22:03 +01:00
Volker Lendecke
44ce5603dd s3: Pass the "fake dir create times" parameter to sys_*stat
Step 0 to restore it as a per-share paramter
2009-11-29 11:22:01 +01:00
Michael Adam
57d3ada2c9 s3:fix build of old linux quota system and other unixes' quota implementation
By fixing the use of struct stat_ex.

Michael
2009-06-29 16:51:53 +02:00
Stefan Metzmacher
256101b022 s3:smbd: remove stupid static variables for the nfs quota code
metze
2009-01-08 12:22:20 +01:00
Jelmer Vernooij
4746f79d50 Use {u,}int64_t instead of SMB_BIG_{U,}INT. 2008-10-14 01:59:36 +02:00
Timur
a59618e88b Fix cut and paste error in quota code. 2008-09-15 18:21:02 -07:00
Jeremy Allison
052efa9a33 Remove last pstring from smbd/*.c
Jeremy.
(This used to be commit f1680bada9)
2007-11-13 12:51:31 -08:00
Jeremy Allison
30191d1a57 RIP BOOL. Convert BOOL -> bool. I found a few interesting
bugs in various places whilst doing this (places that assumed
BOOL == int). I also need to fix the Samba4 pidl generation
(next checkin).
Jeremy.
(This used to be commit f35a266b3c)
2007-10-18 17:40:25 -07:00
Volker Lendecke
fb7ee0804c r25311: Patch from Heinrich Mislik <Heinrich.Mislik@univie.ac.at> to fix AIX
quotas.

Heinrich, I trust you on that, I don't even have compiled this :-)

Volker
(This used to be commit a8312a1d7b)
2007-10-10 12:30:58 -05:00
Andrew Tridgell
ef591178d0 r23786: Use linux/dqblk_xfs.h rather than a private copy of this header in the
Samba3 tree.

This is neater, plus it avoids the need to get legal approval from SGI
to use their GPLv2-only code under GPLv3.

If/when SGI legal sort things out, we could consider adding back this
header for very old systems where linux/dqblk_xfs.h is not available.
(This used to be commit cb435543f8)
2007-10-10 12:28:24 -05:00
Andrew Tridgell
5e54558c6d r23784: use the GPLv3 boilerplate as recommended by the FSF and the license text
(This used to be commit b0132e94fc)
2007-10-10 12:28:22 -05:00
Jeremy Allison
d824b98f80 r23779: Change from v2 or later to v3 or later.
Jeremy.
(This used to be commit 407e6e695b)
2007-10-10 12:28:20 -05:00
Gerald Carter
1790c67780 r22149: BUG 4500: patch from Jorge Santos <jorge_a_santos@hotmail.com>
to fix compile bug ni quotas.c (typo calling unbecome_root()).
(This used to be commit 22d550d62b)
2007-10-10 12:19:16 -05:00
Jeremy Allison
bc45c82904 r22096: become_root_uid_only() is unneeded - it's only used in
messages.c. Refactor to use become_root() instead and
make it local to messages.c
Jeremy.
(This used to be commit f3ffb3f984)
2007-10-10 12:19:11 -05:00
Jeremy Allison
9b807d4f87 r22060: Fix for AIX quotas from Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
Jeremy.
(This used to be commit 8d95cdf8c0)
2007-10-10 12:19:07 -05:00
Jeremy Allison
0c72a09e7d r19260: Fix for bug #3524 from tiamat@komi.mts.ru - Solaris quotas.
Jeremy.
(This used to be commit ac510a90f3)
2007-10-10 12:15:26 -05:00
Jeremy Allison
981350a03c r17296: Replace the understandable parts of the quota
code with become_root_uid_only()/unbecome_root_uid_only()
pairs. This code needs working on.....
Jeremy.
(This used to be commit 0661d4e266)
2007-10-10 11:38:24 -05:00
Volker Lendecke
bd08ae25dc r12477: Remove a gcc -O6 warning
(This used to be commit dd39a37f8e)
2007-10-10 11:05:57 -05:00
Lars Müller
f6a46f3329 r12076: Ensure setmntent() returns with != NULL in the disk_quotas() Linux
version.

The IRIX 6.2 version is still without this check as I'm not sure if
setmntent() is implemented in the same way.
(This used to be commit 519ed7ca0e)
2007-10-10 11:05:43 -05:00
Gerald Carter
9e1cf0d51c r10901: BUG 3145: Fix build issue regarding quota support on Solaris
(This used to be commit b7de9a6c69)
2007-10-10 11:04:55 -05:00
Gerald Carter
dba540214a r6712: BUG 2362: fix quota support on DragonFly (Joerg Sonnenberger <joerg@leaf.dragonflybsd.org>)
(This used to be commit 0644a2abf6)
2007-10-10 10:56:52 -05:00
Gerald Carter
cf99ec8296 r5958: BUG 1843: patch from james peach to fix quotas (with no soft limits) on IRIX
(This used to be commit aeb3cea54e)
2007-10-10 10:56:12 -05:00
Gerald Carter
6c6e231f15 r5157: BUG 2266: conditionally include rpc/nettype.h to work around missing header onf FreeBSD4
(This used to be commit 314da60473)
2007-10-10 10:55:30 -05:00
Jeremy Allison
ad94eabdc6 r4301: One more *alloc -> SMB_MALLOC (not compiled by default).
Jeremy.
(This used to be commit 235a0c1698)
2007-10-10 10:53:43 -05:00
Richard Sharpe
7b4151e173 r1333: NFS Quota support from Dan Peterson.
(This used to be commit 609828444d)
2007-10-10 10:52:07 -05:00