Hi Guido, On Wed, May 28, 2008 at 01:42:34PM +0200, Guido Bozzetto wrote: > With vpopmail configuration (/etc/default/spamassassin):
I have little experience with vpopmail, so I might not understand things
completely...
> spamd[4943]: spamd: connection from localhost [127.0.0.1] at port 50132
> spamd[4943]: Use of uninitialized value $vpopdir in concatenation (.) or
> string at /usr/sbin/spamd line 2106, <GEN10> line 2.
> spamd[4943]: Can't exec "/bin/vuserinfo": No such file or directory at
> /usr/sbin/spamd line 2106, <GEN10> line 2.
> spamd[4943]: Use of uninitialized value $vpopdir in concatenation (.) or
> string at /usr/sbin/spamd line 2111, <GEN10> line 2.
> spamd[4943]: Can't exec "/bin/valias": No such file or directory at
> /usr/sbin/spamd line 2111, <GEN10> line 2.
> spamd[4943]: Use of uninitialized value $dir in scalar chomp at
> /usr/sbin/spamd line 2118, <GEN10> line 2.
>
> the problem is in the subroutine handle_user_set_user_prefs. The working
> solution is to check if exist $dir variable:
>
> --- spamd.orig 2008-05-14 03:58:52.000000000 +0200
> +++ spamd 2008-05-28 12:28:53.000000000 +0200
> @@ -2099,6 +2099,7 @@
> sub handle_user_set_user_prefs {
> my ($dir, $username) = @_;
>
> +if (defined $dir) { #+20080318 <[EMAIL PROTECTED]>
> # If vpopmail config enabled then set $dir to virtual homedir
> #
> if ( $opt{'vpopmail'} ) {
> @@ -2117,6 +2118,7 @@
> }
> chomp($dir);
> }
> +}
Your patch will eliminate the errors, but won't it break per-user
preferences? You end up skipping a whole bunch of code that's
explicitly supposed to run in a vpopmail configuration. I'm not sure
under what circumtances handle_user_set_user_prefs will be passed undef
for $dir. Upstream seems to have intentionally put the vpopmail code
outside of the check for $dir in their code.
I'll forward this report upstream and see if I can get any input.
noah
signature.asc
Description: Digital signature

