glob.h — pathname pattern-matching types
#include <glob.h>
The <glob.h> header shall define the structures and symbolic constants used by the glob() function.
The <glob.h> header shall define the glob_t structure type, which shall include 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 <glob.h> header shall define the size_t type as described in <sys/types.h>.
The <glob.h> header shall define the following symbolic constants as values for the flags argument:
- GLOB_APPEND
- Append generated pathnames to those previously obtained.
- GLOB_DOOFFS
- Specify how many null pointers to add to the beginning of gl_pathv.
- GLOB_ERR
- Cause glob() to return on error.
- GLOB_MARK
- Each pathname that is a directory that matches pattern has a <slash> appended.
- GLOB_NOCHECK
- If pattern does not match any pathname, then return a list consisting of only pattern.
- GLOB_NOESCAPE
- Disable backslash escaping.
- GLOB_NOSORT
- Do not sort the pathnames returned.
The <glob.h> header shall define the following symbolic constants as error return values:
- GLOB_ABORTED
- The scan was stopped because GLOB_ERR was set or (*errfunc)() returned non-zero.
- GLOB_NOMATCH
- The pattern does not match any existing pathname, and GLOB_NOCHECK was not set in flags.
- GLOB_NOSPACE
- An attempt to allocate memory failed.
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 *);
None.
None.
None.
XSH glob
First released in Issue 4. Derived from the ISO POSIX-2 standard.
The restrict keyword is added to the prototype for glob().
The GLOB_NOSYS constant 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.
SD5-XBD-ERN-56 is applied, adding a reference to <sys/types.h> for the size_t
The obsolescent GLOB_NOSYS constant is removed.
This reference page is clarified with respect to macros and symbolic constants.
return to top of page