Mercurial > gnulib
annotate tests/test-stat-time.c @ 17363:5a51fb7777a9
sys_select, sys_time: port 2013-01-30 Solaris 2.6 fix to Cygwin
Problem reported by Marco Atzeri in
<http://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00000.html>.
* lib/sys_select.in.h [HAVE_SYS_SELECT_H && _CYGWIN_SYS_TIME_H]:
Simply delegate to the system <sys/select.h> in this case too.
Also, pay attention to _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H only
if OSF/1, since otherwise Cygwin breaks, and it doesn't seem to
be needed on Solaris either.
* lib/sys_time.in.h [_CYGWIN_SYS_TIME_H]:
Simply delgate to the system <sys/time.h> in this case.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Tue, 19 Mar 2013 09:08:47 -0700 |
parents | e542fd46ad6f |
children | 3c592b4deb04 |
rev | line source |
---|---|
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
1 /* Test of <stat-time.h>. |
17249
e542fd46ad6f
maint: update all copyright year number ranges
Eric Blake <eblake@redhat.com>
parents:
16201
diff
changeset
|
2 Copyright (C) 2007-2013 Free Software Foundation, Inc. |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
3 |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8754
diff
changeset
|
4 This program is free software: you can redistribute it and/or modify |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
5 it under the terms of the GNU General Public License as published by |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8754
diff
changeset
|
6 the Free Software Foundation; either version 3 of the License, or |
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8754
diff
changeset
|
7 (at your option) any later version. |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
8 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
9 This program is distributed in the hope that it will be useful, |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
10 but WITHOUT ANY WARRANTY; without even the implied warranty of |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
12 GNU General Public License for more details. |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
13 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
14 You should have received a copy of the GNU General Public License |
9309
bbbbbf4cd1c5
Change copyright notice from GPLv2+ to GPLv3+.
Bruno Haible <bruno@clisp.org>
parents:
8754
diff
changeset
|
15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
16 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
17 /* Written by James Youngman <jay@gnu.org>, 2007. */ |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
18 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
19 #include <config.h> |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
20 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
21 #include "stat-time.h" |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
22 |
8584 | 23 #include <fcntl.h> |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
24 #include <signal.h> |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
25 #include <sys/stat.h> |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
26 #include <unistd.h> |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
27 |
12496
a48d3d749ca5
Refactor common macros used in tests.
Bruno Haible <bruno@clisp.org>
parents:
12316
diff
changeset
|
28 #include "macros.h" |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
29 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
30 enum { NFILES = 4 }; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
31 |
12167 | 32 static int |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
33 force_unlink (const char *filename) |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
34 { |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
35 /* This chmod is necessary on mingw, where unlink() of a read-only file |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
36 fails with EPERM. */ |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
37 chmod (filename, 0600); |
12167 | 38 return unlink (filename); |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
39 } |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
40 |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
41 static void |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
42 cleanup (int sig) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
43 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
44 /* Remove temporary files. */ |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
45 force_unlink ("t-stt-stamp1"); |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
46 force_unlink ("t-stt-testfile"); |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
47 force_unlink ("t-stt-stamp2"); |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
48 force_unlink ("t-stt-renamed"); |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
49 force_unlink ("t-stt-stamp3"); |
8566 | 50 |
51 if (sig != 0) | |
52 _exit (1); | |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
53 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
54 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
55 static int |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
56 open_file (const char *filename, int flags) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
57 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
58 int fd = open (filename, flags | O_WRONLY, 0500); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
59 if (fd >= 0) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
60 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
61 close (fd); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
62 return 1; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
63 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
64 else |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
65 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
66 return 0; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
67 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
68 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
69 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
70 static void |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
71 create_file (const char *filename) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
72 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
73 ASSERT (open_file (filename, O_CREAT | O_EXCL)); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
74 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
75 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
76 static void |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
77 do_stat (const char *filename, struct stat *p) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
78 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
79 ASSERT (stat (filename, p) == 0); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
80 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
81 |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
82 /* Sleep long enough to notice a timestamp difference on the file |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
83 system in the current directory. */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
84 static void |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
85 nap (void) |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
86 { |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
87 static long delay; |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
88 if (!delay) |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
89 { |
12171
47c9f1788846
test-stat-time, test-utimens: improve portability
Eric Blake <ebb9@byu.net>
parents:
12167
diff
changeset
|
90 /* Initialize only once, by sleeping for 20 milliseconds (needed |
12153
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
91 since xfs has a quantization of about 10 milliseconds, even |
12171
47c9f1788846
test-stat-time, test-utimens: improve portability
Eric Blake <ebb9@byu.net>
parents:
12167
diff
changeset
|
92 though it has a granularity of 1 nanosecond, and since NTFS |
47c9f1788846
test-stat-time, test-utimens: improve portability
Eric Blake <ebb9@byu.net>
parents:
12167
diff
changeset
|
93 has a default quantization of 15.25 milliseconds, even though |
47c9f1788846
test-stat-time, test-utimens: improve portability
Eric Blake <ebb9@byu.net>
parents:
12167
diff
changeset
|
94 it has a granularity of 100 nanoseconds). If the seconds |
12153
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
95 differ, repeat the test one more time (in case we crossed a |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
96 quantization boundary on a file system with 1 second |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
97 resolution). If we can't observe a difference in only the |
12316
d47887220b68
usleep: use it to simplify tests
Eric Blake <ebb9@byu.net>
parents:
12197
diff
changeset
|
98 nanoseconds, then fall back to 1 second if the time is odd, |
d47887220b68
usleep: use it to simplify tests
Eric Blake <ebb9@byu.net>
parents:
12197
diff
changeset
|
99 and 2 seconds (needed for FAT) if time is even. */ |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
100 struct stat st1; |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
101 struct stat st2; |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
102 ASSERT (stat ("t-stt-stamp1", &st1) == 0); |
12167 | 103 ASSERT (force_unlink ("t-stt-stamp1") == 0); |
12171
47c9f1788846
test-stat-time, test-utimens: improve portability
Eric Blake <ebb9@byu.net>
parents:
12167
diff
changeset
|
104 delay = 20000; |
12164
0f120c1de4c5
stat-time-tests: minor cleanups
Eric Blake <ebb9@byu.net>
parents:
12153
diff
changeset
|
105 usleep (delay); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
106 create_file ("t-stt-stamp1"); |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
107 ASSERT (stat ("t-stt-stamp1", &st2) == 0); |
12153
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
108 if (st1.st_mtime != st2.st_mtime) |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
109 { |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
110 /* Seconds differ, give it one more shot. */ |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
111 st1 = st2; |
12167 | 112 ASSERT (force_unlink ("t-stt-stamp1") == 0); |
12153
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
113 usleep (delay); |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
114 create_file ("t-stt-stamp1"); |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
115 ASSERT (stat ("t-stt-stamp1", &st2) == 0); |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
116 } |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
117 if (! (st1.st_mtime == st2.st_mtime |
4443f8be082f
test-stat-time: avoid more spurious failures
Eric Blake <ebb9@byu.net>
parents:
12147
diff
changeset
|
118 && get_stat_mtime_ns (&st1) < get_stat_mtime_ns (&st2))) |
12316
d47887220b68
usleep: use it to simplify tests
Eric Blake <ebb9@byu.net>
parents:
12197
diff
changeset
|
119 delay = (st1.st_mtime & 1) ? 1000000 : 2000000; |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
120 } |
12316
d47887220b68
usleep: use it to simplify tests
Eric Blake <ebb9@byu.net>
parents:
12197
diff
changeset
|
121 usleep (delay); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
122 } |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
123 |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
124 static void |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
125 prepare_test (struct stat *statinfo, struct timespec *modtimes) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
126 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
127 int i; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
128 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
129 create_file ("t-stt-stamp1"); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
130 nap (); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
131 create_file ("t-stt-testfile"); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
132 nap (); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
133 create_file ("t-stt-stamp2"); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
134 nap (); |
8606
a83c37b17639
2007-03-30 James Youngman <jay@gnu.org>
Bruno Haible <bruno@clisp.org>
parents:
8584
diff
changeset
|
135 ASSERT (chmod ("t-stt-testfile", 0400) == 0); |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
136 nap (); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
137 create_file ("t-stt-stamp3"); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
138 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
139 do_stat ("t-stt-stamp1", &statinfo[0]); |
8606
a83c37b17639
2007-03-30 James Youngman <jay@gnu.org>
Bruno Haible <bruno@clisp.org>
parents:
8584
diff
changeset
|
140 do_stat ("t-stt-testfile", &statinfo[1]); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
141 do_stat ("t-stt-stamp2", &statinfo[2]); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
142 do_stat ("t-stt-stamp3", &statinfo[3]); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
143 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
144 /* Now use our access functions. */ |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
145 for (i = 0; i < NFILES; ++i) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
146 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
147 modtimes[i] = get_stat_mtime (&statinfo[i]); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
148 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
149 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
150 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
151 static void |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
152 test_mtime (const struct stat *statinfo, struct timespec *modtimes) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
153 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
154 int i; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
155 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
156 /* Use the struct stat fields directly. */ |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
157 /* mtime(stamp1) < mtime(stamp2) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
158 ASSERT (statinfo[0].st_mtime < statinfo[2].st_mtime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
159 || (statinfo[0].st_mtime == statinfo[2].st_mtime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
160 && (get_stat_mtime_ns (&statinfo[0]) |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
161 < get_stat_mtime_ns (&statinfo[2])))); |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
162 /* mtime(stamp2) < mtime(stamp3) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
163 ASSERT (statinfo[2].st_mtime < statinfo[3].st_mtime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
164 || (statinfo[2].st_mtime == statinfo[3].st_mtime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
165 && (get_stat_mtime_ns (&statinfo[2]) |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
166 < get_stat_mtime_ns (&statinfo[3])))); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
167 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
168 /* Now check the result of the access functions. */ |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
169 /* mtime(stamp1) < mtime(stamp2) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
170 ASSERT (modtimes[0].tv_sec < modtimes[2].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
171 || (modtimes[0].tv_sec == modtimes[2].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
172 && modtimes[0].tv_nsec < modtimes[2].tv_nsec)); |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
173 /* mtime(stamp2) < mtime(stamp3) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
174 ASSERT (modtimes[2].tv_sec < modtimes[3].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
175 || (modtimes[2].tv_sec == modtimes[3].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
176 && modtimes[2].tv_nsec < modtimes[3].tv_nsec)); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
177 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
178 /* verify equivalence */ |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
179 for (i = 0; i < NFILES; ++i) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
180 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
181 struct timespec ts; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
182 ts = get_stat_mtime (&statinfo[i]); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
183 ASSERT (ts.tv_sec == statinfo[i].st_mtime); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
184 } |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
185 } |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
186 |
12147
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
187 #if (defined _WIN32 || defined __WIN32__) && !defined __CYGWIN__ |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
188 /* Skip the ctime tests on native Windows platforms, because their |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
189 st_ctime is either the same as st_mtime (plus or minus an offset) |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
190 or set to the file _creation_ time, and is not influenced by rename |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
191 or chmod. */ |
12167 | 192 # define test_ctime(ignored) ((void) 0) |
12147
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
193 #else |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
194 static void |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
195 test_ctime (const struct stat *statinfo) |
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
196 { |
12147
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
197 /* On some buggy NFS clients, mtime and ctime are disproportionately |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
198 skewed from one another. Skip this test in that case. */ |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
199 if (statinfo[0].st_mtime != statinfo[0].st_ctime) |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
200 return; |
a620bedbe958
test-stat-time: port to buggy NFS clients
Eric Blake <ebb9@byu.net>
parents:
12144
diff
changeset
|
201 |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
202 /* mtime(stamp2) < ctime(renamed) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
203 ASSERT (statinfo[2].st_mtime < statinfo[1].st_ctime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
204 || (statinfo[2].st_mtime == statinfo[1].st_ctime |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
205 && (get_stat_mtime_ns (&statinfo[2]) |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
206 < get_stat_ctime_ns (&statinfo[1])))); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
207 } |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
208 #endif |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
209 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
210 static void |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
211 test_birthtime (const struct stat *statinfo, |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
212 const struct timespec *modtimes, |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
213 struct timespec *birthtimes) |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
214 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
215 int i; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
216 |
12167 | 217 /* Collect the birth times. */ |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
218 for (i = 0; i < NFILES; ++i) |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
219 { |
8567
f7fc3652bfc5
* lib/stat-time.h (USE_BIRTHTIME): Remove.
Paul Eggert <eggert@cs.ucla.edu>
parents:
8566
diff
changeset
|
220 birthtimes[i] = get_stat_birthtime (&statinfo[i]); |
f7fc3652bfc5
* lib/stat-time.h (USE_BIRTHTIME): Remove.
Paul Eggert <eggert@cs.ucla.edu>
parents:
8566
diff
changeset
|
221 if (birthtimes[i].tv_nsec < 0) |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
222 return; |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
223 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
224 |
12144
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
225 /* mtime(stamp1) < birthtime(renamed) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
226 ASSERT (modtimes[0].tv_sec < birthtimes[1].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
227 || (modtimes[0].tv_sec == birthtimes[1].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
228 && modtimes[0].tv_nsec < birthtimes[1].tv_nsec)); |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
229 /* birthtime(renamed) < mtime(stamp2) */ |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
230 ASSERT (birthtimes[1].tv_sec < modtimes[2].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
231 || (birthtimes[1].tv_sec == modtimes[2].tv_sec |
a2d7efbd7d96
test-stat-time: speed up execution
Eric Blake <ebb9@byu.net>
parents:
9990
diff
changeset
|
232 && birthtimes[1].tv_nsec < modtimes[2].tv_nsec)); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
233 } |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
234 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
235 int |
12197
e45d9bb2233e
tests: avoid several compiler warnings
Eric Blake <ebb9@byu.net>
parents:
12171
diff
changeset
|
236 main (void) |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
237 { |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
238 struct stat statinfo[NFILES]; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
239 struct timespec modtimes[NFILES]; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
240 struct timespec birthtimes[NFILES]; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
241 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
242 #ifdef SIGHUP |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
243 signal (SIGHUP, cleanup); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
244 #endif |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
245 #ifdef SIGINT |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
246 signal (SIGINT, cleanup); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
247 #endif |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
248 #ifdef SIGQUIT |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
249 signal (SIGQUIT, cleanup); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
250 #endif |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
251 #ifdef SIGTERM |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
252 signal (SIGTERM, cleanup); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
253 #endif |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
254 |
8606
a83c37b17639
2007-03-30 James Youngman <jay@gnu.org>
Bruno Haible <bruno@clisp.org>
parents:
8584
diff
changeset
|
255 cleanup (0); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
256 prepare_test (statinfo, modtimes); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
257 test_mtime (statinfo, modtimes); |
9990
420a1855060f
Make test-stat-time pass on mingw.
Bruno Haible <bruno@clisp.org>
parents:
9889
diff
changeset
|
258 test_ctime (statinfo); |
8565
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
259 test_birthtime (statinfo, modtimes, birthtimes); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
260 |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
261 cleanup (0); |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
262 return 0; |
c49cf515502f
2007-03-27 Bruno Haible <bruno@clisp.org>
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
263 } |