From 161c28dffcab78da00b6b80693ef9423c4258248 Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Sat, 05 Sep 2009 08:31:19 -0400 Subject: [PATCH] - Fix wrong headers for IE on servers without $_SERVER['HTTPS'] (#1485926) - Force IE style headers for attachments in non-HTTPS session, 'use_https' option (#1485655) --- CHANGELOG | 2 ++ index.php | 3 ++- program/include/rcube_shared.inc | 2 +- program/steps/mail/rss.inc | 2 +- program/lib/imap.inc | 2 +- 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 8cdd04f..af6306d 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,8 @@ CHANGELOG RoundCube Webmail =========================== +- Fix wrong headers for IE on servers without $_SERVER['HTTPS'] (#1485926) +- Force IE style headers for attachments in non-HTTPS session, 'use_https' option (#1485655) - Check 'post_max_size' for upload max filesize (#1486089) - Password Plugin: Fix %d inserts username instead of domain (#1486088) - Fix rcube_mdb2::affected_rows() (#1486082) diff --git a/index.php b/index.php index 542a724..fc5926d 100644 --- a/index.php +++ b/index.php @@ -64,7 +64,8 @@ } // check if https is required (for login) and redirect if necessary -if ($RCMAIL->config->get('force_https', false) && empty($_SESSION['user_id']) && !(isset($_SERVER['HTTPS']) || $_SERVER['SERVER_PORT'] == 443)) { +if ($RCMAIL->config->get('force_https', false) && empty($_SESSION['user_id']) + && !(isset($_SERVER['HTTPS']) || $_SERVER['SERVER_PORT'] == 443 || $RCMAIL->config->get('use_https'))) { header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']); exit; } diff --git a/program/include/rcube_shared.inc b/program/include/rcube_shared.inc index 91db380..85a6105 100644 --- a/program/include/rcube_shared.inc +++ b/program/include/rcube_shared.inc @@ -41,7 +41,7 @@ header("Pragma: no-cache"); // We need to set the following headers to make downloads work using IE in HTTPS mode. - if (isset($_SERVER['HTTPS'])) { + if (isset($_SERVER['HTTPS']) || rcmail::get_instance()->config->get('use_https')) { header('Pragma: '); header('Cache-Control: '); } diff --git a/program/lib/imap.inc b/program/lib/imap.inc index e6b3ce1..02c9bd9 100644 --- a/program/lib/imap.inc +++ b/program/lib/imap.inc @@ -620,7 +620,7 @@ } stream_set_timeout($conn->fp, 10); - $line = stream_get_line($conn->fp, 8192, "\r\n"); + $line = stream_get_line($conn->fp, 8192, "\n"); if ($my_prefs['debug_mode'] && $line) write_log('imap', 'S: '. $line); diff --git a/program/steps/mail/rss.inc b/program/steps/mail/rss.inc index 667a348..2ebd15c 100644 --- a/program/steps/mail/rss.inc +++ b/program/steps/mail/rss.inc @@ -30,7 +30,7 @@ $OUTPUT_TYPE = 'rss'; $webmail_url = 'http'; -if (strstr('HTTPS', $_SERVER['SERVER_PROTOCOL'] )!== FALSE) +if (strstr('HTTPS', $_SERVER['SERVER_PROTOCOL'] )!== FALSE || $RCMAIL->config->get('use_https')) $webmail_url .= 's'; $webmail_url .= '://'.$_SERVER['SERVER_NAME']; if ($_SERVER['SERVER_PORT'] != '80') -- Gitblit v1.9.1