#!/usr/bin/env sh
# vi: ft=sh
#
# To be called by a cron job as a wrapper that sends stdour and stderr via the mail program.
# Why? Because of FreeBSD the system cron uses sendmail, and I want to use ssmtp.
# Make your crontab files like:
#SHELL=/bin/sh
#PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/sbin:$INSTALL_PREFIX/bin
#@daily       root    cron_mail freebsd-update cron

mail_target=root
scriptname=${0##*/}

if [ $# -eq 0 ]; then
	echo "No program to run given!" >&2
	exit 1
fi
cmd="$*"

body=$(eval "$cmd" 2>&1)

if [ -n "$body" ];then
	echo "$body" | mail -s "${scriptname}: ${cmd}" $mail_target
fi
