The Open Group Base Specifications Issue 7
IEEE Std 1003.1, 2013 Edition
Copyright © 2001-2013 The IEEE and The Open Group

#### NAME

> glob.h - pathname pattern-matching types

#### SYNOPSIS

> `#include <glob.h>`

#### DESCRIPTION

> 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 *);

The following sections are informative.

#### APPLICATION USAGE

> None.

#### RATIONALE

> None.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> <sys/types.h>

> XSH glob

#### CHANGE HISTORY

> First released in Issue 4. Derived from the ISO POSIX-2 standard.

#### Issue 6

> 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.

#### Issue 7

> 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.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2013 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]