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


Attachment: signature.asc
Description: Digital signature

Reply via email to