summaryrefslogtreecommitdiff
path: root/include/glob.h
diff options
context:
space:
mode:
authorMike Heffner <mikeh@FreeBSD.org>2002-07-17 04:58:09 +0000
committerMike Heffner <mikeh@FreeBSD.org>2002-07-17 04:58:09 +0000
commit4a59c3ab552ad09f910322387e7fb7f7cb29eb52 (patch)
tree92f6aa408880f10b8b79a3fb6f5189540b25cdd7 /include/glob.h
parentfc7b12d6fc121a237248e1fa94ad2773b697a6c4 (diff)
downloadsrc-test2-4a59c3ab552ad09f910322387e7fb7f7cb29eb52.tar.gz
src-test2-4a59c3ab552ad09f910322387e7fb7f7cb29eb52.zip
Update glob(3) to add all the POSIX required options, specifically:
- add GLOB_NOMATCH return value and use it when we don't get a match - rename GLOB_ABEND to GLOB_ABORTED and use it instead of returning 1 in some places - add GLOB_NOESCAPE flag and retire GLOB_QUOTE to compatibility section Suggestions/advice on correct usage of POSIX defines: wollman
Notes
Notes: svn path=/head/; revision=100217
Diffstat (limited to 'include/glob.h')
-rw-r--r--include/glob.h18
1 files changed, 14 insertions, 4 deletions
diff --git a/include/glob.h b/include/glob.h
index d59db3b799e0..694ac40589af 100644
--- a/include/glob.h
+++ b/include/glob.h
@@ -64,13 +64,24 @@ typedef struct {
int (*gl_stat)(const char *, struct stat *);
} glob_t;
+#if __POSIX_VISIBLE >= 199209
+/* Believed to have been introduced in 1003.2-1992 */
#define GLOB_APPEND 0x0001 /* Append to output from previous call. */
#define GLOB_DOOFFS 0x0002 /* Use gl_offs. */
#define GLOB_ERR 0x0004 /* Return on error. */
#define GLOB_MARK 0x0008 /* Append / to matching directories. */
#define GLOB_NOCHECK 0x0010 /* Return pattern itself if nothing matches. */
#define GLOB_NOSORT 0x0020 /* Don't sort. */
+#define GLOB_NOESCAPE 0x2000 /* Disable backslash escaping. */
+/* Error values returned by glob(3) */
+#define GLOB_NOSPACE (-1) /* Malloc call failed. */
+#define GLOB_ABORTED (-2) /* Unignored error. */
+#define GLOB_NOMATCH (-3) /* No match and GLOB_NOCHECK was not set. */
+#define GLOB_NOSYS (-4) /* Obsolete: source comptability only. */
+#endif /* __POSIX_VISIBLE >= 199209 */
+
+#if __BSD_VISIBLE
#define GLOB_ALTDIRFUNC 0x0040 /* Use alternately specified directory funcs. */
#define GLOB_BRACE 0x0080 /* Expand braces ala csh. */
#define GLOB_MAGCHAR 0x0100 /* Pattern had globbing characters. */
@@ -79,11 +90,10 @@ typedef struct {
#define GLOB_TILDE 0x0800 /* Expand tilde names from the passwd file. */
#define GLOB_LIMIT 0x1000 /* limit number of returned paths */
-/* backwards compatibility, this is the old name for this option */
+/* source compatibility, these are the old names */
#define GLOB_MAXPATH GLOB_LIMIT
-
-#define GLOB_NOSPACE (-1) /* Malloc call failed. */
-#define GLOB_ABEND (-2) /* Unignored error. */
+#define GLOB_ABEND GLOB_ABORTED
+#endif /* __BSD_VISIBLE */
__BEGIN_DECLS
int glob(const char *, int, int (*)(const char *, int), glob_t *);