May 2024 | ||||||
Mo | Tu | We | Th | Fr | Sa | Su |
29 | 30 | 1 | 2 | 3 | 4 | 5 |
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
01: /* Copyright (C) 1991-93,96,97,98,99,2001,2004 Free Software Foundation, Inc. 02: This file is part of the GNU C Library. 03: 04: The GNU C Library is free software; you can redistribute it and/or 05: modify it under the terms of the GNU Lesser General Public 06: License as published by the Free Software Foundation; either 07: version 2.1 of the License, or (at your option) any later version. 08: 09: The GNU C Library is distributed in the hope that it will be useful, 10: but WITHOUT ANY WARRANTY; without even the implied warranty of 11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12: Lesser General Public License for more details. 13: 14: You should have received a copy of the GNU Lesser General Public 15: License along with the GNU C Library; if not, write to the Free 16: Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 17: 02111-1307 USA. */ 18: 19: #ifndef _FNMATCH_H 20: #define _FNMATCH_H 1 21: 22: #ifdef __cplusplus 23: extern "C" { 24: #endif 25: 26: #ifndef const 27: # if (defined __STDC__ && __STDC__) || defined __cplusplus 28: # define __const const 29: # else 30: # define __const 31: # endif 32: #endif 33: 34: /* We #undef these before defining them because some losing systems 35: (HP-UX A.08.07 for example) define these in <unistd.h>. */ 36: #undef FNM_PATHNAME 37: #undef FNM_NOESCAPE 38: #undef FNM_PERIOD 39: 40: /* Bits set in the FLAGS argument to `fnmatch'. */ 41: #define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */ 42: #define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */ 43: #define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */ 44: 45: #if !defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _GNU_SOURCE 46: # define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */ 47: # define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */ 48: # define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */ 49: # define FNM_EXTMATCH (1 << 5) /* Use ksh-like extended matching. */ 50: #endif 51: 52: /* Value returned by `fnmatch' if STRING does not match PATTERN. */ 53: #define FNM_NOMATCH 1 54: 55: /* This value is returned if the implementation does not support 56: `fnmatch'. Since this is not the case here it will never be 57: returned but the conformance test suites still require the symbol 58: to be defined. */ 59: #ifdef _XOPEN_SOURCE 60: # define FNM_NOSYS (-1) 61: #endif 62: 63: /* Match NAME against the filename pattern PATTERN, 64: returning zero if it matches, FNM_NOMATCH if not. */ 65: extern int fnmatch (__const char *__pattern, __const char *__name, 66: int __flags); 67: 68: #ifdef __cplusplus 69: } 70: #endif 71: 72: #endif /* fnmatch.h */ 73: