Re: Setting saslauthd home [solved]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I found the reason.
 
First sasl_saslauthd_path must point to the full mux file (in my case /server/var/run/saslauthd/mux) and not the path given as home argument to saslauthd (in my case -m /server/var/run/saslauthd) : this is quite confusing.
This solved the original "socket operation on non-socket" problem.
 
The last problem "SASL size read failed" is about a wrong ldap library.
I noticed with ldd that saslauthd was linked with two different ldap libraries "libldap" and "libldap-2.4".
This is a Solaris/illumos only problem: the kernel comes with an original Solaris ldap library (libldap), so the openldap libraries are distributed with a different name (libldap-2.4).
I had to patch the configure.ac file like this:

--- cyrus-sasl-cyrus-sasl-2.1.28/configure.ac   Tue Jan 17 11:13:09 2023
+++ cyrus-sasl-cyrus-sasl-2.1.28/configure.ac.new       Tue Jan 17 11:20:14 2023
@@ -679,8 +679,8 @@

 LDAP_LIBS=""
 if test "$with_ldap" != no; then
-  AC_CHECK_LIB(ldap, ldap_initialize, [ AC_DEFINE(HAVE_LDAP,[],[Support for LDAP?])
-                                        LDAP_LIBS="-lldap -llber"
+  AC_CHECK_LIB(ldap-2.4, ldap_initialize, [ AC_DEFINE(HAVE_LDAP,[],[Support for LDAP?])
+                                        LDAP_LIBS="-lldap-2.4 -llber"
                                        if test "$with_openssl" != "no"; then
                                            LDAP_LIBS="$LDAP_LIBS -lcrypto $LIB_RSAREF"
                                        fi],,-llber)
@@ -1005,7 +1005,7 @@
         CMU_OPENLDAP_API

         if test "$cmu_cv_openldap_api" = yes; then
-            AC_CHECK_LIB(ldap, ldap_initialize, [ cmu_link_openldap="-lldap -llber" ], [ cmu_link_openldap=no ],-llber)
+            AC_CHECK_LIB(ldap-2.4, ldap_initialize, [ cmu_link_openldap="-lldap-2.4 -llber" ], [ cmu_link_openldap=no ],-llber)
         fi
     fi

This to force link with libldap-2.4 only!

Rebuilt cyrus-sasl component and package, updated test system, restarted both saslauthd and cyrus-imap services and now it works like a charm!

It would be nice to have a configure parameter to override default "-lldap" with a custom one.

Thanks for your help!
Gabriele

 
 
 
Sonicle S.r.l. http://www.sonicle.com
Music: http://www.gabrielebulfon.com
eXoplanets : https://gabrielebulfon.bandcamp.com/album/exoplanets
 
 



Da: vladas via Info <info@xxxxxxxxxxxxxxxxxx>
A: Info <info@xxxxxxxxxxxxxxxxxx>
Data: 17 gennaio 2023 11.16.19 CET
Oggetto: Re: Setting saslauthd home


Are you restarted  saslauthd  before  imapd?  "Socket operation on non-socket" usually means inaccessible  saslauthd.pid
 
Sorry, I am newbie in Cyrus and as a sysadmin in general. My FreeBSD directory /var/run/saslauthd/ contains also three links to saslauthd, saslauthd-rc and sasldb2.db besides of mux, mux.accept,  and  saslauthd.pid itself.
 
Vladas Palubinskas
https://az.on.lt/

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux