NETI-CONFIG-MIB DEFINITIONS ::= BEGIN -- ------------------------------------------------------------- -- MIB for controlling configurations and backup -- ------------------------------------------------------------- IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Gauge32 FROM SNMPv2-SMI RowStatus, DisplayString, DateAndTime, TruthValue FROM SNMPv2-TC netiExperimentalGeneric FROM NETI-COMMON-MIB; netiConfigMIB MODULE-IDENTITY LAST-UPDATED "0002090000Z" -- tbd: date ORGANIZATION "Net Insight AB" CONTACT-INFO "Martin Carlsson Net Insight AB E-mail: martin.carlsson@netinsight.se" DESCRIPTION "tbd: Describe the configuration model" ::= { netiExperimentalGeneric 7 } netiConfigMIBObjects OBJECT IDENTIFIER ::= { netiConfigMIB 1 } -- ------------------------------------------------------------- -- Groups in the NETI-CONFIG-MIB -- ------------------------------------------------------------- configStatusGroup OBJECT IDENTIFIER ::= { netiConfigMIBObjects 1 } configLocalGroup OBJECT IDENTIFIER ::= { netiConfigMIBObjects 2 } configBackupGroup OBJECT IDENTIFIER ::= { netiConfigMIBObjects 3 } -- ------------------------------------------------------------- -- The configuration status group -- ------------------------------------------------------------- -- Shows the status of the current (running) configuration in the node. configStatusIsCurrentUnsaved OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "Set to true if the current configuration in the node contains unsaved data." ::= { configStatusGroup 1 } configStatusCurrentLastChangedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The date and time when the current configuration was last changed." ::= { configStatusGroup 2 } -- ------------------------------------------------------------- -- The local storage configuration table group -- ------------------------------------------------------------- -- The configuration handling group consists of configuration -- status information and list of configuration files currently -- stored locally in the node. -- If storing a configuration file fails (see the backup group) -- this may be caused by the fact that the configuration store is -- full. In this case the manager can try and remove one of -- the entries (perhaps the oldest) and try again. configLocalTableLastChangedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The date and time when the configuration table was last changed." ::= { configLocalGroup 2 } configLocalTableNrOfConfigs OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of configurations currently in the configuration table." ::= { configLocalGroup 3 } configLocalTable OBJECT-TYPE SYNTAX SEQUENCE OF ConfigLocalEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Table of configuration files stored in the node." ::= { configLocalGroup 4 } configLocalEntry OBJECT-TYPE SYNTAX ConfigLocalEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry describes one configuration file." INDEX { configLocalIndex } ::= { configLocalTable 1 } ConfigLocalEntry ::= SEQUENCE { configLocalIndex INTEGER, configLocalName DisplayString, configLocalDescription DisplayString, configLocalCreatedTime DateAndTime, configLocalSize INTEGER, configLocalAdminStatus INTEGER, configLocalRowStatus RowStatus } configLocalIndex OBJECT-TYPE SYNTAX INTEGER (1..2147483647) MAX-ACCESS read-create STATUS current DESCRIPTION "Index in the config table." ::= { configLocalEntry 1 } configLocalName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-create STATUS current DESCRIPTION "The name of the configuration file." ::= { configLocalEntry 2 } configLocalDescription OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-create STATUS current DESCRIPTION "A textual description of the configuration." ::= { configLocalEntry 3 } configLocalCreatedTime OBJECT-TYPE SYNTAX DateAndTime MAX-ACCESS read-only STATUS current DESCRIPTION "The date and time when the configuration was created." ::= { configLocalEntry 4 } configLocalSize OBJECT-TYPE SYNTAX INTEGER (0..2147483647) MAX-ACCESS read-only STATUS current DESCRIPTION "The size in bytes of the configuration filed." ::= { configLocalEntry 5 } configLocalAdminStatus OBJECT-TYPE SYNTAX INTEGER { enabled(1), disabled(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "Set to enabled if this is the configuration to be loaded at boot time." ::= { configLocalEntry 6 } configLocalRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "Note that local configurations are created by doing a backup, see the backup group." ::= { configLocalEntry 7 } -- ------------------------------------------------------------- -- The configuration backup group -- ------------------------------------------------------------- -- The backup groups contains variables to intitiate backups. -- tbd: Could perhaps be extended to handle backups over TFTP/FTP -- and upload over TFTP/FTP and perhaps even scheduled backups... configBackupOperation OBJECT-TYPE SYNTAX INTEGER { idle (1), writeCurrentToLocal (2) } MAX-ACCESS read-write STATUS current DESCRIPTION "The backup operations supported: idle Resets the function. writeCurrentToLocal Writes the current config to local storage. Uses configBackupName and configBackupDescription." ::= { configBackupGroup 1 } configBackupStatus OBJECT-TYPE SYNTAX INTEGER { idle (1), inProgress (2), failed (3), ready (4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The status of the backup function: idle The function is idle. inProgress A backup operation is in progress. failed The operation has failed. ready The operation is finished and has succeeded." ::= { configBackupGroup 2 } configBackupName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "The name of the configuration file. Defaults to a string containing the date and time." ::= { configBackupGroup 3 } configBackupDescription OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-write STATUS current DESCRIPTION "The description for the new configuration file. Defaults to the empty string." ::= { configBackupGroup 4 } END