The autobuild test system (on sn-devel-144) has detected an intermittent failing test in the current master tree.
The autobuild log of the failure is available here: https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-03-0655/flakey.log The failure seems to be in the "samba-purepy3-ad-dc-2" suite, whose build logs are available here: https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-03-0655/samba-purepy3-ad-dc-2.stderr https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-03-0655/samba-purepy3-ad-dc-2.stdout The top commit at the time of the failure was: commit 46a6c6ff6d2fc68e313bcb2cd2c65b5a6e7c1782 Author: Ralph Boehme <[email protected]> Date: Fri Nov 30 10:27:19 2018 +0100 vfs_fruit: avoid dereferencing fsp->base_fsp in fruit_fstat_meta_stream() This helps avoiding a NULL dereference on systems where additional patches modify the following condition in open_file() if ((open_access_mask & (FILE_READ_DATA|FILE_WRITE_DATA|FILE_APPEND_DATA|FILE_EXECUTE)) || (!file_existed && (local_flags & O_CREAT)) || ((local_flags & O_TRUNC) == O_TRUNC) ) { to if ((open_access_mask & (FILE_READ_DATA|FILE_WRITE_DATA|FILE_APPEND_DATA|FILE_EXECUTE|DELETE_ACCESS)) || (!file_existed && (local_flags & O_CREAT)) || ((local_flags & O_TRUNC) == O_TRUNC) ) { Ie addtionally check open_access_mask against DELETE_ACCESS. As a result opens with DELETE_ACCESS go through the code that does an fd_open() plus a subsequent fstat(). That will trigger a crash in fruit_fstat_meta_stream() when a client wants to delete a file for deletion. When we open base file for delete, we call open_streams_for_delete() which internally calls create-file with NTCREATEX_OPTIONS_PRIVATE_STREAM_DELETE which prevents opening of the base_fsp. Voila, combined with the change described above you get a NULL deref. Signed-off-by: Ralph Boehme <[email protected]> Reviewed-by: Jeremy Allison <[email protected]> Autobuild-User(master): Jeremy Allison <[email protected]> Autobuild-Date(master): Sun Dec 2 07:52:34 CET 2018 on sn-devel-144 and the last 50 lines of the stdout log were: * Comparing [CONFIGURATION] context... * DN lists have different size: 1619 != 1618 * DNs found only in tdb:///memdisk/autobuild/fl/b750545/samba-purepy3-ad-dc-2/bin/ab/restoredc/private/sam.ldb: CN=25862E9F-8BD4-4006-B94B-616036D24B0C,CN=NTDS SETTINGS,CN=RESTOREDC,CN=SERVERS,CN=DEFAULT-FIRST-SITE-NAME,CN=SITES,CN=CONFIGURATION,DC=BACKUPDOM,DC=SAMBA,DC=EXAMPLE,DC=COM * Objects to be compared: 1618 * Result for [CONFIGURATION]: FAILURE SUMMARY --------- * Comparing [SCHEMA] context... * Objects to be compared: 1550 * Result for [SCHEMA]: SUCCESS * Comparing [DNSDOMAIN] context... * Objects to be compared: 39 * Result for [DNSDOMAIN]: SUCCESS * Comparing [DNSFOREST] context... * Objects to be compared: 17 * Result for [DNSFOREST]: SUCCESS ERROR: Compare failed: -1 FAILED (1 failures, 0 errors and 0 unexpected successes in 0 testsuites) A summary with detailed information can be found in: ./bin/ab/summary TOP 10 slowest tests samba.tests.samba_tool.dnscmd(chgdcpass:local) -> 250 samba.tests.domain_backup(restoredc:local) -> 163 samba.tests.dcerpc.raw_protocol(chgdcpass) -> 48 samba4.blackbox.join_ldapcmp(backupfromdc) -> 15 samba4.blackbox.join_ldapcmp(offlinebackupdc) -> 14 samba4.net.api.become.dc(fl2000dc) -> 11 samba4.blackbox.kinit(fl2000dc:local)(fl2000dc:local) -> 10 samba.wbinfo_sids2xids.(chgdcpass:local)(chgdcpass:local) -> 9 samba4.blackbox.chgdcpass(chgdcpass) -> 7 samba4.rpc.pac on ncacn_np(fl2000dc) -> 7 ERROR: test failed with exit code 1
