Obsolete attributes in mib


When generating mib classes, is there a way to skip the columns which status are obsolete and only generate status is current?

docsQosServiceFlowId    OBJECT-TYPE
    SYNTAX          Unsigned32 (1..4294967295)
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION    "An index assigned to a service flow by CMTS."
    REFERENCE      "SP-RFIv1.1-I07-010829, Appendix C."
    ::= { docsQosServiceFlowEntry 1 }

docsQosServiceFlowProvisionedParamSetIndex  OBJECT-TYPE
    SYNTAX          Unsigned32 (0..4294967295)
    MAX-ACCESS      read-only
    STATUS          obsolete
    DESCRIPTION    "This object is obsolete."
    ::= { docsQosServiceFlowEntry 3 }

Or, is there a way to create row without giving those obsolete value?


Currently there is no code generation property that controls directly whether an obsolete object is generated or not. Thus, it is generated by default.

Nevertheless, currently three alternative options are available:

  1. You can use the code generation property skip=true to exclude such an object (column) from the generation. You need to set that property on each OID (subtree OID) you want to exclude.

  2. You can define a AGENT-CAPABILITIES MIB module that defines the supported objects in your agent in a detailed manner. This can be used to exclude obsolete MIB objects from you agent and even reduce the supported enumeration labels for some enumerated INTEGER objects, for example.

  3. Only for experts: You could modify the code generation template and put in some code there, that evaluates the STATUS field of the object an then skip it automatically.

The upcoming version 5.0 of AgenPro will include a property to do object filtering in a more generic way by directly using a code generation property.

Hi Frank,
When will the AgenPro 5.0 be released?

AgenPro 5.0 Release is planned for May 2020.