summaryrefslogtreecommitdiff
path: root/source3/torture
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2002-08-18 20:06:41 +0000
committerAndrew Tridgell <tridge@samba.org>2002-08-18 20:06:41 +0000
commitdb9a33fd38c1ac445e5edc1c80499ac3300a4824 (patch)
tree756b7e1e72baa2658e725929b998ec115110ed3c /source3/torture
parentd433fc4dd3ff753a684b4e07c7f09d11ee704c21 (diff)
downloadsamba-db9a33fd38c1ac445e5edc1c80499ac3300a4824.tar.gz
samba-db9a33fd38c1ac445e5edc1c80499ac3300a4824.tar.bz2
samba-db9a33fd38c1ac445e5edc1c80499ac3300a4824.zip
nicer locking timeout test
(This used to be commit 2307869798c99f75d2624bb3c144e780e358a3c9)
Diffstat (limited to 'source3/torture')
-rw-r--r--source3/torture/torture.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source3/torture/torture.c b/source3/torture/torture.c
index f3b816c80f..e7a8eb04b6 100644
--- a/source3/torture/torture.c
+++ b/source3/torture/torture.c
@@ -785,6 +785,7 @@ static BOOL run_locktest1(int dummy)
char *fname = "\\lockt1.lck";
int fnum1, fnum2, fnum3;
time_t t1, t2;
+ unsigned lock_timeout;
if (!torture_open_connection(&cli1) || !torture_open_connection(&cli2)) {
return False;
@@ -827,9 +828,10 @@ static BOOL run_locktest1(int dummy)
}
- printf("Testing lock timeouts\n");
+ lock_timeout = (1 + (random() % 20));
+ printf("Testing lock timeout with timeout=%u\n", lock_timeout);
t1 = time(NULL);
- if (cli_lock(&cli2, fnum3, 0, 4, (1 + (random() % 20)) * 1000, WRITE_LOCK)) {
+ if (cli_lock(&cli2, fnum3, 0, 4, lock_timeout * 1000, WRITE_LOCK)) {
printf("lock3 succeeded! This is a locking bug\n");
return False;
} else {
@@ -841,6 +843,8 @@ static BOOL run_locktest1(int dummy)
if (t2 - t1 < 5) {
printf("error: This server appears not to support timed lock requests\n");
}
+ printf("server slept for %u seconds for a %u second timeout\n",
+ t2-t1, lock_timeout);
if (!cli_close(&cli1, fnum2)) {
printf("close1 failed (%s)\n", cli_errstr(&cli1));
@@ -3863,6 +3867,7 @@ static void usage(void)
argc--;
argv++;
+ srandom(time(NULL));
fstrcpy(workgroup, lp_workgroup());