Postfix SMTP auth doesn't work with cyrus-sasl 2.1.25
Dan White
dwhite at olp.net
Tue Jan 10 15:45:03 EST 2012
On 01/10/12 11:16 -0800, Quanah Gibson-Mount wrote:
>--On Friday, January 06, 2012 1:25 PM -0800 Quanah Gibson-Mount
><quanah at zimbra.com> wrote:
>
>>--On Friday, January 06, 2012 1:35 PM -0600 Dan White <dwhite at olp.net>
>>wrote:
>>
>>>One important difference is that testsaslauthd probably does not use the
>>>glue (libsasl2) library. Can you try the sample-server/sample-client
>>>utilities to see if they work? You will need to create a <./configure
>>>--with-configdir path>/sample.conf file with 'pwcheck_method: saslauthd'.
>>
>>
>>Since my build specifies:
>>
>>--with-configdir=/opt/zimbra/conf/sasl2
>>
>>I created a /opt/zimbra/conf/sasl2/sample.conf file with the data:
>>pwcheck_method: saslauthd
>>
>>I'm not sure I'm executing "server" 100% correctly as I gave it no
>>options, however it fails though with the same error as postfix. What
>>can I do to debug this further?
>
>I've tracked things down further to the issue being in the
>_sasl_auxprop_lookup function in auxprop.c.
>
>Specifically in this code block:
>
> if(_sasl_getcallback(sparams->utils->conn,
> SASL_CB_GETOPT,
> (sasl_callback_ft *)&getopt,
> &context) == SASL_OK) {
> ret = getopt(context, NULL, "auxprop_plugin", &plist, NULL);
> if(ret != SASL_OK) plist = NULL;
> }
>
>SASL_OK is returned by _sasl_getcallback. However, the next line:
>ret = getopt(context, NULL, "auxprop_plugin", &plist, NULL);
>
>returns -1 (SASL_FAIL), which causes plist to be set to NULL, and
>then the rest of the function drops through with SASL_NOMECH set in
>the "result" variable.
>
>What can I do to determine why the call to getopt is failing?
What auxprop plugins were compiled?
Try:
cat >> /usr/lib/sasl2/pluginviewer.conf << EOF
ldapdb_uri: ldapi:///
sql_select: select please_work from the_ether
EOF
~# pluginviewer -a
Installed and properly configured auxprop mechanisms are:
sql ldapdb sasldb
List of auxprop plugins follows
Plugin "sql" , API version: 8
supports store: yes
Plugin "ldapdb" , API version: 8
supports store: yes
Plugin "sasldb" , API version: 8
supports store: yes
Adjust the path to pluginviewer.conf accordingly.
Assuming that sasldb is available, try adding:
auxprop_plugin: sasldb
to your smtpd.conf to see if that works around the problem.
--
Dan White
More information about the Cyrus-sasl
mailing list