Description of problem: /usr/include/dirsrv/slapi-plugin.h contains an invalid function prototype Version-Release number of selected component (if applicable): 389-ds-base-devel-1.3.5.15-1.fc25.x86_64 How reproducible: Always Steps to Reproduce: 1. Compile any component that includes slapi-plugin.h, e.g. FreeIPA Actual results: make[4]: Entering directory '/usr/src/freeipa/daemons/ipa-slapi-plugins/ipa-lockout' /bin/sh ../../../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I./../common -I/usr/include/dirsrv -DPREFIX=\""/usr/local"\" -DBINDIR=\""/usr/local/bin"\" -DLIBDIR=\""/usr/local/lib"\" -DLIBEXECDIR=\""/usr/local/libexec"\" -DDATADIR=\""/usr/local/share"\" -I/usr/include/nspr4 -I/usr/include/nss3 -I/usr/include/nspr4 -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-align -Werror-implicit-function-declaration -g -O2 -MT ipa_lockout.lo -MD -MP -MF .deps/ipa_lockout.Tpo -c -o ipa_lockout.lo ipa_lockout.c libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../.. -I. -I./../common -I/usr/include/dirsrv -DPREFIX=\"/usr/local\" -DBINDIR=\"/usr/local/bin\" -DLIBDIR=\"/usr/local/lib\" -DLIBEXECDIR=\"/usr/local/libexec\" -DDATADIR=\"/usr/local/share\" -I/usr/include/nspr4 -I/usr/include/nss3 -I/usr/include/nspr4 -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-align -Werror-implicit-function-declaration -g -O2 -MT ipa_lockout.lo -MD -MP -MF .deps/ipa_lockout.Tpo -c ipa_lockout.c -fPIC -DPIC -o .libs/ipa_lockout.o In file included from ipa_lockout.c:50:0: /usr/include/dirsrv/slapi-plugin.h:6292:1: warning: function declaration isn’t a prototype [-Wstrict-prototypes] const char * slapi_get_cacertfile(); ^~~~~ Expected results: No warning Additional info: The correct function prototype is const char * slapi_get_cacertfile( void );
I think this is not an openldap issue since you're using /usr/include/dirsrv/slapi-plugin.h which is a 389-ds-base-devel file.
Ah, you are right. I selected the wrong component. Thanks Rich!
Thanks, Christian! The issue has been addressed and fixed in the master branch with this patch: commit 5b0c9c0a90b73f0b1a200d9ccb1209ccc5dcd7e3 Author: Lukas Slebodnik <lslebodn> Date: Fri Sep 2 15:10:44 2016 +0000 Ticket 48979 - Allow to compile 389ds with warning Wstrict-prototypes The change is going to be in 389-ds-base-1.3.6 release. So far, we have no plan to backport the patch to 1.3.5. Is it ok with you or too late? > $ egrep -B 1 slapi_get_cacertfile *.[ch] > [...] > slapi-plugin.h:const char * slapi_get_cacertfile(void); > -- > ssl.c-const char * > ssl.c:slapi_get_cacertfile()
It's just a warning and it's not going to cause any trouble soon. I can wait for 1.3.6.