diff --git a/module/zfs/zfs_ioctl.c b/module/zfs/zfs_ioctl.c index 759c12fe4d48..399b15cbdef4 100644 --- a/module/zfs/zfs_ioctl.c +++ b/module/zfs/zfs_ioctl.c @@ -3491,12 +3491,14 @@ zfs_ioc_snapshot(const char *poolname, nvlist_t *innvl, nvlist_t *outnvl) /* * Check for permission to set the properties on the fs. */ - *cp = '\0'; - error = zfs_secpolicy_write_perms(name, ZFS_DELEG_PERM_USERPROP, - CRED()); - *cp = '@'; - if (error != 0) - return (error); + if (!nvlist_empty(props)) { + *cp = '\0'; + error = zfs_secpolicy_write_perms(name, + ZFS_DELEG_PERM_USERPROP, CRED()); + *cp = '@'; + if (error != 0) + return (error); + } /* This must be the only snap of this fs. */ for (nvpair_t *pair2 = nvlist_next_nvpair(snaps, pair);