Session.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
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 
9 /* DEBUG: section 49 SNMP Interface */
10 
11 #ifndef SQUID_SRC_SNMP_SESSION_H
12 #define SQUID_SRC_SNMP_SESSION_H
13 
14 #include "ipc/forward.h"
15 #include "snmp.h"
16 #include "snmp_session.h"
17 
18 namespace Snmp
19 {
20 
22 class Session: public snmp_session
23 {
24 public:
25  Session();
26  Session(const Session& session);
27  Session& operator = (const Session& session);
28  ~Session() { reset(); }
29 
30  void pack(Ipc::TypedMsgHdr& msg) const;
31  void unpack(const Ipc::TypedMsgHdr& msg);
32 
33 private:
34  void reset();
35 };
36 
37 } // namespace Snmp
38 
39 #endif /* SQUID_SRC_SNMP_SESSION_H */
40 
snmp_session wrapper add pack/unpack feature
Definition: Session.h:22
Definition: forward.h:14
void pack(Ipc::TypedMsgHdr &msg) const
prepare for sendmsg()
Definition: Session.cc:57
void unpack(const Ipc::TypedMsgHdr &msg)
restore struct from the message
Definition: Session.cc:76
void reset()
free internal members
Definition: Session.cc:46
struct msghdr with a known type, fixed-size I/O and control buffers
Definition: TypedMsgHdr.h:34
Session & operator=(const Session &session)
Definition: Session.cc:28

 

Introduction

Documentation

Support

Miscellaneous