From 951025ec921a83d9ade36252b2fdc6da9f469c03 Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Wed, 31 Jul 2024 20:15:44 -0600 Subject: home/mail: patch msmtp to support YKCS12 --- pkgs/msmtp/paths.patch | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 pkgs/msmtp/paths.patch (limited to 'pkgs/msmtp/paths.patch') diff --git a/pkgs/msmtp/paths.patch b/pkgs/msmtp/paths.patch new file mode 100644 index 0000000..9298519 --- /dev/null +++ b/pkgs/msmtp/paths.patch @@ -0,0 +1,64 @@ +diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq +index d8b4039..1f2a7b5 100755 +--- a/scripts/msmtpq/msmtpq ++++ b/scripts/msmtpq/msmtpq +@@ -60,8 +60,8 @@ err() { dsp '' "$@" '' ; exit 1 ; } + ## e.g. ( export MSMTP=/path/to/msmtp ) + if [ "$MSMTP" = "" ] ; then # If MSMTP is unset or empty... + MSMTP=msmtp +-elif [ ! -x "$MSMTP" ] ; then +- log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit ++# elif [ ! -x "$MSMTP" ] ; then ++# log -e 1 "msmtpq : can't find the msmtp executable [ $MSMTP ]" # if not found - complain ; quit + fi + ## + ## set the queue var to the location of the msmtp queue directory +@@ -71,7 +71,7 @@ fi + ## ( chmod 0700 msmtp.queue ) + ## + ## the queue dir - export this variable to reflect where you'd like it to be (no quotes !!) +-Q=${Q:-~/.msmtp.queue} ++Q=${MSMTP_QUEUE:-~/.msmtp.queue} + [ -d "$Q" ] || mkdir -m 0700 -p "$Q" || \ + err '' "msmtpq : can't find or create msmtp queue directory [ $Q ]" '' # if not present - complain ; quit + ## +@@ -85,8 +85,10 @@ Q=${Q:-~/.msmtp.queue} + ## + ## the queue log file - export this variable to change where logs are stored (but no quotes !!) + ## Set it to "" (empty string) to disable logging. +-[ -v LOG ] || LOG=~/log/msmtp.queue.log ++LOG=${MSMTP_LOG:-~/log/msmtp.queue.log} + [ -d "$(dirname "$LOG")" ] || mkdir -p "$(dirname "$LOG")" ++ ++JOURNAL=@journal@ + ## ====================================================================================== + + ## msmtpq can use the following environment variables : +@@ -139,6 +141,7 @@ on_exit() { # unlock the queue on exit if the lock was + ## display msg to user, as well + ## + log() { ++ local NAME=msmtpq + local ARG RC PFX + PFX="$('date' +'%Y %d %b %H:%M:%S')" + # time stamp prefix - "2008 13 Mar 03:59:45 " +@@ -156,10 +159,19 @@ log() { + done + fi + ++ if [ "$JOURNAL" = "Y" ]; then ++ for ARG; do ++ [ -n "$ARG" ] && ++ echo "$ARG" | systemd-cat -t "$NAME" -p info ++ done ++ fi ++ + if [ -n "$RC" ] ; then # an error ; leave w/error return + [ -n "$LKD" ] && lock_queue -u # unlock here (if locked) + [ -n "$LOG" ] && \ + echo " exit code = $RC" >> "$LOG" # logging ok ; send exit code to log ++ [ "$JOURNAL" = "Y" ] && \ ++ echo "exit code= $RC" | systemd-cat -t "$NAME" -p emerg + exit "$RC" # exit w/return code + fi + } -- cgit v1.2.3