Blame lib/fnmatch.in.h

Packit 709fb3
/* Copyright (C) 1991-1993, 1996-1999, 2001-2003, 2005, 2007, 2009-2017 Free
Packit 709fb3
   Software Foundation, Inc.
Packit 709fb3
Packit 709fb3
   This file is part of the GNU C Library.
Packit 709fb3
Packit 709fb3
   This program is free software; you can redistribute it and/or modify
Packit 709fb3
   it under the terms of the GNU General Public License as published by
Packit 709fb3
   the Free Software Foundation; either version 3, or (at your option)
Packit 709fb3
   any later version.
Packit 709fb3
Packit 709fb3
   This program is distributed in the hope that it will be useful,
Packit 709fb3
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 709fb3
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 709fb3
   GNU General Public License for more details.
Packit 709fb3
Packit 709fb3
   You should have received a copy of the GNU General Public License
Packit 709fb3
   along with this program; if not, see <http://www.gnu.org/licenses/>.  */
Packit 709fb3
Packit 709fb3
#ifndef _FNMATCH_H
Packit 709fb3
#define _FNMATCH_H      1
Packit 709fb3
Packit 709fb3
/* The definition of _GL_ARG_NONNULL is copied here.  */
Packit 709fb3
Packit 709fb3
#ifdef __cplusplus
Packit 709fb3
extern "C" {
Packit 709fb3
#endif
Packit 709fb3
Packit 709fb3
/* We #undef these before defining them because some losing systems
Packit 709fb3
   (HP-UX A.08.07 for example) define these in <unistd.h>.  */
Packit 709fb3
#undef  FNM_PATHNAME
Packit 709fb3
#undef  FNM_NOESCAPE
Packit 709fb3
#undef  FNM_PERIOD
Packit 709fb3
Packit 709fb3
/* Bits set in the FLAGS argument to 'fnmatch'.  */
Packit 709fb3
#define FNM_PATHNAME    (1 << 0) /* No wildcard can ever match '/'.  */
Packit 709fb3
#define FNM_NOESCAPE    (1 << 1) /* Backslashes don't quote special chars.  */
Packit 709fb3
#define FNM_PERIOD      (1 << 2) /* Leading '.' is matched only explicitly.  */
Packit 709fb3
Packit 709fb3
#if !defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _GNU_SOURCE
Packit 709fb3
# define FNM_FILE_NAME   FNM_PATHNAME   /* Preferred GNU name.  */
Packit 709fb3
# define FNM_LEADING_DIR (1 << 3)       /* Ignore '/...' after a match.  */
Packit 709fb3
# define FNM_CASEFOLD    (1 << 4)       /* Compare without regard to case.  */
Packit 709fb3
# define FNM_EXTMATCH    (1 << 5)       /* Use ksh-like extended matching. */
Packit 709fb3
#endif
Packit 709fb3
Packit 709fb3
/* Value returned by 'fnmatch' if STRING does not match PATTERN.  */
Packit 709fb3
#define FNM_NOMATCH     1
Packit 709fb3
Packit 709fb3
/* This value is returned if the implementation does not support
Packit 709fb3
   'fnmatch'.  Since this is not the case here it will never be
Packit 709fb3
   returned but the conformance test suites still require the symbol
Packit 709fb3
   to be defined.  */
Packit 709fb3
#ifdef _XOPEN_SOURCE
Packit 709fb3
# define FNM_NOSYS      (-1)
Packit 709fb3
#endif
Packit 709fb3
Packit 709fb3
/* Match NAME against the file name pattern PATTERN,
Packit 709fb3
   returning zero if it matches, FNM_NOMATCH if not.  */
Packit 709fb3
extern int fnmatch (const char *__pattern, const char *__name,
Packit 709fb3
                    int __flags)
Packit 709fb3
     _GL_ARG_NONNULL ((1, 2));
Packit 709fb3
Packit 709fb3
#ifdef __cplusplus
Packit 709fb3
}
Packit 709fb3
#endif
Packit 709fb3
Packit 709fb3
#endif /* fnmatch.h */