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