Module Name:    src
Committed By:   christos
Date:           Sun Mar 27 16:16:39 UTC 2022

Modified Files:
        src/sys/sys: kauth.h param.h

Log Message:
Widen kauth_action_t so we can add KAUTH_VNODE_ADD_LINK; welcome to 9.99.96.


To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/sys/sys/kauth.h
cvs rdiff -u -r1.708 -r1.709 src/sys/sys/param.h

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

Modified files:

Index: src/sys/sys/kauth.h
diff -u src/sys/sys/kauth.h:1.86 src/sys/sys/kauth.h:1.87
--- src/sys/sys/kauth.h:1.86	Tue Sep  8 10:12:57 2020
+++ src/sys/sys/kauth.h	Sun Mar 27 12:16:39 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: kauth.h,v 1.86 2020/09/08 14:12:57 christos Exp $ */
+/* $NetBSD: kauth.h,v 1.87 2022/03/27 16:16:39 christos Exp $ */
 
 /*-
  * Copyright (c) 2005, 2006 Elad Efrat <e...@netbsd.org>  
@@ -51,7 +51,7 @@ enum uio_seg;
 /* Types. */
 typedef struct kauth_scope     *kauth_scope_t;
 typedef struct kauth_listener  *kauth_listener_t;
-typedef uint32_t		kauth_action_t;
+typedef uint64_t		kauth_action_t;
 typedef int (*kauth_scope_callback_t)(kauth_cred_t, kauth_action_t,
 				      void *, void *, void *, void *, void *);
 typedef	struct kauth_key       *kauth_key_t;
