@@ -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
}
@@ -899,8 +893,7 @@ static int var_tx_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
899
893
else {
900
894
if (var -> param_data != NULL ) { /* Regex. */
901
895
char * my_error_msg = NULL ;
902
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
903
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
896
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
904
897
} else { /* Simple comparison. */
905
898
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
906
899
}
@@ -955,8 +948,7 @@ static int var_geo_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
955
948
else {
956
949
if (var -> param_data != NULL ) { /* Regex. */
957
950
char * my_error_msg = NULL ;
958
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
959
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
951
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
960
952
} else { /* Simple comparison. */
961
953
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
962
954
}
@@ -1016,8 +1008,7 @@ static int var_ip_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1016
1008
else {
1017
1009
if (var -> param_data != NULL ) { /* Regex. */
1018
1010
char * my_error_msg = NULL ;
1019
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1020
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1011
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1021
1012
} else { /* Simple comparison. */
1022
1013
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1023
1014
}
@@ -1096,8 +1087,7 @@ static int var_session_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1096
1087
else {
1097
1088
if (var -> param_data != NULL ) { /* Regex. */
1098
1089
char * my_error_msg = NULL ;
1099
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1100
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1090
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1101
1091
} else { /* Simple comparison. */
1102
1092
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1103
1093
}
@@ -1152,8 +1142,7 @@ static int var_user_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1152
1142
else {
1153
1143
if (var -> param_data != NULL ) { /* Regex. */
1154
1144
char * my_error_msg = NULL ;
1155
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1156
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1145
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1157
1146
} else { /* Simple comparison. */
1158
1147
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1159
1148
}
@@ -1212,8 +1201,7 @@ static int var_global_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1212
1201
else {
1213
1202
if (var -> param_data != NULL ) { /* Regex. */
1214
1203
char * my_error_msg = NULL ;
1215
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1216
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1204
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1217
1205
} else { /* Simple comparison. */
1218
1206
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1219
1207
}
@@ -1264,8 +1252,7 @@ static int var_resource_generate(modsec_rec *msr, msre_var *var, msre_rule *rule
1264
1252
else {
1265
1253
if (var -> param_data != NULL ) { /* Regex. */
1266
1254
char * my_error_msg = NULL ;
1267
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
1268
- str -> name_len , & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1255
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , str -> name_len , & my_error_msg ) >= 0 ) match = 1 ;
1269
1256
} else { /* Simple comparison. */
1270
1257
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
1271
1258
}
@@ -1306,38 +1293,21 @@ static int var_files_tmp_contents_generate(modsec_rec *msr, msre_var *var,
1306
1293
if (msr -> mpd == NULL ) return 0 ;
1307
1294
1308
1295
parts = (multipart_part * * )msr -> mpd -> parts -> elts ;
1309
- for (i = 0 ; i < msr -> mpd -> parts -> nelts ; i ++ )
1310
- {
1311
- if ((parts [i ]-> type == MULTIPART_FILE ) &&
1312
- (parts [i ]-> tmp_file_name != NULL ))
1313
- {
1296
+ for (i = 0 ; i < msr -> mpd -> parts -> nelts ; i ++ ) {
1297
+ if ((parts [i ]-> type == MULTIPART_FILE ) && (parts [i ]-> tmp_file_name != NULL )) {
1314
1298
int match = 0 ;
1315
1299
1316
1300
/* Figure out if we want to include this variable. */
1317
- if (var -> param == NULL )
1318
- {
1319
- match = 1 ;
1320
- }
1321
- else
1322
- {
1323
- if (var -> param_data != NULL )
1324
- {
1301
+ if (var -> param == NULL )match = 1 ;
1302
+ else {
1303
+ if (var -> param_data != NULL ) {
1325
1304
/* Regex. */
1326
1305
char * my_error_msg = NULL ;
1327
- if (!(msc_regexec ((msc_regex_t * )var -> param_data ,
1328
- parts [i ]-> name , strlen (parts [i ]-> name ),
1329
- & my_error_msg ) == PCRE_ERROR_NOMATCH ))
1330
- {
1331
- match = 1 ;
1332
- }
1306
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1333
1307
}
1334
- else
1335
- {
1308
+ else {
1336
1309
/* Simple comparison. */
1337
- if (strcasecmp (parts [i ]-> name , var -> param ) == 0 )
1338
- {
1339
- match = 1 ;
1340
- }
1310
+ if (strcasecmp (parts [i ]-> name , var -> param ) == 0 )match = 1 ;
1341
1311
}
1342
1312
}
1343
1313
/* If we had a match add this argument to the collection. */
@@ -1351,10 +1321,7 @@ static int var_files_tmp_contents_generate(modsec_rec *msr, msre_var *var,
1351
1321
msre_var * rvar = NULL ;
1352
1322
1353
1323
file = fopen (parts [i ]-> tmp_file_name , "r" );
1354
- if (file == NULL )
1355
- {
1356
- continue ;
1357
- }
1324
+ if (file == NULL ) continue ;
1358
1325
1359
1326
full_content = (char * )apr_pcalloc (mptmp , (sizeof (char )* parts [i ]-> length ) + 1 );
1360
1327
if (full_content == NULL ) {
@@ -1416,8 +1383,7 @@ static int var_files_tmpnames_generate(modsec_rec *msr, msre_var *var, msre_rule
1416
1383
else {
1417
1384
if (var -> param_data != NULL ) { /* Regex. */
1418
1385
char * my_error_msg = NULL ;
1419
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1420
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1386
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1421
1387
} else { /* Simple comparison. */
1422
1388
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1423
1389
}
@@ -1465,8 +1431,7 @@ static int var_files_generate(modsec_rec *msr, msre_var *var, msre_rule *rule,
1465
1431
else {
1466
1432
if (var -> param_data != NULL ) { /* Regex. */
1467
1433
char * my_error_msg = NULL ;
1468
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1469
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1434
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1470
1435
} else { /* Simple comparison. */
1471
1436
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1472
1437
}
@@ -1514,8 +1479,7 @@ static int var_files_sizes_generate(modsec_rec *msr, msre_var *var, msre_rule *r
1514
1479
else {
1515
1480
if (var -> param_data != NULL ) { /* Regex. */
1516
1481
char * my_error_msg = NULL ;
1517
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1518
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1482
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1519
1483
} else { /* Simple comparison. */
1520
1484
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1521
1485
}
@@ -1632,8 +1596,7 @@ static int var_multipart_part_headers_generate(modsec_rec *msr, msre_var *var, m
1632
1596
else {
1633
1597
if (var -> param_data != NULL ) { /* Regex. */
1634
1598
char * my_error_msg = NULL ;
1635
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name ,
1636
- strlen (parts [i ]-> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
1599
+ if (msc_regexec ((msc_regex_t * )var -> param_data , parts [i ]-> name , strlen (parts [i ]-> name ), & my_error_msg ) >= 0 ) match = 1 ;
1637
1600
} else { /* Simple comparison. */
1638
1601
if (strcasecmp (parts [i ]-> name , var -> param ) == 0 ) match = 1 ;
1639
1602
}
@@ -2105,8 +2068,7 @@ static int var_perf_rules_generate(modsec_rec *msr, msre_var *var, msre_rule *ru
2105
2068
else {
2106
2069
if (var -> param_data != NULL ) { /* Regex. */
2107
2070
char * my_error_msg = NULL ;
2108
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2109
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2071
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2110
2072
} else { /* Simple comparison. */
2111
2073
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2112
2074
}
@@ -2591,8 +2553,7 @@ static int var_matched_vars_names_generate(modsec_rec *msr, msre_var *var, msre_
2591
2553
else {
2592
2554
if (var -> param_data != NULL ) { /* Regex. */
2593
2555
char * my_error_msg = NULL ;
2594
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
2595
- strlen (str -> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2556
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , strlen (str -> name ), & my_error_msg ) >= 0 ) match = 1 ;
2596
2557
} else { /* Simple comparison. */
2597
2558
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
2598
2559
}
@@ -2660,8 +2621,7 @@ static int var_matched_vars_generate(modsec_rec *msr, msre_var *var, msre_rule *
2660
2621
else {
2661
2622
if (var -> param_data != NULL ) { /* Regex. */
2662
2623
char * my_error_msg = NULL ;
2663
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , str -> name ,
2664
- strlen (str -> name ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2624
+ if (msc_regexec ((msc_regex_t * )var -> param_data , str -> name , strlen (str -> name ), & my_error_msg ) >= 0 ) match = 1 ;
2665
2625
} else { /* Simple comparison. */
2666
2626
if (strcasecmp (str -> name , var -> param ) == 0 ) match = 1 ;
2667
2627
}
@@ -2728,8 +2688,7 @@ static int var_request_cookies_generate(modsec_rec *msr, msre_var *var, msre_rul
2728
2688
else {
2729
2689
if (var -> param_data != NULL ) { /* Regex. */
2730
2690
char * my_error_msg = NULL ;
2731
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2732
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2691
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2733
2692
} else { /* Simple comparison. */
2734
2693
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2735
2694
}
@@ -2783,8 +2742,7 @@ static int var_request_cookies_names_generate(modsec_rec *msr, msre_var *var, ms
2783
2742
else {
2784
2743
if (var -> param_data != NULL ) { /* Regex. */
2785
2744
char * my_error_msg = NULL ;
2786
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2787
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2745
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2788
2746
} else { /* Simple comparison. */
2789
2747
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2790
2748
}
@@ -2838,8 +2796,7 @@ static int var_request_headers_generate(modsec_rec *msr, msre_var *var, msre_rul
2838
2796
else {
2839
2797
if (var -> param_data != NULL ) { /* Regex. */
2840
2798
char * my_error_msg = NULL ;
2841
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2842
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2799
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2843
2800
} else { /* Simple comparison. */
2844
2801
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2845
2802
}
@@ -2893,8 +2850,7 @@ static int var_request_headers_names_generate(modsec_rec *msr, msre_var *var, ms
2893
2850
else {
2894
2851
if (var -> param_data != NULL ) { /* Regex. */
2895
2852
char * my_error_msg = NULL ;
2896
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
2897
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
2853
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
2898
2854
} else { /* Simple comparison. */
2899
2855
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
2900
2856
}
@@ -3171,8 +3127,7 @@ static int var_response_headers_generate(modsec_rec *msr, msre_var *var, msre_ru
3171
3127
else {
3172
3128
if (var -> param_data != NULL ) { /* Regex. */
3173
3129
char * my_error_msg = NULL ;
3174
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
3175
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
3130
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
3176
3131
} else { /* Simple comparison. */
3177
3132
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
3178
3133
}
@@ -3226,8 +3181,7 @@ static int var_response_headers_names_generate(modsec_rec *msr, msre_var *var, m
3226
3181
else {
3227
3182
if (var -> param_data != NULL ) { /* Regex. */
3228
3183
char * my_error_msg = NULL ;
3229
- if (!(msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key ,
3230
- strlen (te [i ].key ), & my_error_msg ) == PCRE_ERROR_NOMATCH )) match = 1 ;
3184
+ if (msc_regexec ((msc_regex_t * )var -> param_data , te [i ].key , strlen (te [i ].key ), & my_error_msg ) >= 0 ) match = 1 ;
3231
3185
} else { /* Simple comparison. */
3232
3186
if (strcasecmp (te [i ].key , var -> param ) == 0 ) match = 1 ;
3233
3187
}
0 commit comments