Re: Error with Dovecot LDA when recipient address is incomplete

2011-06-24 Thread Nikolaos Milas

On 23/6/2011 6:11 μμ, Victor Duchovni wrote:


However, if none of the above is useful, you can I believe use:
-d ${user:no-such-user}

this may not be documented in the pipe(8) manual page, if sothink this
is a rare documentation oversight. Almost universally, undocumented
Postfix behaviour is not a hidden feature, but rather an implementation
artifact, that is subject to change.



Thanks Victor,

For the time being, I have added:

   reject_unknown_recipient_domain, reject_unverified_recipient

to smtpd_recipient_restrictions and I'll see how it goes. My first tests 
are successful, but I might try your suggestion too.


What does

   ${user:no-such-user}

exactly do?

Nick




smime.p7s
Description: S/MIME Cryptographic Signature


Re: Error with Dovecot LDA when recipient address is incomplete

2011-06-24 Thread Victor Duchovni
On Fri, Jun 24, 2011 at 01:00:37PM +0300, Nikolaos Milas wrote:

 What does

${user:no-such-user}

 exactly do?

If ${user} is the empty string, the value no-such-user is used
instead. Presumably that is not a valid IMAP user in your environment,
so the mail will bounce.

-- 
Viktor.


Re: Error with Dovecot LDA when recipient address is incomplete

2011-06-23 Thread Mihira Fernando

On 06/23/2011 02:26 PM, Nikolaos Milas wrote:

Hi,

We are using Postfix 2.8.3 with Dovecot 2.0.13 on CentOS 5.6.

The problem we have is that sometimes, due to mail sender's error when 
composing a message, the sender attempts to send an email to @noa.gr 
(without specifying the user part of the address). This results in a 
Postfix error due to Dovecot LDA use:


Jun 22 21:05:31 vmail postfix/pipe[31862]: CC89FC4D210: to=@noa.gr, 
relay=dovecot, delay=0.41, delays=0.24/0.013/0/0.15, dsn=5.3.0, 
status=bounced (command line usage error. Command output: 
/usr/libexec/dovecot/dovecot-lda: option requires an argument -- d 
Usage: dovecot-lda [-c config file] [-a address] [-d username] 
[-p path][-f envelope sender] [-m mailbox] 
[-e] [-k] )


Postfix master.cf is configured as:

dovecot   unix  -   n   n   -   -   pipe
   flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda 
-f ${sender} -d ${user}


Obviously this happens because in this case there is no ${user} data.

Can we somehow configure Postfix to directly bounce such mails 
(missing the user part of the address) without attempting to forward 
them to Dovecot LDA?


Thanks,
Nick




Wont adding :

 reject_unknown_recipient_domain,  reject_unverified_recipient

to  smtpd_recipient_restrictions  solve this issue ?

Mihira.


Re: Error with Dovecot LDA when recipient address is incomplete

2011-06-23 Thread Victor Duchovni
On Thu, Jun 23, 2011 at 11:56:22AM +0300, Nikolaos Milas wrote:

 dovecot   unix  -   n   n   -   -   pipe
flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda -f 
 ${sender} -d ${user}

 Obviously this happens because in this case there is no ${user} data.

It is not clear how the message entered your queue, recipient validation
in the SMTP server should be able to reject such mail. The transport
mapping to dovecot could also be per-user or implemented for a
synthetic domain to which valid user addresses are rewritten.

However, if none of the above is useful, you can I believe use:

-d ${user:no-such-user}

this may not be documented in the pipe(8) manual page, if sothink this
is a rare documentation oversight. Almost universally, undocumented
Postfix behaviour is not a hidden feature, but rather an implementation
artifact, that is subject to change.

-- 
Viktor.


Re: Error with Dovecot LDA when recipient address is incomplete

2011-06-23 Thread Wietse Venema
Mihira Fernando:
  dovecot   unix  -   n   n   -   -   pipe
 flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/dovecot-lda 
  -f ${sender} -d ${user}
 
  Obviously this happens because in this case there is no ${user} data.

That is incorrect. There is always one argument that follows the -d option,
even when that argument is a zero-length string.

So, it would appear that something is messing up the argument vector.

Besides, Postfix does not accept mail for the zero-length address.
Perhaps you have some aliasing rule in place that produces null
string results.

Wietse