Philip Weir
3 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
4 additions and
16 deletions
-
INSTALL
-
config/config.inc.php.sample
-
config/defaults.inc.php
-
program/lib/Roundcube/rcube_db.php
|
|
@ -13,7 +13,7 @@ REQUIREMENTS |
|
|
|
* .htaccess support allowing overrides for DirectoryIndex |
|
|
|
* PHP Version 7.3 or greater including: |
|
|
|
- PCRE, DOM, JSON, Session, Sockets, OpenSSL, Mbstring, Filter, Ctype, Intl (required) |
|
|
|
- PHP PDO with driver for either MySQL, PostgreSQL, SQL Server, Oracle or SQLite (required) |
|
|
|
- PHP PDO with driver for either MySQL, PostgreSQL or SQLite (required) |
|
|
|
- Iconv, Zip, Fileinfo, Exif (recommended) |
|
|
|
- LDAP for LDAP addressbook support (optional) |
|
|
|
- GD, Imagick, XMLWriter (optional: thumbnails generation, QR-code) |
|
|
|
|
|
@ -21,7 +21,7 @@ $config = []; |
|
|
|
|
|
|
|
// Database connection string (DSN) for read+write operations |
|
|
|
// Format (compatible with PEAR MDB2): db_provider://user:password@host/database |
|
|
|
// Currently supported db_providers: mysql, pgsql, sqlite, mssql, sqlsrv, oracle |
|
|
|
// Currently supported db_providers: mysql, pgsql, sqlite |
|
|
|
// For examples see http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php |
|
|
|
// NOTE: for SQLite use absolute path (Linux): 'sqlite:////full/path/to/sqlite.db?mode=0646' |
|
|
|
// or (Windows): 'sqlite:///C:/full/path/to/sqlite.db' |
|
|
|
|
|
@ -25,7 +25,7 @@ $config = []; |
|
|
|
|
|
|
|
// Database connection string (DSN) for read+write operations
|
|
|
|
// Format (compatible with PEAR MDB2): db_provider://user:password@host/database
|
|
|
|
// Currently supported db_providers: mysql, pgsql, sqlite, mssql, sqlsrv, oracle
|
|
|
|
// Currently supported db_providers: mysql, pgsql, sqlite
|
|
|
|
// For examples see http://pear.php.net/manual/en/package.database.mdb2.intro-dsn.php
|
|
|
|
// Note: for SQLite use absolute path (Linux): 'sqlite:////full/path/to/sqlite.db?mode=0646'
|
|
|
|
// or (Windows): 'sqlite:///C:/full/path/to/sqlite.db'
|
|
|
|
|
|
@ -1260,19 +1260,7 @@ class rcube_db |
|
|
|
if (strpos($dsn, '+') !== false) { |
|
|
|
list($proto, $dsn) = explode('+', $dsn, 2); |
|
|
|
} |
|
|
|
if ( strpos($dsn, '//') === 0 |
|
|
|
&& strpos($dsn, '/', 2) !== false |
|
|
|
&& $parsed['phptype'] == 'oci8' |
|
|
|
) { |
|
|
|
// Oracle's "Easy Connect" syntax:
|
|
|
|
// "username/password@[//]host[:port][/service_name]"
|
|
|
|
// e.g. "scott/tiger@//mymachine:1521/oracle"
|
|
|
|
$proto_opts = $dsn; |
|
|
|
$pos = strrpos($proto_opts, '/'); |
|
|
|
$dsn = substr($proto_opts, $pos + 1); |
|
|
|
$proto_opts = substr($proto_opts, 0, $pos); |
|
|
|
} |
|
|
|
else if (strpos($dsn, '/') !== false) { |
|
|
|
if (strpos($dsn, '/') !== false) { |
|
|
|
list($proto_opts, $dsn) = explode('/', $dsn, 2); |
|
|
|
} |
|
|
|
else { |
|
|
|