# utime(2)

## NAME

         utime - set file times

## SYNOPSIS

         #include <sys/types.h>
         #include <utime.h>

         int utime(const char *file, struct utimbuf *times)

## DESCRIPTION

         The utime call uses the "accessed" and "updated" times from  the  utimbuf
         structure pointed to by times to set the corresponding recorded times for
         file.

         Struct utimbuf is defined in <utime.h> as follows:

              struct utimbuf {
                  time_t    actime;     /* access time */
                  time_t    modtime;    /* modification time */
              };

         The caller must be the owner of the file or the super-user.  The  "inode-
         changed" time of the file is set to the current time.

## RETURN VALUE

         Upon successful completion, a value of 0 is returned.  Otherwise, a value
         of -1 is returned and errno is set to indicate the error.

## ERRORS

         Utime will fail if one or more of the following are true:

         [ENOTDIR]      A component of the path prefix is not a directory.

         [EINVAL]       The pathname contains a character with the high-order  bit
                        set.

         [ENAMETOOLONG] The path name exceeds PATH_MAX characters.

         [ENOENT]       The named file does not exist.

         [ELOOP]        Too many symbolic links were  encountered  in  translating
                        the pathname.  (Minix-vmd)

         [EPERM]        The process is not super-user and not  the  owner  of  the
                        file.

         [EACCES]       Search permission is denied for a component  of  the  path
                        prefix.

         [EROFS]        The file system containing the file is mounted read-only.

         [EFAULT]       File or  times  points  outside  the  process's  allocated
                        address space.

         [EIO]          An  I/O  error  occurred  while  reading  or  writing  the
                        affected inode.

## SEE ALSO

         stat(2).