From 0df4dba293fd3a90d5dccb45c1787609f5fc927a Mon Sep 17 00:00:00 2001 From: Rachita Kothiyal Date: Thu, 27 Dec 2007 23:45:59 -0500 Subject: [PATCH] Unionfs ODF regression: Support creation/detection of pipes and character/block devices Signed-off-by: Rachita Kothiyal --- scaffold | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/scaffold b/scaffold index a3db2a9..d97bbd2 100644 --- a/scaffold +++ b/scaffold @@ -65,13 +65,17 @@ function create_hierarchy { NAME=`echo $LINE | cut -d' ' -f 2` fi - unset DIR FILE IMMUTABLE SOURCE SYMLINK WH OPQ + unset DIR FILE IMMUTABLE SOURCE SYMLINK BLOCKDEV CHARDEV PIPE WH OPQ ( echo $TYPE | grep -q d ) && DIR=1 ( echo $TYPE | grep -q f ) && FILE=1 ( echo $TYPE | grep -q i ) && IMMUTABLE=1 ( echo $TYPE | grep -q s ) && SOURCE=1 ( echo $TYPE | grep -q l ) && SYMLINK=1 + ( echo $TYPE | grep -q b ) && BLOCKDEV=1 + ( echo $TYPE | grep -q c ) && CHARDEV=1 + ( echo $TYPE | grep -q p ) && PIPE=1 + ( echo $TYPE | grep -q w ) && WH=1 ( echo $TYPE | grep -q o ) && OPQ=1 @@ -124,6 +128,19 @@ function create_hierarchy { fi elif [ ! -z "$SYMLINK" ] ; then ln -s "linktext:$NAME" $NAME + elif [ ! -z "$BLOCKDEV" ] ; then + mkdir -p `dirname $NAME` || exit $? + # re-create /dev/loop7 (better be free) + mknod $NAME b 7 7 || exit $? + chmod 644 $NAME || exit $? + elif [ ! -z "$CHARDEV" ] ; then + mkdir -p `dirname $NAME` || exit $? + # re-create a /dev/null + mknod $NAME c 1 3 || exit $? + chmod 644 $NAME || exit $? + elif [ ! -z "$PIPE" ] ; then + mkfifo $NAME || exit $? + chmod 644 $NAME || exit $? elif [ ! -z "$WH" ]; then if [ "$ODF" -eq "1" ]; then mkdir -p `dirname $ODF_DIR"/ns/"$NAME` || exit $? @@ -234,6 +251,8 @@ function check_hierarchy { find $i -type b -printf 'b %p\n' find $i -type c -printf 'c %p\n' find $i -type l -printf 'l %p\n' + find $1 -type p -printf 'p %p\n' + find $1 -type s -printf 's %p\n' ) | sort >> /tmp/check-$$ done -- 2.43.0