Skip to content

Commit

Permalink
Simplify require SSL
Browse files Browse the repository at this point in the history
Signed-off-by: Madhura Jayaratne <madhura.cj@gmail.com>
  • Loading branch information
madhuracj committed Sep 14, 2015
1 parent b1d955e commit 2cbcf73
Showing 1 changed file with 86 additions and 81 deletions.
167 changes: 86 additions & 81 deletions libraries/server_privileges.lib.php
Original file line number Diff line number Diff line change
Expand Up @@ -718,33 +718,77 @@ function PMA_getHtmlToDisplayPrivilegesTable($db = '*',
function PMA_getHtmlForRequires($row)
{
$html_output = '<fieldset>';
$html_output .= '<legend>SSL</legend>';

$html_output .= '<legend>';
$html_output .= '<input type="checkbox" name="SSL_priv" id="checkbox_SSL_priv"'
. ' value="Y" title="'
$html_output .= '<div id="require_ssl_div">';

// REQUIRE NONE
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_NONE"'
. ' value="NONE" title="'
. __(
'Does not requires SSL-encrypted connections.'
)
. '"'
. ((isset($row['ssl_type'])
&& ($row['ssl_type'] == 'NONE'
|| $row['ssl_type'] == ''))
? ' checked="checked"'
: ''
)
. '/>';

$html_output .= '<label for="ssl_type_NONE"><code>'
. 'REQUIRE NONE'
. '</code></label>';
$html_output .= '</div>';

// REQUIRE SSL
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_ANY"'
. ' value="ANY" title="'
. __(
'Requires SSL-encrypted connections.'
)
. '"'
. ((isset($row['ssl_type']) && $row['ssl_type'] != '')
. ((isset($row['ssl_type'])
&& $row['ssl_type'] == 'ANY')
? ' checked="checked"'
: ''
)
. '/>';
$html_output .= __('Require SSL') . '</legend>';
$html_output .= '<div id="require_ssl_div">';

// Specified
$html_output .= '<label for="ssl_type_ANY"><code>'
. 'REQUIRE SSL'
. '</code></label>';
$html_output .= '</div>';

// REQUIRE X509
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_specified"'
. ' value="specified"'
. ((isset($row['ssl_type']) && $row['ssl_type'] == 'SPECIFIED')
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_X509"'
. ' value="X509" title="'
. __(
'Requires a valid X509 certificate.'
)
. '"'
. ((isset($row['ssl_type']) && $row['ssl_type'] == 'X509')
? ' checked="checked"'
: ''
)
. '/>';

$html_output .= '<label for="ssl_type_speified"><code>'
$html_output .= '<label for="ssl_type_X509"><code>'
. 'REQUIRE X509'
. '</code></label>';
$html_output .= '</div>';

// Specified
$specified = (isset($row['ssl_type']) && $row['ssl_type'] == 'SPECIFIED');
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_specified"'
. ' value="specified"' . ($specified ? ' checked="checked"' : '') . '/>';

$html_output .= '<label for="ssl_type_specified"><code>'
. 'SPECIFIED'
. '</code></label>';
$html_output .= '</div>';
Expand All @@ -766,8 +810,9 @@ function PMA_getHtmlForRequires($row)
. 'size=80" title="'
. __(
'Requires that a specific cipher method be used for a connection.'
)
. '" />';
) . '"'
. (! $specified ? ' disabled' : '')
. ' />';
$html_output .= '</div>';

// REQUIRE ISSUER
Expand All @@ -785,8 +830,9 @@ function PMA_getHtmlForRequires($row)
. 'size=80" title="'
. __(
'Requires that a valid X509 certificate issued by this CA be presented.'
)
. '" />';
) .'"'
. (! $specified ? ' disabled' : '')
. ' />';
$html_output .= '</div>';

// REQUIRE SUBJECT
Expand All @@ -804,52 +850,13 @@ function PMA_getHtmlForRequires($row)
. '" size=80" title="'
. __(
'Requires that a valid X509 certificate with this subject be presented.'
)
. '" />';
) . '"'
. (! $specified ? ' disabled' : '')
. ' />';
$html_output .= '</div>';

$html_output .= '</div>';

// REQUIRE X509
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_X509"'
. ' value="X509" title="'
. __(
'Requires a valid X509 certificate.'
)
. '"'
. ((isset($row['ssl_type']) && $row['ssl_type'] == 'X509')
? ' checked="checked"'
: ''
)
. '/>';

$html_output .= '<label for="radio_X509_priv"><code>'
. 'REQUIRE X509'
. '</code></label>';
$html_output .= '</div>';

// REQUIRE SSL
$html_output .= '<div class="item">';
$html_output .= '<input type="radio" name="ssl_type" id="ssl_type_ANY"'
. ' value="ANY" title="'
. __(
'Requires SSL-encrypted connections.'
)
. '"'
. ((isset($row['ssl_type'])
&& ($row['ssl_type'] == 'ANY'
|| $row['ssl_type'] == ''))
? ' checked="checked"'
: ''
)
. '/>';

$html_output .= '<label for="ssl_type_ANY"><code>'
. 'REQUIRE SSL'
. '</code></label>';
$html_output .= '</div>';

$html_output .= '</div>';
$html_output .= '</fieldset>';

Expand Down Expand Up @@ -1986,31 +1993,29 @@ function PMA_getMessageAndSqlQueryForPrivilegesRevoke($dbname,
function PMA_getRequireClause()
{
$require_clause = "";
if (isset($_POST['SSL_priv']) && $_POST['SSL_priv'] == 'Y') {
if (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'specified') {
$require = array();
if (! empty($_POST['ssl_cipher'])) {
$require[] = "CIPHER '"
. PMA_Util::sqlAddSlashes($_POST['ssl_cipher']) . "'";
}
if (! empty($_POST['x509_issuer'])) {
$require[] = "ISSUER '"
. PMA_Util::sqlAddSlashes($_POST['x509_issuer']) . "'";
}
if (! empty($_POST['x509_subject'])) {
$require[] = "SUBJECT '"
. PMA_Util::sqlAddSlashes($_POST['x509_subject']) . "'";
}
if (count($require)) {
$require_clause = " REQUIRE " . implode(" AND ", $require);
} else {
$require_clause = " REQUIRE NONE";
}
} elseif (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'X509') {
$require_clause = " REQUIRE X509";
} elseif (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'ANY') {
$require_clause = " REQUIRE SSL";
if (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'specified') {
$require = array();
if (! empty($_POST['ssl_cipher'])) {
$require[] = "CIPHER '"
. PMA_Util::sqlAddSlashes($_POST['ssl_cipher']) . "'";
}
if (! empty($_POST['x509_issuer'])) {
$require[] = "ISSUER '"
. PMA_Util::sqlAddSlashes($_POST['x509_issuer']) . "'";
}
if (! empty($_POST['x509_subject'])) {
$require[] = "SUBJECT '"
. PMA_Util::sqlAddSlashes($_POST['x509_subject']) . "'";
}
if (count($require)) {
$require_clause = " REQUIRE " . implode(" AND ", $require);
} else {
$require_clause = " REQUIRE NONE";
}
} elseif (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'X509') {
$require_clause = " REQUIRE X509";
} elseif (isset($_POST['ssl_type']) && $_POST['ssl_type'] == 'ANY') {
$require_clause = " REQUIRE SSL";
} else {
$require_clause = " REQUIRE NONE";
}
Expand Down

0 comments on commit 2cbcf73

Please sign in to comment.