X-Git-Url: https://defaria.com/gitweb/?a=blobdiff_plain;f=maps%2Fbin%2FMAPSDeliver;h=3921535253cf1ab75caefee53a05f07133091c0e;hb=c77c34e14483b55db7958a0fdbdc165bcfe89485;hp=e58126c99b9424c5966d07e89a883938f9914c43;hpb=e24caf500afdb661a6844649561da5e04b27c493;p=clearscm.git diff --git a/maps/bin/MAPSDeliver b/maps/bin/MAPSDeliver index e58126c..3921535 100755 --- a/maps/bin/MAPSDeliver +++ b/maps/bin/MAPSDeliver @@ -2,11 +2,11 @@ ################################################################################ # # File: $RCSfile: MAPSDeliver,v $ -# Revision: $Revision: 1.1 $ +# Revision: $Revision: 1.1 $ # Description: This script simply delivers the mail. It is separated out so -# it can be the only portion that is setgid to the group mail -# for the purposes of being able to deliver the mail to the users -# maildrop +# it can be the only portion that is setgid to the group mail +# for the purposes of being able to deliver the mail to the users +# maildrop # Author: Andrew@DeFaria.com # Created: Fri Nov 29 14:17:21 2002 # Modified: $Date: 2013/06/12 14:05:47 $ @@ -18,19 +18,9 @@ use strict; use warnings; -use English; use FindBin; -# Untaint $FindBin::Bin -my $lib; - -BEGIN { - if ($FindBin::Bin =~ /^(.*)$/) { - $lib = $1; - } # if -} # BEGIN - -use lib $lib; +use lib $FindBin::Bin; use MAPSFile; use MAPSDB; @@ -39,14 +29,6 @@ use MAPSLog; sub DeliverMail ($$) { my ($userid, $msgfileName) = @_; - # Switch to group mail - $EGID = getgrnam "mail"; - - # Untaint $userid - if ($userid =~ /^([-\@\w.]+)$/) { - $userid = $1; - } # if - # Open maildrop file open my $maildrop, '>>', "/var/mail/$userid" or return "Unable to open maildrop file (/var/mail/$userid): $!"; @@ -59,7 +41,7 @@ sub DeliverMail ($$) { Lock $maildrop; # Write msgfile -> $maildrop - print $maildrop "\n"; + print $maildrop "\n\n"; print $maildrop $_ while (<$msgfile>); @@ -74,21 +56,19 @@ sub DeliverMail ($$) { } # DeliverMail # Main -die 'User id not specified' unless $ARGV [0]; -die 'Msgfile not specified' unless $ARGV [1]; +my ($userid, $msgfile) = @ARGV; -my $userid = shift @ARGV; -my $msgfile = shift @ARGV; +die 'User id not specified' unless $userid; +die 'Msgfile not specified' unless $msgfile; my $err = DeliverMail $userid, $msgfile; if ($err) { - OpenDB 'mapsadmin', 'mapsadmin'; + OpenDB 'maps', 'spam'; MAPSDB::SetContext $userid; Error $err; } # if -exit 1 if $err; -exit 0; +exit $err ? 1 : 0;