In the line

> +tempfile=$(mktemp -t doas.XXXXXXXX || exit 1)

the "|| exit 1" doesn't actually do anything. In order to exit
the script the or bit must occur outside the subshell created by
the parenthesis. So

  tempfile=$(mktemp -t doas.XXXXXXXX) || exit 1

This will work with simple assignments though not with 'typeset'.

Additionally, as Martin Schröder pointed out, all editor calls
should use $EDITOR, but in case a user doesn't have that
defined, use

${EDITOR:-vi}

Reply via email to