Avoids unicode initialization on every rules block

ModSecurity-nginx/#67
ModSecurity/#1563
This commit is contained in:
Felipe Zimmerle
2017-10-11 12:37:13 -03:00
parent 20edf9ab77
commit 1ad95254cd
5 changed files with 24 additions and 20 deletions

View File

@@ -87,7 +87,8 @@ int UrlDecodeUni::inplace(unsigned char *input, uint64_t input_len,
fact = 1;
if (transaction
&& transaction->m_rules->unicode_map_table != NULL
&& transaction->m_rules->m_unicodeMapTable.m_set == true
&& transaction->m_rules->m_unicodeMapTable.m_unicode_map_table != NULL
&& transaction->m_rules->unicode_codepage > 0) {
for (j = 5; j >= 2; j--) {
if (isxdigit((input[i+j]))) {
@@ -105,7 +106,7 @@ int UrlDecodeUni::inplace(unsigned char *input, uint64_t input_len,
if (Code >= 0 && Code <= 65535) {
Rules *r = transaction->m_rules;
hmap = r->unicode_map_table[Code];
hmap = r->m_unicodeMapTable.m_unicode_map_table[Code];
}
}

View File

@@ -77,12 +77,6 @@ void Rules::decrementReferenceCount(void) {
}
Rules::~Rules() {
free(unicode_map_table);
unicode_map_table = NULL;
}
/**
* @name loadFromUri
* @brief load rules from a give uri