[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via bc179e6b5e7 tests: Add SMB Py binding .deltree test case via 31d4f692ad9 s4:libcli: Fix error in smbcli_deltree() via da30c824b82 tests: Extend SMB test_save_load_text case to check overwrite via 629a41fc654 tests: Extend SMB Py binding .list() test-case via b84cea18fcc tests: Fix SMB Py binding .unlink() test case assertion via fa77209dea4 tests: Add SMB Py binding .chkpath() test case via 35e1a7989d2 autobuild: convert top_commit_msg to str for Py 3 via 25ab429371f autobuild: py3: cope with bytes when compiling system-info.txt from 8d333f43055 third_party/dnspython: Remove dnspython library from third_party https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit bc179e6b5e748042c9c247b1abc1c326e9c61d29 Author: Tim Beale Date: Thu Dec 6 16:16:36 2018 +1300 tests: Add SMB Py binding .deltree test case Add a more thorough test case that .deltree works as expected. Note that we get a slightly different NT_STATUS error in file_exists() if the parent directory doesn't exist, e.g. /non-existent-dir/nonexistent.txt BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett Autobuild-User(master): Andrew Bartlett Autobuild-Date(master): Wed Dec 12 08:23:07 CET 2018 on sn-devel-144 commit 31d4f692ad94cc5dfb82433cf6e3bd82ff805a4a Author: Tim Beale Date: Thu Dec 6 16:03:23 2018 +1300 s4:libcli: Fix error in smbcli_deltree() Commit 094afe614b6282 fixed an uninitialized variable, which meant we tried to delete the file twice. The 2nd time fails, so the function returns an error, instead of success (even though the file is now gone). Note we want to be using the source3 SMB library code going forward. However, fixing this bug makes it easier to write tests against the (currently s4) SMB python bindings. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett commit da30c824b8240e92ad4bcdcd174d56c39235412e Author: Tim Beale Date: Wed Dec 5 12:51:22 2018 +1300 tests: Extend SMB test_save_load_text case to check overwrite Extend the test case to check overwriting a file as well. Currently this has the behaviour of appending to the existing file, rather than overwriting the file with new contents. It's not clear from the API that this is the intended behaviour in this case, so I've marked it as a failure. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett commit 629a41fc6542cda9c2d60f99e8d7856aa1e081e5 Author: Tim Beale Date: Mon Dec 3 17:22:43 2018 +1300 tests: Extend SMB Py binding .list() test-case Extend the tests to better reflect some of the .list() functionality we expect. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett commit b84cea18fcc54f599db9580fd027b8d530d6b4bd Author: Tim Beale Date: Mon Dec 3 11:15:14 2018 +1300 tests: Fix SMB Py binding .unlink() test case assertion The current assertion would never detect if the unlink API is broken. The chkpath() API is only useful for checking if directories exist, so it will always return False for a regular file (regardless of whether the file actually exists or not). Rework the test case so we assert that the file exists by trying to read its contents (which will throw an error if the file doesn't exist). BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett commit fa77209dea48c623fa3052a65b2d8dad9f146198 Author: Tim Beale Date: Mon Dec 3 11:01:14 2018 +1300 tests: Add SMB Py binding .chkpath() test case chkpath was only tested incidentally (and that assertion was wrong). Add a proper test to prove it works correctly. We can then clean-up the incorrect assertion in the next patch. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13676 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett commit 35e1a7989d2af4508abe589ca4dcb1e73342b875 Author: Douglas Bagnall Date: Wed Dec 12 10:20:31 2018 +1300 autobuild: convert top_commit_msg to str for Py 3 Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett commit 25ab429371f7cd4d4cd572d843d3607f2ce1db6f Author: Douglas Bagnall Date: Wed Dec 12 10:17:38 2018 +1300 autobuild: py3: cope with bytes when compiling system-info.txt The command output looks like b'foo\nbar' in string-space. Signed-off-by: Douglas Bagnall Reviewed-by: Andrew Bartlett
autobuild[sn-devel-144]: intermittent test failure detected
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-12-0149/flakey.log The failure seems to be in the "samba" suite, whose build logs are available here: https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-12-0149/samba.stderr https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-12-0149/samba.stdout The top commit at the time of the failure was: commit 8d333f43055daf5e18623f2ad9e379f58ef5f8cd Author: Noel Power Date: Thu Dec 6 09:51:59 2018 + third_party/dnspython: Remove dnspython library from third_party This version of dnspython isn't python3 compatible and is quite old. Signed-off-by: Noel Power Reviewed-by: Andrew Bartlett Autobuild-User(master): Andrew Bartlett Autobuild-Date(master): Tue Dec 11 23:37:43 CET 2018 on sn-devel-144 and the last 50 lines of the stdout log were: [750(3977)/855 at 52m5s] samba.tests.py_credentials(vampire_dc) [751(3985)/855 at 52m8s] samba.tests.py_credentials(promoted_dc) [752(3993)/855 at 52m42s] samba.tests.emulate.traffic(ad_dc_ntvfs) [753(3995)/855 at 52m43s] samba.tests.emulate.traffic_packet(ad_dc_ntvfs) [754(4084)/855 at 53m51s] samba.tests.blackbox.traffic_replay(ad_dc_ntvfs) [755(4090)/855 at 54m3s] samba.tests.blackbox.traffic_learner(ad_dc_ntvfs) [756(4092)/855 at 54m4s] samba.tests.blackbox.traffic_summary(ad_dc_ntvfs) [757(4092)/855 at 54m4s] samba.tests.blackbox.smbcontrol(ad_dc_ntvfs:local) [758(4094)/855 at 54m6s] samba.tests.blackbox.smbcontrol(promoted_dc:local) [759(4096)/855 at 54m7s] samba4.ldap.python(ad_dc_ntvfs)(ad_dc_ntvfs) [760(4135)/855 at 54m19s] samba4.tokengroups.krb5.python(ad_dc_ntvfs)(ad_dc_ntvfs:local) [761(4145)/855 at 54m28s] samba4.tokengroups.ntlm.python(ad_dc_ntvfs)(ad_dc_ntvfs:local) [762(4154)/855 at 54m35s] samba4.sam.python(ad_dc_ntvfs)(ad_dc_ntvfs) [763(4171)/855 at 54m39s] samba4.user_account_control.python(ad_dc_ntvfs)(ad_dc_ntvfs) [764(4182)/855 at 54m53s] samba4.schemaInfo.python(ad_dc_ntvfs)(ad_dc_ntvfs) [765(4184)/855 at 54m56s] samba.tests.dsdb_schema_attributes(ad_dc_ntvfs:local) [766(4190)/855 at 55m11s] samba4.urgent_replication.python(ad_dc_ntvfs)(ad_dc_ntvfs:local) [767(4198)/855 at 55m13s] samba4.ldap.dirsync.python(ad_dc_ntvfs)(ad_dc_ntvfs) [768(4222)/855 at 56m46s] samba4.ldap.match_rules.python(ad_dc_ntvfs) [769(4256)/855 at 57m4s] samba4.ldap.notification.python(ad_dc_ntvfs)(ad_dc_ntvfs) [770(4259)/855 at 57m13s] samba4.ldap.sites.python(ad_dc_ntvfs)(ad_dc_ntvfs) [771(4270)/855 at 57m19s] samba4.ldap.sort.python(ad_dc_ntvfs)(ad_dc_ntvfs) [772(4277)/855 at 57m24s] samba4.ldap.vlv.python(ad_dc_ntvfs)(ad_dc_ntvfs) [773(4292)/855 at 1h1m34s] samba4.ldap.linked_attributes.python(ad_dc_ntvfs)(ad_dc_ntvfs:local) [774(4312)/855 at 1h1m39s] samba4.ldap.rodc.python(rodc)(rodc) [775(4318)/855 at 1h1m43s] samba4.ldap.rodc_rwdc.python(rodc)(rodc:local) [776(4338)/855 at 1h9m25s] samba4.drs.replica_sync_rodc.python(rodc)(rodc:local) [777(4340)/855 at 1h9m33s] samba4.ldap.passwordsettings.python(ad_dc_ntvfs) [778(4352)/855 at 1h10m11s] samba4.ldap_schema.python(ad_dc_ntvfs)(ad_dc_ntvfs) [779(4378)/855 at 1h13m14s] samba4.ldap.possibleInferiors.python(ad_dc_ntvfs)(ad_dc_ntvfs) UNEXPECTED(failure): samba4.ldap.possibleInferiors.python(ad_dc_ntvfs).objectClass.friendlyCountry(ad_dc_ntvfs) REASON: Exception: Exception: Returned incorrect list for objectclass friendlyCountry search: ['locality', 'organization', 'organizationalUnit', 'physicalLocation' 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 samba4.ldap.rodc_rwdc.python(rodc)(rodc:local) -> 462 samba4.ldap.vlv.python(ad_dc_ntvfs)(ad_dc_ntvfs) -> 249 samba4.rpc.samr.passwords.lockout on ncacn_np with (ad_dc_ntvfs) -> 226 samba4.rpc.samr.passwords.pwdlastset on ncacn_np with (ad_dc_ntvfs) -> 200 samba4.ldap_schema.python(ad_dc_ntvfs)(ad_dc_ntvfs) -> 183 samba3.smbtorture_s3.vfs_aio_fork(simpleserver).RW2(simpleserver) -> 135 samba4.ldb.ldaps with options -U"$USERNAME%$PASSWORD"(ad_dc_ntvfs)(ad_dc_ntvfs) -> 126 samba4.raw.notify(ad_dc_ntvfs) -> 106 samba4.ldap.dirsync.python(ad_dc_ntvfs)(ad_dc_ntvfs) -> 92 samba.tests.emulate.traffic_packet(ad_dc_ntvfs) -> 68 ERROR: test failed with exit code 1
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 8d333f43055 third_party/dnspython: Remove dnspython library from third_party via 923010d99bd various: Remove references to about to be deleted thirdparty/dnspython from 75d15484f3b s3-vfs: Prevent NULL pointer dereference in vfs_glusterfs. https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 8d333f43055daf5e18623f2ad9e379f58ef5f8cd Author: Noel Power Date: Thu Dec 6 09:51:59 2018 + third_party/dnspython: Remove dnspython library from third_party This version of dnspython isn't python3 compatible and is quite old. Signed-off-by: Noel Power Reviewed-by: Andrew Bartlett Autobuild-User(master): Andrew Bartlett Autobuild-Date(master): Tue Dec 11 23:37:43 CET 2018 on sn-devel-144 commit 923010d99bd79c36b8d6dbedef4228df4d6fa1b4 Author: Noel Power Date: Thu Dec 6 09:56:07 2018 + various: Remove references to about to be deleted thirdparty/dnspython Signed-off-by: Noel Power Reviewed-by: Andrew Bartlett --- Summary of changes: lib/README |1 - python/samba/emulate/traffic_packets.py|1 - source4/scripting/bin/samba_dnsupdate |1 - source4/scripting/bin/samba_upgradedns |1 - third_party/dnspython/.gitignore |7 - third_party/dnspython/ChangeLog| 1194 third_party/dnspython/LICENSE | 14 - third_party/dnspython/MANIFEST.in |3 - third_party/dnspython/Makefile | 56 - third_party/dnspython/README | 442 third_party/dnspython/TODO | 17 - third_party/dnspython/dns/__init__.py | 54 - third_party/dnspython/dns/dnssec.py| 372 -- third_party/dnspython/dns/e164.py | 79 -- third_party/dnspython/dns/edns.py | 142 --- third_party/dnspython/dns/entropy.py | 123 -- third_party/dnspython/dns/exception.py | 40 - third_party/dnspython/dns/flags.py | 106 -- third_party/dnspython/dns/hash.py | 67 -- third_party/dnspython/dns/inet.py | 108 -- third_party/dnspython/dns/ipv4.py | 42 - third_party/dnspython/dns/ipv6.py | 163 --- third_party/dnspython/dns/message.py | 1088 -- third_party/dnspython/dns/name.py | 702 third_party/dnspython/dns/namedict.py | 59 - third_party/dnspython/dns/node.py | 172 --- third_party/dnspython/dns/opcode.py| 104 -- third_party/dnspython/dns/query.py | 492 third_party/dnspython/dns/rcode.py | 119 -- third_party/dnspython/dns/rdata.py | 478 third_party/dnspython/dns/rdataclass.py| 114 -- third_party/dnspython/dns/rdataset.py | 329 -- third_party/dnspython/dns/rdatatype.py | 232 third_party/dnspython/dns/rdtypes/ANY/AFSDB.py | 51 - third_party/dnspython/dns/rdtypes/ANY/CERT.py | 131 --- third_party/dnspython/dns/rdtypes/ANY/CNAME.py | 24 - third_party/dnspython/dns/rdtypes/ANY/DLV.py | 20 - third_party/dnspython/dns/rdtypes/ANY/DNAME.py | 21 - third_party/dnspython/dns/rdtypes/ANY/DNSKEY.py| 94 -- third_party/dnspython/dns/rdtypes/ANY/DS.py| 20 - third_party/dnspython/dns/rdtypes/ANY/GPOS.py | 156 --- third_party/dnspython/dns/rdtypes/ANY/HINFO.py | 83 -- third_party/dnspython/dns/rdtypes/ANY/HIP.py | 140 --- third_party/dnspython/dns/rdtypes/ANY/ISDN.py | 96 -- third_party/dnspython/dns/rdtypes/ANY/LOC.py | 334 -- third_party/dnspython/dns/rdtypes/ANY/MX.py| 20 - third_party/dnspython/dns/rdtypes/ANY/NS.py| 20 - third_party/dnspython/dns/rdtypes/ANY/NSEC.py | 128 --- third_party/dnspython/dns/rdtypes/ANY/NSEC3.py | 182 --- .../dnspython/dns/rdtypes/ANY/NSEC3PARAM.py| 88 -- third_party/dnspython/dns/rdtypes/ANY/PTR.py | 20 - third_party/dnspython/dns/rdtypes/ANY/RP.py| 86 -- third_party/dnspython/dns/rdtypes/ANY/RRSIG.py | 155 --- third_party/dnspython/dns/rdtypes/ANY/RT.py| 20 - third_party/dnspython/dns/rdtypes/ANY/SOA.py | 127 --- third_party/dnspython/dns/rdtypes/ANY/SPF.py | 22 - third_party/dnspython/dns/rdtypes/ANY/SSHFP.py | 77 -- third_party/dnspython/dns/rdtypes/ANY/TXT.py | 20 - third_party/dnspython/dns/rdtypes/ANY/X25.py | 62 - third_party/dnspython/dns/rdtypes/ANY/__init_
autobuild[sn-devel-144]: intermittent test failure detected
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-11-1908/flakey.log The failure seems to be in the "samba-ad-dc-2" suite, whose build logs are available here: https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-11-1908/samba-ad-dc-2.stderr https://git.samba.org/autobuild.flakey.sn-devel-144/2018-12-11-1908/samba-ad-dc-2.stdout The top commit at the time of the failure was: commit 75d15484f3b71b1a2684c4a73e53aaa467f9932b Author: Günther Deschner Date: Wed Oct 10 17:32:25 2018 +0200 s3-vfs: Prevent NULL pointer dereference in vfs_glusterfs. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13708 Guenther Signed-off-by: Guenther Deschner Reviewed-by: Ralph Boehme Autobuild-User(master): Günther Deschner Autobuild-Date(master): Tue Dec 11 17:26:31 CET 2018 on sn-devel-144 and the last 50 lines of the stdout log were: [110(1093)/148 at 25m14s] samba4.ldap.acl.python(fl2000dc)(fl2000dc) [111(1146)/148 at 27m8s] samba4.ldap.login_basics.python(offlinebackupdc)(offlinebackupdc) [112(1148)/148 at 27m15s] samba4.ldap.login_basics.python(restoredc)(restoredc) [113(1150)/148 at 27m21s] samba4.ldap.login_basics.python(renamedc)(renamedc) [114(1152)/148 at 27m27s] samba4.ldap.login_basics.python(labdc)(labdc) [115(1154)/148 at 27m34s] samba.tests.posixacl(ad_dc_no_nss:local) [116(1223)/148 at 28m37s] samba4.rpc.echo(offlinebackupdc) [117(1233)/148 at 28m41s] samba4.rpc.echo(offlinebackupdc:local) [118(1243)/148 at 28m46s] samba4.rpc.echo.testallowed(offlinebackupdc:local) [119(1253)/148 at 28m50s] samba4.rpc.echo.testdenied(offlinebackupdc:local) [120(1263)/148 at 28m53s] samba4.blackbox.smbclient(offlinebackupdc:local)(offlinebackupdc:local) [121(1265)/148 at 28m55s] samba4.rpc.echo(restoredc) [122(1275)/148 at 29m0s] samba4.rpc.echo(restoredc:local) [123(1285)/148 at 29m4s] samba4.rpc.echo.testallowed(restoredc:local) [124(1295)/148 at 29m8s] samba4.rpc.echo.testdenied(restoredc:local) [125(1305)/148 at 29m12s] samba4.blackbox.smbclient(restoredc:local)(restoredc:local) [126(1307)/148 at 29m14s] samba4.rpc.echo(renamedc) [127(1317)/148 at 29m19s] samba4.rpc.echo(renamedc:local) [128(1327)/148 at 29m23s] samba4.rpc.echo.testallowed(renamedc:local) [129(1337)/148 at 29m27s] samba4.rpc.echo.testdenied(renamedc:local) [130(1347)/148 at 29m30s] samba4.blackbox.smbclient(renamedc:local)(renamedc:local) [131(1349)/148 at 29m33s] samba4.rpc.echo(labdc) [132(1359)/148 at 29m37s] samba4.rpc.echo(labdc:local) [133(1369)/148 at 29m41s] samba4.rpc.echo.testallowed(labdc:local) [134(1379)/148 at 29m42s] samba4.rpc.echo.testdenied(labdc:local) [135(1389)/148 at 29m42s] samba4.blackbox.smbclient(labdc:local)(labdc:local) [136(1391)/148 at 29m44s] samba4.drs.repl_schema.python(vampire_2000_dc)(vampire_2000_dc) [137(1400)/148 at 31m43s] samba.tests.blackbox.samba_dnsupdate(chgdcpass:local) UNEXPECTED(failure): samba.tests.blackbox.samba_dnsupdate.samba.tests.blackbox.samba_dnsupdate.SambaDnsUpdateTests.test_samba_dnsupate_set_ip(chgdcpass:local) REASON: Exception: Exception: Traceback (most recent call last): File "bin/python/samba/tests/blackbox/samba_dnsupdate.py", line 71, in test_samba_dnsupate_set_ip self.assertTrue(b"No DNS updates needed" in out, out + rpc_out) AssertionError: False is not true : b"IPs: ['fd00::5357:5f20']\nLooking for DNS entry chgdcpass.chgdcpassword.samba.example.com fd00::5357:5f20 as chgdcpass.chgdcpassword.samba.example.com.\nLooking for DNS entry NS chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com as chgdcpassword.samba.example.com.\nLooking for DNS entry NS _msdcs.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com as _msdcs.chgdcpassword.samba.example.com.\nLooking for DNS entry chgdcpassword.samba.example.com fd00::5357:5f20 as chgdcpassword.samba.example.com.\nLooking for DNS entry SRV _ldap._tcp.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com 389 as _ldap._tcp.chgdcpassword.samba.example.com.\nChecking 0 100 389 chgdcpass.chgdcpassword.samba.example.com. against SRV _ldap._tcp.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com 389\nLooking for DNS entry SRV _ldap._tcp.dc._msdcs.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com 389 as _ldap._tcp.dc._msdcs.chgdcpassword.samba.example.com.\nChecking 0 100 389 chgdcpass.chgdcpassword.samba.example.com. against SRV _ldap._tcp.dc._msdcs.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com 389\nLooking for DNS entry SRV _ldap._tcp.72393ffb-6d58-4ac9-8345-73c09249cce0.domains._msdcs.chgdcpassword.samba.example.com chgdcpass.chgdcpassword.samba.example.com 389 as _ldap._tcp.72393ffb-6d58-4ac9-8345-73c09249cce0.doma
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 75d15484f3b s3-vfs: Prevent NULL pointer dereference in vfs_glusterfs. from 884eeca39e9 s4:web_server: Fix build error https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 75d15484f3b71b1a2684c4a73e53aaa467f9932b Author: Günther Deschner Date: Wed Oct 10 17:32:25 2018 +0200 s3-vfs: Prevent NULL pointer dereference in vfs_glusterfs. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13708 Guenther Signed-off-by: Guenther Deschner Reviewed-by: Ralph Boehme Autobuild-User(master): Günther Deschner Autobuild-Date(master): Tue Dec 11 17:26:31 CET 2018 on sn-devel-144 --- Summary of changes: source3/modules/vfs_glusterfs.c | 176 +--- 1 file changed, 147 insertions(+), 29 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/modules/vfs_glusterfs.c b/source3/modules/vfs_glusterfs.c index 431f6fff48c..9b623a4658b 100644 --- a/source3/modules/vfs_glusterfs.c +++ b/source3/modules/vfs_glusterfs.c @@ -496,11 +496,33 @@ static DIR *vfs_gluster_opendir(struct vfs_handle_struct *handle, return (DIR *) fd; } +static glfs_fd_t *vfs_gluster_fetch_glfd(struct vfs_handle_struct *handle, +files_struct *fsp) +{ + glfs_fd_t **glfd = (glfs_fd_t **)VFS_FETCH_FSP_EXTENSION(handle, fsp); + if (glfd == NULL) { + DBG_INFO("Failed to fetch fsp extension\n"); + return NULL; + } + if (*glfd == NULL) { + DBG_INFO("Empty glfs_fd_t pointer\n"); + return NULL; + } + + return *glfd; +} + static DIR *vfs_gluster_fdopendir(struct vfs_handle_struct *handle, files_struct *fsp, const char *mask, uint32_t attributes) { - return (DIR *) *(glfs_fd_t **)VFS_FETCH_FSP_EXTENSION(handle, fsp); + glfs_fd_t *glfd = vfs_gluster_fetch_glfd(handle, fsp); + if (glfd == NULL) { + DBG_ERR("Failed to fetch gluster fd\n"); + return NULL; + } + + return (DIR *)glfd; } static int vfs_gluster_closedir(struct vfs_handle_struct *handle, DIR *dirp) @@ -591,8 +613,12 @@ static int vfs_gluster_open(struct vfs_handle_struct *handle, static int vfs_gluster_close(struct vfs_handle_struct *handle, files_struct *fsp) { - glfs_fd_t *glfd; - glfd = *(glfs_fd_t **)VFS_FETCH_FSP_EXTENSION(handle, fsp); + glfs_fd_t *glfd = vfs_gluster_fetch_glfd(handle, fsp); + if (glfd == NULL) { + DBG_ERR("Failed to fetch gluster fd\n"); + return -1; + } + VFS_REMOVE_FSP_EXTENSION(handle, fsp); return glfs_close(glfd); } @@ -601,7 +627,13 @@ static ssize_t vfs_gluster_pread(struct vfs_handle_struct *handle, files_struct *fsp, void *data, size_t n, off_t offset) { - return glfs_pread(*(glfs_fd_t **)VFS_FETCH_FSP_EXTENSION(handle, fsp), data, n, offset, 0); + glfs_fd_t *glfd = vfs_gluster_fetch_glfd(handle, fsp); + if (glfd == NULL) { + DBG_ERR("Failed to fetch gluster fd\n"); + return -1; + } + + return glfs_pread(glfd, data, n, offset, 0); } struct glusterfs_aio_state; @@ -803,6 +835,12 @@ static struct tevent_req *vfs_gluster_pread_send(struct vfs_handle_struct struct glusterfs_aio_state *state = NULL; struct tevent_req *req = NULL; int ret = 0; + glfs_fd_t *glfd = vfs_gluster_fetch_glfd(handle, fsp); + + if (glfd == NULL) { + DBG_ERR("Failed to fetch gluster fd\n"); + return NULL; + } state = aio_state_create(mem_ctx); @@ -826,8 +864,7 @@ static struct tevent_req *vfs_gluster_pread_send(struct vfs_handle_struct tevent_req_defer_callback(req, ev); PROFILE_TIMESTAMP(&state->start); - ret = glfs_pread_async(*(glfs_fd_t **)VFS_FETCH_FSP_EXTENSION(handle, - fsp), data, n, offset, 0, aio_glusterfs_done, + ret = glfs_pread_async(glfd, data, n, offset, 0, aio_glusterfs_done, state); if (ret < 0) { tevent_req_error(req, -ret); @@ -847,6 +884,12 @@ static struct tevent_req *vfs_gluster_pwrite_send(struct vfs_handle_struct struct glusterfs_aio_state *state = NULL; struct tevent_req *req = NULL; int ret = 0; + glfs_fd_t *glfd = vfs_gluster_fetch_glfd(handle, fsp); + + if (glfd == NULL) { + DBG_ERR("Failed to fetch gluster fd\n"); + return NULL; + } state = aio_state_create(mem_ctx); @@ -870,8 +913,7 @@ static str
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 884eeca39e9 s4:web_server: Fix build error from 6a7a9933171 lib: Remove sid_string_talloc https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 884eeca39e9f084eca5885182ce1690811c66f6c Author: Andreas Schneider Date: Tue Dec 11 09:39:17 2018 +0100 s4:web_server: Fix build error source4/web_server/wsgi.c:149:8: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] str = PyStr_AsUTF8AndSize(item, &size); ^ Signed-off-by: Andreas Schneider Reviewed-by: David Disseldorp Autobuild-User(master): Andreas Schneider Autobuild-Date(master): Tue Dec 11 13:58:30 CET 2018 on sn-devel-144 --- Summary of changes: source4/web_server/wsgi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Changeset truncated at 500 lines: diff --git a/source4/web_server/wsgi.c b/source4/web_server/wsgi.c index b506d105d32..a2499af6c08 100644 --- a/source4/web_server/wsgi.c +++ b/source4/web_server/wsgi.c @@ -143,7 +143,7 @@ static PyObject *py_error_writelines(PyObject *self, PyObject *args, PyObject *k } while ((item = PyIter_Next(seq))) { - char *str = NULL; + const char *str = NULL; Py_ssize_t size = 0; if (!IsPy3Bytes(item)) { str = PyStr_AsUTF8AndSize(item, &size); -- Samba Shared Repository