tree c03771e74485f02173573d3ff93151662324c2f8
parent ca3610251b3903c8db4f6d79a5d064dbe0d04962
author Willy Tarreau <w@1wt.eu> 1503939771 +0200
committer Willy Tarreau <w@1wt.eu> 1504069549 +0200
encoding latin1

MEDIUM: session: add a pointer to a struct task in the session

The session may need to enforce a timeout when waiting for a handshake.
Till now we used a trick to avoid allocating a pointer, we used to set
the connection's owner to the task and set the task's context to the
session, so that it was possible to circle between all of them. The
problem is that we'll really need to pass the pointer to the session
to the upper layers during initialization and that the only place to
store it is conn->owner, which is squatted for this trick.

So this patch moves the struct task* into the session where it should
always have been and ensures conn->owner points to the session until
the data layer is properly initialized.
