diff -r f4d56bf9de40 -r 30e51941a673 src/server/httprequest.c --- a/src/server/httprequest.c Wed Dec 28 22:02:08 2011 +0100 +++ b/src/server/httprequest.c Thu Dec 29 18:51:23 2011 +0100 @@ -29,6 +29,7 @@ #include #include + #include "nsapi.h" #include "pool.h" #include "pblock.h" @@ -70,11 +71,22 @@ sn->sys_fd = request->connection->fd; sn->sn.pool = pool_create(); sn->sn.csd = stream_new_from_fd(request->connection->fd); - sn->sn.client = NULL; + sn->sn.client = pblock_create_pool(sn->sn.pool, 8); sn->sn.next = NULL; sn->sn.fill = 1; sn->sn.subject = NULL; + /* add ip to sn->client pblock */ + char ip_str[INET_ADDRSTRLEN]; + if(inet_ntop( + AF_INET, + &request->connection->address.sin_addr, + ip_str, + INET_ADDRSTRLEN) != NULL) + { + pblock_kvinsert(pb_key_ip, ip_str, INET_ADDRSTRLEN, sn->sn.client); + } + // init NSAPI request structure if(request_initialize(request->pool, request, rq) != 0) { printf("Cannot initialize request structure\n");