diff options
Diffstat (limited to 'src/util/string_utils.c')
| -rw-r--r-- | src/util/string_utils.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/util/string_utils.c b/src/util/string_utils.c index b6037621e..5e43bbef3 100644 --- a/src/util/string_utils.c +++ b/src/util/string_utils.c @@ -125,3 +125,24 @@ const char *get_last_x_chars(const char *str, size_t x) return (str + len - x); } + +char **concatenate_string_array(TALLOC_CTX *mem_ctx, + char **arr1, size_t len1, + char **arr2, size_t len2) +{ + size_t i, j; + size_t new_size = len1 + len2; + char ** string_array = talloc_realloc(mem_ctx, arr1, char *, new_size + 1); + if (string_array == NULL) { + return NULL; + } + + for (i=len1, j=0; i < new_size; ++i,++j) { + string_array[i] = talloc_steal(string_array, + arr2[j]); + } + + string_array[i] = NULL; + + return string_array; +} |
