1 /* @(#)rquota.x 2.1 88/08/01 4.0 RPCSRC */
2 /* @(#)rquota.x 1.2 87/09/20 Copyr 1987 Sun Micro */
5 * Remote quota protocol
6 * Requires unix authentication
13 const RQ_PATHLEN = 1024;
15 struct getquota_args {
16 string gqa_pathp<RQ_PATHLEN>; /* path to filesystem of interest */
17 int gqa_uid; /* Inquire about quota for uid */
20 struct ext_getquota_args {
21 string gqa_pathp<RQ_PATHLEN>; /* path to filesystem of interest */
22 int gqa_type; /* Type of quota info is needed about */
23 int gqa_id; /* Inquire about quota for id */
27 * remote quota structure
30 int rq_bsize; /* block size for block counts */
31 bool rq_active; /* indicates whether quota is active */
32 unsigned int rq_bhardlimit; /* absolute limit on disk blks alloc */
33 unsigned int rq_bsoftlimit; /* preferred limit on disk blks */
34 unsigned int rq_curblocks; /* current block count */
35 unsigned int rq_fhardlimit; /* absolute limit on allocated files */
36 unsigned int rq_fsoftlimit; /* preferred file limit */
37 unsigned int rq_curfiles; /* current # allocated files */
38 unsigned int rq_btimeleft; /* time left for excessive disk use */
39 unsigned int rq_ftimeleft; /* time left for excessive files */
43 Q_OK = 1, /* quota returned */
44 Q_NOQUOTA = 2, /* noquota for uid */
45 Q_EPERM = 3 /* no permission to access quota */
48 union getquota_rslt switch (gqr_status status) {
50 rquota gqr_rquota; /* valid if status == Q_OK */
63 RQUOTAPROC_GETQUOTA(getquota_args) = 1;
66 * Get active quotas only
69 RQUOTAPROC_GETACTIVEQUOTA(getquota_args) = 2;
71 version EXT_RQUOTAVERS {
76 RQUOTAPROC_GETQUOTA(ext_getquota_args) = 1;
79 * Get active quotas only
82 RQUOTAPROC_GETACTIVEQUOTA(ext_getquota_args) = 2;