Bug #1726
closedRemoval of pyzfs broke delegation for volumes
100%
Description
Illumos issue 278 removed the use of pyzfs from zfs_main.c. The C
implementation of zfs_do_allow that replaced it calls zfs_open() with
ZFS_TYPE_FILESYSTEM, neglecting the volume type. This causes all allow
and unallow operations to fail for volumes. pyzfs used directly from
the command line still works though.
zfstest% zfs list rtall -o name,type rpool/test Permissions on rpool/test/vol -----------------------------------
NAME TYPE
rpool/test filesystem
rpool/test/vol volume
zfstest% sudo zfs allow jkennedy snapshot rpool/test/vol
cannot open 'rpool/test/vol': operation not applicable to datasets of this type
Failed to open Dataset rpool/test/vol
zfstest% sudo /usr/lib/zfs/pyzfs.py allow jkennedy snapshot rpool/test/vol
zfstest% sudo /usr/lib/zfs/pyzfs.py allow rpool/test/vol
---
Local+Descendent permissions:
user jkennedy snapshot
zfstest% sudo zfs snapshot rpool/test/vol@test
zfstest% zfs list -rtall -o name,type rpool/test
NAME TYPE
rpool/test filesystem
rpool/test/vol volume
rpool/test/vol@test snapshot
The use of the asterisks in the error message is also quite unlike
anything I've seen from zfs errors in the past.
Updated by Alexander Eremin almost 12 years ago
- Status changed from New to In Progress
- Assignee set to Alexander Eremin
- % Done changed from 0 to 20
Updated by Garrett D'Amore almost 12 years ago
- Status changed from In Progress to Resolved
- % Done changed from 20 to 100
- Tags deleted (
needs-triage)
Pushed in
changeset: 13540:97a48b559488
tag: tip
user: Alexander Eremin <a.eremin@nexenta.com>
date: Mon Nov 28 02:13:54 2011 -0800
description:
1726 Removal of pyzfs broke delegation for volumes
Reviewed by: Andrew Stormont <andyjstormont@googlemail.com>
Reviewed by: Garrett D'Amore <garrett@nexenta.com>
Reviewed by: Richard Lowe <richlowe@richlowe.net>
Reviewed by: Albert Lee <trisk@nexenta.com>
Approved by: Garrett D'Amore <garrett@nexenta.com>