Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ utime(2) — Reliant UNIX 5.44c4

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

stat(5)

types(5)

utime(5)

utime(2)                                                           utime(2)

NAME
     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
     path points to a pathname 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 or the superuser may use utime this way.

     The times in the following structure are measured in seconds since
     00:00:00 GMT, Jan. 1, 1970.

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

     Upon successful completion, utime() will mark the time of the last
     file status change, stctime, to be updated, see <sys/stat.h>.

ERRORS
     The following error code descriptions are function-specific. You will
     find a general description in introprm2(2) or in errno(5).

     utime() will fail if one or more of the following apply:

     EACCES        Search permission is denied by a component of the path
                   prefix or the times argument is a null pointer

     EACCES        The effective user ID is not superuser and not the owner
                   of the file and times is NULL and write access is
                   denied.

     EFAULT        times is not NULL and points outside the process' allo-
                   cated address space.

     EFAULT        path points outside the process' allocated address
                   space.




Page 1                       Reliant UNIX 5.44                Printed 11/98

utime(2)                                                           utime(2)

     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 PATHMAX or the
                   length of a path component exceeds NAMEMAX while
                   POSIXNOTRUNC 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 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 mounted read-
                   only.

     The utime() function may fail if:

     ENAMETOOLONG  Pathname resolution of a symbolic link produced an
                   intermediate result whose length exceeds PATHMAX.

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

SEE ALSO
     stat(5), types(5), utime(5).
















Page 2                       Reliant UNIX 5.44                Printed 11/98

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026