View | Details | Raw Unified | Return to bug 120091
Collapse All | Expand All

(-)etc/rc.subr (-2 / +25 lines)
Lines 1415-1420 Link Here
1415
}
1415
}
1416
1416
1417
# Creates a list of providers for GELI encryption.
1417
# Creates a list of providers for GELI encryption.
1418
geli_expand_entry()
1419
{
1420
	local devices3
1421
	local entry dev tail
1422
	for entry in $@; do
1423
		tail="${entry}"
1424
		while true; do
1425
			dev="${dev}${tail%%.eli*}.eli"
1426
			devices3="${devices3} ${dev}"
1427
			tail="${entry##${dev}}"
1428
			case "${tail}" in
1429
			*.eli*)
1430
				continue
1431
				;;
1432
			*)
1433
				break
1434
				;;
1435
			esac
1436
		done
1437
		dev=""
1438
	done
1439
	echo ${devices3}
1440
}
1418
geli_make_list()
1441
geli_make_list()
1419
{
1442
{
1420
	local devices devices2
1443
	local devices devices2
Lines 1435-1441 Link Here
1435
		:#*)
1458
		:#*)
1436
			continue
1459
			continue
1437
			;;
1460
			;;
1438
		*.eli)
1461
		*.eli*)
1439
			# Skip swap devices.
1462
			# Skip swap devices.
1440
			if [ "${type}" = "swap" -o "${options}" = "sw" -o "${noauto}" = "yes" ]; then
1463
			if [ "${type}" = "swap" -o "${options}" = "sw" -o "${noauto}" = "yes" ]; then
1441
				continue
1464
				continue
Lines 1446-1452 Link Here
1446
	done < /etc/fstab
1469
	done < /etc/fstab
1447
1470
1448
	# Append providers from geli_devices.
1471
	# Append providers from geli_devices.
1449
	devices="${devices} ${geli_devices}"
1472
	devices=`geli_expand_entry "${devices} ${geli_devices}"`
1450
1473
1451
	for provider in ${devices}; do
1474
	for provider in ${devices}; do
1452
		provider=${provider%.eli}
1475
		provider=${provider%.eli}

Return to bug 120091