Hide Forgot
In RHEL 7.8-devel, ipasam module from FreeIPA is built against Samba 4.9.1. It doesn't work against Samba 4.10 which is a rebase in RHEL 7.8: [2019/08/23 05:09:42.615616, 5, pid=31083, effective(0, 0), real(0, 0), class=passdb] ../../source3/passdb/pdb_interface.c:155(make_pdb_method_name) Attempting to find a passdb backend to match ipasam:ldapi://%2fvar%2frun%2fslapd-IPAEXAMPLE-TEST.socket (ipasam) [2019/08/23 05:09:42.615634, 2, pid=31083, effective(0, 0), real(0, 0), class=passdb] ../../source3/passdb/pdb_interface.c:161(make_pdb_method_name) No builtin backend found, trying to load plugin [2019/08/23 05:09:42.615648, 5, pid=31083, effective(0, 0), real(0, 0)] ../../lib/util/modules.c:160(load_module_absolute_path) load_module_absolute_path: Probing module '/usr/lib64/samba/pdb/ipasam.so' [2019/08/23 05:09:42.620596, 5, pid=31083, effective(0, 0), real(0, 0)] ../../lib/util/modules.c:49(load_module) Error loading module '/usr/lib64/samba/pdb/ipasam.so': /usr/lib64/samba/pdb/ipasam.so: undefined symbol: DEBUGLEVEL_CLASS [2019/08/23 05:09:42.620641, 0, pid=31083, effective(0, 0), real(0, 0), class=passdb] ../../source3/passdb/pdb_interface.c:171(make_pdb_method_name) No builtin nor plugin backend for ipasam found FreeIPA ipasam module uses DEBUG() macro from Samba which included DEBUGLEVEL_CLASS variable in Samba < 4.10. It was renamed to dbgc_config: commit 3b293c669024e55d2c5343e85f1f43a03682b478 Author: Ralph Boehme <slow@samba.org> Date: Wed Dec 12 22:19:06 2018 +0100 debug: rename DEBUGLEVEL_CLASS variable to dbgc_config Variable names should not be given in uppercase. Signed-off-by: Ralph Boehme <slow@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> $ git tag --contains 3b293c669024e55d2c5343e85f1f43a03682b478|grep samba samba-4.10.0 samba-4.10.0rc1 samba-4.10.0rc2 samba-4.10.0rc3 samba-4.10.0rc4 samba-4.10.1 samba-4.10.2 samba-4.10.3 samba-4.10.4 samba-4.10.5 samba-4.10.6 samba-4.11.0rc1 As result, binary compatibility is broken and ipa package needs to be rebuilt against Samba 4.10, also raising dependencies.
Verification is sanity-only: For incorrect version the following will be true: $ pdbedit -s /dev/null -b ipasam -d5 |grep Error Can't initialize passdb backend. Error loading module '/usr/lib64/samba/pdb/ipasam.so': /usr/lib64/samba/pdb/ipasam.so: undefined symbol: DEBUGLEVEL_CLASS For fixed version there should be no 'Error loading module' message.
Fixed upstream ipa-4-6: https://pagure.io/freeipa/c/37fa917fa2630dd90dd3a12bab213aeb6adfe182 https://pagure.io/freeipa/c/fa0b273874760503c7f57f279721e97aaf007ca5 https://pagure.io/freeipa/c/910e56333d4631244053b5c506ba2bec905d1c27 https://pagure.io/freeipa/c/95c91b5709d0c7fec20eef5ef69a084a74868c2d
Build for verification: [root@master ~]# rpm -q ipa-server samba ipa-server-trust-ad ipa-server-4.6.6-11.el7.x86_64 samba-4.10.4-9.el7.x86_64 ipa-server-trust-ad-4.6.6-11.el7.x86_64 Test Steps: [root@master ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.8 Beta (Maipo) [root@master ~]# pdbedit -s /dev/null -b ipasam -d5 |grep Error Can't initialize passdb backend. [root@master ~]#
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2020:1083