Fixed error messages not being displayed.

This commit is contained in:
Markus Makela
2015-02-19 16:48:00 +02:00
parent 20b075c67b
commit 83f4daf925

View File

@ -1384,11 +1384,6 @@ bool rule_matches(FW_INSTANCE* my_instance, FW_SESSION* my_session, GWBUF *queue
time_t time_now; time_t time_now;
struct tm* tm_now; struct tm* tm_now;
if(my_session->errmsg){
free(my_session->errmsg);
my_session->errmsg = NULL;
}
time(&time_now); time(&time_now);
tm_now = localtime(&time_now); tm_now = localtime(&time_now);
@ -1528,9 +1523,7 @@ bool rule_matches(FW_INSTANCE* my_instance, FW_SESSION* my_session, GWBUF *queue
queryspeed->next = user->qs_limit; queryspeed->next = user->qs_limit;
user->qs_limit = queryspeed; user->qs_limit = queryspeed;
} }
block_triggered:
if(queryspeed->limit == 1) if(queryspeed->limit == 1)
{ {
matches = true; matches = true;
@ -1570,14 +1563,10 @@ bool rule_matches(FW_INSTANCE* my_instance, FW_SESSION* my_session, GWBUF *queue
} }
else else
{ {
queryspeed->first_query = time_now; queryspeed->first_query = time_now;
queryspeed->count++;
} }
if(!matches && queryspeed->count >= queryspeed->limit)
{
goto block_triggered;
}
break; break;
case RT_CLAUSE: case RT_CLAUSE:
@ -1600,7 +1589,11 @@ bool rule_matches(FW_INSTANCE* my_instance, FW_SESSION* my_session, GWBUF *queue
queryresolved: queryresolved:
if(msg){ if(msg){
my_session->errmsg = msg; if(my_session->errmsg){
free(my_session->errmsg);
}
my_session->errmsg = msg;
} }
if(matches){ if(matches){