Print this page
7290 ZFS test suite needs to control what utilities it can run
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>

Split Close
Expand all
Collapse all
          --- old/usr/src/test/zfs-tests/tests/functional/privilege/privilege_001_pos.ksh
          +++ new/usr/src/test/zfs-tests/tests/functional/privilege/privilege_001_pos.ksh
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19  #
  20   20  # CDDL HEADER END
  21   21  #
  22   22  
  23   23  #
  24   24  # Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  25   25  # Use is subject to license terms.
  26   26  #
  27   27  
  28   28  #
  29      -# Copyright (c) 2013 by Delphix. All rights reserved.
       29 +# Copyright (c) 2013, 2016 by Delphix. All rights reserved.
  30   30  #
  31   31  
  32   32  . $STF_SUITE/include/libtest.shlib
  33   33  
  34   34  #
  35   35  # DESCRIPTION:
  36   36  #
  37   37  # The RBAC profile "ZFS Storage Management" works
  38   38  #
  39   39  # STRATEGY:
↓ open down ↓ 12 lines elided ↑ open up ↑
  52   52  #          should succeed.
  53   53  #       6. Remove the Storage profile, then attempt to recreate the pool, which
  54   54  #          should fail.
  55   55  #
  56   56  
  57   57  # We can only run this in the global zone
  58   58  verify_runnable "global"
  59   59  
  60   60  log_assert "The RBAC profile \"ZFS Storage Management\" works"
  61   61  
  62      -ZFS_USER=$($CAT /tmp/zfs-privs-test-user.txt)
       62 +ZFS_USER=$(cat /tmp/zfs-privs-test-user.txt)
  63   63  
  64   64  # the user shouldn't be able to do anything initially
  65      -log_mustnot $SU $ZFS_USER -c "$ZPOOL create $TESTPOOL $DISKS"
  66      -log_mustnot $SU $ZFS_USER -c "$PFEXEC $ZPOOL create $TESTPOOL $DISKS"
       65 +log_mustnot su $ZFS_USER -c "zpool create $TESTPOOL $DISKS"
       66 +log_mustnot su $ZFS_USER -c "pfexec zpool create $TESTPOOL $DISKS"
  67   67  
  68   68  # the first time we assign the profile, we insist it should work
  69      -log_must $USERMOD -P "ZFS Storage Management" $ZFS_USER
  70      -log_must $SU $ZFS_USER -c "$PFEXEC $ZPOOL create -f $TESTPOOL $DISKS"
       69 +log_must usermod -P "ZFS Storage Management" $ZFS_USER
       70 +log_must su $ZFS_USER -c "pfexec zpool create -f $TESTPOOL $DISKS"
  71   71  
  72   72  # ensure the user can't create a filesystem with this profile
  73      -log_mustnot $SU $ZFS_USER -c "$ZFS create $TESTPOOL/fs"
       73 +log_mustnot su $ZFS_USER -c "zfs create $TESTPOOL/fs"
  74   74  
  75   75  # add ZFS File System Management profile, and try to create a fs
  76      -log_must $USERMOD -P "ZFS File System Management" $ZFS_USER
  77      -log_must $SU $ZFS_USER -c "$PFEXEC $ZFS create $TESTPOOL/fs"
       76 +log_must usermod -P "ZFS File System Management" $ZFS_USER
       77 +log_must su $ZFS_USER -c "pfexec zfs create $TESTPOOL/fs"
  78   78  
  79   79  # revoke File System Management profile
  80      -$USERMOD -P, $ZFS_USER
  81      -$USERMOD -P "ZFS Storage Management" $ZFS_USER
       80 +usermod -P, $ZFS_USER
       81 +usermod -P "ZFS Storage Management" $ZFS_USER
  82   82  
  83   83  # ensure the user can destroy pools
  84      -log_mustnot $SU $ZFS_USER -c "$ZPOOL destroy $TESTPOOL"
  85      -log_must $SU $ZFS_USER -c "$PFEXEC $ZPOOL destroy $TESTPOOL"
       84 +log_mustnot su $ZFS_USER -c "zpool destroy $TESTPOOL"
       85 +log_must su $ZFS_USER -c "pfexec zpool destroy $TESTPOOL"
  86   86  
  87   87  # revoke Storage Management profile
  88      -$USERMOD -P, $ZFS_USER
  89      -log_mustnot $SU $ZFS_USER -c "$PFEXEC $ZPOOL create -f $TESTPOOL $DISKS"
       88 +usermod -P, $ZFS_USER
       89 +log_mustnot su $ZFS_USER -c "pfexec zpool create -f $TESTPOOL $DISKS"
  90   90  
  91   91  log_pass "The RBAC profile \"ZFS Storage Management\" works"
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX