beautypg.com

1 processing *_set routines – Compaq AAR04BCTE User Manual

Page 82

background image

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