Module Name:    src
Committed By:   manu
Date:           Sun Sep  9 04:27:49 UTC 2012

Modified Files:
        src/sys/ufs/ufs: ufs_quota.c

Log Message:
Temporary fix for quotactl authorization: it must use the effective UID
and not the real UID.

Further work is required to move the check to the kauth listener instead
of having it in UFS code.


To generate a diff of this commit:
cvs rdiff -u -r1.111 -r1.112 src/sys/ufs/ufs/ufs_quota.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/ufs/ufs/ufs_quota.c
diff -u src/sys/ufs/ufs/ufs_quota.c:1.111 src/sys/ufs/ufs/ufs_quota.c:1.112
--- src/sys/ufs/ufs/ufs_quota.c:1.111	Sun Aug 26 02:32:14 2012
+++ src/sys/ufs/ufs/ufs_quota.c	Sun Sep  9 04:27:49 2012
@@ -1,4 +1,4 @@
-/*	$NetBSD: ufs_quota.c,v 1.111 2012/08/26 02:32:14 dholland Exp $	*/
+/*	$NetBSD: ufs_quota.c,v 1.112 2012/09/09 04:27:49 manu Exp $	*/
 
 /*
  * Copyright (c) 1982, 1986, 1990, 1993, 1995
@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: ufs_quota.c,v 1.111 2012/08/26 02:32:14 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: ufs_quota.c,v 1.112 2012/09/09 04:27:49 manu Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_quota.h"
@@ -335,7 +335,7 @@ quota_handle_cmd_objtypestat(struct moun
 static int
 quota_get_auth(struct mount *mp, struct lwp *l, uid_t id) {
 	/* The user can always query about his own quota. */
-	if (id == kauth_cred_getuid(l->l_cred))
+	if (id == kauth_cred_geteuid(l->l_cred))
 		return 0;
 	return kauth_authorize_system(l->l_cred, KAUTH_SYSTEM_FS_QUOTA,
 	    KAUTH_REQ_SYSTEM_FS_QUOTA_GET, mp, KAUTH_ARG(id), NULL);

Reply via email to