From 8666b497d1f10703a0eac60dd954b2538efe9609 Mon Sep 17 00:00:00 2001 From: Andrew DeFaria Date: Thu, 4 Nov 2021 15:19:43 -0700 Subject: [PATCH] Added better error checking on MAPSDeliver --- maps/index.php | 4 ++-- maps/lib/MAPS.pm | 17 ++++++++++++++++- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/maps/index.php b/maps/index.php index 263ff44..63c3e7c 100755 --- a/maps/index.php +++ b/maps/index.php @@ -2,8 +2,8 @@ include "site-functions.php"; include "MAPS.php"; -$logout = $_REQUEST[logout]; -$errormsg = $_REQUEST[errormsg]; +$logout = $_REQUEST['logout']; +$errormsg = $_REQUEST['errormsg']; if (isset ($logout)) { setcookie ("MAPSUser", "", time()+60*60*24*30, "/maps"); diff --git a/maps/lib/MAPS.pm b/maps/lib/MAPS.pm index 793f015..9627612 100644 --- a/maps/lib/MAPS.pm +++ b/maps/lib/MAPS.pm @@ -1481,7 +1481,22 @@ sub Whitelist ($$;$$) { close $message; # Now call MAPSDeliver - my $status = system "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$"; + my ($status, @output) = Execute "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$"; + #my $status = system "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$"; + + if ($status != 0) { + my $msg = "Unable to deliver message (message left at /tmp/MAPSMessage.%%\n\n"; + $msg .= join "\n", @output; + + Logmsg( + userid => $userid, + type => 'whitelist', + sender => $sender, + message => $msg, + ); + + Error ($msg, 1); + } # if unlink "/tmp/MAPSMessage.$$"; -- 2.17.1