Configuration/hooks/Authentication/IMAP

Last updated for the 1.0.2 release.

Documentation for the IMAP authentication driver (inc/drivers_imap_pam.php).

This driver allows DAViCal to accept authentication via a local or remote IMAP server.

PHP IMAP is required as an extra dependency. Install php5-imap on Debian/Ubuntu based systems.

IMAP Settings
The settings for the IMAP server connection go in the config file /etc/davical/ -conf.php (this file might be in /etc/rscds/ if you upgraded from an older installation).

$c->authenticate_hook['call'] = 'IMAP_PAM_check'; $c->authenticate_hook['config'] = array(     'imap_url'   => '{}',      'email_base' => ''    ); include('drivers_imap_pam.php');

imap_url is required. IMAP SERVER must be an IMAP URL surrounded by curly brackets as documented in the PHP manual. Some common examples are provided below:

{localhost:143/imap/}                     // Insecure on local server {localhost:143/imap/tls/}                 // START TLS to a local server {example.com:993/imap/ssl/}               // Legacy SSL on deprecated port {example.com:143/imap/tls/novalidate-cert} // Self-signed certificate

Note that authenticating to an external server over TLS/SSL is slow. The connection to the IMAP server will not request a working mailbox and the server response should thus not be too slow.

Providing an hostname/mailname (example.com) through the email_base parameter is optional.

Example
The following config example allows DAViCal to authenticate users via a secure IMAP server at example.com: authenticate_hook['call'] = 'IMAP_PAM_check'; $c->authenticate_hook['config'] = array(     'imap_url'   => '{example.com:143/imap/tls/}',      'email_base' => 'example.com'    ); include('drivers_imap_pam.php');