X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?a=blobdiff_plain;ds=sidebyside;f=src%2Fos_regex%2Fos_match_execute.c;fp=src%2Fos_regex%2Fos_match_execute.c;h=0bc8377f5dd04eb6f2f3fee3241953fbaf913cfb;hb=789cbc8e52da68eba3517b920ef22e000cf3c9fd;hp=8977484cb33edfa786370e7504797c2f2b7622ec;hpb=ef70704f0b31b59bb719b884d6a99cb9e3e2044a;p=ossec-hids.git diff --git a/src/os_regex/os_match_execute.c b/src/os_regex/os_match_execute.c index 8977484..0bc8377 100755 --- a/src/os_regex/os_match_execute.c +++ b/src/os_regex/os_match_execute.c @@ -19,10 +19,13 @@ /** Internal matching **/ -int _OS_Match(char *pattern, char *str, int str_len, int size) +int _OS_Match(const char *pattern, const char *str, size_t str_len, size_t size) { - int i = 0,j; - char *pt = pattern; + size_t i = 0,j; + const char *pt = pattern; + + if(str_len < size) + return(FALSE); size = str_len - size; @@ -58,7 +61,7 @@ int _OS_Match(char *pattern, char *str, int str_len, int size) /** Internal matching **/ -int _os_strncmp(char *pattern, char *str, int str_len, int size) +int _os_strncmp(const char *pattern, const char *str, __attribute__((unused)) size_t str_len, size_t size) { if(strncasecmp(pattern, str, size) == 0) return(TRUE); @@ -67,7 +70,7 @@ int _os_strncmp(char *pattern, char *str, int str_len, int size) } /** Internal matching **/ -int _os_strcmp(char *pattern, char *str, int str_len, int size) +int _os_strcmp(const char *pattern, const char *str, __attribute__((unused)) size_t str_len, __attribute__((unused)) size_t size) { if(strcasecmp(pattern, str) == 0) return(TRUE); @@ -75,12 +78,13 @@ int _os_strcmp(char *pattern, char *str, int str_len, int size) return(FALSE); } -int _os_strmatch(char *pattern, char *str, int str_len, int size) +int _os_strmatch(__attribute__((unused)) const char *pattern, __attribute__((unused)) const char *str, + __attribute__((unused)) size_t str_len, __attribute__((unused)) size_t size) { return(TRUE); } -int _os_strstr(char *pattern, char *str, int str_len, int size) +int _os_strstr(const char *pattern, const char *str, __attribute__((unused)) size_t str_len, __attribute__((unused)) size_t size) { if(strstr(str, pattern) != NULL) { @@ -91,10 +95,10 @@ int _os_strstr(char *pattern, char *str, int str_len, int size) /** Internal matching **/ -int _os_strcmp_last(char *pattern, char *str, int str_len, int size) +int _os_strcmp_last(const char *pattern, const char *str, size_t str_len, size_t size) { /* Size of the string must be bigger */ - if((str_len - size) < 0) + if(str_len < size) return(FALSE); if(strcasecmp(pattern, str + (str_len - size)) == 0) @@ -110,7 +114,7 @@ int _os_strcmp_last(char *pattern, char *str, int str_len, int size) * Returns 1 on success or 0 on error. * The error code is set on reg->error. */ -int OSMatch_Execute(char *str, int str_len, OSMatch *reg) +int OSMatch_Execute(const char *str, size_t str_len, OSMatch *reg) { short int i = 0;