autocreate.sieve doesn't work correct. temporary files

Bron Gondwana brong at fastmail.fm
Thu Oct 8 17:39:27 EDT 2015


Ok, thanks for the info.  I'll get a test case into Cassandane based on
your info so we can be sure it gets fixed.


On Fri, Oct 9, 2015, at 01:30, Artyom Aleksandrov wrote:
> Definitely no. It's just normal user
>
> grep '_admins:' imapd.conf #lmtp_admins: postman #mupdate_admins:
> mupdateman #imap_admins: cyrus #sieve_admins: cyrus
>
> On Thu, Oct 8, 2015 at 12:55 AM, Bron Gondwana
> <brong at fastmail.fm> wrote:
>> __
>> Is user 'root' an admin user?  Lots of things behave differently for
>> admins.
>>
>>
>> On Thu, Oct 8, 2015, at 01:04, Artyom Aleksandrov wrote:
>>> Hi, thank you for patch. But it does not work. (( First I guest we
>>> need NOT here (?)
>>>
>>> @@ -139,7 +138,7 @@ static int autocreate_sieve(const char *userid,
>>> const char *source_script)     }
>>>
>>> /* Check if sievedir is defined in imapd.conf */ -    if(!(sieve_dir
>>> = config_getstring(IMAPOPT_SIEVEDIR))) { +
>>> if(config_getstring(IMAPOPT_SIEVEDIR)) { And second creating are
>>> failing with follow logs (yes I use 'root' user for testing)
>>>
>>> Oct  7 16:54:10 imapsync cyrus/imap[4062]: User root, Inbox
>>> subfolders, created 4, subscribed 4 Oct  7 16:54:10 imapsync
>>> cyrus/imap[4062]: autocreate_sieve: Unable to create
>>> /var/spool/sieve/r/root/default.script.bc.NEW. Unknown error Oct  7
>>> 16:54:10 imapsync cyrus/imap[4062]: autocreate_sieve: User root,
>>> default sieve script creation failed No one files/folders are
>>> creating.
>>>
>>> On Tue, Oct 6, 2015 at 3:51 AM, ellie timoney <ellie at fastmail.com>
>>> wrote:
>>>> __
>>>> Hi Artyom,
>>>>
>>>> Yeah wow, this is really gross.
>>>>
>>>> I'm pretty sure the gibberish in those "??????Default.script.bc"
>>>> filenames is just whatever junk was in the (uninitialised)
>>>> sieve_script_dir variable.
>>>>
>>>> I've had a rummage around, and there's a user_sieve_path() function
>>>> in imap/user.c that does the heavy lifting of finding a user's
>>>> sieve script directory.  Looks like sieve_script_dir wanted to be
>>>> the result of that.  Your fix is on the right track. :)
>>>>
>>>> I've attached a patch for 2.5.x that fixes these paths using
>>>> user_sieve_path().  It also fixes the assumption that the sievedir
>>>> value will end in a "/", which it doesn't by default, and shouldn't
>>>> need to.  Can you try it out and see how it goes?  (The patch
>>>> should apply cleanly on any version of 2.5, this file has barely
>>>> changed since it was created.)
>>>>
>>>> The rest of the autocreate_sieve() function is pretty awful too --
>>>> there's almost certainly more bugs in there, and fixing the paths
>>>> might just shake them out.  I'd like to tidy this up significantly
>>>> (and make some test cases for it), but in the meantime hopefully
>>>> this will get you moving forward.
>>>>
>>>> Cheers,
>>>>
>>>>
>>>> ellie
>>>>
>>>>
>>>> On Tue, Oct 6, 2015, at 12:56 AM, Artyom Aleksandrov wrote:
>>>>> Guys I don't understand hot it can work.
>>>>>
>>>>> I added additional logging and found that sieve_script_dir is not
>>>>> defined. After adding this definition the problem gone.
>>>>>
>>>>>
>>>>> 147     /* Check if autocreate_sieve_compiledscript is defined in
>>>>> imapd.conf */ 148     if(!(compiled_source_script =
>>>>> config_getstring(IMAPOPT_AUTOCREATE_SIEVE_SCRIPT_COMPILED))) { 149
>>>>> syslog(LOG_WARNING, "autocreate_sieve:
>>>>> autocreate_sieve_compiledscript option is not defined. Compiling
>>>>> it"); 150         do_compile = 1; 151     } 152 153    char
>>>>> userletter[1]; 154    userletter[0]=userid[0]; 155
>>>>> snprintf(sieve_script_dir, MAX_FILENAME,
>>>>> "%s%s/%s/",sieve_dir,userletter,userid);
>>>>>
>>>>>
>>>>>
>>>>> On Thu, Oct 1, 2015 at 8:49 PM, Artyom Aleksandrov
>>>>> <mailing.list at tem4uk.ru> wrote:
>>>>>> Is it works? Which version do you use? Could you guest the reason
>>>>>> of the problem? How I can troubleshoot it?
>>>>>>
>>>>>> :/var/lib/cyrus# ls -la
>>>>>> total 2176 -rw-------  1 cyrus mail     124 Sep 25 16:04
>>>>>> ??????Default.script.bc -rw-------  1 cyrus mail     231 Sep 25
>>>>>> 16:04 ??????Default.script.script lrwxrwxrwx  1 cyrus mail
>>>>>> 17 Sep 25 16:04 ??????defaultbc -> Default.script.bc -rw-------
>>>>>> 1 cyrus mail     124 Jul  2 12:38 ??N???Default.script.bc -rw-------
>>>>>> 1 cyrus mail     231 Jul  2 12:38 ??N???Default.script.script
>>>>>> lrwxrwxrwx  1 cyrus mail      17 Jul  2 12:38 ??N???defaultbc ->
>>>>>> Default.script.bc -rw-------  1 cyrus mail     124 Sep 22 15:10
>>>>>> 0#?>??Default.script.bc -rw-------  1 cyrus mail     231 Sep 22
>>>>>> 15:10 0#?>??Default.script.script lrwxrwxrwx  1 cyrus mail
>>>>>> 17 Sep 22 15:10 0#?>??defaultbc -> Default.script.bc
>>>>>>
>>>>>>
>>>>>> On Thu, Oct 1, 2015 at 7:55 PM, Alvin Starr <alvin at netvel.net>
>>>>>> wrote:
>>>>>>> I use autocreate.
>>>>>>>
>>>>>>> So there is at least one.
>>>>>>>
>>>>>>>
>>>>>>> On 10/01/2015 12:18 PM, Artyom Aleksandrov wrote:
>>>>>>>> Does anybody use autocreate_sieve?
>>>>>>>>
>>>>>>>> On Sat, Sep 26, 2015 at 1:30 AM, Artyom
          Aleksandrov <mailing.list at tem4uk.ru> wrote:
>>>>>>>>>
>>>>>>>>> Hello,I want to create default sieve scipt for
                    all my users but I stuck with strange problem that
                    looks like the bug. Unfortunately I've never wrote
                    on C so it's difficult for me to find it.
>>>>>>>>>
                    When Cyrus (2.5.3 or 2.5.6) create default sieve
                    script it doesn't put file in sieve_dir/?/user
                    folder. It jist creates tmp files in configdirectory
                    with names like this
>>>>>>>>> -rw-------  1 cyrus
                    mail   124 Sep 26 00:41 ?&?P??default.script.bc
>>>>>>>>>
                    -rw-------  1 cyrus mail   231 Sep 26 00:41
                    ?&?P??default.script.script
>>>>>>>>>
                    lrwxrwxrwx  1 cyrus mail    17 Sep 26 00:41
                    ?&?P??defaultbc -> default.script.bc
>>>>>>>>>
>>>>>>>>> There are not checks in this stage so my syslog is
                  clean of error.
>>>>>>>>> Everything seems fine. Sep 26 00:41:34 imapsync
                    cyrus/imap[26117]: autocreate_sieve: Problem
                    opening compiled script file: default.script.bc.
                    Compiling it
>>>>>>>>>
                    Sep 26 00:41:34 imapsync cyrus/imap[26117]:
                    autocreate_sieve: Compiled sieve script was
                    successfully saved in default.script.bc
>>>>>>>>>
                    Sep 26 00:41:34 imapsync cyrus/imap[26117]:
                    autocreate_sieve: User XXXX, default sieve script
                    creation succeeded
>>>>>>>>>
>>>>>>>>> My setting: autocreate_sieve_script:
                    /var/spool/sieve/global/default.script
>>>>>>>>>
                    autocreate_sieve_script_compile: yes
>>>>>>>>>
                    autocreate_sieve_script_compiled: default.script.bc
>>>>>>>>>
                    sievedir: /var/spool/sieve/
>>>>>>>>>
                  Distributive: Ubuntu 14.04.3
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I'll be glad for any help. )
>>>>>>>>>
>>>>>>>>> Best regards, Artyom
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ----
Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info:
http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To Unsubscribe:
>>>>>>>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
>>>>>>>>
>>>>>>>
>>>>>>> --
Alvin Starr                   ||   voice: (905)513-7688[1] Netvel Inc.
||   Cell:  (416)806-0133[2] alvin at netvel.net              ||
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> ----
>>>>>>> Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info:
>>>>>>> http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To
>>>>>>> Unsubscribe:
>>>>>>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
>>>>> ----
>>>>> Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info:
>>>>> http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To Unsubscribe:
>>>>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
>>>>
>>>>
>>>> ----
>>>> Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info:
>>>> http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To Unsubscribe:
>>>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
>>> ----
>>> Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info:
>>> http://lists.andrew.cmu.edu/pipermail/info-cyrus/ To Unsubscribe:
>>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus
>>
>> --
>> Bron Gondwana brong at fastmail.fm
>>
>>
>>
>> ----
>>
Cyrus Home Page: http://www.cyrusimap.org/
>>
List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
>>
To Unsubscribe:
>> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

--
  Bron Gondwana
  brong at fastmail.fm
 
 


Links:

  1. tel:%28905%29513-7688
  2. tel:%28416%29806-0133
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.andrew.cmu.edu/pipermail/cyrus-devel/attachments/20151009/1cdba253/attachment-0001.html 


More information about the Cyrus-devel mailing list