mirror of
https://github.com/postfixadmin/postfixadmin.git
synced 2024-09-19 19:22:14 +02:00
Add support for MySQL connections over SSL
This commit is contained in:
parent
dbbc40b327
commit
ebbd9025e4
@ -87,6 +87,14 @@ $CONF['database_user'] = 'postfix';
|
||||
$CONF['database_password'] = 'postfixadmin';
|
||||
$CONF['database_name'] = 'postfix';
|
||||
|
||||
// Database SSL Config
|
||||
$CONF['database_use_ssl'] = false;
|
||||
$CONF['database_ssl_key'] = NULL;
|
||||
$CONF['database_ssl_cert'] = NULL;
|
||||
$CONF['database_ssl_ca'] = NULL;
|
||||
$CONF['database_ssl_ca_path'] = NULL;
|
||||
$CONF['database_ssl_cipher'] = NULL;
|
||||
|
||||
// If you need to specify a different port for a MYSQL database connection, use e.g.
|
||||
// $CONF['database_host'] = '172.30.33.66:3308';
|
||||
//
|
||||
|
@ -1287,18 +1287,27 @@ function db_connect ($ignore_errors = false) {
|
||||
$error_text .= "<p />DEBUG INFORMATION:<br />MySQL 3.x / 4.0 functions not available! (php5-mysql installed?)<br />database_type = 'mysql' in config.inc.php, are you using a different database? $DEBUG_TEXT";
|
||||
}
|
||||
} elseif ($CONF['database_type'] == "mysqli") {
|
||||
if (function_exists ("mysqli_connect")) {
|
||||
|
||||
$CONF['database_socket'] = isset($CONF['database_socket']) ? $CONF['database_socket'] : ini_get('mysqli.default_socket');
|
||||
$CONF['database_port'] = isset($CONF['database_port']) ? $CONF['database_socket'] : ini_get('mysqli.default_port');
|
||||
|
||||
$link = @mysqli_connect ($CONF['database_host'], $CONF['database_user'], $CONF['database_password'], $CONF['database_name'], $CONF['database_port'], $CONF['database_socket']) or $error_text .= ("<p />DEBUG INFORMATION:<br />Connect: " . mysqli_connect_error () . "$DEBUG_TEXT");
|
||||
if ($link) {
|
||||
@mysqli_query($link,"SET CHARACTER SET utf8");
|
||||
@mysqli_query($link,"SET COLLATION_CONNECTION='utf8_general_ci'");
|
||||
$is_connected = false;
|
||||
if ($CONF['database_use_ssl']) {
|
||||
if (function_exists ("mysqli_real_connect")) {
|
||||
$link = mysqli_init();
|
||||
$link->ssl_set($CONF['database_ssl_key'], $CONF['database_ssl_cert'], $CONF['database_ssl_ca'], $CONF['database_ssl_ca_path'], $CONF['database_ssl_cipher']);
|
||||
$connected = mysqli_real_connect($link, $CONF['database_host'], $CONF['database_user'], $CONF['database_password'], $CONF['database_name'], $CONF['database_port']);
|
||||
$is_connected = $connected;
|
||||
} else {
|
||||
$error_text .= "<p />DEBUG INFORMATION:<br />MySQLi 5 functions not available! (php5-mysqli installed?)<br />database_type = 'mysqli' in config.inc.php, are you using a different database? $DEBUG_TEXT";
|
||||
}
|
||||
} else {
|
||||
$error_text .= "<p />DEBUG INFORMATION:<br />MySQLi functions not available! (php5-mysqli installed?)<br />database_type = 'mysqli' in config.inc.php, are you using a different database? $DEBUG_TEXT";
|
||||
if (function_exists ("mysqli_connect")) {
|
||||
$link = @mysqli_connect($CONF['database_host'], $CONF['database_user'], $CONF['database_password'], $CONF['database_name'], $CONF['database_port'], $CONF['database_socket']) or $error_text .= ("<p />DEBUG INFORMATION:<br />Connect: " . mysqli_connect_error() . "$DEBUG_TEXT");
|
||||
$is_connected = $link;
|
||||
} else {
|
||||
$error_text .= "<p />DEBUG INFORMATION:<br />MySQL 4.1 functions not available! (php5-mysqli installed?)<br />database_type = 'mysqli' in config.inc.php, are you using a different database? $DEBUG_TEXT";
|
||||
}
|
||||
}
|
||||
if ($is_connected) {
|
||||
@mysqli_query($link,"SET CHARACTER SET utf8");
|
||||
@mysqli_query($link,"SET COLLATION_CONNECTION='utf8_general_ci'");
|
||||
}
|
||||
} elseif (db_sqlite()) {
|
||||
if (class_exists ("SQLite3")) {
|
||||
|
Loading…
Reference in New Issue
Block a user