4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License"). You may not use this file except in compliance
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
22 * Copyright 1987 Sun Microsystems, Inc. All rights reserved.
23 * Use is subject to license terms.
26 /* #ident "%Z%%M% %I% %E% SMI" */
29 * Remote quota protocol
30 * Requires unix authentication
33 const RQ_PATHLEN = 1024;
35 struct getquota_args {
36 string gqa_pathp<RQ_PATHLEN>; /* path to filesystem of interest */
37 int32_t gqa_uid; /* inquire about quota for uid */
41 * remote quota structure
44 int32_t rq_bsize; /* block size for block counts */
45 bool rq_active; /* indicates whether quota is active */
46 uint32_t rq_bhardlimit; /* absolute limit on disk blks alloc */
47 uint32_t rq_bsoftlimit; /* preferred limit on disk blks */
48 uint32_t rq_curblocks; /* current block count */
49 uint32_t rq_fhardlimit; /* absolute limit on allocated files */
50 uint32_t rq_fsoftlimit; /* preferred file limit */
51 uint32_t rq_curfiles; /* current # allocated files */
52 uint32_t rq_btimeleft; /* time left for excessive disk use */
53 uint32_t rq_ftimeleft; /* time left for excessive files */
57 Q_OK = 1, /* quota returned */
58 Q_NOQUOTA = 2, /* noquota for uid */
59 Q_EPERM = 3 /* no permission to access quota */
62 union getquota_rslt switch (gqr_status status) {
64 rquota gqr_rquota; /* valid if status == Q_OK */
77 RQUOTAPROC_GETQUOTA(getquota_args) = 1;
80 * Get active quotas only
83 RQUOTAPROC_GETACTIVEQUOTA(getquota_args) = 2;