X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fenv-util.h;h=fb3a52b707028a49be3c19239f006fd2e3e37d45;hb=086821244b5113f00a0ef993b78dc56aae2a8f6c;hp=9449576b5c82ed9f1b69976d90162c91d2a299b0;hpb=123b964a537c21e9ebaf849acefb23f0f13db785;p=elogind.git diff --git a/src/shared/env-util.h b/src/shared/env-util.h index 9449576b5..fb3a52b70 100644 --- a/src/shared/env-util.h +++ b/src/shared/env-util.h @@ -29,7 +29,8 @@ bool env_value_is_valid(const char *e); bool env_assignment_is_valid(const char *e); bool strv_env_is_valid(char **e); -char **strv_env_clean(char **l); +#define strv_env_clean(l) strv_env_clean_with_callback(l, NULL, NULL) +char **strv_env_clean_with_callback(char **l, void (*invalid_callback)(const char *p, void *userdata), void *userdata); bool strv_env_name_or_assignment_is_valid(char **l); @@ -38,6 +39,7 @@ char **strv_env_delete(char **x, unsigned n_lists, ...); /* New copy */ char **strv_env_set(char **x, const char *p); /* New copy ... */ char **strv_env_unset(char **l, const char *p); /* In place ... */ +char **strv_env_unset_many(char **l, ...) _sentinel_; -char *strv_env_get_n(char **l, const char *name, size_t k); -char *strv_env_get(char **x, const char *n); +char *strv_env_get_n(char **l, const char *name, size_t k) _pure_; +char *strv_env_get(char **x, const char *n) _pure_;