Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build configuration no longer defines HAVE_FUNC #571

Open
zsoi opened this issue May 31, 2019 · 0 comments
Open

Build configuration no longer defines HAVE_FUNC #571

zsoi opened this issue May 31, 2019 · 0 comments

Comments

@zsoi
Copy link

zsoi commented May 31, 2019

I'm running a gentoo system with cyrus-sasl-2.1.26-r2 installed and I observed that I no longer get function names printed in logs:

May 31 11:26:09 hostname saslauthd[19626]:                 : master exited: 19626
May 31 11:26:09 hostname saslauthd[438]:                 : master pid is: 438
May 31 11:26:09 hostname saslauthd[438]:                 : listening on socket: /run/saslauthd/mux

(see the empty space where usually the function name is located)

I did some research, the gentoo portage tree usually had a patch that would fix up this issue for 2.1.25 in configure.h.in (https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-libs/cyrus-sasl/files/cyrus-sasl-2.1.25-autotools_fixes.patch) but since the move to configure.ac the patch doesn't apply anymore and it also wasn't renewed for configure.ac.

The issue is that the configure script never defines HAVE_FUNC which makes the code

#ifdef HAVE_FUNC
# define L_FUNC __func__
# define HAVE_L_FUNC 1
#elif defined(HAVE_PRETTY_FUNCTION)
# define L_FUNC __PRETTY_FUNCTION__
# define HAVE_L_FUNC 1
#elif defined(HAVE_FUNCTION)
# define L_FUNC __FUNCTION__
# define HAVE_L_FUNC 1
#else
# define L_FUNC ""
# undef HAVE_L_FUNC
#endif

believe that it can't use __func__ for passing to the logging method. auth_rimap logging e.g. still works because it directly calls syslog with the __func__ constant.

Unfortunately I lack the experience to quickly put up a patch and test it, but maybe this is a straightforward issue to fix for an experienced developer. Also maybe I have to file this issue with the portage maintainer, because it's specific to the gentoo distribution, after all, they already had to patch this for an older cyrus-sasl version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant