From cc0ac7eea72d9e400432bdc4e1b147341aa2924b Mon Sep 17 00:00:00 2001 From: Jonathan Gonzalez V Date: Fri, 12 Feb 2010 17:04:33 -0300 Subject: [PATCH] Change char *ipv4 for mk_pointer ipv4 in sched_connection. Fix all the code to use the new form Signed-off-by: Eduardo Silva --- plugins/security/security.c | 2 +- src/include/request.h | 2 +- src/include/scheduler.h | 2 +- src/request.c | 2 +- src/scheduler.c | 6 ++++-- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/plugins/security/security.c b/plugins/security/security.c index cab95d3..2f1093e 100644 --- a/plugins/security/security.c +++ b/plugins/security/security.c @@ -147,7 +147,7 @@ int _mk_plugin_init(void **api, char *confdir) int _mk_plugin_stage_20(unsigned int socket, struct sched_connection *conx) { - if (mk_security_check_ip(conx->ipv4) != 0) { + if (mk_security_check_ip(conx->ipv4.data) != 0) { return MK_PLUGIN_RET_CLOSE_CONX; } diff --git a/src/include/request.h b/src/include/request.h index 67b80ce..a508f47 100644 --- a/src/include/request.h +++ b/src/include/request.h @@ -127,7 +127,7 @@ struct client_request int status; /* Request status */ char *body; /* Original request sent */ - char *ipv4; + mk_pointer *ipv4; int body_length; diff --git a/src/include/scheduler.h b/src/include/scheduler.h index 1fc3ee4..b193ceb 100644 --- a/src/include/scheduler.h +++ b/src/include/scheduler.h @@ -39,7 +39,7 @@ struct sched_connection { int socket; int status; - char ipv4[16]; + mk_pointer ipv4; time_t arrive_time; }; diff --git a/src/request.c b/src/request.c index 7e3a1dd..38ae6fa 100644 --- a/src/request.c +++ b/src/request.c @@ -851,7 +851,7 @@ struct client_request *mk_request_client_create(int socket) cr = mk_mem_malloc(sizeof(struct client_request)); /* IPv4 Address */ - cr->ipv4 = (char *) sc->ipv4; + cr->ipv4 = &sc->ipv4; cr->pipelined = FALSE; cr->counter_connections = 0; diff --git a/src/scheduler.c b/src/scheduler.c index 5716e82..9b36533 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -226,8 +226,10 @@ int mk_sched_add_client(struct sched_list_node *sched, int remote_fd) for (i = 0; i < config->worker_capacity; i++) { if (sched->queue[i].status == MK_SCHEDULER_CONN_AVAILABLE) { /* Set IP */ - bzero(sched->queue[i].ipv4, 17); - mk_socket_get_ip(remote_fd, sched->queue[i].ipv4); + sched->queue[i].ipv4.data = mk_mem_malloc(16); + bzero(sched->queue[i].ipv4.data, 16); + mk_socket_get_ip(remote_fd, sched->queue[i].ipv4.data); + sched->queue[i].ipv4.len = strlen( sched->queue[i].ipv4.data ); /* Before to continue, we need run plugin stage 20 */ ret = mk_plugin_stage_run(MK_PLUGIN_STAGE_20, -- 2.11.4.GIT