Frequently asked questions about Qsmtp

Why is Qremote always failing with "can't_connect_to_any_server"

This happens when your libc supports IPv6 addresses, but your kernel does not. When Qremote tries to open an IPv6 socket to send the mail the syscall fails. Recompile with -DIPV4ONLY.

If this does not solve your problem completely and you still get this error on some specific domains read on.

Why can't I send mails to AOL?

AOL uses a multiline opening in the SMTP connection. It's not absolutely clear if this is a violation of RfC 2821, but it's at least suspicios. Apply patches/AOL-greeting.diff and rebuild, then you can send mail to them again.

Why can't I use ezmlm mailing lists?

Control messages like subscription confirmation messages of mailing lists run by ezmlm bounce with "domain of mail address is syntactically incorrect". This happens because ezmlm breaks the length limit for localparts. RfC 822 and 2822 both tell a localpart is not allowed to exceed 64 characters. Apply patches/localpart-len.diff to allow localparts up to 256 characters.

Why can't Outlook 2002 send mails?

Whoever wrote the SMTP engine of Outlook can't read RfCs. This is a property shared with programmers of many common internet worms as the Sober family. Outlook has a bug in their SMTP engine. It sends "MAIL FROM: <address@example.net>", which is wrong. According to RfC 822 and 2822 there must not be whitespace between the colon and the opening brace. This is a very useful filter for Sober and friends as well as b0rken mailers like Outlook. If you don't want to disappoint your customers too much set smtp_space_bug in the filterconf gile to 1. This will allow this space if the user is already authenticated. This way you will get rid of the worms without throwing out your Outlook users.
If anyone has knowledge if this is fixed in later revisions of Outlook please drop me a note.

RELAYCLIENT does not work

Qsmtpd ignores most environment settings used by qmail-smtpd, including RELAYCLIENT. Use control/relayclients (IPv4) and control/relayclients6 (IPv6) to set the hosts and networks allowed for relaying. The program addipbl from tools directory will help you adding entries to this file. You can build it with "make tools/addipbl".