X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fbasic%2Fstrv.c;h=7401c29081b5d98c9ce2bb002ea5ded2821bc360;hb=eaca07ccfdf5d7dabc50afc7e539c2413dd69d3e;hp=d4a1b80d073c4a3fac5e8c83359ee9a7dbe171b6;hpb=d2338db3145922b1dfcb3b458e5bce2568a9347a;p=elogind.git
diff --git a/src/basic/strv.c b/src/basic/strv.c
index d4a1b80d0..7401c2908 100644
--- a/src/basic/strv.c
+++ b/src/basic/strv.c
@@ -19,13 +19,16 @@
along with systemd; If not, see .
***/
-#include
+#include
#include
+#include
#include
-#include
-#include "util.h"
+#include "alloc-util.h"
+#include "escape.h"
+#include "string-util.h"
#include "strv.h"
+#include "util.h"
char *strv_find(char **l, const char *name) {
char **i;
@@ -86,6 +89,15 @@ char **strv_free(char **l) {
return NULL;
}
+char **strv_free_erase(char **l) {
+ char **i;
+
+ STRV_FOREACH(i, l)
+ string_erase(*i);
+
+ return strv_free(l);
+}
+
char **strv_copy(char * const *l) {
char **r, **k;
@@ -664,6 +676,8 @@ char **strv_split_nulstr(const char *s) {
return r;
}
+/// UNNEEDED by elogind
+#if 0
int strv_make_nulstr(char **l, char **p, size_t *q) {
size_t n_allocated = 0, n = 0;
_cleanup_free_ char *m = NULL;
@@ -699,8 +713,6 @@ int strv_make_nulstr(char **l, char **p, size_t *q) {
return 0;
}
-/// UNNEEDED by elogind
-#if 0
bool strv_overlap(char **a, char **b) {
char **i;
@@ -710,6 +722,7 @@ bool strv_overlap(char **a, char **b) {
return false;
}
+#endif // 0
static int str_compare(const void *_a, const void *_b) {
const char **a = (const char**) _a, **b = (const char**) _b;
@@ -726,6 +739,8 @@ char **strv_sort(char **l) {
return l;
}
+/// UNNEEDED by elogind
+#if 0
bool strv_equal(char **a, char **b) {
if (strv_isempty(a))
@@ -800,7 +815,6 @@ char **strv_shell_escape(char **l, const char *bad) {
return l;
}
-#endif // 0
bool strv_fnmatch(char* const* patterns, const char *s, int flags) {
char* const* p;
@@ -874,3 +888,4 @@ rollback:
nl[k] = NULL;
return -ENOMEM;
}
+#endif // 0