mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2025-08-13 21:36:00 +03:00
Fixed some casting issues for compiling on NetWare (Guenter Knauf).
This commit is contained in:
parent
3e95d3c347
commit
79d232ccff
10
CHANGES
10
CHANGES
@ -1,5 +1,13 @@
|
||||
|
||||
23 Feb 2006 - 2.1.0
|
||||
01 Mar 2007 - 2.2.0
|
||||
-------------------
|
||||
|
||||
* Fixed the date on the 2.1.0 release from 2006 to 2007 below.
|
||||
|
||||
* Fixed some casting issues for compiling on NetWare (patch from Guenter_Knauf).
|
||||
|
||||
|
||||
23 Feb 2007 - 2.1.0
|
||||
-------------------
|
||||
|
||||
* Removed the "Connection reset by peer" message, which has nothing
|
||||
|
@ -867,7 +867,7 @@ static const char *cmd_response_body_mime_type(cmd_parms *cmd, void *_dcfg, cons
|
||||
dcfg->of_mime_types = apr_table_make(cmd->pool, 10);
|
||||
}
|
||||
|
||||
strtolower_inplace(p1);
|
||||
strtolower_inplace((unsigned char *)p1);
|
||||
apr_table_setn(dcfg->of_mime_types, p1, "1");
|
||||
|
||||
return NULL;
|
||||
|
@ -308,7 +308,7 @@ static int output_filter_should_run(modsec_rec *msr, request_rec *r) {
|
||||
*p = '\0';
|
||||
}
|
||||
|
||||
strtolower_inplace(content_type);
|
||||
strtolower_inplace((unsigned char *)content_type);
|
||||
|
||||
if (strcmp(content_type, "text/html") == 0) {
|
||||
/* Useful information to have should we later
|
||||
|
@ -26,7 +26,7 @@ typedef struct msc_data_chunk msc_data_chunk;
|
||||
typedef struct msc_arg msc_arg;
|
||||
typedef struct msc_string msc_string;
|
||||
|
||||
#ifndef WIN32
|
||||
#if !(defined(WIN32) || defined(NETWARE))
|
||||
#define DSOLOCAL __attribute__((visibility("hidden")))
|
||||
#else
|
||||
#define DSOLOCAL
|
||||
|
@ -247,7 +247,7 @@ int parse_arguments(modsec_rec *msr, const char *s, int argument_separator, cons
|
||||
}
|
||||
|
||||
if (status == 0) {
|
||||
arg->name_len = urldecode_nonstrict_inplace_ex(buf, arg->name_origin_len, invalid_count);
|
||||
arg->name_len = urldecode_nonstrict_inplace_ex((unsigned char *)buf, arg->name_origin_len, invalid_count);
|
||||
arg->name = apr_pstrmemdup(msr->mp, buf, arg->name_len);
|
||||
|
||||
if (s[i] == argument_separator) {
|
||||
@ -271,7 +271,7 @@ int parse_arguments(modsec_rec *msr, const char *s, int argument_separator, cons
|
||||
}
|
||||
}
|
||||
else {
|
||||
arg->value_len = urldecode_nonstrict_inplace_ex(value, arg->value_origin_len, invalid_count);
|
||||
arg->value_len = urldecode_nonstrict_inplace_ex((unsigned char *)value, arg->value_origin_len, invalid_count);
|
||||
arg->value = apr_pstrmemdup(msr->mp, value, arg->value_len);
|
||||
|
||||
apr_table_addn(arguments, arg->name, (void *)arg);
|
||||
|
@ -410,7 +410,7 @@ char *strtolower_inplace(unsigned char *str) {
|
||||
c++;
|
||||
}
|
||||
|
||||
return str;
|
||||
return (char *)str;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -428,23 +428,23 @@ unsigned char *c2x(unsigned what, unsigned char *where) {
|
||||
}
|
||||
|
||||
char *log_escape(apr_pool_t *mp, const char *text) {
|
||||
return _log_escape(mp, text, strlen(text), 1, 0);
|
||||
return _log_escape(mp, (const unsigned char *)text, strlen(text), 1, 0);
|
||||
}
|
||||
|
||||
char *log_escape_nq(apr_pool_t *mp, const char *text) {
|
||||
return _log_escape(mp, text, strlen(text), 0, 0);
|
||||
return _log_escape(mp, (const unsigned char *)text, strlen(text), 0, 0);
|
||||
}
|
||||
|
||||
char *log_escape_ex(apr_pool_t *mp, const char *text, unsigned long int text_length) {
|
||||
return _log_escape(mp, text, text_length, 1, 0);
|
||||
return _log_escape(mp, (const unsigned char *)text, text_length, 1, 0);
|
||||
}
|
||||
|
||||
char *log_escape_nq_ex(apr_pool_t *mp, const char *text, unsigned long int text_length) {
|
||||
return _log_escape(mp, text, text_length, 0, 0);
|
||||
return _log_escape(mp, (const unsigned char *)text, text_length, 0, 0);
|
||||
}
|
||||
|
||||
char *log_escape_header_name(apr_pool_t *mp, const char *text) {
|
||||
return _log_escape(mp, text, strlen(text), 0, 1);
|
||||
return _log_escape(mp, (const unsigned char *)text, strlen(text), 0, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -531,8 +531,8 @@ char *_log_escape(apr_pool_t *mp, const unsigned char *input, unsigned long int
|
||||
/**
|
||||
*
|
||||
*/
|
||||
int urldecode_uni_nonstrict_inplace_ex(char *input, long int input_len) {
|
||||
unsigned char *d = (unsigned char *)input;
|
||||
int urldecode_uni_nonstrict_inplace_ex(unsigned char *input, long int input_len) {
|
||||
unsigned char *d = input;
|
||||
long int i, count;
|
||||
|
||||
if (input == NULL) return -1;
|
||||
@ -635,7 +635,7 @@ int urldecode_uni_nonstrict_inplace_ex(char *input, long int input_len) {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
int urldecode_nonstrict_inplace_ex(char *input, long int input_len, int *invalid_count) {
|
||||
int urldecode_nonstrict_inplace_ex(unsigned char *input, long int input_len, int *invalid_count) {
|
||||
unsigned char *d = (unsigned char *)input;
|
||||
long int i, count;
|
||||
|
||||
@ -736,7 +736,7 @@ int html_entities_decode_inplace(apr_pool_t *mp, unsigned char *input, int input
|
||||
while((j < input_len)&&(isxdigit(input[j]))) j++;
|
||||
if (j > k) { /* Do we have at least one digit? */
|
||||
/* Decode the entity. */
|
||||
char *x = apr_pstrmemdup(mp, &input[k], j - k);
|
||||
char *x = apr_pstrmemdup(mp, (const char*)&input[k], j - k);
|
||||
*d++ = (unsigned char)strtol(x, NULL, 16);
|
||||
count++;
|
||||
|
||||
@ -754,7 +754,7 @@ int html_entities_decode_inplace(apr_pool_t *mp, unsigned char *input, int input
|
||||
while((j < input_len)&&(isdigit(input[j]))) j++;
|
||||
if (j > k) { /* Do we have at least one digit? */
|
||||
/* Decode the entity. */
|
||||
char *x = apr_pstrmemdup(mp, &input[k], j - k);
|
||||
char *x = apr_pstrmemdup(mp, (const char*)&input[k], j - k);
|
||||
*d++ = (unsigned char)strtol(x, NULL, 10);
|
||||
count++;
|
||||
|
||||
@ -773,7 +773,7 @@ int html_entities_decode_inplace(apr_pool_t *mp, unsigned char *input, int input
|
||||
k = j;
|
||||
while((j < input_len)&&(isalnum(input[j]))) j++;
|
||||
if (j > k) { /* Do we have at least one digit? */
|
||||
char *x = apr_pstrmemdup(mp, &input[k], j - k);
|
||||
char *x = apr_pstrmemdup(mp, (const char*)&input[k], j - k);
|
||||
|
||||
/* Decode the entity. */
|
||||
if (strcasecmp(x, "quot") == 0) *d++ = '"';
|
||||
@ -941,7 +941,7 @@ int normalise_path_inplace(unsigned char *input, int input_len, int win) {
|
||||
* purpose.
|
||||
*/
|
||||
if ((count >= 5)&&(*(d - 1) == '.')&&(*(d - 2) == '.')&&(*(d - 3) == '/')) {
|
||||
char *cd = d - 4;
|
||||
unsigned char *cd = d - 4;
|
||||
int ccount = count - 4;
|
||||
|
||||
/* Go back until we reach the beginning or a forward slash. */
|
||||
|
@ -64,9 +64,9 @@ char DSOLOCAL *log_escape_header_name(apr_pool_t *p, const char *text);
|
||||
char DSOLOCAL *_log_escape(apr_pool_t *p, const unsigned char *input,
|
||||
unsigned long int input_length, int escape_quotes, int escape_colon);
|
||||
|
||||
int DSOLOCAL urldecode_uni_nonstrict_inplace_ex(char *input, long int input_length);
|
||||
int DSOLOCAL urldecode_uni_nonstrict_inplace_ex(unsigned char *input, long int input_length);
|
||||
|
||||
int DSOLOCAL urldecode_nonstrict_inplace_ex(char *input, long int input_length, int *invalid_count);
|
||||
int DSOLOCAL urldecode_nonstrict_inplace_ex(unsigned char *input, long int input_length, int *invalid_count);
|
||||
|
||||
int DSOLOCAL html_entities_decode_inplace(apr_pool_t *mp, unsigned char *input, int len);
|
||||
|
||||
|
@ -1391,7 +1391,7 @@ apr_status_t msre_rule_process(msre_rule *rule, modsec_rec *msr) {
|
||||
action = (msre_action *)telts[k].val;
|
||||
metadata = (msre_tfn_metadata *)action->param_data;
|
||||
|
||||
rc = metadata->execute(mptmp, (char *)var->value, var->value_len,
|
||||
rc = metadata->execute(mptmp, (unsigned char *)var->value, var->value_len,
|
||||
&rval, &rval_length);
|
||||
if (rc < 0) {
|
||||
apr_pool_destroy(mptmp);
|
||||
|
@ -229,7 +229,7 @@ static int msre_fn_urlDecodeUni_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
static int msre_fn_urlEncode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval = url_encode(mptmp, input, input_len);
|
||||
*rval = url_encode(mptmp, (char *)input, input_len);
|
||||
*rval_len = strlen(*rval);
|
||||
|
||||
return (*rval_len == input_len ? 0 : 1);
|
||||
@ -242,7 +242,7 @@ static int msre_fn_base64Encode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
{
|
||||
*rval_len = apr_base64_encode_len(input_len); /* returns len with NULL byte included */
|
||||
*rval = apr_palloc(mptmp, *rval_len);
|
||||
apr_base64_encode(*rval, input, input_len);
|
||||
apr_base64_encode(*rval, (const char *)input, input_len);
|
||||
(*rval_len)--;
|
||||
|
||||
return 1;
|
||||
@ -253,9 +253,9 @@ static int msre_fn_base64Encode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
static int msre_fn_base64Decode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = apr_base64_decode_len(input); /* returns len with NULL byte included */
|
||||
*rval_len = apr_base64_decode_len((const char *)input); /* returns len with NULL byte included */
|
||||
*rval = apr_palloc(mptmp, *rval_len);
|
||||
apr_base64_decode(*rval, input);
|
||||
apr_base64_decode(*rval, (const char *)input);
|
||||
(*rval_len)--;
|
||||
|
||||
return 1;
|
||||
@ -271,7 +271,7 @@ static int msre_fn_md5_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
apr_md5(digest, input, input_len);
|
||||
|
||||
*rval_len = APR_MD5_DIGESTSIZE;
|
||||
*rval = apr_pstrmemdup(mptmp, digest, APR_MD5_DIGESTSIZE);
|
||||
*rval = apr_pstrmemdup(mptmp, (const char *)digest, APR_MD5_DIGESTSIZE);
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -285,11 +285,11 @@ static int msre_fn_sha1_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
apr_sha1_ctx_t context;
|
||||
|
||||
apr_sha1_init(&context);
|
||||
apr_sha1_update(&context, input, input_len);
|
||||
apr_sha1_update(&context, (const char *)input, input_len);
|
||||
apr_sha1_final(digest, &context);
|
||||
|
||||
*rval_len = APR_SHA1_DIGESTSIZE;
|
||||
*rval = apr_pstrmemdup(mptmp, digest, APR_SHA1_DIGESTSIZE);
|
||||
*rval = apr_pstrmemdup(mptmp, (const char *)digest, APR_SHA1_DIGESTSIZE);
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -300,7 +300,7 @@ static int msre_fn_hexDecode_execute(apr_pool_t *mptmp, unsigned char *input,
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = hex2bytes_inplace(input, input_len);
|
||||
*rval = input;
|
||||
*rval = (char *)input;
|
||||
|
||||
return 1;
|
||||
}
|
||||
@ -322,7 +322,7 @@ static int msre_fn_htmlEntityDecode_execute(apr_pool_t *mptmp, unsigned char *in
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = html_entities_decode_inplace(mptmp, input, input_len);
|
||||
*rval = input;
|
||||
*rval = (char *)input;
|
||||
|
||||
return (*rval_len == input_len ? 0 : 1);
|
||||
}
|
||||
@ -333,7 +333,7 @@ static int msre_fn_escapeSeqDecode_execute(apr_pool_t *mptmp, unsigned char *inp
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = ansi_c_sequences_decode_inplace(input, input_len);
|
||||
*rval = input;
|
||||
*rval = (char *)input;
|
||||
|
||||
return (*rval_len == input_len ? 0 : 1);
|
||||
}
|
||||
@ -344,7 +344,7 @@ static int msre_fn_normalisePath_execute(apr_pool_t *mptmp, unsigned char *input
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = normalise_path_inplace(input, input_len, 0);
|
||||
*rval = input;
|
||||
*rval = (char *)input;
|
||||
|
||||
return (*rval_len == input_len ? 0 : 1);
|
||||
}
|
||||
@ -355,7 +355,7 @@ static int msre_fn_normalisePathWin_execute(apr_pool_t *mptmp, unsigned char *in
|
||||
long int input_len, char **rval, long int *rval_len)
|
||||
{
|
||||
*rval_len = normalise_path_inplace(input, input_len, 1);
|
||||
*rval = input;
|
||||
*rval = (char *)input;
|
||||
|
||||
return (*rval_len == input_len ? 0 : 1);
|
||||
}
|
||||
|
@ -1363,7 +1363,7 @@ static int var_request_filename_generate(modsec_rec *msr, msre_var *var, msre_ru
|
||||
|
||||
if (value != NULL) {
|
||||
int invalid_count = 0;
|
||||
urldecode_nonstrict_inplace_ex(value, strlen(value), &invalid_count);
|
||||
urldecode_nonstrict_inplace_ex((unsigned char *)value, strlen(value), &invalid_count);
|
||||
}
|
||||
|
||||
return var_simple_generate(var, vartab, mptmp, value);
|
||||
|
Loading…
x
Reference in New Issue
Block a user