This Confluence has been LDAP enabled, if you are an ASF Committer, please use your LDAP Credentials to login. Any problems file an INFRA jira ticket please.

Page tree
Skip to end of metadata
Go to start of metadata

Some versions of OpenSSL (notably those that come with most Linux distributions) are linked against Kerberos libraries. This means that you need to setup the build environment to point at the Kerberos files as well.

As an example, on a RedHat Enterprise 3 machine:

$ perl Makefile.PL ENABLE_SSL=yes < /dev/null
[...]
$ make
[...]
/usr/include/openssl/kssl.h:169: syntax error before "enctype"
In file included from spamc/utils.h:28,
                 from spamc/libspamc.c:20:
/usr/include/openssl/ssl.h:909: syntax error before "KSSL_CTX"
/usr/include/openssl/ssl.h:931: syntax error before '}' token
In file included from /usr/include/openssl/ssl.h:179,
                 from spamc/utils.h:28,
                 from spamc/utils.c:40:
/usr/include/openssl/kssl.h:72:18: krb5.h: No such file or directory
In file included from /usr/include/openssl/ssl.h:179,
                 from spamc/utils.h:28,
                 from spamc/utils.c:40:
/usr/include/openssl/kssl.h:134: syntax error before "krb5_enctype"
/usr/include/openssl/kssl.h:136: syntax error before '*' token
/usr/include/openssl/kssl.h:137: syntax error before '}' token
/usr/include/openssl/kssl.h:149: syntax error before "kssl_ctx_setstring"
/usr/include/openssl/kssl.h:149: syntax error before '*' token
/usr/include/openssl/kssl.h:150: syntax error before '*' token
[...]

In this case, the Kerberos include files are in /usr/kerberos/include, so you need to modify the make line appropriately:

$ make SSLCFLAGS="-DSPAMC_SSL -I/usr/kerberos/include"

which then works as expected. Note: the -DSPAMC_SSL is in the default spamc/Makefile, so it needs to be copied to the commandline.


TheoVanDinter

  • No labels