]>
git.ipfire.org Git - thirdparty/glibc.git/blob - sysdeps/unix/sysv/linux/utime.c
1 /* utime -- Change access and modification times of file. Linux version.
2 Copyright (C) 2020-2023 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, see
17 <https://www.gnu.org/licenses/>. */
24 __utime64 (const char *file
, const struct __utimbuf64
*times
)
26 struct __timespec64 ts64
[2];
30 ts64
[0].tv_sec
= times
->actime
;
31 ts64
[0].tv_nsec
= 0LL;
32 ts64
[1].tv_sec
= times
->modtime
;
33 ts64
[1].tv_nsec
= 0LL;
36 return __utimensat64_helper (AT_FDCWD
, file
, times
? ts64
: NULL
, 0);
40 libc_hidden_def (__utime64
)
43 __utime (const char *file
, const struct utimbuf
*times
)
45 struct __utimbuf64 utb64
;
49 utb64
.actime
= (__time64_t
) times
->actime
;
50 utb64
.modtime
= (__time64_t
) times
->modtime
;
53 return __utime64 (file
, times
? &utb64
: NULL
);
56 strong_alias (__utime
, utime
)
57 libc_hidden_def (utime
)