4 # Test "geli init"'s various cipher aliases
5 . $(dirname $0)/conf.sh
9 keyfile=`mktemp $base.XXXXXX` || exit 1
10 rnd=`mktemp $base.XXXXXX` || exit 1
18 geli init -B none -e $ealgo -l $keylen -P -K $keyfile md${no} 2>/dev/null
19 geli attach -p -k $keyfile md${no}
20 real_ealgo=`geli list md${no}.eli | awk '/EncryptionAlgorithm/ {print $2}'`
21 real_keylen=`geli list md${no}.eli | awk '/KeyLength/ {print $2}'`
23 if [ ${real_ealgo} = ${expected_ealgo} ]; then
24 echo "ok $i - ${ealgo} aliased to ${real_ealgo}"
26 echo "not ok $i - expected ${expected_ealgo} but got ${real_ealgo}"
30 if [ ${real_keylen} = ${expected_keylen} ]; then
31 echo "ok $i - keylen=${keylen} for ealgo=${ealgo} aliases to ${real_keylen}"
33 echo "not ok $i - expected ${expected_keylen} but got ${real_keylen}"
42 mdconfig -a -t malloc -s 1024k -u $no || exit 1
43 dd if=/dev/random of=${keyfile} bs=512 count=16 >/dev/null 2>&1
45 for spec in aes:0:AES-XTS:128 aes:128:AES-XTS:128 aes:256:AES-XTS:256 \
46 3des:0:3DES-CBC:192 3des:192:3DES-CBC:192 \
47 blowfish:0:Blowfish-CBC:128 blowfish:128:Blowfish-CBC:128 \
48 blowfish:160:Blowfish-CBC:160 blowfish:192:Blowfish-CBC:192 \
49 blowfish:224:Blowfish-CBC:224 blowfish:256:Blowfish-CBC:256 \
50 blowfish:288:Blowfish-CBC:288 blowfish:352:Blowfish-CBC:352 \
51 blowfish:384:Blowfish-CBC:384 blowfish:416:Blowfish-CBC:416 \
52 blowfish:448:Blowfish-CBC:448 \
53 camellia:0:CAMELLIA-CBC:128 camellia:128:CAMELLIA-CBC:128 \
54 camellia:256:CAMELLIA-CBC:256 ; do
56 ealgo=`echo $spec | cut -d : -f 1`
57 keylen=`echo $spec | cut -d : -f 2`
58 expected_ealgo=`echo $spec | cut -d : -f 3`
59 expected_keylen=`echo $spec | cut -d : -f 4`
61 do_test $ealgo $keylen $expected_ealgo $expected_keylen