mirror of
https://gitlab.com/sortix/sortix.git
synced 2023-02-13 20:55:38 -05:00
24 lines
546 B
C
24 lines
546 B
C
|
#ifndef _DIR_DECL
|
||
|
#define _DIR_DECL
|
||
|
struct dirent;
|
||
|
|
||
|
#define _DIR_REGISTERED (1<<0)
|
||
|
#define _DIR_ERROR (1<<1)
|
||
|
#define _DIR_EOF (1<<2)
|
||
|
typedef struct _DIR
|
||
|
{
|
||
|
void* user;
|
||
|
int (*read_func)(void* user, struct dirent* dirent, size_t* size);
|
||
|
int (*rewind_func)(void* user);
|
||
|
int (*fd_func)(void* user);
|
||
|
int (*close_func)(void* user);
|
||
|
void (*free_func)(struct _DIR* dir);
|
||
|
/* Application writers shouldn't use anything beyond this point. */
|
||
|
struct _DIR* prev;
|
||
|
struct _DIR* next;
|
||
|
struct dirent* entry;
|
||
|
size_t entrysize;
|
||
|
int flags;
|
||
|
} DIR;
|
||
|
#endif
|