X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=fuse%2Ftest-fuse.sh;h=0a429f73b30fa3b649f1c53480064a36875ed223;hb=8b2e60ce4b46e86da093ee64d4e0b0ae3c998d55;hp=15e96313204b28c9bbc18eb994b301d2b06ac985;hpb=d20b9cd6b82e26dd2f8cf43d9cc8f1e518f2e077;p=libguestfs.git diff --git a/fuse/test-fuse.sh b/fuse/test-fuse.sh index 15e9631..0a429f7 100755 --- a/fuse/test-fuse.sh +++ b/fuse/test-fuse.sh @@ -1,6 +1,6 @@ #!/bin/bash - # libguestfs -# Copyright (C) 2009 Red Hat Inc. +# Copyright (C) 2009-2011 Red Hat 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 @@ -92,14 +92,21 @@ $guestfish < /dev/null EOF stage Mounting the filesystem -$guestmount -a "$image" -m /dev/sda1 "$mp" +$guestmount \ + -a "$image" -m /dev/sda1:/:acl,user_xattr \ + -o uid="$(id -u)" -o gid="$(id -g)" "$mp" # To debug guestmount, add this to the end of the preceding command: # -v -x & sleep 60 @@ -197,17 +204,18 @@ truncate -c -s 0 truncated [ "$(stat -c %s truncated)" -eq 0 ] rm -f truncated -stage Checking utimens and timestamps -for ts in 12345 1234567 987654321; do - # NB: It's not possible to set the ctime with touch. - touch -a -d @$ts timestamp - [ "$(stat -c %X timestamp)" -eq $ts ] - touch -m -d @$ts timestamp - [ "$(stat -c %Y timestamp)" -eq $ts ] - touch -d @$ts timestamp - [ "$(stat -c %X timestamp)" -eq $ts ] - [ "$(stat -c %Y timestamp)" -eq $ts ] -done +# Disabled because of RHBZ#660687 on Debian. +# stage Checking utimens and timestamps +# for ts in 12345 1234567 987654321; do +# # NB: It's not possible to set the ctime with touch. +# touch -a -d @$ts timestamp +# [ "$(stat -c %X timestamp)" -eq $ts ] +# touch -m -d @$ts timestamp +# [ "$(stat -c %Y timestamp)" -eq $ts ] +# touch -d @$ts timestamp +# [ "$(stat -c %X timestamp)" -eq $ts ] +# [ "$(stat -c %Y timestamp)" -eq $ts ] +# done stage Checking writes cp hello.txt copy.txt @@ -220,9 +228,22 @@ world bigger biggest" ] +stage 'Checking extended attribute (xattr) read operation' +if getfattr --help > /dev/null 2>&1 ; then + [ "$(getfattr -d user_xattr | grep -v ^#)" = 'user.test="hello123"' ] +fi + +stage Checking POSIX ACL read operation +if getfacl --help > /dev/null 2>&1 ; then + [ "$(getfacl -n acl | grep -v ^#)" = "user::rw- +user:500:r-- +group::r-- +mask::r-- +other::r--" ] +fi + # These ones are not yet tested by the current script: #stage XXX statfs/statvfs -#stage XXX xattr operations # These ones cannot easily be tested by the current script, eg because # this script doesn't run as root: