[MAJOR] ported requri to use mempools v2

This commit is contained in:
Willy Tarreau 2007-05-13 21:36:56 +02:00
parent 63963c62e7
commit 332f8bfc5b
6 changed files with 11 additions and 7 deletions

View file

@ -27,7 +27,6 @@
#include <common/config.h>
#include <common/mini-clist.h>
#define sizeof_requri REQURI_LEN
#define sizeof_capture CAPTURE_LEN
/*
* Returns a pointer to an area of <__len> bytes taken from the pool <pool> or

View file

@ -27,10 +27,13 @@
#include <syslog.h>
#include <common/config.h>
#include <common/memory.h>
#include <types/log.h>
#include <types/proxy.h>
#include <types/session.h>
extern struct pool_head *pool2_requri;
/*
* Displays the message on stderr with the date and pid. Overrides the quiet
* mode during startup.

View file

@ -44,8 +44,6 @@
#define LW_REQHDR 1024 /* request header(s) */
#define LW_RSPHDR 2048 /* response header(s) */
extern void **pool_requri;
#endif /* _TYPES_LOG_H */

View file

@ -664,7 +664,7 @@ void deinit(void)
pool_destroy2(pool2_session);
pool_destroy2(pool2_buffer);
pool_destroy(pool_requri);
pool_destroy2(pool2_requri);
pool_destroy2(pool2_task);
pool_destroy(pool_capture);
pool_destroy2(pool2_appsess);

View file

@ -243,6 +243,9 @@ void init_proto_http()
FD_SET(*tmp, url_encode_map);
tmp++;
}
/* memory allocations */
pool2_requri = create_pool("requri", REQURI_LEN, MEM_F_SHARED);
}
/*
@ -624,7 +627,7 @@ const char sess_cookie[4] = "NIDV"; /* No cookie, Invalid cookie, cookie fo
const char sess_set_cookie[8] = "N1I3PD5R"; /* No set-cookie, unknown, Set-Cookie Inserted, unknown,
Set-cookie seen and left unchanged (passive), Set-cookie Deleted,
unknown, Set-cookie Rewritten */
void **pool_requri = NULL;
struct pool_head *pool2_requri;
/*
* send a log for the session when we have enough info about it.
@ -1592,7 +1595,7 @@ int process_cli(struct session *t)
*/
if (unlikely(t->logs.logwait & LW_REQ)) {
/* we have a complete HTTP request that we must log */
if ((txn->uri = pool_alloc(requri)) != NULL) {
if ((txn->uri = pool_alloc2(pool2_requri)) != NULL) {
int urilen = msg->sl.rq.l;
if (urilen >= REQURI_LEN)

View file

@ -23,6 +23,7 @@
#include <proto/buffers.h>
#include <proto/hdr_idx.h>
#include <proto/log.h>
#include <proto/session.h>
#include <proto/queue.h>
@ -64,7 +65,7 @@ void session_free(struct session *s)
}
if (txn->uri)
pool_free(requri, txn->uri);
pool_free2(pool2_requri, txn->uri);
if (txn->cli_cookie)
pool_free(capture, txn->cli_cookie);
if (txn->srv_cookie)