X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Fimap_general.php;h=2b0b0cf67620d37756f6d3117b8fdc049413ecd0;hb=a28de4194b8f41675c0034aeabee86ab35a8c00f;hp=a0db4b45dc9dec0cac23b23657df39cf3747fb8a;hpb=4b5049de2fa934c45599d6e4c74bf2bbee10d34d;p=squirrelmail.git
diff --git a/functions/imap_general.php b/functions/imap_general.php
index a0db4b45..2b0b0cf6 100755
--- a/functions/imap_general.php
+++ b/functions/imap_general.php
@@ -5,7 +5,7 @@
*
* This implements all functions that do general IMAP functions.
*
- * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @copyright © 1999-2009 The SquirrelMail Project Team
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
* @version $Id$
* @package squirrelmail
@@ -60,11 +60,14 @@ function sqimap_run_command_list ($imap_stream, $query, $handle_errors, &$respon
$message = $message[$tag];
$response = $response[$tag];
return $read[$tag];
+//FIXME: obey $handle_errors below!
} else {
global $squirrelmail_language, $color;
set_up_language($squirrelmail_language);
+//FIXME: NO HTML IN CORE!
$string = "\n" .
_("ERROR: No available IMAP stream.") .
+//FIXME: NO HTML IN CORE!
"\n";
error_box($string);
return false;
@@ -110,11 +113,14 @@ function sqimap_run_command ($imap_stream, $query, $handle_errors, &$response,
} else {
return $read[$tag];
}
+//FIXME: obey $handle_errors below!
} else {
global $squirrelmail_language, $color;
set_up_language($squirrelmail_language);
+//FIXME: NO HTML IN CORE!
$string = "\n" .
_("ERROR: No available IMAP stream.") .
+//FIXME: NO HTML IN CORE!
"\n";
error_box($string);
return false;
@@ -316,8 +322,10 @@ function sqimap_read_data_list($imap_stream, $tag, $handle_errors,
&$response, &$message, $query = '') {
global $color, $oTemplate, $squirrelmail_language;
set_up_language($squirrelmail_language);
+//FIXME: NO HTML IN CORE!
$string = "\n" .
_("ERROR: Bad function call.") .
+//FIXME: NO HTML IN CORE!
"
\n" .
_("Reason:") . ' '.
'There is a plugin installed which make use of the
' .
@@ -325,6 +333,7 @@ function sqimap_read_data_list($imap_stream, $tag, $handle_errors,
'Please adapt the installed plugin and let it use
'.
'sqimap_run_command or sqimap_run_command_list instead
'.
'The following query was issued:
'.
+//FIXME: NO HTML IN CORE!
htmlspecialchars($query) . '
' . "
\n";
error_box($string);
$oTemplate->display('footer.tpl');
@@ -346,6 +355,7 @@ function sqimap_error_box($title, $query = '', $message_title = '', $message = '
global $color, $squirrelmail_language;
set_up_language($squirrelmail_language);
+//FIXME: NO HTML IN CORE!
$string = "\n" . $title . "
\n";
$cmd = explode(' ',$query);
$cmd= strtolower($cmd[0]);
@@ -356,6 +366,7 @@ function sqimap_error_box($title, $query = '', $message_title = '', $message = '
$string .= $message_title;
if ($message != '')
$string .= htmlspecialchars($message);
+//FIXME: NO HTML IN CORE!
$string .= "
\n";
if ($link != '')
$string .= $link;
@@ -466,6 +477,7 @@ function sqimap_retrieve_imap_response($imap_stream, $tag, $handle_errors,
we prohibid that literal responses appear in the
outer loop so we can trust the untagged and
tagged info provided by $read */
+ $read_literal = false;
if ($s === "}\r\n") {
$j = strrpos($read,'{');
$iLit = substr($read,$j+1,-3);
@@ -490,7 +502,9 @@ function sqimap_retrieve_imap_response($imap_stream, $tag, $handle_errors,
if ($read === false) { /* error */
break 4; /* while while switch while */
}
- $fetch_data[] = $read;
+ $s = substr($read,-3);
+ $read_literal = true;
+ continue;
} else {
$fetch_data[] = $read;
}
@@ -503,7 +517,7 @@ function sqimap_retrieve_imap_response($imap_stream, $tag, $handle_errors,
/* check for next untagged reponse and break */
if ($read{0} == '*') break 2;
$s = substr($read,-3);
- } while ($s === "}\r\n");
+ } while ($s === "}\r\n" || $read_literal);
$s = substr($read,-3);
} while ($read{0} !== '*' &&
substr($read,0,strlen($tag)) !== $tag);
@@ -558,6 +572,7 @@ function sqimap_retrieve_imap_response($imap_stream, $tag, $handle_errors,
$query = '';
}
sqimap_error_box(_("ERROR: IMAP server closed the connection."), $query, _("Server responded:"),$sResponse);
+//FIXME: NO HTML IN CORE!
echo '