glob.h - pathname pattern-matching types
The <glob.h> header shall define the structures and symbolic constants used by the glob() function.
The structure type glob_t shall contain at least the following members:size_t gl_pathc Count of paths matched by pattern. char **gl_pathv Pointer to a list of matched pathnames. size_t gl_offs Slots to reserve at the beginning of gl_pathv.
The following constants shall be provided as values for the flags argument:
- Append generated pathnames to those previously obtained.
- Specify how many null pointers to add to the beginning of gl_pathv.
- Cause glob() to return on error.
- Each pathname that is a directory that matches pattern has a slash appended.
- If pattern does not match any pathname, then return a list consisting of only pattern.
- Disable backslash escaping.
- Do not sort the pathnames returned.
The following constants shall be defined as error return values:
- The scan was stopped because GLOB_ERR was set or (*errfunc)() returned non-zero.
- The pattern does not match any existing pathname, and GLOB_NOCHECK was not set in flags.
- An attempt to allocate memory failed.
- [OB XSI] Reserved.
The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.int glob(const char *restrict, int, int (*)(const char *, int), glob_t *restrict); void globfree(glob_t *);
The implementation may define additional macros or constants using names beginning with GLOB_.
The System Interfaces volume of IEEE Std 1003.1-2001, glob(), the Shell and Utilities volume of IEEE Std 1003.1-2001
First released in Issue 4. Derived from the ISO POSIX-2 standard.
The restrict keyword is added to the prototype for glob().
The constant GLOB_NOSYS is marked obsolescent.
IEEE Std 1003.1-2001/Cor 1-2002, item XBD/TC1/D6/8 is applied, correcting the glob() prototype definition by removing the restrict qualifier from the function pointer argument.