AGENT++  4.0.3
Public Member Functions | List of all members
SnmpSecurityModel Class Reference

SnmpSecurityModel. More...

#include <snmp_textual_conventions.h>

Inheritance diagram for SnmpSecurityModel:
SnmpInt32MinMax MibLeaf MibEntry ThreadManager Synchronized

Public Member Functions

 SnmpSecurityModel (const Oidx &, mib_access, int, int)
 
virtual ~SnmpSecurityModel ()
 
virtual MibEntryPtr clone ()
 Clone the receiver object.
 
- Public Member Functions inherited from SnmpInt32MinMax
 SnmpInt32MinMax (const Oidx &, mib_access, const int, int, int, int)
 Construct a SnmpInt32MinMax with initial value.
 
 SnmpInt32MinMax (const Oidx &, mib_access, int, int)
 Construct a SnmpIn32MinMax without initial value (will be 0).
 
virtual bool value_ok (const Vbx &)
 Check whether the receiver's value may be set to the given new value.
 
int get_state ()
 
void set_state (int)
 
- Public Member Functions inherited from MibLeaf
 MibLeaf ()
 Default constructor.
 
 MibLeaf (const Oidx &, mib_access, NS_SNMP SmiUINT32)
 Construct a MibLeaf object.
 
 MibLeaf (const Oidx &, mib_access, NS_SNMP SnmpSyntax *)
 Construct a MibLeaf object.
 
 MibLeaf (const Oidx &, mib_access, NS_SNMP SnmpSyntax *, int)
 Construct a MibLeaf object.
 
 MibLeaf (const MibLeaf &)
 Copy Constructor.
 
virtual ~MibLeaf ()
 Destructor.
 
virtual void init (NS_SNMP SnmpSyntax *, int)
 Initialize a MibLeaf object.
 
virtual mib_type type () const
 Return the type of the receiver.
 
virtual bool serialize (char *&, int &)
 Serialize the value of the receiver.
 
virtual bool deserialize (char *, int &)
 Read the value of the receiver from a byte stream.
 
virtual NS_SNMP SmiUINT32 get_syntax () const
 Get the syntax of the receiver's value.
 
virtual Vbx get_value () const
 Get the value of the receiver.
 
virtual int get_value (NS_SNMP SnmpSyntax &s) const
 Get the value of the receiver.
 
virtual int get_value (int &i) const
 Get the value of the receiver.
 
virtual int get_value (long &i) const
 Get the value of the receiver.
 
virtual int get_value (unsigned long &i) const
 Get the value of the receiver.
 
virtual int get_value (char *c) const
 Get the value of the receiver.
 
virtual void set_value (const NS_SNMP SnmpSyntax &)
 Set the value of the receiver by value.
 
virtual void set_value (const unsigned long)
 Set the unsigned integer value of the receiver.
 
virtual int set_value (const Vbx &)
 Set the value of the receiver from a variable binding and checks for validity of the variable binding and compatible syntax and oid.
 
virtual void replace_value (NS_SNMP SnmpSyntax *s)
 Set the value of the receiver by reference.
 
virtual OidxPtr max_key ()
 Return the immediate successor of the greatest object identifier within the receiver's scope.
 
virtual void get_request (Request *, int)
 Interface methods dispatch table <-> instrumentation.
 
virtual void get_next_request (Request *, int)
 Let the receiver process a SNMP GETNEXT subrequest.
 
virtual int commit_set_request (Request *, int)
 Let the receiver commit a SNMP SET subrequest.
 
virtual int prepare_set_request (Request *, int &)
 Let the receiver prepare a SNMP SET subrequest.
 
virtual int undo_set_request (Request *, int &)
 Let the receiver undo a SNMP SET subrequest.
 
virtual void cleanup_set_request (Request *, int &)
 Clean up resources used for performing (or undoing) set requests.
 
virtual int set (const Vbx &vb)
 Set the receiver's value and backup its old value for a later undo.
 
virtual int unset ()
 Undo a previous set.
 
MibTableget_reference_to_table ()
 Return a pointer to the table the receiver belongs to.
 
MibTableRowget_reference_to_row ()
 Return a pointer to the row the receiver belongs to.
 
int valid ()
 Gets the flags (bits) that determine the type/stage of validity of the leaf's value.
 
bool has_default ()
 Return whether the receiver has a default value.
 
bool is_locked ()
 Return whether the receiver has a default value.
 
void set_reference_to_table (MibTable *t)
 Set the receiver's reference to its table.
 
void set_reference_to_row (MibTableRow *r)
 Set the receiver's reference to its row.
 
void set_access (mib_access a)
 Set the maximum access rights of the receiver.
 
Oidx get_oid () const
 Get the instance OID of the MibLeaf object.
 
- Public Member Functions inherited from MibEntry
 MibEntry ()
 Default constructor.
 
 MibEntry (const Oidx &, mib_access)
 Construct a MibEntry instance with a given object identifier and maximum access rights.
 
 MibEntry (const MibEntry &)
 Copy constructor.
 
virtual ~MibEntry ()
 Destructor.
 
virtual Oidx find_succ (const Oidx &, Request *req=0)
 Return the successor of a given object identifier within the receiver's scope and the context of a given Request.
 
