20 return "[null_store_key]";
26 snprintf(&buf[i*2],
sizeof(buf) - i*2,
"%02X", *(key + i));
40 t[0] = *(buf + (j++));
41 t[1] = *(buf + (j++));
43 *(digest + i) = (
unsigned char) strtol(t,
nullptr, 16);
52 const unsigned char *A = (
const unsigned char *)a;
53 const unsigned char *B = (
const unsigned char *)b;
71 const unsigned char *digest = (
const unsigned char *)key;
72 unsigned int i = digest[0]
91 return reinterpret_cast<cache_key*
>(&key);
98 unsigned char m = (
unsigned char) method.
id();
119 unsigned char m = (
unsigned char) method.
id();
130 debugs(20, 3,
"updating public key by vary headers: " << request->
vary_headers <<
" for: " << url);
Http::MethodType id() const
SBuf vary_headers
The variant second-stage cache key. Generated from Vary header pattern for this request.
const char * rawContent() const
size_type length() const
Returns the number of bytes stored in SBuf.
#define debugs(SECTION, LEVEL, CONTENT)
SQUIDCEXTERN void SquidMD5Init(struct SquidMD5Context *context)
#define SQUID_MD5_DIGEST_LENGTH
SQUIDCEXTERN void SquidMD5Update(struct SquidMD5Context *context, const void *buf, unsigned len)
SQUIDCEXTERN void SquidMD5Final(uint8_t digest[16], struct SquidMD5Context *context)
void memFree(void *, int type)
Free a element allocated by memAllocate()
void * memAllocate(mem_type)
Allocate one element from the typed pool.
struct node * nbuckets[NHASHSIZE]
unsigned char cache_key
Store key.
const cache_key * storeKeyPublicByRequest(HttpRequest *request, const KeyScope keyScope)
int storeKeyHashBuckets(int nbuckets)
const cache_key * storeKeyScan(const char *buf)
cache_key * storeKeyCopy(cache_key *dst, const cache_key *src)
const cache_key * storeKeyPublic(const char *url, const HttpRequestMethod &method, const KeyScope keyScope)
const cache_key * storeKeyPublicByRequestMethod(HttpRequest *request, const HttpRequestMethod &method, const KeyScope keyScope)
const cache_key * storeKeyPrivate()
cache_key * storeKeyDup(const cache_key *key)
void storeKeyFree(const cache_key *key)
const char * storeKeyText(const cache_key *key)
HASHHASH storeKeyHashHash