Hi Gonzalo,

I believe smtpd is failing at the point of running rspamc. I've seen
this once before and solved it by doing the following:
"/usr/local/bin/rspamc -d %{dest} --mime -e
'/usr/local/libexec/dovecot/dovecot-lda -f %{sender} -d %{dest} -a
%{rcpt}'

On Fri, Sep 21, 2018 at 6:16 PM Edgar Pettijohn <[email protected]> wrote:
>
>
> On Sep 21, 2018 4:24 PM, Gonzalo wrote:
> >
> > Hello,
> >
> > I am having this problem with my setup:
> >
> > 0000000000000000 mda event=delivery evpid=b4b9eaa2be1a713b from=<> 
> > to=<[email protected]> user=vmail method=mda delay=21h30m49s result=TempFail 
> > stat=Error (exited abnormally)
> >
> > This setup is an OpenBSD 6.3 (release), opensmtpd, dkimproxy, rspam and 
> > dovecot:
> >
> > # cat /etc/mail/smtpd.conf
> > queue compression
> >
> > bounce-warn 1h, 6h, 2d
> > expire 3d
> >
> > pki xxx.com certificate       "/etc/ssl/xxx.com.crt"
> > pki xxx.com key               "/etc/ssl/private/xxx.com.key"
> >
> > table aliases                   file:/etc/mail/aliases
> > table domains                   file:/etc/mail/domains
> > table passwd                    passwd:/etc/mail/passwd
> > table virtuals                  file:/etc/mail/virtuals
> >
> > max-message-size 50M
> >
> > listen on lo0
> > listen on lo0 port 10028 tag DKIM_OUT
> > listen on egress port 25 tls pki xxx.com
> > listen on egress port 587 tls-require pki xxx.com auth <passwd>
> >
> > # Accept mail sent from local server to a local account
> > accept from local \
> >         for local alias <aliases> \
> >         deliver to mda "/usr/local/bin/rspamc --mime --exec 
> > \"/usr/local/libexec/dovecot/dovecot-lda -f %{sender} -d %{dest}\""
> >
> > accept from any for domain <domains> virtual <virtuals> \
> >         deliver to mda "/usr/local/bin/rspamc --mime --exec 
> > \"/usr/local/libexec/dovecot/dovecot-lda -f %{sender} -d %{dest}\""
> >
> > accept for local alias <aliases> \
> > deliver to mda "/usr/local/bin/rspamc --mime --exec 
> > \"/usr/local/libexec/dovecot/dovecot-lda -f %{sender} -d %{dest}\""
> >
> > accept tagged DKIM_OUT for any relay \
> >         hostname xxx.com
> >
> > accept from local for any \
> >         relay via smtp://127.0.0.1:10027
> >
> > smtpd -dv -Tlookup:
> >
> > debug: mda: session c28f5914f36f6dbb done
> > debug: mda: user "vmail" becomes runnable
> > debug: mda: all done for user "<getpwnam>:vmail"
> > debug: smtpd: scanning offline queue...
> > debug: smtpd: offline scanning done
> > debug: control -> client: pipe closed
> > debug: clearing p=client, fd=11, pid=0
> > debug: control -> client: pipe closed
> > debug: clearing p=client, fd=11, pid=0
> > debug: control -> client: pipe closed
> > debug: clearing p=client, fd=11, pid=0
> > debug: scheduler: evp:f37c310084099e67 scheduled (mda)
> > mda: new user c28f5915d6f82643 for "<getpwnam>:vmail" delivering as "vmail"
> > debug: lka: userinfo <getpwnam>:vmail
> > lookup: lookup "vmail" as USERINFO in table getpwnam:<getpwnam> -> 
> > "vmail:1002:1002:/var/vmail"
> > debug: mda: new session c28f5916fe1cad73 for user "<getpwnam>:vmail" evpid 
> > f37c310084099e67
> > debug: mda: no more envelope for "<getpwnam>:vmail"
> > debug: mda: got message fd 17 for session c28f5916fe1cad73 evpid 
> > f37c310084099e67
> > debug: mda: querying mda fd for session c28f5916fe1cad73 evpid 
> > f37c310084099e67
> > debug: smtpd: forking mda for session c28f5916fe1cad73: 
> > "/usr/local/bin/rspamc --mime --exec 
> > "/usr/local/libexec/dovecot/dovecot-lda -f @ -d [email protected]"" as vmail
> > debug: mda: got mda fd 18 for session c28f5916fe1cad73 evpid 
> > f37c310084099e67
> > debug: mda: end-of-file for session c28f5916fe1cad73 evpid f37c310084099e67
> > debug: mda: all data sent for session c28f5916fe1cad73 evpid 
> > f37c310084099e67
> > debug: smtpd: mda process done for session c28f5916fe1cad73: exited 
> > abnormally
> > 0000000000000000 mda event=delivery evpid=f37c310084099e67 from=<> 
> > to=<[email protected]> user=vmail method=mda delay=14h14s result=TempFail 
> > stat=Error (exited abnormally)
> > debug: mda: session c28f5916fe1cad73 done
> > debug: mda: user "vmail" becomes runnable
> > debug: mda: all done for user "<getpwnam>:vmail"
> > debug: control -> client: pipe closed
> > debug: clearing p=client, fd=11, pid=0
> >
> >
> > serv0# smtpctl show envelope 85ecfe2420d5d3af
> > smtpctl: fopen: No such file or directory
> > serv0#
> > serv0# smtpctl show envelope 50b0a6b8d6057de6
> > version: 2
> > tag: local
> > type: mda
> > smtpname: xxx.com
> > helo: xxx.com
> > hostname: xxx.com
> > errorline: exited abnormally
> > sockaddr: local
> > sender: @
> > rcpt: [email protected]
> > dest: [email protected]
> > ctime: 1537479298
> > last-try: 0
> > last-bounce: 1537500898
> > expire: 259200
> > retry: 73
> > flags: authenticated
> > dsn-notify: 0
> > esc-class: 4
> > esc-code: 30
> > mda-buffer: /usr/local/bin/rspamc --mime --exec 
> > "/usr/local/libexec/dovecot/dovecot-lda -f @ -d [email protected]"
> > mda-method: mda
> > mda-user: vmail
> > mda-usertable: <getpwnam>
> > mda-delivery-user: vmail
> >
> >
> > Any idea? All the emails inbound end up like that.
> >
> > Thanks
>
> My guess is that rspamc is exiting abnormally. What happenes if you take 
> smtpd out of the equation and do something like:
>
> cat some_email.txt | rspamc --exec dovecot-lda
>
> I'm not sure, but I think the process that smtpd forks to handle the delivery 
> is waiting on rpamc's exit value. It may exit with a value other than what 
> smtpd expects to be a "good" value.
>
> Edgar

-- 
You received this mail because you are subscribed to [email protected]
To unsubscribe, send a mail to: [email protected]

Reply via email to