sendmail and cyrus-imap - delivery problem
Mario Pavlov
freebsd at abv.bg
Sun Mar 22 12:37:32 EDT 2009
Hi,
thanks for the response.
I did what you suggested
I defined new mailer like this:
# cat /usr/share/sendmail/cf/mailer/cyrusv2vd.m4
PUSHDIVERT(-1)
#
# Copyright (c) 2002 Sendmail, Inc. and its suppliers.
# All rights reserved.
#
# By using this file, you agree to the terms and conditions set
# forth in the LICENSE file which can be found at the top level of
# the sendmail distribution.
#
# Contributed by Kenneth Murchison.
#
_DEFIFNOT(`_DEF_CYRUSV2_MAILER_FLAGS', `lsDFMnqXz')
_DEFIFNOT(`CYRUSV2_MAILER_FLAGS', `A@/:|m')
ifdef(`CYRUSV2_MAILER_ARGS',, `define(`CYRUSV2_MAILER_ARGS', `FILE /var/imap/socket/lmtp')')
define(`_CYRUSV2_QGRP', `ifelse(defn(`CYRUSV2_MAILER_QGRP'),`',`', ` Q=CYRUSV2_MAILER_QGRP,')')dnl
POPDIVERT
#########################################
### Cyrus V2 Mailer specification ###
#########################################
VERSIONID(`$Id: cyrusv2vd.m4,v 1.1 2002/06/01 21:14:57 ca Exp $')
Mcyrusv2vd, P=[IPC], F=_MODMF_(CONCAT(_DEF_CYRUSV2_MAILER_FLAGS, CYRUSV2_MAILER_FLAGS), `CYRUSV2'),
S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n,
_OPTINS(`CYRUSV2_MAILER_MAXMSGS', `m=', `, ')_OPTINS(`CYRUSV2_MAILER_MAXRCPTS', `r=', `, ')_OPTINS(`CYRUSV2_MAILER_CHARSET', `C=', `, ')T=DNS/RFC822/SMTP,_CYRUSV2_QGRP
A=CYRUSV2_MAILER_ARGS
which is of course copy of cyrusv2.m4 with the modifications you suggested
and in my yo.com.mc file I just replaced all occurances of cyrusv2 with cyrusv2vd
then I rebuilt sendmail.cf and restarted sendmail
it seemed to accept the new mailer
however the result is exactly the same
Mar 22 16:28:22 yo sm-mta[97935]: n2MGSLe6097935: from=<whoever at gmail.com>, size=1575, class=0, nrcpts=1, msgid=<9cddded00903220928i7a2a8fcfkc2fd206491021847 at mail.gmail.com>, proto=ESMTP, daemon=IPv4, relay=mail-fx0-f163.google.com [209.85.220.163]
Mar 22 16:28:22 yo sm-mta[97937]: n2MGSLe6097935: to=<boo at yo.com>, delay=00:00:00, xdelay=00:00:00, mailer=cyrusv2vd, pri=31575, relay=localhost, dsn=5.1.1, stat=User unknown
Mar 22 16:28:22 yo sm-mta[97937]: n2MGSLe6097935: n2MGSMe6097937: DSN: User unknown
I tried this:
# ( echo subject: test ; echo testmsg ) | sendmail -v -Am boo at yo.com
pesho at e-soul.org... Connecting to /var/imap/socket/lmtp via cyrusv2vd...
220 e-soul.org Cyrus LMTP v2.3.13 server ready
>>> LHLO yo.com
250-yo.com
250-8BITMIME
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-SIZE
250-AUTH EXTERNAL
250 IGNOREQUOTA
>>> MAIL From:<moo at yo.com> SIZE=22 AUTH=moo at yo.com
250 2.1.0 ok
>>> RCPT To:<boo at yoo.com>
>>> DATA
550-Mailbox unknown. Either there is no mailbox associated with this
550-name or you do not have authorization to see it.
550 5.1.1 User unknown
503 5.5.1 No recipients
>>> RSET
250 2.0.0 ok
>>> RSET
250 2.0.0 ok
mgp... Using cached LMTP connection to localhost via cyrusv2vd...
>>> MAIL From:<> SIZE=1046
250 2.1.0 ok
>>> RCPT To:<mgp at e-soul.org>
>>> DATA
550-Mailbox unknown. Either there is no mailbox associated with this
550-name or you do not have authorization to see it.
550 5.1.1 User unknown
503 5.5.1 No recipients
>>> RSET
250 2.0.0 ok
>>> RSET
250 2.0.0 ok
postmaster... Using cached LMTP connection to localhost via cyrusv2vd...
>>> MAIL From:<> SIZE=2070
250 2.1.0 ok
>>> RCPT To:<postmaster at yo.com>
>>> DATA
550-Mailbox unknown. Either there is no mailbox associated with this
550-name or you do not have authorization to see it.
550 5.1.1 User unknown
503 5.5.1 No recipients
>>> RSET
250 2.0.0 ok
Closing connection to localhost
>>> QUIT
221 2.0.0 bye
it now seems like sendmail doesn't strip the domain
but cyrus still can't "find" the mailbox
yes, the mailbox is there
I check this over and over
and it's always there
any quick suggestions before I try rtcyrus3 ?
thank you.
>Mario Pavlov wrote:
>
>MP> I've setup sendmail 8.14.3 to work with cyrus-imapd 2.3.13 on
>MP> FreeBSD 7-STABLE but I have a delivery issue
>
>> localhost> lm
>> user/boo at yo.com (\HasNoChildren)
>
>> Mar 21 09:55:57 yo sm-mta[3465]: n2L9tvmO003426: to=,
>> delay=00:00:00, xdelay=00:00:00, mailer=cyrusv2, pri=31599,
>> relay=localhost, dsn=5.1.1, stat=User unknown
>
>MP> cyrus knows about user/boo at yo.com
>MP> but does sendmail know about it ?
>MP> or it thinks it's just boo at yo.com
>
>MP> what do you think could be the problem ?
>
>I think your problem is that for Cyrus virtdomains to work the MTA needs
>to send the _full_ address in the LMTP transaction. When Sendmail
>speaks to Cyrus lmtpd, it needs to say
>
> RCPT TO:
>
>rather than just
>
> RCPT TO:
>
>Sendmail's definition of the cyrusv2 mailer
>(/usr/share/sendmail/cf/mailer/cyrusv2.m4 on Debian, possibly elsewhere
>on FreeBSD) sets "R=EnvToL/HdrToL", but for virtdomains you want
>"R=EnvToSMTP". It's also recommended that you change
>"S=EnvFromSMTP/HdrFromL" to "S=EnvFromSMTP/HdrFromSMTP".
>
>As a quick hack, you can change those in situ; or - more gracefully -
>you can define a new mailer which works this way and use it instead.
>The Open-Sendmail project has bells-and-whistles implementation,
>cyrusv3.m4, within RTCyrus3:
>
> http://open-sendmail.sourceforge.net/rtcyrus3/
>
>but it is quite complicated to install.
>
>
>
>> FEATURE(local_lmtp)
>> MAILER(local)
>
>It's not clear to me what the above lines are achieving when you also
>have the below:
>
>> define(`confLOCAL_MAILER', `cyrusv2')
>> MAILER(`cyrusv2')
>
>
>Cheers
>
>
>Duncan
>
>--
>Duncan Gibb - Technical Director
>Sirius Corporation plc - control through freedom
>http://www.siriusit.co.uk/ || t: +44 870 608 0063
>
More information about the Info-cyrus
mailing list