virtual void load_from_file (const char *)
 Load the value(s) of the receiver node from a file.
 
virtual void save_to_file (const char *)
 Save the value(s) of the receiver node to a file.
 
virtual bool is_empty ()
 Check whether the receiver node contains any instance of a managed object.
 
virtual void notify_change (const Oidx &, mib_change)
 Notify all registered nodes of changes to an object managed by the receiver node.
 
virtual void register_for_notifications (MibEntry *)
 Register an MibEntry object to receive notifications about changes of the receiver node.
 
virtual void add_change_notification (MibEntry *e)
 Wrapper function for register_for_notifications.
 
virtual void change_notification (const Oidx &, mib_change)
 Receive a notification about changes to a managed object.
 
OidxPtr key ()
 Return a pointer to the key (object identifier) of the receiver.
 
virtual mib_access get_access ()
 Return the maximum access rights for the managed object represented by the receiver node.
 
virtual bool is_volatile ()
 Check whether the entry is volatile or not.
 
virtual void reset ()
 Resets (clears) the content of this entry.
 
int operator< (const MibEntry &) const
 
int operator> (const MibEntry &) const
 
int operator== (const MibEntry &) const
 
int operator< (const Oidx &) const
 
int operator> (const Oidx &) const
 
int operator<= (const Oidx &) const
 
int operator>= (const Oidx &) const
 
int operator== (const Oidx &) const
 
- Public Member Functions inherited from ThreadManager
 ThreadManager ()
 Default constructor.
 
virtual ~ThreadManager ()
 Destructor.
 
void start_synch ()
 Start synchronized execution.
 
void end_synch ()
 End synchronized execution.
 
- Public Member Functions inherited from Synchronized
 Synchronized ()
 
 ~Synchronized ()
 
void wait ()
 Causes current thread to wait until another thread invokes the notify() method or the notifyAll() method for this object.
 
bool wait (unsigned long timeout)
 Causes current thread to wait until either another thread invokes the notify() method or the notifyAll() method for this object, or a specified amount of time has elapsed.
 
void notify ()
 Wakes up a single thread that is waiting on this object's monitor.
 
void notify_all ()
 Wakes up all threads that are waiting on this object's monitor.
 
bool lock ()
 Enter a critical section.
 
TryLockResult trylock ()
 Try to enter a critical section.
 
bool unlock ()
 Leave a critical section.
 

Additional Inherited Members

- Public Types inherited from Synchronized
enum  TryLockResult { LOCKED = 1, BUSY = 0, OWNED = -1 }
 
- Static Public Member Functions inherited from ThreadManager
static void start_global_synch ()
 Start global synchronized execution.
 
static void end_global_synch ()
 End global synchronized execution.
 
- Protected Member Functions inherited from MibLeaf
int get_value_mode ()
 Return the value handle mode.
 
void set_validity (int flags)
 Sets the flags (bits) that determine the type/stage of validity of the leaf's value.
 
void set_syntax (NS_SNMP SmiUINT32)
 Set the syntax of the receiver's value and delete the old value.
 
void free_value ()
 Frees the receiver's value and sets it to NULL.
 
- Protected Attributes inherited from MibLeaf
NS_SNMP SnmpSyntax * value
 
NS_SNMP SnmpSyntax * undo
 
int value_mode
 
int validity
 Set of flags (bits) that determine the type/stage of validity of the leaf's value.
 
MibTablemy_table
 
MibTableRowmy_row
 

Detailed Description

SnmpSecurityModel.

An identifier that uniquely identifies a securityModel of the Security Subsystem within the SNMP Management Architecture.

The values for securityModel are allocated as follows:

This scheme for allocation of securityModel values allows for a maximum of 255 standards- based Security Models, and for a maximum of 255 Security Models per enterprise.

It is believed that the assignment of new securityModel values will be rare in practice because the larger the number of simultaneously utilized Security Models, the larger the chance that interoperability will suffer. Consequently, it is believed that such a range will be sufficient. In the unlikely event that the standards committee finds this number to be insufficient over time, an enterprise number can be allocated to obtain an additional 255 possible values.

Note that the most significant bit must be zero; hence, there are 23 bits allocated for various organizations to design and define non-standard securityModels. This limits the ability to define new proprietary implementations of Security Models to the first 8,388,608 enterprises.

It is worthwhile to note that, in its encoded form, the securityModel value will normally require only a single byte since, in practice, the leftmost bits will be zero for most messages and sign extension is suppressed by the encoding rules.

As of this writing, there are several values of securityModel defined for use with SNMP or reserved for use with supporting MIB objects. They are as follows:

0  reserved for 'any'
1  reserved for SNMPv1
2  reserved for SNMPv2c
3  User-Based Security Model (USM)
Author
Frank Fock
Version
3.3

Constructor & Destructor Documentation

SnmpSecurityModel::SnmpSecurityModel ( const Oidx ,
mib_access  ,
int  ,
int   
)
virtual SnmpSecurityModel::~SnmpSecurityModel ( )
virtual

Member Function Documentation

virtual MibEntryPtr SnmpSecurityModel::clone ( )
virtual

Clone the receiver object.

Returns
A pointer to the clone.

Reimplemented from SnmpInt32MinMax.


The documentation for this class was generated from the following file: