tree 721d1838c9bef29220dd5d4595e2d367baf73e17
parent 108cf6ea9926b8799ab5babc7599c6b6feca08c5
author Willy Tarreau <w@1wt.eu> 1334157668 +0200
committer Willy Tarreau <w@1wt.eu> 1335737968 +0200
encoding latin1

BUILD: http: make extract_cookie_value() return an int not size_t

It's very annoying that we have to deal with the crappy size_t and with ints
at some places because these ones don't mix well. Patch 6f61b2 changed the
chunk len to int but its size remains size_t and some functions are having
trouble being used by several callers depending on the type of their arguments.

Let's turn extract_cookie_value() to int for now on, and plan a massive cleanup
later to remove all size_t.
