autocreate.sieve doesn't work correct. temporary files
signaldeveloper at gmail.com
signaldeveloper at gmail.com
Mon Oct 5 23:29:53 EDT 2015
Where are the default sieve rules at? If I go into round cube there is a sieve group called round cube. Where is that at?
- Paul
> On Oct 5, 2015, at 8:51 PM, 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
>> Netvel Inc. || Cell: (416)806-0133 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
>
> <sieve-dir.patch>
> ----
> 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.andrew.cmu.edu/pipermail/info-cyrus/attachments/20151005/b02439a9/attachment-0001.html
More information about the Info-cyrus
mailing list