[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via b4a730d s3:selftest: run smbtorture3 CHAIN1/CHAIN2 tests from 4aba775 tevent: don't force the nesting flag to false in the destructor http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit b4a730d353d67df3e42c427afb8051015a5e175b Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 22:32:49 2011 +0200 s3:selftest: run smbtorture3 CHAIN1/CHAIN2 tests metze Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 09:37:04 CEST 2011 on sn-devel-104 --- Summary of changes: source3/selftest/skip |1 - source3/selftest/tests.py |2 +- 2 files changed, 1 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/selftest/skip b/source3/selftest/skip index 4366ae6..5e68172 100644 --- a/source3/selftest/skip +++ b/source3/selftest/skip @@ -12,7 +12,6 @@ ^samba3.smbtorture_s3.*.mangle ^samba3.smbtorture_s3.*.utable ^samba3.smbtorture_s3.*.pipe_number -^samba3.smbtorture_s3.*.CHAIN1 ^samba3.*base.charset ^samba3.*raw.acls ^samba3.*raw.composite diff --git a/source3/selftest/tests.py b/source3/selftest/tests.py index 23e4c6e..a7e3ea5 100755 --- a/source3/selftest/tests.py +++ b/source3/selftest/tests.py @@ -56,7 +56,7 @@ tests=[ FDPASS, LOCK1, LOCK2, LOCK3, LOCK4, LOCK5, LOCK6, LOCK7, OPLOCK1, OPLOCK2, OPLOCK4, STREAMERROR, DIR, DIR1, DIR-CREATETIME, TCON, TCONDEV, RW1, RW2, RW3, RW-SIGNING, OPEN, XCOPY, RENAME, DELETE, DELETE-LN, PROPERTIES, W2K, -TCON2, IOCTL, CHKPATH, FDSESS, LOCAL-SUBSTITUTE, CHAIN1, +TCON2, IOCTL, CHKPATH, FDSESS, LOCAL-SUBSTITUTE, CHAIN1, CHAIN2, GETADDRINFO, POSIX, UID-REGRESSION-TEST, SHORTNAME-TEST, LOCAL-BASE64, LOCAL-GENCACHE, POSIX-APPEND, CASE-INSENSITIVE-CREATE, SMB2-BASIC, -- Samba Shared Repository
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 6b3a12b s4-test: use standard process model for 'dc' server via 63e5b39 socket-wrapped: added wrappers for dup() and dup2() from b4a730d s3:selftest: run smbtorture3 CHAIN1/CHAIN2 tests http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 6b3a12b0f4c38c87a1f1ff4227ab78ac7624289d Author: Andrew Tridgell tri...@samba.org Date: Fri Aug 12 14:37:04 2011 +1000 s4-test: use standard process model for 'dc' server this provides us with both 'standard' and 'single' process models in selftest, ensuring that we test the standard process model in the build farm Pair-Programmed-With: Andrew Bartlett abart...@samba.org Autobuild-User: Andrew Tridgell tri...@samba.org Autobuild-Date: Fri Aug 12 11:06:50 CEST 2011 on sn-devel-104 commit 63e5b395d00535c88274bafb9d5e4b0e9d753b36 Author: Andrew Tridgell tri...@samba.org Date: Fri Aug 12 14:28:03 2011 +1000 socket-wrapped: added wrappers for dup() and dup2() The Samba4 standard process model uses dup() on incoming sockets as an optimisation (it makes select() a tiny bit faster when used). Adding dup() to socket wrapper allows us to use the standard process model in selftest Pair-Programmed-With: Andrew Bartlett abart...@samba.org --- Summary of changes: lib/socket_wrapper/socket_wrapper.c | 122 ++- lib/socket_wrapper/socket_wrapper.h | 11 +++ selftest/target/Samba4.pm | 32 -- 3 files changed, 143 insertions(+), 22 deletions(-) Changeset truncated at 500 lines: diff --git a/lib/socket_wrapper/socket_wrapper.c b/lib/socket_wrapper/socket_wrapper.c index 2b52626..9469809 100644 --- a/lib/socket_wrapper/socket_wrapper.c +++ b/lib/socket_wrapper/socket_wrapper.c @@ -127,6 +127,8 @@ #define real_writev writev #define real_socket socket #define real_close close +#define real_dup dup +#define real_dup2 dup2 #endif #ifdef HAVE_GETTIMEOFDAY_TZ @@ -225,7 +227,6 @@ struct socket_info int connected; int defer_connect; - char *path; char *tmp_path; struct sockaddr *myname; @@ -2523,7 +2524,6 @@ _PUBLIC_ int swrap_close(int fd) swrap_dump_packet(si, NULL, SWRAP_CLOSE_ACK, NULL, 0); } - if (si-path) free(si-path); if (si-myname) free(si-myname); if (si-peername) free(si-peername); if (si-tmp_path) { @@ -2534,3 +2534,121 @@ _PUBLIC_ int swrap_close(int fd) return ret; } + +_PUBLIC_ int swrap_dup(int fd) +{ + struct socket_info *si, *si2; + int fd2; + + si = find_socket_info(fd); + + if (!si) { + return real_dup(fd); + } + + if (si-tmp_path) { + /* we would need reference counting to handle this */ + errno = EINVAL; + return -1; + } + + fd2 = real_dup(fd); + if (fd2 == -1) { + return -1; + } + + si2 = (struct socket_info *)malloc(sizeof(struct socket_info)); + if (si2 == NULL) { + real_close(fd2); + errno = ENOMEM; + return -1; + } + + /* copy the whole structure, then duplicate pointer elements */ + *si2 = *si; + + si2-fd = fd2; + + if (si2-myname) { + si2-myname = sockaddr_dup(si2-myname, si2-myname_len); + if (si2-myname == NULL) { + real_close(fd2); + errno = ENOMEM; + return -1; + } + } + + if (si2-peername) { + si2-peername = sockaddr_dup(si2-peername, si2-peername_len); + if (si2-peername == NULL) { + real_close(fd2); + errno = ENOMEM; + return -1; + } + } + + SWRAP_DLIST_ADD(sockets, si2); + return fd2; +} + +_PUBLIC_ int swrap_dup2(int fd, int newfd) +{ + struct socket_info *si, *si2; + int fd2; + + si = find_socket_info(fd); + + if (!si) { + return real_dup2(fd, newfd); + } + + if (si-tmp_path) { + /* we would need reference counting to handle this */ + errno = EINVAL; + return -1; + } + + if (find_socket_info(newfd)) { + /* dup2() does an implicit close of newfd, which we +* need to emulate */ + swrap_close(newfd); + } + + fd2 = real_dup2(fd, newfd); + if (fd2 == -1) { + return -1; + } + + si2 = (struct socket_info *)malloc(sizeof(struct socket_info)); + if (si2 == NULL) { + real_close(fd2); + errno = ENOMEM; + return
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 0d1a7fd s3:libsmb: keep the request order in cli_smb_req_unset_pending() via edeb41a s3:libsmb: use tevent_req_defer_callback() unless there's only one request in cli_smb_received() via 02cb205 s3:libsmb: make use of cli_state_receive_next() in cli_smb_received() via 56d3c91 s3:libsmb: notify all request about failures in cli_smb_req_set_pending() via 4335a4f s3:libsmb: split out cli_state_receive_next() from cli_smb_req_set_pending() via ca56711 s3:libsmb: use talloc_stackframe() in cli_smb_received() via bae9324 s3:libsmb: call cli_smb_req_unset_pending() before tevent_req_done() also for chained requests via d41d2e9 s3:libsmb: reset the destructor in cli_smb_req_unset_pending() via c01b832 s3:libsmb: add cli_state_notify_pending() and use it from 6b3a12b s4-test: use standard process model for 'dc' server http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 0d1a7fda1ef5e1358228ab2b5e74b18a877e0732 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 08:39:15 2011 +0200 s3:libsmb: keep the request order in cli_smb_req_unset_pending() metze Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 12:36:03 CEST 2011 on sn-devel-104 commit edeb41aa204ca9814602bee1c7d9be32e5f737b5 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:45:26 2011 +0200 s3:libsmb: use tevent_req_defer_callback() unless there's only one request in cli_smb_received() Callers of tevent_req_done() (or similar functions) have to return directly. Otherwise the callback could invalidate the current stack state, which is likely to trigger segfaults. If there was only one pending request and we just got the response for that one, we can use tevent_req_done() directly. Otherwise there're more pending requests and we need to call cli_state_receive_next() or we got the response for chained requests. Both means that we have to use tevent_req_defer_callback(). metze commit 02cb2052d8c68a3ba6dc8a19f580f25039321a75 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:28:06 2011 +0200 s3:libsmb: make use of cli_state_receive_next() in cli_smb_received() metze commit 56d3c91af70809fbdd86de888ac983a41e070ca3 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:26:31 2011 +0200 s3:libsmb: notify all request about failures in cli_smb_req_set_pending() It's up to the caller to notify the current request, but we have to notify all other pending requests if we're not able to read the next response from the server. metze commit 4335a4f1c6ad4e8dfcd4cc1bcd8b3ec2f258a4d8 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:16:02 2011 +0200 s3:libsmb: split out cli_state_receive_next() from cli_smb_req_set_pending() metze commit ca567117b028d8954453585bfb753e7f01c98319 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:07:55 2011 +0200 s3:libsmb: use talloc_stackframe() in cli_smb_received() metze commit bae9324e50c7513b2cae20bb352dbd01471c Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:18:58 2011 +0200 s3:libsmb: call cli_smb_req_unset_pending() before tevent_req_done() also for chained requests metze commit d41d2e93f4e13e7975bcd8d4b7dc125f81ef2559 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 12:18:26 2011 +0200 s3:libsmb: reset the destructor in cli_smb_req_unset_pending() metze commit c01b8326e05c4113e3e979e02061fbc47476dadd Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 09:35:38 2011 +0200 s3:libsmb: add cli_state_notify_pending() and use it If we got a problem on the connection we need to notify every pending request. But we need to make use of tevent_req_defer_callback() before tevent_req_nterror(), otherwise the callback, triggered by tevent_req_nterror(), could invalidate the state of current caller, which will likely cause segfaults. metze --- Summary of changes: source3/libsmb/async_smb.c | 190 +++- 1 files changed, 135 insertions(+), 55 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c index ecc7780..488e953 100644 --- a/source3/libsmb/async_smb.c +++ b/source3/libsmb/async_smb.c @@ -132,6 +132,8 @@ void cli_smb_req_unset_pending(struct tevent_req *req) return; } + talloc_set_destructor(req, NULL); + if (num_pending == 1) { /* * The pending read_smb tevent_req is a child of @@ -160,7 +162,9 @@ void
autobuild: intermittent test failure detected
The autobuild test system has detected an intermittent failing test in the current master tree. The autobuild log of the failure is available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/flakey.log The samba3 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba3.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba3.stdout The source4 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba4.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba4.stdout The top commit at the time of the failure was: commit 6b3a12b0f4c38c87a1f1ff4227ab78ac7624289d Author: Andrew Tridgell tri...@samba.org Date: Fri Aug 12 14:37:04 2011 +1000 s4-test: use standard process model for 'dc' server this provides us with both 'standard' and 'single' process models in selftest, ensuring that we test the standard process model in the build farm Pair-Programmed-With: Andrew Bartlett abart...@samba.org Autobuild-User: Andrew Tridgell tri...@samba.org Autobuild-Date: Fri Aug 12 11:06:50 CEST 2011 on sn-devel-104
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 81d3f92 selftest:Samba4: test --domain-critical-only in provision_vampire_dc() via f34f16f s3:samba-tool: add --domain-critical-only to samba-tool domain join via 5d6b848 s4:py/samba/join: add domain_critical_only=False to join_DC/join_RODC via a3f2621 s4:py/samba/drs_utils: pass down req/req_level to self.net.replicate_chunk() via daf5676 s4:libnet_vampire: don't keep the replication state if DRSUAPI_DRS_CRITICAL_ONLY was used via 47fcbd7 s4:libnet: passdown the DsGetNCChangesReq* to the libnet_BecomeDC_StoreChunk handler via da7d22d selftest:target/Samba4: use the correct configuration in setup_vampire_dc() from 0d1a7fd s3:libsmb: keep the request order in cli_smb_req_unset_pending() http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 81d3f92155856891ee0ac74cada3bbdd3e7670e1 Author: Stefan Metzmacher me...@samba.org Date: Thu Aug 11 23:07:35 2011 +0200 selftest:Samba4: test --domain-critical-only in provision_vampire_dc() This way only only replicate critical objects during the initial join as DC, then we'll replicate the whole domain while 'samba' is running. metze Signed-off-by: Andrew Tridgell tri...@samba.org Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 14:07:50 CEST 2011 on sn-devel-104 commit f34f16f7f87d39cd21ce43c51ccb5726ff44c959 Author: Stefan Metzmacher me...@samba.org Date: Mon Aug 8 11:15:35 2011 +0200 s3:samba-tool: add --domain-critical-only to samba-tool domain join metze Signed-off-by: Andrew Tridgell tri...@samba.org commit 5d6b8483943697cc10fe7e42fcf2d544f5758dbc Author: Stefan Metzmacher me...@samba.org Date: Mon Aug 8 11:01:21 2011 +0200 s4:py/samba/join: add domain_critical_only=False to join_DC/join_RODC metze Signed-off-by: Andrew Tridgell tri...@samba.org commit a3f262182a65de04a41a336c7c08854723879065 Author: Stefan Metzmacher me...@samba.org Date: Mon Aug 8 10:47:12 2011 +0200 s4:py/samba/drs_utils: pass down req/req_level to self.net.replicate_chunk() metze Signed-off-by: Andrew Tridgell tri...@samba.org commit daf56768c6487dc94e6a337297d065a378fe237a Author: Stefan Metzmacher me...@samba.org Date: Tue Aug 9 12:23:29 2011 +0200 s4:libnet_vampire: don't keep the replication state if DRSUAPI_DRS_CRITICAL_ONLY was used In that case we have incomplete information and need to start from 0 in the next run. metze Signed-off-by: Andrew Tridgell tri...@samba.org commit 47fcbd71ae811eb479fe479f4526fe11c0fa86b6 Author: Stefan Metzmacher me...@samba.org Date: Mon Aug 8 10:29:05 2011 +0200 s4:libnet: passdown the DsGetNCChangesReq* to the libnet_BecomeDC_StoreChunk handler metze Signed-off-by: Andrew Tridgell tri...@samba.org commit da7d22dadeec3bb41da0bd1e49c28ab20e83cf9f Author: Stefan Metzmacher me...@samba.org Date: Tue Aug 9 12:20:54 2011 +0200 selftest:target/Samba4: use the correct configuration in setup_vampire_dc() This allows TDB_NO_FSYNC=1 make -j test TESTS=vampire to work. metze Signed-off-by: Andrew Tridgell tri...@samba.org --- Summary of changes: selftest/target/Samba4.pm |4 +- source4/libnet/libnet_become_dc.c | 25 source4/libnet/libnet_become_dc.h |4 ++ source4/libnet/libnet_vampire.c | 30 ++ source4/libnet/py_net.c | 47 +-- source4/scripting/python/samba/drs_utils.py |3 +- source4/scripting/python/samba/join.py | 13 +- source4/scripting/python/samba/netcmd/domain.py | 12 - 8 files changed, 126 insertions(+), 12 deletions(-) Changeset truncated at 500 lines: diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm index 89faf01..df5a8bb 100644 --- a/selftest/target/Samba4.pm +++ b/selftest/target/Samba4.pm @@ -1005,7 +1005,7 @@ sub provision_vampire_dc($$$) $cmd .= SOCKET_WRAPPER_DEFAULT_IFACE=\$ret-{SOCKET_WRAPPER_DEFAULT_IFACE}\ ; $cmd .= KRB5_CONFIG=\$ret-{KRB5_CONFIG}\ ; $cmd .= $samba_tool domain join $ret-{CONFIGURATION} $dcvars-{REALM} DC --realm=$dcvars-{REALM}; - $cmd .= -U$dcvars-{DC_USERNAME}\%$dcvars-{DC_PASSWORD}; + $cmd .= -U$dcvars-{DC_USERNAME}\%$dcvars-{DC_PASSWORD} --domain-critical-only; unless (system($cmd) == 0) { warn(Join failed\n$cmd); @@ -1525,6 +1525,7 @@ sub setup_vampire_dc($$$) $cmd .= SOCKET_WRAPPER_DEFAULT_IFACE=\$env-{SOCKET_WRAPPER_DEFAULT_IFACE}\; $cmd .= KRB5_CONFIG=\$env-{KRB5_CONFIG}\; $cmd .=
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via 42cde04 s3:smb2_server: make sure we prefer responses over requests on the client socket from 81d3f92 selftest:Samba4: test --domain-critical-only in provision_vampire_dc() http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit 42cde0480bd6a5e2dddaa66917e1fa71e6a4edcd Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 5 20:34:43 2011 +0200 s3:smb2_server: make sure we prefer responses over requests on the client socket metze Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 16:46:43 CEST 2011 on sn-devel-104 --- Summary of changes: source3/smbd/smb2_server.c | 64 +++ 1 files changed, 52 insertions(+), 12 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/smb2_server.c b/source3/smbd/smb2_server.c index e40c594..6fc4b5d 100644 --- a/source3/smbd/smb2_server.c +++ b/source3/smbd/smb2_server.c @@ -1826,6 +1826,8 @@ void smbd_smb2_request_dispatch_immediate(struct tevent_context *ctx, } } +static NTSTATUS smbd_smb2_request_next_incoming(struct smbd_server_connection *sconn); + static void smbd_smb2_request_writev_done(struct tevent_req *subreq) { struct smbd_smb2_request *req = tevent_req_callback_data(subreq, @@ -1833,17 +1835,24 @@ static void smbd_smb2_request_writev_done(struct tevent_req *subreq) struct smbd_server_connection *sconn = req-sconn; int ret; int sys_errno; + NTSTATUS status; ret = tstream_writev_queue_recv(subreq, sys_errno); TALLOC_FREE(subreq); TALLOC_FREE(req); if (ret == -1) { - NTSTATUS status = map_nt_error_from_unix(sys_errno); + status = map_nt_error_from_unix(sys_errno); DEBUG(2,(smbd_smb2_request_writev_done: client write error %s\n, nt_errstr(status))); smbd_server_connection_terminate(sconn, nt_errstr(status)); return; } + + status = smbd_smb2_request_next_incoming(sconn); + if (!NT_STATUS_IS_OK(status)) { + smbd_server_connection_terminate(sconn, nt_errstr(status)); + return; + } } NTSTATUS smbd_smb2_request_done_ex(struct smbd_smb2_request *req, @@ -2450,12 +2459,47 @@ static NTSTATUS smbd_smb2_request_read_recv(struct tevent_req *req, static void smbd_smb2_request_incoming(struct tevent_req *subreq); +static NTSTATUS smbd_smb2_request_next_incoming(struct smbd_server_connection *sconn) +{ + size_t max_send_queue_len; + size_t cur_send_queue_len; + struct tevent_req *subreq; + + if (tevent_queue_length(sconn-smb2.recv_queue) 0) { + /* +* if there is already a smbd_smb2_request_read +* pending, we are done. +*/ + return NT_STATUS_OK; + } + + max_send_queue_len = MAX(1, sconn-smb2.max_credits/16); + cur_send_queue_len = tevent_queue_length(sconn-smb2.send_queue); + + if (cur_send_queue_len max_send_queue_len) { + /* +* if we have a lot of requests to send, +* we wait until they are on the wire until we +* ask for the next request. +*/ + return NT_STATUS_OK; + } + + /* ask for the next request */ + subreq = smbd_smb2_request_read_send(sconn, sconn-smb2.event_ctx, sconn); + if (subreq == NULL) { + return NT_STATUS_NO_MEMORY; + } + tevent_req_set_callback(subreq, smbd_smb2_request_incoming, sconn); + + return NT_STATUS_OK; +} + void smbd_smb2_first_negprot(struct smbd_server_connection *sconn, const uint8_t *inbuf, size_t size) { NTSTATUS status; struct smbd_smb2_request *req = NULL; - struct tevent_req *subreq; DEBUG(10,(smbd_smb2_first_negprot: packet length %u\n, (unsigned int)size)); @@ -2484,13 +2528,11 @@ void smbd_smb2_first_negprot(struct smbd_server_connection *sconn, return; } - /* ask for the next request */ - subreq = smbd_smb2_request_read_send(sconn, sconn-smb2.event_ctx, sconn); - if (subreq == NULL) { - smbd_server_connection_terminate(sconn, no memory for reading); + status = smbd_smb2_request_next_incoming(sconn); + if (!NT_STATUS_IS_OK(status)) { + smbd_server_connection_terminate(sconn, nt_errstr(status)); return; } - tevent_req_set_callback(subreq, smbd_smb2_request_incoming, sconn); sconn-num_requests++; } @@ -2542,13 +2584,11 @@ static void smbd_smb2_request_incoming(struct tevent_req *subreq)
Re: autobuild: intermittent test failure detected
Hi Tridge, The autobuild log of the failure is available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/flakey.log The samba3 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba3.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba3.stdout The source4 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba4.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1305/samba4.stdout The top commit at the time of the failure was: commit 6b3a12b0f4c38c87a1f1ff4227ab78ac7624289d Author: Andrew Tridgell tri...@samba.org Date: Fri Aug 12 14:37:04 2011 +1000 s4-test: use standard process model for 'dc' server this provides us with both 'standard' and 'single' process models in selftest, ensuring that we test the standard process model in the build farm Pair-Programmed-With: Andrew Bartlett abart...@samba.org I fear this change made autobuild a bit more unstable I saw the following error a few times today: [1064/1145 in 1h2m11s] samba4.nbt.winsreplication(dc) Test if we always get back the same assoc_ctx Setup wrepl connections UNEXPECTED(failure): samba4.nbt.winsreplication.assoc_ctx2 REASON: _StringException: _StringException: ../source4/torture/nbt/winsreplication.c:200: status was NT_STATUS_HOST_UNREACHABLE, expected NT_STATUS_OK: Incorrect status I also noticed that samba4 make test needs over 1h 20 now. metze signature.asc Description: OpenPGP digital signature
autobuild: intermittent test failure detected
The autobuild test system has detected an intermittent failing test in the current master tree. The autobuild log of the failure is available here: http://git.samba.org/autobuild.flakey/2011-08-12-1900/flakey.log The samba3 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1900/samba3.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1900/samba3.stdout The source4 build logs are available here: http://git.samba.org/autobuild.flakey/2011-08-12-1900/samba4.stderr http://git.samba.org/autobuild.flakey/2011-08-12-1900/samba4.stdout The top commit at the time of the failure was: commit 42cde0480bd6a5e2dddaa66917e1fa71e6a4edcd Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 5 20:34:43 2011 +0200 s3:smb2_server: make sure we prefer responses over requests on the client socket metze Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 16:46:43 CEST 2011 on sn-devel-104
[SCM] Samba Shared Repository - branch master updated
The branch, master has been updated via eeb0298 s3:smb2cli: pass more fields to smb2cli_req_create()/smb2cli_req_send() via 28c4d2d s3:smb2cli: allow 32bit dyn_len in smb2cli_req_create()/smb2cli_req_send() via b41d44e s3:libsmb: keep a cli_smb_state-one_way via c485df9 s3:libsmb: abstract the incoming dispatch function via a function pointer via 58003b5 s3:libsmb: split out cli_state_dispatch_smb1() from cli_smb_received() via 9b15963 s3:libsmb: add missing TALLOC_FREE(frame) to cli_smb_received() from 42cde04 s3:smb2_server: make sure we prefer responses over requests on the client socket http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log - commit eeb0298ac1ba70d5114b48d7de4549e80d83e709 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 17:26:13 2011 +0200 s3:smb2cli: pass more fields to smb2cli_req_create()/smb2cli_req_send() The caller should take care of the global cli_state values. metze Autobuild-User: Stefan Metzmacher me...@samba.org Autobuild-Date: Fri Aug 12 19:38:27 CEST 2011 on sn-devel-104 commit 28c4d2d0f318d017e356cf8e80ff0da516346fee Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 17:23:04 2011 +0200 s3:smb2cli: allow 32bit dyn_len in smb2cli_req_create()/smb2cli_req_send() metze commit b41d44eda3ae7d72b3ddcfbd749b19f900bcd958 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 17:40:04 2011 +0200 s3:libsmb: keep a cli_smb_state-one_way This moves the SMB1 specific stuff to cli_smb_req_create(), instead of having it in the core dispatching code. metze commit c485df9530fda65fb1a2142f53c60638d2ca1923 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 14:50:09 2011 +0200 s3:libsmb: abstract the incoming dispatch function via a function pointer This will allow handling of SMB2 in future. metze commit 58003b5a77910ec54fd84f71a26e582af0f83e98 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 14:41:23 2011 +0200 s3:libsmb: split out cli_state_dispatch_smb1() from cli_smb_received() metze commit 9b15963695ab196380834af703e9f193092a2263 Author: Stefan Metzmacher me...@samba.org Date: Fri Aug 12 14:44:44 2011 +0200 s3:libsmb: add missing TALLOC_FREE(frame) to cli_smb_received() metze --- Summary of changes: source3/include/client.h | 11 +++ source3/libsmb/async_smb.c | 144 ++ source3/libsmb/smb2cli_base.c| 26 -- source3/libsmb/smb2cli_base.h| 16 +++- source3/libsmb/smb2cli_close.c |6 +- source3/libsmb/smb2cli_create.c |6 +- source3/libsmb/smb2cli_flush.c |6 +- source3/libsmb/smb2cli_negprot.c |5 +- source3/libsmb/smb2cli_query_directory.c |6 +- source3/libsmb/smb2cli_read.c|6 +- source3/libsmb/smb2cli_session.c | 11 ++- source3/libsmb/smb2cli_tcon.c| 12 ++- source3/libsmb/smb2cli_write.c |6 +- 13 files changed, 183 insertions(+), 78 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/include/client.h b/source3/include/client.h index f44e52f..79ce709 100644 --- a/source3/include/client.h +++ b/source3/include/client.h @@ -128,6 +128,17 @@ struct cli_state { struct tevent_req *read_smb_req; struct tevent_queue *outgoing; struct tevent_req **pending; + /* +* The incoming dispatch function should return: +* - NT_STATUS_RETRY, if more incoming PDUs are expected. +* - NT_STATUS_OK, if no more processing is desired, e.g. +* the dispatch function called +* tevent_req_done(). +* - All other return values disconnect the connection. +*/ + NTSTATUS (*dispatch_incoming)(struct cli_state *cli, + TALLOC_CTX *frame, + uint8_t *inbuf); } conn; struct { diff --git a/source3/libsmb/async_smb.c b/source3/libsmb/async_smb.c index 488e953..5f2a644 100644 --- a/source3/libsmb/async_smb.c +++ b/source3/libsmb/async_smb.c @@ -89,6 +89,8 @@ struct cli_smb_state { int chain_num; int chain_length; struct tevent_req **chained_requests; + + bool one_way; }; static uint16_t cli_alloc_mid(struct cli_state *cli) @@ -228,6 +230,9 @@ bool cli_smb_req_set_pending(struct tevent_req *req) } static void cli_smb_received(struct tevent_req *subreq); +static NTSTATUS cli_state_dispatch_smb1(struct cli_state *cli, +
Re: autobuild: intermittent test failure detected
Hi Metze, s4-test: use standard process model for 'dc' server this provides us with both 'standard' and 'single' process models in selftest, ensuring that we test the standard process model in the build farm Pair-Programmed-With: Andrew Bartlett abart...@samba.org I fear this change made autobuild a bit more unstable I saw the following error a few times today: The change really is quite important. We have previously only been testing S4 in single mode in the build farm, which doesn't represent how real users run it. A bug was introduced in tevent a while ago which broke standard mode, and we didn't even notice. If this has made some tests less stable then we need to fix those tests. Perhaps the timing is less predictable in standard mode. I also noticed that samba4 make test needs over 1h 20 now. It has needed well over an hour for a while now. The big jump was the change to run all the s3 tests in the top level build. Cheers, Tridge