home *** CD-ROM | disk | FTP | other *** search
/ PC World 2001 August / PCWorld_2001-08_cd.bin / Komunikace / phptriad / phptriadsetup2-11.exe / php / mibs / DISMAN-SCRIPT-MIB.txt < prev    next >
Text File  |  1999-12-09  |  52KB  |  1,408 lines

  1. DISMAN-SCRIPT-MIB DEFINITIONS ::= BEGIN
  2.  
  3. IMPORTS
  4.     MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
  5.     Integer32, Unsigned32, mib-2
  6.         FROM SNMPv2-SMI
  7.  
  8.     RowStatus, TimeInterval, DateAndTime, StorageType, DisplayString
  9.         FROM SNMPv2-TC
  10.  
  11.     MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
  12.         FROM SNMPv2-CONF
  13.  
  14.     SnmpAdminString
  15.         FROM SNMP-FRAMEWORK-MIB;
  16.  
  17. scriptMIB MODULE-IDENTITY
  18.     LAST-UPDATED "9902221800Z"
  19.     ORGANIZATION "IETF Distributed Management Working Group"
  20.     CONTACT-INFO
  21.         "David B. Levi
  22.          Nortel Networks
  23.          4401 Great America Parkway
  24.          Santa Clara, CA 95052-8185
  25.          U.S.A.
  26.          Tel: +1 423 686 0432
  27.          E-mail: dlevi@nortelnetworks.com
  28.  
  29.          Juergen Schoenwaelder
  30.          TU Braunschweig
  31.          Bueltenweg 74/75
  32.          38106 Braunschweig
  33.          Germany
  34.          Tel: +49 531 391-3283
  35.          E-mail: schoenw@ibr.cs.tu-bs.de"
  36.     DESCRIPTION
  37.         "This MIB module defines a set of objects that allow to
  38.          delegate management scripts to distributed managers."
  39.     ::= { mib-2 64 }
  40.  
  41. --
  42. -- The groups defined within this MIB module:
  43. --
  44.  
  45. smObjects       OBJECT IDENTIFIER ::= { scriptMIB 1 }
  46. smNotifications OBJECT IDENTIFIER ::= { scriptMIB 2 }
  47. smConformance   OBJECT IDENTIFIER ::= { scriptMIB 3 }
  48.  
  49. --
  50. -- Script language and language extensions.
  51. --
  52. -- This group defines tables which list the languages and the
  53. -- language extensions supported by a script MIB implementation.
  54. -- Languages are uniquely identified by object identifier values.
  55. --
  56.  
  57. smLangTable OBJECT-TYPE
  58.     SYNTAX      SEQUENCE OF SmLangEntry
  59.     MAX-ACCESS  not-accessible
  60.     STATUS      current
  61.     DESCRIPTION
  62.         "This table lists supported script languages."
  63.     ::= { smObjects 1 }
  64.  
  65. smLangEntry OBJECT-TYPE
  66.     SYNTAX      SmLangEntry
  67.     MAX-ACCESS  not-accessible
  68.     STATUS      current
  69.     DESCRIPTION
  70.         "An entry describing a particular language."
  71.     INDEX { smLangIndex }
  72.     ::= { smLangTable 1 }
  73.  
  74. SmLangEntry ::= SEQUENCE {
  75.     smLangIndex         Integer32,
  76.     smLangLanguage      OBJECT IDENTIFIER,
  77.     smLangVersion       SnmpAdminString,
  78.     smLangVendor        OBJECT IDENTIFIER,
  79.     smLangRevision      SnmpAdminString,
  80.     smLangDescr         SnmpAdminString
  81. }
  82.  
  83. smLangIndex OBJECT-TYPE
  84.     SYNTAX      Integer32 (1..2147483647)
  85.     MAX-ACCESS  not-accessible
  86.     STATUS      current
  87.     DESCRIPTION
  88.         "The locally arbitrary, but unique identifier associated
  89.          with this language entry.
  90.  
  91.          The value is expected to remain constant at least from one
  92.          re-initialization of the entity's network management system
  93.          to the next re-initialization.
  94.  
  95.          Note, the data type and the range of this object must be
  96.          consistent with the definition of smScriptLanguage."
  97.     ::= { smLangEntry 1 }
  98.  
  99. smLangLanguage OBJECT-TYPE
  100.     SYNTAX      OBJECT IDENTIFIER
  101.     MAX-ACCESS  read-only
  102.     STATUS      current
  103.     DESCRIPTION
  104.         "The globally unique identification of the language."
  105.     ::= { smLangEntry 2 }
  106.  
  107. smLangVersion OBJECT-TYPE
  108.     SYNTAX      SnmpAdminString (SIZE (0..32))
  109.     MAX-ACCESS  read-only
  110.     STATUS      current
  111.     DESCRIPTION
  112.         "The version number of the language. The zero-length string
  113.          shall be used if the language does not have a version
  114.          number.
  115.          It is suggested that the version number consist of one or
  116.          more decimal numbers separated by dots, where the first
  117.          number is called the major version number."
  118.     ::= { smLangEntry 3 }
  119.  
  120. smLangVendor OBJECT-TYPE
  121.     SYNTAX      OBJECT IDENTIFIER
  122.     MAX-ACCESS  read-only
  123.     STATUS      current
  124.     DESCRIPTION
  125.         "An object identifer which identifies the vendor who
  126.          provides the implementation of the language. This object
  127.          identifer SHALL point to the object identifier directly
  128.          below the enterprise object identifier {1 3 6 1 4 1}
  129.          allocated for the vendor. The value must be the object
  130.          identifier {0 0} if the vendor is not known."
  131.     ::= { smLangEntry 4 }
  132.  
  133. smLangRevision OBJECT-TYPE
  134.     SYNTAX      SnmpAdminString (SIZE (0..32))
  135.     MAX-ACCESS  read-only
  136.     STATUS      current
  137.     DESCRIPTION
  138.         "The version number of the language implementation.
  139.          The value of this object must be an empty string if
  140.          version number of the implementation is unknown.
  141.  
  142.          It is suggested that the value consist of one or more
  143.          decimal numbers separated by dots, where the first
  144.          number is called the major version number."
  145.     ::= { smLangEntry 5 }
  146.  
  147. smLangDescr OBJECT-TYPE
  148.     SYNTAX      SnmpAdminString
  149.     MAX-ACCESS  read-only
  150.     STATUS      current
  151.     DESCRIPTION
  152.         "A textual description of the language."
  153.     ::= { smLangEntry 6 }
  154.  
  155.  
  156. smExtsnTable OBJECT-TYPE
  157.     SYNTAX      SEQUENCE OF SmExtsnEntry
  158.     MAX-ACCESS  not-accessible
  159.     STATUS      current
  160.     DESCRIPTION
  161.         "This table lists supported language extensions."
  162.     ::= { smObjects 2 }
  163.  
  164. smExtsnEntry OBJECT-TYPE
  165.     SYNTAX      SmExtsnEntry
  166.     MAX-ACCESS  not-accessible
  167.     STATUS      current
  168.     DESCRIPTION
  169.         "An entry describing a particular language extension."
  170.     INDEX { smLangIndex, smExtsnIndex }
  171.     ::= { smExtsnTable 1 }
  172.  
  173. SmExtsnEntry ::= SEQUENCE {
  174.     smExtsnIndex        Integer32,
  175.     smExtsnExtension    OBJECT IDENTIFIER,
  176.     smExtsnVersion      SnmpAdminString,
  177.     smExtsnVendor       OBJECT IDENTIFIER,
  178.     smExtsnRevision     SnmpAdminString,
  179.     smExtsnDescr        SnmpAdminString
  180. }
  181.  
  182. smExtsnIndex OBJECT-TYPE
  183.     SYNTAX      Integer32 (1..2147483647)
  184.     MAX-ACCESS  not-accessible
  185.     STATUS      current
  186.  
  187.     DESCRIPTION
  188.         "The locally arbitrary, but unique identifier associated
  189.          with this language extension entry.
  190.  
  191.          The value is expected to remain constant at least from one
  192.          re-initialization of the entity's network management system
  193.          to the next re-initialization."
  194.     ::= { smExtsnEntry 1}
  195.  
  196. smExtsnExtension OBJECT-TYPE
  197.     SYNTAX      OBJECT IDENTIFIER
  198.     MAX-ACCESS  read-only
  199.     STATUS      current
  200.     DESCRIPTION
  201.         "The globally unique identification of the language
  202.          extension."
  203.     ::= { smExtsnEntry 2 }
  204.  
  205. smExtsnVersion OBJECT-TYPE
  206.     SYNTAX      SnmpAdminString (SIZE (0..32))
  207.     MAX-ACCESS  read-only
  208.     STATUS      current
  209.     DESCRIPTION
  210.         "The version number of the language extension.
  211.          It is suggested that the version number consist of one or
  212.          more decimal numbers separated by dots, where the first
  213.          number is called the major version number."
  214.     ::= { smExtsnEntry 3 }
  215.  
  216. smExtsnVendor OBJECT-TYPE
  217.     SYNTAX      OBJECT IDENTIFIER
  218.     MAX-ACCESS  read-only
  219.     STATUS      current
  220.     DESCRIPTION
  221.         "An object identifer which identifies the vendor who
  222.          provides the implementation of the extension. The
  223.          object identifer value should point to the OID node
  224.          directly below the enterprise OID {1 3 6 1 4 1}
  225.          allocated for the vendor. The value must by the object
  226.          identifier {0 0} if the vendor is not known."
  227.     ::= { smExtsnEntry 4 }
  228.  
  229. smExtsnRevision OBJECT-TYPE
  230.     SYNTAX      SnmpAdminString (SIZE (0..32))
  231.     MAX-ACCESS  read-only
  232.     STATUS      current
  233.     DESCRIPTION
  234.         "The version number of the extension implementation.
  235.          The value of this object must be an empty string if
  236.          version number of the implementation is unknown.
  237.  
  238.          It is suggested that the value consist of one or more
  239.          decimal numbers separated by dots, where the first
  240.          number is called the major version number."
  241.     ::= { smExtsnEntry 5 }
  242.  
  243. smExtsnDescr OBJECT-TYPE
  244.     SYNTAX      SnmpAdminString
  245.     MAX-ACCESS  read-only
  246.     STATUS      current
  247.     DESCRIPTION
  248.         "A textual description of the language extension."
  249.     ::= { smExtsnEntry 6 }
  250.  
  251.  
  252. --
  253. -- Scripts known by the Script MIB implementation.
  254. --
  255. -- This group defines a table which lists all known scripts.
  256. -- Scripts can be added and removed through manipulation of the
  257. -- smScriptTable.
  258. --
  259. smScriptObjects OBJECT IDENTIFIER ::= { smObjects 3 }
  260.  
  261. smScriptTable OBJECT-TYPE
  262.     SYNTAX      SEQUENCE OF SmScriptEntry
  263.     MAX-ACCESS  not-accessible
  264.     STATUS      current
  265.     DESCRIPTION
  266.         "This table lists and describes locally known scripts."
  267.     ::= { smScriptObjects 1 }
  268.  
  269. smScriptEntry OBJECT-TYPE
  270.     SYNTAX      SmScriptEntry
  271.     MAX-ACCESS  not-accessible
  272.     STATUS      current
  273.     DESCRIPTION
  274.         "An entry describing a particular script. Every script that
  275.          is stored in non-volatile memory is required to appear in
  276.          this script table."
  277.     INDEX { smScriptOwner, smScriptName }
  278.     ::= { smScriptTable 1 }
  279. SmScriptEntry ::= SEQUENCE {
  280.     smScriptOwner       SnmpAdminString,
  281.     smScriptName        SnmpAdminString,
  282.     smScriptDescr       SnmpAdminString,
  283.     smScriptLanguage    Integer32,
  284.     smScriptSource      DisplayString,
  285.     smScriptAdminStatus INTEGER,
  286.     smScriptOperStatus  INTEGER,
  287.     smScriptStorageType StorageType,
  288.     smScriptRowStatus   RowStatus
  289. }
  290.  
  291. smScriptOwner OBJECT-TYPE
  292.     SYNTAX      SnmpAdminString (SIZE (0..32))
  293.     MAX-ACCESS  not-accessible
  294.     STATUS      current
  295.     DESCRIPTION
  296.         "The manager who owns this row in the smScriptTable."
  297.     ::= { smScriptEntry 1 }
  298.  
  299. smScriptName OBJECT-TYPE
  300.     SYNTAX      SnmpAdminString
  301.     MAX-ACCESS  not-accessible
  302.     STATUS      current
  303.     DESCRIPTION
  304.         "The locally-unique, administratively assigned name for this
  305.          script. This object allows an smScriptOwner to have multiple
  306.          entries in the smScriptTable.
  307.          This value of this object may be used to derive the name
  308.          (e.g. a file name) which is used by the Script MIB
  309.          implementation to access the script in non-volatile
  310.          storage. The details of this mapping are implementation
  311.          specific. However, the mapping needs to ensure that scripts
  312.          created by different owners with the same script name do not
  313.          map to the same name in non-volatile storage."
  314.     ::= { smScriptEntry 2 }
  315.  
  316. smScriptDescr OBJECT-TYPE
  317.     SYNTAX      SnmpAdminString
  318.     MAX-ACCESS  read-create
  319.     STATUS      current
  320.     DESCRIPTION
  321.         "A description of the purpose of the script."
  322.     ::= { smScriptEntry 3 }
  323.  
  324. smScriptLanguage OBJECT-TYPE
  325.     SYNTAX      Integer32 (0..2147483647)
  326.     MAX-ACCESS  read-create
  327.     STATUS      current
  328.     DESCRIPTION
  329.         "The value of this object type identifies an entry in the
  330.          smLangTable which is used to execute this script.
  331.          The special value 0 may be used by hard-wired scripts
  332.          that can not be modified and that are executed by
  333.          internal functions.
  334.  
  335.          Note, the data type and the range of this object must be
  336.          consistent with the definition of smLangIndex."
  337.     ::= { smScriptEntry 4 }
  338.  
  339. smScriptSource OBJECT-TYPE
  340.     SYNTAX      DisplayString
  341.     MAX-ACCESS  read-create
  342.     STATUS      current
  343.     DESCRIPTION
  344.         "This object either contains a reference to the script
  345.          source or an empty string. A reference must be given
  346.          in the form of a Uniform Resource Locator (URL) as
  347.          defined in RFC 2396. The allowed character sets and the
  348.          encoding rules defined in RFC 2396 section 2 apply.
  349.  
  350.          When the smScriptAdminStatus object is set to `enabled',
  351.          the Script MIB implementation will `pull' the script
  352.          source from the URL contained in this object if the URL
  353.          is not empty.
  354.          An empty URL indicates that the script source is loaded
  355.          from local storage. The script is read from the smCodeTable
  356.          if the value of smScriptStorageType is volatile. Otherwise,
  357.          the script is read from non-volatile storage.
  358.  
  359.          Note: This document does not mandate implementation of any
  360.          specific URL scheme. A attempt to load a script from a
  361.          nonsupported URL scheme will cause the smScriptOperStatus
  362.          to report an `unknownProtocol' error.
  363.  
  364.          Set requests to change this object are invalid if the
  365.          value of smScriptOperStatus is `enabled', `editing',
  366.          `retrieving' or `compiling' and will result in an
  367.          inconsistentValue error."
  368.     DEFVAL { ''H }
  369.     ::= { smScriptEntry 5 }
  370. smScriptAdminStatus OBJECT-TYPE
  371.     SYNTAX      INTEGER {
  372.                     enabled(1),
  373.                     disabled(2),
  374.                     editing(3)
  375.                 }
  376.     MAX-ACCESS  read-create
  377.     STATUS      current
  378.     DESCRIPTION
  379.         "The value of this object indicates the desired status of
  380.          the script. See the definition of smScriptOperStatus for
  381.          a description of the values.
  382.  
  383.          When the smScriptAdminStatus object is set to `enabled' and
  384.          the smScriptOperStatus is `disabled' or one of the error
  385.          states, the Script MIB implementation will `pull' the script
  386.          source from the URL contained in the smScriptSource object
  387.          if the URL is not empty."
  388.     DEFVAL { disabled }
  389.     ::= { smScriptEntry 6 }
  390.  
  391. smScriptOperStatus OBJECT-TYPE
  392.     SYNTAX      INTEGER {
  393.                     enabled(1),
  394.                     disabled(2),
  395.                     editing(3),
  396.                     retrieving(4),
  397.                     compiling(5),
  398.                     noSuchScript(6),
  399.                     accessDenied(7),
  400.                     wrongLanguage(8),
  401.                     wrongVersion(9),
  402.                     compilationFailed(10),
  403.                     noResourcesLeft(11),
  404.                     unknownProtocol(12),
  405.                     protocolFailure(13),
  406.                     genericError(14)
  407.                 }
  408.     MAX-ACCESS  read-only
  409.     STATUS      current
  410.     DESCRIPTION
  411.         "The actual status of the script in the runtime system. The
  412.          value of this object is only meaningful when the value of the
  413.          smScriptRowStatus object is `active'.
  414.  
  415.          The smScriptOperStatus object may have the following values:
  416.          - `enabled' indicates that the script is available and can
  417.             be started by a launch table entry.
  418.  
  419.          - `disabled' indicates that the script can not be used.
  420.  
  421.          - `editing' indicates that the script can be modified in the
  422.            smCodeTable.
  423.  
  424.          - `retrieving' indicates that the script is currently being
  425.            loaded from non-volatile storage or a remote system.
  426.  
  427.          - `compiling' indicates that the script is currently being
  428.            compiled by the runtime system.
  429.  
  430.          - `noSuchScript' indicates that the script does not exist
  431.            at the smScriptSource.
  432.  
  433.          - `accessDenied' indicates that the script can not be loaded
  434.            from the smScriptSource due to a lack of permissions.
  435.  
  436.          - `wrongLanguage' indicates that the script can not be loaded
  437.            from the smScriptSource because of a language mismatch.
  438.  
  439.          - `wrongVersion' indicates that the script can not be loaded
  440.            from the smScriptSource because of a language version
  441.            mismatch.
  442.  
  443.          - `compilationFailed' indicates that the compilation failed.
  444.  
  445.          - `noResourcesLeft' indicates that the runtime system does
  446.            not have enough resources to load the script.
  447.  
  448.          - `unknownProtocol' indicates that the script could not be
  449.            loaded from the smScriptSource because the requested
  450.            protocol is not supported.
  451.  
  452.          - `protocolFailure' indicates that the script could not be
  453.            loaded from the smScriptSource because of a protocol
  454.            failure.
  455.  
  456.          - `genericError' indicates that the script could not be
  457.            loaded due to an error condition not listed above.
  458.  
  459.          The `retrieving' and `compiling' states are transient states
  460.          which will either lead to one of the error states or the
  461.          `enabled' state. The `disabled' and `editing' states are
  462.          administrative states which are only reached by explicit
  463.          management operations.
  464.  
  465.          All launch table entries that refer to this script table
  466.          entry shall have an smLaunchOperStatus value of `disabled'
  467.          when the value of this object is not `enabled'."
  468.     DEFVAL { disabled }
  469.     ::= { smScriptEntry 7 }
  470.  
  471. smScriptStorageType OBJECT-TYPE
  472.     SYNTAX      StorageType
  473.     MAX-ACCESS  read-create
  474.     STATUS      current
  475.     DESCRIPTION
  476.         "This object defines whether this row and the script
  477.          controlled by this row are kept in volatile storage and
  478.          lost upon reboot or if this row is backed up by
  479.          non-volatile or permanent storage.
  480.  
  481.          The script controlled by this row is written into local
  482.          non-volatile storage if the following condition becomes
  483.          true:
  484.  
  485.          (a) the URL contained in the smScriptSource object is empty
  486.              and
  487.          (b) the smScriptStorageType is `nonVolatile'
  488.              and
  489.          (c) the smScriptOperStatus is `enabled'
  490.  
  491.          Setting this object to `volatile' removes a script from
  492.          non-volatile storage if the script controlled by this row
  493.          has been in non-volatile storage before. Attempts to set
  494.          this object to permanent will always fail with an
  495.          inconsistentValue error.
  496.  
  497.          The value of smScriptStorageType is only meaningful if the
  498.          value of the corresponding RowStatus object is `active'.
  499.  
  500.          If smScriptStorageType has the value permanent(4), then all
  501.          objects whose MAX-ACCESS value is read-create must be
  502.          writable, with the exception of the smScriptStorageType and
  503.          smScriptRowStatus objects, which shall be read-only."
  504.     DEFVAL { volatile }
  505.     ::= { smScriptEntry 8 }
  506.  
  507. smScriptRowStatus OBJECT-TYPE
  508.     SYNTAX      RowStatus
  509.     MAX-ACCESS  read-create
  510.     STATUS      current
  511.     DESCRIPTION
  512.         "A control that allows entries to be added and removed from
  513.          this table.
  514.  
  515.          Changing the smScriptRowStatus from `active' to `notInService'
  516.          will remove the associated script from the runtime system.
  517.          The value of smScriptOperStatus will be reset to `disabled'.
  518.  
  519.          Deleting conceptual rows from this table includes the
  520.          deletion of all resources associated with this row. This
  521.          implies that a script stored in non-volatile storage is
  522.          removed from non-volatile storage.
  523.  
  524.          An entry may not exist in the `active' state unless all
  525.          required objects in the entry have appropriate values. Rows
  526.          that are not complete or not in service are not known by the
  527.          script runtime system.
  528.  
  529.          Attempts to `destroy' a row or to set a row `notInService'
  530.          while the script is executing will result in an
  531.          inconsistentValue error.
  532.  
  533.          Attempts to `destroy' a row or to set a row `notInService'
  534.          where the value of the smScriptStorageType object is
  535.          `permanent' or `readOnly' will result in an
  536.          inconsistentValue error."
  537.     ::= { smScriptEntry 9 }
  538.  
  539.  
  540. --
  541. -- Access to script code via SNMP
  542. --
  543. -- The smCodeTable allows script code to be read and modified
  544. -- via SNMP.
  545. --
  546.  
  547. smCodeTable OBJECT-TYPE
  548.     SYNTAX      SEQUENCE OF SmCodeEntry
  549.     MAX-ACCESS  not-accessible
  550.     STATUS      current
  551.     DESCRIPTION
  552.         "This table contains the script code for scripts that are
  553.          written via SNMP write operations."
  554.     ::= { smScriptObjects 2 }
  555.  
  556. smCodeEntry OBJECT-TYPE
  557.     SYNTAX      SmCodeEntry
  558.     MAX-ACCESS  not-accessible
  559.     STATUS      current
  560.     DESCRIPTION
  561.         "An entry describing a particular fragment of a script."
  562.     INDEX { smScriptOwner, smScriptName, smCodeIndex }
  563.     ::= { smCodeTable 1 }
  564.  
  565. SmCodeEntry ::= SEQUENCE {
  566.     smCodeIndex         Unsigned32,
  567.     smCodeText          OCTET STRING,
  568.     smCodeRowStatus     RowStatus
  569. }
  570.  
  571. smCodeIndex OBJECT-TYPE
  572.     SYNTAX      Unsigned32 (1..4294967295)
  573.     MAX-ACCESS  not-accessible
  574.     STATUS      current
  575.     DESCRIPTION
  576.         "The index value identifying this code fragment."
  577.     ::= { smCodeEntry 1 }
  578.  
  579. smCodeText OBJECT-TYPE
  580.     SYNTAX      OCTET STRING (SIZE (1..1024))
  581.     MAX-ACCESS  read-create
  582.     STATUS      current
  583.     DESCRIPTION
  584.         "The code that makes up a fragment of a script. The format
  585.          of this code fragment depends on the script language which
  586.          is identified by the associated smScriptLanguage object."
  587.     ::= { smCodeEntry 2 }
  588.  
  589. smCodeRowStatus OBJECT-TYPE
  590.     SYNTAX      RowStatus
  591.     MAX-ACCESS  read-create
  592.     STATUS      current
  593.     DESCRIPTION
  594.         "A control that allows entries to be added and removed from
  595.          this table."
  596.     ::= { smCodeEntry 3 }
  597.  
  598. --
  599. -- Script execution.
  600. --
  601. -- This group defines tables which allow script execution to be
  602. -- initiated, suspended, resumed, and terminated.  It also provides
  603. -- a mechanism for keeping a history of recent script executions
  604. -- and their results.
  605. --
  606.  
  607. smRunObjects OBJECT IDENTIFIER ::= { smObjects 4 }
  608.  
  609. smLaunchTable OBJECT-TYPE
  610.     SYNTAX      SEQUENCE OF SmLaunchEntry
  611.     MAX-ACCESS  not-accessible
  612.     STATUS      current
  613.     DESCRIPTION
  614.         "This table lists and describes scripts that are ready
  615.          to be executed together with their parameters."
  616.     ::= { smRunObjects 1 }
  617.  
  618. smLaunchEntry OBJECT-TYPE
  619.     SYNTAX      SmLaunchEntry
  620.     MAX-ACCESS  not-accessible
  621.     STATUS      current
  622.     DESCRIPTION
  623.         "An entry describing a particular executable script."
  624.     INDEX { smLaunchOwner, smLaunchName }
  625.     ::= { smLaunchTable 1 }
  626.  
  627. SmLaunchEntry ::= SEQUENCE {
  628.     smLaunchOwner               SnmpAdminString,
  629.     smLaunchName                SnmpAdminString,
  630.     smLaunchScriptOwner         SnmpAdminString,
  631.     smLaunchScriptName          SnmpAdminString,
  632.     smLaunchArgument            OCTET STRING,
  633.     smLaunchMaxRunning          Unsigned32,
  634.     smLaunchMaxCompleted        Unsigned32,
  635.     smLaunchLifeTime            TimeInterval,
  636.     smLaunchExpireTime          TimeInterval,
  637.     smLaunchStart               Integer32,
  638.     smLaunchControl             INTEGER,
  639.     smLaunchAdminStatus         INTEGER,
  640.     smLaunchOperStatus          INTEGER,
  641.     smLaunchRunIndexNext        Integer32,
  642.     smLaunchStorageType         StorageType,
  643.     smLaunchRowStatus           RowStatus
  644. }
  645.  
  646. smLaunchOwner OBJECT-TYPE
  647.     SYNTAX      SnmpAdminString (SIZE (0..32))
  648.     MAX-ACCESS  not-accessible
  649.     STATUS      current
  650.     DESCRIPTION
  651.  
  652.         "The manager who owns this row in the smLaunchTable. Every
  653.          instance of a running script started from a particular entry
  654.          in the smLaunchTable (i.e. entries in the smRunTable) will be
  655.          owned by the same smLaunchOwner used to index the entry in
  656.          the smLaunchTable. This owner is not necessarily the same as
  657.          the owner of the script itself (smLaunchScriptOwner)."
  658.     ::= { smLaunchEntry 1 }
  659.  
  660. smLaunchName OBJECT-TYPE
  661.     SYNTAX      SnmpAdminString (SIZE (1..32))
  662.     MAX-ACCESS  not-accessible
  663.     STATUS      current
  664.     DESCRIPTION
  665.         "The locally-unique, administratively assigned name for this
  666.          launch table entry. This object allows an smLaunchOwner to
  667.          have multiple entries in the smLaunchTable. The smLaunchName
  668.          is an arbitrary name that must be different from any other
  669.          smLaunchTable entries with the same smLaunchOwner but can be
  670.          the same as other entries in the smLaunchTable with different
  671.          smLaunchOwner values. Note that the value of smLaunchName
  672.          is not related in any way to the name of the script being
  673.          launched."
  674.     ::= { smLaunchEntry 2 }
  675.  
  676. smLaunchScriptOwner OBJECT-TYPE
  677.     SYNTAX      SnmpAdminString (SIZE (0..32))
  678.     MAX-ACCESS  read-create
  679.     STATUS      current
  680.     DESCRIPTION
  681.         "The value of this object in combination with the value of
  682.          smLaunchScriptName identifies the script that can be
  683.          launched from this smLaunchTable entry. Attempts to write
  684.          this object will fail with an inconsistentValue error if
  685.          the value of smLaunchOperStatus is `enabled'."
  686.     ::= { smLaunchEntry 3 }
  687.  
  688. smLaunchScriptName OBJECT-TYPE
  689.     SYNTAX      SnmpAdminString (SIZE (0..32))
  690.     MAX-ACCESS  read-create
  691.     STATUS      current
  692.     DESCRIPTION
  693.         "The value of this object in combination with the value of
  694.          the smLaunchScriptOwner identifies the script that can be
  695.          launched from this smLaunchTable entry. Attempts to write
  696.          this objects will fail with an inconsistentValue error if
  697.          the value of smLaunchOperStatus is `enabled'."
  698.     ::= { smLaunchEntry 4 }
  699.  
  700. smLaunchArgument OBJECT-TYPE
  701.     SYNTAX      OCTET STRING
  702.     MAX-ACCESS  read-create
  703.     STATUS      current
  704.     DESCRIPTION
  705.         "The argument supplied to the script. When a script is
  706.          invoked, the value of this object is used to initialize
  707.          the smRunArgument object."
  708.     DEFVAL { ''H }
  709.     ::= { smLaunchEntry 5 }
  710.  
  711. smLaunchMaxRunning OBJECT-TYPE
  712.     SYNTAX      Unsigned32 (1..4294967295)
  713.     MAX-ACCESS  read-create
  714.     STATUS      current
  715.     DESCRIPTION
  716.         "The maximum number of concurrently running scripts that may
  717.          be invoked from this entry in the smLaunchTable. Lowering the
  718.          current value of this object does not affect any scripts that
  719.          are already executing."
  720.     DEFVAL { 1 }
  721.     ::= { smLaunchEntry 6 }
  722.  
  723. smLaunchMaxCompleted OBJECT-TYPE
  724.     SYNTAX      Unsigned32 (1..4294967295)
  725.     MAX-ACCESS  read-create
  726.     STATUS      current
  727.     DESCRIPTION
  728.         "The maximum number of finished scripts invoked from this
  729.          entry in the smLaunchTable allowed to be retained in the
  730.          smRunTable. Whenever the value of this object is changed
  731.          and whenever a script terminates, entries in the smRunTable
  732.          are deleted if necessary until the number of completed
  733.          scripts is smaller than the value of this object. Scripts
  734.          whose smRunEndTime value indicates the oldest completion
  735.          time are deleted first."
  736.     DEFVAL { 1 }
  737.     ::= { smLaunchEntry 7 }
  738.  
  739. smLaunchLifeTime OBJECT-TYPE
  740.     SYNTAX      TimeInterval
  741.     UNITS       "centi-seconds"
  742.     MAX-ACCESS  read-create
  743.     STATUS      current
  744.     DESCRIPTION
  745.         "The default maximum amount of time a script launched
  746.          from this entry may run. The value of this object is used
  747.          to initialize the smRunLifeTime object when a script is
  748.          launched. Changing the value of an smLaunchLifeTime
  749.          instance does not affect scripts previously launched from
  750.          this entry."
  751.     DEFVAL { 360000 }
  752.     ::= { smLaunchEntry 8 }
  753.  
  754. smLaunchExpireTime OBJECT-TYPE
  755.     SYNTAX      TimeInterval
  756.     UNITS       "centi-seconds"
  757.     MAX-ACCESS  read-create
  758.     STATUS      current
  759.     DESCRIPTION
  760.         "The default maximum amount of time information about a
  761.          script launched from this entry is kept in the smRunTable
  762.          after the script has completed execution.  The value of
  763.          this object is used to initialize the smRunExpireTime
  764.          object when a script is launched. Changing the value of an
  765.          smLaunchExpireTime instance does not affect scripts
  766.          previously launched from this entry."
  767.     DEFVAL { 360000 }
  768.     ::= { smLaunchEntry 9 }
  769.  
  770. smLaunchStart OBJECT-TYPE
  771.     SYNTAX      Integer32 (0..2147483647)
  772.     MAX-ACCESS  read-create
  773.     STATUS      current
  774.     DESCRIPTION
  775.         "This object is used to start the execution of scripts.
  776.          When retrieved, the value will be the value of smRunIndex
  777.          for the last script that started execution by manipulating
  778.          this object. The value will be zero if no script started
  779.          execution yet.
  780.  
  781.          A script is started by setting this object to an unused
  782.          smRunIndex value. A new row in the smRunTable will be
  783.          created which is indexed by the value supplied by the
  784.          set-request in addition to the value of smLaunchOwner and
  785.          smLaunchName. An unused value can be obtained by reading
  786.          the smLaunchRunIndexNext object.
  787.          Setting this object to the special value 0 will start
  788.          the script with a self-generated smRunIndex value. The
  789.          consequence is that the script invoker has no reliable
  790.          way to determine the smRunIndex value for this script
  791.          invocation and that the invoker has therefore no way
  792.          to obtain the results from this script invocation. The
  793.          special value 0 is however useful for scheduled script
  794.          invocations.
  795.  
  796.          If this object is set, the following checks must be
  797.          performed:
  798.  
  799.          1) The value of the smLaunchOperStatus object in this
  800.             entry of the smLaunchTable must be `enabled'.
  801.          2) The values of smLaunchScriptOwner and
  802.             smLaunchScriptName of this row must identify an
  803.             existing entry in the smScriptTable.
  804.          3) The value of smScriptOperStatus of this entry must
  805.             be `enabled'.
  806.          4) The principal performing the set operation must have
  807.             read access to the script. This must be checked by
  808.             calling the isAccessAllowed abstract service interface
  809.             defined in RFC 2271 on the row in the smScriptTable
  810.             identified by smLaunchScriptOwner and smLaunchScriptName.
  811.             The isAccessAllowed abstract service interface must be
  812.             called on all columnar objects in the smScriptTable with
  813.             a MAX-ACCESS value different than `not-accessible'. The
  814.             test fails as soon as a call indicates that access is
  815.             not allowed.
  816.          5) If the value provided by the set operation is not 0,
  817.             a check must be made that the value is currently not
  818.             in use. Otherwise, if the value provided by the set
  819.             operation is 0, a suitable unused value must be
  820.             generated.
  821.          6) The number of currently executing scripts invoked
  822.             from this smLaunchTable entry must be less than
  823.             smLaunchMaxRunning.
  824.  
  825.          Attempts to start a script will fail with an
  826.          inconsistentValue error if one of the checks described
  827.          above fails.
  828.  
  829.          Otherwise, if all checks have been passed, a new entry
  830.          in the smRunTable will be created indexed by smLaunchOwner,
  831.          smLaunchName and the new value for smRunIndex. The value
  832.          of smLaunchArgument will be copied into smRunArgument,
  833.          the value of smLaunchLifeTime will be copied to
  834.          smRunLifeTime, and the value of smLaunchExpireTime
  835.          will be copied to smRunExpireTime.
  836.  
  837.          The smRunStartTime will be set to the current time and
  838.          the smRunState will be set to `initializing' before the
  839.          script execution is initiated in the appropriate runtime
  840.          system.
  841.  
  842.          Note, the data type and the range of this object must
  843.          be consistent with the smRunIndex object. Since this
  844.          object might be written from the scheduling MIB, the
  845.          data type Integer32 rather than Unsigned32 is used."
  846.     DEFVAL { 0 }
  847.     ::= { smLaunchEntry 10 }
  848.  
  849. smLaunchControl OBJECT-TYPE
  850.     SYNTAX      INTEGER {
  851.                     abort(1),
  852.                     suspend(2),
  853.                     resume(3),
  854.                     nop(4)
  855.                 }
  856.     MAX-ACCESS  read-create
  857.     STATUS      current
  858.     DESCRIPTION
  859.         "This object is used to request a state change for all
  860.          running scripts in the smRunTable that were started from
  861.          this row in the smLaunchTable.
  862.  
  863.          Setting this object to abort(1), suspend(2) or resume(3)
  864.          will set the smRunControl object of all applicable rows
  865.          in the smRunTable to abort(1), suspend(2) or resume(3)
  866.          respectively. The phrase `applicable rows' means the set of
  867.          rows which were created from this entry in the smLaunchTable
  868.          and whose value of smRunState allows the corresponding
  869.          state change as described in the definition of the
  870.          smRunControl object. Setting this object to nop(4) has no
  871.          effect."
  872.     DEFVAL { nop }
  873.     ::= { smLaunchEntry 11 }
  874.  
  875. smLaunchAdminStatus OBJECT-TYPE
  876.     SYNTAX      INTEGER {
  877.                     enabled(1),
  878.                     disabled(2)
  879.                 }
  880.     MAX-ACCESS  read-create
  881.     STATUS      current
  882.     DESCRIPTION
  883.         "The value of this object indicates the desired status of
  884.          this launch table entry."
  885.     DEFVAL { disabled }
  886.     ::= { smLaunchEntry 12 }
  887.  
  888. smLaunchOperStatus OBJECT-TYPE
  889.     SYNTAX      INTEGER {
  890.                     enabled(1),
  891.                     disabled(2)
  892.                 }
  893.     MAX-ACCESS  read-only
  894.     STATUS      current
  895.     DESCRIPTION
  896.         "The value of this object indicates the actual status of
  897.          this launch table entry. An `enabled' launch table
  898.          entry can be used to start scripts while a `disabled'
  899.          launch table entry will refuse any attempts to start
  900.          scripts. The value `enabled' requires that the
  901.          smLaunchRowStatus object is active. The value
  902.          `disabled' requires that there are no entries in the
  903.          smRunTable associated with this smLaunchTable entry."
  904.     DEFVAL { disabled }
  905.     ::= { smLaunchEntry 13 }
  906.  
  907. smLaunchRunIndexNext OBJECT-TYPE
  908.     SYNTAX      Integer32 (1..2147483647)
  909.     MAX-ACCESS  read-only
  910.     STATUS      current
  911.     DESCRIPTION
  912.         "This variable is used for creating rows in the smRunTable.
  913.          The value of this variable is a currently unused value
  914.          for smRunIndex, which can be written into the smLaunchStart
  915.          object associated with this row to launch a script.
  916.  
  917.          The value returned when reading this variable must be unique
  918.          for the smLaunchOwner and smLauchName associated with this
  919.          row. Subsequent attempts to read this variable must return
  920.          different values.
  921.  
  922.          This variable will return the special value 0 if no new rows
  923.          can be created.
  924.  
  925.          Note, the data type and the range of this object must be
  926.          consistent with the definition of smRunIndex."
  927.     ::= { smLaunchEntry 14 }
  928.  
  929. smLaunchStorageType OBJECT-TYPE
  930.     SYNTAX      StorageType
  931.     MAX-ACCESS  read-create
  932.     STATUS      current
  933.     DESCRIPTION
  934.         "This object defines if this row is kept in volatile storage
  935.          and lost upon reboot or if this row is backed up by stable
  936.          storage.
  937.  
  938.          The value of smLaunchStorageType is only meaningful if the
  939.          value of the corresponding RowStatus object is active.
  940.  
  941.          If smLaunchStorageType has the value permanent(4), then all
  942.          objects whose MAX-ACCESS value is read-create must be
  943.          writable, with the exception of the smLaunchStorageType and
  944.          smLaunchRowStatus objects, which shall be read-only."
  945.     DEFVAL { volatile }
  946.     ::= { smLaunchEntry 15 }
  947.  
  948. smLaunchRowStatus OBJECT-TYPE
  949.     SYNTAX      RowStatus
  950.     MAX-ACCESS  read-create
  951.     STATUS      current
  952.     DESCRIPTION
  953.         "A control that allows entries to be added and removed from
  954.          this table.
  955.  
  956.          Attempts to `destroy' a row or to set a row `notInService'
  957.          while scripts started from this launch table entry are
  958.          running will result in an inconsistentValue error.
  959.  
  960.          Attempts to `destroy' a row or to set a row `notInService'
  961.          where the value of the smLaunchStorageType object is
  962.          `permanent' or `readOnly' will result in an
  963.          inconsistentValue error."
  964.     ::= { smLaunchEntry 16 }
  965.  
  966.  
  967. smRunTable OBJECT-TYPE
  968.     SYNTAX      SEQUENCE OF SmRunEntry
  969.     MAX-ACCESS  not-accessible
  970.     STATUS      current
  971.     DESCRIPTION
  972.         "This table lists and describes scripts that are currently
  973.          running or have been running in the past."
  974.     ::= { smRunObjects 2 }
  975.  
  976. smRunEntry OBJECT-TYPE
  977.     SYNTAX      SmRunEntry
  978.     MAX-ACCESS  not-accessible
  979.     STATUS      current
  980.     DESCRIPTION
  981.         "An entry describing a particular running or finished
  982.          script."
  983.     INDEX { smLaunchOwner, smLaunchName, smRunIndex }
  984.     ::= { smRunTable 1 }
  985.  
  986. SmRunEntry ::= SEQUENCE {
  987.     smRunIndex          Integer32,
  988.     smRunArgument       OCTET STRING,
  989.     smRunStartTime      DateAndTime,
  990.     smRunEndTime        DateAndTime,
  991.     smRunLifeTime       TimeInterval,
  992.     smRunExpireTime     TimeInterval,
  993.     smRunExitCode       INTEGER,
  994.     smRunResult         OCTET STRING,
  995.     smRunControl        INTEGER,
  996.     smRunState          INTEGER,
  997.     smRunError          SnmpAdminString
  998. }
  999.  
  1000. smRunIndex OBJECT-TYPE
  1001.     SYNTAX      Integer32 (1..2147483647)
  1002.     MAX-ACCESS  not-accessible
  1003.     STATUS      current
  1004.     DESCRIPTION
  1005.         "The locally arbitrary, but unique identifier associated
  1006.          with this running or finished script. This value must be
  1007.          unique for all rows in the smRunTable with the same
  1008.          smLaunchOwner and smLaunchName.
  1009.  
  1010.          Note, the data type and the range of this object must be
  1011.          consistent with the definition of smLaunchRunIndexNext
  1012.          and smLaunchStart."
  1013.     ::= { smRunEntry 1 }
  1014.  
  1015. smRunArgument OBJECT-TYPE
  1016.     SYNTAX      OCTET STRING
  1017.     MAX-ACCESS  read-only
  1018.     STATUS      current
  1019.     DESCRIPTION
  1020.         "The argument supplied to the script when it started."
  1021.     DEFVAL { ''H }
  1022.     ::= { smRunEntry 2 }
  1023.  
  1024. smRunStartTime OBJECT-TYPE
  1025.     SYNTAX      DateAndTime
  1026.     MAX-ACCESS  read-only
  1027.     STATUS      current
  1028.     DESCRIPTION
  1029.         "The date and time when the execution started. The value
  1030.          '0000000000000000'H is returned if the script has not
  1031.          started yet."
  1032.     DEFVAL { '0000000000000000'H }
  1033.     ::= { smRunEntry 3 }
  1034.  
  1035. smRunEndTime OBJECT-TYPE
  1036.     SYNTAX      DateAndTime
  1037.     MAX-ACCESS  read-only
  1038.     STATUS      current
  1039.     DESCRIPTION
  1040.         "The date and time when the execution terminated. The value
  1041.          '0000000000000000'H is returned if the script has not
  1042.          terminated yet."
  1043.     DEFVAL { '0000000000000000'H }
  1044.     ::= { smRunEntry 4 }
  1045.  
  1046. smRunLifeTime OBJECT-TYPE
  1047.     SYNTAX      TimeInterval
  1048.     UNITS       "centi-seconds"
  1049.     MAX-ACCESS  read-write
  1050.     STATUS      current
  1051.     DESCRIPTION
  1052.         "This object specifies how long the script can execute.
  1053.          This object returns the remaining time that the script
  1054.          may run. The object is initialized with the value of the
  1055.          associated smLaunchLifeTime object and ticks backwards.
  1056.          The script is aborted immediately when the value reaches 0.
  1057.  
  1058.          The value of this object may be set in order to increase or
  1059.          reduce the remaining time that the script may run. Setting
  1060.          this value to 0 will abort script execution immediately,
  1061.          and, if the value of smRunExpireTime is also 0, will remove
  1062.          this entry from the smRunTable once it has terminated.
  1063.  
  1064.          The value of smRunLifeTime reflects the real-time execution
  1065.          time as seen by the outside world. The value of this object
  1066.          will always be 0 for a script that finished execution, that
  1067.          is smRunState has the value `terminated'.
  1068.  
  1069.          The value of smRunLifeTime does not change while a script
  1070.          is suspended, that is smRunState has the value `suspended'.
  1071.          Note, this does not affect set operations. It is legal to
  1072.          modify smRunLifeTime via set operations while a script is
  1073.          suspended."
  1074.     ::= { smRunEntry 5 }
  1075.  
  1076. smRunExpireTime OBJECT-TYPE
  1077.     SYNTAX      TimeInterval
  1078.     UNITS       "centi-seconds"
  1079.     MAX-ACCESS  read-write
  1080.     STATUS      current
  1081.     DESCRIPTION
  1082.         "This value specifies how long this row can exist in the
  1083.          smRunTable after the script has terminated.  This object
  1084.          returns the remaining time that the row may exist before it
  1085.          is aged out. The object is initialized with the value of the
  1086.          associated smLaunchExpireTime object and ticks backwards. The
  1087.          entry in the smRunTable is destroyed when the value reaches 0
  1088.          and the smRunState has the value `terminated'.
  1089.  
  1090.          The value of this object may be set in order to increase or
  1091.          reduce the remaining time that the row may exist.  Setting
  1092.          the value to 0 will destroy this entry as soon as the
  1093.          smRunState has the value `terminated'."
  1094.     ::= { smRunEntry 6 }
  1095.  
  1096. smRunExitCode OBJECT-TYPE
  1097.     SYNTAX      INTEGER {
  1098.                     noError(1),
  1099.                     halted(2),
  1100.                     lifeTimeExceeded(3),
  1101.                     noResourcesLeft(4),
  1102.                     languageError(5),
  1103.                     runtimeError(6),
  1104.                     invalidArgument(7),
  1105.                     securityViolation(8),
  1106.                     genericError(9)
  1107.                 }
  1108.     MAX-ACCESS  read-only
  1109.     STATUS      current
  1110.     DESCRIPTION
  1111.         "The value of this object indicates the reason why a
  1112.          script finished execution. The smRunExitCode code may have
  1113.          one of the following values:
  1114.  
  1115.          - `noError', which indicates that the script completed
  1116.             successfully without errors;
  1117.  
  1118.          - `halted', which indicates that the script was halted
  1119.             by a request from an authorized manager;
  1120.  
  1121.          - `lifeTimeExceeded', which indicates that the script
  1122.             exited because a time limit was exceeded;
  1123.          - `noResourcesLeft', which indicates that the script
  1124.             exited because it ran out of resources (e.g. memory);
  1125.  
  1126.          - `languageError', which indicates that the script exited
  1127.             because of a language error (e.g. a syntax error in an
  1128.             interpreted language);
  1129.  
  1130.          - `runtimeError', which indicates that the script exited
  1131.             due to a runtime error (e.g. a division by zero);
  1132.  
  1133.          - `invalidArgument', which indicates that the script could
  1134.             not be run because of invalid script arguments;
  1135.  
  1136.          - `securityViolation', which indicates that the script
  1137.             exited due to a security violation;
  1138.  
  1139.          - `genericError', which indicates that the script exited
  1140.             for an unspecified reason.
  1141.  
  1142.          If the script has not yet begun running, or is currently
  1143.          running, the value will be `noError'."
  1144.     DEFVAL { noError }
  1145.     ::= { smRunEntry 7 }
  1146.  
  1147. smRunResult OBJECT-TYPE
  1148.     SYNTAX      OCTET STRING
  1149.     MAX-ACCESS  read-only
  1150.     STATUS      current
  1151.     DESCRIPTION
  1152.         "The result value produced by the running script. Note that
  1153.          the result may change while the script is executing."
  1154.     DEFVAL { ''H }
  1155.     ::= { smRunEntry 8 }
  1156.  
  1157. smRunControl OBJECT-TYPE
  1158.     SYNTAX      INTEGER {
  1159.                     abort(1),
  1160.                     suspend(2),
  1161.                     resume(3),
  1162.                     nop(4)
  1163.                 }
  1164.     MAX-ACCESS  read-write
  1165.     STATUS      current
  1166.     DESCRIPTION
  1167.         "The value of this object indicates the desired status of the
  1168.          script execution defined by this row.
  1169.  
  1170.          Setting this object to `abort' will abort execution if the
  1171.          value of smRunState is `initializing', `executing',
  1172.          `suspending', `suspended' or `resuming'. Setting this object
  1173.          to `abort' when the value of smRunState is `aborting' or
  1174.          `terminated' will result in an inconsistentValue error.
  1175.  
  1176.          Setting this object to `suspend' will suspend execution
  1177.          if the value of smRunState is `executing'. Setting this
  1178.          object to `suspend' will cause an inconsistentValue error
  1179.          if the value of smRunState is not `executing'.
  1180.  
  1181.          Setting this object to `resume' will resume execution
  1182.          if the value of smRunState is `suspending' or
  1183.          `suspended'. Setting this object to `resume' will cause an
  1184.          inconsistentValue error if the value of smRunState is
  1185.          not `suspending' or `suspended'.
  1186.  
  1187.          Setting this object to nop(4) has no effect."
  1188.     DEFVAL { nop }
  1189.     ::= { smRunEntry 9 }
  1190.  
  1191. smRunState OBJECT-TYPE
  1192.     SYNTAX      INTEGER {
  1193.                     initializing(1),
  1194.                     executing(2),
  1195.                     suspending(3),
  1196.                     suspended(4),
  1197.                     resuming(5),
  1198.                     aborting(6),
  1199.                     terminated(7)
  1200.                 }
  1201.     MAX-ACCESS  read-only
  1202.     STATUS      current
  1203.     DESCRIPTION
  1204.         "The value of this object indicates the script's execution
  1205.          status.  If the script has been invoked but has not yet
  1206.          begun execution, the value will be `initializing'. If the
  1207.          script is running, the value will be `executing'. A script
  1208.          which received a request to suspend execution but which
  1209.          did not actually suspend execution will be `suspending'.
  1210.          A script which has suspended execution will be `suspended'.
  1211.          A script which received a request to resume execution but
  1212.          which is not yet running is `resuming'. The resuming state
  1213.          will finally lead to the `executing' state. A script which
  1214.          received a request to abort execution but which is still
  1215.          running is `aborting'. A script which stopped execution
  1216.          is `terminated'."
  1217.     ::= { smRunEntry 10 }
  1218.  
  1219. smRunError OBJECT-TYPE
  1220.     SYNTAX      SnmpAdminString
  1221.     MAX-ACCESS  read-only
  1222.     STATUS      current
  1223.     DESCRIPTION
  1224.         "This  contains a descriptive error message if the script
  1225.          terminates in an abnormally. An implementation must store a
  1226.          descriptive error message in this object if the script exits
  1227.          with the smRunExitCode `genericError'.
  1228.  
  1229.          The value of this object is the zero-length string as long
  1230.          as the smRunExitCode has the value `noError'"
  1231.     DEFVAL { ''H }
  1232.     ::= { smRunEntry 11 }
  1233.  
  1234. --
  1235. -- Notifications. The definition of smTraps makes notification
  1236. -- registrations reversible (see STD 58, RFC 2578).
  1237. --
  1238.  
  1239. smTraps OBJECT IDENTIFIER ::= { smNotifications 0 }
  1240.  
  1241. smScriptAbort NOTIFICATION-TYPE
  1242.     OBJECTS     { smRunExitCode, smRunEndTime, smRunError }
  1243.     STATUS      current
  1244.     DESCRIPTION
  1245.         "This notification is generated whenever a running script
  1246.          terminates with an smRunExitCode unequal to `noError'."
  1247.     ::= { smTraps 1 }
  1248.  
  1249. smScriptResult NOTIFICATION-TYPE
  1250.     OBJECTS     { smRunResult }
  1251.     STATUS      current
  1252.     DESCRIPTION
  1253.         "This notification can be used by scripts to notify other
  1254.          management applications about script results. It can be
  1255.          used to notify managers about a script result.
  1256.  
  1257.          This notification is not automatically generated by the
  1258.          script MIB implementation. It is the responsibility of
  1259.          the executing script to emit this notification where it
  1260.          is appropriate to do so."
  1261.     ::= { smTraps 2 }
  1262.  
  1263. -- conformance information
  1264. smCompliances OBJECT IDENTIFIER ::= { smConformance 1 }
  1265. smGroups      OBJECT IDENTIFIER ::= { smConformance 2 }
  1266.  
  1267. -- compliance statements
  1268.  
  1269. smCompliance MODULE-COMPLIANCE
  1270.     STATUS      current
  1271.     DESCRIPTION
  1272.         "The compliance statement for SNMP entities which implement
  1273.          the script MIB."
  1274.     MODULE      -- this module
  1275.     MANDATORY-GROUPS {
  1276.             smLanguageGroup, smScriptGroup, smLaunchGroup, smRunGroup
  1277.     }
  1278.     GROUP   smCodeGroup
  1279.     DESCRIPTION
  1280.         "The smCodeGroup is mandatory only for those implementations
  1281.          that support the downloading of scripts via SNMP."
  1282.     OBJECT  smScriptSource
  1283.     MIN-ACCESS  read-only
  1284.     DESCRIPTION
  1285.         "The smScriptSource object is read-only for implementations
  1286.          that are not able to download script code from a URL."
  1287.     OBJECT smLaunchArgument
  1288.     DESCRIPTION
  1289.         "A compliant implementation has to support a minimum size
  1290.          for smLaunchArgument of 255 octets."
  1291.     OBJECT smRunArgument
  1292.     DESCRIPTION
  1293.         "A compliant implementation has to support a minimum size
  1294.          for smRunArgument of 255 octets."
  1295.     OBJECT smRunResult
  1296.     DESCRIPTION
  1297.         "A compliant implementation has to support a minimum size
  1298.          for smRunResult of 255 octets."
  1299.     OBJECT smRunState
  1300.     DESCRIPTION
  1301.         "A compliant implementation does not have to support script
  1302.          suspension and the smRunState `suspended'. Such an
  1303.          implementation will change into the `suspending' state
  1304.          when the smRunControl is set to `suspend' and remain in this
  1305.          state until smRunControl is set to `resume' or the script
  1306.          terminates."
  1307.     ::= { smCompliances 1 }
  1308.  
  1309. smLanguageGroup OBJECT-GROUP
  1310.     OBJECTS {
  1311.         smLangLanguage,
  1312.         smLangVersion,
  1313.         smLangVendor,
  1314.         smLangRevision,
  1315.         smLangDescr,
  1316.         smExtsnExtension,
  1317.         smExtsnVersion,
  1318.         smExtsnVendor,
  1319.         smExtsnRevision,
  1320.         smExtsnDescr
  1321.     }
  1322.     STATUS      current
  1323.     DESCRIPTION
  1324.         "A collection of objects providing information about the
  1325.          capabilities of the scripting engine."
  1326.     ::= { smGroups 1 }
  1327.  
  1328. smScriptGroup OBJECT-GROUP
  1329.     OBJECTS {
  1330.         smScriptDescr,
  1331.         smScriptLanguage,
  1332.         smScriptSource,
  1333.         smScriptAdminStatus,
  1334.         smScriptOperStatus,
  1335.         smScriptStorageType,
  1336.         smScriptRowStatus
  1337.     }
  1338.     STATUS      current
  1339.     DESCRIPTION
  1340.         "A collection of objects providing information about
  1341.          installed scripts."
  1342.     ::= { smGroups 2 }
  1343.  
  1344. smCodeGroup OBJECT-GROUP
  1345.     OBJECTS {
  1346.         smCodeText,
  1347.         smCodeRowStatus
  1348.     }
  1349.     STATUS      current
  1350.     DESCRIPTION
  1351.         "A collection of objects used to download or modify scripts
  1352.          by using SNMP set requests."
  1353.     ::= { smGroups 3 }
  1354.  
  1355. smLaunchGroup OBJECT-GROUP
  1356.     OBJECTS {
  1357.         smLaunchScriptOwner,
  1358.         smLaunchScriptName,
  1359.         smLaunchArgument,
  1360.         smLaunchMaxRunning,
  1361.         smLaunchMaxCompleted,
  1362.         smLaunchLifeTime,
  1363.         smLaunchExpireTime,
  1364.         smLaunchStart,
  1365.         smLaunchControl,
  1366.         smLaunchAdminStatus,
  1367.         smLaunchOperStatus,
  1368.         smLaunchRunIndexNext,
  1369.         smLaunchStorageType,
  1370.         smLaunchRowStatus
  1371.     }
  1372.     STATUS      current
  1373.     DESCRIPTION
  1374.         "A collection of objects providing information about scripts
  1375.          that can be launched."
  1376.     ::= { smGroups 4 }
  1377.  
  1378. smRunGroup OBJECT-GROUP
  1379.     OBJECTS {
  1380.         smRunArgument,
  1381.         smRunStartTime,
  1382.         smRunEndTime,
  1383.         smRunLifeTime,
  1384.         smRunExpireTime,
  1385.         smRunExitCode,
  1386.         smRunResult,
  1387.         smRunState,
  1388.         smRunControl,
  1389.         smRunError
  1390.     }
  1391.     STATUS      current
  1392.     DESCRIPTION
  1393.         "A collection of objects providing information about running
  1394.          scripts."
  1395.     ::= { smGroups 5 }
  1396.  
  1397. smNotificationsGroup NOTIFICATION-GROUP
  1398.     NOTIFICATIONS {
  1399.         smScriptAbort,
  1400.         smScriptResult
  1401.     }
  1402.     STATUS      current
  1403.     DESCRIPTION
  1404.         "The notifications emitted by the script MIB."
  1405.     ::= { smGroups 6 }
  1406.  
  1407. END
  1408.