libwbclient (LGPLv3) linking to samba-util (GPLv3) in Samba 4.12

Andrew Bartlett abartlet at samba.org
Thu Jul 2 19:30:58 UTC 2020


G'Day Folks,

I just noticed this because debian failed to build due to an extra
symbol added to our internal samba-util library.

samba-util is a 'big ball of mud' library of Samba stuff, licensed
GPLv3 and very, very helpful for stuff in Samba.  Work is slowly
happening to try and pry it apart into a directed graph of smaller
libraries, but for now that is how it works.

Either way, it is GPLv3 and is therefore not permitted to be a
dependency of libwbclient, which is our tiny winbind client lib for
linking into OTHER PARTS of a running system, eg nss, pam and
potentially other tools.  It is LGPLv3, and important distinction.

I don't know why our ABI stuff didn't pick it up, but I know some on
the team have ideas about how to reinforce that.

We need to disconnect these two parts, then try and undo the damage in
the distributions due to the extra symbols. 

Andrew Bartlett

commit ea7231dcc0b50c535f913f0542d600d0b2119a21
Author: Swen Schillig <swen at linux.ibm.com>
Date:   Tue Jan 29 14:21:25 2019 +0100

    libwbclient: Use wrapper for string to integer conversion
    
    In order to detect an value overflow error during
    the string to integer conversion with strtoul/strtoull,
    the errno variable must be set to zero before the execution and
    checked after the conversion is performed. This is achieved by
    using the wrapper function strtoul_err and strtoull_err.
    
    Signed-off-by: Swen Schillig <swen at linux.ibm.com>
    Reviewed-by: Ralph Böhme <slow at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>

diff --git a/nsswitch/libwbclient/wscript
b/nsswitch/libwbclient/wscript
index 7bb612d670a..d926067df91 100644
--- a/nsswitch/libwbclient/wscript
+++ b/nsswitch/libwbclient/wscript
@@ -37,7 +37,7 @@ def build(bld):
                              wbc_pwd.c
                              wbc_sid.c
                              wbc_util.c''',
-                      deps='winbind-client',
+                      deps='winbind-client samba-util',
                       pc_files='wbclient.pc',
                       public_headers='wbclient.h',
                       abi_directory='ABI',

-- 
Andrew Bartlett                       https://samba.org/~abartlet/
Authentication Developer, Samba Team  https://samba.org
Samba Developer, Catalyst IT          
https://catalyst.net.nz/services/samba






More information about the samba-technical mailing list