Allow configuration of spool_dir permissions
git-svn-id: https://svn.perl.org/qpsmtpd/trunk@964 958fd67b-6ff1-0310-b445-bb7760255be9
This commit is contained in:
parent
a248ed56ad
commit
9e7a4c8e3b
3
Changes
3
Changes
@ -59,6 +59,9 @@
|
|||||||
(Jared Johnson)
|
(Jared Johnson)
|
||||||
http://groups.google.com/group/perl.qpsmtpd/browse_thread/thread/35e3a187d8e75cbe
|
http://groups.google.com/group/perl.qpsmtpd/browse_thread/thread/35e3a187d8e75cbe
|
||||||
|
|
||||||
|
New config option "spool_perms" to set permissions of spool_dir
|
||||||
|
(Jared Johnson)
|
||||||
|
|
||||||
0.43 - February 5, 2008
|
0.43 - February 5, 2008
|
||||||
|
|
||||||
(This release was mostly done by Matt Sergeant and Hanno Hecker)
|
(This release was mostly done by Matt Sergeant and Hanno Hecker)
|
||||||
|
3
README
3
README
@ -77,7 +77,8 @@ some other way.
|
|||||||
|
|
||||||
The smtpd user needs write access to ~smtpd/qpsmtpd/tmp/ but should
|
The smtpd user needs write access to ~smtpd/qpsmtpd/tmp/ but should
|
||||||
not need to write anywhere else. This directory can be configured
|
not need to write anywhere else. This directory can be configured
|
||||||
with the "spool_dir" configuration.
|
with the "spool_dir" configuration and permissions can be set with
|
||||||
|
"spool_perms".
|
||||||
|
|
||||||
As per version 0.25 the distributed ./run script runs tcpserver with
|
As per version 0.25 the distributed ./run script runs tcpserver with
|
||||||
the -R flag to disable identd lookups. Remove the -R flag if that's
|
the -R flag to disable identd lookups. Remove the -R flag if that's
|
||||||
|
@ -529,18 +529,16 @@ sub spool_dir {
|
|||||||
|
|
||||||
$Spool_dir =~ /^(.+)$/ or die "spool_dir not configured properly";
|
$Spool_dir =~ /^(.+)$/ or die "spool_dir not configured properly";
|
||||||
$Spool_dir = $1; # cleanse the taint
|
$Spool_dir = $1; # cleanse the taint
|
||||||
|
my $Spool_perms = $self->config('spool_perms') || '0700';
|
||||||
|
|
||||||
# Make sure the spool dir has appropriate rights
|
if (-d $Spool_dir) { # Make sure the spool dir has appropriate rights
|
||||||
if (-e $Spool_dir) {
|
$self->log(LOGWARN,
|
||||||
my $mode = (stat($Spool_dir))[2];
|
"Permissions on spool_dir $Spool_dir are not $Spool_perms")
|
||||||
$self->log(LOGWARN,
|
unless ((stat $Spool_dir)[2] & 07777) == oct($Spool_perms);
|
||||||
"Permissions on spool_dir $Spool_dir are not 0700")
|
} else { # Or create it if it doesn't already exist
|
||||||
if $mode & 07077;
|
mkdir($Spool_dir,oct($Spool_perms))
|
||||||
|
or die "Could not create spool_dir $Spool_dir: $!";
|
||||||
}
|
}
|
||||||
|
|
||||||
# And finally, create it if it doesn't already exist
|
|
||||||
-d $Spool_dir or mkdir($Spool_dir, 0700)
|
|
||||||
or die "Could not create spool_dir $Spool_dir: $!";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return $Spool_dir;
|
return $Spool_dir;
|
||||||
|
Loading…
Reference in New Issue
Block a user