This patch implements the StoreID fully functional but yet to take in 
full account PURGE\ICP\HTCP requests.
The patch dose not apply the "mem-obj->url" change to 
"mem-obj->store_id" since it's not needed for now but will be done later.
I wasnt sure about couple things so I left notes inside the code about them.
I am here for questions about anything.
There are things that I might not took in account and this is what the 
patch here for.
This patch will not work without Tsantilas Christos helpers patch 
(Helpers-fix.patch) which is embedded inside this one for now.
What will happen is that every second request for the same url will get 
stuck somehow after the helper response.
In summery the basic idea is:
We need: option to allow the admin prevent objects duplication when he 
knows what multi urls result in the same object.
The way to solve it: let the admin identify the url StoreID which was 
until now was the MD5 hash of the method + url in the store index.
Also there are couple places which validate the object meta data against 
the current request URL.
The original url was embedded into the cache object meta data and should 
have caused problem to match the current request URL (since every time 
they are different).
To solve all the above the StoreID replaces the original URL in the 
relevant points such as MD5 calculation for index and StoreEntry 
creation by url or request.
The above result in a mem-obj member of StoreEntry with a "url" variable 
that holds the StoreID which in most cases will be the URL and when 
StoreID feature overrides the URL by a StoreID it will be used instead.
Things that should be taken in account are that the index is MD5 hash of 
METHOD+StoreID and there for I was thinking of enforcing basic StoreID 
response size.
All the above affect the way of implementation.
I am sorry if there are things of newbie done in the code take in 
account that this is my first time touching c++\c.
Thanks,
Eliezer
-- Eliezer Croitoru https://www1.ngtech.co.il sip:ngtech_at_sip2sip.info IT consulting for Nonprofit organizations eliezer <at> ngtech.co.il
This archive was generated by hypermail 2.2.0 : Thu Dec 06 2012 - 12:00:10 MST