Relicence all source and header files included in LGPL code
[lttng-tools.git] / src / common / string-utils / string-utils.h
index 3c1a413cee5e51cbce03c4fa410e4d7042d6e6e7..0d14840160b5c1f0e433504247c8e5995d5e5b7a 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 2017 Philippe Proulx <pproulx@efficios.com>
  *
- * SPDX-License-Identifier: GPL-2.0-only
+ * SPDX-License-Identifier: LGPL-2.1-only
  *
  */
 
@@ -10,6 +10,7 @@
 
 #include <stdbool.h>
 #include <common/macros.h>
+#include <common/dynamic-array.h>
 
 LTTNG_HIDDEN
 void strutils_normalize_star_glob_pattern(char *pattern);
@@ -24,7 +25,8 @@ LTTNG_HIDDEN
 char *strutils_unescape_string(const char *input, char only_char);
 
 LTTNG_HIDDEN
-char **strutils_split(const char *input, char delim, bool escape_delim);
+int strutils_split(const char *input, char delim, bool escape_delim,
+               struct lttng_dynamic_pointer_array *out_strings);
 
 LTTNG_HIDDEN
 void strutils_free_null_terminated_array_of_strings(char **array);
@@ -32,4 +34,22 @@ void strutils_free_null_terminated_array_of_strings(char **array);
 LTTNG_HIDDEN
 size_t strutils_array_of_strings_len(char * const *array);
 
+/*
+ * Append `append` to the malloc-end string `str`.
+ *
+ * On success, `str` is free'd (if not NULL) and assigned a new malloc-ed
+ * string.  On failure, `str` is not modified.
+ *
+ * Return 0 on success, -ENOMEM on failure.
+ */
+LTTNG_HIDDEN
+int strutils_append_str(char **str, const char *append);
+
+/*
+ * Like `strutils_append_str`, but the appended string is formatted using
+ * `fmt` and the following arguments.
+ */
+LTTNG_HIDDEN
+int strutils_appendf(char **s, const char *fmt, ...);
+
 #endif /* _STRING_UTILS_H */
This page took 0.025204 seconds and 4 git commands to generate.