]> git.ipfire.org Git - thirdparty/squid.git/blame - src/comm/forward.h
Fix SMP mgr:userhash, mgr:sourcehash, and mgr:carp reports (#1844)
[thirdparty/squid.git] / src / comm / forward.h
CommitLineData
bbc27441 1/*
b8ae064d 2 * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
bbc27441
AJ
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
ff9d9458
FC
9#ifndef SQUID_SRC_COMM_FORWARD_H
10#define SQUID_SRC_COMM_FORWARD_H
f9b72e0c 11
8bf217bd 12#include "base/RefCount.h"
523c3de3
FC
13
14#include <vector>
f9b72e0c 15
b27668ec
EB
16/// legacy CBDATA callback functions ABI definition for read or write I/O events
17/// \deprecated use CommCalls API instead where possible
18typedef void PF(int, void *);
19
af14e062 20/// Abstraction layer for TCP, UDP, TLS, UDS and filedescriptor sockets.
dc49061a
A
21namespace Comm
22{
f9b72e0c
AJ
23
24class Connection;
af14e062 25class ConnOpener;
1dde4660 26class TcpKeepAlive;
f9b72e0c
AJ
27
28typedef RefCount<Comm::Connection> ConnectionPointer;
29
97c81191
AJ
30bool IsConnOpen(const Comm::ConnectionPointer &conn);
31
b27668ec
EB
32// callback handler to process an FD which is available for writing.
33PF HandleWrite;
f9b72e0c 34
b27668ec
EB
35/// Mark an FD to be watched for its IO status.
36void SetSelect(int, unsigned int, PF *, void *, time_t);
37
38}; // namespace Comm
effdd841 39
ff9d9458 40#endif /* SQUID_SRC_COMM_FORWARD_H */
f53969cc 41