diff options
Diffstat (limited to 'tests/setstat04.at')
-rw-r--r-- | tests/setstat04.at | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/tests/setstat04.at b/tests/setstat04.at new file mode 100644 index 0000000..a4e4eb3 --- /dev/null +++ b/tests/setstat04.at @@ -0,0 +1,50 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- +# Copyright (C) 2009, 2010 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +AT_SETUP([delayed setstat (umask)]) +AT_KEYWORDS([setstat debian=458079 setstat04]) + +# Description: Cpio versions up to 2.10 failed to restore directory +# permissions, if the directory was already present on dist (e.g. when +# using find . -depth). +# This test case verifies whether umask settings do not affect directory +# permissions. +# +# References: +# <20090620185721.GA18708@scru.org> +# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=458079 +# +# See also: setstat02, setstat03, setstat05 + +AT_CHECK([ +umask 022 +mkdir dir +echo "test file" > dir/file +mkdir newdir +find dir -depth | cpio -o --quiet > archive +mv dir old + +umask 077 +cpio -id --quiet < archive +genfile --stat=mode.777 dir +], +[0], +[755 +]) + +AT_CLEANUP + + |