mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2025-08-14 13:56:01 +03:00
Fixed crash with invalid commands and marked IIS server as non-virtual, so many commands would work (like SecDataDir).
This commit is contained in:
parent
f14eaeb3d0
commit
74b8daaadd
@ -752,8 +752,8 @@ CMyHttpModule::OnBeginRequest(
|
||||
|
||||
pConfig->m_dwLastCheck = ctime;
|
||||
|
||||
if(ret == 0 || pConfig->m_LastChange.dwLowDateTime != fdata.ftLastWriteTime.dwLowDateTime ||
|
||||
pConfig->m_LastChange.dwHighDateTime != fdata.ftLastWriteTime.dwHighDateTime)
|
||||
if(pConfig->m_Config == NULL || (ret != 0 && (pConfig->m_LastChange.dwLowDateTime != fdata.ftLastWriteTime.dwLowDateTime ||
|
||||
pConfig->m_LastChange.dwHighDateTime != fdata.ftLastWriteTime.dwHighDateTime)))
|
||||
{
|
||||
pConfig->m_LastChange.dwLowDateTime = fdata.ftLastWriteTime.dwLowDateTime;
|
||||
pConfig->m_LastChange.dwHighDateTime = fdata.ftLastWriteTime.dwHighDateTime;
|
||||
@ -769,9 +769,9 @@ CMyHttpModule::OnBeginRequest(
|
||||
WriteEventViewerLog(err, EVENTLOG_ERROR_TYPE);
|
||||
}
|
||||
}
|
||||
|
||||
delete path;
|
||||
}
|
||||
|
||||
delete path;
|
||||
}
|
||||
|
||||
conn_rec *c;
|
||||
|
@ -143,6 +143,7 @@ server_rec *modsecInit() {
|
||||
server->server_scheme = "";
|
||||
server->timeout = 60 * 1000000;// 60 seconds
|
||||
server->wild_names = NULL;
|
||||
server->is_virtual = 0;
|
||||
|
||||
ap_server_config_defines = apr_array_make(pool, 1, sizeof(char *));
|
||||
|
||||
|
@ -991,8 +991,8 @@ const char *process_command_config(server_rec *s,
|
||||
apr_status_t status;
|
||||
ap_directive_t *newdir;
|
||||
int optional;
|
||||
char *err = NULL;
|
||||
|
||||
//*(char **)apr_array_push(ari) = (char *)filename;
|
||||
errmsg = populate_include_files(p, ptemp, ari, filename, 0);
|
||||
|
||||
if(errmsg != NULL)
|
||||
@ -1108,21 +1108,18 @@ ProcessInclude:
|
||||
break;
|
||||
}
|
||||
|
||||
while((parms = (cmd_parms *)apr_array_pop(arr)) != NULL)
|
||||
{
|
||||
ap_cfg_closefile(parms->config_file);
|
||||
}
|
||||
|
||||
if (errmsg) {
|
||||
char *err = (char *)apr_palloc(p, 1024);
|
||||
err = (char *)apr_palloc(p, 1024);
|
||||
|
||||
apr_snprintf(err, 1024, "Syntax error in config file %s, line %d: %s", parms->config_file->name,
|
||||
parms->config_file->line_number, errmsg);
|
||||
|
||||
return err;
|
||||
if(parms != NULL)
|
||||
apr_snprintf(err, 1024, "Syntax error in config file %s, line %d: %s", parms->config_file->name,
|
||||
parms->config_file->line_number, errmsg);
|
||||
else
|
||||
apr_snprintf(err, 1024, "Syntax error in config file: %s", errmsg);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
errmsg = err;
|
||||
|
||||
Exit:
|
||||
while((parms = (cmd_parms *)apr_array_pop(arr)) != NULL)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user