summaryrefslogtreecommitdiff
path: root/sys/secmodel
diff options
context:
space:
mode:
authorelad <elad@NetBSD.org>2008-03-02 16:16:34 +0000
committerelad <elad@NetBSD.org>2008-03-02 16:16:34 +0000
commitfb57fc51dab783e0b6c531333b8c4cc2f5c76caf (patch)
tree18d491f1bbeb556523d0f62066117476d21f139a /sys/secmodel
parent6d94a6eac7af74675775d8cf60d9d4408dcb4d0a (diff)
Forgot this file in the previous commit.
Backend for the newly added KAUTH_NETWORK_NFS action. Spotted by Paul Goyette on current-users@, thanks!
Diffstat (limited to 'sys/secmodel')
-rw-r--r--sys/secmodel/bsd44/secmodel_bsd44_suser.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/sys/secmodel/bsd44/secmodel_bsd44_suser.c b/sys/secmodel/bsd44/secmodel_bsd44_suser.c
index 5b3b3940da0..bb6ea9cbb01 100644
--- a/sys/secmodel/bsd44/secmodel_bsd44_suser.c
+++ b/sys/secmodel/bsd44/secmodel_bsd44_suser.c
@@ -1,4 +1,4 @@
-/* $NetBSD: secmodel_bsd44_suser.c,v 1.55 2008/02/28 16:09:19 elad Exp $ */
+/* $NetBSD: secmodel_bsd44_suser.c,v 1.56 2008/03/02 16:16:34 elad Exp $ */
/*-
* Copyright (c) 2006 Elad Efrat <elad@NetBSD.org>
* All rights reserved.
@@ -38,7 +38,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44_suser.c,v 1.55 2008/02/28 16:09:19 elad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: secmodel_bsd44_suser.c,v 1.56 2008/03/02 16:16:34 elad Exp $");
#include <sys/types.h>
#include <sys/param.h>
@@ -852,6 +852,21 @@ secmodel_bsd44_suser_network_cb(kauth_cred_t cred, kauth_action_t action,
}
break;
+ case KAUTH_NETWORK_NFS:
+ switch (req) {
+ case KAUTH_REQ_NETWORK_NFS_EXPORT:
+ case KAUTH_REQ_NETWORK_NFS_SVC:
+ if (isroot)
+ result = KAUTH_RESULT_ALLOW;
+
+ break;
+
+ default:
+ result = KAUTH_RESULT_DEFER;
+ break;
+ }
+ break;
+
case KAUTH_NETWORK_ROUTE:
switch (((struct rt_msghdr *)arg1)->rtm_type) {
case RTM_GET: