Hi,
I'm trying to get auth_empheral working on kamailio 5.1.2, but it fails to load
`load_module(): could not open module </usr/lib/x86_64-linux-gnu/kamailio/modules/auth_ephemeral.so>: /usr/lib/x86_64-linux-gnu/kamailio/modules/auth_ephemeral.so: undefined symbol: EVP_sha512`
Tried to compile from source and install from kamailio-autheph-modules 5.1.2+xenial and it fails with same error.
Regards
Hello, I was not able to reproduce this with the git master, the module loaded fine for me. Can you post the ldd output from your compilation? This is what I got on my machine:
$ kamailio2/src/modules/auth_ephemeral> ldd auth_ephemeral.so linux-vdso.so.1 (0x00007ffce5dc0000) libssl.so.1.0.0 => /lib64/libssl.so.1.0.0 (0x00007f75affd3000) libc.so.6 => /lib64/libc.so.6 (0x00007f75afc2e000) libcrypto.so.1.0.0 => /lib64/libcrypto.so.1.0.0 (0x00007f75af7d5000) /lib64/ld-linux-x86-64.so.2 (0x00007f75b045c000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f75af5d1000) libz.so.1 => /lib64/libz.so.1 (0x00007f75af3bb000)
OS: Ubuntu Xenial 16.04
``` libssl-dev:amd64 1.0.2g-1ubuntu4.10 libssl-doc 1.0.2g-1ubuntu4.10 libssl1.0.0:amd64 1.0.2g-1ubuntu4.10 openssl 1.0.2g-1ubuntu4.10
``` tried with `TLS_HOOKS=1 `
on 5.1 branch (pulled this morning):
``` root@qa1:/usr/local/lib64/kamailio/modules# ldd auth_ephemeral.so linux-vdso.so.1 => (0x00007ffc9d3e1000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f67566da000) /lib64/ld-linux-x86-64.so.2 (0x00007f6756cc2000) root@qa1:/usr/local/lib64/kamailio/modules# ```
while tls.so links to libssl ```
root@qa1-voip:/usr/local/lib64/kamailio/modules# ldd tls.so linux-vdso.so.1 => (0x00007fff049fe000) libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f6b22e85000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6b22abb000) libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f6b22677000) /lib64/ld-linux-x86-64.so.2 (0x00007f6b2337d000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6b22473000) root@qa1-voip:/usr/local/lib64/kamailio/modules# ```
on master branch: ```
root@qa1-voip:/usr/local/lib64/kamailio/modules# ldd auth_ephemeral.so linux-vdso.so.1 => (0x00007ffe23787000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f071da65000) /lib64/ld-linux-x86-64.so.2 (0x00007f071e04d000) root@qa1-voip:/usr/local/lib64/kamailio/modules# ldd tls.so linux-vdso.so.1 => (0x00007ffce6d1e000) libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f5fd6ae9000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5fd671f000) libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f5fd62db000) /lib64/ld-linux-x86-64.so.2 (0x00007f5fd6fe1000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5fd60d7000) root@qa1-voip:/usr/local/lib64/kamailio/modules#
```
Tried with TLS_HOOKS=1 TLS_EXTRA_LIBS="-lz -lkrb5" as well and no luck
Do you linked the auth_ephemeral statically?
I think it should use dynamic linking same as tls module.
``` root@qa1-voip:/usr/src/kamailio# make clean &&make && cd src/modules/auth_ephemeral/; make && ldd auth_ephemeral.so && cd ../tls/ && make && ldd tls.so [cut] make -C src/ make[1]: Entering directory '/usr/src/kamailio/src' make[1]: 'kamailio' is up to date. make[1]: Leaving directory '/usr/src/kamailio/src' make: 'auth_ephemeral.so' is up to date. linux-vdso.so.1 = (0x00007ffc0cd61000) libc.so.6 =/lib/x86_64-linux-gnu/libc.so.6 (0x00007fb15287c000) /lib64/ld-linux-x86-64.so.2 (0x00007fb152e64000) make: 'tls.so' is up to date. linux-vdso.so.1 = (0x00007fffe5104000) libssl.so.1.0.0 =/lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f77edbd6000) libc.so.6 =/lib/x86_64-linux-gnu/libc.so.6 (0x00007f77ed80c000) libcrypto.so.1.0.0 =/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f77ed3c8000) /lib64/ld-linux-x86-64.so.2 (0x00007f77ee0ce000) libdl.so.2 =/lib/x86_64-linux-gnu/libdl.so.2 (0x00007f77ed1c4000) root@qa1-voip:/usr/src/kamailio/src/modules/tls#
```
Seems I managed to get module running via static linking `LIBS+= /usr/lib/x86_64-linux-gnu/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.1 ` question is why it does not want to work with dynamic linking, while ie tls.so links ok to libssl and libcrypto
Good that its works now - I suspected something like this (comment in the Makefile: Static linking, if you'd like to use TLS and AUTH_EPHEMERAL at the same time) Maybe @ngvoice can comment on this issue, if there are some plans to remove this limitation. Otherwise this should be noted in the module README.
Hi,
If there is an conflict between tls and emperal than there no point to build auth_empheral as deb.
Regards
I do not know the insights of the module and what are the limitations. But one can use tls in an edge proxy, then switch to udp and use auth module in the main proxy. So packaging still makes sense in any case.
Just keeping an eye on this ticket... Using TLS and auth_ephemeral on Fedora based systems (currently Fedora 27 with openssl-1.1.0g-1.fc27.x86_64) I haven't run across this issue, though I compile with `TLS_EXTRA_LIBS="-lcrypto -lz -lkrb5"` and don't need static linking.
Then based on @amessina comment, it seems that the list of libs to link against is not completed for auth_ephemeral.
@marcinkowalczyk - can you do following commands and then past the output here:
``` cd src/modules/auth_ephemeral make clean make Q=0 ```
Do these commands with stock kamailio, without any changes in your clone of the source code. I want to see what pkg-config lists as libs.
Not sure if this helps, but this is the output of debian official build on i386 [0] ``` /usr/bin/make every-module group_include="kautheph" quiet=verbose make[1]: Entering directory '/<<PKGBUILDDIR>>' /usr/bin/make -C src/ every-module make[2]: Entering directory '/<<PKGBUILDDIR>>/src' config.mak loaded Makefile.defs defs skipped Makefile.defs defs skipped Makefile.defs defs skipped gcc -fPIC -DPIC -funroll-loops -Wcast-align -m32 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=athlon64 -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DVERSION_NODATE -DNAME='"kamailio"' -DVERSION='"5.1.2"' -DARCH='"i386"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 7.3.0"' -D__CPU_i386 -D__OS_linux -DSER_VER=5001002 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c checks.c -o checks.o -MMD -MP gcc -fPIC -DPIC -funroll-loops -Wcast-align -m32 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=athlon64 -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DVERSION_NODATE -DNAME='"kamailio"' -DVERSION='"5.1.2"' -DARCH='"i386"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 7.3.0"' -D__CPU_i386 -D__OS_linux -DSER_VER=5001002 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c authorize.c -o authorize.o -MMD -MP gcc -fPIC -DPIC -funroll-loops -Wcast-align -m32 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -mtune=athlon64 -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DVERSION_NODATE -DNAME='"kamailio"' -DVERSION='"5.1.2"' -DARCH='"i386"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 7.3.0"' -D__CPU_i386 -D__OS_linux -DSER_VER=5001002 -DCFG_DIR='"/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c auth_ephemeral_mod.c -o auth_ephemeral_mod.o -MMD -MP gcc -shared -m32 -Wl,-O2 -Wl,-E -Wl,-z,relro checks.o authorize.o auth_ephemeral_mod.o -lssl -o auth_ephemeral.so```
[0] https://buildd.debian.org/status/fetch.php?pkg=kamailio&arch=i386&ve...
Hi Dan,
Just did clean checkout of latest master ``` root@qa1-voip:/usr/src/kamailio-test# cd src/modules/auth_ephemeral root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# make clean root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# make Q=0 config.mak included config.mak included gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c checks.c -o checks.o -MMD -MP gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c authorize.c -o authorize.o -MMD -MP gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c auth_ephemeral_mod.c -o auth_ephemeral_mod.o -MMD -MP gcc -shared -m64 -Wl,-O2 -Wl,-E checks.o authorize.o auth_ephemeral_mod.o -lssl -o auth_ephemeral.so root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# ldd auth_ephemeral.so linux-vdso.so.1 => (0x00007ffd197eb000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fbbf9084000) /lib64/ld-linux-x86-64.so.2 (0x00007fbbf966c000) root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral#
```
It looks like `-lcrypto -lz -lkrb5` have to be added to the linking libs, based on @amessina comment. Maybe the new debian has a pkg-config for libcrypto itself, no longer just one option for libssl.
Hi,
I've followed lead from @amessina and @miconda
``` root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# make TLS_HOOKS=1 TLS_EXTRA_LIBS="-lcrypto -lz -lssl " Q=0 config.mak included gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c checks.c -o checks.o -MMD -MP gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c authorize.c -o authorize.o -MMD -MP gcc -fPIC -DPIC -g -funroll-loops -Wcast-align -m64 -minline-all-stringops -falign-loops -ftree-vectorize -fno-strict-overflow -Wall -DNAME='"kamailio"' -DVERSION='"5.2.0-dev4"' -DARCH='"x86_64"' -DOS='linux_' -DOS_QUOTED='"linux"' -DCOMPILER='"gcc 5.4.0"' -D__CPU_x86_64 -D__OS_linux -DSER_VER=5002000 -DCFG_DIR='"/usr/local/etc/kamailio/"' -DRUN_DIR='"/var/run/kamailio/"' -DPKG_MALLOC -DSHM_MEM -DSHM_MMAP -DDNS_IP_HACK -DUSE_MCAST -DUSE_TCP -DDISABLE_NAGLE -DHAVE_RESOLV_RES -DUSE_DNS_CACHE -DUSE_DNS_FAILOVER -DUSE_DST_BLACKLIST -DUSE_NAPTR -DWITH_XAVP -DMEM_JOIN_FREE -DF_MALLOC -DQ_MALLOC -DTLSF_MALLOC -DDBG_SR_MEMORY -DUSE_TLS -DTLS_HOOKS -DUSE_CORE_STATS -DSTATISTICS -DMALLOC_STATS -DWITH_AS_SUPPORT -DUSE_SCTP -DFAST_LOCK -DADAPTIVE_WAIT -DADAPTIVE_WAIT_LOOPS=1024 -DCC_GCC_LIKE_ASM -DHAVE_GETHOSTBYNAME2 -DHAVE_UNION_SEMUN -DHAVE_SCHED_YIELD -DHAVE_MSG_NOSIGNAL -DHAVE_MSGHDR_MSG_CONTROL -DHAVE_ALLOCA_H -DHAVE_TIMEGM -DHAVE_SCHED_SETSCHEDULER -DHAVE_IP_MREQN -DHAVE_EPOLL -DHAVE_SIGIO_RT -DSIGINFO64_WORKARROUND -DUSE_FUTEX -DHAVE_SELECT -DKAMAILIO_MOD_INTERFACE -DMOD_NAME='"auth_ephemeral"' -c auth_ephemeral_mod.c -o auth_ephemeral_mod.o -MMD -MP gcc -shared -m64 -Wl,-O2 -Wl,-E checks.o authorize.o auth_ephemeral_mod.o -lssl -lcrypto -lz -lssl -o auth_ephemeral.so root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# ldd auth_ephemeral.so linux-vdso.so.1 => (0x00007fffe4d11000) libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f5ccfd7a000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5ccf9b0000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5ccf7ac000) /lib64/ld-linux-x86-64.so.2 (0x00007f5cd03dc000) root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral#
```
and module loaded ok.
I added pkg-config use for libcrypto, if that exists. Can you try now with latest master or 5.1 branches?
Hi Dan,
It's working now with latest master.
`root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# ldd auth_ephemeral.so linux-vdso.so.1 => (0x00007ffd76dbd000) libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007fd625854000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fd62548a000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fd625286000) /lib64/ld-linux-x86-64.so.2 (0x00007fd625eb6000) root@qa1-voip:/usr/src/kamailio-test/src/modules/auth_ephemeral# `
Thx!
Closed #1473.