Dangerous SNMP
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Pages
types.hpp
1 #pragma once
2 
3 #include "numericoid.hpp"
4 #include "variant.hpp"
5 
6 #include <cstdint>
7 #include <list>
8 #include <memory>
9 #include <vector>
10 
11 
12 namespace dangerous { namespace snmp {
13 
19 public:
24  enum Type {
28  MD5,
31  };
32 };
33 
38 class Encryption {
39 public:
44  enum Type {
48  DES,
51  };
52 };
53 
60 public:
65  enum Type {
70  };
71 };
72 
77 class VarBind {
78 public:
82  VarBind() {}
83 
87  VarBind( const VarBind& varbind ) : oid( varbind.oid ), value( varbind.value ) {}
88 
93  VarBind( const NumericOid& oid ) : oid( oid ) {}
94 
100  VarBind( const NumericOid& oid, const Variant& value ) : oid( oid ), value( value ) {}
101 
103  ~VarBind() {}
104 
105 public:
111 };
112 
116 typedef std::vector< std::unique_ptr<VarBind> > VarBindList;
117 
118 } }
119 
~VarBind()
TODO.
Definition: types.hpp:103
HMAC-MD5-96 authentication.
Definition: types.hpp:28
No encryption will be used.
Definition: types.hpp:46
A response is expected.
Definition: types.hpp:69
VarBind(const NumericOid &oid)
OID constructor; the OID is set accordingly and the Variant is null.
Definition: types.hpp:93
Variant value
This is its value.
Definition: types.hpp:110
No authentication will be used.
Definition: types.hpp:26
This is a container class for the type of encryption used in SNMPv3.
Definition: types.hpp:38
This class is a wrapper around an enumeration for the "confirmed class" of a PDU. ...
Definition: types.hpp:59
A Variant defines an arbitrary value (within the scope of SNMP).
Definition: variant.hpp:78
VarBind(const VarBind &varbind)
Copy constructor; this copies the contents of another VarBind.
Definition: types.hpp:87
Type
This defines the type of encryption.
Definition: types.hpp:44
This defines a variable binding, or "varbind".
Definition: types.hpp:77
CBC-DES encryption.
Definition: types.hpp:48
Type
This defines the type of authentication.
Definition: types.hpp:24
A NumericOid represents an "true" OID; that is, one identified by a series of integers (as opposed to...
Definition: numericoid.hpp:22
NumericOid oid
This is the OID.
Definition: types.hpp:107
VarBind(const NumericOid &oid, const Variant &value)
OID/value constructor; the OID is set accordingly and the Variant is as well.
Definition: types.hpp:100
No response is expected.
Definition: types.hpp:67
VarBind()
Default constructor; both the OID and the Variant are null values.
Definition: types.hpp:82
This is a container class for the type of authentication used in SNMPv3.
Definition: types.hpp:18
CFB128-AES-128 encryption.
Definition: types.hpp:50
Type
A Type represents one of the two defined values for the "confirmed class" of a PDU.
Definition: types.hpp:65
HMAC-SHA-96 authentication.
Definition: types.hpp:30
std::vector< std::unique_ptr< VarBind > > VarBindList
This defines a list of varbinds.
Definition: types.hpp:116