#!/bin/sh
umask 077

answers()
{
	echo --
	echo SomeState
	echo SomeCity
	echo SomeOrganization
	echo SomeOrganizationalUnit
	echo localhost.localdomain
	echo root@localhost.localdomain
}

if [ $# -eq 0 ] ; then
	echo >&2 "Usage: ${0##*/} filename [...]"
	exit 1
fi

WORKDIR=
exit_handler()
{
	local rc=$?
	trap - EXIT
	[ -z "$WORKDIR" ] || rm -rf "$WORKDIR"
	exit $rc
}

trap exit_handler HUP PIPE INT QUIT TERM EXIT
WORKDIR="$(mktemp -dt "$PROG.XXXXXXXXXX")" || exit
PEM1="$WORKDIR/pem1"
PEM2="$WORKDIR/pem2"

for target; do
	answers |
		openssl req -newkey rsa:1024 -keyout "$PEM1" -nodes -x509 -days 365 -out "$PEM2" 2>/dev/null
	cat "$PEM1" >  "$target"
	echo        >> "$target"
	cat "$PEM2" >> "$target"
	rm -f "$PEM1" "$PEM2"
done
