[horde] Question for Sieve, Ingo, Horde and maybe saslauthd - not sure
Helmut Schiefer
Helmut at 4schiefer.de
Tue Sep 10 15:54:24 UTC 2013
Dear List,
I try to setup sieve with cyrus-imap and the current, stable
horde/ingo release. Ubuntu 12.04, Imap 2.4.17 (build from source)
In case I use Horde without sieve, all runs very well, thanks for
creating a great solution.
If I enable sieve, I got only a blank login screen and the following
error in horde.log
2013-09-09T14:31:44+02:00 ERR: HORDE [imp] Der E-Mail-Server hat einen
IMAP-Fehler gemeldet. Mailbox does not exist [pid 11316 on line 566 of
"/internet/horde/imp/lib/Imap.php"]
Is it possible to point me to an idea, what else can I do to find my mistake?
Thanks
Helmut
hooks.php
=========
class Ingo_Hooks
{
/**
* Returns the username/password needed to connect to the transport
* backend.
*
* @param string $driver The driver name (array key from backends.php).
*
* @return mixed If non-array, uses Horde authentication credentials
(DEFAULT). Otherwise, an array with the following keys
* (non-existent keys will use default values):
* - euser: (string; SIEVE ONLY) For the sieve driver, the effective
* user to use.
* - password: (string) Password.
* - username: (string) User name.
*/
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;
}
/**
* Set the default addresses used for the vacation module.
*
* @param string $user The username.
*
* @return array A list of vacation addresses.
*/
// public function vacation_addresses($user = null)
// {
// // Example #1: User has 2 vacation addresses.
// return array($user . '@example.com', $user . '@foobar.com');
// }
}
backends.local.php
====================
<?php
$backends['imap'] = array(
// ENABLED by default
// Django : 2013-02-04
// default: 'disabled' => false,
'disabled' => true,
'transport' => 'null',
'params' => array(),
'script' => 'imap',
'scriptparams' => array(),
'shares' => false
);
backends['sieve'] = array(
// Disabled by default
'disabled' => false,
'hordeauth' => 'full',
'transport' => array(
Ingo::RULE_ALL => array(
'driver' => 'timsieved',
'params' => array(
// Hostname of the timsieved server
'hostspec' => 'localhost',
// Login type of the server
'logintype' => 'PLAIN',
// Enable/disable TLS encryption
'usetls' => false,
// Port number of the timsieved server
'port' => 2001,
// Name of the sieve script
'scriptname' => 'ingo',
// Enable debugging. The sieve protocol
communication is logged
// with the DEBUG level.
'debug' => true,
),
),
),
'script' => array(
Ingo::RULE_ALL => array(
'driver' => 'sieve',
'params' => 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
);
I test: sieveshell --user=helmut --authname=helmut localhost:2001
The sieveshell command worked without any problems
Horde Logfile
===================
2013-09-10T08:25:53+02:00 DEBUG: HORDE [ingo] Load config file
(conf.php; app: ingo) [pid 7993 on line 409 of
"/usr/share/php/Horde.php"]
2013-09-10T08:25:53+02:00 DEBUG: HORDE [ingo] Load config file
(hooks.php; app: ingo) [pid 7993 on line 409 of
"/usr/share/php/Horde.php"]
2013-09-10T08:26:35+02:00 DEBUG: HORDE [ingo] Load config file
(backends.php; app: ingo) [pid 8004 on line 409 of
"/usr/share/php/Horde.php"]
2013-09-10T08:26:35+02:00 DEBUG: HORDE [ingo] Hook transport_auth in
application ingo called. [pid 8004 on line 1141 of
"/usr/share/php/Horde.php"]
--
Best Regards
Helmut Schiefer
More information about the horde
mailing list