Edit File by line
/home/barbar84/public_h.../wp-conte.../plugins/sujqvwi/ShExBy/shex_roo.../usr/include/sys
File: stat.h
/* Copyright (C) 1991-2018 Free Software Foundation, Inc.
[0] Fix | Delete
This file is part of the GNU C Library.
[1] Fix | Delete
[2] Fix | Delete
The GNU C Library is free software; you can redistribute it and/or
[3] Fix | Delete
modify it under the terms of the GNU Lesser General Public
[4] Fix | Delete
License as published by the Free Software Foundation; either
[5] Fix | Delete
version 2.1 of the License, or (at your option) any later version.
[6] Fix | Delete
[7] Fix | Delete
The GNU C Library is distributed in the hope that it will be useful,
[8] Fix | Delete
but WITHOUT ANY WARRANTY; without even the implied warranty of
[9] Fix | Delete
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
[10] Fix | Delete
Lesser General Public License for more details.
[11] Fix | Delete
[12] Fix | Delete
You should have received a copy of the GNU Lesser General Public
[13] Fix | Delete
License along with the GNU C Library; if not, see
[14] Fix | Delete
<http://www.gnu.org/licenses/>. */
[15] Fix | Delete
[16] Fix | Delete
/*
[17] Fix | Delete
* POSIX Standard: 5.6 File Characteristics <sys/stat.h>
[18] Fix | Delete
*/
[19] Fix | Delete
[20] Fix | Delete
#ifndef _SYS_STAT_H
[21] Fix | Delete
#define _SYS_STAT_H 1
[22] Fix | Delete
[23] Fix | Delete
#include <features.h>
[24] Fix | Delete
[25] Fix | Delete
#include <bits/types.h> /* For __mode_t and __dev_t. */
[26] Fix | Delete
[27] Fix | Delete
#ifdef __USE_XOPEN2K8
[28] Fix | Delete
# include <bits/types/struct_timespec.h>
[29] Fix | Delete
#endif
[30] Fix | Delete
[31] Fix | Delete
#if defined __USE_XOPEN || defined __USE_XOPEN2K
[32] Fix | Delete
/* The Single Unix specification says that some more types are
[33] Fix | Delete
available here. */
[34] Fix | Delete
[35] Fix | Delete
# include <bits/types/time_t.h>
[36] Fix | Delete
[37] Fix | Delete
# ifndef __dev_t_defined
[38] Fix | Delete
typedef __dev_t dev_t;
[39] Fix | Delete
# define __dev_t_defined
[40] Fix | Delete
# endif
[41] Fix | Delete
[42] Fix | Delete
# ifndef __gid_t_defined
[43] Fix | Delete
typedef __gid_t gid_t;
[44] Fix | Delete
# define __gid_t_defined
[45] Fix | Delete
# endif
[46] Fix | Delete
[47] Fix | Delete
# ifndef __ino_t_defined
[48] Fix | Delete
# ifndef __USE_FILE_OFFSET64
[49] Fix | Delete
typedef __ino_t ino_t;
[50] Fix | Delete
# else
[51] Fix | Delete
typedef __ino64_t ino_t;
[52] Fix | Delete
# endif
[53] Fix | Delete
# define __ino_t_defined
[54] Fix | Delete
# endif
[55] Fix | Delete
[56] Fix | Delete
# ifndef __mode_t_defined
[57] Fix | Delete
typedef __mode_t mode_t;
[58] Fix | Delete
# define __mode_t_defined
[59] Fix | Delete
# endif
[60] Fix | Delete
[61] Fix | Delete
# ifndef __nlink_t_defined
[62] Fix | Delete
typedef __nlink_t nlink_t;
[63] Fix | Delete
# define __nlink_t_defined
[64] Fix | Delete
# endif
[65] Fix | Delete
[66] Fix | Delete
# ifndef __off_t_defined
[67] Fix | Delete
# ifndef __USE_FILE_OFFSET64
[68] Fix | Delete
typedef __off_t off_t;
[69] Fix | Delete
# else
[70] Fix | Delete
typedef __off64_t off_t;
[71] Fix | Delete
# endif
[72] Fix | Delete
# define __off_t_defined
[73] Fix | Delete
# endif
[74] Fix | Delete
[75] Fix | Delete
# ifndef __uid_t_defined
[76] Fix | Delete
typedef __uid_t uid_t;
[77] Fix | Delete
# define __uid_t_defined
[78] Fix | Delete
# endif
[79] Fix | Delete
#endif /* X/Open */
[80] Fix | Delete
[81] Fix | Delete
#ifdef __USE_UNIX98
[82] Fix | Delete
# ifndef __blkcnt_t_defined
[83] Fix | Delete
# ifndef __USE_FILE_OFFSET64
[84] Fix | Delete
typedef __blkcnt_t blkcnt_t;
[85] Fix | Delete
# else
[86] Fix | Delete
typedef __blkcnt64_t blkcnt_t;
[87] Fix | Delete
# endif
[88] Fix | Delete
# define __blkcnt_t_defined
[89] Fix | Delete
# endif
[90] Fix | Delete
[91] Fix | Delete
# ifndef __blksize_t_defined
[92] Fix | Delete
typedef __blksize_t blksize_t;
[93] Fix | Delete
# define __blksize_t_defined
[94] Fix | Delete
# endif
[95] Fix | Delete
#endif /* Unix98 */
[96] Fix | Delete
[97] Fix | Delete
__BEGIN_DECLS
[98] Fix | Delete
[99] Fix | Delete
#include <bits/stat.h>
[100] Fix | Delete
[101] Fix | Delete
#if defined __USE_MISC || defined __USE_XOPEN
[102] Fix | Delete
# define S_IFMT __S_IFMT
[103] Fix | Delete
# define S_IFDIR __S_IFDIR
[104] Fix | Delete
# define S_IFCHR __S_IFCHR
[105] Fix | Delete
# define S_IFBLK __S_IFBLK
[106] Fix | Delete
# define S_IFREG __S_IFREG
[107] Fix | Delete
# ifdef __S_IFIFO
[108] Fix | Delete
# define S_IFIFO __S_IFIFO
[109] Fix | Delete
# endif
[110] Fix | Delete
# ifdef __S_IFLNK
[111] Fix | Delete
# define S_IFLNK __S_IFLNK
[112] Fix | Delete
# endif
[113] Fix | Delete
# if (defined __USE_MISC || defined __USE_XOPEN_EXTENDED) \
[114] Fix | Delete
&& defined __S_IFSOCK
[115] Fix | Delete
# define S_IFSOCK __S_IFSOCK
[116] Fix | Delete
# endif
[117] Fix | Delete
#endif
[118] Fix | Delete
[119] Fix | Delete
/* Test macros for file types. */
[120] Fix | Delete
[121] Fix | Delete
#define __S_ISTYPE(mode, mask) (((mode) & __S_IFMT) == (mask))
[122] Fix | Delete
[123] Fix | Delete
#define S_ISDIR(mode) __S_ISTYPE((mode), __S_IFDIR)
[124] Fix | Delete
#define S_ISCHR(mode) __S_ISTYPE((mode), __S_IFCHR)
[125] Fix | Delete
#define S_ISBLK(mode) __S_ISTYPE((mode), __S_IFBLK)
[126] Fix | Delete
#define S_ISREG(mode) __S_ISTYPE((mode), __S_IFREG)
[127] Fix | Delete
#ifdef __S_IFIFO
[128] Fix | Delete
# define S_ISFIFO(mode) __S_ISTYPE((mode), __S_IFIFO)
[129] Fix | Delete
#endif
[130] Fix | Delete
#ifdef __S_IFLNK
[131] Fix | Delete
# define S_ISLNK(mode) __S_ISTYPE((mode), __S_IFLNK)
[132] Fix | Delete
#endif
[133] Fix | Delete
[134] Fix | Delete
#if defined __USE_MISC && !defined __S_IFLNK
[135] Fix | Delete
# define S_ISLNK(mode) 0
[136] Fix | Delete
#endif
[137] Fix | Delete
[138] Fix | Delete
#if (defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K) \
[139] Fix | Delete
&& defined __S_IFSOCK
[140] Fix | Delete
# define S_ISSOCK(mode) __S_ISTYPE((mode), __S_IFSOCK)
[141] Fix | Delete
#elif defined __USE_XOPEN2K
[142] Fix | Delete
# define S_ISSOCK(mode) 0
[143] Fix | Delete
#endif
[144] Fix | Delete
[145] Fix | Delete
/* These are from POSIX.1b. If the objects are not implemented using separate
[146] Fix | Delete
distinct file types, the macros always will evaluate to zero. Unlike the
[147] Fix | Delete
other S_* macros the following three take a pointer to a `struct stat'
[148] Fix | Delete
object as the argument. */
[149] Fix | Delete
#ifdef __USE_POSIX199309
[150] Fix | Delete
# define S_TYPEISMQ(buf) __S_TYPEISMQ(buf)
[151] Fix | Delete
# define S_TYPEISSEM(buf) __S_TYPEISSEM(buf)
[152] Fix | Delete
# define S_TYPEISSHM(buf) __S_TYPEISSHM(buf)
[153] Fix | Delete
#endif
[154] Fix | Delete
[155] Fix | Delete
[156] Fix | Delete
/* Protection bits. */
[157] Fix | Delete
[158] Fix | Delete
#define S_ISUID __S_ISUID /* Set user ID on execution. */
[159] Fix | Delete
#define S_ISGID __S_ISGID /* Set group ID on execution. */
[160] Fix | Delete
[161] Fix | Delete
#if defined __USE_MISC || defined __USE_XOPEN
[162] Fix | Delete
/* Save swapped text after use (sticky bit). This is pretty well obsolete. */
[163] Fix | Delete
# define S_ISVTX __S_ISVTX
[164] Fix | Delete
#endif
[165] Fix | Delete
[166] Fix | Delete
#define S_IRUSR __S_IREAD /* Read by owner. */
[167] Fix | Delete
#define S_IWUSR __S_IWRITE /* Write by owner. */
[168] Fix | Delete
#define S_IXUSR __S_IEXEC /* Execute by owner. */
[169] Fix | Delete
/* Read, write, and execute by owner. */
[170] Fix | Delete
#define S_IRWXU (__S_IREAD|__S_IWRITE|__S_IEXEC)
[171] Fix | Delete
[172] Fix | Delete
#ifdef __USE_MISC
[173] Fix | Delete
# define S_IREAD S_IRUSR
[174] Fix | Delete
# define S_IWRITE S_IWUSR
[175] Fix | Delete
# define S_IEXEC S_IXUSR
[176] Fix | Delete
#endif
[177] Fix | Delete
[178] Fix | Delete
#define S_IRGRP (S_IRUSR >> 3) /* Read by group. */
[179] Fix | Delete
#define S_IWGRP (S_IWUSR >> 3) /* Write by group. */
[180] Fix | Delete
#define S_IXGRP (S_IXUSR >> 3) /* Execute by group. */
[181] Fix | Delete
/* Read, write, and execute by group. */
[182] Fix | Delete
#define S_IRWXG (S_IRWXU >> 3)
[183] Fix | Delete
[184] Fix | Delete
#define S_IROTH (S_IRGRP >> 3) /* Read by others. */
[185] Fix | Delete
#define S_IWOTH (S_IWGRP >> 3) /* Write by others. */
[186] Fix | Delete
#define S_IXOTH (S_IXGRP >> 3) /* Execute by others. */
[187] Fix | Delete
/* Read, write, and execute by others. */
[188] Fix | Delete
#define S_IRWXO (S_IRWXG >> 3)
[189] Fix | Delete
[190] Fix | Delete
[191] Fix | Delete
#ifdef __USE_MISC
[192] Fix | Delete
/* Macros for common mode bit masks. */
[193] Fix | Delete
# define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */
[194] Fix | Delete
# define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)/* 07777 */
[195] Fix | Delete
# define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666*/
[196] Fix | Delete
[197] Fix | Delete
# define S_BLKSIZE 512 /* Block size for `st_blocks'. */
[198] Fix | Delete
#endif
[199] Fix | Delete
[200] Fix | Delete
[201] Fix | Delete
#ifndef __USE_FILE_OFFSET64
[202] Fix | Delete
/* Get file attributes for FILE and put them in BUF. */
[203] Fix | Delete
extern int stat (const char *__restrict __file,
[204] Fix | Delete
struct stat *__restrict __buf) __THROW __nonnull ((1, 2));
[205] Fix | Delete
[206] Fix | Delete
/* Get file attributes for the file, device, pipe, or socket
[207] Fix | Delete
that file descriptor FD is open on and put them in BUF. */
[208] Fix | Delete
extern int fstat (int __fd, struct stat *__buf) __THROW __nonnull ((2));
[209] Fix | Delete
#else
[210] Fix | Delete
# ifdef __REDIRECT_NTH
[211] Fix | Delete
extern int __REDIRECT_NTH (stat, (const char *__restrict __file,
[212] Fix | Delete
struct stat *__restrict __buf), stat64)
[213] Fix | Delete
__nonnull ((1, 2));
[214] Fix | Delete
extern int __REDIRECT_NTH (fstat, (int __fd, struct stat *__buf), fstat64)
[215] Fix | Delete
__nonnull ((2));
[216] Fix | Delete
# else
[217] Fix | Delete
# define stat stat64
[218] Fix | Delete
# define fstat fstat64
[219] Fix | Delete
# endif
[220] Fix | Delete
#endif
[221] Fix | Delete
#ifdef __USE_LARGEFILE64
[222] Fix | Delete
extern int stat64 (const char *__restrict __file,
[223] Fix | Delete
struct stat64 *__restrict __buf) __THROW __nonnull ((1, 2));
[224] Fix | Delete
extern int fstat64 (int __fd, struct stat64 *__buf) __THROW __nonnull ((2));
[225] Fix | Delete
#endif
[226] Fix | Delete
[227] Fix | Delete
#ifdef __USE_ATFILE
[228] Fix | Delete
/* Similar to stat, get the attributes for FILE and put them in BUF.
[229] Fix | Delete
Relative path names are interpreted relative to FD unless FD is
[230] Fix | Delete
AT_FDCWD. */
[231] Fix | Delete
# ifndef __USE_FILE_OFFSET64
[232] Fix | Delete
extern int fstatat (int __fd, const char *__restrict __file,
[233] Fix | Delete
struct stat *__restrict __buf, int __flag)
[234] Fix | Delete
__THROW __nonnull ((2, 3));
[235] Fix | Delete
# else
[236] Fix | Delete
# ifdef __REDIRECT_NTH
[237] Fix | Delete
extern int __REDIRECT_NTH (fstatat, (int __fd, const char *__restrict __file,
[238] Fix | Delete
struct stat *__restrict __buf,
[239] Fix | Delete
int __flag),
[240] Fix | Delete
fstatat64) __nonnull ((2, 3));
[241] Fix | Delete
# else
[242] Fix | Delete
# define fstatat fstatat64
[243] Fix | Delete
# endif
[244] Fix | Delete
# endif
[245] Fix | Delete
[246] Fix | Delete
# ifdef __USE_LARGEFILE64
[247] Fix | Delete
extern int fstatat64 (int __fd, const char *__restrict __file,
[248] Fix | Delete
struct stat64 *__restrict __buf, int __flag)
[249] Fix | Delete
__THROW __nonnull ((2, 3));
[250] Fix | Delete
# endif
[251] Fix | Delete
#endif
[252] Fix | Delete
[253] Fix | Delete
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K
[254] Fix | Delete
# ifndef __USE_FILE_OFFSET64
[255] Fix | Delete
/* Get file attributes about FILE and put them in BUF.
[256] Fix | Delete
If FILE is a symbolic link, do not follow it. */
[257] Fix | Delete
extern int lstat (const char *__restrict __file,
[258] Fix | Delete
struct stat *__restrict __buf) __THROW __nonnull ((1, 2));
[259] Fix | Delete
# else
[260] Fix | Delete
# ifdef __REDIRECT_NTH
[261] Fix | Delete
extern int __REDIRECT_NTH (lstat,
[262] Fix | Delete
(const char *__restrict __file,
[263] Fix | Delete
struct stat *__restrict __buf), lstat64)
[264] Fix | Delete
__nonnull ((1, 2));
[265] Fix | Delete
# else
[266] Fix | Delete
# define lstat lstat64
[267] Fix | Delete
# endif
[268] Fix | Delete
# endif
[269] Fix | Delete
# ifdef __USE_LARGEFILE64
[270] Fix | Delete
extern int lstat64 (const char *__restrict __file,
[271] Fix | Delete
struct stat64 *__restrict __buf)
[272] Fix | Delete
__THROW __nonnull ((1, 2));
[273] Fix | Delete
# endif
[274] Fix | Delete
#endif
[275] Fix | Delete
[276] Fix | Delete
/* Set file access permissions for FILE to MODE.
[277] Fix | Delete
If FILE is a symbolic link, this affects its target instead. */
[278] Fix | Delete
extern int chmod (const char *__file, __mode_t __mode)
[279] Fix | Delete
__THROW __nonnull ((1));
[280] Fix | Delete
[281] Fix | Delete
#ifdef __USE_MISC
[282] Fix | Delete
/* Set file access permissions for FILE to MODE.
[283] Fix | Delete
If FILE is a symbolic link, this affects the link itself
[284] Fix | Delete
rather than its target. */
[285] Fix | Delete
extern int lchmod (const char *__file, __mode_t __mode)
[286] Fix | Delete
__THROW __nonnull ((1));
[287] Fix | Delete
#endif
[288] Fix | Delete
[289] Fix | Delete
/* Set file access permissions of the file FD is open on to MODE. */
[290] Fix | Delete
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
[291] Fix | Delete
extern int fchmod (int __fd, __mode_t __mode) __THROW;
[292] Fix | Delete
#endif
[293] Fix | Delete
[294] Fix | Delete
#ifdef __USE_ATFILE
[295] Fix | Delete
/* Set file access permissions of FILE relative to
[296] Fix | Delete
the directory FD is open on. */
[297] Fix | Delete
extern int fchmodat (int __fd, const char *__file, __mode_t __mode,
[298] Fix | Delete
int __flag)
[299] Fix | Delete
__THROW __nonnull ((2)) __wur;
[300] Fix | Delete
#endif /* Use ATFILE. */
[301] Fix | Delete
[302] Fix | Delete
[303] Fix | Delete
[304] Fix | Delete
/* Set the file creation mask of the current process to MASK,
[305] Fix | Delete
and return the old creation mask. */
[306] Fix | Delete
extern __mode_t umask (__mode_t __mask) __THROW;
[307] Fix | Delete
[308] Fix | Delete
#ifdef __USE_GNU
[309] Fix | Delete
/* Get the current `umask' value without changing it.
[310] Fix | Delete
This function is only available under the GNU Hurd. */
[311] Fix | Delete
extern __mode_t getumask (void) __THROW;
[312] Fix | Delete
#endif
[313] Fix | Delete
[314] Fix | Delete
/* Create a new directory named PATH, with permission bits MODE. */
[315] Fix | Delete
extern int mkdir (const char *__path, __mode_t __mode)
[316] Fix | Delete
__THROW __nonnull ((1));
[317] Fix | Delete
[318] Fix | Delete
#ifdef __USE_ATFILE
[319] Fix | Delete
/* Like mkdir, create a new directory with permission bits MODE. But
[320] Fix | Delete
interpret relative PATH names relative to the directory associated
[321] Fix | Delete
with FD. */
[322] Fix | Delete
extern int mkdirat (int __fd, const char *__path, __mode_t __mode)
[323] Fix | Delete
__THROW __nonnull ((2));
[324] Fix | Delete
#endif
[325] Fix | Delete
[326] Fix | Delete
/* Create a device file named PATH, with permission and special bits MODE
[327] Fix | Delete
and device number DEV (which can be constructed from major and minor
[328] Fix | Delete
device numbers with the `makedev' macro above). */
[329] Fix | Delete
#if defined __USE_MISC || defined __USE_XOPEN_EXTENDED
[330] Fix | Delete
extern int mknod (const char *__path, __mode_t __mode, __dev_t __dev)
[331] Fix | Delete
__THROW __nonnull ((1));
[332] Fix | Delete
[333] Fix | Delete
# ifdef __USE_ATFILE
[334] Fix | Delete
/* Like mknod, create a new device file with permission bits MODE and
[335] Fix | Delete
device number DEV. But interpret relative PATH names relative to
[336] Fix | Delete
the directory associated with FD. */
[337] Fix | Delete
extern int mknodat (int __fd, const char *__path, __mode_t __mode,
[338] Fix | Delete
__dev_t __dev) __THROW __nonnull ((2));
[339] Fix | Delete
# endif
[340] Fix | Delete
#endif
[341] Fix | Delete
[342] Fix | Delete
[343] Fix | Delete
/* Create a new FIFO named PATH, with permission bits MODE. */
[344] Fix | Delete
extern int mkfifo (const char *__path, __mode_t __mode)
[345] Fix | Delete
__THROW __nonnull ((1));
[346] Fix | Delete
[347] Fix | Delete
#ifdef __USE_ATFILE
[348] Fix | Delete
/* Like mkfifo, create a new FIFO with permission bits MODE. But
[349] Fix | Delete
interpret relative PATH names relative to the directory associated
[350] Fix | Delete
with FD. */
[351] Fix | Delete
extern int mkfifoat (int __fd, const char *__path, __mode_t __mode)
[352] Fix | Delete
__THROW __nonnull ((2));
[353] Fix | Delete
#endif
[354] Fix | Delete
[355] Fix | Delete
#ifdef __USE_ATFILE
[356] Fix | Delete
/* Set file access and modification times relative to directory file
[357] Fix | Delete
descriptor. */
[358] Fix | Delete
extern int utimensat (int __fd, const char *__path,
[359] Fix | Delete
const struct timespec __times[2],
[360] Fix | Delete
int __flags)
[361] Fix | Delete
__THROW __nonnull ((2));
[362] Fix | Delete
#endif
[363] Fix | Delete
[364] Fix | Delete
#ifdef __USE_XOPEN2K8
[365] Fix | Delete
/* Set file access and modification times of the file associated with FD. */
[366] Fix | Delete
extern int futimens (int __fd, const struct timespec __times[2]) __THROW;
[367] Fix | Delete
#endif
[368] Fix | Delete
[369] Fix | Delete
/* To allow the `struct stat' structure and the file type `mode_t'
[370] Fix | Delete
bits to vary without changing shared library major version number,
[371] Fix | Delete
the `stat' family of functions and `mknod' are in fact inline
[372] Fix | Delete
wrappers around calls to `xstat', `fxstat', `lxstat', and `xmknod',
[373] Fix | Delete
which all take a leading version-number argument designating the
[374] Fix | Delete
data structure and bits used. <bits/stat.h> defines _STAT_VER with
[375] Fix | Delete
the version number corresponding to `struct stat' as defined in
[376] Fix | Delete
that file; and _MKNOD_VER with the version number corresponding to
[377] Fix | Delete
the S_IF* macros defined therein. It is arranged that when not
[378] Fix | Delete
inlined these function are always statically linked; that way a
[379] Fix | Delete
dynamically-linked executable always encodes the version number
[380] Fix | Delete
corresponding to the data structures it uses, so the `x' functions
[381] Fix | Delete
in the shared library can adapt without needing to recompile all
[382] Fix | Delete
callers. */
[383] Fix | Delete
[384] Fix | Delete
#ifndef _STAT_VER
[385] Fix | Delete
# define _STAT_VER 0
[386] Fix | Delete
#endif
[387] Fix | Delete
#ifndef _MKNOD_VER
[388] Fix | Delete
# define _MKNOD_VER 0
[389] Fix | Delete
#endif
[390] Fix | Delete
[391] Fix | Delete
/* Wrappers for stat and mknod system calls. */
[392] Fix | Delete
#ifndef __USE_FILE_OFFSET64
[393] Fix | Delete
extern int __fxstat (int __ver, int __fildes, struct stat *__stat_buf)
[394] Fix | Delete
__THROW __nonnull ((3));
[395] Fix | Delete
extern int __xstat (int __ver, const char *__filename,
[396] Fix | Delete
struct stat *__stat_buf) __THROW __nonnull ((2, 3));
[397] Fix | Delete
extern int __lxstat (int __ver, const char *__filename,
[398] Fix | Delete
struct stat *__stat_buf) __THROW __nonnull ((2, 3));
[399] Fix | Delete
extern int __fxstatat (int __ver, int __fildes, const char *__filename,
[400] Fix | Delete
struct stat *__stat_buf, int __flag)
[401] Fix | Delete
__THROW __nonnull ((3, 4));
[402] Fix | Delete
#else
[403] Fix | Delete
# ifdef __REDIRECT_NTH
[404] Fix | Delete
extern int __REDIRECT_NTH (__fxstat, (int __ver, int __fildes,
[405] Fix | Delete
struct stat *__stat_buf), __fxstat64)
[406] Fix | Delete
__nonnull ((3));
[407] Fix | Delete
extern int __REDIRECT_NTH (__xstat, (int __ver, const char *__filename,
[408] Fix | Delete
struct stat *__stat_buf), __xstat64)
[409] Fix | Delete
__nonnull ((2, 3));
[410] Fix | Delete
extern int __REDIRECT_NTH (__lxstat, (int __ver, const char *__filename,
[411] Fix | Delete
struct stat *__stat_buf), __lxstat64)
[412] Fix | Delete
__nonnull ((2, 3));
[413] Fix | Delete
extern int __REDIRECT_NTH (__fxstatat, (int __ver, int __fildes,
[414] Fix | Delete
const char *__filename,
[415] Fix | Delete
struct stat *__stat_buf, int __flag),
[416] Fix | Delete
__fxstatat64) __nonnull ((3, 4));
[417] Fix | Delete
[418] Fix | Delete
# else
[419] Fix | Delete
# define __fxstat __fxstat64
[420] Fix | Delete
# define __xstat __xstat64
[421] Fix | Delete
# define __lxstat __lxstat64
[422] Fix | Delete
# endif
[423] Fix | Delete
#endif
[424] Fix | Delete
[425] Fix | Delete
#ifdef __USE_LARGEFILE64
[426] Fix | Delete
extern int __fxstat64 (int __ver, int __fildes, struct stat64 *__stat_buf)
[427] Fix | Delete
__THROW __nonnull ((3));
[428] Fix | Delete
extern int __xstat64 (int __ver, const char *__filename,
[429] Fix | Delete
struct stat64 *__stat_buf) __THROW __nonnull ((2, 3));
[430] Fix | Delete
extern int __lxstat64 (int __ver, const char *__filename,
[431] Fix | Delete
struct stat64 *__stat_buf) __THROW __nonnull ((2, 3));
[432] Fix | Delete
extern int __fxstatat64 (int __ver, int __fildes, const char *__filename,
[433] Fix | Delete
struct stat64 *__stat_buf, int __flag)
[434] Fix | Delete
__THROW __nonnull ((3, 4));
[435] Fix | Delete
#endif
[436] Fix | Delete
extern int __xmknod (int __ver, const char *__path, __mode_t __mode,
[437] Fix | Delete
__dev_t *__dev) __THROW __nonnull ((2, 4));
[438] Fix | Delete
[439] Fix | Delete
extern int __xmknodat (int __ver, int __fd, const char *__path,
[440] Fix | Delete
__mode_t __mode, __dev_t *__dev)
[441] Fix | Delete
__THROW __nonnull ((3, 5));
[442] Fix | Delete
[443] Fix | Delete
#ifdef __USE_GNU
[444] Fix | Delete
# include <bits/statx.h>
[445] Fix | Delete
#endif
[446] Fix | Delete
[447] Fix | Delete
#ifdef __USE_EXTERN_INLINES
[448] Fix | Delete
/* Inlined versions of the real stat and mknod functions. */
[449] Fix | Delete
[450] Fix | Delete
__extern_inline int
[451] Fix | Delete
__NTH (stat (const char *__path, struct stat *__statbuf))
[452] Fix | Delete
{
[453] Fix | Delete
return __xstat (_STAT_VER, __path, __statbuf);
[454] Fix | Delete
}
[455] Fix | Delete
[456] Fix | Delete
# if defined __USE_MISC || defined __USE_XOPEN_EXTENDED
[457] Fix | Delete
__extern_inline int
[458] Fix | Delete
__NTH (lstat (const char *__path, struct stat *__statbuf))
[459] Fix | Delete
{
[460] Fix | Delete
return __lxstat (_STAT_VER, __path, __statbuf);
[461] Fix | Delete
}
[462] Fix | Delete
# endif
[463] Fix | Delete
[464] Fix | Delete
__extern_inline int
[465] Fix | Delete
__NTH (fstat (int __fd, struct stat *__statbuf))
[466] Fix | Delete
{
[467] Fix | Delete
return __fxstat (_STAT_VER, __fd, __statbuf);
[468] Fix | Delete
}
[469] Fix | Delete
[470] Fix | Delete
# ifdef __USE_ATFILE
[471] Fix | Delete
__extern_inline int
[472] Fix | Delete
__NTH (fstatat (int __fd, const char *__filename, struct stat *__statbuf,
[473] Fix | Delete
int __flag))
[474] Fix | Delete
{
[475] Fix | Delete
return __fxstatat (_STAT_VER, __fd, __filename, __statbuf, __flag);
[476] Fix | Delete
}
[477] Fix | Delete
# endif
[478] Fix | Delete
[479] Fix | Delete
# ifdef __USE_MISC
[480] Fix | Delete
__extern_inline int
[481] Fix | Delete
__NTH (mknod (const char *__path, __mode_t __mode, __dev_t __dev))
[482] Fix | Delete
{
[483] Fix | Delete
return __xmknod (_MKNOD_VER, __path, __mode, &__dev);
[484] Fix | Delete
}
[485] Fix | Delete
# endif
[486] Fix | Delete
[487] Fix | Delete
# ifdef __USE_ATFILE
[488] Fix | Delete
__extern_inline int
[489] Fix | Delete
__NTH (mknodat (int __fd, const char *__path, __mode_t __mode,
[490] Fix | Delete
__dev_t __dev))
[491] Fix | Delete
{
[492] Fix | Delete
return __xmknodat (_MKNOD_VER, __fd, __path, __mode, &__dev);
[493] Fix | Delete
}
[494] Fix | Delete
# endif
[495] Fix | Delete
[496] Fix | Delete
# if defined __USE_LARGEFILE64 \
[497] Fix | Delete
&& (! defined __USE_FILE_OFFSET64 \
[498] Fix | Delete
|| (defined __REDIRECT_NTH && defined __OPTIMIZE__))
[499] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function