display project quota as user

Andre Noll maan at systemlinux.org
Wed Mar 14 08:09:02 CDT 2012


Simple question: Can non-privileged users display XFS project quotas?

Currently the command

	xfs_quota -c 'quota -p 42'

fails when executed as a non-root user due to quotactl(Q_XGETQUOTA,...)
returning EPERM. The problem seems to be that fs/quota/quota.c has no
knowledge of project quotas at all.

The proof-of-concept patch below makes quotactl(Q_XGETQUOTA,...)
succeed for any user when called with type == XQM_PRJQUOTA. However,
relaxing the permission checks like this might not please everybody,
changes semantics of an existing API and adds the XFS specific constant
XQM_PRJQUOTA to fs/quota.c. So I'm not even asking to apply something
like that.

Is there a better way to allow users to display project quotas?

Thanks
Andre
---

diff --git a/fs/quota/quota.c b/fs/quota/quota.c
index fc2c438..010763d 100644
--- a/fs/quota/quota.c
+++ b/fs/quota/quota.c
@@ -33,7 +33,8 @@ static int check_quotactl_permission(struct super_block *sb, int type, int cmd,
 	case Q_GETQUOTA:
 	case Q_XGETQUOTA:
 		if ((type == USRQUOTA && current_euid() == id) ||
-		    (type == GRPQUOTA && in_egroup_p(id)))
+		    (type == GRPQUOTA && in_egroup_p(id)) ||
+		    (type == XQM_PRJQUOTA))
 			break;
 		/*FALLTHROUGH*/
 	default:
-- 
The only person who always got his work done by Friday was Robinson Crusoe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://oss.sgi.com/pipermail/xfs/attachments/20120314/e33adc34/attachment.sig>


More information about the xfs mailing list