support for encrypted and compressed connections

This commit is contained in:
Alexander M. Turek
2003-01-31 14:06:37 +00:00
parent 6164de63c6
commit ec95643301
5 changed files with 84 additions and 12 deletions

View File

@@ -5,6 +5,11 @@ phpMyAdmin - Changelog
$Id$
$Source$
2003-01-31 Alexander M. Turek <rabus@users.sourceforge.net>
* config.inc.php3, Documentation.html, libraries/common.lib.php3,
libraries/config_import.lib.php3: Added experimental support for encrypted
and compressed connections to the MySQL server.
2003-01-30 Marc Delisle <lem9@users.sourceforge.net>
* db_details_structure.php3, libraries/fpdf/fpdf.php3: better browser
support, thanks to Jose Fandos (jose.fandos at sonnd.com)

View File

@@ -513,6 +513,22 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
<br /><br />
</dd>
<dt><b>$cfg['Servers'][$i]['ssl']</b> boolean</dt>
<dd>
Wheather to use an SSL connection to the MySQL server or not
(experimental).<br />
This feature requires PHP&nbsp;&gt;=&nbsp;4.3.0 and
MySQL&nbsp;&gt;=&nbsp;4.0.0 compiled <tt>--with-openssl</tt>.
Please also read <a href="#faqwinssl">this FAQ entry</a>.
</dd>
<dt><b>$cfg['Servers'][$i]['compress']</b> boolean</dt>
<dd>
Wheather to use a compressed protocol for the MySQL server connection
or not (experimental).<br />
This feature requires PHP&nbsp;&gt;=&nbsp;4.3.0.
</dd>
<dt>
<b>$cfg['Servers'][$i]['controluser']</b> string<br />
<b>$cfg['Servers'][$i]['controlpass']</b> string
@@ -1840,9 +1856,9 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
</p>
<p>
<b>[1.26] I just installed phpMyAdmin in my document root of IIS but
I get the error &quot;No input file specified&quot; when trying to
run phpMyAdmin.</b>
<b>[1.26] I just installed phpMyAdmin in my document root of IIS but I get
the error &quot;No input file specified&quot; when trying to run
phpMyAdmin.</b>
<br />
This is a permission problem. Right-click on the phpmyadmin folder
and choose properties. Under the tab Security, click on &quot;Add&quot;
@@ -1852,7 +1868,7 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
<p>
<b>[1.27] I get empty page when I want to view huge page (eg.
db_details_structure.php3 with plenty of dabases).</b>
db_details_structure.php3 with plenty of dabases).</b>
<br />
This is a <a href="http://bugs.php.net/21079">PHP bug</a> that occur when
GZIP output buffering enabled. If you turn it off (by <code>$cfg['OBGzip']
@@ -1860,6 +1876,15 @@ $cfg['PmaAbsoluteUri'] = (!empty($_SERVER['HTTPS']) ? 'https' : 'http') . '://'
in PHP 5.0.0.
</p>
<a name="faqwinssl"></a>
<p>
<b>[1.28] On my Windows machine, I have enabled SSL my MySQL server
connection, but PHP tells me something about an undefined constant
<tt>MYSQL_CLIENT_SSL</tt>.</b>
<br />
This seems to be a <a href="http://bugs.php.net/21981">PHP bug</a>.
</p>
<a name="faqconfig"></a>
<h3>[2. Configuration]</h3>

View File

@@ -64,6 +64,9 @@ $cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname
$cfg['Servers'][$i]['port'] = ''; // MySQL port - leave blank for default port
$cfg['Servers'][$i]['socket'] = ''; // Path to the socket - leave blank for default socket
$cfg['Servers'][$i]['connect_type'] = 'tcp'; // How to connect to MySQL server ('tcp' or 'socket')
$cfg['Servers'][$i]['ssl'] = FALSE; // Use SSL for the MySQL connection (MySQL >= 4.0.0)
$cfg['Servers'][$i]['compress'] = FALSE; // Use compressed protocol for the MySQL connection
// (Both are experimental and require PHP >= 4.3.0)
$cfg['Servers'][$i]['controluser'] = ''; // MySQL control user settings
// (this user must have read-only
$cfg['Servers'][$i]['controlpass'] = ''; // access to the "mysql/user"
@@ -103,6 +106,8 @@ $cfg['Servers'][$i]['host'] = '';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['ssl'] = FALSE;
$cfg['Servers'][$i]['compress'] = FALSE;
$cfg['Servers'][$i]['controluser'] = '';
$cfg['Servers'][$i]['controlpass'] = '';
$cfg['Servers'][$i]['auth_type'] = 'config';
@@ -127,6 +132,8 @@ $cfg['Servers'][$i]['host'] = '';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['ssl'] = FALSE;
$cfg['Servers'][$i]['compress'] = FALSE;
$cfg['Servers'][$i]['controluser'] = '';
$cfg['Servers'][$i]['controlpass'] = '';
$cfg['Servers'][$i]['auth_type'] = 'config';

View File

@@ -130,7 +130,7 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
* Includes compatibility code for older config.inc.php3 revisions
* if necessary
*/
if (!isset($cfg['FileRevision']) || (int) substr($cfg['FileRevision'], 13, 3) < 144) {
if (!isset($cfg['FileRevision']) || (int) substr($cfg['FileRevision'], 13, 3) < 153) {
include('./libraries/config_import.lib.php3');
}
@@ -328,7 +328,7 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
$is_modify_link = TRUE, $back_url = '')
{
global $cfg;
if (empty($GLOBALS['is_header_sent'])) {
include('./header.inc.php3');
}
@@ -340,7 +340,7 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
$the_query = $GLOBALS['sql_query'];
}
// --- Added to solve bug #641765
// --- Added to solve bug #641765
// Robbat2 - 12 January 2003, 9:46PM
// Revised, Robbat2 - 13 Janurary 2003, 2:59PM
if (PMA_SQP_isError()) {
@@ -355,7 +355,7 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
// respond, do not show the query that would reveal the
// username/password
if (!empty($the_query) && !strstr($the_query, 'connect')) {
// --- Added to solve bug #641765
// --- Added to solve bug #641765
// Robbat2 - 12 January 2003, 9:46PM
// Revised, Robbat2 - 13 Janurary 2003, 2:59PM
if (PMA_SQP_isError()) {
@@ -385,7 +385,7 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
. $error_message . "\n"
. '</pre>' . "\n";
if (!empty($back_url)) {
echo '<a href="' . $back_url . '">' . $GLOBALS['strBack'] . '</a>';
}
@@ -607,6 +607,10 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
$server_socket = (empty($cfg['Server']['socket']) || PMA_PHP_INT_VERSION < 30010)
? ''
: ':' . $cfg['Server']['socket'];
if (PMA_PHP_INT_VERSION >= 40300) {
$client_flags = ($cfg['Server']['ssl'] ? MYSQL_CLIENT_SSL : 0)
& ($cfg['Server']['compress'] ? MYSQL_CLIENT_COMPRESS : 0);
}
// Gets the authentication library that fits the $cfg['Server'] settings
// and run authentication
@@ -676,11 +680,21 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
// must be open after this one so it would be default one for all the
// scripts)
if ($cfg['Server']['controluser'] != '') {
$dbh = @$connect_func(
if (PMA_PHP_INT_VERSION >= 40300) {
$dbh = @$connect_func(
$cfg['Server']['host'] . $server_port . $server_socket,
$cfg['Server']['controluser'],
$cfg['Server']['controlpass'],
FALSE,
$client_flags
);
} else {
$dbh = @$connect_func(
$cfg['Server']['host'] . $server_port . $server_socket,
$cfg['Server']['controluser'],
$cfg['Server']['controlpass']
);
}
if ($dbh == FALSE) {
if (PMA_mysql_error()) {
$conn_error = PMA_mysql_error();
@@ -692,7 +706,9 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
$local_query = $connect_func . '('
. $cfg['Server']['host'] . $server_port . $server_socket . ', '
. $cfg['Server']['controluser'] . ', '
. $cfg['Server']['controlpass'] . ')';
. $cfg['Server']['controlpass']
. (PMA_PHP_INT_VERSION >= 40300 ? ', FALSE, ' . $client_flags : '')
. ')';
if (empty($GLOBALS['is_header_sent'])) {
include('./header.inc.php3');
}
@@ -705,11 +721,22 @@ h1 {font-family: sans-serif; font-size: large; font-weight: bold}
// Robbat2 - May 11, 2002
// Connects to the server (validates user's login)
$userlink = @$connect_func(
if (PMA_PHP_INT_VERSION >= 40300) {
$userlink = @$connect_func(
$cfg['Server']['host'] . $server_port . $server_socket,
$cfg['Server']['user'],
$cfg['Server']['password'],
FALSE,
$client_flags
);
} else {
$userlink = @$connect_func(
$cfg['Server']['host'] . $server_port . $server_socket,
$cfg['Server']['user'],
$cfg['Server']['password']
);
}
if ($userlink == FALSE) {
PMA_auth_fails();
} // end if

View File

@@ -62,6 +62,14 @@ if (!defined('PMA_CONFIG_IMPORT_LIB_INCLUDED')) {
unset($cfg['Servers'][$i]['adv_auth']);
}
if (!isset($cfg['Servers'][$i]['ssl'])) {
$cfg['Servers'][$i]['ssl'] = FALSE;
}
if (!isset($cfg['Servers'][$i]['compress'])) {
$cfg['Servers'][$i]['compress'] = FALSE;
}
if (!isset($cfg['Servers'][$i]['user'])) {
$cfg['Servers'][$i]['user'] = 'root';
}