You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
1.4 KiB
68 lines
1.4 KiB
4 months ago
|
#ifndef SYSROOT_DIRENT_H_
|
||
|
#define SYSROOT_DIRENT_H_
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
extern "C" {
|
||
|
#endif
|
||
|
|
||
|
#include <features.h>
|
||
|
|
||
|
#define __NEED_ino_t
|
||
|
#define __NEED_off_t
|
||
|
#if defined(_BSD_SOURCE) || defined(_GNU_SOURCE)
|
||
|
#define __NEED_size_t
|
||
|
#endif
|
||
|
|
||
|
#include <bits/alltypes.h>
|
||
|
|
||
|
typedef struct __dirstream DIR;
|
||
|
|
||
|
struct dirent {
|
||
|
ino_t d_ino;
|
||
|
off_t d_off;
|
||
|
unsigned short d_reclen;
|
||
|
unsigned char d_type;
|
||
|
char d_name[256];
|
||
|
};
|
||
|
|
||
|
#define d_fileno d_ino
|
||
|
|
||
|
int closedir(DIR*);
|
||
|
DIR* fdopendir(int);
|
||
|
DIR* opendir(const char*);
|
||
|
struct dirent* readdir(DIR*);
|
||
|
int readdir_r(DIR* __restrict, struct dirent* __restrict, struct dirent** __restrict);
|
||
|
void rewinddir(DIR*);
|
||
|
void seekdir(DIR*, long);
|
||
|
long telldir(DIR*);
|
||
|
int dirfd(DIR*);
|
||
|
|
||
|
int alphasort(const struct dirent**, const struct dirent**);
|
||
|
int scandir(const char*, struct dirent***, int (*)(const struct dirent*),
|
||
|
int (*)(const struct dirent**, const struct dirent**));
|
||
|
|
||
|
#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
|
||
|
#define DT_UNKNOWN 0
|
||
|
#define DT_FIFO 1
|
||
|
#define DT_CHR 2
|
||
|
#define DT_DIR 4
|
||
|
#define DT_BLK 6
|
||
|
#define DT_REG 8
|
||
|
#define DT_LNK 10
|
||
|
#define DT_SOCK 12
|
||
|
#define DT_WHT 14
|
||
|
#define IFTODT(x) ((x) >> 12 & 017)
|
||
|
#define DTTOIF(x) ((x) << 12)
|
||
|
int getdents(int, struct dirent*, size_t);
|
||
|
#endif
|
||
|
|
||
|
#ifdef _GNU_SOURCE
|
||
|
int versionsort(const struct dirent**, const struct dirent**);
|
||
|
#endif
|
||
|
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif // SYSROOT_DIRENT_H_
|