Re: [Dovecot] sieve - Sendmail process terminated abnormally, exit status 70

2008-08-13 Thread Steffen Kaiser

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Tue, 12 Aug 2008, Thomas Harold wrote:

Check out /usr/include/sysexits.h what exit code 70 means on your system - 
70 is internal software error in Linux. Then check when /usr/lib/sendmail 
will exit with this code.


Deliver will run /usr/lib/sendmail with the uid of the target mailbox, you 
said virtual user - so you've configured the id in dovecot.conf, I guess.


E.g. test with:

su vuser -c '/usr/lib/sendmail -i -f sender -- target-address' \
  testmail ; echo $?

Bye,

- -- 
Steffen Kaiser

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFIopCUVJMDrex4hCIRAohdAJ9qIoQx+XEHbz1vRvqCZP0bDzm2EQCfW61C
wvN3iYpFkPPk/v+xRfx0Mjk=
=N4J2
-END PGP SIGNATURE-


Re: [Dovecot] sieve - Sendmail process terminated abnormally, exit status 70

2008-08-13 Thread Christian Schmidt
Steffen Kaiser, 13.08.2008 (d.m.y):

 On Tue, 12 Aug 2008, Thomas Harold wrote:

 Check out /usr/include/sysexits.h what exit code 70 means on your system 
 - 70 is internal software error in Linux. Then check when 
 /usr/lib/sendmail will exit with this code.

 Deliver will run /usr/lib/sendmail with the uid of the target mailbox, 
 you said virtual user - so you've configured the id in dovecot.conf, I 
 guess.

I just had a similar problem caused by the fact that /usr/lib/sendmail
was missing. As I'm using exim as MTA, I created /usr/lib/sendmail as
a symlink pointing to the exim binary.

Regards,
Christian 

-- 
Q:  What's a WASP's idea of open-mindedness?
A:  Dating a Canadian.


Re: [Dovecot] sieve - Sendmail process terminated abnormally, exit status 70

2008-08-13 Thread Thomas Harold

Christian Schmidt wrote:

Steffen Kaiser, 13.08.2008 (d.m.y):


On Tue, 12 Aug 2008, Thomas Harold wrote:

Check out /usr/include/sysexits.h what exit code 70 means on your system 
- 70 is internal software error in Linux. Then check when 
/usr/lib/sendmail will exit with this code.


Deliver will run /usr/lib/sendmail with the uid of the target mailbox, 
you said virtual user - so you've configured the id in dovecot.conf, I 
guess.


I just had a similar problem caused by the fact that /usr/lib/sendmail
was missing. As I'm using exim as MTA, I created /usr/lib/sendmail as
a symlink pointing to the exim binary.


That was an excellent tip.  I started looking closely at 
/usr/lib/sendmail and following the link chain.  Which led me back to 
/usr/sbin/sendmail.sendmail.


Which is probably not the correct sendmail binary to be using when we're 
running postfix.  Apparently, back when I setup this server many months 
ago, I never installed or ran:


# yum install system-switch-mail
# system-switch-mail

Which switches the links around to point at sendmail.postfix.

Once I fixed that, I had to adjust SELinux properties to create a custom 
profile to allow the sendmail binary to do its work.


Thank you both for the pointers, everything is now working properly for 
vacation auto-responses.


(Oddly enough, the broken setup worked with Dovecot 1.0 - and only 
reared its head after we upgraded to Dovecot 1.1.)


[Dovecot] sieve - Sendmail process terminated abnormally, exit status 70

2008-08-12 Thread Thomas Harold

How do we start troubleshooting this?

deliver([EMAIL PROTECTED]): Aug 12 18:27:19 Error: Sendmail process 
terminated abnormally, exit status 70


deliver([EMAIL PROTECTED]): Aug 12 18:27:19 Info: sieve runtime error: 
Vacation: Error sending mail


