summaryrefslogtreecommitdiff
path: root/tests/df/unreadable
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2009-09-03 19:36:34 +0200
committerJim Meyering <meyering@redhat.com>2009-09-03 19:52:47 +0200
commite0e8429c2433bd9820f42250236badc585bd9dd7 (patch)
tree12128f28af5a7c86f570058a2531c6031355bf4a /tests/df/unreadable
parent1422cabf930572f22849c55914352e915af1f677 (diff)
downloadcoreutils-e0e8429c2433bd9820f42250236badc585bd9dd7.tar.xz
df: don't fail due to an unreadable argument
* src/df.c (main): If open or fstat fails when we're trying to ensure that all arg-partitions are automounted, fall back on using stat. Inspired by the report and patch from Olivier Fourdan in http://bugzilla.redhat.com/520630. * NEWS (Bug fixes): Mention it. * tests/df/unreadable: New test for the above. * tests/Makefile.am (TESTS): Add df/unreadable. The bug was introduced in coreutils-7.3 via commit dbd17157, 2009-04-28, "df: use open(2), not stat, to trigger automounting".
Diffstat (limited to 'tests/df/unreadable')
-rwxr-xr-xtests/df/unreadable32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/df/unreadable b/tests/df/unreadable
new file mode 100755
index 000000000..8e6002860
--- /dev/null
+++ b/tests/df/unreadable
@@ -0,0 +1,32 @@
+#!/bin/sh
+# ensure that df can handle an unreadable argument
+
+# Copyright (C) 2009 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 of the License, 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/>.
+
+if test "$VERBOSE" = yes; then
+ set -x
+ df --version
+fi
+
+. $srcdir/test-lib.sh
+skip_if_root_
+
+fail=0
+touch unreadable || fail=1
+chmod a-r unreadable || fail=1
+df unreadable || fail=1
+
+Exit $fail