Custom Query (5490 matches)


Show under each result:

Results (3501 - 3600 of 5490)

Ticket Summary Owner Type Priority Milestone Component
#1483987 rcube_mdb2::now() method missing in svn r328 version Bugs 5 PHP backend

my system:

gentoo linux system
php 5.1.4
apache 2.0.55
postgres 8.1.4
using MDB2 db engine

first noticed:

I just updated to latest svn build and dropped all tables in the database and recreated them using the postgres.initial.sql.


After login, i just get a blank screen.

log file had these errors:

PHP Fatal error: Call to undefined method rcube_db::now() in /var/www/ on line 469

PHP Fatal error: Call to undefined method rcube_db::now() in /var/www/ on line 514


the file no longer defined the now() function


i copied the now() function from the file into the file, and it worked fine.

   * Return SQL function for current time and date
   * @return string SQL function to use in query
   * @access public
   function now()
       case 'mssql':
         return "getdate()";

         return "now()";


please put the now() function back into the file.

#1484001 Incorrect Unread Messages Count Feature Patches 6 0.1.1 PHP backend

In the list of folders on the left of the display, created by rcmail_render_folder_tree_html(), the unread message count for each mailbox is displayed in brackets after the mailbox name. However, the number is currently incorrect. Line 201 of reads:

if ($unread_count = $IMAP->messagecount($folderid?, 'RECENT', ($folderid?==$mbox_name)))

But it ought to read:

if ($unread_count = $IMAP->messagecount($folderid?, 'UNSEEN', ($folderid?==$mbox_name)))

We want the unseen count, not the recent count.

#1484015 headers already sent php-errors Bugs 5 PHP backend

since upgrading to the latest beta, i found some entries like the one below in my apache logs. i didn't notice any misbehavior, and i didn't have the time yet to check when these errors are created. i checked older logs, and this is definitely connected to the new version. if i'll have some time, i'll try to provide some more info on it. has anyone else seen these?

[client] PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0, referer: https://.../webmail/?_task=mail&_mbox=INBOX

#1484020 html2text prints 'strtoupper' in converted <th> tags estadtherr Bugs 7 PHP backend

When html2text is used to convert HTML into plain text, any "th" elements that are part of a table contain the text 'strtoupper()' in the converted text.

#1484023 message display on invalid charset header Bugs 6 0.1-rc2 PHP backend

If the received message has a charset header which doesn't actually match the contents of the message body (e.g. charset=us-ascii whereas german umlauts are used) the message is only display up to the first appearance "invalid" char in the message body. Would be nice if RC could be a little more "error tolerant"...there are quite a few broken MUAs out there... ;-)

#1484048 Doesn't open large mails with attachments ( >500kb) Bugs 5 0.1-rc1 PHP backend

Maybe this is a bug already under correction, but I would like to register it...

When I receive large emails (bigger than 500kb mostly), I'm not able to read it... The screen go blank after a while. When I hit the back button, I return to the Inbox, but I'm not able to read the e-mail.

The same when I try to send e-mails with large files (bigger than 1Mb), sometime the system just time out and I'm not able to sent it... RC stays in the send screen, but doesn't send the mail nor the file.

#1484062 Wrong MimeType while attaching files. till Bugs 5 0.1-stable PHP backend

There's a small issue with roundcube while attaching certain files. Roundcube trusts that the browser will send the correct Mimetype which seems fine, but not all browsers do this right.

I have been experiencing problems with Firefox and various versions of roundcube while attaching PDF files because somehow Firefox recognizes them as text/html and not as application/pdf ; when the email composed with roundcube is received the attachment can be downloaded but its imposible to open because the mimetype is wrong.

I was able to fix this behaviour by ignoring the mimetype sent by the browser and forcing the application to query the true mimetype of the file by means of the "mime_content_type()" function.

File: program/steps/mail/

// add stored attachments, if any
if (is_array($_SESSION['compose']['attachments']))
  foreach ($_SESSION['compose']['attachments'] as $attachment)
    $MAIL_MIME->addAttachment($attachment['path'], $attachment['mimetype'], $attachment['name'], TRUE);

Was replaced with:

// add stored attachments, if any
if (is_array($_SESSION['compose']['attachments']))
  foreach ($_SESSION['compose']['attachments'] as $attachment)
    $MAIL_MIME->addAttachment($attachment['path'], mime_content_type($attachment['path']), $attachment['name'], TRUE);

#1484072 Weird forward behaviour. thomasb Bugs 5 0.1-rc1 PHP backend

When forwarding mails with attachments, if the email is empty (no html or text body, just files attached) the attachment(s) is/are not included in the email being fowarded. I manage to fix this by removing an if condition.

File: ./program/steps/mail/ Function: rcmail_compose_body

  // forward message body inline
  else if ($compose_mode == RCUBE_COMPOSE_FORWARD)
    $hasHtml = rcmail_has_html_part($MESSAGE['parts']);

    if ($hasHtml && $CONFIG['htmleditor'])
      $body = rcmail_first_html_part($MESSAGE);
      $isHtml = true;
      $body = rcmail_first_text_part($MESSAGE);
      $isHtml = false;

  //by commenting (removing) the if the problem is solved
  /*if (strlen($body))*/
      $body = rcmail_create_forward_body($body, $isHtml);
#1484081 Including smtp final response on roundcube smtp log Feature Requests 2 0.1-rc1 PHP backend


Just to help on tracking for messages coming from local webmail, which always apear to come from localhost on server mail.log, I propose to add last SMTP response (which sometimes comes with queue id) on roundcube sendmail log (logs/sendmail).

Log will be change from this:

[17-Oct-2006 17:47:39 -0300] User: morpheu on ; Message for morpheu; Subject: test

To this:

[17-Oct-2006 17:47:39 -0300] User: morpheu on ; Message for morpheu; Subject: test; Queue Response: 2.0.0 Ok: queued as E36982801625

Below, there is a patch for version 0.1-beta2 to add this feature:

diff -Nru roundcubemail-0.1beta2-orig/program/include/ roundcubemail-0.1beta2/program/include/
--- roundcubemail-0.1beta2-orig/roundcubemail-0.1beta2/program/include/  2006-06-26 15:38:03.000000000 -0300
+++ roundcubemail-0.1beta2/program/include/     2006-10-17 17:43:15.518351371 -0300
@@ -49,7 +49,7 @@
  * @return bool  Returns TRUE on success, or FALSE on error
  * @access public
-function smtp_mail($from, $recipients, &$headers, &$body)
+function smtp_mail($from, $recipients, &$headers, &$body, &$smtp_queue_response)
   $smtp_timeout = null;
@@ -183,7 +183,7 @@
     return FALSE;

+  $smtp_queue_response = $SMTP_CONN->getResponse();
   return TRUE;

diff -Nru roundcubemail-0.1beta2-orig/program/steps/mail/ roundcubemail-0.1beta2/program/steps/mail/
--- roundcubemail-0.1beta2-orig/program/steps/mail/ 2006-07-31 19:51:23.000000000 -0300
+++ roundcubemail-0.1beta2/program/steps/mail/    2006-10-17 17:48:43.275169096 -0300
@@ -243,7 +243,7 @@
     $header_str = $MAIL_MIME->txtHeaders($send_headers);

     // send message
-    $sent = smtp_mail($from, $a_recipients, $header_str, $msg_body);
+    $sent = smtp_mail($from, $a_recipients, $header_str, $msg_body, $smtp_queue_response);

     // log error
     if (!$sent)
@@ -365,12 +365,13 @@
   if ($CONFIG['smtp_log'])
-    $log_entry = sprintf("[%s] User: %d on %s; Message for %s; Subject: %s\n",
+    $log_entry = sprintf("[%s] User: %d on %s; Message for %s; Subject: %s; SMTP Response: %s\n",
                  date("d-M-Y H:i:s O", mktime()),
-                 $msg_subject);
+                 $msg_subject,
+                $smtp_queue_response[1]);

     if ($fp = @fopen($CONFIG['log_dir'].'/sendmail', 'a'))


#1484093 SERVICE CURRENTLY NOT AVAILABLE! Error No. 1f4) Bugs 10 - Lowest 0.1-rc1 PHP backend

