The current sessionID is not unique enough; and doesn't identify the message neither. The usage of 'noheader.com' is rather ugly. I would propose to skip the caching if there is no messageID. There is no reliable way to generate a unique messageID for yourself; without querying the IMAP server to see if the message-ID doesn't exist yet
On Thu, 8 Dec 2005 09:04:11 -0500, Geuis Teses geuis.teses@gmail.com wrote:
Thomas, tell me if this is an adequate fix for this problem.
In program/steps/mail/func.inc:
$message_id = $headers->messageID;
if(!$message_id){ $message_id=$_SESSION['client_id']."@noheader.com"; }
$temp_dir = $CONFIG['temp_dir'].(!eregi('/$', $CONFIG['temp_dir']) ? '/' : ''); $cache_dir = $temp_dir.$_SESSION['client_id']; $cache_path = $cache_dir.'/'.$message_id;
I added: if(!$message_id){ $message_id=$_SESSION['client_id']."@noheader.com"; }
So, if there is no messageID specificed in the email, for caching purposes we set the value to the current session ID, with the appeneded @noheader.com, which isn't really necessary but is there for style.
On 12/8/05, Thomas Bruederli roundcube@gmail.com wrote:
Seems to be a problem reported earlier, when no message-ID is specified in the message headers. RC does not check this yet and the path for caching becomes incomplete.
Regards, Thomas
Pieter wrote:
I don't want to be a spoiler, but this does not look like a permision problem to me...
fopen(temp/1962c11578bbf49800aa6f6593f9f3af/) ^^ Check! It is trying to open a directory. And that's what the error
is
saying as well. But fopen cannot open directories, that explains the error. It looks like the filename is missing, or the last char should not be a "/".
phil schreef:
On Wed, 7 Dec 2005 12:24:12 -0500, Geuis Teses
wrote:
These are the errors: [...]
I asked if you had created the dirctories, but guess I didn't talk about user and group perms. what user is your webserver running as? what group is your webserver running as? for freebsd the answer is www and www. once you know these, you can set the user/group perms
on
temp and logs correctly. so with those (that may or may not be
yours)
and your PATH, it would look like:
chmod -R www:www /home/public_html/webmail/temp chmod -R www:www /home/public_html/webmail/logs
hth
P