[ingo] Remote sieve not working?

Paul-Erik Torronen paul-erik.torronen at cardinal.fi
Fri Dec 2 14:54:43 PST 2005

On Fri, 2005-12-02 at 16:04 +0100, Jan Schneider wrote:
> Is this the only configuration in backends.php, i.e. are you sure
> that 
> *this* configuration is used?

Well, the editor (jed) shows by syntax highlight that all the other
stuff is commented. I used /**/ to enclose the other configurations and
I can't spot where it would leak, here is the whole file:

 * $Horde: ingo/config/backends.php.dist,v 2005/07/06 15:40:17 ben Exp $
 * Ingo works purely on a preferred mechanism for server selection. There are
 * a number of properties that you can set for each backend:
 * driver:       The Ingo_Driver driver to use to get the script to the
 *               backend server. Valid options:
 *                   'null'       --  No backend server
 *                   'timsieved'  --  Cyrus timsieved server
 *                   'vfs'        --  Use Horde VFS
 * preferred:    This is the field that is used to choose which server is
 *               used. The value for this field may be a single string or an
 *               array of strings containing the hostnames to use with this
 *               server.
 * hordeauth:    Ingo uses the current logged in username and password. If
 *               you want the full username at realm to be used to connect then
 *               set this to 'full' otherwise set this to true and just the
 *               username will be used to connect to the driver.
 * params:       An array containing any additional information that the
 *               Ingo_Driver class needs.
 * script:       The type of Ingo_Script driver this server uses.
 *               Valid options:
 *                   'imap'      --  IMAP client side filtering
 *                   'procmail'  --  Procmail scripts
 *                   'sieve'     --  Sieve scripts
 * scriptparams: An array containing any additional information that the
 *               Ingo_Script driver needs.

/* IMAP Example */
$backends['imap'] = array(
    'driver' => 'null',
    'preferred' => 'example.com',
    'hordeauth' => true,
    'params' => array(),
    'script' => 'imap',
    'scriptparams' => array()

/* Procmail Example */
$backends['procmail'] = array(
    'driver' => 'vfs',
    'preferred' => 'example.com',
    'hordeauth' => true,
    'params' => array(
        // Hostname of the VFS server
        'hostspec' => 'ftp.example.com',
        // Name of the procmail config file to write
        'procmailrc' => '.procmailrc',
        // Port of the VFS server
        'port' => 21,
        // The VFS driver to use
        'vfstype' => 'ftp'
    'script' => 'procmail',
    'scriptparams' => array(
        // What path style does the IMAP server use ['mbox'|'maildir']?
        'path_style' => 'mbox',
        // An array of variables to append to every generated script.
        // Use if you need to set up specific environment variables.
        'variables' => array(
            // Example for the $PATH variable
            // 'PATH' => '/usr/bin',
            // Example for the $DEFAULT variable
            // 'DEFAULT' => '$HOME/Maildir',

/* Sieve Example */
$backends['sieve'] = array(
    'driver' => 'timsieved',
    'preferred' => 'server2',
    'hordeauth' => 'full',
    'params' => array(
        // Hostname of the timsieved server
        'hostspec' => 'server2',
        // Login type of the server
        'logintype' => 'PLAIN',
        // Port number of the timsieved server
        'port' => 2000,
        // Name of the sieve script
        'scriptname' => 'ingo'
    'script' => 'sieve',
    'scriptparams' => array()

/* Kolab Example (using Sieve) */
if ($GLOBALS['conf']['kolab']['enabled']) {
    $backends['kolab'] = array(
        'driver' => 'timsieved',
        'preferred' => '',
        'hordeauth' => 'full',
        'params' => array(
            'hostspec' => $GLOBALS['conf']['kolab']['imap']['server'],
            'logintype' => 'PLAIN',
            'port' => $GLOBALS['conf']['kolab']['imap']['sieveport'],
            'scriptname' => 'kmail-vacation.siv'
        'script' => 'sieve',
        'scriptparams' => array()

AFAIK using // within a multiline should be legal?

I removed the extra '?>' from the end and it did not change anything.
*However* what has changed is that after having written my previous
message, I also installed the Forwards and Vacation-module. I configured
them but they didn't seem to appear correctly in horde. The
Mail/Vacation and Mail/Forwards branches showed up empty, and they still
do. Now however there is a Vacation filter (as the third) and Forward as
the fifth (last) filter in addition with the original chain of the
test-filter, Whitelist and Blacklist. Now if I re-edit the test-filter
and save it, I get tcp-traffic in the tcpdump as expected. The timsieved
fails with an authentication error but that is outside this topic (I get
the same result when I run sieveshell locally on the server2).

Could this have been a case of caching? Where can I check/disable this?

With regards,


Paul-Erik Torronen <paul-erik.torronen at cardinal.fi>
Cardinal Information Systems Oy

More information about the ingo mailing list