Originální popis anglicky:
utime - set file access and modification times
Návod, kniha: POSIX Programmer's Manual
#include <utime.h>
int utime(const char *
path, const struct utimbuf
*times);
The
utime() function shall set the access and modification times of the
file named by the
path argument.
If
times is a null pointer, the access and modification times of the file
shall be set to the current time. The effective user ID of the process shall
match the owner of the file, or the process has write permission to the file
or has appropriate privileges, to use
utime() in this manner.
If
times is not a null pointer,
times shall be interpreted as a
pointer to a
utimbuf structure and the access and modification times
shall be set to the values contained in the designated structure. Only a
process with the effective user ID equal to the user ID of the file or a
process with appropriate privileges may use
utime() this way.
The
utimbuf structure is defined in the
<utime.h> header.
The times in the structure
utimbuf are measured in seconds since the
Epoch.
Upon successful completion,
utime() shall mark the time of the last file
status change,
st_ctime, to be updated; see
<sys/stat.h>.
Upon successful completion, 0 shall be returned. Otherwise, -1 shall be returned
and
errno shall be set to indicate the error, and the file times shall
not be affected.
The
utime() function shall fail if:
- EACCES
- Search permission is denied by a component of the path
prefix; or the times argument is a null pointer and the effective
user ID of the process does not match the owner of the file, the process
does not have write permission for the file, and the process does not have
appropriate privileges.
- ELOOP
- A loop exists in symbolic links encountered during
resolution of the path argument.
- ENAMETOOLONG
- The length of the path argument exceeds {PATH_MAX}
or a pathname component is longer than {NAME_MAX}.
- ENOENT
- A component of path does not name an existing file
or path is an empty string.
- ENOTDIR
- A component of the path prefix is not a directory.
- EPERM
- The times argument is not a null pointer and the
calling process' effective user ID does not match the owner of the file
and the calling process does not have the appropriate privileges.
- EROFS
- The file system containing the file is read-only.
The
utime() function may fail if:
- ELOOP
- More than {SYMLOOP_MAX} symbolic links were encountered
during resolution of the path argument.
- ENAMETOOLONG
- As a result of encountering a symbolic link in resolution
of the path argument, the length of the substituted pathname string
exceeded {PATH_MAX}.
The following sections are informative.
None.
None.
The
actime structure member must be present so that an application may
set it, even though an implementation may ignore it and not change the access
time on the file. If an application intends to leave one of the times of a
file unchanged while changing the other, it should use
stat() to
retrieve the file's
st_atime and
st_mtime parameters, set
actime and
modtime in the buffer, and change one of them before
making the
utime() call.
None.
The Base Definitions volume of IEEE Std 1003.1-2001,
<sys/stat.h>,
<utime.h>
Portions of this text are reprinted and reproduced in electronic form from IEEE
Std 1003.1, 2003 Edition, Standard for Information Technology -- Portable
Operating System Interface (POSIX), The Open Group Base Specifications Issue
6, Copyright (C) 2001-2003 by the Institute of Electrical and Electronics
Engineers, Inc and The Open Group. In the event of any discrepancy between
this version and the original IEEE and The Open Group Standard, the original
IEEE and The Open Group Standard is the referee document. The original
Standard can be obtained online at http://www.opengroup.org/unix/online.html
.