umask 022 rm -rf rts-tmp mkdir rts-tmp echo 's3cR3t' >rts-tmp/secret SENDER=foo@example.com; export SENDER echo '--- sendok-create works' sendok-create 100 prefix- rts-tmp/secret suffix >rts-tmp/out wc -c rts-tmp/out | tr -dc 0-9 echo echo '--- sendok-check works' sendok-create 100 prefix- rts-tmp/secret -suffix >rts-tmp/out sendok-check rts-tmp/secret `cut -d- -f2 rts-tmp/out` echo $? echo '--- sendok-check fails (garbage)' sendok-create 100 prefix- rts-tmp/secret -suffix >rts-tmp/out sendok-check rts-tmp/secret garbage echo $? echo '--- sendok-check fails (bad hash)' sendok-create 100 prefix- rts-tmp/secret -suffix >rts-tmp/out sendok-check rts-tmp/secret `cut -d- -f2 rts-tmp/out | sed -e 's/[a-z]/a/'` echo $? echo '--- sendok-check fails (bad sender)' sendok-create 100 prefix- rts-tmp/secret -suffix >rts-tmp/out SENDER=bar@example.com sendok-check rts-tmp/secret `cut -d- -f2 rts-tmp/out` echo $? echo '--- sendok-check fails (expired)' sendok-create 1 prefix- rts-tmp/secret -suffix >rts-tmp/out sleep 2 sendok-check rts-tmp/secret `cut -d- -f2 rts-tmp/out` echo $? exit 0