]> git.ipfire.org Git - thirdparty/squid.git/blame - src/snmp/Response.cc
SourceFormat Enforcement
[thirdparty/squid.git] / src / snmp / Response.cc
CommitLineData
51ea0904
CT
1/*
2 * $Id$
3 *
4 * DEBUG: section 49 SNMP Interface
5 *
6 */
7
f7f3304a 8#include "squid.h"
51ea0904
CT
9#include "base/TextException.h"
10#include "ipc/Messages.h"
11#include "ipc/TypedMsgHdr.h"
d6e3ad20 12#include "snmp/Response.h"
51ea0904 13
51ea0904
CT
14std::ostream& Snmp::operator << (std::ostream& os, const Response& response)
15{
16 os << "response: {requestId: " << response.requestId << '}';
17 return os;
18}
19
20Snmp::Response::Response(unsigned int aRequestId):
8fb5a96c 21 Ipc::Response(aRequestId), pdu()
51ea0904
CT
22{
23}
24
25Snmp::Response::Response(const Response& response):
8fb5a96c 26 Ipc::Response(response.requestId), pdu(response.pdu)
51ea0904
CT
27{
28}
29
30Snmp::Response::Response(const Ipc::TypedMsgHdr& msg):
8fb5a96c 31 Ipc::Response(0)
51ea0904
CT
32{
33 msg.checkType(Ipc::mtSnmpResponse);
34 msg.getPod(requestId);
35 pdu.unpack(msg);
36}
37
38void
39Snmp::Response::pack(Ipc::TypedMsgHdr& msg) const
40{
41 msg.setType(Ipc::mtSnmpResponse);
42 msg.putPod(requestId);
43 pdu.pack(msg);
44}
45
46Ipc::Response::Pointer
47Snmp::Response::clone() const
48{
49 return new Response(*this);
50}