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 <geuis.teses@gmail.com>
>> 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