After reading the manual, it seems the most appropriate option to use is the receiver_verify option. But from tests, that only seems to verify if the domain portion is correct. I even gone as far as to use the verify callback options. Still no go. The attempt for spam to those non-existent emails still come through.
Is there a configuration option I have missed to be able to verify local users at SMTP ? Otherwise the result is about 200-500 frozen messages generated per day.
On a totaly different note. My mail server services a few domains. I use the following director to deliver mail.
in the /etc/exim/clients/domains file contains lines of data of this format
*.abc.com: abc.com
*.def.com: def.com
and in the file /etc/exim/clients/abc.com would contain lines of data of this format
myalias chris
hisalias john
superman harry
So, exim will deliver superman@??? by first checking if that domain is in /etc/exim/clients/domains which then directs exim to look into /etc/exim/clients/abc.com . In abc.com the data tells superman@??? to be delivered to harry's mailbox. Likewise, superman@??? will get delivered in the same way. Although this time it will not work because def.com does not contain (lets say) an entry for the alias superman. Good, exactly how it should work.
The problem is that harry will also receive harry@??? simply because harry (even though its not an alias of any kind or even in any of the domain files) is a local user. (so this will also happen for emails addressed to harry@???) How can stop this and restrict its delivery to the example above ?