PeerSelectState.h
Go to the documentation of this file.
52 void startSelectingDestinations(HttpRequest *request, const AccessLogEntry::Pointer &ale, StoreEntry *entry);
void selectSomeDirect()
Adds a "direct" entry if the request can be forwarded to the origin server.
Definition: peer_select.cc:811
Definition: peer_select.cc:50
Definition: ipcache.h:50
void resolveSelected()
A single DNS resolution loop iteration: Converts selected FwdServer to IPs.
Definition: peer_select.cc:406
Interface for those who need a list of peers to forward a request to.
Definition: PeerSelectState.h:32
Definition: Acl.h:53
Definition: cbdata.h:275
void handlePath(const Comm::ConnectionPointer &path, FwdServer &fs)
processes a newly discovered/finalized path
Definition: peer_select.cc:1158
void noteLookup(const Dns::LookupDetails &details) override
Definition: peer_select.cc:495
void handleHtcpParentMiss(CachePeer *, HtcpReplyData *)
Definition: peer_select.cc:1017
void noteIps(const Dns::CachedIps *ips, const Dns::LookupDetails &details) override
Definition: peer_select.cc:535
void checkAlwaysDirectDone(const Acl::Answer answer)
Definition: peer_select.cc:365
void error(char *format,...)
void startSelectingDestinations(HttpRequest *request, const AccessLogEntry::Pointer &ale, StoreEntry *entry)
Definition: peer_select.cc:330
Definition: CachePeer.h:28
void handleHtcpReply(CachePeer *, const peer_t, HtcpReplyData *)
Definition: peer_select.cc:995
CBDATA_CHILD(PeerSelector)
Definition: htcp.h:21
const InstanceId< PeerSelector > id
unique identification in worker log
Definition: PeerSelectState.h:165
~PeerSelectionInitiator() override=default
Definition: HttpRequest.h:48
static ACLCB CheckNeverDirectDone
Definition: PeerSelectState.h:133
an interface for receiving IP::Addresses from nbgethostbyname()
Definition: ipcache.h:194
void handleIcpParentMiss(CachePeer *, icp_common_t *)
Definition: peer_select.cc:919
PeerSelectionInitiator * interestedInitiator()
Definition: peer_select.cc:1133
void checkNeverDirectDone(const Acl::Answer answer)
Definition: peer_select.cc:338
bool subscribed
whether noteDestination() and noteDestinationsEnd() calls are allowed
Definition: PeerSelectState.h:46
void addSelection(CachePeer *, const hier_code)
Definition: peer_select.cc:1077
virtual void noteDestinationsEnd(ErrorState *error)=0
void cancelPingTimeoutMonitoring()
terminates ICP ping timeout monitoring
Definition: peer_select.cc:267
static void HandlePingTimeout(PeerSelector *)
called when the given selector should stop expecting ICP ping responses
Definition: peer_select.cc:907
void startPingWaiting()
switches into the PING_WAITING state (and associated timeout monitoring)
Definition: peer_select.cc:258
Initiator initiator_
recipient of the destinations we select; use interestedInitiator() to access
Definition: PeerSelectState.h:163
Definition: Store.h:37
static ACLCB CheckAlwaysDirectDone
Definition: PeerSelectState.h:132
void noteIp(const Ip::Address &ip) override
Called when/if nbgethostbyname() discovers a new good IP address.
Definition: peer_select.cc:509
bool wantsMoreDestinations() const
Definition: peer_select.cc:1152
void handleIcpReply(CachePeer *, const peer_t, icp_common_t *header)
Definition: peer_select.cc:962
void selectAllParents()
Adds alive parents. Used as a last resort for never_direct.
Definition: peer_select.cc:858
void selectSomeNeighborReplies()
Selects a neighbor (parent or sibling) based on ICP/HTCP replies.
Definition: peer_select.cc:780
Definition: PeerSelectState.h:59
virtual void noteDestination(Comm::ConnectionPointer path)=0
called when a new unique destination has been found
Definition: errorpage.h:88
void selectPinned()
Selects a pinned connection if it exists, is valid, and is allowed.
Definition: peer_select.cc:698
Definition: ICP.h:35
void selectMore()
a single selection loop iteration: attempts to add more destinations
Definition: peer_select.cc:604
Definition: Address.h:42
void * peerCountMcastPeerXXX
a hack to help peerCountMcastPeersStart()
Definition: PeerSelectState.h:101
CbcPointer< PeerSelectionInitiator > Initiator
Definition: PeerSelectState.h:162
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Donate
- How to Help Out
- Getting Squid
- Squid Source Packages
- Squid Deployment Case-Studies
- Squid Software Foundation
Documentation
- Quick Setup
- Configuration:
- FAQ and Wiki
- Guide Books:
- Non-English
- More...
Support
- Security Advisories
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products