Squid Web Cache
master
Loading...
Searching...
No Matches
htcp.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 1996-2025 The Squid Software Foundation and contributors
3
*
4
* Squid software is distributed under GPLv2+ license and includes
5
* contributions from numerous individuals and organizations.
6
* Please see the COPYING and CONTRIBUTORS files for details.
7
*/
8
9
#ifndef SQUID_SRC_HTCP_H
10
#define SQUID_SRC_HTCP_H
11
12
#if USE_HTCP
13
14
#include "
enums.h
"
15
#include "
http/forward.h
"
16
#include "
HttpHeader.h
"
17
#include "
ip/forward.h
"
18
#include "
store_key_md5.h
"
19
21
class
HtcpReplyData
22
{
23
24
public
:
25
HtcpReplyData
();
26
28
bool
parseHeader
(
const
char
*buffer,
const
size_t
size
);
29
30
int
hit
;
31
HttpHeader
hdr
;
32
uint32_t
msg_id
;
33
double
version
;
34
35
struct
cto_t
{
36
/* cache-to-origin */
37
double
rtt
;
38
int
samp
;
39
int
hops
;
40
}
cto
;
41
};
42
44
void
neighborsHtcpReply
(
const
cache_key
*,
HtcpReplyData
*,
const
Ip::Address
&);
45
46
class
CachePeer
;
47
61
int
htcpQuery
(
StoreEntry
* e,
HttpRequest
* req,
CachePeer
* p);
62
64
void
htcpClear
(
StoreEntry
* e,
HttpRequest
* req,
const
HttpRequestMethod
&method,
CachePeer
* p,
htcp_clr_reason
reason);
65
66
#endif
/* USE_HTCP */
67
#endif
/* SQUID_SRC_HTCP_H */
68
HttpHeader.h
size
int size
Definition
ModDevPoll.cc:70
CachePeer
Definition
CachePeer.h:29
HtcpReplyData
Definition
htcp.h:22
HtcpReplyData::hdr
HttpHeader hdr
Definition
htcp.h:31
HtcpReplyData::version
double version
Definition
htcp.h:33
HtcpReplyData::cto
struct HtcpReplyData::cto_t cto
HtcpReplyData::hit
int hit
Definition
htcp.h:30
HtcpReplyData::HtcpReplyData
HtcpReplyData()
Definition
htcp.cc:1101
HtcpReplyData::msg_id
uint32_t msg_id
Definition
htcp.h:32
HtcpReplyData::parseHeader
bool parseHeader(const char *buffer, const size_t size)
parses request header from the buffer
Definition
htcp.cc:1108
HttpHeader
Definition
HttpHeader.h:75
HttpRequestMethod
Definition
RequestMethod.h:27
HttpRequest
Definition
HttpRequest.h:49
Ip::Address
Definition
Address.h:43
StoreEntry
Definition
Store.h:38
enums.h
htcp_clr_reason
htcp_clr_reason
Definition
enums.h:234
htcpQuery
int htcpQuery(StoreEntry *e, HttpRequest *req, CachePeer *p)
Definition
htcp.cc:1558
neighborsHtcpReply
void neighborsHtcpReply(const cache_key *, HtcpReplyData *, const Ip::Address &)
Definition
neighbors.cc:1601
htcpClear
void htcpClear(StoreEntry *e, HttpRequest *req, const HttpRequestMethod &method, CachePeer *p, htcp_clr_reason reason)
Definition
htcp.cc:1607
forward.h
forward.h
cache_key
unsigned char cache_key
Store key.
Definition
forward.h:29
store_key_md5.h
HtcpReplyData::cto_t
Definition
htcp.h:35
HtcpReplyData::cto_t::rtt
double rtt
Definition
htcp.h:37
HtcpReplyData::cto_t::samp
int samp
Definition
htcp.h:38
HtcpReplyData::cto_t::hops
int hops
Definition
htcp.h:39
squid
src
htcp.h
Generated by
1.9.8