Cast 'zfs bad bloc' to ULL for x86
[zfs.git] / module / zcommon / zfs_deleg.c
index 0fd5800..9de6179 100644 (file)
  * CDDL HEADER END
  */
 /*
- * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
- * Use is subject to license terms.
+ * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2010 Nexenta Systems, Inc. All rights reserved.
  */
 
-
-#pragma ident  "%Z%%M% %I%     %E% SMI"
-
 #if defined(_KERNEL)
 #include <sys/systm.h>
 #include <sys/sunddi.h>
@@ -64,8 +61,15 @@ zfs_deleg_perm_tab_t zfs_deleg_perm_tab[] = {
        {ZFS_DELEG_PERM_ROLLBACK, ZFS_DELEG_NOTE_ROLLBACK },
        {ZFS_DELEG_PERM_SNAPSHOT, ZFS_DELEG_NOTE_SNAPSHOT },
        {ZFS_DELEG_PERM_SHARE, ZFS_DELEG_NOTE_SHARE },
-       {ZFS_DELEG_PERM_SEND, ZFS_DELEG_NOTE_NONE },
+       {ZFS_DELEG_PERM_SEND, ZFS_DELEG_NOTE_SEND },
        {ZFS_DELEG_PERM_USERPROP, ZFS_DELEG_NOTE_USERPROP },
+       {ZFS_DELEG_PERM_USERQUOTA, ZFS_DELEG_NOTE_USERQUOTA },
+       {ZFS_DELEG_PERM_GROUPQUOTA, ZFS_DELEG_NOTE_GROUPQUOTA },
+       {ZFS_DELEG_PERM_USERUSED, ZFS_DELEG_NOTE_USERUSED },
+       {ZFS_DELEG_PERM_GROUPUSED, ZFS_DELEG_NOTE_GROUPUSED },
+       {ZFS_DELEG_PERM_HOLD, ZFS_DELEG_NOTE_HOLD },
+       {ZFS_DELEG_PERM_RELEASE, ZFS_DELEG_NOTE_RELEASE },
+       {ZFS_DELEG_PERM_DIFF, ZFS_DELEG_NOTE_DIFF},
        {NULL, ZFS_DELEG_NOTE_NONE }
 };
 
@@ -179,8 +183,8 @@ zfs_deleg_verify_nvlist(nvlist_t *nvp)
                            nvpair_name(perm_name));
                        if (error)
                                return (-1);
-               } while (perm_name = nvlist_next_nvpair(perms, perm_name));
-       } while (who = nvlist_next_nvpair(nvp, who));
+               } while ((perm_name = nvlist_next_nvpair(perms, perm_name)));
+       } while ((who = nvlist_next_nvpair(nvp, who)));
        return (0);
 }
 
@@ -232,3 +236,9 @@ zfs_deleg_whokey(char *attr, zfs_deleg_who_type_t type,
                ASSERT(!"bad zfs_deleg_who_type_t");
        }
 }
+
+#if defined(_KERNEL) && defined(HAVE_SPL)
+EXPORT_SYMBOL(zfs_deleg_verify_nvlist);
+EXPORT_SYMBOL(zfs_deleg_whokey);
+EXPORT_SYMBOL(zfs_deleg_canonicalize_perm);
+#endif