eSNMP API Routines
*_set Routine
Return Values
ESNMP_MTHD_noError
The routine completed successfully.
ESNMP_MTHD_notWritable
The requested object cannot be set or was not
implemented.
ESNMP_MTHD_wrongType
The data type for the requested value is the
wrong type.
ESNMP_MTHD_
wrongLength
The requested value is the wrong length.
ESNMP_MTHD_
wrongEncoding
The requested value is represented incorrectly.
ESNMP_MTHD_wrongValue
The requested value is out of range.
ESNMP_MTHD_noCreation
The requested instance can never be created.
ESNMP_MTHD_
inconsistentName
The requested instance cannot currently be
created.
ESNMP_MTHD_
inconsistentValue
The requested value is not consistent.
ESNMP_MTHD_
resourceUnavailable
A failure due to some resource constraint.
ESNMP_MTHD_genErr
A general processing error.
ESNMP_MTHD_
commitFailed
The commit phase failed.
ESNMP_MTHD_undoFailed
The undo phase failed.
5.2.1 Processing *_set Routines
This following is the sequence of operations performed for
*_set
routines
1.
Every variable binding is parsed and its object is located in the object table. A
METHOD structure is created for each VARBIND structure. These METHOD
structures point to a ROW_CONTEXT structure, which is useful for handling
these phases. Objects in the same conceptual row all point to the same ROW_
CONTEXT structure. This determination is made by checking the following:
•
The referenced objects are in the same MIB group.
•
The VARBIND structures have the same instance OIDs.
2.
Each ROW_CONTEXT structure is loaded with the instance information
for that conceptual row. The ROW_CONTEXT structure context and save
fields are set to NULL, and the state field is set to ESNMP_SET_UNKNOWN
structure.
3.
The method routine for each object is called and is passed its METHOD
structure with an action code of ESNMP_ACT_SET.
If all method routines return success, a single method routine (the last
one called for the row) is called for each row, with method->action equal to
ESNMP_ACT_COMMIT.
5–24 eSNMP API Routines