[dev] Ingo ManageSieve issue

Jan Schneider jan at horde.org
Sat Jan 5 10:47:26 UTC 2013


Zitat von "Kinglok, Fong" <busywater at gmail.com>:

> Dear all,
>
> I have started testing ingo to manage user's sieve scripts running  
> with Dovecot 2.1.12 (without implementing any master login)
>
> In order to pass the correct user credential for managing the  
> script, I have done appropriate setting in backends.local.php:
> ===================
> /* Sieve Example */
> $backends['sieve'] = array(
>     // Disabled by default
>     'disabled' => false,
>     'transport' => 'timsieved',
>     'params' => array(
>         // Hostname of the timsieved server
>         'hostspec' => '192.168.107.13',
>         // Login type of the server
>         'logintype' => 'PLAIN',
>         // Enable/disable TLS encryption
>         'usetls' => false,
>         // Port number of the timsieved server
>         'port' => 4190,
>         // Name of the sieve script
>         'scriptname' => 'ingo',
>         // Enable debugging. With Net_Sieve 1.2.0 or later, the  
> sieve protocol
>         // communication is logged with the DEBUG level. Earlier versions
>         // print the log to the screen.
>         'debug' => true,
>     ),
>     'script' => 'sieve',
>     'scriptparams' => array(
>         // If using Dovecot or any other Sieve implementation that requires
>         // folder names to be UTF-8 encoded, set this parameter to true.
>         'utf8' => true,
>      ),
>     'shares' => false
> );
> ===================
>
>
> Also enabled the hook.php (only the relevant  part) as follows
> ===================
> .....
>     public function transport_auth($driver)
>     {
>         switch ($driver) {
>         case 'timsieved':
>             // Example #1: Use full Horde username for password.
>             // return array(
>             //    'username' => $GLOBALS['registry']->getAuth(null)
>             //);
>
>             // Example #2: Use IMP password/username.
>             $ob = $GLOBALS['registry']->call('mail/imapOb');
>             return array(
>                 'password' => $ob->getParam('password'),
>                 'username' => $ob->getParam('username')
>             );
>         }
>
>         // DEFAULT: Use hordeauth (identical to not defining hook at all).
>         return true;
>     }
> ....
> ==================
>
> However, when I trying to enable / disable vacation rules, it shows  
> "Authentication Failed". It turns out ingo trying to use master  
> login method as shown in the dovecot log:
> ===================
> auth: Debug: auth client connected (pid=5294)
> auth: Debug: client in:  
> AUTH	1	PLAIN	service=sieve	secured	session=4Eg2pYLS4wDAqGsN	lip=192.168.107.13	rip=192.168.107.13	lport=4190	rport=60387	resp=<hidden>
> auth: Debug:  
> auth(postmaster at domain.org,192.168.107.13,master,<4Eg2pYLS4wDAqGsN>): Master  
> user lookup for login: postmaster
> auth: Info:  
> passdb(postmaster at domain.org,192.168.107.13,master,<4Eg2pYLS4wDAqGsN>):  
> Attempted master login with no master passdbs (trying to log in as  
> user: postmaster)
> auth: Debug: client passdb out: FAIL	1	user=postmaster at domain.org
> ===================
> Also, I have succeeded authenticating my managesieve server without  
> problem by using  
> (http://wiki2.dovecot.org/Pigeonhole/ManageSieve/Troubleshooting)
>
>
> Is it a bug?
>
> Kinglok, Fong

How are we supposed to tell if we don't know what  
postmaster at domain.org and master are on your system, or where those  
are coming from?
-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the dev mailing list