i can not install your programs on sites please help me to install sites thank you

+98-912-5473110 Please Help Me

#1484098 Large file attachments consume too much memory when sending messages. Bugs 5 0.1-rc1 PHP backend

When sending a file several copies of the attached files are stored as passed around. I believe four copies are being stored in memory. in program/steps/mail/, 1 copy in $msg_body and 1 copy in MAIL_MIME->_parts (the assign by reference of $msg_body to MAIL_MIME->get has no effect in this case and a copy is created). in program/includes/rcube_sendmail a copied is made when SMTP_CONN->data is called. in program lib/Net/SMTP.php a copied is made by preg_replace for its internal cache.

Two copies of the attached files can be eliminated. 1) unset MIME_MAIL->_parts after msg_body is assigned in program/steps/mail/ 2) create a $data variable in program/includes/rcube_sendmail and do a call time pass by reference into SMTP_CONN->send, then preg_replace will store a reference. It would be more appropriate to change the function definition of data in Net/SMTP.php to recieve the variable by reference.

These two techniques will save having two copies of the mime attachments in memory, reducing the php memory overhead for attachments to only 2 x total attachment size + ~3 megs. instead of 4x total attachment size + ~3 megs.

#1484103 multibyte functions in RoundCube Bugs 5 0.1-rc1 PHP backend

RC should use multibyte functions to avoid bugs caused by manipulating strings

#1484125 Date header generated by is not RFC compliant Bugs 3 0.1-rc1 PHP backend

Date header generated by is not RFC compliant Please change:

