BUG/MAJOR: http: fix buffer overflow on loguri buffer.

The pool used to log the uri was created with a size of 0 because the
configuration and 'tune.http.logurilen' were parsed too earlier.

The fix consist to postpone the pool_create as it is done for
cookie captures.

Regression introduced with 'MINOR: log: Add logurilen tunable'
This commit is contained in:
Emeric Brun 2017-07-05 13:33:16 +02:00 committed by Willy Tarreau
parent 7d27f3c12d
commit 96fd926ccc
2 changed files with 2 additions and 1 deletions

View File

@ -7404,6 +7404,8 @@ int check_config_validity()
if (!global.tune.requri_len)
global.tune.requri_len = REQURI_LEN;
pool2_requri = create_pool("requri", global.tune.requri_len , MEM_F_SHARED);
pool2_capture = create_pool("capture", global.tune.cookie_len, MEM_F_SHARED);
/* allocate pool of resolution per resolvers */

View File

@ -459,7 +459,6 @@ void init_proto_http()
/* memory allocations */
pool2_http_txn = create_pool("http_txn", sizeof(struct http_txn), MEM_F_SHARED);
pool2_requri = create_pool("requri", global.tune.requri_len , MEM_F_SHARED);
pool2_uniqueid = create_pool("uniqueid", UNIQUEID_LEN, MEM_F_SHARED);
}