![Collaboration graph](classcbdata__coll__graph.png)
Public Member Functions | |
cbdata () | |
~cbdata () | |
void | check (int) const |
Static Public Member Functions | |
static cbdata * | FromUserData (const void *) |
Public Attributes | |
int | valid |
int32_t | locks |
cbdata_type | type |
long | cookie |
void * | data |
Static Public Attributes | |
static const long | Cookie |
Private Member Functions | |
MEMPROXY_CLASS (cbdata) | |
Detailed Description
Manage a set of registered callback data pointers. One of the easiest ways to make Squid coredump is to issue a callback to for some data structure which has previously been freed. With this class, we register (add) callback data pointers, lock them just before registering the callback function, validate them before issuing the callback, and then free them when finished.
Constructor & Destructor Documentation
◆ cbdata()
◆ ~cbdata()
cbdata::~cbdata | ( | ) |
Definition at line 101 of file cbdata.cc.
References cbdata_index, data, Mem::Allocator::freeOne(), CBDataIndex::pool, and type.
Member Function Documentation
◆ check()
|
inline |
◆ FromUserData()
|
static |
Definition at line 112 of file cbdata.cc.
References CbdataTable(), and data.
Referenced by cbdataInternalFree(), cbdataInternalLock(), cbdataInternalUnlock(), and cbdataReferenceValid().
◆ MEMPROXY_CLASS()
|
private |
Member Data Documentation
◆ cookie
long cbdata::cookie |
Definition at line 70 of file cbdata.cc.
Referenced by cbdataInternalAlloc(), and check().
◆ Cookie
|
static |
Definition at line 72 of file cbdata.cc.
Referenced by cbdataInternalAlloc(), and check().
◆ data
void* cbdata::data |
Definition at line 78 of file cbdata.cc.
Referenced by cbdataInternalAlloc(), cbdataRealFree(), FromUserData(), Ssl::HandleGeneratorReply(), and ~cbdata().
◆ locks
int32_t cbdata::locks |
Definition at line 66 of file cbdata.cc.
Referenced by cbdataInternalAlloc().
◆ type
cbdata_type cbdata::type |
Definition at line 67 of file cbdata.cc.
Referenced by cbdataInternalAlloc(), and ~cbdata().
◆ valid
int cbdata::valid |
Definition at line 65 of file cbdata.cc.
Referenced by cbdataInternalAlloc().
The documentation for this class was generated from the following file:
- src/cbdata.cc
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