]> git.ipfire.org Git - thirdparty/squid.git/blame - src/comm/forward.h
Source Format Enforcement (#532)
[thirdparty/squid.git] / src / comm / forward.h
CommitLineData
bbc27441 1/*
77b1029d 2 * Copyright (C) 1996-2020 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
f9b72e0c
AJ
9#ifndef _SQUID_COMM_FORWARD_H
10#define _SQUID_COMM_FORWARD_H
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;
f9b72e0c
AJ
26
27typedef RefCount<Comm::Connection> ConnectionPointer;
28
523c3de3 29typedef std::vector<Comm::ConnectionPointer> ConnectionList;
f9b72e0c 30
97c81191
AJ
31bool IsConnOpen(const Comm::ConnectionPointer &conn);
32
b27668ec
EB
33// callback handler to process an FD which is available for writing.
34PF HandleWrite;
f9b72e0c 35
b27668ec
EB
36/// Mark an FD to be watched for its IO status.
37void SetSelect(int, unsigned int, PF *, void *, time_t);
38
39}; // namespace Comm
effdd841 40
f9b72e0c 41#endif /* _SQUID_COMM_FORWARD_H */
f53969cc 42