Files
nixpkgs/pkgs/by-name/ms/msmtp/msmtpq-systemd-logging.patch

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

42 lines
1.3 KiB
Diff
Raw Permalink Normal View History

2025-10-09 14:15:47 +02:00
diff --git a/scripts/msmtpq/msmtpq b/scripts/msmtpq/msmtpq
index 28d0754..3eaac58 100755
--- a/scripts/msmtpq/msmtpq
+++ b/scripts/msmtpq/msmtpq
@@ -182,6 +182,8 @@ if [ -n "$MSMTPQ_LOG" ] ; then
unset msmptq_log_dir
fi
+JOURNAL=@journal@
+
umask 077 # set secure permissions on created directories and files
declare -i CNT # a count of mail(s) currently in the queue
@@ -214,6 +216,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 "
@@ -233,10 +236,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 "$MSMTPQ_LOG" ] && \
echo " exit code = $RC" >> "$MSMTPQ_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
}