From c0984c936f56f18b37ceff63c59e29a1fdd04a7c Mon Sep 17 00:00:00 2001 From: Rob Norris Date: Mon, 27 Oct 2025 14:14:41 +1100 Subject: [PATCH] libspl: move cred implementation from libzpool Sponsored-by: https://despairlabs.com/sponsor/ Reviewed-by: Brian Behlendorf Signed-off-by: Rob Norris Closes #17861 --- lib/libspl/Makefile.am | 1 + lib/libspl/cred.c | 65 ++++++++++++++++++++++++++++++++++++++++++ lib/libzpool/kernel.c | 35 ----------------------- 3 files changed, 66 insertions(+), 35 deletions(-) create mode 100644 lib/libspl/cred.c diff --git a/lib/libspl/Makefile.am b/lib/libspl/Makefile.am index cb70fb296..b13cb6766 100644 --- a/lib/libspl/Makefile.am +++ b/lib/libspl/Makefile.am @@ -17,6 +17,7 @@ libspl_la_SOURCES = \ %D%/libspl_impl.h \ %D%/atomic.c \ %D%/condvar.c \ + %D%/cred.c \ %D%/getexecname.c \ %D%/list.c \ %D%/mkdirp.c \ diff --git a/lib/libspl/cred.c b/lib/libspl/cred.c new file mode 100644 index 000000000..48527b199 --- /dev/null +++ b/lib/libspl/cred.c @@ -0,0 +1,65 @@ +// SPDX-License-Identifier: CDDL-1.0 +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or https://opensource.org/licenses/CDDL-1.0. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ +/* + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2012, 2018 by Delphix. All rights reserved. + * Copyright (c) 2016 Actifio, Inc. All rights reserved. + * Copyright (c) 2025, Klara, Inc. + */ + +#include + +uid_t +crgetuid(cred_t *cr) +{ + (void) cr; + return (0); +} + +uid_t +crgetruid(cred_t *cr) +{ + (void) cr; + return (0); +} + +gid_t +crgetgid(cred_t *cr) +{ + (void) cr; + return (0); +} + +int +crgetngroups(cred_t *cr) +{ + (void) cr; + return (0); +} + +gid_t * +crgetgroups(cred_t *cr) +{ + (void) cr; + return (NULL); +} + diff --git a/lib/libzpool/kernel.c b/lib/libzpool/kernel.c index 704c8faff..019f4e573 100644 --- a/lib/libzpool/kernel.c +++ b/lib/libzpool/kernel.c @@ -635,41 +635,6 @@ kernel_fini(void) random_fini(); } -uid_t -crgetuid(cred_t *cr) -{ - (void) cr; - return (0); -} - -uid_t -crgetruid(cred_t *cr) -{ - (void) cr; - return (0); -} - -gid_t -crgetgid(cred_t *cr) -{ - (void) cr; - return (0); -} - -int -crgetngroups(cred_t *cr) -{ - (void) cr; - return (0); -} - -gid_t * -crgetgroups(cred_t *cr) -{ - (void) cr; - return (NULL); -} - int zfs_secpolicy_snapshot_perms(const char *name, cred_t *cr) {