exit 1
}
+check_xattr()
+{
+ name=$1
+ value=$2
+ file="$3"
+
+ if test "x$value" != "x<deleted>"; then
+ res=`$getattr -n $name $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'`
+
+ if test "x$res" = "x$name=$value"; then
+ return 0
+ else
+ return 1
+ fi
+ else
+ res=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'`
+
+ if echo $res | grep $name > /dev/null 2>&1; then
+ return 1
+ else
+ return 0
+ fi
+ fi
+}
+
test_del_xattr()
{
name=$1
message=$2
echo -n "$message..."
- `$setattr -n list_name0 -v list_value0 $file 2>/dev/null`
- `$setattr -n list_name1 -v list_value1 $file 2>/dev/null`
- `$setattr -n list_name2 -v list_value2 $file 2>/dev/null`
-
- nr=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | \
-grep list_name | wc -l | tr --delete [[:blank:]]`
-
- if test "x$nr" = "x3"; then
- echo "done"
- return 0
- else
+ `$setattr -n list_name0 -v list_value0 $file 2>/dev/null` || {
echo "failed"
- retrun 1
- fi
-}
-
-check_xattr()
-{
- name=$1
- value=$2
- file="$3"
+ return 1
+ }
- if test "x$value" != "x<deleted>"; then
- res=`$getattr -n $name $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'`
+ `$setattr -n list_name1 -v list_value1 $file 2>/dev/null` || {
+ echo "failed"
+ return 1
+ }
- if test "x$res" = "x$name=$value"; then
- return 0
- else
+ `$setattr -n list_name2 -v list_value2 $file 2>/dev/null` || {
+ echo "failed"
+ return 1
+ }
+
+ values=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | \
+grep list_name | sed 's/\"//g'`
+
+ i=0
+
+ for chunk in $values; do
+ if test "x$chunk" != "xlist_name$i=list_value$i"; then
+ echo "failed"
return 1
fi
- else
- res=`$getattr -d -m ".*" $file 2>/dev/null | grep -v "^#" | sed 's/\"//g'`
- if echo $res | grep $name > /dev/null 2>&1; then
- return 1
- else
- return 0
- fi
- fi
+ let i=$i+1
+ done
+
+ echo "done"
+ return 0
}
# check each function related to xattrs
test_set_xattr test_name0 test_value0 $file "Create new attribute" &&
test_set_xattr test_name0 test_value012345 $file "Expanding attribute" &&
- test_set_xattr test_name0 test_value0 $file "Shrinking attribute" &&
+ test_set_xattr test_name0 test_value0123 $file "Shrinking attribute" &&
test_del_xattr test_name0 $file "Delete attribute"
test_list_xattr $file "Getting list of attributes"
}
-# checking xattr code as whole working. Not implemented yet.
+# checking xattr code as a whole. Not implemented yet.
test_composite()
{
return 0