On 03/03/11 10:19, Amos Jeffries wrote:
While investigating bug 2976 (URLs suddenly becoming (null)://foo/ on intercepted traffic for a few seconds) it has become clear that the listening ports are badly abusing cbdata. They *are* passed as cbdata parameters from IPC to the connection accepting routines. However the parser is not aware of their cbdata'ness and is using new/delete directly on the config pointers. Long term I think the right solution is to RefCount the http_port_list object. Since their main property seems to be that the ConnStateData retain a long-term pointers to them despite SquidConfig disappearing. As a short-term workaround just for interception ports. It appears that we can hard-code the scheme. Since interception can only be done with HTTP protocol. Barring objections I'll commit this short-term workaround in a few days.
Applied. Amos -- Please be using Current Stable Squid 2.7.STABLE9 or 3.1.11 Beta testers wanted for 3.2.0.5
