Blame mibs/ietf/SNMPv2-CONF

Packit 022b05
SNMPv2-CONF DEFINITIONS ::= BEGIN
Packit 022b05
Packit 022b05
IMPORTS ObjectName, NotificationName, ObjectSyntax
Packit 022b05
                                               FROM SNMPv2-SMI;
Packit 022b05
Packit 022b05
-- definitions for conformance groups
Packit 022b05
Packit 022b05
OBJECT-GROUP MACRO ::=
Packit 022b05
BEGIN
Packit 022b05
    TYPE NOTATION ::=
Packit 022b05
                  ObjectsPart
Packit 022b05
                  "STATUS" Status
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
                  ReferPart
Packit 022b05
Packit 022b05
    VALUE NOTATION ::=
Packit 022b05
                  value(VALUE OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    ObjectsPart ::=
Packit 022b05
                  "OBJECTS" "{" Objects "}"
Packit 022b05
    Objects ::=
Packit 022b05
                  Object
Packit 022b05
                | Objects "," Object
Packit 022b05
    Object ::=
Packit 022b05
                  value(ObjectName)
Packit 022b05
Packit 022b05
    Status ::=
Packit 022b05
                  "current"
Packit 022b05
                | "deprecated"
Packit 022b05
                | "obsolete"
Packit 022b05
Packit 022b05
    ReferPart ::=
Packit 022b05
                  "REFERENCE" Text
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    -- a character string as defined in [2]
Packit 022b05
    Text ::= value(IA5String)
Packit 022b05
END
Packit 022b05
Packit 022b05
-- more definitions for conformance groups
Packit 022b05
Packit 022b05
NOTIFICATION-GROUP MACRO ::=
Packit 022b05
BEGIN
Packit 022b05
    TYPE NOTATION ::=
Packit 022b05
                  NotificationsPart
Packit 022b05
                  "STATUS" Status
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
                  ReferPart
Packit 022b05
Packit 022b05
    VALUE NOTATION ::=
Packit 022b05
                  value(VALUE OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    NotificationsPart ::=
Packit 022b05
                  "NOTIFICATIONS" "{" Notifications "}"
Packit 022b05
    Notifications ::=
Packit 022b05
                  Notification
Packit 022b05
                | Notifications "," Notification
Packit 022b05
    Notification ::=
Packit 022b05
                  value(NotificationName)
Packit 022b05
Packit 022b05
    Status ::=
Packit 022b05
                  "current"
Packit 022b05
                | "deprecated"
Packit 022b05
                | "obsolete"
Packit 022b05
Packit 022b05
    ReferPart ::=
Packit 022b05
                  "REFERENCE" Text
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    -- a character string as defined in [2]
Packit 022b05
    Text ::= value(IA5String)
Packit 022b05
END
Packit 022b05
Packit 022b05
-- definitions for compliance statements
Packit 022b05
Packit 022b05
MODULE-COMPLIANCE MACRO ::=
Packit 022b05
BEGIN
Packit 022b05
    TYPE NOTATION ::=
Packit 022b05
                  "STATUS" Status
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
                  ReferPart
Packit 022b05
                  ModulePart
Packit 022b05
Packit 022b05
    VALUE NOTATION ::=
Packit 022b05
                  value(VALUE OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    Status ::=
Packit 022b05
                  "current"
Packit 022b05
                | "deprecated"
Packit 022b05
                | "obsolete"
Packit 022b05
Packit 022b05
    ReferPart ::=
Packit 022b05
                  "REFERENCE" Text
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    ModulePart ::=
Packit 022b05
                  Modules
Packit 022b05
    Modules ::=
Packit 022b05
                  Module
Packit 022b05
                | Modules Module
Packit 022b05
    Module ::=
Packit 022b05
                  -- name of module --
Packit 022b05
                  "MODULE" ModuleName
Packit 022b05
                  MandatoryPart
Packit 022b05
                  CompliancePart
Packit 022b05
Packit 022b05
    ModuleName ::=
Packit 022b05
                  -- identifier must start with uppercase letter
Packit 022b05
                  identifier ModuleIdentifier
Packit 022b05
                  -- must not be empty unless contained
Packit 022b05
                  -- in MIB Module
Packit 022b05
                | empty
Packit 022b05
    ModuleIdentifier ::=
Packit 022b05
                  value(OBJECT IDENTIFIER)
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    MandatoryPart ::=
Packit 022b05
                  "MANDATORY-GROUPS" "{" Groups "}"
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Groups ::=
Packit 022b05
                  Group
Packit 022b05
                | Groups "," Group
Packit 022b05
    Group ::=
Packit 022b05
                  value(OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    CompliancePart ::=
Packit 022b05
                  Compliances
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Compliances ::=
Packit 022b05
                  Compliance
Packit 022b05
                | Compliances Compliance
Packit 022b05
    Compliance ::=
Packit 022b05
                  ComplianceGroup
Packit 022b05
                | Object
Packit 022b05
Packit 022b05
    ComplianceGroup ::=
Packit 022b05
                  "GROUP" value(OBJECT IDENTIFIER)
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
Packit 022b05
    Object ::=
Packit 022b05
                  "OBJECT" value(ObjectName)
Packit 022b05
                  SyntaxPart
Packit 022b05
                  WriteSyntaxPart
Packit 022b05
                  AccessPart
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
Packit 022b05
    -- must be a refinement for object's SYNTAX clause
Packit 022b05
    SyntaxPart ::= "SYNTAX" Syntax
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    -- must be a refinement for object's SYNTAX clause
Packit 022b05
    WriteSyntaxPart ::= "WRITE-SYNTAX" Syntax
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Syntax ::=    -- Must be one of the following:
Packit 022b05
                       -- a base type (or its refinement),
Packit 022b05
                       -- a textual convention (or its refinement), or
Packit 022b05
                       -- a BITS pseudo-type
Packit 022b05
                  type
Packit 022b05
                | "BITS" "{" NamedBits "}"
Packit 022b05
Packit 022b05
    NamedBits ::= NamedBit
Packit 022b05
                | NamedBits "," NamedBit
Packit 022b05
Packit 022b05
    NamedBit ::= identifier "(" number ")" -- number is nonnegative
Packit 022b05
Packit 022b05
    AccessPart ::=
Packit 022b05
                  "MIN-ACCESS" Access
Packit 022b05
                | empty
Packit 022b05
    Access ::=
Packit 022b05
                  "not-accessible"
Packit 022b05
                | "accessible-for-notify"
Packit 022b05
                | "read-only"
Packit 022b05
                | "read-write"
Packit 022b05
                | "read-create"
Packit 022b05
Packit 022b05
    -- a character string as defined in [2]
Packit 022b05
    Text ::= value(IA5String)
Packit 022b05
END
Packit 022b05
Packit 022b05
-- definitions for capabilities statements
Packit 022b05
Packit 022b05
AGENT-CAPABILITIES MACRO ::=
Packit 022b05
BEGIN
Packit 022b05
    TYPE NOTATION ::=
Packit 022b05
                  "PRODUCT-RELEASE" Text
Packit 022b05
                  "STATUS" Status
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
                  ReferPart
Packit 022b05
                  ModulePart
Packit 022b05
Packit 022b05
    VALUE NOTATION ::=
Packit 022b05
                  value(VALUE OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    Status ::=
Packit 022b05
                  "current"
Packit 022b05
                | "obsolete"
Packit 022b05
Packit 022b05
    ReferPart ::=
Packit 022b05
                  "REFERENCE" Text
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    ModulePart ::=
Packit 022b05
                  Modules
Packit 022b05
                | empty
Packit 022b05
    Modules ::=
Packit 022b05
                  Module
Packit 022b05
                | Modules Module
Packit 022b05
    Module ::=
Packit 022b05
                  -- name of module --
Packit 022b05
                  "SUPPORTS" ModuleName
Packit 022b05
                  "INCLUDES" "{" Groups "}"
Packit 022b05
                  VariationPart
Packit 022b05
Packit 022b05
    ModuleName ::=
Packit 022b05
                  -- identifier must start with uppercase letter
Packit 022b05
                  identifier ModuleIdentifier
Packit 022b05
    ModuleIdentifier ::=
Packit 022b05
                  value(OBJECT IDENTIFIER)
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Groups ::=
Packit 022b05
                  Group
Packit 022b05
                | Groups "," Group
Packit 022b05
    Group ::=
Packit 022b05
                  value(OBJECT IDENTIFIER)
Packit 022b05
Packit 022b05
    VariationPart ::=
Packit 022b05
                  Variations
Packit 022b05
                | empty
Packit 022b05
    Variations ::=
Packit 022b05
                  Variation
Packit 022b05
                | Variations Variation
Packit 022b05
Packit 022b05
    Variation ::=
Packit 022b05
                  ObjectVariation
Packit 022b05
                | NotificationVariation
Packit 022b05
Packit 022b05
    NotificationVariation ::=
Packit 022b05
                  "VARIATION" value(NotificationName)
Packit 022b05
                  AccessPart
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
Packit 022b05
    ObjectVariation ::=
Packit 022b05
                  "VARIATION" value(ObjectName)
Packit 022b05
                  SyntaxPart
Packit 022b05
                  WriteSyntaxPart
Packit 022b05
                  AccessPart
Packit 022b05
                  CreationPart
Packit 022b05
                  DefValPart
Packit 022b05
                  "DESCRIPTION" Text
Packit 022b05
Packit 022b05
    -- must be a refinement for object's SYNTAX clause
Packit 022b05
    SyntaxPart ::= "SYNTAX" Syntax
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    WriteSyntaxPart ::= "WRITE-SYNTAX" Syntax
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Syntax ::=    -- Must be one of the following:
Packit 022b05
                       -- a base type (or its refinement),
Packit 022b05
                       -- a textual convention (or its refinement), or
Packit 022b05
                       -- a BITS pseudo-type
Packit 022b05
                  type
Packit 022b05
                | "BITS" "{" NamedBits "}"
Packit 022b05
Packit 022b05
    NamedBits ::= NamedBit
Packit 022b05
                | NamedBits "," NamedBit
Packit 022b05
Packit 022b05
    NamedBit ::= identifier "(" number ")" -- number is nonnegative
Packit 022b05
Packit 022b05
    AccessPart ::=
Packit 022b05
                  "ACCESS" Access
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Access ::=
Packit 022b05
                  "not-implemented"
Packit 022b05
                -- only "not-implemented" for notifications
Packit 022b05
                | "accessible-for-notify"
Packit 022b05
                | "read-only"
Packit 022b05
                | "read-write"
Packit 022b05
                | "read-create"
Packit 022b05
                -- following is for backward-compatibility only
Packit 022b05
                | "write-only"
Packit 022b05
Packit 022b05
    CreationPart ::=
Packit 022b05
                  "CREATION-REQUIRES" "{" Cells "}"
Packit 022b05
                | empty
Packit 022b05
    Cells ::=
Packit 022b05
                  Cell
Packit 022b05
                | Cells "," Cell
Packit 022b05
    Cell ::=
Packit 022b05
                  value(ObjectName)
Packit 022b05
Packit 022b05
    DefValPart ::= "DEFVAL" "{" Defvalue "}"
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    Defvalue ::=  -- must be valid for the object's syntax
Packit 022b05
                  -- in this macro's SYNTAX clause, if present,
Packit 022b05
                  -- or if not, in object's OBJECT-TYPE macro
Packit 022b05
                  value(ObjectSyntax)
Packit 022b05
                | "{" BitsValue "}"
Packit 022b05
Packit 022b05
    BitsValue ::= BitNames
Packit 022b05
                | empty
Packit 022b05
Packit 022b05
    BitNames ::=  BitName
Packit 022b05
                | BitNames "," BitName
Packit 022b05
Packit 022b05
    BitName ::= identifier
Packit 022b05
Packit 022b05
    -- a character string as defined in [2]
Packit 022b05
    Text ::= value(IA5String)
Packit 022b05
END
Packit 022b05
Packit 022b05
END