From 5818e44345204e2323781adb87edcfba45e246a8 Mon Sep 17 00:00:00 2001 From: alecpl Date: Tue, 27 Oct 2009 09:43:39 +0000 Subject: - Fix $_SERVER['HTTPS'] check for SSL forcing on IIS (#1486243) + fix port check --- program/include/main.inc | 21 +++++++++++++++++++++ program/include/rcube_shared.inc | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) (limited to 'program/include') diff --git a/program/include/main.inc b/program/include/main.inc index 06d7780d1..aa0d3fa26 100644 --- a/program/include/main.inc +++ b/program/include/main.inc @@ -1400,6 +1400,27 @@ function rcube_html_editor($mode='') } +/** + * Check if working in SSL mode + * + * @param integer HTTPS port number + * @param boolean Enables 'use_https' option checking + */ +function rcube_https_check($port=null, $use_https=true) +{ + global $RCMAIL; + + if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] != 'off') + return true; + if ($port && $_SERVER['SERVER_PORT'] == $port) + return true; + if ($use_https && $RCMAIL->config->get('use_https')) + return true; + + return false; +} + + /** * E-mail address validation */ diff --git a/program/include/rcube_shared.inc b/program/include/rcube_shared.inc index 97314ccd1..4119f1287 100644 --- a/program/include/rcube_shared.inc +++ b/program/include/rcube_shared.inc @@ -41,7 +41,7 @@ function send_nocacheing_headers() header("Pragma: no-cache"); // We need to set the following headers to make downloads work using IE in HTTPS mode. - if (isset($_SERVER['HTTPS']) || rcmail::get_instance()->config->get('use_https')) { + if (rcube_https_check()) { header('Pragma: '); header('Cache-Control: '); } -- cgit v1.2.3