izmjene licence
[ossec-hids.git] / src / os_regex / os_regex_strbreak.c
index 2294c2c..d04f355 100755 (executable)
@@ -13,6 +13,8 @@
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
+
+#include "os_regex.h"
 #include "os_regex_internal.h"
 
 
  * Split a string into multiples pieces, divided by a char "match".
  * Returns a NULL terminated array on success or NULL on error.
  */
-char **OS_StrBreak(char match, char *str, int size)
+char **OS_StrBreak(char match, const char *str, size_t size)
 {
-    int count = 0;
-    int i = 0;
-    
-    char *tmp_str = str;
+    size_t count = 0;
+    size_t i = 0;
+
+    const char *tmp_str = str;
 
     char **ret;
 
-    /* We can't do anything if str is null or size <= 0 */
-    if((str == NULL)||(size <= 0))
+    /* We can't do anything if str is null */
+    if(str == NULL)
         return(NULL);
 
     ret = (char **)calloc(size+1, sizeof(char *));
@@ -40,7 +42,7 @@ char **OS_StrBreak(char match, char *str, int size)
         /* Memory error. Should provice a better way to detect it */
         return(NULL);
     }
-    
+
     /* Allocating memory to null */
     while(i <= size)
     {
@@ -62,13 +64,13 @@ char **OS_StrBreak(char match, char *str, int size)
                 goto error;
             }
 
-            /* Copying the string */   
+            /* Copying the string */
             ret[count][i-1] = '\0';
             strncpy(ret[count],tmp_str,i-1);
 
             tmp_str = ++str;
             count++;
-            i=0; 
+            i=0;
 
             continue;
         }