* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
- *
- * Wildcard pattern matching
*/
-
#include "portab.h"
-static char UNUSED id[] = "$Id: match.c,v 1.4 2005/07/31 20:13:08 alex Exp $";
+/**
+ * @file
+ * Wildcard pattern matching
+ */
#include "imp.h"
#include <assert.h>
#include "exp.h"
#include "match.h"
+#include "defines.h"
+#include "tool.h"
/*
*/
-static int Matche PARAMS(( char *p, char *t ));
-static int Matche_After_Star PARAMS(( char *p, char *t ));
+static int Matche PARAMS(( const char *p, const char *t ));
+static int Matche_After_Star PARAMS(( const char *p, const char *t ));
#define MATCH_PATTERN 6 /* bad pattern */
GLOBAL bool
-Match( char *Pattern, char *String )
+Match( const char *Pattern, const char *String )
{
/* Pattern mit String vergleichen */
if( Matche( Pattern, String ) == MATCH_VALID ) return true;
} /* Match */
+GLOBAL bool
+MatchCaseInsensitive(const char *pattern, const char *searchme)
+{
+ char haystack[COMMAND_LEN];
+
+ strlcpy(haystack, searchme, sizeof(haystack));
+ return Match(pattern, ngt_LowerStr(haystack));
+} /* MatchCaseInsensitive */
+
+
static int
-Matche( char *p, char *t )
+Matche( const char *p, const char *t )
{
register char range_start, range_end;
bool invert;
static int
-Matche_After_Star( char *p, char *t )
+Matche_After_Star( const char *p, const char *t )
{
register int nextp, match = 0;