diff options
| author | jvoisin | 2018-01-10 14:56:33 +0100 |
|---|---|---|
| committer | GitHub | 2018-01-10 14:56:33 +0100 |
| commit | ad6b3e723fe26bf1a3a573aed776960916d35499 (patch) | |
| tree | eec9e15028f4529d776489d273bf9699333aa987 /src/sp_config_keywords.c | |
| parent | b6e5bc4557cca3abbcfd179e7143ea54b9844e49 (diff) | |
Eval whitelist
Implement whitelist in eval
Diffstat (limited to 'src/sp_config_keywords.c')
| -rw-r--r-- | src/sp_config_keywords.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/sp_config_keywords.c b/src/sp_config_keywords.c index 85e04ab..c5cc950 100644 --- a/src/sp_config_keywords.c +++ b/src/sp_config_keywords.c | |||
| @@ -102,11 +102,11 @@ int parse_global(char *line) { | |||
| 102 | return parse_keywords(sp_config_funcs_global, line); | 102 | return parse_keywords(sp_config_funcs_global, line); |
| 103 | } | 103 | } |
| 104 | 104 | ||
| 105 | int parse_eval_filter(char *line) { | 105 | static int parse_eval_filter_conf(char *line, sp_list_node *list) { |
| 106 | char *token; | 106 | char *token; |
| 107 | char *rest; | 107 | char *rest; |
| 108 | sp_config_functions sp_config_funcs[] = { | 108 | sp_config_functions sp_config_funcs[] = { |
| 109 | {parse_str, SP_TOKEN_EVAL_BLACKLIST, &rest}, | 109 | {parse_str, SP_TOKEN_EVAL_LIST, &rest}, |
| 110 | {parse_empty, SP_TOKEN_SIMULATION, | 110 | {parse_empty, SP_TOKEN_SIMULATION, |
| 111 | &(SNUFFLEUPAGUS_G(config).config_eval->simulation)}, | 111 | &(SNUFFLEUPAGUS_G(config).config_eval->simulation)}, |
| 112 | {0}}; | 112 | {0}}; |
| @@ -116,11 +116,21 @@ int parse_eval_filter(char *line) { | |||
| 116 | } | 116 | } |
| 117 | 117 | ||
| 118 | while ((token = strtok_r(rest, ",", &rest))) { | 118 | while ((token = strtok_r(rest, ",", &rest))) { |
| 119 | sp_list_insert(SNUFFLEUPAGUS_G(config).config_eval->blacklist, token); | 119 | sp_list_insert(list, token); |
| 120 | } | 120 | } |
| 121 | return SUCCESS; | 121 | return SUCCESS; |
| 122 | } | 122 | } |
| 123 | 123 | ||
| 124 | int parse_eval_blacklist(char *line) { | ||
| 125 | return parse_eval_filter_conf(line, | ||
| 126 | SNUFFLEUPAGUS_G(config).config_eval->blacklist); | ||
| 127 | } | ||
| 128 | |||
| 129 | int parse_eval_whitelist(char *line) { | ||
| 130 | return parse_eval_filter_conf(line, | ||
| 131 | SNUFFLEUPAGUS_G(config).config_eval->whitelist); | ||
| 132 | } | ||
| 133 | |||
| 124 | int parse_cookie(char *line) { | 134 | int parse_cookie(char *line) { |
| 125 | int ret = 0; | 135 | int ret = 0; |
| 126 | char *samesite = NULL; | 136 | char *samesite = NULL; |
