]> git.proxmox.com Git - pve-manager.git/blame - bin/pvemailforward.pl
remove obsolete (rgmanager era) HA resource agent
[pve-manager.git] / bin / pvemailforward.pl
CommitLineData
776de3bc 1#!/usr/bin/perl -T
782bc232
DM
2
3use strict;
4use warnings;
5use PVE::Tools;
6use PVE::SafeSyslog;
7use PVE::AccessControl;
ffdb22ff 8use PVE::Cluster qw (cfs_read_file);
782bc232
DM
9
10# NOTE: we need to run this with setgid www-data
11# else we cant read /etc/pve/user.cfg
12
ffdb22ff
DM
13$( = $); # $GID = $EGID
14
782bc232
DM
15$ENV{'PATH'} = '/sbin:/bin:/usr/sbin:/usr/bin';
16
17initlog('pvemailforward');
18
782bc232 19
ffdb22ff
DM
20PVE::Cluster::cfs_update();
21
22eval {
23 my $usercfg = cfs_read_file("user.cfg");
782bc232
DM
24 my $rootcfg = $usercfg->{users}->{'root@pam'} || {};
25 my $mailto = $rootcfg->{email};
26
4b152656
SGE
27 my $dcconf = cfs_read_file('datacenter.cfg');
28 my $mailfrom = $dcconf->{email_from} || "root";
29
782bc232
DM
30 die "user 'root\@pam' does not have a email address\n" if !$mailto;
31
32 syslog("info", "forward mail to <$mailto>");
33
34 # we never send DSN (avoid mail loops)
4b152656 35 open(CMD, "|sendmail -bm -N never -f $mailfrom $mailto") ||
782bc232
DM
36 die "can't exec sendmail - $!\n";
37 while (<>) { print CMD $_; }
38 close(CMD);
39};
40if (my $err = $@) {
41 syslog('err', "mail forward failed: $err");
42}
43
44exit(0);