@@ -120,8 +120,7 @@ static int var_args_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
120
120
if (var -> param_data != NULL ) { /* Regex. */
121
121
char * my_error_msg = NULL ;
122
122
/* Run the regex against the argument name. */
123
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
124
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
123
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
125
124
} else { /* Simple comparison. */
126
125
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
127
126
}
@@ -198,8 +197,7 @@ static int var_args_names_generate(modsec_rec *msr, msre_var *var, msre_rule *ru
198
197
else {
199
198
if (var -> param_data != NULL ) { /* Regex. */
200
199
char * my_error_msg = NULL ;
201
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
202
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
200
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
203
201
} else { /* Simple comparison. */
204
202
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
205
203
}
@@ -250,8 +248,7 @@ static int var_args_get_generate(modsec_rec *msr, msre_var *var, msre_rule *rule
250
248
if (var -> param_data != NULL ) { /* Regex. */
251
249
char * my_error_msg = NULL ;
252
250
/* Run the regex against the argument name. */
253
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
254
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
251
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
255
252
} else { /* Simple comparison. */
256
253
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
257
254
}
@@ -300,8 +297,7 @@ static int var_args_get_names_generate(modsec_rec *msr, msre_var *var, msre_rule
300
297
else {
301
298
if (var -> param_data != NULL ) { /* Regex. */
302
299
char * my_error_msg = NULL ;
303
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
304
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
300
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
305
301
} else { /* Simple comparison. */
306
302
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
307
303
}
@@ -352,8 +348,7 @@ static int var_args_post_generate(modsec_rec *msr, msre_var *var, msre_rule *rul
352
348
if (var -> param_data != NULL ) { /* Regex. */
353
349
char * my_error_msg = NULL ;
354
350
/* Run the regex against the argument name. */
355
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
356
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
351
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
357
352
} else { /* Simple comparison. */
358
353
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
359
354
}
@@ -402,8 +397,7 @@ static int var_args_post_names_generate(modsec_rec *msr, msre_var *var, msre_rul
402
397
else {
403
398
if (var -> param_data != NULL ) { /* Regex. */
404
399
char * my_error_msg = NULL ;
405
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , arg -> name ,
406
- arg -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
400
+ if (msc_regexec ((msc_regex_t * )var -> param_data , arg -> name , arg -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
407
401
} else { /* Simple comparison. */
408
402
if (strcasecmp (arg -> name , var -> param ) == 0 ) match = 1 ;
409
403
}
@@ -901,8 +895,7 @@ static int var_tx_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
901
895
else {
902
896
if (var -> param_data != NULL ) { /* Regex. */
903
897
char * my_error_msg = NULL ;
904
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
905
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
898
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
906
899
} else { /* Simple comparison. */
907
900
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
908
901
}
@@ -957,8 +950,7 @@ static int var_geo_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
957
950
else {
958
951
if (var -> param_data != NULL ) { /* Regex. */
959
952
char * my_error_msg = NULL ;
960
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
961
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
953
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
962
954
} else { /* Simple comparison. */
963
955
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
964
956
}
@@ -1018,8 +1010,7 @@ static int var_ip_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1018
1010
else {
1019
1011
if (var -> param_data != NULL ) { /* Regex. */
1020
1012
char * my_error_msg = NULL ;
1021
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1022
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1013
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1023
1014
} else { /* Simple comparison. */
1024
1015
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1025
1016
}
@@ -1098,8 +1089,7 @@ static int var_session_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1098
1089
else {
1099
1090
if (var -> param_data != NULL ) { /* Regex. */
1100
1091
char * my_error_msg = NULL ;
1101
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1102
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1092
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1103
1093
} else { /* Simple comparison. */
1104
1094
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1105
1095
}
@@ -1154,8 +1144,7 @@ static int var_user_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1154
1144
else {
1155
1145
if (var -> param_data != NULL ) { /* Regex. */
1156
1146
char * my_error_msg = NULL ;
1157
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1158
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1147
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1159
1148
} else { /* Simple comparison. */
1160
1149
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1161
1150
}
@@ -1214,8 +1203,7 @@ static int var_global_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1214
1203
else {
1215
1204
if (var -> param_data != NULL ) { /* Regex. */
1216
1205
char * my_error_msg = NULL ;
1217
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1218
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1206
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1219
1207
} else { /* Simple comparison. */
1220
1208
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1221
1209
}
@@ -1266,8 +1254,7 @@ static int var_resource_generate(modsec_rec *msr, msre_var *var, msre_rule *rule
1266
1254
else {
1267
1255
if (var -> param_data != NULL ) { /* Regex. */
1268
1256
char * my_error_msg = NULL ;
1269
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1270
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1257
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1271
1258
} else { /* Simple comparison. */
1272
1259
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1273
1260
}
@@ -1308,38 +1295,21 @@ static int var_files_tmp_contents_generate(modsec_rec *msr, msre_var *var,
1308
1295
if (msr -> mpd == NULL ) return 0 ;
1309
1296
1310
1297
parts = (multipart_part * * )msr -> mpd -> parts -> elts ;
1311
- for (i = 0 ; i < msr -> mpd -> parts -> nelts ; i ++ )
1312
- {
1313
- if ((parts [i ]-> type == MULTIPART_FILE ) &&
1314
- (parts [i ]-> tmp_file_name != NULL ))
1315
- {
1298
+ for (i = 0 ; i < msr -> mpd -> parts -> nelts ; i ++ ) {
1299
+ if ((parts [i ]-> type == MULTIPART_FILE ) && (parts [i ]-> tmp_file_name != NULL )) {
1316
1300
int match = 0 ;
1317
1301
1318
1302
/* Figure out if we want to include this variable. */
1319
- if (var -> param == NULL )
1320
- {
1321
- match = 1 ;
1322
- }
1323
- else
1324
- {
1325
- if (var -> param_data != NULL )
1326
- {
1303
+ if (var -> param == NULL )match = 1 ;
1304
+ else {
1305
+ if (var -> param_data != NULL ) {
1327
1306
/* Regex. */
1328
1307
char * my_error_msg = NULL ;
1329
- if (!(msc_regexec ((msc_regex_t * )var -> param_data ,
1330
- parts [i ]-> name , strlen (parts [i ]-> name ),
1331
- & my_error_msg ) == PCRE_ERROR_NOMATCH ))
1332
- {
1333
- match = 1 ;
1334
- }
1308
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1335
1309
}
1336
- else
1337
- {
1310
+ else {
1338
1311
/* Simple comparison. */
1339
- if (strcasecmp (parts [i ]-> name , var -> param ) == 0 )
1340
- {
1341
- match = 1 ;
1342
- }
1312
+ if (strcasecmp (parts [i ]-> name , var -> param ) == 0 )match = 1 ;
1343
1313
}
1344
1314
}
1345
1315
/* If we had a match add this argument to the collection. */
@@ -1353,10 +1323,7 @@ static int var_files_tmp_contents_generate(modsec_rec *msr, msre_var *var,
1353
1323
msre_var * rvar = NULL ;
1354
1324
1355
1325
file = fopen (parts [i ]-> tmp_file_name , "r" );
1356
- if (file == NULL )
1357
- {
1358
- continue ;
1359
- }
1326
+ if (file == NULL ) continue ;
1360
1327
1361
1328
full_content = (char * )apr_pcalloc (mptmp , (sizeof (char )* parts [i ]-> length ) + 1 );
1362
1329
if (full_content == NULL ) {
@@ -1418,8 +1385,7 @@ static int var_files_tmpnames_generate(modsec_rec *msr, msre_var *var, msre_rule
1418
1385
else {
1419
1386
if (var -> param_data != NULL ) { /* Regex. */
1420
1387
char * my_error_msg = NULL ;
1421
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1422
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1388
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1423
1389
} else { /* Simple comparison. */
1424
1390
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1425
1391
}
@@ -1467,8 +1433,7 @@ static int var_files_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1467
1433
else {
1468
1434
if (var -> param_data != NULL ) { /* Regex. */
1469
1435
char * my_error_msg = NULL ;
1470
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1471
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1436
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1472
1437
} else { /* Simple comparison. */
1473
1438
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1474
1439
}
@@ -1516,8 +1481,7 @@ static int var_files_sizes_generate(modsec_rec *msr, msre_var *var, msre_rule *r
1516
1481
else {
1517
1482
if (var -> param_data != NULL ) { /* Regex. */
1518
1483
char * my_error_msg = NULL ;
1519
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1520
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1484
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1521
1485
} else { /* Simple comparison. */
1522
1486
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1523
1487
}
@@ -1634,8 +1598,7 @@ static int var_multipart_part_headers_generate(modsec_rec *msr, msre_var *var, m
1634
1598
else {
1635
1599
if (var -> param_data != NULL ) { /* Regex. */
1636
1600
char * my_error_msg = NULL ;
1637
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1638
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1601
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1639
1602
} else { /* Simple comparison. */
1640
1603
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1641
1604
}
@@ -2107,8 +2070,7 @@ static int var_perf_rules_generate(modsec_rec *msr, msre_var *var, msre_rule *ru
2107
2070
else {
2108
2071
if (var -> param_data != NULL ) { /* Regex. */
2109
2072
char * my_error_msg = NULL ;
2110
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2111
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2073
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2112
2074
} else { /* Simple comparison. */
2113
2075
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2114
2076
}
@@ -2593,8 +2555,7 @@ static int var_matched_vars_names_generate(modsec_rec *msr, msre_var *var, msre_
2593
2555
else {
2594
2556
if (var -> param_data != NULL ) { /* Regex. */
2595
2557
char * my_error_msg = NULL ;
2596
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
2597
- strlen (str -> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2558
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , strlen (str -> name ), & my_error_msg ) >= 0 ) match = 1 ;
2598
2559
} else { /* Simple comparison. */
2599
2560
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
2600
2561
}
@@ -2662,8 +2623,7 @@ static int var_matched_vars_generate(modsec_rec *msr, msre_var *var, msre_rule *
2662
2623
else {
2663
2624
if (var -> param_data != NULL ) { /* Regex. */
2664
2625
char * my_error_msg = NULL ;
2665
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
2666
- strlen (str -> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2626
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , strlen (str -> name ), & my_error_msg ) >= 0 ) match = 1 ;
2667
2627
} else { /* Simple comparison. */
2668
2628
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
2669
2629
}
@@ -2730,8 +2690,7 @@ static int var_request_cookies_generate(modsec_rec *msr, msre_var *var, msre_rul
2730
2690
else {
2731
2691
if (var -> param_data != NULL ) { /* Regex. */
2732
2692
char * my_error_msg = NULL ;
2733
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2734
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2693
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2735
2694
} else { /* Simple comparison. */
2736
2695
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2737
2696
}
@@ -2785,8 +2744,7 @@ static int var_request_cookies_names_generate(modsec_rec *msr, msre_var *var, ms
2785
2744
else {
2786
2745
if (var -> param_data != NULL ) { /* Regex. */
2787
2746
char * my_error_msg = NULL ;
2788
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2789
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2747
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2790
2748
} else { /* Simple comparison. */
2791
2749
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2792
2750
}
@@ -2840,8 +2798,7 @@ static int var_request_headers_generate(modsec_rec *msr, msre_var *var, msre_rul
2840
2798
else {
2841
2799
if (var -> param_data != NULL ) { /* Regex. */
2842
2800
char * my_error_msg = NULL ;
2843
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2844
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2801
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2845
2802
} else { /* Simple comparison. */
2846
2803
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2847
2804
}
@@ -2895,8 +2852,7 @@ static int var_request_headers_names_generate(modsec_rec *msr, msre_var *var, ms
2895
2852
else {
2896
2853
if (var -> param_data != NULL ) { /* Regex. */
2897
2854
char * my_error_msg = NULL ;
2898
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2899
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2855
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2900
2856
} else { /* Simple comparison. */
2901
2857
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2902
2858
}
@@ -3173,8 +3129,7 @@ static int var_response_headers_generate(modsec_rec *msr, msre_var *var, msre_ru
3173
3129
else {
3174
3130
if (var -> param_data != NULL ) { /* Regex. */
3175
3131
char * my_error_msg = NULL ;
3176
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
3177
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
3132
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
3178
3133
} else { /* Simple comparison. */
3179
3134
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
3180
3135
}
@@ -3228,8 +3183,7 @@ static int var_response_headers_names_generate(modsec_rec *msr, msre_var *var, m
3228
3183
else {
3229
3184
if (var -> param_data != NULL ) { /* Regex. */
3230
3185
char * my_error_msg = NULL ;
3231
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
3232
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
3186
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
3233
3187
} else { /* Simple comparison. */
3234
3188
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
3235
3189
}
0 commit comments