Skip Menu |

Date: Sun, 13 Mar 2005 16:11:52 +0100 (MET)
From: Paul Kranenburg <>
Subject: gssapi.h pollution

I recently built and installed krb5 v1.4, which went smoothly, thanks
for that. Then I noticed that some other software package would not build
any more. It took me a while to figure out this was due to the rather
anti-social contents at the top of the installed
<krp5path>/include/gssapi/gssapi.h header.

Here we find a bunch of non-gss related symbols intruding the
consumer's namespace. In my case, it turned out to be HAVE_REGEX that
caused the kerberized application (samba 3.0.x) to gain functionality I
did not intend it to have.

I'm not sure why these configuration-related symbols were added to
gssapi.h (and, I notice, krb5.h as well), but I would suggest finding
another way than polluting the application's namespace in this manner to
achieve whatever problem it was intended to alleviate. E.g. have the
library implementation pull in the required configuration defines
explicitly, or at least brace the offending section with something like

Best regards, -pk

Paul Kranenburg
Erasmus University Rotterdam
Revisions to pull up are in ticket #2910.
Subject: CVS Commit
pullup from trunk

To generate a diff of this commit:

cvs diff -r1.77.4.2 -r1.77.4.3 krb5/src/lib/gssapi/ChangeLog
cvs diff -r1.27 -r1.27.4.1 krb5/src/lib/gssapi/
cvs diff -r1.142 -r1.142.4.1 krb5/src/lib/gssapi/generic/ChangeLog
cvs diff -r1.72 -r1.72.4.1 krb5/src/lib/gssapi/generic/
cvs diff -r1.20 -r1.20.4.1 krb5/src/lib/gssapi/generic/gssapi.hin