On Tue, 2005-02-01 at 09:03 -0700, Craig White wrote: > On Tue, 2005-02-01 at 09:35 -0600, Aleksandar Milivojevic wrote: > > Craig White wrote: > > > put the following line in /etc/imapd.conf > > > #sieveusehomedir: 1 > > > > > > and restarted cyrus-imapd and this didn't go over very well > > > > > > Feb 1 00:16:08 linuxserver sieve[17242]: can't use home directorieses > > > Feb 1 00:16:37 linuxserver master[17145]: process 17253 exited, status > > > 75 > > > Feb 1 00:16:37 linuxserver master[17145]: service sieve pid 17253 in > > > BUSY state: terminated abnormally > > > > > > OK - I'll byte - what's the trick? I'm finding that using sieve inside > > > the mystery that is cyrus is clumsy and was thinking that if I could > > > park the sieve files in home directories, things might be more > > > manageable. > > > > > > I was thinking that this might be a clue... > > > Feb 1 00:14:06 linuxserver lmtpunix[17213]: IOERROR: not a sieve > > > bytecode file /home/craig/.sieve > > > > > > but this came before the other > > > > > > Any clues? > > > > Maybe premissions? Remember, cyrus is not running as root, and unlike > > some other IMAP implementations, doesn't need to run as root. If you > > store anything in user's home directory, that file must be accessible by > > cyrus user. For the second problem, I guess you'd need to byte-compile > > your sieve script prior to placing it into .sieve. Dunno how to do that. > ---- > I was thinking that cyrus changed to user to do this work - ala > procmail. Just in case, my home directory was set to 777 and the perms > on /home/craig/.sieve were 644 - perhaps that needed to have write or > execute permission to all users. Wouldn't seem to need that though. > > The bytecode file clue means that apparently sieve does some juju on the > script before it drops it to it's resting point making the home > directory repository slightly less appealing as it was easy for me to > modify users procmail recipes by munging the file in their home > directory and sieve is going to require a new level of automation. I do > see files... > # ls -l /var/lib/imap/sieve/c/craig > total 24 > lrwxrwxrwx 1 cyrus mail 8 Feb 1 08:49 defaultbc -> > lists.bc > -rw------- 1 cyrus mail 5164 Feb 1 08:49 lists.bc > -rw------- 1 cyrus mail 3796 Jan 31 22:33 lists_pseudo.bc > -rw------- 1 cyrus mail 3572 Jan 31 22:33 > lists_pseudo.script > -rw------- 1 cyrus mail 4348 Feb 1 08:49 lists.script > > I wonder if I just adjust the 'lists.script' and restart cyrus-imapd or > some other command to do the juju on lists.script for lists.bc > (obviously the bytecode juju). I'll have to do this later as now I have > to run. > ---- > > > > Anyhow, I've been using Sieve for some time now, no problems. I'm not > > using anything in user's home directories (I've let Cyrus keep sieve > > scripts in his store, and installed smartsieve for script management), > > and had no problems with it so far. The only place where I allow Cyrus > > to interact with local accounts is password checking (where applicable, > > if there are local user accounts). This would make moving Cyrus IMAPD > > to dedicated (accountless) machine very simple. > ---- > I did download the smartsieve php stuff and played around with it and > managed to disable my script completely. Figured that I would understand > exactly what was happening with the sieve stuff first. lists_pseudo > above came from either smartsieve or the other web tool stuff I was > playing with (websieve.pl - a perl/cgi implementation). > ---- > > Hm, thinking of it, theoretically, I could even start running Sendmail > > as non-priviledged user (it doesn't need root priviledge to deliver mail > > anymore, I'd just need to sort out file permissions and ownership things > > on queue and db dirs/files). > ---- > I'll leave this as an exercise for you to do at this point - my plate is > full at the moment ;-) > > Thanks > > Craig > Craig, In /usr/share/doc/cyrus-imapd-2.2.10/install-sieve.html there is a mention that sieveusehomedir is incompatible with timsieved. Other references in that directory mention running sieve to possibly compile the script into byte code. I think something other than timsieved would have to run to process the script. Possibly from deliver. Otherwise I see the same errors as you. I'll look more into it when I get some free time. Bob...