]>
Commit | Line | Data |
---|---|---|
51ea0904 | 1 | /* |
f70aedc4 | 2 | * Copyright (C) 1996-2021 The Squid Software Foundation and contributors |
51ea0904 | 3 | * |
bbc27441 AJ |
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. | |
51ea0904 CT |
7 | */ |
8 | ||
bbc27441 AJ |
9 | /* DEBUG: section 49 SNMP Interface */ |
10 | ||
51ea0904 CT |
11 | #ifndef SQUID_SNMPX_REQUEST_H |
12 | #define SQUID_SNMPX_REQUEST_H | |
13 | ||
14 | #include "ip/Address.h" | |
15 | #include "ipc/forward.h" | |
16 | #include "ipc/Request.h" | |
d6e3ad20 CT |
17 | #include "snmp/Pdu.h" |
18 | #include "snmp/Session.h" | |
51ea0904 | 19 | |
51ea0904 CT |
20 | namespace Snmp |
21 | { | |
22 | ||
23 | /// SNMP request | |
24 | class Request: public Ipc::Request | |
25 | { | |
26 | public: | |
4c218615 | 27 | Request(int aRequestorId, Ipc::RequestId aRequestId, const Pdu& aPdu, |
8fb5a96c | 28 | const Session& aSession, int aFd, const Ip::Address& anAddress); |
51ea0904 CT |
29 | |
30 | explicit Request(const Ipc::TypedMsgHdr& msg); ///< from recvmsg() | |
31 | /* Ipc::Request API */ | |
32 | virtual void pack(Ipc::TypedMsgHdr& msg) const; | |
33 | virtual Pointer clone() const; | |
34 | ||
51ea0904 CT |
35 | public: |
36 | Pdu pdu; ///< SNMP protocol data unit | |
8fb5a96c | 37 | Session session; ///< SNMP session |
51ea0904 CT |
38 | int fd; ///< client connection descriptor |
39 | Ip::Address address; ///< client address | |
40 | }; | |
41 | ||
51ea0904 CT |
42 | } // namespace Snmp |
43 | ||
44 | #endif /* SQUID_SNMPX_REQUEST_H */ | |
f53969cc | 45 |