diff options
author | mckusick <mckusick@FreeBSD.org> | 2010-05-07 00:41:12 +0000 |
---|---|---|
committer | mckusick <mckusick@FreeBSD.org> | 2010-05-07 00:41:12 +0000 |
commit | e95ff34dacc330ba2cbfa7f426614e3dda40deff (patch) | |
tree | 40443c388266d280302f5035694a9fca8ff3cfcd /lib/libutil/libutil.h | |
parent | 37abb66e2f1dcd063d48c212b7423a4b32c6db80 (diff) | |
parent | b25e55dcc52d6203a9ae995ca470a66b6483f71d (diff) | |
download | FreeBSD-src-e95ff34dacc330ba2cbfa7f426614e3dda40deff.zip FreeBSD-src-e95ff34dacc330ba2cbfa7f426614e3dda40deff.tar.gz |
Merger of the quota64 project into head.
This joint work of Dag-Erling Smørgrav and myself updates the
FFS quota system to support both traditional 32-bit and new 64-bit
quotas (for those of you who want to put 2+Tb quotas on your users).
By default quotas are not compiled into the kernel. To include them
in your kernel configuration you need to specify:
options QUOTA # Enable FFS quotas
If you are already running with the current 32-bit quotas, they
should continue to work just as they have in the past. If you
wish to convert to using 64-bit quotas, use `quotacheck -c 64';
if you wish to revert from 64-bit quotas back to 32-bit quotas,
use `quotacheck -c 32'.
There is a new library of functions to simplify the use of the
quota system, do `man quotafile' for details. If your application
is currently using the quotactl(2), it is highly recommended that
you convert your application to use the quotafile interface.
Note that existing binaries will continue to work.
Special thanks to John Kozubik of rsync.net for getting me
interested in pursuing 64-bit quota support and for funding
part of my development time on this project.
Diffstat (limited to 'lib/libutil/libutil.h')
-rw-r--r-- | lib/libutil/libutil.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/libutil/libutil.h b/lib/libutil/libutil.h index 4c2ee3b..5b7ffad 100644 --- a/lib/libutil/libutil.h +++ b/lib/libutil/libutil.h @@ -164,6 +164,23 @@ int pidfile_close(struct pidfh *pfh); int pidfile_remove(struct pidfh *pfh); #endif +#ifdef _UFS_UFS_QUOTA_H_ +struct quotafile; +struct fstab; +struct quotafile *quota_open(struct fstab *, int, int); +void quota_close(struct quotafile *); +int quota_on(struct quotafile *); +int quota_off(struct quotafile *); +const char *quota_fsname(const struct quotafile *); +const char *quota_qfname(const struct quotafile *); +int quota_maxid(struct quotafile *); +int quota_check_path(const struct quotafile *, const char *path); +int quota_read(struct quotafile *, struct dqblk *, int); +int quota_write_limits(struct quotafile *, struct dqblk *, int); +int quota_write_usage(struct quotafile *, struct dqblk *, int); +int quota_convert(struct quotafile *, int); +#endif + __END_DECLS #define UU_LOCK_INUSE (1) |