annotate lib/utimens.h @ 12193:d1ea4269ac6f

fdutimensat: new module Needed for coreutils copy.c to be rewritten to use fts. * modules/fdutimensat: New file. * lib/fdutimensat.c (fdutimensat): Likewise. * lib/utimens.h (fdutimensat, lutimensat): Declare new functions. * MODULES.html.sh (File system functions): Mention module. * modules/fdutimensat-tests: New test. * tests/test-fdutimensat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Tue, 20 Oct 2009 06:09:29 -0600
parents c4a167621772
children f7caccc03505
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8223
ca249819379f * lib/getdate.h (includes): Include <time.h>, not "timespec.h".
Eric Blake <ebb9@byu.net>
parents: 5486
diff changeset
1 #include <time.h>
12161
c4a167621772 utimens: introduce fdutimens
Eric Blake <ebb9@byu.net>
parents: 12158
diff changeset
2 int fdutimens (char const *, int, struct timespec const [2]);
8859
6d52d75c164e (gl_futimens): Rename from futimens, now that glibc-2.6 declares futimens.
Jim Meyering <jim@meyering.net>
parents: 8223
diff changeset
3 int gl_futimens (int, char const *, struct timespec const [2]);
5147
3249aec7f48c Import from coreutils.
Paul Eggert <eggert@cs.ucla.edu>
parents:
diff changeset
4 int utimens (char const *, struct timespec const [2]);
12158
899dd13e9f8b utimens: add lutimens interface
Eric Blake <ebb9@byu.net>
parents: 8859
diff changeset
5 int lutimens (char const *, struct timespec const [2]);
12193
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
6
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
7 #if GNULIB_FDUTIMENSAT
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
8 # include <fcntl.h>
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
9 # include <sys/stat.h>
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
10
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
11 int fdutimensat (int dir, char const *name, int fd, struct timespec const [2]);
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
12
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
13 /* Using this function makes application code slightly more readable. */
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
14 static inline int
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
15 lutimensat (int fd, char const *file, struct timespec const times[2])
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
16 {
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
17 return utimensat (fd, file, times, AT_SYMLINK_NOFOLLOW);
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
18 }
d1ea4269ac6f fdutimensat: new module
Eric Blake <ebb9@byu.net>
parents: 12161
diff changeset
19 #endif