deliver([EMAIL PROTECTED]): Aug 12 18:27:19 Info: 
msgid=[EMAIL PROTECTED]: saved mail to INBOX


deliver([EMAIL PROTECTED]): Aug 12 18:27:19 Error: 
sieve_execute_bytecode(/var/vmail/example.com/user//Home/.dovecot.sievec) 
failed


It seems to only choke on the vacation portion.  It creates entries in 
the .dovecot.lda-dupes file.  But then dies while sending the  reply 
e-mail.


The contents of the user's .dovecot.sieve file is:

-

require [fileinto, include, vacation];

# Move spam to spam folder
if exists X-Spam-Flag {
  fileinto spam;
  # Stop here so that we do not reply on spams
  stop;
}

include :personal sieve-vacation;

-

And the  file looks like:

-

require [vacation];

vacation

  # Reply at most once a day to a same sender
  :days 1

  :subject Out of office reply

  # List of recipient addresses which are included in the auto replying.
  # If a mail's recipient is not on this list, no vacation reply is 
sent for it.

  :addresses [EMAIL PROTECTED]

blah blah blah blah blah blah blah blah blah blah blah blah blah blah
blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
blah blah blah blah blah blah

blah blah blah,
[EMAIL PROTECTED];

-

If I comment out the include :personal sieve-vacation; line, then it 
works, but obviously not the vacation portion.  Deliver does at least 
not die horribly.


I get the same error if I move the content of the vacation include file 
into the main .dovecot.sieve file.


# ls -la /usr/local/libexec/dovecot/lda/
-rwsr-xr-x 1 root  root  802824 Aug 12 18:12 deliver

# ls -la /usr/libexec/dovecot/
total 5728
drwxr-xr-x  2 root root   4096 Jul 31 04:04 .
drwxr-xr-x 11 root root   4096 Jul 25 04:39 ..
-rwxr-xr-x  1 root root  58416 Jul 24 06:32 checkpassword-reply
-rwxr-xr-x  1 root root 666128 Jul 24 06:32 convert-tool
-rwxr-xr-x  1 root root 802824 Jul 24 06:32 deliver
-rwxr-xr-x  1 root root 164176 Jul 24 06:32 dict
-rwxr-xr-x  1 root root 350384 Jul 24 06:32 dovecot-auth
-rwxr-xr-x  1 root root 674176 Jul 24 06:32 expire-tool
-rwxr-xr-x  1 root root  59200 Jul 24 06:32 gdbhelper
-rwxr-xr-x  1 root root 245872 Jul 24 06:32 idxview
-rwxr-xr-x  1 root root 854488 Jul 24 06:32 imap
-rwxr-xr-x  1 root root 157216 Jul 24 06:32 imap-login
-rwxr-xr-x  1 root root  61248 Jul 24 06:32 listview
-rwxr-xr-x  1 root root  61800 Jul 24 06:32 logview
-rwxr-xr-x  1 root root  74200 Jul 24 06:32 maildirlock
-rwxr-xr-x  1 root root931 Jul 24 06:27 mkcert.sh
-rwxr-xr-x  1 root root 787464 Jul 24 06:32 pop3
-rwxr-xr-x  1 root root 149152 Jul 24 06:32 pop3-login
-rwxr-xr-x  1 root root  83968 Jul 24 06:32 rawlog
-rwxr-xr-x  1 root root 165152 Jun 11 03:21 sievec
-rwxr-xr-x  1 root root 157216 Jun 11 03:21 sieved
-rwxr-xr-x  1 root root  62584 Jul 24 06:32 ssl-build-param

(output of yum list)
dovecot.x86_64 :1.1.2-2_77.el5 installed
dovecot-sieve.x86_64 1.1.5-8.el5 installed

I'm not finding any AVC errors in the SELinux audit.log file.  And I'm 
not sure what other switches I can turn on to get better error 
information as to what sendmail/deliver are choking on in this virtual 
(setuid) environment where we use Dovecot as the LDA.