1# CDDL HEADER START 2# 3# The contents of this file are subject to the terms of the 4# Common Development and Distribution License (the "License"). 5# You may not use this file except in compliance with the License. 6# 7# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 8# or http://www.opensolaris.org/os/licensing. 9# See the License for the specific language governing permissions 10# and limitations under the License. 11# 12# When distributing Covered Code, include this CDDL HEADER in each 13# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 14# If applicable, add the following below this CDDL HEADER, with the 15# fields enclosed by brackets "[]" replaced with your own identifying 16# information: Portions Copyright [yyyy] [name of copyright owner] 17# 18# CDDL HEADER END 19# 20 21# 22# Copyright 2012 Spectra Logic. All rights reserved. 23# Use is subject to license terms. 24# 25 26 27atf_test_case zfs_acl_chmod_001_pos cleanup 28zfs_acl_chmod_001_pos_head() 29{ 30 atf_set "descr" "Verify chmod permission settings on files and directories" 31} 32zfs_acl_chmod_001_pos_body() 33{ 34 . $(atf_get_srcdir)/../../../include/default.cfg 35 . $(atf_get_srcdir)/../acl.cfg 36 37 verify_disk_count "$DISKS" 1 38 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 39 ksh93 $(atf_get_srcdir)/zfs_acl_chmod_001_pos.ksh || atf_fail "Testcase failed" 40} 41zfs_acl_chmod_001_pos_cleanup() 42{ 43 . $(atf_get_srcdir)/../../../include/default.cfg 44 . $(atf_get_srcdir)/../acl.cfg 45 46 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 47} 48 49 50atf_test_case zfs_acl_compress_001_pos cleanup 51zfs_acl_compress_001_pos_head() 52{ 53 atf_set "descr" "Compress will keep file attribute intact after the file iscompressed and uncompressed" 54 atf_set "require.config" "zfs_acl zfs_xattr" 55} 56zfs_acl_compress_001_pos_body() 57{ 58 . $(atf_get_srcdir)/../../../include/default.cfg 59 . $(atf_get_srcdir)/../acl.cfg 60 61 verify_disk_count "$DISKS" 1 62 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 63 ksh93 $(atf_get_srcdir)/zfs_acl_compress_001_pos.ksh || atf_fail "Testcase failed" 64} 65zfs_acl_compress_001_pos_cleanup() 66{ 67 . $(atf_get_srcdir)/../../../include/default.cfg 68 . $(atf_get_srcdir)/../acl.cfg 69 70 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 71} 72 73 74atf_test_case zfs_acl_cp_001_pos cleanup 75zfs_acl_cp_001_pos_head() 76{ 77 atf_set "descr" "Verifies that cp will include file attribute when using the -@ flag" 78 atf_set "require.config" "zfs_acl zfs_xattr" 79} 80zfs_acl_cp_001_pos_body() 81{ 82 . $(atf_get_srcdir)/../../../include/default.cfg 83 . $(atf_get_srcdir)/../acl.cfg 84 85 verify_disk_count "$DISKS" 1 86 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 87 ksh93 $(atf_get_srcdir)/zfs_acl_cp_001_pos.ksh || atf_fail "Testcase failed" 88} 89zfs_acl_cp_001_pos_cleanup() 90{ 91 . $(atf_get_srcdir)/../../../include/default.cfg 92 . $(atf_get_srcdir)/../acl.cfg 93 94 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 95} 96 97 98atf_test_case zfs_acl_cp_002_neg cleanup 99zfs_acl_cp_002_neg_head() 100{ 101 atf_set "descr" "Verifies that cp will not include file attribute when the -@ flagis not present." 102 atf_set "require.config" "zfs_acl zfs_xattr" 103} 104zfs_acl_cp_002_neg_body() 105{ 106 . $(atf_get_srcdir)/../../../include/default.cfg 107 . $(atf_get_srcdir)/../acl.cfg 108 109 verify_disk_count "$DISKS" 1 110 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 111 ksh93 $(atf_get_srcdir)/zfs_acl_cp_002_neg.ksh || atf_fail "Testcase failed" 112} 113zfs_acl_cp_002_neg_cleanup() 114{ 115 . $(atf_get_srcdir)/../../../include/default.cfg 116 . $(atf_get_srcdir)/../acl.cfg 117 118 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 119} 120 121 122atf_test_case zfs_acl_cp_003_neg cleanup 123zfs_acl_cp_003_neg_head() 124{ 125 atf_set "descr" "Verifies that cp won't be able to include file attribute whenattribute is unreadable (except root)" 126 atf_set "require.config" "zfs_acl zfs_xattr" 127 atf_set "require.progs" "ksh93 runat" 128} 129zfs_acl_cp_003_neg_body() 130{ 131 . $(atf_get_srcdir)/../../../include/default.cfg 132 . $(atf_get_srcdir)/../acl.cfg 133 134 verify_disk_count "$DISKS" 1 135 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 136 ksh93 $(atf_get_srcdir)/zfs_acl_cp_003_neg.ksh || atf_fail "Testcase failed" 137} 138zfs_acl_cp_003_neg_cleanup() 139{ 140 . $(atf_get_srcdir)/../../../include/default.cfg 141 . $(atf_get_srcdir)/../acl.cfg 142 143 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 144} 145 146 147atf_test_case zfs_acl_find_001_pos cleanup 148zfs_acl_find_001_pos_head() 149{ 150 atf_set "descr" "Verifies ability to find files with attribute with-xattr flag and using '-exec runat ls'" 151 atf_set "require.config" "zfs_acl zfs_xattr" 152} 153zfs_acl_find_001_pos_body() 154{ 155 . $(atf_get_srcdir)/../../../include/default.cfg 156 . $(atf_get_srcdir)/../acl.cfg 157 158 verify_disk_count "$DISKS" 1 159 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 160 ksh93 $(atf_get_srcdir)/zfs_acl_find_001_pos.ksh || atf_fail "Testcase failed" 161} 162zfs_acl_find_001_pos_cleanup() 163{ 164 . $(atf_get_srcdir)/../../../include/default.cfg 165 . $(atf_get_srcdir)/../acl.cfg 166 167 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 168} 169 170 171atf_test_case zfs_acl_find_002_neg cleanup 172zfs_acl_find_002_neg_head() 173{ 174 atf_set "descr" "verifies -xattr doesn't include files withoutattribute and using '-exec runat ls'" 175 atf_set "require.config" "zfs_acl zfs_xattr" 176 atf_set "require.progs" "ksh93 runat" 177} 178zfs_acl_find_002_neg_body() 179{ 180 . $(atf_get_srcdir)/../../../include/default.cfg 181 . $(atf_get_srcdir)/../acl.cfg 182 183 verify_disk_count "$DISKS" 1 184 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 185 ksh93 $(atf_get_srcdir)/zfs_acl_find_002_neg.ksh || atf_fail "Testcase failed" 186} 187zfs_acl_find_002_neg_cleanup() 188{ 189 . $(atf_get_srcdir)/../../../include/default.cfg 190 . $(atf_get_srcdir)/../acl.cfg 191 192 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 193} 194 195 196atf_test_case zfs_acl_ls_001_pos cleanup 197zfs_acl_ls_001_pos_head() 198{ 199 atf_set "descr" "Verifies that ls displays @ in the file permissions using ls -@for files with attribute." 200 atf_set "require.config" "zfs_acl zfs_xattr" 201} 202zfs_acl_ls_001_pos_body() 203{ 204 . $(atf_get_srcdir)/../../../include/default.cfg 205 . $(atf_get_srcdir)/../acl.cfg 206 207 verify_disk_count "$DISKS" 1 208 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 209 ksh93 $(atf_get_srcdir)/zfs_acl_ls_001_pos.ksh || atf_fail "Testcase failed" 210} 211zfs_acl_ls_001_pos_cleanup() 212{ 213 . $(atf_get_srcdir)/../../../include/default.cfg 214 . $(atf_get_srcdir)/../acl.cfg 215 216 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 217} 218 219 220atf_test_case zfs_acl_ls_002_neg cleanup 221zfs_acl_ls_002_neg_head() 222{ 223 atf_set "descr" "Verifies that ls doesn't display @ in the filepermissions using ls -@ for files without attribute." 224 atf_set "require.config" "zfs_acl zfs_xattr" 225 atf_set "require.progs" "ksh93 runat" 226} 227zfs_acl_ls_002_neg_body() 228{ 229 . $(atf_get_srcdir)/../../../include/default.cfg 230 . $(atf_get_srcdir)/../acl.cfg 231 232 verify_disk_count "$DISKS" 1 233 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 234 ksh93 $(atf_get_srcdir)/zfs_acl_ls_002_neg.ksh || atf_fail "Testcase failed" 235} 236zfs_acl_ls_002_neg_cleanup() 237{ 238 . $(atf_get_srcdir)/../../../include/default.cfg 239 . $(atf_get_srcdir)/../acl.cfg 240 241 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 242} 243 244 245atf_test_case zfs_acl_mv_001_pos cleanup 246zfs_acl_mv_001_pos_head() 247{ 248 atf_set "descr" "Verifies that mv will include file attribute." 249 atf_set "require.config" "zfs_acl zfs_xattr" 250} 251zfs_acl_mv_001_pos_body() 252{ 253 . $(atf_get_srcdir)/../../../include/default.cfg 254 . $(atf_get_srcdir)/../acl.cfg 255 256 verify_disk_count "$DISKS" 1 257 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 258 ksh93 $(atf_get_srcdir)/zfs_acl_mv_001_pos.ksh || atf_fail "Testcase failed" 259} 260zfs_acl_mv_001_pos_cleanup() 261{ 262 . $(atf_get_srcdir)/../../../include/default.cfg 263 . $(atf_get_srcdir)/../acl.cfg 264 265 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 266} 267 268 269atf_test_case zfs_acl_pack_001_pos cleanup 270zfs_acl_pack_001_pos_head() 271{ 272 atf_set "descr" "Verifies that pack will keep file attribute intact after the fileis packed and unpacked" 273 atf_set "require.config" "zfs_acl zfs_xattr" 274 atf_set "require.progs" "ksh93 unpack pack" 275} 276zfs_acl_pack_001_pos_body() 277{ 278 . $(atf_get_srcdir)/../../../include/default.cfg 279 . $(atf_get_srcdir)/../acl.cfg 280 281 verify_disk_count "$DISKS" 1 282 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 283 ksh93 $(atf_get_srcdir)/zfs_acl_pack_001_pos.ksh || atf_fail "Testcase failed" 284} 285zfs_acl_pack_001_pos_cleanup() 286{ 287 . $(atf_get_srcdir)/../../../include/default.cfg 288 . $(atf_get_srcdir)/../acl.cfg 289 290 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 291} 292 293 294atf_test_case zfs_acl_pax_001_pos cleanup 295zfs_acl_pax_001_pos_head() 296{ 297 atf_set "descr" "Verify include attribute in pax archive and restore with paxshould succeed." 298 atf_set "require.config" "zfs_acl zfs_xattr" 299 atf_set "require.progs" "ksh93 pax" 300} 301zfs_acl_pax_001_pos_body() 302{ 303 . $(atf_get_srcdir)/../../../include/default.cfg 304 . $(atf_get_srcdir)/../acl.cfg 305 306 verify_disk_count "$DISKS" 1 307 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 308 ksh93 $(atf_get_srcdir)/zfs_acl_pax_001_pos.ksh || atf_fail "Testcase failed" 309} 310zfs_acl_pax_001_pos_cleanup() 311{ 312 . $(atf_get_srcdir)/../../../include/default.cfg 313 . $(atf_get_srcdir)/../acl.cfg 314 315 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 316} 317 318 319atf_test_case zfs_acl_pax_002_pos cleanup 320zfs_acl_pax_002_pos_head() 321{ 322 atf_set "descr" "Verify include attribute in pax archive and restore with tarshould succeed." 323 atf_set "require.config" "zfs_acl zfs_xattr" 324 atf_set "require.progs" "ksh93 pax" 325} 326zfs_acl_pax_002_pos_body() 327{ 328 . $(atf_get_srcdir)/../../../include/default.cfg 329 . $(atf_get_srcdir)/../acl.cfg 330 331 verify_disk_count "$DISKS" 1 332 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 333 ksh93 $(atf_get_srcdir)/zfs_acl_pax_002_pos.ksh || atf_fail "Testcase failed" 334} 335zfs_acl_pax_002_pos_cleanup() 336{ 337 . $(atf_get_srcdir)/../../../include/default.cfg 338 . $(atf_get_srcdir)/../acl.cfg 339 340 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 341} 342 343 344atf_test_case zfs_acl_pax_003_pos cleanup 345zfs_acl_pax_003_pos_head() 346{ 347 atf_set "descr" "Verify include attribute in pax archive and restore with cpioshould succeed." 348 atf_set "require.config" "zfs_acl zfs_xattr" 349 atf_set "require.progs" "ksh93 pax" 350} 351zfs_acl_pax_003_pos_body() 352{ 353 . $(atf_get_srcdir)/../../../include/default.cfg 354 . $(atf_get_srcdir)/../acl.cfg 355 356 verify_disk_count "$DISKS" 1 357 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 358 ksh93 $(atf_get_srcdir)/zfs_acl_pax_003_pos.ksh || atf_fail "Testcase failed" 359} 360zfs_acl_pax_003_pos_cleanup() 361{ 362 . $(atf_get_srcdir)/../../../include/default.cfg 363 . $(atf_get_srcdir)/../acl.cfg 364 365 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 366} 367 368 369atf_test_case zfs_acl_pax_004_pos cleanup 370zfs_acl_pax_004_pos_head() 371{ 372 atf_set "descr" "Verify files include attribute in pax archive and restore with paxshould succeed." 373 atf_set "require.config" "zfs_acl zfs_xattr" 374 atf_set "require.progs" "ksh93 pax" 375} 376zfs_acl_pax_004_pos_body() 377{ 378 . $(atf_get_srcdir)/../../../include/default.cfg 379 . $(atf_get_srcdir)/../acl.cfg 380 381 verify_disk_count "$DISKS" 1 382 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 383 ksh93 $(atf_get_srcdir)/zfs_acl_pax_004_pos.ksh || atf_fail "Testcase failed" 384} 385zfs_acl_pax_004_pos_cleanup() 386{ 387 . $(atf_get_srcdir)/../../../include/default.cfg 388 . $(atf_get_srcdir)/../acl.cfg 389 390 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 391} 392 393 394atf_test_case zfs_acl_pax_005_pos cleanup 395zfs_acl_pax_005_pos_head() 396{ 397 atf_set "descr" "Verify files include attribute in cpio archive and restore withcpio should succeed." 398 atf_set "require.config" "zfs_acl zfs_xattr" 399 atf_set "require.progs" "ksh93 pax" 400} 401zfs_acl_pax_005_pos_body() 402{ 403 . $(atf_get_srcdir)/../../../include/default.cfg 404 . $(atf_get_srcdir)/../acl.cfg 405 406 verify_disk_count "$DISKS" 1 407 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 408 ksh93 $(atf_get_srcdir)/zfs_acl_pax_005_pos.ksh || atf_fail "Testcase failed" 409} 410zfs_acl_pax_005_pos_cleanup() 411{ 412 . $(atf_get_srcdir)/../../../include/default.cfg 413 . $(atf_get_srcdir)/../acl.cfg 414 415 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 416} 417 418 419atf_test_case zfs_acl_pax_006_pos cleanup 420zfs_acl_pax_006_pos_head() 421{ 422 atf_set "descr" "Verify files include attribute in tar archive and restore withtar should succeed." 423 atf_set "require.config" "zfs_acl zfs_xattr" 424 atf_set "require.progs" "ksh93 pax" 425} 426zfs_acl_pax_006_pos_body() 427{ 428 . $(atf_get_srcdir)/../../../include/default.cfg 429 . $(atf_get_srcdir)/../acl.cfg 430 431 verify_disk_count "$DISKS" 1 432 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 433 ksh93 $(atf_get_srcdir)/zfs_acl_pax_006_pos.ksh || atf_fail "Testcase failed" 434} 435zfs_acl_pax_006_pos_cleanup() 436{ 437 . $(atf_get_srcdir)/../../../include/default.cfg 438 . $(atf_get_srcdir)/../acl.cfg 439 440 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 441} 442 443 444atf_test_case zfs_acl_tar_001_pos cleanup 445zfs_acl_tar_001_pos_head() 446{ 447 atf_set "descr" "Verifies that tar will include file attribute when @ flag ispresent." 448 atf_set "require.config" "zfs_acl zfs_xattr" 449} 450zfs_acl_tar_001_pos_body() 451{ 452 . $(atf_get_srcdir)/../../../include/default.cfg 453 . $(atf_get_srcdir)/../acl.cfg 454 455 verify_disk_count "$DISKS" 1 456 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 457 ksh93 $(atf_get_srcdir)/zfs_acl_tar_001_pos.ksh || atf_fail "Testcase failed" 458} 459zfs_acl_tar_001_pos_cleanup() 460{ 461 . $(atf_get_srcdir)/../../../include/default.cfg 462 . $(atf_get_srcdir)/../acl.cfg 463 464 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 465} 466 467 468atf_test_case zfs_acl_tar_002_neg cleanup 469zfs_acl_tar_002_neg_head() 470{ 471 atf_set "descr" "Verifies that tar will not include files attribute when @ flag isnot present" 472 atf_set "require.config" "zfs_acl zfs_xattr" 473} 474zfs_acl_tar_002_neg_body() 475{ 476 . $(atf_get_srcdir)/../../../include/default.cfg 477 . $(atf_get_srcdir)/../acl.cfg 478 479 verify_disk_count "$DISKS" 1 480 ksh93 $(atf_get_srcdir)/../setup.ksh || atf_fail "Setup failed" 481 ksh93 $(atf_get_srcdir)/zfs_acl_tar_002_neg.ksh || atf_fail "Testcase failed" 482} 483zfs_acl_tar_002_neg_cleanup() 484{ 485 . $(atf_get_srcdir)/../../../include/default.cfg 486 . $(atf_get_srcdir)/../acl.cfg 487 488 ksh93 $(atf_get_srcdir)/../cleanup.ksh || atf_fail "Cleanup failed" 489} 490 491 492atf_init_test_cases() 493{ 494 495 atf_add_test_case zfs_acl_chmod_001_pos 496 atf_add_test_case zfs_acl_compress_001_pos 497 atf_add_test_case zfs_acl_cp_001_pos 498 atf_add_test_case zfs_acl_cp_002_neg 499 atf_add_test_case zfs_acl_cp_003_neg 500 atf_add_test_case zfs_acl_find_001_pos 501 atf_add_test_case zfs_acl_find_002_neg 502 atf_add_test_case zfs_acl_ls_001_pos 503 atf_add_test_case zfs_acl_ls_002_neg 504 atf_add_test_case zfs_acl_mv_001_pos 505 atf_add_test_case zfs_acl_pack_001_pos 506 atf_add_test_case zfs_acl_pax_001_pos 507 atf_add_test_case zfs_acl_pax_002_pos 508 atf_add_test_case zfs_acl_pax_003_pos 509 atf_add_test_case zfs_acl_pax_004_pos 510 atf_add_test_case zfs_acl_pax_005_pos 511 atf_add_test_case zfs_acl_pax_006_pos 512 atf_add_test_case zfs_acl_tar_001_pos 513 atf_add_test_case zfs_acl_tar_002_neg 514} 515