mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2026-01-15 16:07:10 +03:00
Backport t:cssDecode to 2.5.
This commit is contained in:
@@ -45,6 +45,8 @@ int DSOLOCAL remove_lf_crlf_inplace(char *text);
|
|||||||
|
|
||||||
unsigned char DSOLOCAL x2c(unsigned char *what);
|
unsigned char DSOLOCAL x2c(unsigned char *what);
|
||||||
|
|
||||||
|
unsigned char DSOLOCAL xsingle2c(unsigned char *what);
|
||||||
|
|
||||||
char DSOLOCAL *guess_tmp_dir(apr_pool_t *p);
|
char DSOLOCAL *guess_tmp_dir(apr_pool_t *p);
|
||||||
|
|
||||||
char DSOLOCAL *current_logtime(apr_pool_t *mp);
|
char DSOLOCAL *current_logtime(apr_pool_t *mp);
|
||||||
@@ -90,4 +92,6 @@ int DSOLOCAL is_empty_string(const char *string);
|
|||||||
|
|
||||||
char DSOLOCAL *resolve_relative_path(apr_pool_t *pool, const char *parent_filename, const char *filename);
|
char DSOLOCAL *resolve_relative_path(apr_pool_t *pool, const char *parent_filename, const char *filename);
|
||||||
|
|
||||||
|
int DSOLOCAL css_decode_inplace(unsigned char *input, long int input_len);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -198,6 +198,20 @@ static int msre_fn_compressWhitespace_execute(apr_pool_t *mptmp, unsigned char *
|
|||||||
return changed;
|
return changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* cssDecode */
|
||||||
|
|
||||||
|
static int msre_fn_cssDecode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||||
|
long int input_len, char **rval, long int *rval_len)
|
||||||
|
{
|
||||||
|
long int length;
|
||||||
|
|
||||||
|
length = css_decode_inplace(input, input_len);
|
||||||
|
*rval = (char *)input;
|
||||||
|
*rval_len = length;
|
||||||
|
|
||||||
|
return (*rval_len == input_len ? 0 : 1);
|
||||||
|
}
|
||||||
|
|
||||||
/* removeWhitespace */
|
/* removeWhitespace */
|
||||||
|
|
||||||
static int msre_fn_removeWhitespace_execute(apr_pool_t *mptmp, unsigned char *input,
|
static int msre_fn_removeWhitespace_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||||
@@ -612,6 +626,12 @@ void msre_engine_register_default_tfns(msre_engine *engine) {
|
|||||||
msre_fn_compressWhitespace_execute
|
msre_fn_compressWhitespace_execute
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* cssDecode */
|
||||||
|
msre_engine_tfn_register(engine,
|
||||||
|
"cssDecode",
|
||||||
|
msre_fn_cssDecode_execute
|
||||||
|
);
|
||||||
|
|
||||||
/* escapeSeqDecode */
|
/* escapeSeqDecode */
|
||||||
msre_engine_tfn_register(engine,
|
msre_engine_tfn_register(engine,
|
||||||
"escapeSeqDecode",
|
"escapeSeqDecode",
|
||||||
|
|||||||
Reference in New Issue
Block a user