[SSSD] [PATCHES] Fix build with libcrypto

Michal Židek mzidek at redhat.com
Tue Sep 29 13:24:38 UTC 2015


On 09/29/2015 03:16 PM, Lukas Slebodnik wrote:
> On (29/09/15 15:04), Michal Židek wrote:
>> On 09/29/2015 10:02 AM, Lukas Slebodnik wrote:
>>> ehlo,
>>>
>>> attached are simple patches.
>>> It would be good to have then in 1.13.1
>>>
>>> LS
>>>
>>>
>>> 0001-BUILD-Link-test_data_provider_be-with-ldl.patch
>>>
>>>
>>>  From 5f3eaca8c305f95d0c1e1859d1b3e12dde08829f Mon Sep 17 00:00:00 2001
>>> From: Lukas Slebodnik<lslebodn at redhat.com>
>>> Date: Tue, 29 Sep 2015 09:02:51 +0200
>>> Subject: [PATCH 1/3] BUILD: Link test_data_provider_be with -ldl
>>>
>>> The module data_provider_be.o uses uncfion dlsym and
>>> thus need to be linked with -ldl.
>>>
>>> /usr/bin/ld: src/providers/test_data_provider_be-data_provider_be.o: undefined reference to symbol 'dlsym@@GLIBC_2.2.5'
>>> /usr/lib64/libdl.so.2: error adding symbols: DSO missing from command line
>>> collect2: error: ld returned 1 exit status
>>> Makefile:10461: recipe for target 'test_data_provider_be' failed
>>>
>>> It was not a problem when sssd was compiled with NSS because it contains -ldl
>>> among its flags.
>>> NSS_LIBS='-lssl3 -lsmime3 -lnss3 -lnssutil3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl '
>>>
>>> However the compilation failed when sssd was compiled with libcrypto
>>
>> Tentative Ack because it is safe change, but...
>>
>> I could not reproduce this. Was this failing for you on master or some
>> other version?
>> LIBS = -ldl
>> Was always linked with test_data_provider_be, so the change in this
>> patch should not be needed (see the generated Makefile). But again,
>> the patch is not bad as additional hardening and I do not see from
>> Makefile.am why LIBS is
>>
> It's empty on my fedora 23 and also on opensuse
> $grep "^LIBS" Makefile
> LIBS =
>
> bash-4.3# lsb_release -a
> LSB Version:    n/a
> Distributor ID: openSUSE project
> Description:    openSUSE 20150924 (Tumbleweed) (x86_64)
> Release:        20150924
> Codename:       n/a
> bash-4.3# grep "^LIBS" Makefile
> LIBS =
>

Looks like something platform / tools version specific. In that
case your patch is needed to explicitly ask for -ldl.

>
>>>
>>>
>>> 0002-sysdb-tests-Use-valid-base64-encoded-certificate-for.patch
>>>
>>>
>>>  From c83a16dde3b4ccd44addceb11abf33b455584a49 Mon Sep 17 00:00:00 2001
>>> From: Lukas Slebodnik<lslebodn at redhat.com>
>>> Date: Tue, 29 Sep 2015 09:54:41 +0200
>>> Subject: [PATCH 2/3] sysdb-tests: Use valid base64 encoded certificate for
>>>   search
>>>
>>> sh$ printf "ABC" | base64 -d
>>> base64: invalid input
>>
>> Tentative Ack.
>>
>>>
>>> 0003-test_pam_srv-Run-cert-test-only-with-NSS.patch
>>>
>>>
>>>  From 90889d1d7d95044e22debfdfa23c24a675eb86f7 Mon Sep 17 00:00:00 2001
>>> From: Lukas Slebodnik<lslebodn at redhat.com>
>>> Date: Tue, 29 Sep 2015 09:58:15 +0200
>>> Subject: [PATCH 3/3] test_pam_srv: Run cert test only with NSS
>>>
>>
>> Tentative Ack.
>>
>> I pushed the patches to CI. Will ack if CI passes.
>>
> LS
> _______________________________________________
> sssd-devel mailing list
> sssd-devel at lists.fedorahosted.org
> https://lists.fedorahosted.org/mailman/listinfo/sssd-devel
>



More information about the sssd-devel mailing list