/tests/zfs-tests/tests/functional/cli_user/misc/zpool_online_001_neg.ksh

https://github.com/adilger/zfs · Korn Shell · 66 lines · 18 code · 10 blank · 38 comment · 1 complexity · 21da214e00445c15b2118a618e28906f MD5 · raw file

  1. #!/bin/ksh -p
  2. #
  3. # CDDL HEADER START
  4. #
  5. # The contents of this file are subject to the terms of the
  6. # Common Development and Distribution License (the "License").
  7. # You may not use this file except in compliance with the License.
  8. #
  9. # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
  10. # or http://www.opensolaris.org/os/licensing.
  11. # See the License for the specific language governing permissions
  12. # and limitations under the License.
  13. #
  14. # When distributing Covered Code, include this CDDL HEADER in each
  15. # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16. # If applicable, add the following below this CDDL HEADER, with the
  17. # fields enclosed by brackets "[]" replaced with your own identifying
  18. # information: Portions Copyright [yyyy] [name of copyright owner]
  19. #
  20. # CDDL HEADER END
  21. #
  22. #
  23. # Copyright 2007 Sun Microsystems, Inc. All rights reserved.
  24. # Use is subject to license terms.
  25. #
  26. #
  27. # Copyright (c) 2013, 2016 by Delphix. All rights reserved.
  28. #
  29. . $STF_SUITE/include/libtest.shlib
  30. . $STF_SUITE/tests/functional/cli_user/misc/misc.cfg
  31. #
  32. # DESCRIPTION:
  33. #
  34. # zpool online returns an error when run as a user
  35. #
  36. # STRATEGY:
  37. # 1. Attempt to online a device in a pool
  38. # 2. Verify the command fails
  39. #
  40. #
  41. function check_for_online
  42. {
  43. RESULT=$(zpool status -v $TESTPOOL.virt | grep disk-offline.dat \
  44. | grep ONLINE )
  45. if [ -n "$RESULT" ]
  46. then
  47. log_fail "A disk was brought online!"
  48. fi
  49. }
  50. verify_runnable "global"
  51. log_assert "zpool online returns an error when run as a user"
  52. log_mustnot zpool online $TESTPOOL.virt /$TESTDIR/disk-offline.dat
  53. check_for_online
  54. log_mustnot zpool online -t $TESTPOOL.virt /$TESTDIR/disk-offline.dat
  55. check_for_online
  56. log_pass "zpool online returns an error when run as a user"