diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-03-03 09:00:13 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-06-15 10:42:11 -0300 |
commit | 70961aee1823481caac6e00a40cf1f2bdbf7ffb5 (patch) | |
tree | ecb5da43310a12d98e6c98dbd63dacb9c3f60394 /io/fts64-time64.c | |
parent | 84f7ce84474c1648ce96884f1c91ca7b97ca3fc2 (diff) | |
download | glibc-70961aee1823481caac6e00a40cf1f2bdbf7ffb5.tar.gz glibc-70961aee1823481caac6e00a40cf1f2bdbf7ffb5.tar.xz glibc-70961aee1823481caac6e00a40cf1f2bdbf7ffb5.zip |
io: Add fts64 with 64-bit time_t support
Similar to glob, fts routines passes a stat pointer that might differ of size and layout when 64-bit time API is used. Checked on i686-linux-gnu and x86_64-linux-gnu. Reviewed-by: Lukasz Majewski <lukma@denx.de> Reviewed-by: Carlos O'Donell <carlos@redhat.com> Tested-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'io/fts64-time64.c')
-rw-r--r-- | io/fts64-time64.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/io/fts64-time64.c b/io/fts64-time64.c new file mode 100644 index 0000000000..c8885ca79b --- /dev/null +++ b/io/fts64-time64.c @@ -0,0 +1,35 @@ +/* File tree traversal functions LFS version. + Copyright (C) 2015-2021 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, see + <https://www.gnu.org/licenses/>. */ + +#include <time.h> + +#if __TIMESIZE != 64 +# define FTS_OPEN __fts64_open_time64 +# define FTS_CLOSE __fts64_close_time64 +# define FTS_READ __fts64_read_time64 +# define FTS_SET __fts64_set_time64 +# define FTS_CHILDREN __fts64_children_time64 +# define FTSOBJ FTS64_TIME64 +# define FTSENTRY FSTENT64_TIME64 +# define INO_T ino64_t +# define STRUCT_STAT __stat64_t64 +# define STAT __stat64_time64 +# define LSTAT __lstat64_time64 + +# include "fts.c" +#endif |