compose headers array $headers = array('Date' => date('D, j M Y G:i:s O'),


compose headers array $headers = array('Date' => date('D, j M Y H:i:s O'),

#1484141 Quoted text not wrapped properly when replying to an HTML email in plain text. till Bugs 10 - Lowest 0.4-beta PHP backend

If I reply to an HTML email in plain text the quoted text doesn't get wrapped properly; occasionally a word will appear on a line by itself when there wasn't a line break. If I reply to an html email in HTML the text gets wrapped properly, and if I reply to a plain text email in plain text it works too. If necessary I can supply you with a snippet of text that causes the problem. I'm currently using revision 380, I'm pretty sure I noticed this in 361 also. If you need any more info from me please let me know, and if there's somewhere else I should be submitting bugs you can let me know that too.

I sent this to the dev list and they asked me to log it here, so I'm doing so. Eric Stadtherr asked me for the snippet of text in question, if anybody else wants it let me know.

#1484159 Use global filters and bind username and password for Ldap searches. Feature Requests 5 0.1-rc1 PHP backend

Configure rcube_ldap to allow non-anonymous binding to the ldap server and the address book ldap search to use a global filter when searching through ldap. For example. Our ldap server requires that you bind with a username and password and has a bunch of dead users (much to my dismay) that we're not allowed to remove along with some accounts that just dont have email addresses. So I need it to connect using the filter: (&(status=act)(mail=*)(SEARCH TERMS HERE))

#1484165 Sendmail Error Bugs 5 PHP backend

When I try to send mail from RoundCube I receive the following error message in my mail log, "localhost [] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA". I am running Sendmail, and the error seems to be in the connection to the SMTP (sendmail) server.

The email is not sent, rather this error message occurs. From what I have been able to dig up, this seems to be a protocol error when communicating with the sendmail server (but I am definitely no expert on this).

#1484169 Faulty message count after renaming default folders. Bugs 4 PHP backend

Standard settings define 'Sent', 'Trash', 'Junk' as default folders, automatically created for users on login; great in an IMAP environment.

In a particular situation, the enduser also uses Microsoft Outlook in the office, and roundcube when on the go. Because Outlook can't junk/trash folder names other than its own hardcoded "Junk E-Mail", "Deleted Items", and "Sent Items" - it also creates those folders, resulting in 2 trash folders, 2 junk folders, and 2 sent folders - just with different names.

To solve this,, was edited to change the default names to match those used in Outlook, and these names were made the protected default names under each heading. For example: $rcmail_configjunk_mbox? = 'Junk E-mail';

Once the folder names match, Outlook will not create it's own.

BUG: Roundcube will correctly identify each folder itself; if user send a message the "Sent Items" folder will become bold with "(1)" indicating new messages. Even though the message status in is unread when in that folder. When the "Deleted Items" folder is highlighted, the command link at the bottom for "Empty" is still disabled. The faulty message count remains even after logout/login.

If I go into the "sent items" folder, and delete the message - the unread count for that folder remains at 1, despite being empty.

#1484175 svn access for me ;) thomasb Tasks 10 - Lowest 0.1-rc1 PHP backend

Thomas can you please provide me with svn access so I can commit changes. I've send you an email but didn't get any response yet so i thought that creating a ticket will be a good idea. Thanks.

#1484189 Specify database error in Feature Patches 5 0.1-rc1 PHP backend

It seems the only time people encounter the "1f4" (0x01F4) error is when RoundCube can't connect to their database or encountered a database error.

Here is a small patch to specify that error in to help point users in the right direction. It should help reduce the number of times people ask about the error.

#1484191 Changes for decode_mime_string and a subscription - patch Feature Patches 5 0.1.1 PHP backend


Some changes for use of the RC:

  • added removal of all blanks between lines MIME (function decode_mime_string)
  • removed bug, when if the folder contained a symbol ',' then the RC subscribed on two nonexistent folders (file the
#1484196 TinyMCE Spellcheck does not respect spellcheck_uri from estadtherr Bugs 5 0.2-beta PHP backend

The URL for the TinyMCE spellchecker plugin is hardcoded in program/js/tiny_mce/plugins/spellchecker/classes/TinyGoogleSpell.class.php

This setting should be pulled from the config, as happens in program/steps/mail/

The result is that even if someone has a local Nox spell server configured, when using the HTML editor the spell checking is still done via Google (which could be considered an information leak/security problem)

#1484200 For Thomas thomasb Feature Patches 5 PHP backend

Thomas, hello,

You have changed a part of a code:

- $body = preg_replace('/(<[^!][^>]*?\s)(on\w+?)(=[^>]*?>)/im', '$1__removed=$3', $body); 
+ $body = preg_replace('/(<[^!][^>]*?\s)(on[^=]+)(=[^>]*?>)/im', '$1__removed=$3', $body); 

Test example:

<img src="..." alt="Picture on test page"/>

The text which will be destroyed...

<a href="Thanks"> It is safe, but incorrectly </a> 

Result after parsing:

<img src="..." alt="Logo __removed=="Thanks"> It is safe, but incorrectly </a> 

It is possible to use:

+ $body = preg_replace('/(<[^!][^>]*?\s)(on[^=>]+)(=[^>]*?>)/im', '$1__removed$3', $body); 


+ $body = preg_replace('/(<[^!][^>]*?\s)(on[^\W\S]+)(=[^>]*?>)/im', '$1__removed$3', $body); 

#1484220 headers already sent in ... on line 143 .. Bugs 5 0.1-rc1 PHP backend

The following is constantly being spewed into apache's error_log:

[Tue Jan 09 15:20:30 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0, referer: https://intra/rcm/ [Tue Jan 09 15:20:30 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0, referer: https://intra/rcm/ [Tue Jan 09 15:20:59 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in /var/www/htdocs/rcm/program/include/ on line 143, referer: https://intra/rcm/?_task=mail&_action=compose [Tue Jan 09 15:20:59 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0, referer: https://intra/rcm/?_task=mail&_action=compose [Tue Jan 09 15:20:59 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in Unknown on line 0, referer: https://intra/rcm/?_task=mail&_action=compose

This looks similar to #1483926 but even with that applied this happens, just less ;) This is with Apache 2.2.3, PHP 5.2.0, MySQL 5.0.27 on Centos 4.4.

HTH. I'll gladly provide more information if necessary.

#1484226 Service Not Available - Php.ini , .htacces, and phpsuexec Bugs 10 - Lowest PHP backend

I'm having a problem I believe with the php_values on my server. I've been told by my hosting guys that I need to remove the php_values from my .htaccess and put them into a php.ini file because on our server we run phpsuexec. Well I did this and now I just get Service Not Available.. can anyone help? Am I doing something wrong possibly? It's a brand new installation, not via Cpanel, b/c I don't think it's available on their cpanel.

Do I need to direct something to look at php.ini ? Is there a way around these variables?

#1484236 gzip compression gets enabled especially if you have disabled it in php.ini till Bugs 2 0.1-stable PHP backend

Found in index.php:109:

if (function_exists('ob_gzhandler') && !ini_get('zlib.output_compression'))




Translated it means that if the function exists (php was compiled with zlib) and zlib.output_compression is _OFF_ (see for ini_get() return value semantics) we continue with gzip compression.

See if you are interested in why this is bad; to summarize the resulting mess is that users on shared workstations (reception, etc.) start seeing each others emails as long as the UID is the same between inboxes.

Patch follows.

Also bug #1484221 is related to this, there is another way user messages can get cached.

#1484238 Problem with forwarding Messages till Bugs 1 - Highest PHP backend

Hi I have a problem with forwarding messages. The status bar on top appears an runs about a minute and it never turns to green and the mail isn't send.

The strange thing is that I have no problems with sending a new mail or replying an excisting message.

I searched every forum and bug report that I've found and never seen a similar problem. Would be nice if you can give me an advice.

#1484244 PATCH: $rcmail_config['virtuser_callback'] Feature Patches 5 0.4-beta PHP backend

It would be very useful to be able to provide callbacks in the config which can perform the user2email and email2user functions. The patch I will attach in a second against revision 445 should do this.

Example Callback Function

 function my_virtuser_thing($user = NULL, $email = NULL)
     // ... stuff to set $email based on $user
     return $email;
     // ... stuff to set $user based on $email
     return $user;

#1484245 Bug with lowercase and uppercase folder names (when set as default folder) + Solution Bugs 5 0.1-stable PHP backend

Hi I've found a bug with folder listing: When u have 2 folders called: Folder1 and folder1 and Folder1 is set in the config as default_folder, then it will not be displayed in the folder list. Solution: roundcube/program/ find function " function _sort_mailbox_list($a_folders)" and change:

if ($p = array_search(strtolower($folder), $this->default_folders_lc) !==FALSE)

into this:

$p = array_search(strtolower($folder), $this->default_folders_lc); if ($p !==FALSE && $this->default_folders[$p]==$folder)

#1484251 Allow ; separation in To field Feature Requests 6 0.1-rc1 PHP backend

It would be great if when the user type user1@…;user2@…

in the To field , the system automatly transforms it in :


so the SMTP server accept the message ..

PS : wonderful open source projet !

#1484256 Big (more than ~1.8mb) attachments are failing to download to browser till Bugs 5 0.2-beta PHP backend

Steps to reproduce:

  1. Open a mail in roundcube with 4mb attachment
  2. Click on the attachment
  3. The attachment is downloading


  1. The size of the downloading file is not known to the browser
  2. The download speed degrades until the download reaches about 1.6mb
  3. At about 1.6mb downloading stops, server side closes connection

Expected results:

  1. Content-length is supplied so that the browser and the user can be sure about the download consistency
  2. Download speed is constant
  3. Attach downloads fully.

Tested on:

  1. The latest roundcube from svn
  2. Different internet connections (all broadband, all direct, no proxy)
  3. Different browsers
  4. Different messages
  5. Server: Linux, Apache 2.0.55, PHP 5.2.0

Please let me know if you need further input or repeatable test case.

#1484268 php_flag register_globals on Feature Requests 5 0.1-rc1 PHP backend

I have just come from a server that had the register_globals flag turned off. And I hear it is becoming mroe common.

It might be a good idea to add the following to the .htaccess file in root

php_flag	register_globals	on

#1484270 htaccess and error logging Feature Requests 5 0.1-rc1 PHP backend

Whats the use of these three lines in the .htaccess file in root when these are also set in the index.php file and loaded from as variables. Does this mean that error logging is always on?

This variable needs to be set on 1 location only

php_flag	display_errors	Off
php_flag	log_errors	On
php_value	error_log	logs/errors

#1484276 Error deleting draft when sending message Bugs 7 0.1-rc1 PHP backend

I'm getting the error below when sending a message that has been auto saved in the draft folder. The message is also not sent.

IMAP Error: Could not delete message from Drafts in /program/steps/mail/ on line 0

#1484277 Footer gets inserted at the wrong place Bugs 1 - Highest PHP backend

In, line 217, the output is converted to lowercase to find the last occurrence of </body> or </html>. The footer is then inserted at this position in the original output string.

The problem is that the position in the lowercase string is different from the original, perhaps because of some Unicode issue. This leads to a javascript being inserted at the wrong place in the compose form (in the middle of </script>), making it impossible to send mail.

The quick and dirty solution is to insert some extra line feeds before </body> in skins/default/templates/compose.html

Fixing it probably involves ditching strrstr() and using regular expressions in stead.

#1484280 Call to a member function fetchRow() on a non-object Bugs 5 0.1-rc1 PHP backend

In the file the functions fetch_assoc() and fetch_array() are not written correctly. It generates errors in the log if the $result is not a resource.

Here is a patch for it:

function fetch_assoc($res_id=NULL)
  if ($result = $this->_get_result($res_id))
    return $this->_fetch_row($result, DB_FETCHMODE_ASSOC);
    return FALSE;

function fetch_array($res_id=NULL)
  if ($result = $this->_get_result($res_id))
    return $this->_fetch_row($result, DB_FETCHMODE_ORDERED);
    return FALSE;
#1484281 array_merge(): Argument #2 is not an array Bugs 5 0.1-rc1 PHP backend

There are some errors in my log raised from the file on line 880. The reason is that the search() method could return FALSE value which can't be used as second argument in the array_merge PHP function.

Here is a patch for it:

foreach ($criteria as $crit)
  if($search_result = $this->search($mbox_name, $crit, $str, $charset))
    $results = array_merge($results, $search_result);
#1484282 PHP attachments are interpretated Bugs 5 PHP backend

If you open an email with a .php o .inc file attached, that file is interpretated by Roundcube, at least the comment part. I've not tested it very deeply, but maybe you can even execute code, but I'm not sure about this... anyway if there is such an attachment the mail preview is displayed wrongly, so something is happening.

#1484287 attachment problem thomasb Bugs 2 PHP backend

I have a problem with attachments not showing. For example: someone forwarded a mail containing a 887k attachment, I click on email to read, his no open, open web site in blank.

#1484288 feature to use server's time zone offset and daylight saving time setting Feature Requests 5 0.1-rc2 PHP backend

i wanted roundcube to get it's time zone offset and DST setting from the OS - in the interest of having one less place to maintain those settings, so i added the below code to i'm certain it belongs elsewhere and should probably be done differently, but i thought the concept would be worth suggesting.

// custom code to pull dst setting from server
if (date(I) == 1) {
   $cst_dst = 'TRUE';
   } else {
   $cst_dst = 'FALSE';

// custom code to pull time zone offset from server
$cst_tz = date(O);
$cst_tz = substr($cst_tz, 0, strlen($cst_tz)-2);
if (date(I) == 1) {

// use this timezone to display date/time
$rcmail_config['timezone'] = "$cst_tz";

// daylight savings are On
$rcmail_config['dst_active'] = "$cst_dst";
#1484289 groups in To: won't send thomasb Bugs 6 0.4-beta PHP backend

When trying to send a message to a group. Sending fails

example To: webmaster:webmaster@domain.ext,postmaster@domain.ext;,somebody@domain.ext

Trying to send a message with that to: header gives an error. According to standards it should work!

#1484291 Licencing issue and possibly wrong encryption algorithm in - patch provided Bugs 7 0.1.1 PHP backend

Hi all !

roundcube is a great webmail, congratulations for this software and many thanks !

However, there is licence issue with your sources. While they are claimed as GPL, which is not the case for all individual files (1), the files does not have any clear licence.

We came to this while preparing a package for debian, and we discovered that there is at least one requirement to modify the file, which is to post changes on the initial webpage it was found. While I agree this can be understood as a minor issue, debian has to be very strict about what's free or not. If we were to keep this file, roundcube would be distributed as non-free which would be a shame for all your great open source work for sure !

So, Vincent, the other co-packager has tried to contact the author of but did not get any answer. He then decided to work on an alternative. And he did this using another free implementation of the des algorithm. Also, while doing this he discovered that despite being claimed as triple des, the encryption done by does not match his triple des implementation, neither does it match libmcrypt implementation, which gives the same result has for Vincent's implementation. So, encryption does not even seem to be the one claimed..

We will definitly use this change for our debian package, and we would be very happy that you apply this to your code as well, it would help a lot our packaging work later on..

I'll attach the patch.


 - googiespell from, MIT license
 - lib/ from, GPL license
 - lib/utf8.class.php from Alexander Minkovsky, public domain
 - lib/{enriched,icl_commons,imap,mime,utf7}.inc from IlohaMail project, GPL license
 - lib/encoding/*.map from Unicode, Inc., with "BSD-lite" license


#1484295 Bug in clearing message cache Bugs 5 0.1-rc2 PHP backend

Checking the messages table in DB I saw that the last message in every mailbox get never inserted in DB. More precisely it is inserted and then it's immediatly deleted with a call to the function clear_message_cache(). The problem resides in the _list_headers() function in the file I fixed this problem changing the line 584:

$this->clear_message_cache($cache_key, $max + 1);
#1484297 Daylight saving Bugs 5 PHP backend

Is daylight saving option intended as switch +0/+1 to the user timezone? Or it has to calculate automatically if daylight saving is applicable or not?? In this case in the file program/include/ the line 1713 has to be corrected


  // get user's timezone
  $tz = $CONFIG['timezone'];
  if ($CONFIG['dst_active'])


  // get user's timezone
  $tz = $CONFIG['timezone'];
  if ($CONFIG['dst_active'])
    $tz += date('I');
#1484306 Small error in function get_offset_time Feature Patches 5 0.1-rc1 PHP backend

Essentially $rcmail_configmessage_cache_lifetime? in the config file can never be set to a value in minutes because the get_offset_time function checks for units of "h" twice but never units of "m".

--- program/include/    Thu Mar  1 15:40:00 2007
+++ program/include/        Tue Mar 27 20:23:04 2007
@@ -1565,7 +1565,7 @@
       $amount *= 24;
     case 'h':
       $amount *= 60;
-    case 'h':
+    case 'm':
       $amount *= 60;
     case 's':
       $ts += $amount * $factor;
#1484310 New messages not shown in the message list Feature Patches 5 0.1-rc1 PHP backend

I think everyone is familiar with this one - you check for new mail, the folder pane gets updated with e.g. "INBOX (2)" but the message list doesn't show the new messages until you switch to another folder and then back to the INBOX. Disabling message caching is the usual suggestion for fixing this. New message checking is handled in program/steps/mail/ by calling the messagecount function. The third argument to the function determines whether to force bypassing of the message cache or not. I notice that when checking for recent messages the cache is bypassed (line 30). When getting the number of unread messages, the cache is bypassed (line 33). When getting the count of total messages, the cache is not bypassed (line 32). This count of total messages is used later to load the new headers into the message list (lines 42-47) - using the non-updated count from the cache prevents any new headers from being loaded. Forcing the cache to be bypassed for getting the total count fixes the problem of new message headers not showing up when new messages arrive.

There is then the problem of the message count in the lower right corner not getting updated (e.g. "Messages 1 to 40 of 77"). This is a similar problem, but this time of the rcmail_get_messagecount_text function in program/steps/mail/ not supporting forcing a bypass of the cache. This can be accommodated by adding a parameter to the function, and making sure the cache in bypassed when calling rcmail_get_messagecount_text from

--- program/steps/mail/    Wed Aug  2 18:05:42 2006
+++ program/steps/mail/       Thu Mar 29 09:54:00 2007
@@ -28,14 +28,14 @@
   if ($mbox_name == $IMAP->get_mailbox_name())
     if ($recent_count = $IMAP->messagecount(NULL, 'RECENT', TRUE))
-      $count = $IMAP->messagecount();
+      $count = $IMAP->messagecount(NULL, NULL, TRUE);
       $unread_count = $IMAP->messagecount(NULL, 'UNSEEN', TRUE);

       $commands .= sprintf("this.set_unread_count('%s', %d);\n", addslashes($mbox_name), $unread_count);
       $commands .= sprintf("this.set_env('messagecount', %d);\n", $count);
-      $commands .= sprintf("this.set_rowcount('%s');\n", rcmail_get_messagecount_text());
+      $commands .= sprintf("this.set_rowcount('%s');\n", rcmail_get_messagecount_text(NULL, NULL, TRUE));
       $commands .= sprintf("this.set_quota('%s');\n", $IMAP->get_quota());

       // add new message headers to list
       $a_headers = array();

---    Sun Mar 18 14:46:03 2007
+++ /usr/local/apache2/htdocs/program/steps/mail/       Thu Mar 29 01:13:52 2007
@@ -691,24 +691,24 @@
   return $quota_text;

-function rcmail_get_messagecount_text($count=NULL, $page=NULL)
+function rcmail_get_messagecount_text($count=NULL, $page=NULL, $force=FALSE)
   global $IMAP, $MESSAGE;

   if (isset($MESSAGE['index']))
     return rcube_label(array('name' => 'messagenrof',
                              'vars' => array('nr'  => $MESSAGE['index']+1,
-                                             'count' => $count!==NULL ? $count : $IMAP->messagecount())));
+                                             'count' => $count!==NULL ? $count : $IMAP->messagecount(NULL, NULL, $force))));

   if ($page===NULL)
     $page = $IMAP->list_page;

   $start_msg = ($page-1) * $IMAP->page_size + 1;
-  $max = $count!==NULL ? $count : $IMAP->messagecount();
+  $max = $count!==NULL ? $count : $IMAP->messagecount(NULL, NULL, $force);

   if ($max==0)
     $out = rcube_label('mailboxempty');

I haven't noticed that these changes break anything else, hopefully they will prove useful.

#1484321 Attachments problem thomasb Feature Patches 5 0.1-stable PHP backend

When an e-mail is sent by Mozilla Thunderbird with attachment filenames within special characters (like çâãó), the roundcube just don't show it in show page, but say theres an attachment when seen in e-mails list.

I has tested too many ways and attachment's names, and i think has discovered whats wrong.

When sending e-mails from thunderbird with special characters, it convert the filename to ascii! (something like %44%25%35%22...)

Then the roundcube can't show!

But i'm not able to fix it. :(

Is there someone saying about same problem, but him didnt explain correctly ( and the post got tagged as duplicated.

So is there any possibility to make the roundcube read ascii filenames?

I'm not 100% sure thats the real problem, or is the one problem about that, but i think its.

Thanks very much, i hope can help.

#1484324 foreach error Bugs 1 - Highest 0.1-rc2 PHP backend

Hey, I am using the SVN version of RoundCube and I have a small problem with the program/steps/mail/ in line 39: I get the following PHP error:

PHP Warning: Invalid argument supplied for foreach() in /path_to_roundcube/program/steps/mail/ on line 39

The file is uploaded into the temp/-Directory, but is not attached at the mail and it is not displayed under the attachments. I use PHP 5.2.1 with the Suhosin Patch 0.9.18 under Gentoo Linux and it's not a "Safe Mode"-Problem. Can somebody help me? thx 4 help. lommy

#1484325 virtuse login creates new users every logon Bugs 5 PHP backend

Using the virtuser_file option roundcube detects the right username successfully. The problem is that roundcube creates every login a complete new user in the database when loggin on with an email. (So the user's preferences can't be used)

Loggin on with the username works properly and the system uses the existing user.

#1484332 manage_folders uses all memory Bugs 10 - Lowest PHP backend

when i press "select folders" in the configuration pages i got a empty page and this error in the log:

[15-Apr-2007 20:04:46] PHP Fatal error: Allowed memory size of 251658240 bytes exhausted (tried to allocate 10735734 bytes) in /home/www/roundcubemail/program/steps/settings/ on line 178

i tried to increase the memory twice and still fails...

i'm using svn version 541.

#1484338 Folder tree sort order Bugs 3 0.1-rc2 PHP backend

I noticed that Folder sort order in the Folders tree is a little broken.

Currently sort order is upper case folders first (A B C) etc sub-sorted alphabetically and then lowercase folders (a b c) also sub-sorted alphabetically.

This leads to:

Folder Tree:

Apple Berry Candy anteater beaver clam

Surely the right sort order should be:

anteater apple beaver Berry Candy clam

This is in the 0.1 beta release 2.

I have tracked this issue down to the following function (in program/include/

function _sort_mailbox_list($a_folders);

with the following sorts:


Changing the following (in program/include/




Fixes this issue.

#1484339 RoundCube and performance Tasks 5 0.2-alpha PHP backend


Since RoundCube behaves rather poorly on my machine, I decided to find out what takes it so long.
At first I thought it might be network related, but a bit of tcpdump sniffing at the server side showed it's not - a single HTTP request for fetching messages list is processed for about 4-5 seconds by the server.

It's not the IMAP server that's slowing down either - Dovecot responds nearly instantly even for sorting requests in mailboxes filled with about 2000 messages (Wireshark screenshot with packet times attached).

I did some profiling using Xdebug, which highlighted some bottlenecks in the code. Results attached - best viewed with KCacheGrind (Linux, KDE) or WinCacheGrind (Windows).

While being profiled, the script executed about 5 times longer, so the whole transaction took about 22 seconds. But still the proportions of timings are very informative.

I think here is some place for improvements:

  1. rcube_imap->_list_headers sorts messages even though IMAP server has sorting capabilities.
  2. rcmail_js_message_list generates the JavaScript code utilising some highly complicated and inefficient quoting routines that occupy CPU most of the time (see rep_specialchars_output).
  3. RoundCube could use the capabilities advertised in the IMAP greeting response if the server does provide them. That would save one request to the server, although this doesn't have that much impact on speed, especially on local installations.

The tests were taken on a Celeron 366 MHz machine which is rather of the antique kind, nevertheless RC could be faster just to defer high loads, regardless of the server speed. My RC was configured to list 40 messages per page.

Hope this will at least inspire someone to think of optimisation.

#1484358 Installation Help Lansinq Bugs 8 PHP backend

Hey guys Great program.

I have installation problem though and really need some help.

First Off all files have been upload and installed on the server and the install has been executed, however when I log into the site to open roundcube I get this error:

Warning: main(include/ failed to open stream: No such file or directory in /home/content/L/a/n/Lansinq/html/Mariomail/index.php on line 79

Fatal error: main(): Failed opening required 'include/' (include_path='/home/content/L/a/n/Lansinq/html/Mariomail/:/home/content/L/a/n/Lansinq/html/Mariomail/program:/home/content/L/a/n/Lansinq/html/Mariomail/program/lib:.:/usr/local/lib/php') in /home/content/L/a/n/Lansinq/html/Mariomail/index.php on line 79.

To help with this our server details are as follows:

ftp: ftp password: Oct1098

I am not very good with scripts or php and would really like to get this running on our site.

I am sure I have some wrong coding in their some where

The data base is all setup and on the server

Please let me know if there is more info you need from me



#1484361 html2text better results Feature Requests 5 later PHP backend

the current HTML2Text is a little bit buggy and gives approximate results, furthermore it haven't changed for a while.

I personnaly use the very good library.

It converts the HTML to Markdown, and it also includes a Markdown 2 HTML conversion.

I think it could be a really good alternative to the actual HTML2text implementation.

I hope my ticket is valid.

#1484379 $rcmail_config['imap_root'] = ''; doesn't work correctly Bugs 5 0.1-rc2 PHP backend

I am using recently released rc1.


only list folders within this path
$rcmail_config [ ' imap_root ' ] = ' ' ;

Putting anything there (like 'mail') does not make RC to list only the contents of the "mail" folder, but shows the entire ~/ folder in Settings->Folders. What's more, putting anything instead of leaving it blank makes the list not to show the first letter (or some of the first letters) of files and folders listed there.

I also installed the nightly-svn build (18th March) and it doesn't give the same problem.

#1484382 Problems sending an e-mail in plain-text Bugs 8 PHP backend

If I'm not wrong, there is annoying bug displaying e-mail in plain-text; This is the header:

Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit

Test E-mail

Test E-mail

Test E-mail

And here is attached how it is displayed. So, seems that plain text isn't displayed well, isn't it? What's wrong?

#1484394 sqlite does not support UNIX_TIMESTAMP Bugs 7 PHP backend

sqlite does not support UNIX_TIMESTAMP call, hence this fails in current code..

However, using the external function hook, you can axtend sqlite to support this function, see patch attached..

#1484397 Cannot send message without text in it thomasb Bugs 5 0.1-rc2 PHP backend

If you compose a message with nothing in it or just one or more attachements and no text Roundcube will not send it. You can push the Send button all you want but it will stay in the compose message screen.

#1484402 First name, last name (surname) in LDAP contacts Feature Patches 5 0.1-rc2 PHP backend

Currently (RC1) contacts fetched from LDAP do not include first name nor last name (only common name and e-mail address). The following patch adds these two fields:

---      2007-05-18 15:11:22.000000000 +0200
+++   2007-05-26 22:33:39.000000000 +0200
@@ -202,6 +202,8 @@ $rcmail_config['mail_header_delimiter']
  *  'search_fields' => array('mail', 'cn'),  // fields to search in
  *  'name_field'    => 'cn',    // this field represents the contact's name
  *  'email_field'   => 'mail',  // this field represents the contact's e-mail
+ *  'firstname_field' => 'givenName', // this field represents the contact's first name
+ *  'surname_field' => 'sn',    // this field represents the contact's last name
  *  'scope'         => 'sub',   // search mode: sub|base|list
  *  'filter'        => '',      // will be &'d with search field ex: (status=act)
  *  'fuzzy_search'  => true);   // server allows wildcard search

It should work with most common LDAP addressbook schemas.

#1484406 0.1-rc1.1 Patch Feature Patches 5 0.1-rc2 PHP backend
  • Fixed buggy imap_root settings (closes #1484379)
  • Prevent default events on subject links (#1484399)
  • Typo in

To apply this patch, simply cd to the RundCube directory and then type

patch -p0 < rc1.1-patch.diff
#1484409 patch against a "warning" issued by fread() in thomas Feature Patches 5 0.1-rc2 PHP backend

A patch for, reason is, when you load an empty template (yes it happens ;-)), you get a nasty warning because of the filesize, which is 0.

      // include a file
      case 'include':
        $path = realpath($this->config['skin_path'].$attrib['file']);
        if (($tpl_filesize = filesize($path)) == 0) {
            return $this->parse_xml('');
        if ($fp = @fopen($path, 'r'))
          $incl = fread($fp, $tpl_filesize);
          return $this->parse_xml($incl);
#1484410 /www/workspaces/till/sites/webmail/program/localization/de_DE/ estadtherr Bugs 5 0.1-rc2 PHP backend

There is a strange character on line 1 in which leads to the following error:

Warning: Cannot modify header information - headers already sent by (output started at /www/workspaces/till/sites/webmail/program/localization/de_DE/ in /www/workspaces/till/sites/webmail/program/steps/mail/ on line 26
#1484415 Auth LDAP using IMAP credentials - review Feature Patches 5 0.2-stable PHP backend


The subject says it all.

In my RC install my LDAP server requires authentication to view contact info. It is the same LDAP that authenticates the IMAP and thus the logins for it vary from user to user.

I've added %u and %p substitutions into the bind_dn and bind_pass arguments.

Works for me!

#1484420 [PATCH] US-ASCII messages containing non-ASCII characters get truncated Bugs 5 0.1-rc2 PHP backend

If a message claiming "Content-Type: TEXT/PLAIN; charset=US-ASCII" somehow contains a non-ASCII character like a “, the message will be truncated at the first non-ASCII character. I'm sure this applies to other character sets as well, not just US-ASCII.

For example if the body contains "This program deals with listening, the “forgotten skill,” and how it impacts our lives. It will include a number of exercises, role plays and games. It addresses topics such as comprehension, body language and tune-out.", it will be truncated to "This program deals with listening, the ". No doubt the inclusion of the non-ASCII character is a violation of RFCs 822 and 2045, however RoundCube should be more forgiving.

The problem occurs in the rcube_charset_convert function in program/include/ iconv just stops when it encounters a character in a character set that shouldn't be there. There is a parameter to iconv to ignore such problems instead of stopping when they're encountered.

I propose the following patch to avoid truncated messages due to invalid characters unexpectedly appearing in a given character set.

---        Thu May 24 00:00:15 2007
+++    Mon Jun  4 00:16:40 2007
@@ -927,7 +927,7 @@

   // convert charset using iconv module
   if (function_exists('iconv') && $from!='UTF-7' && $to!='UTF-7')
-    return iconv($from, $to, $str);
+    return iconv($from, $to . "//IGNORE", $str);

   $conv = new utf8();
#1484422 Reply to an email does not work till Bugs 3 PHP backend

I reply to an email in my inbox. In the newly created email the recipient field is empty.

So it is just an open email with no recipient

#1484433 iso and utf8 problems Feature Requests 1 - Highest PHP backend


I have a problem when i try to change utf-8 charset to iso-8859-2. I need some special characters for hungarian language, but utf-8 not supported with other webmails in hungary, and i cant change to charset in all page of webmail to iso...

a tryed to modify /program/include/ :

if (!isset($rcube_languages[$lang]))

$lang = 'hu';

language has special charset configured if (isset($rcube_charsets[$lang]))

$charset = $rcube_charsets[$lang];


$charset = 'ISO-8859-2';

and index.php... but the success not fully .. some page use iso.. others like utf8..

outgoing messages like iso, but incomings only with utf8.. :(

I have absolutly no idea..

I cant see answer in faq,google, etc..

I very like roundcube so i hope anybody can help me...



#1484434 Adds HTTP_ACCEPT_LANGUAGE support - patch provided thomasb Feature Patches 5 0.2-beta PHP backend

Roundcube will change its locale on the login screen to the locale the browser that is loading roundcube advertises (as specified in $_SERVERHTTP_ACCEPT_LANGUAGE?). If new user roundcube will display content in language of locale users browser advertises and will set users language in dbase to advertised language when new user is created. If language pack of advertised language not installed, $CONFIGlocale_string? will be used as default.

This patch applies cleanly to roundcubemail-0.1beta2

Copied from, submitted by Scott MacNeill?

#1484437 php.ini session.auto_start = 1 == no logon & no message till Bugs 10 - Lowest 0.1-stable PHP backend

DotProject? recommends setting this on; so I did. Doing so allows login to authenticate; but returns user to logon screen instead of advancing to mail.

#1484458 [Patch] Fill address search-as-you-type shows escaped - patch provided Feature Patches 5 0.1.1 PHP backend

In cases where a contact exists with an apostrophe in his or her name, such as "Richard O'Neill <roneill@…>", the predictive search results that appear as you type the name into the Recipient field will show the name escaped with a backslash. For example, if "ric" is typed into the Recipient field, the drop-down search result will display "Richard O\'Neill <roneill@…>". I believe this started after Changeset 542, where lines 893-901 of program/steps/mail/ were:

if ($DB->num_rows($sql_result))
  $a_contacts = array();
  while ($sql_arr = $DB->fetch_assoc($sql_result))
    if ($sql_arr['email'])
      $a_contacts[] = format_email_recipient($sql_arr['email'], JQ($sql_arr['name']));
  $OUTPUT->add_script(sprintf("$JS_OBJECT_NAME.set_env('contacts', %s);", array2js($a_contacts)));

...and in Changeset 543 were changed to:

if ($result = $CONTACTS->list_records())
  $a_contacts = array();
  while ($sql_arr = $result->iterate())
    if ($sql_arr['email'])
      $a_contacts[] = format_email_recipient($sql_arr['email'], JQ($sql_arr['name']));
  $OUTPUT->set_env('contacts', $a_contacts);

While $OUTPUT->add_script had the effect of unescaping special characters that had been escaped in JQ($sql_arr['name']), $OUTPUT->set_env will in effect double-escape special characters, resulting in "Richard O
\'Neill" appearing in the "contacts" javascript environment variable, which displays as "Richard O\'Neill" in the Recipient field in the browser. So I'm wondering whether it's really necessary to call the JQ function at all now, since $OUTPUT->set_env seems capable of escaping special characters on its own?

--- program/steps/mail/        Fri May 18 08:00:14 2007
+++ program/steps/mail/    Wed Jun 27 22:55:18 2007
@@ -879,7 +879,7 @@
   $a_contacts = array();
   while ($sql_arr = $result->iterate())
     if ($sql_arr['email'])
-      $a_contacts[] = format_email_recipient($sql_arr['email'], JQ($sql_arr['name']));
+      $a_contacts[] = format_email_recipient($sql_arr['email'], $sql_arr['name']);

   $OUTPUT->set_env('contacts', $a_contacts);

#1484460 Ticket #1484422 still occurs in SVN trunk rev 630 till Bugs 9 0.1-stable PHP backend

Reply/forwarding emails still shows empty subject (except for the "Re: " part), as well as empty original sender's information under "Original Message". Here's the message source:

Return-Path: <>
X-Spam-Checker-Version: SpamAssassin 3.1.9 (2007-02-13) on tiara
X-Spam-Status: No, score=0.0 required=7.5 tests=none autolearn=ham
Received: (qmail 2462 invoked by uid 507); 29 Jun 2007 08:34:44 -0000
DomainKey-Status: good        
Received: from by tiara (envelope-from <>, uid 89) with qmail-scanner-2.01 
 (clamdscan: 0.90.2/3551.  
 Processed in 0.019942 secs); 29 Jun 2007 08:34:44 -0000
Received: from unknown (HELO (
  by with SMTP; 29 Jun 2007 08:34:44 -0000
Received: by with SMTP id k17so1258651waf
        for <>; Fri, 29 Jun 2007 01:34:41 -0700 (PDT)
DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed;; s=beta;
DomainKey-Signature: a=rsa-sha1; c=nofws;; s=beta;
Received: by with SMTP id v16mr2364332wal.1183106081279;
        Fri, 29 Jun 2007 01:34:41 -0700 (PDT)
Received: by with HTTP; Fri, 29 Jun 2007 01:34:41 -0700 (PDT)
Message-ID: <>
Date: Fri, 29 Jun 2007 15:34:41 +0700
From: Andryan <>
Subject: tes
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

#1484491 Patch to restrict how quickly a user can send email. Feature Patches 5 0.2-beta PHP backend

This patch adds a configuration option to limit how frequently a user can send email. If not supplied no limit is applied.

Index: config/
--- config/ (revision 14)
+++ config/ (working copy)
@@ -100,6 +100,9 @@
 // session lifetime in minutes
 $rcmail_config['session_lifetime'] = 1440; #1 day

+// how many seconds must pass between emails sent by a user
+$rcmail_config['sendmail_delay'] = 15;
 // session domain
 $rcmail_config['session_domain'] = "";

Index: program/localization/en_US/
--- program/localization/en_US/     (revision 11)
+++ program/localization/en_US/     (working copy)
@@ -41,6 +41,7 @@
 $messages['contactnotfound'] = 'The requested contact was not found';

 $messages['sendingfailed'] = 'Failed to send message';
+$messages['senttooquickly'] = 'You have sent too many messaages too quickly. Please wait a moment before sending this one.';
 $messages['errorsaving'] = 'An error occured while saving';
 $messages['errormoving'] = 'Could not move the message';
 $messages['errordeleting'] = 'Could not delete the message';
Index: program/steps/mail/
--- program/steps/mail/     (revision 8)
+++ program/steps/mail/     (working copy)
@@ -136,7 +136,18 @@

 /****** check submission and compose message ********/

+  {
+  if(intval($_SESSION['last_message_sent_at']) > time() - intval($CONFIG['sendmail_delay']))
+    {
+    $OUTPUT->show_message("senttooquickly", 'error');
+    $OUTPUT->send('iframe');
+    return;
+    }
+  $_SESSION['last_message_sent_at'] = time();
+  }
 if (!$savedraft && empty($_POST['_to']) && empty($_POST['_subject']) && $_POST['_message'])
   $OUTPUT->show_message("sendingfailed", 'error');
#1484501 PHP Warning: Cannot modify header information - headers already sent Bugs 5 PHP backend

By sending an e-mail the following PHP Warning occurs: [Sat Aug 04 14:08:14 2007] [error] [client] PHP Warning: Cannot modify header information - headers already sent in /usr/share/roundcubemail-0.1-rc1/program/include/ on line 154, referer:

#1484506 Attachment gone when restoring saved draft e-mail without body Bugs 5 0.1.1 PHP backend


first of all let me say that I appreciate your work! There seems to be a misshandling in the code, when restoring a draft e-mail whith an attachment but no text in the mail body: the attachment is gone (not listet on the left any more). I use "Create a new message", enter a recipient and add one attachment. I do not enter text in the mail body. Then I save the message with "Save this draft".

Going back to "E-Mail" on the top navi and selecting the Draft-Folder on the left displays the saved e-mail in the list with a paper-clip indicating, that there is an atttachment with the e-mail. But when I dobbleclick the e-mail it opens and the list of attachments on the left is empty.

I tried this with several different attachments of a small size -> same result.

When I look in the temp-directory on the web-server the attachment gets saved as - in this case rcmAttmnt1319tp. The attachment is in the temp-directory until I dobbleclick the formerly saved e-mail to open it again. Then the attachment disappears from the temp-folder.

Please note that this is working correctly when text is entered in th body of the e-mail: then the attachment gets displayed on the left after restoring the draft e-mail.

I looked through the open roundcube bugs but couldn't find a similar bug.

My system is a standard debian etch with PHP 5.2.0, Apache 2.2.3.

Thank you,

Regards Ralph

#1484517 App fails when magic_quotes_runtime is On in php.ini till Bugs 2 0.1-rc2 PHP backend

The app fails when magic_quotes_runtime is set on in php.ini (this is different to "normal" magic quotes on the get and post data). It looks like as the templates are read from file, all the double quotes within them are being escaped transparently with a backslash - the xhtml output then doesn't render. This problem can be fixed by issuing the command:

<?php set_magic_quotes_runtime(0); ?>

At some point during the initialisation. I've set a low priority as not many people have magic_quotes_runtime on, but it would be robust to protect against it.

#1484529 Config directive, temp_dir, does not support relative path under Windows till Bugs 5 0.2.2 PHP backend

It appears that using a relative path for temp_dir under Windows is not fully supported.

While Roundcube does function without an absolute path, some functions, such as attaching files fail intermittently without any errors.

For example, when attaching files the system would upload the attachment but when you hit send the message would be sent without any attachments.

Using an absolute path resolves the issue.

#1484549 Allow PHP code in skin templates thomasb Bugs 5 0.2-alpha PHP backend

Add a config parameter to let RoundCube execute PHP code in skin templates. This could be useful to include common headers/footers or to display dynamic values as requested in #1484405

#1484584 Integrate HTML Purifier Feature Requests 5 later PHP backend

Use instead of the internal functions to clean up HTML mail contents. Add the path to the installed package to config.

#1484586 Wrong mimetype attachment handling (source of PDF shown) Bugs 7 PHP backend

Hi, i don't know if it is already known (manfred posted a bug some months ago into the forum, but didn't got an answer) but i think there is a problem with attachment handling.

If i want to open, for example, a pdf file attached to a mail, i see the roundcube-preview page. But instead offering me to download the file, i see its binary contents inside the preview, which should not be the case.

I use the debian-packet (etch, Version: 0.1~rc1-1) of roundcube.

Thanks, Beni

#1484592 New sessions after login thomasb Bugs 1 - Highest 0.3-stable PHP backend

Each time after successful login roundcube tries creates new session:


You should remove it, because no info about login is saved there, or generate new session and then perform login routine!

#1484593 LDAP address book search doesn't work with a general filter set. till Bugs 5 0.1-stable PHP backend

Line 291 of program/include/

<       $filter = '(&('.$this->prop['filter'] .')' . $filter . ')';
>       $filter = '(&'.$this->prop['filter'] . $filter . ')';
#1484598 windows-1257 encoding problem Bugs 5 0.1.1 PHP backend

It does not correctly display message 20071009_203840_4

#1484615 Large msg attachments cannot be sent - and no error Bugs 5 later PHP backend

E-mail with an attachment bigger than 2.1MB is not sending. When I upload the file and push "Send" button the "Sending e-mail" message appears, but after a while it disappears and no other error or message is displayed even when Debug=4.. No errors in logs as well.

On My other server I have this problem with an attachment of 1.1MB already. The difference between servers is that on the one where I have this error at 1.1MB files i have larger PHP vars: upload_max_filesize = 100M and post_max_size = 110M

What Information could help you?

#1484629 Login fails when username has blanks in it till Bugs 5 0.1-stable PHP backend

The imap server that I validate against has usernames that are made up of FirstName? LastName?. When logging in with FirstName? LastName? validation fails but when the username is quoted it works "FirstName? LastName?".

#1484635 Subject error Bugs 1 - Highest PHP backend

First sorry for my poor english :)

When the subject line encoded in UTF-8 and the encoded string larger then 64 character, the subject line is broken. In this case the message header diplayed in the message body, and the sender displayed as Unknown.

#1484660 Attachment Excessive Memory Use Error till Feature Patches 5 0.4-beta PHP backend


I know tickets have been created about this before but I cant find the exact one and many of them seem to be lost in some kind of "dupicate of" hell. I thought it was probably easier to just start a new one. I applogies if I am repeating others informaiton but I cant find the previous tickets.

The amount of memory required to send an email with attachments seems to massivly out way the size of the attachments giving an error like:

"Fatal error: Allowed memory size of blah bytes exhausted (tried to allocate blah bytes)"

in the error log.

(thrown by the quotedata() function in program/lib/Net/SMTP.php)

Examples: required more than 64mb to send 7mb attachment or 25mb to send 5.5

More people are now reporting this on the forum (

I know that the attachment size limits (which I think only apply to individual files, not the combined size) and the php memory limits can be altered but i dont think this counts as a solution when the difference in requirements is so great

This still occurs in SVN890

Thanks and sorry again if I am repeating stuff but I cant track down the previos tickets which I know exist about this exact issue.

#1484687 No error given when attachment is larger than upload_max_filesize Bugs 5 0.1-stable PHP backend

When an attachment larger than the server's upload_max_filesize parameter is uploaded, no error is produced. An error appears in the server's error log, but the transfer of the attachment continues (so to the user, it looks as if the upload took place, because of the time it takes). The attachment is not added to the message, but there is no explicit error message warning the user that it will not be transmitted.

#1484691 drafted messages are asking for mdn confirmations thomasb Bugs 5 0.1-stable PHP backend

i used preview pane and tested with plain text/html editor. To reproduce:

  • Compose new message and check return receipt check box.
  • Press save to draft button
  • Go to drafts folder and select message: the return receipt confirmation dialog appears
#1484700 Authentication agains virtusertable fails beacuse of escape thomasb Bugs 5 0.1.1 PHP backend

I'm using roundcube for multidomain webmail hosting, with the login screen having to supply username/password/server. There is a bug authenticating users against /etc/mail/virtusertable. Users can't login to Roundcube because of a escape of the @ in that file. See:

[root@server]# cat /etc/mail/virtusertable user1@… user1\ user2@… user2\ user3@… user3\ [root@server]#

--This errors are logged: In /var/log/messages/ see that user couldn't be retrieved from virtusertable:

Dec 21 09:47:14 server dovecot: imap-login: Disconnected: method=PLAIN,,, secured

And in Roundcube error log:

[21-Dec-2007 10:14:03 +0100] IMAP Error: Authentication for user1\ failed (LOGIN): "a001 NO Authentication failed." in on line 0

So I have workarounded the problem with a cron that copies the /etc/mail/virtusertable and removes the escapes and use this cleaned file /etc/mail/virtusertable_no_escapes in $rcmail_configvirtuser_file? , and all works correctly.

How can I make roundcube clean that \ so i can use the system virtusertable and not my cleaned one?

System: Latest Roundcube version, Centos 5, Dovecot, Sendmail, php5.2.5, mysql5.0.22, Apache2.2.3

#1484730 Better native languages support, including russian and others thomasb Feature Patches 2 0.2-beta PHP backend

This patch give you easy way to provide localization of Roundcube for using in local environment. For example, in the Ukraine, in Russia and in other countries are widely used messages with headers encoded in Windows-1251 or KOI8-R. In this case after applying patch you should only specify in something like this:

$rcmail_config['locale_charset'] = 'CP1251';

By default ISO-8859-1 encoding are used, therefore for a non-cyrillic users there is no any visible changes. And developers of Roundcube can safely permanent apply this patch to the distributive. Patch is for revision 955 of svn-trunk. File should be placed in folder program/lib/encoding/ for KOI8-R support.

#1484759 Converting HTML entities to utf-8 for plain text MIME part till Bugs 5 0.1-stable PHP backend

(By: Jiri Kaderavek)

When composing messagewith HTML editor, all international characters are converted into HTML entities. Then, when sending this message, an alternative plain text MIME part is created. RoundCube should convert these HTML entities back to utf-8 for this plain text part. Tested with RC2.

Patch against program/steps/mail/ in trunk attached.

#1484775 Uploading big files till Feature Patches 5 0.1-stable PHP backend

I have fixed this error uploading big files:

PHP Warning:  Invalid argument supplied for foreach() in /var/www/htdocs/webmail/program/steps/mail/ on line 39

All I did was add this line before foreach:
if (is_array($_FILES['_attachments']['tmp_name']))

#1484806 New option to allow strftime to format dates Feature Patches 5 0.3-stable PHP backend

Hi. On my system (debian etch), I had the following in my config: $rcmail_config['date_long'] = 'D, M. j g:ia';

This resulted in the months being rendered like: "[feb]". I found that highly strange because I'd never seen that style of formatting. I was expecting "Feb".

From what I read in program/includes/, the problem seems to be that the php date() function doesn't provide localizations, so Roundcube is doing its own localization. But these localizations are different from the expected system ones. The comment suggested using strftime() instead, which does follow the system's rules.

Therefore, I created a new option for the config: $rcmail_config['date_format_style'] = 'strftime' or 'date' (default: 'date').

If it's set to 'date', then we'll use the current algorithm. If it's 'strftime', then we'll treat the strings like date_long and date_short as being in strftime format, and use that rather than the custom localizations.

I have a patch.

#1484820 Installer test of magic_quotes_gpc depricated in php ver 6 Bugs 5 0.1-stable PHP backend

The installer's check returned an error about wrong definition of magic_quotes_gpc BUT:

Quoting from


This feature is DEPRECATED and REMOVED as of PHP 6.0.0. Relying on this feature is highly discouraged.

#1484823 LDAP patch to remove double wildcards Bugs 5 0.1-stable PHP backend
--- program/include/      (revision 1141)
+++ program/include/      (working copy)
@@ -284,10 +284,16 @@
          $filter .= "($f=$wc" . rcube_ldap::quote_string($value) . "$wc)";
    $filter .= ')';
+    // avoid double-wildcard if $values is empty
+    $filter = preg_replace('/\*+/', '*', $filter);

    // add general filter to query
-    if (!empty($this->prop['filter']))
+    if (!empty($this->prop['filter'])) {
+      // remove trailing brackets
+      $this->prop['filter'] = preg_replace('/^\(|\)$/', '', $this->prop['filter']);
      $filter = '(&('.$this->prop['filter'] .')' . $filter . ')';
+    }

    // set filter string and execute search

Patch by Roy McMorran?, revised by Emanuele Rocca,

#1484829 LDAP and _some_ UTF-8 encoded chars cause trouble Bugs 5 0.3-stable PHP backend

Weird problem... I have the following two contacts on my LDAP server:

'cn=Jin 近 x' and 'cn=Jie 洁 x'

The encoding is the same for both, I can work with the contact entries like usual with, let's say, phpLDAPadmin.

When I lookup those contacts through RoundCube 1.0-rc2, I get the following in my OpenLDAP logs for the first:

Mar 4 07:53:17 c3po slapd[14093]: conn=1 op=0 SRCH base="cn=Jie 洁 x,ou=addressbook,dc=patrick-nagel,dc=net" scope=0 deref=0 filter="(objectClass=*)"


Mar 4 07:53:23 c3po slapd[14093]: do_search: invalid dn (cn=Jin �)

for the second. The '近' character gets somehow corrupted by RoundCube or something else, before it gets through to the LDAP server.

#1484848 roundcube 0.1-stable does not return to inbox when sending mail Bugs 10 - Lowest 0.2-beta PHP backend

I installed 0.1-stable from scratch on Debian etch, PHP 5.2.0-8+etch10, apache 2.2.3-4+etch4. When sending an e-mail, the message gets dispatched but the spinner never stops spinning and roundcube does not return to the inbox. It does not matter whether I define an smtp_server in the config or not. Found nothing fishy in the logs.

#1484850 Option to use syslog instead of log file Feature Patches 5 0.2-beta PHP backend

Hi. I'm continuing my quest to make standard services available in roundcube.

Here, I added an option to allow syslog logging, rather than simply writing to a file. Syslog can do anything, it's great. I left the 'file' driver as the default, though.

#1484851 output_handler = "ob_gzhandler" in php.ini results in PHP warning till Bugs 5 0.1.1 PHP backend

When output_handler = "ob_gzhandler" is set in php.ini, then PHP warnings are generated because roundcube still tries to use ob_start("ob_gzhandler"). See the attached patch.

#1484880 Attachments get corrupted on Ubuntu server 64bit 6.06.2 LTS Bugs 5 0.2-beta PHP backend

Running under Ubuntu server 64bit 6.06.2 LTS attachments uploaded via roundcube client get cut off. It looks as if the file is getting uploaded and no matter what the size of the attachment is, it uploads in under a second. It looks like the file is attached now and ready to be sent so then you send it. The recipient receives the email but the attachment is truncated. *The key here is that no matter what type of file it is, it is truncated to the first 8192 bytes!*

This doesn't appear to be a php memory setting as I've increased those. This is totally reproducible with a fresh install even under VMware. Try it!

FYI...Uploads work fine under CentOS 5.1.

#1484901 Automated emails from don't display dates Bugs 5 0.2-alpha PHP backend

As the summary says, e-mails sent from do not display anything in the "date" column, although they are sorted correctly. When viewing the message, the "Date:" field is also empty. When I view the raw headers, the date is obviously present. Here are the headers from an example message:

Return-Path: <>
Received: by (Postfix, from userid 1013)
	id 265497B9E; Fri, 14 Mar 2008 19:54:42 -0500 (CDT)
X-Spam-Checker-Version: SpamAssassin 3.2.3 (2007-08-08) on
X-Spam-Status: No, score=-2.7 required=5.0 tests=AWL,BAYES_00,
	RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=ham version=3.2.3
Received: from ( [])
	by (Postfix) with ESMTP id 617577B9D
	for <>; Fri, 14 Mar 2008 19:54:34 -0500 (CDT)
Received: from localhost (theschwartz [])
	by (TheSchwartzMTA) with ESMTP id 64c32a9b3792c1f10450fbd1835325740061068287;
	Sat, 15 Mar 2008 00:54:34 +0000 (UTC)
Content-Transfer-Encoding: binary
Content-Type: multipart/alternative; boundary="_----------=_120554247371831"
MIME-Version: 1.0
X-Mailer: MIME::Lite 3.01 (F2.72; A1.62; B3.04; Q3.03)
Date: Sat, 15 Mar 2008 00:54:33 UT
From: "x - LJ Comment" <>
Subject: Reply to your comment...
Message-Id: <>
In-Reply-To: <>
References: <> <>
X-Lj-Journal: x

I've also attached a screenshot showing what the main message list looks like.

#1484907 wrong use of ini_get() for zlib.output_compression value checking Bugs 5 later PHP backend

if (function_exists('ob_gzhandler') && !ini_get('zlib.output_compression'))

will not work properly while zlib.output_compression can be set to 'On' or 'Off'

Note: See TracQuery for help on using queries.