X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?p=ossec-hids.git;a=blobdiff_plain;f=src%2Fos_regex%2Fos_regex_match.c;fp=src%2Fos_regex%2Fos_regex_match.c;h=a62bd7508a600ba4e98f1ed7c1acd76e7341ea04;hp=dfc24af207a12d3f0e5934fb99294efd87aaffd5;hb=789cbc8e52da68eba3517b920ef22e000cf3c9fd;hpb=ef70704f0b31b59bb719b884d6a99cb9e3e2044a diff --git a/src/os_regex/os_regex_match.c b/src/os_regex/os_regex_match.c index dfc24af..a62bd75 100755 --- a/src/os_regex/os_regex_match.c +++ b/src/os_regex/os_regex_match.c @@ -14,6 +14,8 @@ #include #include #include + +#include "os_regex.h" #include "os_regex_internal.h" /* Algorithm: @@ -26,15 +28,15 @@ /** Prototypes **/ -int _InternalMatch(char *pattern, char *str,int count); +static int _InternalMatch(const char *pattern, const char *str,size_t count) __attribute__((nonnull)); /* OS_WordMatch v0.3: * Searches for pattern in the string */ -int OS_WordMatch(char *pattern, char *str) +int OS_WordMatch(const char *pattern, const char *str) { - int count = 0; + size_t count = 0; if(*pattern == '\0') return(FALSE); @@ -67,12 +69,12 @@ int OS_WordMatch(char *pattern, char *str) } /* Internal match function */ -int _InternalMatch(char *pattern, char *str, int pattern_size) +static int _InternalMatch(const char *pattern, const char *str, size_t pattern_size) { - uchar *pt = (uchar *)pattern; - uchar *st = (uchar *)str; + const uchar *pt = (const uchar *)pattern; + const uchar *st = (const uchar *)str; - uchar last_char = pattern[pattern_size]; + const uchar last_char = (const uchar) pattern[pattern_size]; /* Return true for some odd expressions */ @@ -104,7 +106,7 @@ int _InternalMatch(char *pattern, char *str, int pattern_size) /* Match */ if(charmap[*st] == charmap[*pt]) { - str = (char *)st++; + str = (const char *)st++; pt++; while(*pt != last_char) @@ -122,8 +124,8 @@ int _InternalMatch(char *pattern, char *str, int pattern_size) return(TRUE); error: - st = (uchar *)str; - pt = (uchar *)pattern; + st = (const uchar *)str; + pt = (const uchar *)pattern; }