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.
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.
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]
24 # Copyright 2007 Sun Microsystems, Inc. All rights reserved.
25 # Use is subject to license terms.
28 .
$STF_SUITE/tests
/functional
/acl
/acl_common.kshlib
32 # Verifies that tar will not include files attribute when @ flag is not
36 # 1. Create several files with attribute files.
37 # 2. Enter into directory A and record all files cksum
38 # 3. tar all the files to directory B.
39 # 4. Then tar the tar file to directory C.
40 # 5. Record all the files cksum in derectory C.
41 # 6. Verify the two records should be not identical.
44 verify_runnable
"both"
46 log_assert
"Verifies that tar will not include files attribute when @ flag is "\
55 for user
in root
$ZFS_ACL_STAFF1; do
56 log_must set_cur_usr
$user
58 log_must create_files
$TESTDIR
61 # Enter into initial directory and record all directory information,
62 # then tar all the files to $TMP_DIR/files.tar.
64 tarout
=$TMP_DIR/files.
tar
66 log_must cksum_files
$INI_DIR BEFORE_FCKSUM BEFORE_ACKSUM
67 log_must usr_exec
$TAR cpf
$tarout *
70 # Enter into test directory and tar $TMP_DIR/files.tar to current
71 # directory. Record all directory information and compare with initial
75 log_must usr_exec
$CP $tarout $TST_DIR
76 log_must usr_exec
$TAR xpf
$tarout
78 testfiles
=$
($LS -R $TST_DIR/*)
80 while (( i
< NUM_FILE
)); do
81 f
=$
(getitem
$i $testfiles)
82 ls_attr
=$
($LS -@
$f |
$AWK '{print substr($1, 11, 1)}')
83 if [[ $ls_attr == "@" ]]; then
84 log_fail
"extraction of attribute successful w/ -@ flag"
90 log_must cksum_files
$TST_DIR AFTER_FCKSUM AFTER_ACKSUM
92 log_must compare_cksum BEFORE_FCKSUM AFTER_FCKSUM
93 log_mustnot compare_cksum BEFORE_ACKSUM AFTER_ACKSUM
98 log_pass
"Verify tar without @ passed."