@@ -19,6 +19,35 @@ const char *apache_http_modsecurity_set_remote_server(cmd_parms *cmd,
19
19
return NULL ;
20
20
}
21
21
22
+
23
+ const char * apache_http_modsecurity_set_file_path (cmd_parms * cmd ,
24
+ void * cfg ,
25
+ const char * p )
26
+ {
27
+ apache_http_modsecurity_loc_conf_t * cf = (apache_http_modsecurity_loc_conf_t * ) cfg ;
28
+ if (cf == NULL )
29
+ {
30
+ return "ModSecurity's remote_server processing directive didn't get an instance." ;
31
+ }
32
+
33
+ cf -> rules_set = msc_create_rules_set ();
34
+ cf -> rules_file = NULL ;
35
+ cf -> rules_remote_server = NULL ;
36
+ cf -> rules_remote_key = NULL ;
37
+ cf -> enable = 1 ;
38
+ cf -> id = 0 ;
39
+ fprintf (stderr , "ModSecurity creating a location configurationn\n" );
40
+ char uri [100 ] ;
41
+ strcpy (uri ,p );
42
+ const char * err = NULL ;
43
+ int ret = msc_rules_add_file (cf -> rules_set , uri , & err );
44
+ fprintf (stderr , "Total Rules '%d' \n" ,ret );
45
+ msc_rules_dump (cf -> rules_set );
46
+
47
+ return NULL ;
48
+ }
49
+
50
+
22
51
static void * apache_http_modsecurity_merge_loc_conf (apr_pool_t * pool ,
23
52
void * parent ,
24
53
void * child )
@@ -28,7 +57,7 @@ static void *apache_http_modsecurity_merge_loc_conf(apr_pool_t *pool,
28
57
apache_http_modsecurity_loc_conf_t * c = NULL ;
29
58
apache_http_modsecurity_loc_conf_t * conf = apr_palloc (pool ,
30
59
sizeof (apache_http_modsecurity_loc_conf_t ));
31
-
60
+
32
61
p = parent ;
33
62
c = child ;
34
63
conf = p ;
@@ -121,18 +150,18 @@ void *apache_http_modsecurity_create_loc_conf(apr_pool_t *mp, char *path)
121
150
return NULL ;
122
151
}
123
152
124
- cf -> rules_set = msc_create_rules_set ();
125
- cf -> rules_file = NULL ;
126
- cf -> rules_remote_server = NULL ;
127
- cf -> rules_remote_key = NULL ;
128
- cf -> enable = 1 ;
129
- cf -> id = 0 ;
130
- fprintf (stderr , "ModSecurity creating a location configurationn\n" );
131
- char uri [] = "/opt/ModSecurity/examples/multiprocess_c/basic_rules.conf" ;
132
- const char * err = NULL ;
133
- int ret = msc_rules_add_file (cf -> rules_set , uri , & err );
134
- fprintf (stderr , "Total Rules '%d' \n" ,ret );
135
- msc_rules_dump (cf -> rules_set );
153
+ /* cf->rules_set = msc_create_rules_set();
154
+ cf->rules_file = NULL;
155
+ cf->rules_remote_server = NULL;
156
+ cf->rules_remote_key = NULL;
157
+ cf->enable = 1;
158
+ cf->id = 0;
159
+ fprintf(stderr, "ModSecurity creating a location configurationn\n");
160
+ char uri[] = "/opt/ModSecurity/examples/multiprocess_c/basic_rules.conf";
161
+ const char *err = NULL;
162
+ int ret = msc_rules_add_file(cf->rules_set, uri, &err);
163
+ fprintf(stderr, "Total Rules '%d' \n",ret);
164
+ msc_rules_dump(cf->rules_set);*/
136
165
137
166
return cf ;
138
167
}
@@ -148,25 +177,25 @@ static void register_hooks(apr_pool_t *pool)
148
177
149
178
static void OutputFilter (request_rec * r )
150
179
{
151
- FilterConfig * pConfig = ap_get_module_config (r -> server -> module_config ,
152
- & security3_module );
180
+ FilterConfig * pConfig = ap_get_module_config (r -> server -> module_config ,
181
+ & security3_module );
153
182
154
183
if (!pConfig -> oEnabled )
155
- {
156
- return ;
157
- }
184
+ {
185
+ return ;
186
+ }
158
187
159
188
ap_add_output_filter ("OUT" , NULL , r , r -> connection );
160
189
}
161
190
162
191
static void InputFilter (request_rec * r )
163
192
{
164
- FilterConfig * pConfig = ap_get_module_config (r -> server -> module_config ,
165
- & security3_module );
193
+ FilterConfig * pConfig = ap_get_module_config (r -> server -> module_config ,
194
+ & security3_module );
166
195
if (!pConfig -> iEnabled )
167
- {
168
- return ;
169
- }
196
+ {
197
+ return ;
198
+ }
170
199
171
200
ap_add_input_filter ("IN" , NULL , r , r -> connection );
172
201
}
@@ -175,11 +204,11 @@ static int modsec_handler(request_rec *r)
175
204
{
176
205
177
206
178
- if (!r -> handler || strcmp (r -> handler , "security3_module" ))
207
+ if (!r -> handler || strcmp (r -> handler , "security3_module" ))
179
208
{
180
- return (DECLINED );
181
- }
182
-
209
+ return (DECLINED );
210
+ }
211
+
183
212
ap_rputs ("Welcome to ModSec!<br/>" , r );
184
213
fprintf (stderr , "Welcome to ModSec!\n" );
185
214
return OK ;
@@ -253,9 +282,9 @@ static int input_filter(ap_filter_t *f, apr_bucket_brigade *pbbOut,
253
282
254
283
ret = apr_bucket_read (pbktIn , & data , & len , eBlock );
255
284
if (ret != APR_SUCCESS )
256
- {
257
- return ret ;
258
- }
285
+ {
286
+ return ret ;
287
+ }
259
288
260
289
buf = ap_malloc (len );
261
290
for (n = 0 ; n < len ; ++ n )
0 commit comments