source: trunk/third/findutils/lib/fnmatch.h @ 18890

Revision 18890, 2.4 KB checked in by zacheiss, 22 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r18889, which included commits to RCS files with non-trunk default branches.
Line 
1/* Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
2
3NOTE: The canonical source of this file is maintained with the GNU C Library.
4Bugs can be reported to bug-glibc@prep.ai.mit.edu.
5
6This program is free software; you can redistribute it and/or modify it
7under the terms of the GNU General Public License as published by the
8Free Software Foundation; either version 2, or (at your option) any
9later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program; if not, write to the Free Software Foundation,
18Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
19
20#ifndef _FNMATCH_H
21
22#define _FNMATCH_H      1
23
24#ifdef  __cplusplus
25extern "C" {
26#endif
27
28#if defined (__cplusplus) || (defined (__STDC__) && __STDC__)
29#undef  __P
30#define __P(protos)     protos
31#else /* Not C++ or ANSI C.  */
32#undef  __P
33#define __P(protos)     ()
34/* We can get away without defining `const' here only because in this file
35   it is used only inside the prototype for `fnmatch', which is elided in
36   non-ANSI C where `const' is problematical.  */
37#endif /* C++ or ANSI C.  */
38
39
40/* We #undef these before defining them because some losing systems
41   (HP-UX A.08.07 for example) define these in <unistd.h>.  */
42#undef  FNM_PATHNAME
43#undef  FNM_NOESCAPE
44#undef  FNM_PERIOD
45
46/* Bits set in the FLAGS argument to `fnmatch'.  */
47#define FNM_PATHNAME    (1 << 0) /* No wildcard can ever match `/'.  */
48#define FNM_NOESCAPE    (1 << 1) /* Backslashes don't quote special chars.  */
49#define FNM_PERIOD      (1 << 2) /* Leading `.' is matched only explicitly.  */
50
51#if !defined (_POSIX_C_SOURCE) || _POSIX_C_SOURCE < 2 || defined (_GNU_SOURCE)
52#define FNM_FILE_NAME   FNM_PATHNAME /* Preferred GNU name.  */
53#define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match.  */
54#define FNM_CASEFOLD    (1 << 4) /* Compare without regard to case.  */
55#endif
56
57/* Value returned by `fnmatch' if STRING does not match PATTERN.  */
58#define FNM_NOMATCH     1
59
60/* Match STRING against the filename pattern PATTERN,
61   returning zero if it matches, FNM_NOMATCH if not.  */
62extern int fnmatch __P ((const char *__pattern, const char *__string,
63                         int __flags));
64
65#ifdef  __cplusplus
66}
67#endif
68
69#endif /* fnmatch.h */
Note: See TracBrowser for help on using the repository browser.