utime(2) utime(2)
utime - set file access and modification times
#include <sys/types.h>
#include <utime.h>
int utime(const char *path, const struct utimbuf *times);
path points to a path name naming a file. utime sets the access and
modification times of the named file.
If times is NULL, the access and modification times of the file are set
to the current time. A process must be the owner of the file or have
write permission to use utime in this manner.
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. Only the owner
of the file may use utime this way.
The times in the following structure are measured in seconds since
00:00:00 UTC, Jan. 1, 1970.
struct utimbuf {
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.
utime will fail if one or more of the following are true:
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.
Page 1
utime(2) utime(2)
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 The calling process does not have the super-user
privilege, the effective user ID is not the owner of
the file, and times is not NULL.
EPERM The calling process does not have the super-user
privilege, the effective user ID is not the owner of
the file, times is NULL, and write permission on the
file named by path is denied.
EROFS The file system containing the file is mounted readonly.
EROFS The current file system level range does not envelop
the level of the file named by path, and the calling
process does not have the super-user privilege.
ENOSYS When the named file cannot have its time reset. The
file is on a file system that doesn't have this
operation. Example, the /dev/fd/0 file is on a file
system that doesn't allow the time to be reset.
stat(2), utimets(2)
Upon successful completion, a value of 0 is returned. Otherwise, a value
of -1 is returned and errno is set to indicate the error.
PPPPaaaaggggeeee 2222 [ Back ]
|