diff options
author | Steffan Karger | 2017-12-08 13:07:47 +0100 |
---|---|---|
committer | Gert Doering | 2018-03-08 16:54:22 +0100 |
commit | 68b97b25e4c479156d697bf3df90a4b68fbbbcea (patch) | |
tree | bb454751e02c2ead5f6f64819e5e63c906f6af98 /src/openvpn/misc.h | |
parent | b00d56e1b0cf4d71dc4944ef14ea7eca2fc8c519 (diff) | |
download | openvpn-68b97b25e4c479156d697bf3df90a4b68fbbbcea.zip openvpn-68b97b25e4c479156d697bf3df90a4b68fbbbcea.tar.gz |
Move env helper functions into their own module/file
To avoid a dependency on misc.c - which is a dependency mess - in the
tls-crypt unit tests, split the env_set functionality out into it's own
file.
Signed-off-by: Antonio Quartulli <antonio@openvpn.net>
Signed-off-by: Steffan Karger <steffan.karger@fox-it.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <1512734870-17133-8-git-send-email-steffan.karger@fox-it.com>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg16066.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
Diffstat (limited to 'src/openvpn/misc.h')
-rw-r--r-- | src/openvpn/misc.h | 73 |
1 files changed, 1 insertions, 72 deletions
diff --git a/src/openvpn/misc.h b/src/openvpn/misc.h index dad6a5d..5680c27 100644 --- a/src/openvpn/misc.h +++ b/src/openvpn/misc.h @@ -27,6 +27,7 @@ #include "argv.h" #include "basic.h" #include "common.h" +#include "env_set.h" #include "integer.h" #include "buffer.h" #include "platform.h" @@ -37,20 +38,6 @@ /* forward declarations */ struct plugin_list; -/* - * Handle environmental variable lists - */ - -struct env_item { - char *string; - struct env_item *next; -}; - -struct env_set { - struct gc_arena *gc; - struct env_item *list; -}; - /* system flags */ #define S_SCRIPT (1<<0) #define S_FATAL (1<<1) @@ -83,61 +70,8 @@ void set_std_files_to_null(bool stdin_only); extern int inetd_socket_descriptor; void save_inetd_socket_descriptor(void); -/* set/delete environmental variable */ -void setenv_str_ex(struct env_set *es, - const char *name, - const char *value, - const unsigned int name_include, - const unsigned int name_exclude, - const char name_replace, - const unsigned int value_include, - const unsigned int value_exclude, - const char value_replace); - -void setenv_counter(struct env_set *es, const char *name, counter_type value); - -void setenv_int(struct env_set *es, const char *name, int value); - -void setenv_long_long(struct env_set *es, const char *name, long long value); - -void setenv_str(struct env_set *es, const char *name, const char *value); - -void setenv_str_safe(struct env_set *es, const char *name, const char *value); - -void setenv_del(struct env_set *es, const char *name); - -/** - * Store the supplied name value pair in the env_set. If the variable with the - * supplied name already exists, append _N to the name, starting at N=1. - */ -void setenv_str_incr(struct env_set *es, const char *name, const char *value); - -void setenv_int_i(struct env_set *es, const char *name, const int value, const int i); - -void setenv_str_i(struct env_set *es, const char *name, const char *value, const int i); - -/* struct env_set functions */ - -struct env_set *env_set_create(struct gc_arena *gc); - -void env_set_destroy(struct env_set *es); - -bool env_set_del(struct env_set *es, const char *str); - -void env_set_add(struct env_set *es, const char *str); - -const char *env_set_get(const struct env_set *es, const char *name); - -void env_set_print(int msglevel, const struct env_set *es); - -void env_set_inherit(struct env_set *es, const struct env_set *src); - /* Make arrays of strings */ -const char **make_env_array(const struct env_set *es, - const bool check_allowed, - struct gc_arena *gc); - const char **make_arg_array(const char *first, const char *parms, struct gc_arena *gc); const char **make_extended_arg_array(char **p, struct gc_arena *gc); @@ -259,11 +193,6 @@ void set_auth_token(struct user_pass *up, const char *token); */ const char *safe_print(const char *str, struct gc_arena *gc); -/* returns true if environmental variable safe to print to log */ -bool env_safe_to_print(const char *str); - -/* returns true if environmental variable may be passed to an external program */ -bool env_allowed(const char *str); void configure_path(void); |