I've dug into Lev's observation on the Transaction Start hook and blind
tunnels some more. I'd like to pursue two issues so I'm dividing his
note into two.
As the code currently stands, both TS_HTTP_TXN_START_HOOK and
TS_HTTP_SSN_START_HOOK get called at the start of the session.
TS_HTTP_SSN_START_HOOK gets involved explicitly from
HttpClientSession::new_connection(). TS_HTTP_TXN_START_HOOK gets called
from HttpSM::state_add_to_list. The TS_HTTP_TXN_START_HOOK gets called
before any attempt is made to read the client header (at least for the
first transaction).
At the end TS_HTTP_TXN_CLOSE_HOOK and TS_SSN_CLOSE_HOOK both get called
(though in the wrong order in my opinion, but Alan says that this is a
known issue).
Before I dig in and change anything, I want input from the community on
the desired semantics of these hooks. In my opinion, the current
implementation of the session hooks seem fine. But if there are in fact
no HTTP transactions in the session (as is the case for blind tunnels),
should the transaction hooks go off?
- The desired semantics of HTTP Transaction hooks Susan Hinrichs
-