icp_v2.cc File Reference
#include "squid.h"
#include "AccessLogEntry.h"
#include "acl/Acl.h"
#include "acl/FilledChecklist.h"
#include "client_db.h"
#include "comm.h"
#include "comm/Connection.h"
#include "comm/Loops.h"
#include "comm/UdpOpenDialer.h"
#include "fd.h"
#include "HttpRequest.h"
#include "icmp/net_db.h"
#include "ICP.h"
#include "ip/Address.h"
#include "ip/tools.h"
#include "ipcache.h"
#include "md5.h"
#include "multicast.h"
#include "neighbors.h"
#include "refresh.h"
#include "rfc1738.h"
#include "SquidConfig.h"
#include "SquidTime.h"
#include "StatCounters.h"
#include "Store.h"
#include "store_key_md5.h"
#include "tools.h"
#include "wordlist.h"
#include "util.h"
#include <cerrno>
Include dependency graph for icp_v2.cc:

Go to the source code of this file.

Classes

class  ICP2State
 

Macros

#define N_QUERIED_KEYS   8192
 
#define N_QUERIED_KEYS_MASK   8191
 

Functions

static void icpIncomingConnectionOpened (const Comm::ConnectionPointer &conn, int errNo)
 
static void icpLogIcp (const Ip::Address &caddr, const LogTags &logcode, int len, const char *url, int delay)
 
static void icpHandleIcpV2 (int, Ip::Address &, char *, int)
 
static void icpCount (void *, int, size_t, int)
 
void icpUdpSendQueue (int fd, void *)
 
int icpUdpSend (int fd, const Ip::Address &to, icp_common_t *msg, const LogTags &logcode, int delay)
 
int icpCheckUdpHit (StoreEntry *e, HttpRequest *request)
 
icp_opcode icpGetCommonOpcode ()
 
LogTags icpLogFromICPCode (icp_opcode opcode)
 
void icpCreateAndSend (icp_opcode opcode, int flags, char const *url, int reqnum, int pad, int fd, const Ip::Address &from)
 
void icpDenyAccess (Ip::Address &from, char *url, int reqnum, int fd)
 
bool icpAccessAllowed (Ip::Address &from, HttpRequest *icp_request)
 
char const * icpGetUrlToSend (char *url)
 
HttpRequesticpGetRequest (char *url, int reqnum, int fd, Ip::Address &from)
 
static void doV2Query (int fd, Ip::Address &from, char *buf, icp_common_t header)
 
void icpHandleUdp (int sock, void *)
 
void icpOpenPorts (void)
 
void icpConnectionShutdown (void)
 
void icpClosePorts (void)
 
int icpSetCacheKey (const cache_key *key)
 
const cache_keyicpGetCacheKey (const char *url, int reqnum)
 

Variables

static icpUdpDataIcpQueueHead = NULL
 
static icpUdpDataIcpQueueTail = NULL
 
Comm::ConnectionPointer icpIncomingConn = NULL
 
Comm::ConnectionPointer icpOutgoingConn = NULL
 
static cache_key queried_keys [N_QUERIED_KEYS][SQUID_MD5_DIGEST_LENGTH]
 

Macro Definition Documentation

#define N_QUERIED_KEYS   8192

Definition at line 811 of file icp_v2.cc.

#define N_QUERIED_KEYS_MASK   8191

Definition at line 812 of file icp_v2.cc.

Referenced by icpGetCacheKey(), and icpSetCacheKey().

Function Documentation

char const* icpGetUrlToSend ( char *  url)

Definition at line 424 of file icp_v2.cc.

References rfc1738_escape, and w_space.

Variable Documentation

Definition at line 813 of file icp_v2.cc.

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors