diff options
Diffstat (limited to 'usr/src/common/acl/acl_common.c')
-rw-r--r-- | usr/src/common/acl/acl_common.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/usr/src/common/acl/acl_common.c b/usr/src/common/acl/acl_common.c index 494c5f73f4..6cfcb77937 100644 --- a/usr/src/common/acl/acl_common.c +++ b/usr/src/common/acl/acl_common.c @@ -20,13 +20,16 @@ */ /* * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. - * Copyright 2011 Nexenta Systems, Inc. All rights reserved. + * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ #include <sys/types.h> #include <sys/stat.h> +#include <sys/errno.h> #include <sys/avl.h> -#if defined(_KERNEL) +#if defined(_KERNEL) || defined(_FAKE_KERNEL) +#include <sys/debug.h> +#include <sys/kmem.h> #include <sys/systm.h> #include <sys/sysmacros.h> #include <acl/acl_common.h> @@ -221,7 +224,7 @@ cmp2acls(void *a, void *b) static void * cacl_realloc(void *ptr, size_t size, size_t new_size) { -#if defined(_KERNEL) +#if defined(_KERNEL) || defined(_FAKE_KERNEL) void *tmp; tmp = kmem_alloc(new_size, KM_SLEEP); @@ -236,7 +239,7 @@ cacl_realloc(void *ptr, size_t size, size_t new_size) static int cacl_malloc(void **ptr, size_t size) { -#if defined(_KERNEL) +#if defined(_KERNEL) || defined(_FAKE_KERNEL) *ptr = kmem_zalloc(size, KM_SLEEP); return (0); #else @@ -252,7 +255,7 @@ cacl_malloc(void **ptr, size_t size) static void cacl_free(void *ptr, size_t size) { -#if defined(_KERNEL) +#if defined(_KERNEL) || defined(_FAKE_KERNEL) kmem_free(ptr, size); #else free(ptr); @@ -1462,7 +1465,7 @@ convert_ace_to_aent(ace_t *acebufp, int acecnt, boolean_t isdir, int error = 0; aclent_t *aclentp, *dfaclentp; int aclcnt, dfaclcnt; - int aclsz, dfaclsz; + int aclsz, dfaclsz = 0; error = ln_ace_to_aent(acebufp, acecnt, owner, group, &aclentp, &aclcnt, &dfaclentp, &dfaclcnt, isdir); @@ -1553,11 +1556,11 @@ acl_translate(acl_t *aclp, int target_flavor, boolean_t isdir, uid_t owner, out: -#if !defined(_KERNEL) +#if defined(_KERNEL) || defined(_FAKE_KERNEL) + return (error); +#else errno = error; return (-1); -#else - return (error); #endif } |