The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2004 Edition
Copyright © 2001-2004 The IEEE and The Open Group, All Rights reserved.
A newer edition of this document exists here

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

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 following constants shall be defined 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.
GLOB_NOSYS
[OB XSI] [Option Start] Reserved. [Option End]

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 following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

The System Interfaces volume of IEEE Std 1003.1-2001, glob(), the Shell and Utilities volume of IEEE Std 1003.1-2001

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

End of informative text.

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]