summaryrefslogtreecommitdiff
path: root/openbsd-compat/glob.h
diff options
context:
space:
mode:
Diffstat (limited to 'openbsd-compat/glob.h')
-rw-r--r--openbsd-compat/glob.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/openbsd-compat/glob.h b/openbsd-compat/glob.h
index a2b36f974..f8a7fa5ff 100644
--- a/openbsd-compat/glob.h
+++ b/openbsd-compat/glob.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: glob.h,v 1.10 2005/12/13 00:35:22 millert Exp $ */ 1/* $OpenBSD: glob.h,v 1.11 2010/09/24 13:32:55 djm Exp $ */
2/* $NetBSD: glob.h,v 1.5 1994/10/26 00:55:56 cgd Exp $ */ 2/* $NetBSD: glob.h,v 1.5 1994/10/26 00:55:56 cgd Exp $ */
3 3
4/* 4/*
@@ -38,13 +38,15 @@
38/* OPENBSD ORIGINAL: include/glob.h */ 38/* OPENBSD ORIGINAL: include/glob.h */
39 39
40#if !defined(HAVE_GLOB_H) || !defined(GLOB_HAS_ALTDIRFUNC) || \ 40#if !defined(HAVE_GLOB_H) || !defined(GLOB_HAS_ALTDIRFUNC) || \
41 !defined(GLOB_HAS_GL_MATCHC) || \ 41 !defined(GLOB_HAS_GL_MATCHC) || !defined(GLOB_HAS_GL_STATV) || \
42 !defined(HAVE_DECL_GLOB_NOMATCH) || HAVE_DECL_GLOB_NOMATCH == 0 || \ 42 !defined(HAVE_DECL_GLOB_NOMATCH) || HAVE_DECL_GLOB_NOMATCH == 0 || \
43 defined(BROKEN_GLOB) 43 defined(BROKEN_GLOB)
44 44
45#ifndef _GLOB_H_ 45#ifndef _GLOB_H_
46#define _GLOB_H_ 46#define _GLOB_H_
47 47
48#include <sys/stat.h>
49
48struct stat; 50struct stat;
49typedef struct { 51typedef struct {
50 int gl_pathc; /* Count of total paths so far. */ 52 int gl_pathc; /* Count of total paths so far. */
@@ -52,6 +54,7 @@ typedef struct {
52 int gl_offs; /* Reserved at beginning of gl_pathv. */ 54 int gl_offs; /* Reserved at beginning of gl_pathv. */
53 int gl_flags; /* Copy of flags parameter to glob. */ 55 int gl_flags; /* Copy of flags parameter to glob. */
54 char **gl_pathv; /* List of paths matching pattern. */ 56 char **gl_pathv; /* List of paths matching pattern. */
57 struct stat **gl_statv; /* Stat entries corresponding to gl_pathv */
55 /* Copy of errfunc parameter to glob. */ 58 /* Copy of errfunc parameter to glob. */
56 int (*gl_errfunc)(const char *, int); 59 int (*gl_errfunc)(const char *, int);
57 60
@@ -75,12 +78,10 @@ typedef struct {
75#define GLOB_NOSORT 0x0020 /* Don't sort. */ 78#define GLOB_NOSORT 0x0020 /* Don't sort. */
76#define GLOB_NOESCAPE 0x1000 /* Disable backslash escaping. */ 79#define GLOB_NOESCAPE 0x1000 /* Disable backslash escaping. */
77 80
78/* Error values returned by glob(3) */
79#define GLOB_NOSPACE (-1) /* Malloc call failed. */ 81#define GLOB_NOSPACE (-1) /* Malloc call failed. */
80#define GLOB_ABORTED (-2) /* Unignored error. */ 82#define GLOB_ABORTED (-2) /* Unignored error. */
81#define GLOB_NOMATCH (-3) /* No match and GLOB_NOCHECK not set. */ 83#define GLOB_NOMATCH (-3) /* No match and GLOB_NOCHECK not set. */
82#define GLOB_NOSYS (-4) /* Function not supported. */ 84#define GLOB_NOSYS (-4) /* Function not supported. */
83#define GLOB_ABEND GLOB_ABORTED
84 85
85#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */ 86#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */
86#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */ 87#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */
@@ -89,6 +90,8 @@ typedef struct {
89#define GLOB_QUOTE 0x0400 /* Quote special chars with \. */ 90#define GLOB_QUOTE 0x0400 /* Quote special chars with \. */
90#define GLOB_TILDE 0x0800 /* Expand tilde names from the passwd file. */ 91#define GLOB_TILDE 0x0800 /* Expand tilde names from the passwd file. */
91#define GLOB_LIMIT 0x2000 /* Limit pattern match output to ARG_MAX */ 92#define GLOB_LIMIT 0x2000 /* Limit pattern match output to ARG_MAX */
93#define GLOB_KEEPSTAT 0x4000 /* Retain stat data for paths in gl_statv. */
94#define GLOB_ABEND GLOB_ABORTED /* backward compatibility */
92 95
93int glob(const char *, int, int (*)(const char *, int), glob_t *); 96int glob(const char *, int, int (*)(const char *, int), glob_t *);
94void globfree(glob_t *); 97void globfree(glob_t *);
@@ -96,5 +99,5 @@ void globfree(glob_t *);
96#endif /* !_GLOB_H_ */ 99#endif /* !_GLOB_H_ */
97 100
98#endif /* !defined(HAVE_GLOB_H) || !defined(GLOB_HAS_ALTDIRFUNC) || 101#endif /* !defined(HAVE_GLOB_H) || !defined(GLOB_HAS_ALTDIRFUNC) ||
99 !defined(GLOB_HAS_GL_MATCHC */ 102 !defined(GLOB_HAS_GL_MATCHC) || !defined(GLOH_HAS_GL_STATV) */
100 103