Print Download PDF Send Feedback

Previous

Next

Interpreting Error Messages

This section lists and explains certain common error status values that can appear in SNMP messages. Within the PDU, the third field can include an error-status integer that refers to a specific problem. The integer zero (0) means that no errors were detected. When the error field is anything other than 0, the next field includes an error-index value that identifies the variable, or object, in the variable-bindings list that caused the error.

This table lists the error status codes and their meanings:

Error status code

Meaning

Error status code

Meaning

0

noError

10

wrongValue

1

tooBig

11

noCreation

2

NoSuchName

12

inconsistentValue

3

BadValue

13

resourceUnavailable

4

ReadOnly

14

commitFailed

5

genError

15

undoFailed

6

noAccess

16

authorizationError

7

wrongType

17

notWritable

8

wrongLength

18

inconsistentName

9

wrongEncoding

 

 

Note - You might not see the codes. The SNMP manager or utility interprets the codes and then logs the appropriate message.

The subsequent, or fourth field, contains the error index when the error-status field is nonzero, that is, when the error-status field returns a value other than zero, which indicates that an error occurred. The error-index value identifies the variable, or object, in the variable-bindings list that caused the error. The first variable in the list has index 1, the second has index 2, and so on.

The next, or fifth field, is the variable-bindings field. It consists of a sequence of pairs; the first is the identifier. The second element is one of these options: value, unSpecified, noSuchOjbect, noSuchInstance, or EndofMibView.
This table describes each element.

Variable-bindings element

Description

value

Value that is associated with each object instance. This value is specified in a PDU request.

unSpecified

A NULL value is used in retrieval requests.

noSuchObject

Indicates that the agent does not implement the object, to which it refers by this object identifier.

noSuchInstance

Indicates that this object does not exist for this operation.

endOfMIBView

Indicates an attempt to reference an object identifier that is beyond the end of the MIB at the agent.

GetRequest

This table lists possible value field sets in the response PDU or error-status messages when performing a GetRequest.

Value Field Set

Description

noSuchObject

If a variable does not have an OBJECT IDENTIFIER prefix that exactly matches the prefix of any variable accessible by this request, its value field is set to noSuchObject.

noSuch Instance

If the variable's name does not exactly match the name of a variable, its value field is set to noSuchInstance.

genErr

If the processing of a variable fails for any other reason, the responding entity returns genErr and a value in the error-index field that is the index of the problem object in the variable-bindings field.

tooBig

If the size of the message that encapsulates the generated response PDU exceeds a local limitation or the maximum message size of the request’s source party, then the response PDU is discarded and a new response PDU is constructed. The new response PDU has an error-status of tooBig, an error-index of zero, and an empty variable-bindings field.

GetNextRequest

The only values that can be returned as the second element in the variable-bindings field to a GetNextRequest when an error-status code occurs are unSpecified or endOfMibView.

GetBulkRequest

The GetBulkRequest minimizes the number of protocol exchanges and lets the SNMPv2 manager request that the response is large as possible.

The GetBulkRequest PDU has two fields that do not appear in the other PDUs: non-repeaters and max-repetitions. The non-repeaters field specifies the number of variables in the variable-bindings list, for which a single-lexicographic successor is to be returned. The max-repetitions field specifies the number of lexicographic successors to be returned for the remaining variables in the variable-bindings list.

If at any point in the process, a lexicographic successor does not exist, the endofMibView value is returned with the name of the last lexicographic successor, or, if there were no successors, the name of the variable in the request.

If the processing of a variable name fails for any reason other than endofMibView, no values are returned. Instead, the responding entity returns a response PDU with an error-status of genErr and a value in the error-index field that is the index of the problem object in the variable-bindings field.