Mapping not working for all accounts using SASL


I’m having a problem with SASL. For some user accounts, SASL works perfectly when they pass their username in the format user@domain. However, some users can only send mail by passing their username in the format: username-domain.

This particular Virtual site (the only one on the server) was imported from an Ensim backup. The mappings in /etc/procmail/virtual are appear OK.

For example, let’s take user ‘’ When I try the following:

testsaslauthd -u -p passwd

I get:

0: OK "Success."

However, when that same user tries sending through Thunderbird, using the username, I get the following in my /var/log/messages:

auth failure: [user=blah] [service=smtp] [] [mech=shadow] [reason=Unknown]

Furthermore, if I change the username to, the email goes out without any errors.

Does anyone have any clue what is happening?

I may have found a solution… I ran:

saslauthd -a shadow -d

from a shell, then tried. It failed, and then I ran:

saslauthd -a shadow -r -d

That worked… so I added FLAGS=-r to my /etc/sysconfig/saslauthd file. Let’e see what happens!

Ok, so everything is working now. I guess I just needed to pass the ‘-r’ option to saslauthd, so that is passes the entire name for authentication.