[PATCH] Bug 2976: invalid URL on intercepted requests during reconfigure

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Thu, 03 Mar 2011 10:19:42 +1300

 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.

 Amos

Received on Wed Mar 02 2011 - 21:19:49 MST

This archive was generated by hypermail 2.2.0 : Wed Mar 09 2011 - 12:00:04 MST