-typedef struct
- {
- __size_t gl_pathc; /* Count of paths matched by the pattern. */
- char **gl_pathv; /* List of matched pathnames. */
- __size_t gl_offs; /* Slots to reserve in `gl_pathv'. */
- int gl_flags; /* Set to FLAGS, maybe | GLOB_MAGCHAR. */
-
- /* If the GLOB_ALTDIRFUNC flag is set, the following functions
- are used instead of the normal file access functions. */
- void (*gl_closedir) (void *);
-#ifdef __USE_GNU
-#if defined HAVE_DIRENT_H || defined __GNU_LIBRARY__
- struct dirent *(*gl_readdir) (void *);
-#else
- struct direct *(*gl_readdir) (void *);
-#endif
-#else
- void *(*gl_readdir) (void *);
-#endif
- void *(*gl_opendir) (__const char *);
-#ifdef __USE_GNU
- int (*gl_lstat) (__const char *__restrict, struct stat *__restrict);
- int (*gl_stat) (__const char *__restrict, struct stat *__restrict);
-#else
- int (*gl_lstat) (__const char *__restrict, void *__restrict);
- int (*gl_stat) (__const char *__restrict, void *__restrict);
-#endif
- } glob_t;
-
-#if !defined GLOB_PREFIX && defined __USE_LARGEFILE64
-# ifdef __USE_GNU
-struct stat64;
-# endif
-typedef struct
- {
- __size_t gl_pathc;
- char **gl_pathv;
- __size_t gl_offs;
- int gl_flags;
-
- /* If the GLOB_ALTDIRFUNC flag is set, the following functions
- are used instead of the normal file access functions. */
- void (*gl_closedir) (void *);
-# ifdef __USE_GNU
- struct dirent64 *(*gl_readdir) (void *);
-# else
- void *(*gl_readdir) (void *);
-# endif
- void *(*gl_opendir) (__const char *);
-# ifdef __USE_GNU
- int (*gl_lstat) (__const char *__restrict, struct stat64 *__restrict);
- int (*gl_stat) (__const char *__restrict, struct stat64 *__restrict);
-# else
- int (*gl_lstat) (__const char *__restrict, void *__restrict);
- int (*gl_stat) (__const char *__restrict, void *__restrict);
-# endif
- } glob64_t;