2 * Remote quota protocol
3 * Requires unix authentication
5 * @(#)rquota.x 1.2 87/09/20 Copyr 1987 Sun Micro
6 * @(#)rquota.x 2.1 88/08/01 4.0 RPCSRC
7 * $FreeBSD: src/include/rpcsvc/rquota.x,v 1.6 1999/08/27 23:45:10 peter Exp $
8 * $DragonFly: src/include/rpcsvc/rquota.x,v 1.2 2003/06/17 04:25:58 dillon Exp $
11 const RQ_PATHLEN = 1024;
13 struct getquota_args {
14 string gqa_pathp<RQ_PATHLEN>; /* path to filesystem of interest */
15 int gqa_uid; /* inquire about quota for uid */
19 * remote quota structure
22 int rq_bsize; /* block size for block counts */
23 bool rq_active; /* indicates whether quota is active */
24 unsigned int rq_bhardlimit; /* absolute limit on disk blks alloc */
25 unsigned int rq_bsoftlimit; /* preferred limit on disk blks */
26 unsigned int rq_curblocks; /* current block count */
27 unsigned int rq_fhardlimit; /* absolute limit on allocated files */
28 unsigned int rq_fsoftlimit; /* preferred file limit */
29 unsigned int rq_curfiles; /* current # allocated files */
30 unsigned int rq_btimeleft; /* time left for excessive disk use */
31 unsigned int rq_ftimeleft; /* time left for excessive files */
35 Q_OK = 1, /* quota returned */
36 Q_NOQUOTA = 2, /* noquota for uid */
37 Q_EPERM = 3 /* no permission to access quota */
40 union getquota_rslt switch (gqr_status status) {
42 rquota gqr_rquota; /* valid if status == Q_OK */
55 RQUOTAPROC_GETQUOTA(getquota_args) = 1;
58 * Get active quotas only
61 RQUOTAPROC_GETACTIVEQUOTA(getquota_args) = 2;