Corrupted libsasl2.pc file and no available methods
Stefano Sabatini
stefasab at gmail.com
Wed Apr 15 07:42:30 EDT 2015
Hi,
I'm using libsasl2 compiled from code source, using latest version
2.1.26 downloaded here:
ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-2.1.26.tar.gz
and I'm facing a few issues.
1. The generated libsasl2.pc file is broken, since it reference
exec_prefix which is not defined (this is probably a bug in
pkg-config, yet the fix is to simply add a line in the .pc.in file, so
it is probably the solution to go.
The generated libsasl2.pc file is fixed by adding the lines at the
beginning of libsasl2.pc.in:
prefix = @prefix@
exec_prefix = @exec_prefix@
includedir = @includedir@
libdir = @libdir@
This problem has been reported several times, for example see:
https://trac.macports.org/ticket/41300
2. I cannot get any authentication mechanism available.
I have this simple program:
-------------------list-sasl-methods.c --------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <sasl/sasl.h>
int main(void)
{
sasl_conn_t *conn;
int ret;
const char *tmp;
if ((ret = sasl_server_init(NULL, "foo")) < 0) {
fprintf(stderr, "Could not init SASL library: %s\n",
sasl_errstring(ret, NULL, NULL));
return 1;
}
ret = sasl_server_new("foo", /* Registered name of service */
NULL, /* Fully qualified domain name; NULL says use gethostname() */
NULL, /* The user realm used for password */
NULL, NULL, /* IP Address information strings */
NULL, /* Callbacks supported only for this connection */
0, /* security flags */
&conn);
if (ret != SASL_OK) {
fprintf(stderr, "SASL new server creation failed: %s\n", sasl_errstring(ret, NULL, NULL));
return 1;
}
sasl_listmech(conn, NULL, NULL, "\n", NULL, &tmp, NULL, NULL);
printf("%s", tmp);
return 0;
}
-------------------list-sasl-methods.c ---------------------------------
If I use the system libraries this program will list all the methods.
I tried to check the config.log file to see if something was wrong
during compilation but all seem fine.
What am I missing, or in other words how can I check which
authentication mechanisms were enabled during configuration?
Thank you in advance.
More information about the Cyrus-sasl
mailing list