Hi everybody! Since the heimdal ebuild installs the header files into a nonstandard directory (/usr/include/heimdal), sasl's configure is unable to detect them, thus refusing to build the gssapi authentication plugin. Also, if both mysql and postgres are in the USE flags the SQL plugin gets confused, which eventually keeps sasl from working at all. The attached patch solves both problems. Would be nice to get some feedback wether it still properly works with mit-krb5. Would be even nicer to see the mentioned issues fixed in the tree soon. ;o) Regards, Torsten
Created attachment 33475 [details, diff] Patch for cyrus-sasl-2.1.18.ebuild
1. There should not be a problem if you have both mysql and postgres USE flags. From cyrus-sasl-2.1.17, cyrus devs had made some changes. One of them are the options. Please look here: http://www.asyd.net/docs/cyrus-options.html. To use cyrus-sasl with SQL enabled, you specify: auxprop_plugin: sql sql_engine: mysql 'or' pgsql The problem you are experienced may be related to bug #39497. 2. I think you hit bug #43020. In short, you can't have both heimdal & mit-krb5 installed.
Lang, first of all thanks for the fast reply. As for the SQL-issue, I really hit this in 2.1.17 and didn't know about the changes in 2.1.18, so this seems to be solved already, thanks for your hint! > 2. I think you hit bug #43020. In short, you can't have both > heimdal & mit-krb5 installed. Nope, that's definitely not the problem here. I have a server running, which has heimdal and only heimdal installed. (I chose it, btw, to put afs to work via pam_krb5afs) The thing is that the configure script of cyrus-sasl needs to find gssapi.h to enable kerberos support. Thus, it looks in all known include paths for gssapi.h or (as to be found if mit-krb5 is installed) gssapi/gssapi.h. BUT /usr/include/heimdal is not in this list of include paths. A simple CPPFLAGS="${CPPFLAGS} -I/usr/include/heimdal" ./configure --enable-gssapi gets everything to work (and shouldn't affect installations with mit-krb5 in any way.) Can you agree with that? Regards, Torsten
Created attachment 33520 [details, diff] Updated version of the patch According to my statement in comment #3 this patch only corrects the heimdal-issue.
You are corrected at heimdal installs the header files into a nonstandard directory (/usr/include/heimdal). Here is the what it looks like with mit-krb5: # qpkg -l mit-krb5 | grep "/usr/include" /usr/include /usr/include/gssapi /usr/include/gssapi/gssapi_generic.h /usr/include/gssapi/gssapi.h /usr/include/gssapi/gssapi_krb5.h /usr/include/krb5.h /usr/include/kerberosIV /usr/include/profile.h /usr/include/com_err.h IMHO, the cleanest solution should be file a bug report to the maintainer of heimdal to provide a softlink gssapi -> heimdal and move all headers included in gssapi.h (krb5-types.h) to /usr/include. This way cyrus-sasl will be statified by virtual/krb5. you can test it youself with the original cyrus-sasl # cd /usr/include && ln -s heimdal gssapi && ln -s heimdal/krb5-types.h krb5-types.h # emerge cyrus-sasl Please post back your finding. Thanks.
Hi Lang, thanks for the hint. I changed the heimdal-ebuild to set the symlinks as you suggested and - vo
Hi Lang, thanks for the hint. I changed the heimdal-ebuild to set the symlinks as you suggested and - voíla - everything works fine. I'll report this to the heimdal maintainer along with the init-scripts I wrote for the heimdal-daemons. Thanks again, Torsten
Depends on bug #54421. If we fix the other bug, this can be resolved WONTFIX.
The other bug is fixed. Closing.