1/* Definition of `struct stat' used in the kernel.
 2   Copyright (C) 1997-2025 Free Software Foundation, Inc.
 3   This file is part of the GNU C Library.
 4
 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.
 9
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.
14
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/>.  */
18
19struct kernel_stat
20  {
21    unsigned int st_dev;
22    unsigned int st_ino;
23    unsigned int st_mode;
24    unsigned short st_nlink;
25    unsigned int st_uid;
26    unsigned int st_gid;
27    unsigned int st_rdev;
28    unsigned long int st_size;
29    unsigned long int st_blksize;
30    unsigned long int st_blocks;
31    struct timespec st_atim;
32    struct timespec st_mtim;
33    struct timespec st_ctim;
34    unsigned long int __glibc_reserved4;
35#define _HAVE___UNUSED4
36    unsigned long int __glibc_reserved5;
37#define _HAVE___UNUSED5
38  };
39
40#define _HAVE_STAT___UNUSED4
41#define _HAVE_STAT___UNUSED5
42#define _HAVE_STAT___PAD1
43#define _HAVE_STAT___PAD2
44#define _HAVE_STAT_NSEC
45#define _HAVE_STAT64___UNUSED4
46#define _HAVE_STAT64___UNUSED5
47#define _HAVE_STAT64___PAD2
48#define _HAVE_STAT64_NSEC
49
50#define STAT_IS_KERNEL_STAT 0
51#define STAT64_IS_KERNEL_STAT64 1
52#define XSTAT_IS_XSTAT64 0
53#define STATFS_IS_STATFS64 0