Qsmtp - FAQ
Author: Rolf Eike Beer
Keywords: qmail, SMTP, Qsmtp, Qsmtpd, Qremote, mail, email, e-mail, mail server, chunking, starttls, auth, FAQ

# Frequently asked questions about Qsmtp

- Why is Qremote always failing with "can't_connect_to_any_server"
- Why can't Outlook 2002 send mails?
- RELAYCLIENT does not work
- Why do I get "warning: can not get free queue disk space" for every mail?

## 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.

## 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 file 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".

## Why do I get "warning: can not get free queue disk space" for every mail?

Qsmtpd wants to check the queue size to see if the mail it is receiving would fit onto the disk. You can fix it with:

    chmod 755 /var/qmail/queue

This will not allow Qsmtpd to read any file in the queue as the subdirectories with the actual queue contents are still not readable. This is only needed to that Qsmtpd can call statvfs() on a file in the queue directory that must exists (/var/qmail/queue/lock/sendmutex in this case).