]>
Commit | Line | Data |
---|---|---|
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 | |
18 | typedef void PF(int, void *); | |
19 | ||
af14e062 | 20 | /// Abstraction layer for TCP, UDP, TLS, UDS and filedescriptor sockets. |
dc49061a A |
21 | namespace Comm |
22 | { | |
f9b72e0c AJ |
23 | |
24 | class Connection; | |
af14e062 | 25 | class ConnOpener; |
f9b72e0c AJ |
26 | |
27 | typedef RefCount<Comm::Connection> ConnectionPointer; | |
28 | ||
523c3de3 | 29 | typedef std::vector<Comm::ConnectionPointer> ConnectionList; |
f9b72e0c | 30 | |
97c81191 AJ |
31 | bool IsConnOpen(const Comm::ConnectionPointer &conn); |
32 | ||
b27668ec EB |
33 | // callback handler to process an FD which is available for writing. |
34 | PF HandleWrite; | |
f9b72e0c | 35 | |
b27668ec EB |
36 | /// Mark an FD to be watched for its IO status. |
37 | void SetSelect(int, unsigned int, PF *, void *, time_t); | |
38 | ||
39 | }; // namespace Comm | |
effdd841 | 40 | |
f9b72e0c | 41 | #endif /* _SQUID_COMM_FORWARD_H */ |
f53969cc | 42 |