False ABI checker errors in libndr

Andrew Bartlett abartlet at samba.org
Mon Apr 9 15:08:43 MDT 2012


Jelmer,

Since you added ABI checking for libndr, there have been a number of
false positive ABI checking errors for this library.

The issue appears to be string formatting in gdb. 

Oddly, it can be seen even on the same host, when built from smbtorture4
under autoconf or from a top level waf build:

autoconf:
https://build.samba.org/build.cgi/build/a1bcbea7e78fe37377b68629a8f4fc5c8f30ceb2
waf:
https://build.samba.org/build.cgi/build/64fe1ec08ceb28651feb72584b70a9deb5f0ae04

The issue is:
enum ndr_err_code (struct ndr_pull *, int, gid_t *) -> enumlibndr.so:
symbol ndr_transfer_syntax_ndr64 has changed - please update major
version
	old_signature: uuid = {time_low = 1903232307, time_mid = 48826, time_hi_and_version = 18743, clock_seq = "\203\031", node = "\265\333\357\234\314\066"}, if_version = 1
	new_signature: uuid = {time_low = 1903232307, time_mid = 48826, time_hi_and_version = 18743, clock_seq = "\203\031", node = "���\234�6"}, if_version = 1
libndr.so: symbol ndr_transfer_syntax_ndr has changed - please update major version
	old_signature: uuid = {time_low = 2324192516, time_mid = 7403, time_hi_and_version = 4553, clock_seq = "\237\350", node = "\b\000+\020H`"}, if_version = 2
	new_signature: uuid = {time_low = 2324192516, time_mid = 7403, time_hi_and_version = 4553, clock_seq = "\237�", node = "\b\000+\020H`"}, if_version = 2
Waf: Leaving directory `/build/build_farm/samba_3_master/bin'
Build failed: ABI for libndr.so has changed - please fix library version then build with --abi-update

As you can see, the difference is the string formatting.  The actual
structure values shouldn't be part of the ABI, but the regular
expressions used on the gdb output scare me, so I'm not confident to fix
this myself.

Andrew Bartlett

-- 
Andrew Bartlett                                http://samba.org/~abartlet/
Authentication Developer, Samba Team           http://samba.org




More information about the samba-technical mailing list