]> granicus.if.org Git - strace/blobdiff - tests/xutimes.c
tests: extend TEST_NETLINK_OBJECT macro
[strace] / tests / xutimes.c
index 251fb2e4e6cf38639e6f785bfae8a099c6d2454e..5fd7161a6fdedf82f5e12fd6afc7b24d4be4381b 100644 (file)
 static void
 print_tv(const TEST_STRUCT *const tv)
 {
-       printf("{tv_sec=%ju, tv_usec=%ju}",
-              (uintmax_t) tv->tv_sec, (uintmax_t) tv->tv_usec);
+       printf("{tv_sec=%lld, tv_usec=%llu}",
+              (long long) tv->tv_sec,
+              zero_extend_signed_to_ull(tv->tv_usec));
+       print_time_t_usec(tv->tv_sec,
+                         zero_extend_signed_to_ull(tv->tv_usec), 1);
 }
 
 static const char *errstr;
@@ -101,10 +104,22 @@ main(void)
        printf("%s(%s, %p) = %s\n", TEST_SYSCALL_STR,
               qname, tv + 2, errstr);
 
+       tv[0].tv_sec = 0xdeadbeefU;
+       tv[0].tv_usec = 0xfacefeedU;
+       tv[1].tv_sec = (time_t) 0xcafef00ddeadbeefLL;
+       tv[1].tv_usec = (long) 0xbadc0dedfacefeedLL;
+
+       k_utimes(kfname, (uintptr_t) tv);
+       printf("%s(%s, [", TEST_SYSCALL_STR, qname);
+       print_tv(&tv[0]);
+       printf(", ");
+       print_tv(&tv[1]);
+       printf("]) = %s\n", errstr);
+
        tv[0].tv_sec = 1492358607;
-       tv[0].tv_usec = 345678912;
+       tv[0].tv_usec = 1000000;
        tv[1].tv_sec = 1492356078;
-       tv[1].tv_usec = 456789023;
+       tv[1].tv_usec = 1000001;
 
        k_utimes(kfname, (uintptr_t) tv);
        printf("%s(%s, [", TEST_SYSCALL_STR, qname);