@@ -85,10 +85,10 @@ ngx_http_bot_verifier_module_handler(ngx_http_request_t *r)
85
85
ret = ngx_http_bot_verifier_module_verify_bot (r , loc_conf , address );
86
86
if (ret == NGX_OK ) {
87
87
ngx_log_error (NGX_LOG_ERR , r -> connection -> log , 0 , "Verification successful, allowing request" );
88
- persist_verification_status (loc_conf -> redis . connection , address , ret , loc_conf -> redis . expiry );
88
+ persist_verification_status (loc_conf , address , ret );
89
89
} else if (ret == NGX_DECLINED ) {
90
90
ngx_log_error (NGX_LOG_ERR , r -> connection -> log , 0 , "Verification failed, blocking request" );
91
- persist_verification_status (loc_conf -> redis . connection , address , ret , loc_conf -> redis . expiry );
91
+ persist_verification_status (loc_conf , address , ret );
92
92
return NGX_HTTP_FORBIDDEN ;
93
93
}
94
94
}
@@ -118,47 +118,55 @@ static ngx_command_t
118
118
ngx_http_bot_verifier_module_commands [] = {
119
119
{
120
120
ngx_string ("bot_verifier" ),
121
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
121
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
122
122
ngx_conf_set_flag_slot ,
123
123
NGX_HTTP_LOC_CONF_OFFSET ,
124
124
offsetof(ngx_http_bot_verifier_module_loc_conf_t , enabled ),
125
125
NULL
126
126
},
127
+ {
128
+ ngx_string ("bot_verifier_enable_repsheet" ),
129
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
130
+ ngx_conf_set_flag_slot ,
131
+ NGX_HTTP_LOC_CONF_OFFSET ,
132
+ offsetof(ngx_http_bot_verifier_module_loc_conf_t , repsheet_enabled ),
133
+ NULL
134
+ },
127
135
{
128
136
ngx_string ("bot_verifier_redis_host" ),
129
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
137
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
130
138
ngx_conf_set_str_slot ,
131
139
NGX_HTTP_LOC_CONF_OFFSET ,
132
140
offsetof(ngx_http_bot_verifier_module_loc_conf_t , redis .host ),
133
141
NULL
134
142
},
135
143
{
136
144
ngx_string ("bot_verifier_redis_port" ),
137
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
145
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
138
146
ngx_conf_set_num_slot ,
139
147
NGX_HTTP_LOC_CONF_OFFSET ,
140
148
offsetof(ngx_http_bot_verifier_module_loc_conf_t , redis .port ),
141
149
NULL
142
150
},
143
151
{
144
152
ngx_string ("bot_verifier_redis_connection_timeout" ),
145
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
153
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
146
154
ngx_conf_set_num_slot ,
147
155
NGX_HTTP_LOC_CONF_OFFSET ,
148
156
offsetof(ngx_http_bot_verifier_module_loc_conf_t , redis .connection_timeout ),
149
157
NULL
150
158
},
151
159
{
152
160
ngx_string ("bot_verifier_redis_read_timeout" ),
153
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
161
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
154
162
ngx_conf_set_num_slot ,
155
163
NGX_HTTP_LOC_CONF_OFFSET ,
156
164
offsetof(ngx_http_bot_verifier_module_loc_conf_t , redis .read_timeout ),
157
165
NULL
158
166
},
159
167
{
160
168
ngx_string ("bot_verifier_redis_expiry" ),
161
- NGX_HTTP_MAIN_CONF |NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
169
+ NGX_HTTP_MAIN_CONF |NGX_HTTP_SRV_CONF | NGX_HTTP_LOC_CONF |NGX_CONF_TAKE1 ,
162
170
ngx_conf_set_num_slot ,
163
171
NGX_HTTP_LOC_CONF_OFFSET ,
164
172
offsetof(ngx_http_bot_verifier_module_loc_conf_t , redis .expiry ),
@@ -178,6 +186,7 @@ ngx_http_bot_verifier_module_create_loc_conf(ngx_conf_t *cf)
178
186
}
179
187
180
188
conf -> enabled = NGX_CONF_UNSET ;
189
+ conf -> repsheet_enabled = NGX_CONF_UNSET ;
181
190
conf -> redis .port = NGX_CONF_UNSET_UINT ;
182
191
conf -> redis .connection_timeout = NGX_CONF_UNSET_UINT ;
183
192
conf -> redis .read_timeout = NGX_CONF_UNSET_UINT ;
@@ -231,6 +240,7 @@ ngx_http_bot_verifier_module_merge_loc_conf(ngx_conf_t *cf, void *parent, void *
231
240
ngx_http_bot_verifier_module_loc_conf_t * conf = (ngx_http_bot_verifier_module_loc_conf_t * ) child ;
232
241
233
242
ngx_conf_merge_value (conf -> enabled , prev -> enabled , 0 );
243
+ ngx_conf_merge_value (conf -> repsheet_enabled , prev -> repsheet_enabled , 0 );
234
244
ngx_conf_merge_uint_value (conf -> redis .port , prev -> redis .port , 6379 );
235
245
ngx_conf_merge_uint_value (conf -> redis .connection_timeout , prev -> redis .connection_timeout , 10 );
236
246
ngx_conf_merge_uint_value (conf -> redis .read_timeout , prev -> redis .read_timeout , 10 );
0 commit comments