diff options
Diffstat (limited to 'source4/torture/raw/mux.c')
-rw-r--r-- | source4/torture/raw/mux.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source4/torture/raw/mux.c b/source4/torture/raw/mux.c index f7d8b430df..a5fd0ed3f0 100644 --- a/source4/torture/raw/mux.c +++ b/source4/torture/raw/mux.c @@ -206,6 +206,7 @@ static BOOL test_mux_lock(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) BOOL ret = True; struct smbcli_request *req; struct smb_lock_entry lock[1]; + struct timeval t; printf("TESTING MULTIPLEXED LOCK/LOCK/UNLOCK\n"); @@ -238,6 +239,7 @@ static BOOL test_mux_lock(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) CHECK_STATUS(status, NT_STATUS_FILE_LOCK_CONFLICT); printf("this will too, but we'll unlock while waiting\n"); + t = timeval_current(); req = smb_raw_lock_send(cli->tree, &io); printf("unlock the first range\n"); @@ -252,6 +254,12 @@ static BOOL test_mux_lock(struct smbcli_state *cli, TALLOC_CTX *mem_ctx) status = smbcli_request_simple_recv(req); CHECK_STATUS(status, NT_STATUS_OK); + printf("async lock took %.2f msec\n", timeval_elapsed(&t) * 1000); + if (timeval_elapsed(&t) > 0.1) { + printf("failed to trigger early lock retry\n"); + return False; + } + printf("reopening with an exit\n"); smb_raw_exit(cli->session); fnum = smbcli_open(cli->tree, BASEDIR "\\write.dat", O_RDWR | O_CREAT, DENY_NONE); |