#!/bin/rc # secretz - a local replacement for secstore rfork en enc=$home/lib/factotum fn usage { >[2=1] echo 'secretz [-c | -e | -l]' exit usage } ramfs -p echo -n 'secret: ' /dev/consctl { echo rawon read >/tmp/secret } echo switch($1){ case -c sam /tmp/factotum $enc <[3]/tmp/secret auth/aescbc -i -e || exit auth case -e <$enc >/tmp/factotum <[3]/tmp/secret auth/aescbc -i -d || exit auth sam /tmp/factotum $enc <[3]/tmp/secret auth/aescbc -i -e echo -n 'load? ' if(~ `{read} y yes) read -m /tmp/factotum >/mnt/factotum/ctl case -l * <$enc >/tmp/factotum <[3]/tmp/secret auth/aescbc -i -d || exit auth read -m /tmp/factotum >/mnt/factotum/ctl }