1UTIME(P)                   POSIX Programmer's Manual                  UTIME(P)
2
3
4

NAME

6       utime - set file access and modification times
7

SYNOPSIS

9       #include <utime.h>
10
11       int utime(const char *path, const struct utimbuf *times);
12
13

DESCRIPTION

15       The utime() function shall set the access and modification times of the
16       file named by the path argument.
17
18       If times is a null pointer, the access and modification  times  of  the
19       file  shall  be  set  to the current time. The effective user ID of the
20       process shall match the owner of the file, or  the  process  has  write
21       permission to the file or has appropriate privileges, to use utime() in
22       this manner.
23
24       If times is not a null pointer, times shall be interpreted as a pointer
25       to  a  utimbuf structure and the access and modification times shall be
26       set to the values contained in the designated structure. Only a process
27       with  the  effective  user  ID  equal  to  the user ID of the file or a
28       process with appropriate privileges may use utime() this way.
29
30       The utimbuf structure is defined in the <utime.h> header.  The times in
31       the structure utimbuf are measured in seconds since the Epoch.
32
33       Upon  successful  completion,  utime()  shall mark the time of the last
34       file status change, st_ctime, to be updated; see <sys/stat.h>.
35

RETURN VALUE

37       Upon successful completion, 0 shall be returned. Otherwise, -1 shall be
38       returned  and  errno  shall  be set to indicate the error, and the file
39       times shall not be affected.
40

ERRORS

42       The utime() function shall fail if:
43
44       EACCES Search permission is denied by a component of the  path  prefix;
45              or  the  times argument is a null pointer and the effective user
46              ID of the process does not match the  owner  of  the  file,  the
47              process  does  not  have  write permission for the file, and the
48              process does not have appropriate privileges.
49
50       ELOOP  A loop exists in symbolic links encountered during resolution of
51              the path argument.
52
53       ENAMETOOLONG
54              The length of the path argument exceeds {PATH_MAX} or a pathname
55              component is longer than {NAME_MAX}.
56
57       ENOENT A component of path does not name an existing file or path is an
58              empty string.
59
60       ENOTDIR
61              A component of the path prefix is not a directory.
62
63       EPERM  The  times  argument  is  not  a  null  pointer  and the calling
64              process' effective user ID does not match the owner of the  file
65              and  the  calling  process  does not have the appropriate priviā€
66              leges.
67
68       EROFS  The file system containing the file is read-only.
69
70
71       The utime() function may fail if:
72
73       ELOOP  More than {SYMLOOP_MAX} symbolic links were  encountered  during
74              resolution of the path argument.
75
76       ENAMETOOLONG
77              As a result of encountering a symbolic link in resolution of the
78              path argument, the length of  the  substituted  pathname  string
79              exceeded {PATH_MAX}.
80
81
82       The following sections are informative.
83

EXAMPLES

85       None.
86

APPLICATION USAGE

88       None.
89

RATIONALE

91       The  actime structure member must be present so that an application may
92       set it, even though an implementation may ignore it and not change  the
93       access  time on the file. If an application intends to leave one of the
94       times of a file unchanged while  changing  the  other,  it  should  use
95       stat()  to  retrieve  the  file's st_atime and st_mtime parameters, set
96       actime and modtime in the buffer, and change one of them before  making
97       the utime() call.
98

FUTURE DIRECTIONS

100       None.
101

SEE ALSO

103       The  Base  Definitions  volume  of  IEEE Std 1003.1-2001, <sys/stat.h>,
104       <utime.h>
105
107       Portions of this text are reprinted and reproduced in  electronic  form
108       from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
109       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
110       Specifications  Issue  6,  Copyright  (C) 2001-2003 by the Institute of
111       Electrical and Electronics Engineers, Inc and The Open  Group.  In  the
112       event of any discrepancy between this version and the original IEEE and
113       The Open Group Standard, the original IEEE and The Open Group  Standard
114       is  the  referee document. The original Standard can be obtained online
115       at http://www.opengroup.org/unix/online.html .
116
117
118
119IEEE/The Open Group                  2003                             UTIME(P)
Impressum