]> git.ipfire.org Git - thirdparty/squid.git/blob - src/client_db.h
Source Format Enforcement (#532)
[thirdparty/squid.git] / src / client_db.h
1 /*
2 * Copyright (C) 1996-2020 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 00 Client Database */
10
11 #ifndef SQUID_CLIENT_DB_H_
12 #define SQUID_CLIENT_DB_H_
13
14 #include "anyp/ProtocolType.h"
15 #include "ip/Address.h"
16 #include "LogTags.h"
17 #if SQUID_SNMP
18 #include "cache_snmp.h"
19 #include "snmp_vars.h"
20 #endif
21
22 namespace Ip
23 {
24 class Address;
25 }
26
27 class StoreEntry;
28 class ClientInfo;
29
30 void clientdbUpdate(const Ip::Address &, const LogTags &, AnyP::ProtocolType, size_t);
31 int clientdbCutoffDenied(const Ip::Address &);
32 void clientdbDump(StoreEntry *);
33 void clientdbFreeMemory(void);
34 int clientdbEstablished(const Ip::Address &, int);
35
36 #if USE_DELAY_POOLS
37 void clientdbSetWriteLimiter(ClientInfo * info, const int writeSpeedLimit,const double initialBurst,const double highWatermark);
38 ClientInfo * clientdbGetInfo(const Ip::Address &addr);
39 #endif
40
41 #if SQUID_SNMP
42 Ip::Address *client_entry(Ip::Address *current);
43 variable_list *snmp_meshCtblFn(variable_list *, snint *);
44 #endif
45
46 #endif /* SQUID_CLIENT_DB_H_ */
47