diff options
Diffstat (limited to 'src/fnmatch')
| -rw-r--r-- | src/fnmatch/FNM_NOESCAPE.h | 6 | ||||
| -rw-r--r-- | src/fnmatch/FNM_NOMATCH.h | 6 | ||||
| -rw-r--r-- | src/fnmatch/FNM_NOSYS.h | 6 | ||||
| -rw-r--r-- | src/fnmatch/FNM_PATHNAME.h | 6 | ||||
| -rw-r--r-- | src/fnmatch/FNM_PERIOD.h | 6 | ||||
| -rw-r--r-- | src/fnmatch/fnmatch.c | 104 |
6 files changed, 0 insertions, 134 deletions
diff --git a/src/fnmatch/FNM_NOESCAPE.h b/src/fnmatch/FNM_NOESCAPE.h deleted file mode 100644 index ff40d013..00000000 --- a/src/fnmatch/FNM_NOESCAPE.h +++ /dev/null @@ -1,6 +0,0 @@ -#include <fnmatch.h> -#define FNM_NOESCAPE (1<<2) -/* -POSIX(2) -*/ - diff --git a/src/fnmatch/FNM_NOMATCH.h b/src/fnmatch/FNM_NOMATCH.h deleted file mode 100644 index a4076d33..00000000 --- a/src/fnmatch/FNM_NOMATCH.h +++ /dev/null @@ -1,6 +0,0 @@ -#include <fnmatch.h> -#define FNM_NOMATCH (-1) -/* -POSIX(2) -*/ - diff --git a/src/fnmatch/FNM_NOSYS.h b/src/fnmatch/FNM_NOSYS.h deleted file mode 100644 index 8880c2cc..00000000 --- a/src/fnmatch/FNM_NOSYS.h +++ /dev/null @@ -1,6 +0,0 @@ -#include <fnmatch.h> -#define FNM_NOSYS (-2) -/* -POSIX(2) -*/ - diff --git a/src/fnmatch/FNM_PATHNAME.h b/src/fnmatch/FNM_PATHNAME.h deleted file mode 100644 index 646e20fa..00000000 --- a/src/fnmatch/FNM_PATHNAME.h +++ /dev/null @@ -1,6 +0,0 @@ -#include <fnmatch.h> -#define FNM_PATHNAME (1<<0) -/* -POSIX(2) -*/ - diff --git a/src/fnmatch/FNM_PERIOD.h b/src/fnmatch/FNM_PERIOD.h deleted file mode 100644 index 4d87f2c7..00000000 --- a/src/fnmatch/FNM_PERIOD.h +++ /dev/null @@ -1,6 +0,0 @@ -#include <fnmatch.h> -#define FNM_PERIOD (1<<1) -/* -POSIX(2) -*/ - diff --git a/src/fnmatch/fnmatch.c b/src/fnmatch/fnmatch.c deleted file mode 100644 index 188638bd..00000000 --- a/src/fnmatch/fnmatch.c +++ /dev/null @@ -1,104 +0,0 @@ -#if 0 - -#include <fnmatch.h> -#include <string.h> -#include "_assert.h" - -int fnmatch(const char * pattern, const char * string, int flags) -{ - ASSERT_NONNULL(pattern); - ASSERT_NONNULL(string); - /* __ASSERT_FLAGS(flags, FNM_PATHNAME | FNM_NOESCAPE | FNM_PERIOD); */ - const int period = flags & FNM_PERIOD; - const int pathname = flags & FNM_PATHNAME; - const int noescape = flags & FNM_NOESCAPE; - char last = '/'; - - while (*pattern && *string) { - if (*pattern == '?') { - pattern++; - if (pathname && *string == '/') { - return FNM_NOMATCH; - } - - if (period && *string == '.') { - if (pathname && !(last == '/')) { - return FNM_NOMATCH; - } - /* TODO: period & !pathname */ - } - - last = *string; - string++; - - continue; - } - - if (*pattern == '[') { - char *ket = strchr(pattern, ']'); - if (ket) { - /* TODO: FNM_PATHNAME */ - /* TODO: FNM_PERIOD */ - /* match all or none */ - pattern = ket + 1; - if (0) { - return FNM_NOMATCH; - } - - last = *string; - string++; - continue; - } - /* match a literal bracket, handled by main branch */ - } - - if (*pattern == '*') { - /* multiple * is the same as one * */ - while (*pattern == '*') { - pattern++; - } - - /* TODO: period and pathname */ - if (*pattern == '\0') { - return 0; - } - - while (*string) { - /* TODO: period and pathname */ - if (fnmatch(pattern, string, flags) == 0) { - return 0; - } - string++; - } - return FNM_NOMATCH; - } - - if (*pattern == '\\' && !noescape) { - pattern++; - if (*string != *pattern) { - return FNM_NOMATCH; - } - } - - if (*pattern != *string) { - return FNM_NOMATCH; - } - - last = *string; - pattern++; - string++; - } - - if (*pattern || *string) { - return FNM_NOMATCH; - } - - return 0; -} - -/* -POSIX(2) -*/ - - -#endif |
