Squid Web Cache master
Loading...
Searching...
No Matches
StoreIOState.cc
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/* DEBUG: section 20 Swap Dir base object */
10
11#include "squid.h"
12#include "debug/Stream.h"
13#include "defines.h"
14#include "Store.h"
15#include "StoreIOState.h"
16
17void *
18StoreIOState::operator new (size_t)
19{
20 assert(0);
21 return (void *)1;
22}
23
24void
25StoreIOState::operator delete (void *)
26{
27 assert(0);
28}
29
31 swap_dirn(-1),
32 swap_filen(-1),
33 e(nullptr),
34 mode(O_BINARY),
35 offset_(0),
36 callback(cbIo),
37 callback_data(cbdataReference(data))
38{
39 read.callback = nullptr;
40 read.callback_data = nullptr;
41 flags.closing = false;
42}
43
45{
46 debugs(20,3, "StoreIOState::~StoreIOState: " << this);
47
48 cbdataReferenceDone(read.callback_data);
50}
51
53{
54 return e && e->swap_filen == swap_filen;
55}
56
#define assert(EX)
Definition assert.h:17
#define cbdataReferenceDone(var)
Definition cbdata.h:357
#define cbdataReference(var)
Definition cbdata.h:348
sfileno swap_filen
unique ID inside a cache_dir for swapped out entries; -1 for others
Definition Store.h:235
~StoreIOState() override
void * callback_data
struct StoreIOState::@125 flags
sfileno swap_filen
StoreIOState(StoreIOState::STIOCB *, void *cbData)
StoreEntry * e
bool touchingStoreEntry() const
struct StoreIOState::@124 read
void STIOCB(void *their_data, int errflag, StoreIOState::Pointer self)
#define debugs(SECTION, LEVEL, CONTENT)
Definition Stream.h:192
#define O_BINARY
Definition defines.h:134
int const char size_t