On 10/01/2012 19:16, Quanah Gibson-Mount wrote:
--On Friday, January 06, 2012 1:25 PM -0800 Quanah Gibson-Mount
<quanah@xxxxxxxxxx> wrote:
--On Friday, January 06, 2012 1:35 PM -0600 Dan White <dwhite@xxxxxxx>
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;
}
Can you give me the full stack that leads to this call? I think one of
the functions up the stack needs to handle this error gracefully.
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?