summaryrefslogtreecommitdiff
path: root/classes/pref/prefs.php
diff options
context:
space:
mode:
Diffstat (limited to 'classes/pref/prefs.php')
-rw-r--r--classes/pref/prefs.php18
1 files changed, 17 insertions, 1 deletions
diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php
index de03b34dc..3436e4f60 100644
--- a/classes/pref/prefs.php
+++ b/classes/pref/prefs.php
@@ -694,7 +694,7 @@ class Pref_Prefs extends Handler_Protected {
print \Controls\input_tag($pref_name, $value, "text", ["readonly" => true], "SSL_CERT_SERIAL");
- $cert_serial = htmlspecialchars(get_ssl_certificate_id());
+ $cert_serial = htmlspecialchars(self::_get_ssl_certificate_id());
$has_serial = ($cert_serial) ? true : false;
print \Controls\button_tag(__('Register'), "", [
@@ -1408,4 +1408,20 @@ class Pref_Prefs extends Handler_Protected {
$this->appPasswordList();
}
+
+ static function _get_ssl_certificate_id() {
+ if ($_SERVER["REDIRECT_SSL_CLIENT_M_SERIAL"] ?? false) {
+ return sha1($_SERVER["REDIRECT_SSL_CLIENT_M_SERIAL"] .
+ $_SERVER["REDIRECT_SSL_CLIENT_V_START"] .
+ $_SERVER["REDIRECT_SSL_CLIENT_V_END"] .
+ $_SERVER["REDIRECT_SSL_CLIENT_S_DN"]);
+ }
+ if ($_SERVER["SSL_CLIENT_M_SERIAL"] ?? false) {
+ return sha1($_SERVER["SSL_CLIENT_M_SERIAL"] .
+ $_SERVER["SSL_CLIENT_V_START"] .
+ $_SERVER["SSL_CLIENT_V_END"] .
+ $_SERVER["SSL_CLIENT_S_DN"]);
+ }
+ return "";
+ }
}