#include "squid.h"#include "CacheManager.h"#include "radix.h"#include "HttpRequest.h"#include "StoreClient.h"#include "Store.h"#include "acl/Acl.h"#include "acl/Asn.h"#include "acl/Checklist.h"#include "acl/SourceAsn.h"#include "acl/DestinationAsn.h"#include "acl/DestinationIp.h"#include "HttpReply.h"#include "forward.h"#include "wordlist.h"
Go to the source code of this file.
Classes | |
| class | m_ADDR |
| struct | as_info |
| struct | ASState |
| struct | rtentry_t |
Defines | |
| #define | WHOIS_PORT 43 |
| #define | AS_REQBUF_SZ 4096 |
Functions | |
| static int | asnAddNet (char *, int) |
| static void | asnCacheStart (int as) |
| static int | destroyRadixNode (struct squid_radix_node *rn, void *w) |
| static int | printRadixNode (struct squid_radix_node *rn, void *sentry) |
| void | asnAclInitialize (ACL *acls) |
| static void | asStateFree (void *data) |
| static void | destroyRadixNodeInfo (as_info *) |
| int | asnMatchIp (CbDataList< int > *data, Ip::Address &addr) |
| static void | asnRegisterWithCacheManager (void) |
| CBDATA_TYPE (ASState) | |
| void | asnInit (void) |
| void | asnFreeMemory (void) |
| static void | asnStats (StoreEntry *sentry) |
| static void | asHandleReply (void *data, StoreIOBuffer result) |
Variables | |
| struct squid_radix_node_head * | AS_tree_head |
| static STCB | asHandleReply |
| static OBJH | asnStats |
| SQUIDCEXTERN int | squid_max_keylen |
Define Documentation
| #define AS_REQBUF_SZ 4096 |
Definition at line 53 of file Asn.cc.
Referenced by asHandleReply(), and asnCacheStart().
Function Documentation
| static void asHandleReply | ( | void * | data, | |
| StoreIOBuffer | result | |||
| ) | [static] |
Definition at line 271 of file Asn.cc.
References ASState::as_number, AS_REQBUF_SZ, asHandleReply, asnAddNet(), assert, asStateFree(), StoreIOBuffer::data, ASState::dataRead, debugs, EBIT_TEST, ASState::entry, ENTRY_ABORTED, StoreIOBuffer::error, StoreIOBuffer::flags, StoreEntry::flags, StoreEntry::getReply(), HTTP_OK, StoreIOBuffer::length, StoreIOBuffer::offset, ASState::offset, ASState::reqbuf, ASState::reqofs, ASState::sc, HttpReply::sline, HttpStatusLine::status, STORE_PENDING, StoreEntry::store_status, storeClientCopy(), StoreEntry::url(), and xisspace.
| void asnAclInitialize | ( | ACL * | acls | ) |
| static int asnAddNet | ( | char * | as_string, | |
| int | as_number | |||
| ) | [static] |
add a network (addr, mask) to the radix tree, with matching AS number
Definition at line 395 of file Asn.cc.
References m_ADDR::addr, addr, as_info::as_number, assert, debugs, rtentry_t::e_addr, rtentry_t::e_info, rtentry_t::e_mask, rtentry_t::e_nodes, CbDataList< C >::find(), CbDataList< C >::next, NULL, squid_rn_addroute(), squid_rn_lookup(), squid_rn_match(), xfree, and xmalloc.
Referenced by asHandleReply().
| static void asnCacheStart | ( | int | as | ) | [static] |
Definition at line 234 of file Asn.cc.
References ASState::as_number, AS_REQBUF_SZ, SquidConfig::as_whois_server, asHandleReply, assert, cbdataAlloc, Config, HttpRequest::CreateFromUrl(), ASState::dataRead, debugs, ASState::entry, FwdState::fwdStart(), HTTPMSGLOCK, LOCAL_ARRAY, StoreEntry::lock(), METHOD_GET, NULL, ASState::offset, ASState::reqbuf, ASState::reqofs, ASState::request, ASState::sc, storeClientCopy(), storeClientListAdd(), storeCreateEntry(), and storeGetPublic().
Referenced by ACLASN::prepareForUse().
| int asnMatchIp | ( | CbDataList< int > * | data, | |
| Ip::Address & | addr | |||
| ) |
Definition at line 138 of file Asn.cc.
References a, m_ADDR::addr, as_info::as_number, assert, debugs, CbDataList< C >::element, CbDataList< C >::next, NULL, and squid_rn_match().
Referenced by ACLASN::match().
| static void asnRegisterWithCacheManager | ( | void | ) | [static] |
Definition at line 190 of file Asn.cc.
References asnStats, CacheManager::GetInstance(), and CacheManager::registerAction().
Referenced by asnInit().
| static void asnStats | ( | StoreEntry * | sentry | ) | [static] |
Definition at line 224 of file Asn.cc.
References printRadixNode(), squid_rn_walktree(), and storeAppendPrintf().
| static void asStateFree | ( | void * | data | ) | [static] |
Definition at line 380 of file Asn.cc.
References cbdataFree, debugs, ASState::entry, HTTPMSGUNLOCK, ASState::request, ASState::sc, storeUnregister(), StoreEntry::unlock(), and StoreEntry::url().
Referenced by asHandleReply().
| CBDATA_TYPE | ( | ASState | ) |
| static int destroyRadixNode | ( | struct squid_radix_node * | rn, | |
| void * | w | |||
| ) | [static] |
Definition at line 480 of file Asn.cc.
References debugs, destroyRadixNodeInfo(), rtentry_t::e_info, squid_radix_node::rn_flags, RNF_ROOT, squid_rn_delete(), and xfree.
Referenced by asnFreeMemory().
| static void destroyRadixNodeInfo | ( | as_info * | e_info | ) | [static] |
Definition at line 501 of file Asn.cc.
References as_info::as_number, and CbDataList< C >::next.
Referenced by destroyRadixNode().
| static int printRadixNode | ( | struct squid_radix_node * | rn, | |
| void * | sentry | |||
| ) | [static] |
Definition at line 516 of file Asn.cc.
References m_ADDR::addr, addr, assert, rtentry_t::e_addr, rtentry_t::e_info, rtentry_t::e_mask, CbDataList< C >::element, MAX_IPSTRLEN, CbDataList< C >::next, and storeAppendPrintf().
Referenced by asnStats().
Variable Documentation
| struct squid_radix_node_head* AS_tree_head |
STCB asHandleReply [static] |
Definition at line 113 of file Asn.cc.
Referenced by asHandleReply(), and asnCacheStart().
OBJH asnStats [static] |
Definition at line 133 of file Asn.cc.
Referenced by asnRegisterWithCacheManager().
| SQUIDCEXTERN int squid_max_keylen |
Search
Introduction
- About Squid
- Why Squid?
- Squid Developers
- How to Help Out
- Getting Squid
- Donate
- Squid Deployment Case-Studies
Documentation
- FAQ | Wiki | Book
- Configuration Reference
- Configuration Guide - Visolve
- Configuration Examples
- Users guide
- Non-English
- Security Advisories
- More...
Support
- Bugzilla Database
- Mailing lists
- Contacting us
- Commercial services
- Project Sponsors
- Squid-based products
