From: Sebastian Kemper Date: Wed, 22 Dec 2021 20:39:29 +0000 (+0100) Subject: kamailio: ldap: rename function ldap_connect X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=8ecd6e71fd09710850a9b3c9766e93e3c3f98bd2;p=feed%2Ftelephony.git kamailio: ldap: rename function ldap_connect With the recently updated openldap, kamailio fails to build. This adds an upstreamed patch to resolve this. Signed-off-by: Sebastian Kemper --- diff --git a/net/kamailio/patches/160-ldap-rename-private-function-ldap_connect.patch b/net/kamailio/patches/160-ldap-rename-private-function-ldap_connect.patch new file mode 100644 index 0000000..4ee9985 --- /dev/null +++ b/net/kamailio/patches/160-ldap-rename-private-function-ldap_connect.patch @@ -0,0 +1,63 @@ +From 362c6de08058948d0a70a1eeb14ec718f922b4e5 Mon Sep 17 00:00:00 2001 +From: Sebastian Kemper +Date: Wed, 15 Dec 2021 23:30:38 +0100 +Subject: [PATCH] ldap: rename private function ldap_connect + +When compiling against openldap 2.6.0 kamailio's private ldap_connect() clashes +with openldap's own. curl dealt with a similar issue earlier (see [1]). + +Simply rename the function to avoid the issue. + +In file included from ldap_api_fn.c:37: +ldap_connect.h:34:12: error: conflicting types for 'ldap_connect'; have 'int(char *)' + 34 | extern int ldap_connect(char *_ld_name); + | ^~~~~~~~~~~~ +In file included from ldap_api_fn.c:33: +/home/sk/tmp/sdk/openwrt-sdk-ath79-generic_gcc-11.2.0_musl.Linux-x86_64/staging_dir/target-mips_24kc_musl/usr/include/ldap.h:1555:1: note: previous declaration of 'ldap_connect' with type 'int(LDAP *)' {aka 'int(struct ldap *)'} + 1555 | ldap_connect( LDAP *ld ); + | ^~~~~~~~~~~~ +make[5]: *** [../../Makefile.rules:100: ldap_api_fn.o] Error 1 +make[4]: *** [Makefile:511: modules] Error 1 + +[1] https://github.com/curl/curl/commit/8bdde6b14ce3b5fd71c772a578fcbd4b6fa6df19 + +Signed-off-by: Sebastian Kemper +--- + src/modules/ldap/ldap_connect.c | 2 +- + src/modules/ldap/ldap_connect.h | 2 +- + src/modules/ldap/ldap_mod.c | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +--- a/src/modules/ldap/ldap_connect.c ++++ b/src/modules/ldap/ldap_connect.c +@@ -185,7 +185,7 @@ int ldap_connect_ex(char *_ld_name, int + return 0; + } + +-int ldap_connect(char *_ld_name) ++int oldap_connect(char *_ld_name) + { + return ldap_connect_ex(_ld_name, L_DBG); + } +--- a/src/modules/ldap/ldap_connect.h ++++ b/src/modules/ldap/ldap_connect.h +@@ -31,7 +31,7 @@ + #include "../../core/str.h" + #include "../../core/dprint.h" + +-extern int ldap_connect(char *_ld_name); ++extern int oldap_connect(char *_ld_name); + extern int ldap_disconnect(char *_ld_name); + extern int ldap_reconnect(char *_ld_name); + extern int ldap_get_vendor_version(char **_version); +--- a/src/modules/ldap/ldap_mod.c ++++ b/src/modules/ldap/ldap_mod.c +@@ -167,7 +167,7 @@ static int child_init(int rank) + return -1; + } + +- if(ldap_connect(ld_name) != 0) { ++ if(oldap_connect(ld_name) != 0) { + LM_ERR("[%s]: failed to connect to LDAP host(s)\n", ld_name); + ldap_disconnect(ld_name); + return -1;