utime(2)
utime --
set file access and modification times
Synopsis
#include <sys/types.h>
#include <utime.h>
int utime(const char *path, const struct utimbuf *times);
Description
utime sets the access and modification times
of the file named by path.
path points to a path name naming a file.
If times is NULL,
the access and modification times of the file are set to the current time.
The effective user ID of the calling process must be
the owner ID of the file or must have write permission on the file,
or the calling process must have the P_OWNER privilege, to
set the file times this way.
If times is not NULL, times is
interpreted as a pointer to a utimbuf structure (defined
in utime.h) and the access and modification times are set
to the values contained in the designated structure.
The effective user ID of the calling process must be the owner
ID of the file or the calling process must have the
P_OWNER privilege to set the file times this way.
The times in the following structure are measured in seconds since
``00:00:00 UTC, Jan. 1, 1970'':
time_t actime; / access time /
time_t modtime; / modification time /
utime also causes the time of the last file status change
(st_ctime) to be updated.
Return values
On success, utime returns 0.
On failure, utime returns -1 and sets errno to identify the error.
In the following conditions, utime fails and sets errno to:
EACCES-
Search permission is denied by a component of the path prefix.
EACCES-
Write permission on the file named by path is denied.
EACCES-
The effective user ID is not the owner of the file, times is
NULL, and write access is denied.
EFAULT-
times is not NULL
and points outside the process's allocated address space.
EFAULT-
path points outside the process's allocated address space.
EINTR-
A signal was caught during the utime system call.
ELOOP-
Too many symbolic links were encountered in translating path.
EMULTIHOP-
Components of path require hopping to multiple
remote machines and the file system does not allow it.
ENAMETOOLONG-
The length of the path argument exceeds {PATH_MAX}, or the
length of a path component exceeds {NAME_MAX} while
_POSIX_NO_TRUNC is in effect.
ENOENT-
The named file does not exist or is a null pathname.
ENOLINK-
path points to a remote machine and the link
to that machine is no longer active.
ENOTDIR-
A component of the path prefix is not a directory.
EPERM-
times is not NULL,
the effective user ID of the calling process is not the owner of the file,
and the calling process does not have the P_OWNER privilege.
EPERM-
times is NULL,
the effective user ID of the calling process is not the owner of the file,
write permission on the file named by path is denied,
and the calling process does not have the P_OWNER privilege.
EROFS-
The file system containing the file is mounted read-only.
References
stat(2),
utimes(3bsd),
utimes(3C)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004