Home | History | Annotate | only in /src/usr.sbin/quotaon
History log of /src/usr.sbin/quotaon
RevisionDateAuthorComments
 1.11 07-Apr-2012  christos use getfsspecname()
 1.10 01-Feb-2012  dholland libquota no longer requires libprop. Also remove some other no-longer-used
.PATH'd-in bits from repquota.
 1.9 30-Jan-2012  dholland Add quota_quotaon() and quota_quotaoff(). Use them in quotaon(8).
 1.8 24-Mar-2011  bouyer branches: 1.8.4;
Add a new libquota library, which contains some blocks to build and/or
parse quota plists; as well as a getfsquota() function to retrieve quotas
for a single id from a single filesystem (whatever filesystem this is:
a local quota-enabled fs or NFS). This is build on functions getufsquota()
(for local filesystems with UFS-like quotas) and getnfsquota();
which are also available to userland programs.
move functions from quota2_subr.c to libquota or libprop as appropriate,
and ajust in-tree quota tools.
move some declarations from kernel headers to either sys/quota.h or
quota/quota.h as appropriate. ufs/ufs/quota.h still installed because
it's needed by other installed ufs headers.
ufs/ufs/quota1.h still installed as a quick&dirty way to get a code
using the old quotactl() to compile (just include ufs/ufs/quota1.h instead of
ufs/ufs/quota.h - old code won't compile without this change and this is
on purpose).
Discussed on tech-kern@ and tech-net@ (long thread, but not much about
libquota itself ...)
 1.7 06-Mar-2011  christos use common utils
 1.6 06-Mar-2011  bouyer merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
 1.5 18-Oct-1997  lukem branches: 1.5.64;
rcsid fascism
 1.4 22-Dec-1994  cgd specify man pages the new way.
 1.3 13-Jun-1994  mycroft Merge local changes.
 1.2 30-Jul-1993  mycroft Add RCS identifiers.
 1.1 09-Apr-1993  cgd branches: 1.1.1;
added accton, edquota, flcopy, gettable, htable, iostat, quotaon,
repquota, trpt, and trsp, per (currently alpha) patch 125.
 1.1.1.1 13-Jun-1994  mycroft Update from 4.4-Lite.
 1.5.64.1 09-Feb-2011  bouyer Make it compile with new quotactl
 1.8.4.1 17-Apr-2012  yamt sync with head
 1.10 13-Feb-2012  dholland Update dangling references to quotactl(2), mostly now libquota(3), and to
quotactl(8), mostly now quotarestore(8). ok riz@
 1.9 19-Nov-2004  snj branches: 1.9.48;
Remove a superfluous word. From David Krinsky in PR bin/28358.
 1.8 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22366, verified by myself.
 1.7 25-Feb-2003  wiz .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
 1.6 22-Mar-1999  garbled More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages. Many more to
come.
 1.5 18-Oct-1997  lukem rcsid fascism
 1.4 17-Oct-1997  lukem WARNSify
 1.3 13-Jun-1994  mycroft Merge local changes.
 1.2 01-Aug-1993  mycroft Add RCS indentifiers.
 1.1 09-Apr-1993  cgd branches: 1.1.1;
added accton, edquota, flcopy, gettable, htable, iostat, quotaon,
repquota, trpt, and trsp, per (currently alpha) patch 125.
 1.1.1.1 13-Jun-1994  mycroft Update from 4.4-Lite.
 1.9.48.1 17-Apr-2012  yamt sync with head
 1.31 26-Apr-2022  hannken As the quota type comes from the kernel and is only valid when
quota is on get the type before quota_off and after quota_on.
 1.30 07-Apr-2012  christos branches: 1.30.24; 1.30.34;
use getfsspecname()
 1.29 30-Jan-2012  dholland Add quota_quotaon() and quota_quotaoff(). Use them in quotaon(8).
 1.28 25-Jan-2012  dholland attribute noreturn -> __dead
 1.27 30-Sep-2011  jym branches: 1.27.2;
Fix an implementation inconsistency with the prop_*_send_syscall() and
prop_*_recv_syscall() functions from proplib(3). They now share the
same logic as the one from prop_*_send_ioctl() functions:
- returns an int
- 0 indicates "no error", otherwise returns the error number (and
set errno)

Many consumers of the prop_*_{ioctl, syscall} expect errno to be set
on error and use err() to display the error message. As such, ensures that
errno gets set before returning from these functions.

prop_*_send_syscall() functions returned a boolean, and now return an int.
Fix all call sites to use the new paradigm (only quota2 is affected in src).

