Aleksander Machniak
2013-06-06 b07426f0c55f2fd2126dd2080e6a89bd334017f9
Make LDAP cache engine configurable via ldap_cache and ldap_cache_ttl options
3 files modified
24 ■■■■ changed files
CHANGELOG 1 ●●●● patch | view | raw | blame | history
config/main.inc.php.dist 17 ●●●● patch | view | raw | blame | history
program/lib/Roundcube/rcube_ldap.php 6 ●●●● patch | view | raw | blame | history
CHANGELOG
@@ -1,6 +1,7 @@
CHANGELOG Roundcube Webmail
===========================
- Make LDAP cache engine configurable via ldap_cache and ldap_cache_ttl options
- Fix legacy options handling
- Fix "duplicate entry" errors on inserts to imap cache tables (#1489146)
- Fix so bounces addresses in Sender headers are skipped on Reply-All (#1489011)
config/main.inc.php.dist
@@ -128,6 +128,9 @@
// Enables messages cache. Only 'db' cache is supported.
$rcmail_config['messages_cache'] = false;
// lifetime of message cache
// possible units: s, m, h, d, w
$rcmail_config['message_cache_lifetime'] = '10d';
// ----------------------------------
// SMTP
@@ -177,6 +180,16 @@
$rcmail_config['smtp_timeout'] = 0;
// ----------------------------------
// LDAP
// ----------------------------------
// Type of LDAP cache. Supported values: 'db', 'apc' and 'memcache'.
$rcmail_config['ldap_cache'] = 'db';
// Lifetime of LDAP cache. Possible units: s, m, h, d, w
$rcmail_config['ldap_cache_ttl'] = '10m';
// ----------------------------------
// SYSTEM
// ----------------------------------
@@ -209,10 +222,6 @@
// use this folder to store temp files (must be writeable for apache user)
$rcmail_config['temp_dir'] = 'temp/';
// lifetime of message cache
// possible units: s, m, h, d, w
$rcmail_config['message_cache_lifetime'] = '10d';
// enforce connections over https
// with this option enabled, all non-secure connections will be redirected.
program/lib/Roundcube/rcube_ldap.php
@@ -186,7 +186,11 @@
        // initialize cache
        $rcube = rcube::get_instance();
        $this->cache = $rcube->get_cache('LDAP.' . asciiwords($this->prop['name']), 'db', 600);
        $cache_type = $rcube->config->get('ldap_cache', 'db');
        $cache_ttl  = $rcube->config->get('ldap_cache_ttl', '10m');
        $cache_name = 'LDAP.' . asciiwords($this->prop['name']);
        $this->cache = $rcube->get_cache($cache_name, $cache_type, $cache_ttl);
        $this->_connect();
    }