Tor  0.4.3.0-alpha-dev
env.h
Go to the documentation of this file.
1 /* Copyright (c) 2003-2004, Roger Dingledine
2  * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
3  * Copyright (c) 2007-2020, The Tor Project, Inc. */
4 /* See LICENSE for licensing information */
5 
6 /**
7  * \file env.h
8  * \brief Header for env.c
9  **/
10 
11 #ifndef TOR_ENV_H
12 #define TOR_ENV_H
13 
14 char **get_environment(void);
15 
16 struct smartlist_t;
17 
18 int environment_variable_names_equal(const char *s1, const char *s2);
19 
20 /* DOCDOC process_environment_t */
21 typedef struct process_environment_t {
22  /** A pointer to a sorted empty-string-terminated sequence of
23  * NUL-terminated strings of the form "NAME=VALUE". */
25  /** A pointer to a NULL-terminated array of pointers to
26  * NUL-terminated strings of the form "NAME=VALUE". */
29 
32 #define process_environment_free(env) \
33  FREE_AND_NULL(process_environment_t, process_environment_free_, (env))
34 
36 
38  const char *new_var,
39  void (*free_old)(void*),
40  int free_p);
41 #endif /* !defined(TOR_ENV_H) */
char * windows_environment_block
Definition: env.h:24
char ** unixoid_environment_block
Definition: env.h:27
int environment_variable_names_equal(const char *s1, const char *s2)
Definition: env.c:70
void set_environment_variable_in_smartlist(struct smartlist_t *env_vars, const char *new_var, void(*free_old)(void *), int free_p)
Definition: env.c:206
char ** get_environment(void)
Definition: env.c:42
process_environment_t * process_environment_make(struct smartlist_t *env_vars)
Definition: env.c:101
void process_environment_free_(process_environment_t *env)
Definition: env.c:82
struct smartlist_t * get_current_process_environment_variables(void)
Definition: env.c:189