#!/bin/sh

# needrestart - Restart daemons after library updates.
#
# Authors:
#   Thomas Liske <thomas@fiasko-nw.net>
#
# Copyright Holder:
#   2013 - 2022 (C) Thomas Liske [http://fiasko-nw.net/~thomas/]
#
# License:
#   This program is free software; you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation; either version 2 of the License, or
#   (at your option) any later version.
#

# Use /usr/bin/mail to notify a user via e-mail.

MAILX='/usr/bin/mail'
test -x "$MAILX" || exit 1

. /usr/lib/needrestart/notify.d.sh

if [ "$NR_NOTIFYD_DISABLE_MAIL" = '1' ]; then
    echo "[$0] disabled in global config" 1>&2
    exit 1
fi

# Skip system users
NR_USERID=$(id -u "$NR_USERNAME")
if [ "0$NR_USERID" -gt 0 ] && [ "0$NR_USERID" -lt 1000 ]; then
    echo "[$0] do not notify system-user $NR_USERNAME via mail" 1>&2
    exit 1
fi

echo "[$0] notify user $NR_USERNAME on $NR_SESSION via mail" 1>&2

{
    _NR_FQDN=$(hostname -f)
    eval_gettext 'Your session on host $_NR_FQDN ($NR_SESSION) is running obsolete binaries or libraries as listed below.'
    echo
    echo
    gettext "Please consider a relogin or restart of the affected processes!"
    echo
    echo
    cat
} | fold -s -w 72 | "$MAILX" -s "Relogin or restarts on host $(hostname) required!" "$NR_USERNAME"
