1#!/bin/sh 2# $FreeBSD$ 3 4base=`basename $0` 5us=45 6work="/dev/md${us}" 7src="/dev/md`expr $us + 1`" 8conf=`mktemp /tmp/$base.XXXXXX` || exit 1 9 10mdconfig -a -t malloc -s 1M -u $us || exit 1 11mdconfig -a -t malloc -s 1M -u `expr $us + 1` || exit 1 12dd if=/dev/random of=$work bs=1m count=1 >/dev/null 2>&1 13dd if=/dev/random of=$src bs=1m count=1 >/dev/null 2>&1 14sum=`cat $src | md5 -q` 15 16echo "127.0.0.1 RW $work" > $conf 17ggated $conf 18ggatec create -u $us 127.0.0.1 $work 19 20dd if=${src} of=/dev/ggate${us} bs=1m count=1 >/dev/null 2>&1 21 22if [ `cat $work | md5 -q` != $sum ]; then 23 echo "FAIL" 24else 25 if [ `cat /dev/ggate${us} | md5 -q` != $sum ]; then 26 echo "FAIL" 27 else 28 echo "PASS" 29 fi 30fi 31 32ggatec destroy -u $us 33mdconfig -d -u $us 34mdconfig -d -u `expr $us + 1` 35pkill ggated $conf 36rm -f $conf 37