works for SMB1 and SMB2
authorStefan Metzmacher <metze@samba.org>
Wed, 15 Aug 2018 08:54:27 +0000 (10:54 +0200)
committerStefan Metzmacher <metze@samba.org>
Wed, 15 Aug 2018 08:54:27 +0000 (10:54 +0200)
source4/torture/basic/delaywrite.c
source4/torture/smb2/durable_open.c
source4/torture/util.h
source4/torture/util_writetime.c

index a38242b2fe62ceeb9e04cc5a46b287eba26efb43..0f9fdfd7e5f12914812a9a78d754d482d333d054 100644 (file)
@@ -3308,12 +3308,19 @@ static bool test_delaywrite_delaywrite1(struct torture_context *tctx,
        state.fname = fname;
 
        ok = test_delay_writetime1(tctx, used_delay, normal_delay,
-                       "run", true, /* smb1 */
+                       "run1",
+                       test_delaywrite_delaywrite1_get_info,
+                       test_delaywrite_delaywrite1_write_data,
+                       NULL, /* close_cb */
+                       &state);
+       torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime1(1)");
+       ok = test_delay_writetime1(tctx, used_delay, normal_delay,
+                       "run2",
                        test_delaywrite_delaywrite1_get_info,
                        test_delaywrite_delaywrite1_write_data,
                        test_delaywrite_delaywrite1_close,
                        &state);
-       torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime1()");
+       torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime1(2)");
 
  done:
        if (state.fnum1 != -1) {
index a21fca2373d117a6223eb697190681c0148c8146..63eb7e99922a84bbfd834862260d02522e941521 100644 (file)
@@ -3121,19 +3121,19 @@ static bool test_durable_open_delaywrite1(struct torture_context *tctx,
        COMPARE_ALL_TIMES_EQUAL(c1finfo0, c1finfoCR);
 
        ok = test_delay_writetime1(tctx, used_delay, normal_delay,
-                       "run1", false, /* smb1 */
+                       "run1",
                        test_durable_open_delaywrite1_get_info,
                        test_durable_open_delaywrite1_write_data,
                        NULL, /* close_cb */
                        &state);
        torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime1(1)");
        ok = test_delay_writetime1(tctx, used_delay, normal_delay,
-                       "run2", false, /* smb1 */
+                       "run2",
                        test_durable_open_delaywrite1_get_info,
                        test_durable_open_delaywrite1_write_data,
                        test_durable_open_delaywrite1_close,
                        &state);
-       torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime2(2)");
+       torture_assert_goto(tctx, ok, ret, done, "test_delay_writetime1(2)");
 
 done:
        if (state.h1 != NULL) {
index f0b3e15c1ecc3921452810e3c56407354bec1318..05e983453d2238fbddcdcb3c45c457bc5a843e0f 100644 (file)
@@ -111,7 +111,6 @@ bool test_delay_writetime1(struct torture_context *tctx,
                           double used_delay,
                           double normal_delay,
                           const char *description,
-                          bool smb1,
                           bool (*get_basic_info_cb)(void *private_data,
                                                     union smb_fileinfo *finfo),
                           bool (*write_data_cb)(void *private_data),
index c3e2cde75afbf1192d6cc281d6085428ee9afa0e..98d021b8d7f7f7e43d437db14bd55dbebf20dde0 100644 (file)
@@ -118,7 +118,6 @@ bool test_delay_writetime1(struct torture_context *tctx,
                           double used_delay,
                           double normal_delay,
                           const char *description,
-                          bool smb1,
                           bool (*get_basic_info_cb)(void *private_data,
                                                     union smb_fileinfo *finfo),
                           bool (*write_data_cb)(void *private_data),
@@ -142,13 +141,12 @@ bool test_delay_writetime1(struct torture_context *tctx,
        bool ret = true;
        bool ok;
 
-       smb1 = false;
        torture_comment(tctx, "START: %s\n", description);
 
        /* get the initial times */
        ok = get_basic_info_cb(private_data, &finfo0);
        torture_assert(tctx, ok, "get_basic_info_cb: finfo0");
-if (1 || !smb1) {
+
        /*
         * Make sure the time doesn't change during the next 5 seconds
         */
@@ -165,7 +163,7 @@ if (1 || !smb1) {
        ok = get_basic_info_cb(private_data, &finfoT);
        torture_assert(tctx, ok, "get_basic_info_cb: finfoT");
        COMPARE_WRITE_TIME_EQUAL(finfoT, finfo0);
-}
+
        torture_comment(tctx, "Do a write on the file handle\n");
        before_write = timeval_current();
        ok = write_data_cb(private_data);
@@ -232,11 +230,6 @@ if (1 || !smb1) {
        after_write = timeval_current();
        torture_assert(tctx, ok, "write_data_cb");
 
-       if (smb1) {
-               //finfo2 = finfo1;
-               if (0) goto no_change;
-       }
-
        ZERO_STRUCT(finfo2);
        before_last_write = before_write;
        after_last_write = after_write;
@@ -283,7 +276,7 @@ if (1 || !smb1) {
        }
 
        // We may get one additional change...
-no_change:
+
        ok = get_basic_info_cb(private_data, &finfo3);
        torture_assert(tctx, ok, "get_basic_info_cb: finfo3");
        COMPARE_ALL_TIMES_EQUAL(finfo3, finfo2);
@@ -317,12 +310,7 @@ no_change:
 
        ok = close_cb(private_data, &finfoT);
        torture_assert(tctx, ok, "close_cb: finfoT");
-       if (smb1) {
-               COMPARE_ALL_TIMES_EQUAL(finfoT, finfo3);
-               //COMPARE_TIMES_AFTER_CLOSE(finfoT, finfo1);
-       } else {
-               COMPARE_ALL_TIMES_EQUAL(finfoT, finfo3);
-       }
+       COMPARE_ALL_TIMES_EQUAL(finfoT, finfo3);
 
 done:
        return ret;