Man Linux: Main Page and Category List

NAME

       utimes - set file access and modification times (LEGACY)

SYNOPSIS

       #include <sys/time.h>

       int utimes(const char *path, const struct timeval times[2]);

DESCRIPTION

       The  utimes()  function  shall set the access and modification times of
       the file pointed to by the path argument to  the  value  of  the  times
       argument.  The utimes() function allows time specifications accurate to
       the microsecond.

       For utimes(), the times argument is an array of timeval structures. The
       first array member represents the date and time of last access, and the
       second member represents the date and time of  last  modification.  The
       times in the timeval structure are measured in seconds and microseconds
       since the Epoch, although rounding toward the nearest second may occur.

       If  the  times  argument 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 has write
       access to the file or appropriate privileges to use this call  in  this
       manner.  Upon completion, utimes() shall mark the time of the last file
       status change, st_ctime, for update.

RETURN VALUE

       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.

ERRORS

       The utimes() 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 and write
              access is denied.

       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 has write access to the file but 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 utimes() function may fail if:

       ELOOP  More  than  {SYMLOOP_MAX} symbolic links were encountered during
              resolution of the path argument.

       ENAMETOOLONG
              Pathname resolution of a symbolic link produced an  intermediate
              result whose length exceeds {PATH_MAX}.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       For  applications  portability,  the utime() function should be used to
       set file access and modification times instead of utimes().

RATIONALE

       None.

FUTURE DIRECTIONS

       This function may be withdrawn in a future version.

SEE ALSO

       utime()  ,  the  Base  Definitions  volume   of   IEEE Std 1003.1-2001,
       <sys/time.h>

COPYRIGHT

       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 .