futimesat(2) — Linux manual page

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | VERSIONS | STANDARDS | HISTORY | NOTES | SEE ALSO | COLOPHON

futimesat(2)               System Calls Manual               futimesat(2)

NAME         top

       futimesat - change timestamps of a file relative to a directory
       file descriptor

LIBRARY         top

       Standard C library (libc, -lc)

SYNOPSIS         top

       #include <fcntl.h>            /* Definition of AT_* constants */
       #include <sys/time.h>

       [[deprecated]] int futimesat(int dirfd, const char *path,
                                    const struct timeval times[2]);

   Feature Test Macro Requirements for glibc (see
   feature_test_macros(7)):

       futimesat():
           _GNU_SOURCE

DESCRIPTION         top

       This system call is obsolete.  Use utimensat(2) instead.

       The futimesat() system call operates in exactly the same way as
       utimes(2), except for the differences described in this manual
       page.

       If path is relative, then it is interpreted relative to the
       directory referred to by the file descriptor dirfd (rather than
       relative to the current working directory of the calling process,
       as is done by utimes(2) for a relative pathname).

       If path is relative and dirfd is the special value AT_FDCWD, then
       path is interpreted relative to the current working directory of
       the calling process (like utimes(2)).

       If path is absolute, then dirfd is ignored.  (See openat(2) for an
       explanation of why the dirfd argument is useful.)

RETURN VALUE         top

       On success, futimesat() returns a 0.  On error, -1 is returned and
       errno is set to indicate the error.

ERRORS         top

       The same errors that occur for utimes(2) can also occur for
       futimesat().  The following additional errors can occur for
       futimesat():

       EBADF  path is relative but dirfd is neither AT_FDCWD nor a valid
              file descriptor.

       ENOTDIR
              path is relative and dirfd is a file descriptor referring
              to a file other than a directory.

VERSIONS         top

   glibc
       If path is NULL, then the glibc futimesat() wrapper function
       updates the times for the file referred to by dirfd.

STANDARDS         top

       None.

HISTORY         top

       Linux 2.6.16, glibc 2.4.

       It was implemented from a specification that was proposed for
       POSIX.1, but that specification was replaced by the one for
       utimensat(2).

       A similar system call exists on Solaris.

NOTES         top


SEE ALSO         top

       stat(2), utimensat(2), utimes(2), futimes(3), path_resolution(7)

COLOPHON         top

       This page is part of the man-pages (Linux kernel and C library
       user-space interface documentation) project.  Information about
       the project can be found at 
       ⟨https://www.kernel.org/doc/man-pages/⟩.  If you have a bug report
       for this manual page, see
       ⟨https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/tree/CONTRIBUTING⟩.
       This page was obtained from the tarball man-pages-6.15.tar.gz
       fetched from
       ⟨https://mirrors.edge.kernel.org/pub/linux/docs/man-pages/⟩ on
       2025-08-11.  If you discover any rendering problems in this HTML
       version of the page, or you believe there is a better or more up-
       to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not
       part of the original manual page), send a mail to
       man-pages@man7.org

Linux man-pages 6.15            2025-05-17                   futimesat(2)

Pages that refer to this page: open(2)syscalls(2)utime(2)utimensat(2)