]> git.ipfire.org Git - thirdparty/squid.git/blame - src/snmpx/Request.h
Amos requests
[thirdparty/squid.git] / src / snmpx / Request.h
CommitLineData
51ea0904
CT
1/*
2 * $Id$
3 *
4 * DEBUG: section 49 SNMP Interface
5 *
6 */
7
8#ifndef SQUID_SNMPX_REQUEST_H
9#define SQUID_SNMPX_REQUEST_H
10
11#include "ip/Address.h"
12#include "ipc/forward.h"
13#include "ipc/Request.h"
14#include "snmpx/Pdu.h"
15#include "snmpx/Session.h"
16
17
18namespace Snmp
19{
20
21/// SNMP request
22class Request: public Ipc::Request
23{
24public:
25 Request(int aRequestorId, unsigned int aRequestId, const Pdu& aPdu,
26 const Session& aSession, int aFd, const Ip::Address& anAddress);
27
28 explicit Request(const Ipc::TypedMsgHdr& msg); ///< from recvmsg()
29 /* Ipc::Request API */
30 virtual void pack(Ipc::TypedMsgHdr& msg) const;
31 virtual Pointer clone() const;
32
33private:
34 Request(const Request& request);
35
36public:
37 Pdu pdu; ///< SNMP protocol data unit
38 Session session; ///< SNMP session
39 int fd; ///< client connection descriptor
40 Ip::Address address; ///< client address
41};
42
43
44} // namespace Snmp
45
46#endif /* SQUID_SNMPX_REQUEST_H */