@@ -383,36 +383,37 @@ enum {
 /*
  * Vnode scope - action bits.
  */
-#define	KAUTH_VNODE_READ_DATA		(1U << 0)
+#define	KAUTH_VNODE_READ_DATA		(1ULL << 0)
 #define	KAUTH_VNODE_LIST_DIRECTORY	KAUTH_VNODE_READ_DATA
-#define	KAUTH_VNODE_WRITE_DATA		(1U << 1)
+#define	KAUTH_VNODE_WRITE_DATA		(1ULL << 1)
 #define	KAUTH_VNODE_ADD_FILE		KAUTH_VNODE_WRITE_DATA
-#define	KAUTH_VNODE_EXECUTE		(1U << 2)
+#define	KAUTH_VNODE_EXECUTE		(1ULL << 2)
 #define	KAUTH_VNODE_SEARCH		KAUTH_VNODE_EXECUTE
-#define	KAUTH_VNODE_DELETE		(1U << 3)
-#define	KAUTH_VNODE_APPEND_DATA		(1U << 4)
+#define	KAUTH_VNODE_DELETE		(1ULL << 3)
+#define	KAUTH_VNODE_APPEND_DATA		(1ULL << 4)
 #define	KAUTH_VNODE_ADD_SUBDIRECTORY	KAUTH_VNODE_APPEND_DATA
-#define	KAUTH_VNODE_READ_TIMES		(1U << 5)
-#define	KAUTH_VNODE_WRITE_TIMES		(1U << 6)
-#define	KAUTH_VNODE_READ_FLAGS		(1U << 7)
-#define	KAUTH_VNODE_WRITE_FLAGS		(1U << 8)
-#define	KAUTH_VNODE_READ_SYSFLAGS	(1U << 9)
-#define	KAUTH_VNODE_WRITE_SYSFLAGS	(1U << 10)
-#define	KAUTH_VNODE_RENAME		(1U << 11)
-#define	KAUTH_VNODE_CHANGE_OWNERSHIP	(1U << 12)
-#define	KAUTH_VNODE_READ_SECURITY	(1U << 13)
-#define	KAUTH_VNODE_WRITE_SECURITY	(1U << 14)
-#define	KAUTH_VNODE_READ_ATTRIBUTES	(1U << 15)
-#define	KAUTH_VNODE_WRITE_ATTRIBUTES	(1U << 16)
-#define	KAUTH_VNODE_READ_EXTATTRIBUTES	(1U << 17)
-#define	KAUTH_VNODE_WRITE_EXTATTRIBUTES	(1U << 18)
-#define	KAUTH_VNODE_RETAIN_SUID		(1U << 19)
-#define	KAUTH_VNODE_RETAIN_SGID		(1U << 20)
-#define	KAUTH_VNODE_REVOKE		(1U << 21)
-
-#define	KAUTH_VNODE_IS_EXEC		(1U << 29)
-#define	KAUTH_VNODE_HAS_SYSFLAGS	(1U << 30)
-#define	KAUTH_VNODE_ACCESS		(1U << 31)
+#define	KAUTH_VNODE_READ_TIMES		(1ULL << 5)
+#define	KAUTH_VNODE_WRITE_TIMES		(1ULL << 6)
+#define	KAUTH_VNODE_READ_FLAGS		(1ULL << 7)
+#define	KAUTH_VNODE_WRITE_FLAGS		(1ULL << 8)
+#define	KAUTH_VNODE_READ_SYSFLAGS	(1ULL << 9)
+#define	KAUTH_VNODE_WRITE_SYSFLAGS	(1ULL << 10)
+#define	KAUTH_VNODE_RENAME		(1ULL << 11)
+#define	KAUTH_VNODE_CHANGE_OWNERSHIP	(1ULL << 12)
+#define	KAUTH_VNODE_READ_SECURITY	(1ULL << 13)
+#define	KAUTH_VNODE_WRITE_SECURITY	(1ULL << 14)
+#define	KAUTH_VNODE_READ_ATTRIBUTES	(1ULL << 15)
+#define	KAUTH_VNODE_WRITE_ATTRIBUTES	(1ULL << 16)
+#define	KAUTH_VNODE_READ_EXTATTRIBUTES	(1ULL << 17)
+#define	KAUTH_VNODE_WRITE_EXTATTRIBUTES	(1ULL << 18)
+#define	KAUTH_VNODE_RETAIN_SUID		(1ULL << 19)
+#define	KAUTH_VNODE_RETAIN_SGID		(1ULL << 20)
+#define	KAUTH_VNODE_REVOKE		(1ULL << 21)
+
+#define	KAUTH_VNODE_IS_EXEC		(1ULL << 29)
+#define	KAUTH_VNODE_HAS_SYSFLAGS	(1ULL << 30)
+#define	KAUTH_VNODE_ACCESS		(1ULL << 31)
+#define	KAUTH_VNODE_ADD_LINK		(1ULL << 32)
 
 /*
  * This is a special fs_decision indication that can be used by file-systems
@@ -494,6 +495,7 @@ gid_t kauth_cred_getgid(kauth_cred_t);
 gid_t kauth_cred_getegid(kauth_cred_t);
 gid_t kauth_cred_getsvgid(kauth_cred_t);
 int kauth_cred_ismember_gid(kauth_cred_t, gid_t, int *);
+int kauth_cred_groupmember(kauth_cred_t, gid_t);
 u_int kauth_cred_ngroups(kauth_cred_t);
 gid_t kauth_cred_group(kauth_cred_t, u_int);
 

Index: src/sys/sys/param.h
diff -u src/sys/sys/param.h:1.708 src/sys/sys/param.h:1.709
--- src/sys/sys/param.h:1.708	Sat Mar 19 09:53:32 2022
+++ src/sys/sys/param.h	Sun Mar 27 12:16:39 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: param.h,v 1.708 2022/03/19 13:53:32 hannken Exp $	*/
+/*	$NetBSD: param.h,v 1.709 2022/03/27 16:16:39 christos Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1986, 1989, 1993
@@ -67,7 +67,7 @@
  *	2.99.9		(299000900)
  */
 
-#define	__NetBSD_Version__	999009500	/* NetBSD 9.99.95 */
+#define	__NetBSD_Version__	999009600	/* NetBSD 9.99.96 */
 
 #define __NetBSD_Prereq__(M,m,p) (((((M) * 100000000) + \
     (m) * 1000000) + (p) * 100) <= __NetBSD_Version__)

Reply via email to