As the prop_*_{send,recv}_syscall() API appeared in -current and is only
used by the recent quota2 code, I am not bumping the lib. The API change
only affects the prop_*_send_syscall() function (recv_syscall()s were
already used correctly), so ensure you are not mixing "old" -current
quota binaries with a new proplib(3) (or the other way around). This
change will be announced via a HEADS-UP and UPDATING.

Does not affect the kernel part of proplib.

Document the correct API in prop_array(3) and prop_dictionary(3).

Thanks to Francois Tigeot for noticing the API inconsistency and
reporting it on tech-kern@.

ok bouyer@.
 1.26 24-Mar-2011  bouyer Add a new libquota library, which contains some blocks to build and/or
parse quota plists; as well as a getfsquota() function to retrieve quotas
for a single id from a single filesystem (whatever filesystem this is:
a local quota-enabled fs or NFS). This is build on functions getufsquota()
(for local filesystems with UFS-like quotas) and getnfsquota();
which are also available to userland programs.
move functions from quota2_subr.c to libquota or libprop as appropriate,
and ajust in-tree quota tools.
move some declarations from kernel headers to either sys/quota.h or
quota/quota.h as appropriate. ufs/ufs/quota.h still installed because
it's needed by other installed ufs headers.
ufs/ufs/quota1.h still installed as a quick&dirty way to get a code
using the old quotactl() to compile (just include ufs/ufs/quota1.h instead of
ufs/ufs/quota.h - old code won't compile without this change and this is
on purpose).
Discussed on tech-kern@ and tech-net@ (long thread, but not much about
libquota itself ...)
 1.25 06-Mar-2011  christos use common utils
 1.24 06-Mar-2011  bouyer merge the bouyer-quota2 branch. This adds a new on-disk format
to store disk quota usage and limits, integrated with ffs
metadata. Usage is checked by fsck_ffs (no more quotacheck)
and is covered by the WAPBL journal. Enabled with kernel
option QUOTA2 (added where QUOTA was enabled in kernel config files),
turned on with tunefs(8) on a per-filesystem
basis. mount_mfs(8) can also turn quotas on.

See http://mail-index.netbsd.org/tech-kern/2011/02/19/msg010025.html
for details.
 1.23 18-Apr-2009  lukem branches: 1.23.2;
Fix -Wcast-qual issues
 1.22 21-Jul-2008  lukem branches: 1.22.6;
Remove the \n and tabs from the __COPYRIGHT() strings.
Tweak to use a consistent format.
 1.21 21-Apr-2004  christos branches: 1.21.26;
Replace the statfs() family of system calls with statvfs().
Retain binary compatibility.
 1.20 05-Jan-2004  jmmv Homogenize usage messages: make the 'usage' word all lowercase, as this seems
to be the most common practice in our tree.
 1.19 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22366, verified by myself.
 1.18 17-Feb-2003  perseant Add code to UBCify LFS. This is still behind "#ifdef LFS_UBC" for now
(there are still some details to work out) but expect that to go
away soon. To support these basic changes (creation of lfs_putpages,
lfs_gop_write, mods to lfs_balloc) several other changes were made, to
wit:

* Create a writer daemon kernel thread whose purpose is to handle page
writes for the pagedaemon, but which also takes over some of the
functions of lfs_check(). This thread is started the first time an
LFS is mounted.

* Add a "flags" parameter to GOP_SIZE. Current values are
GOP_SIZE_READ, meaning that the call should return the size of the
in-core version of the file, and GOP_SIZE_WRITE, meaning that it
should return the on-disk size. One of GOP_SIZE_READ or
GOP_SIZE_WRITE must be specified.

* Instead of using malloc(...M_WAITOK) for everything, reserve enough
resources to get by and use malloc(...M_NOWAIT), using the reserves if
necessary. Use the pool subsystem for structures small enough that
this is feasible. This also obsoletes LFS_THROTTLE.

And a few that are not strictly necessary:

* Moves the LFS inode extensions off onto a separately allocated
structure; getting closer to LFS as an LKM. "Welcome to 1.6O."

* Unified GOP_ALLOC between FFS and LFS.

* Update LFS copyright headers to correct values.

* Actually cast to unsigned in lfs_shellsort, like the comment says.

* Keep track of which segments were empty before the previous
checkpoint; any segments that pass two checkpoints both dirty and
empty can be summarily cleaned. Do this. Right now lfs_segclean
still works, but this should be turned into an effectless
compatibility syscall.
 1.17 20-Jul-2002  grant sweep of errx/warnx, remove unnecessary trailing \n
 1.16 19-Feb-2001  cgd convert to use getprogname()
 1.15 07-Jul-2000  itojun errx?/warnx? audit. do not pass variable alone, use %s. idea from openbsd
 1.14 04-Jul-2000  matt More #include <stdlib.h> string, etc. cleanup
 1.13 27-Jul-1998  mycroft branches: 1.13.10;
const poisoning.
 1.12 03-Feb-1998  perry change includes to fix compiler warning
 1.11 22-Oct-1997  fair Initialize "cp" to make gcc/sparc error go away:
quotaon.c:222: warning: `cp' might be used uninitialized in this function
 1.10 17-Oct-1997  lukem branches: 1.10.2;
WARNSify
 1.9 21-Jun-1997  lukem Display quota type in quotaoff verbose messages, and in warnings.
From Joao Carlos Mendes Luis <jonny@gaia.coppe.ufrj.br> in [bin/2099]
 1.8 28-Sep-1996  christos Misc cleanups.
 1.7 30-Mar-1996  mark Use an integer instead of a char to store the getopt() return value in
order to match the prototype.
Compare the getopt() return value with -1 instead of EOF.
 1.6 28-Nov-1995  jtc merge in changes from 1.1 release branch
 1.5 23-Dec-1994  cgd branches: 1.5.2;
add headers for prototypes.
 1.4 13-Jun-1994  mycroft Merge local changes.
 1.3 13-Jun-1994  cgd update for new fs includes
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 09-Apr-1993  cgd branches: 1.1.1;
added accton, edquota, flcopy, gettable, htable, iostat, quotaon,
repquota, trpt, and trsp, per (currently alpha) patch 125.
 1.1.1.1 13-Jun-1994  mycroft Update from 4.4-Lite.
 1.5.2.1 01-Nov-1995  jtc Complete change from ufs -> ffs; (From Tatoku Ogaito; PR #1679)
 1.10.2.1 23-Oct-1997  mellon Pull rev 1.11 up from main trunk
 1.13.10.1 27-Jul-2000  itojun pullup (approved by releng-1-5)
printf-like format pedant. do not pass string variable alone. use "%s".
from openbsd.

/cvsroot/basesrc/usr.sbin/netgroup_mkdb/netgroup_mkdb.c 1.9 -> 1.10
/cvsroot/basesrc/usr.sbin/pwd_mkdb/pwd_mkdb.c 1.17 -> 1.18
/cvsroot/basesrc/usr.sbin/quotaon/quotaon.c 1.14 -> 1.15
/cvsroot/basesrc/usr.sbin/rdate/rdate.c 1.10 -> 1.11
/cvsroot/basesrc/usr.sbin/rpc.yppasswdd/yppasswdd_mkpw.c 1.5 -> 1.6
/cvsroot/basesrc/usr.sbin/traceroute6/traceroute6.c 1.12 -> 1.13
/cvsroot/basesrc/usr.sbin/wsconscfg/wsconscfg.c 1.6 -> 1.7
/cvsroot/basesrc/usr.sbin/ypserv/revnetgroup/revnetgroup.c 1.7 -> 1.8
/cvsroot/basesrc/usr.sbin/ypserv/ypserv/ypserv.c 1.10 -> 1.11
 1.21.26.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.22.6.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.23.2.1 09-Feb-2011  bouyer Make it compile with new quotactl
 1.27.2.1 17-Apr-2012  yamt sync with head
 1.30.34.1 27-Apr-2022  martin Pull up following revision(s) (requested by hannken in ticket #1440):

usr.sbin/quotaon/quotaon.c: revision 1.31
lib/libquota/quota_oldfiles.c: revision 1.10
sys/ufs/ufs/ufs_quota1.c: revision 1.25

Fix default quota file names, both user and group quota used the
same default name "QUOTAFILENAME, names[USRQUOTA])" resulting in
diagnostic assertion and possibly corrupted quota data.

Keep flag "UFS_QUOTA" set until the last quota is closed.
Prevents a live lock when dqrele() finds a struct with "dq_cnt == 1"
and flag "DQ_MOD" and cannot sync as flag UFS_QUOTA is unset.

As the quota type comes from the kernel and is only valid when
quota is on get the type before quota_off and after quota_on.
 1.30.24.1 27-Apr-2022  martin Pull up following revision(s) (requested by hannken in ticket #1739):

usr.sbin/quotaon/quotaon.c: revision 1.31
lib/libquota/quota_oldfiles.c: revision 1.10
sys/ufs/ufs/ufs_quota1.c: revision 1.25

Fix default quota file names, both user and group quota used the
same default name "QUOTAFILENAME, names[USRQUOTA])" resulting in
diagnostic assertion and possibly corrupted quota data.

Keep flag "UFS_QUOTA" set until the last quota is closed.
Prevents a live lock when dqrele() finds a struct with "dq_cnt == 1"
and flag "DQ_MOD" and cannot sync as flag UFS_QUOTA is unset.

As the quota type comes from the kernel and is only valid when
quota is on get the type before quota_off and after quota_on.

RSS XML Feed