diff --git a/apache2/apache2_io.c b/apache2/apache2_io.c index 0b41dea7..33cc913a 100644 --- a/apache2/apache2_io.c +++ b/apache2/apache2_io.c @@ -273,10 +273,13 @@ apr_status_t read_request_body(modsec_rec *msr, char **error_msg) { } else if ((msr->txcfg->is_enabled == MODSEC_ENABLED) && (msr->txcfg->if_limit_action == REQUEST_BODY_LIMIT_ACTION_PARTIAL)) { *error_msg = apr_psprintf(msr->mp, "Request body no files data length is larger than the " "configured limit (%ld).", msr->txcfg->reqbody_no_files_limit); + seen_eos = 1; } else if ((msr->txcfg->is_enabled == MODSEC_DETECTION_ONLY) && (msr->txcfg->if_limit_action == REQUEST_BODY_LIMIT_ACTION_PARTIAL)) { *error_msg = apr_psprintf(msr->mp, "Request body no files data length is larger than the " "configured limit (%ld).", msr->txcfg->reqbody_no_files_limit); + seen_eos = 1; + } else { *error_msg = apr_psprintf(msr->mp, "Request body no files data length is larger than the " "configured limit (%ld).", msr->txcfg->reqbody_no_files_limit); diff --git a/apache2/msc_reqbody.c b/apache2/msc_reqbody.c index e59ce35e..4879b394 100644 --- a/apache2/msc_reqbody.c +++ b/apache2/msc_reqbody.c @@ -361,7 +361,6 @@ apr_status_t modsecurity_request_body_store(modsec_rec *msr, /* Check that we are not over the request body no files limit. */ if (msr->msc_reqbody_no_files_length >= (unsigned long) msr->txcfg->reqbody_no_files_limit) { - if(msr->txcfg->if_limit_action == REQUEST_BODY_LIMIT_ACTION_REJECT) return -5; }