Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / mibs / ietf / DISMAN-SCRIPT-MIB
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 "200108210000Z"
19     ORGANIZATION "IETF Distributed Management Working Group"
20     CONTACT-INFO
21         "WG EMail:  disman@dorothy.bmc.com
22          Subscribe: disman-request@dorothy.bmc.com
23
24          Chair:     Randy Presuhn
25                     BMC Software, Inc.
26
27
28          Postal:    Office 1-3141
29                     2141 North First Street
30                     San Jose,  California 95131
31                     USA
32          EMail:     rpresuhn@bmc.com
33          Phone:     +1 408 546-1006
34
35          Editor:    David B. Levi
36                     Nortel Networks
37          Postal:    4401 Great America Parkway
38                     Santa Clara, CA 95052-8185
39                     USA
40          EMail:     dlevi@nortelnetworks.com
41          Phone:     +1 423 686 0432
42
43          Editor:    Juergen Schoenwaelder
44                     TU Braunschweig
45          Postal:    Bueltenweg 74/75
46                     38106 Braunschweig
47                     Germany
48          EMail:     schoenw@ibr.cs.tu-bs.de
49          Phone:     +49 531 391-3283"
50     DESCRIPTION
51         "This MIB module defines a set of objects that allow to
52          delegate management scripts to distributed managers."
53     REVISION    "200108210000Z"
54     DESCRIPTION
55         "Revised version, published as RFC 3165.
56
57          This revision introduces several new objects: smScriptError,
58          smScriptLastChange, smLaunchError, smLaunchLastChange,
59          smLaunchRowExpireTime, smRunResultTime, and smRunErrorTime.
60
61          The following existing objects were updated: the maximum
62          value of smRunLifeTime now disables the timer, an
63          autostart value was added to the smLaunchAdminStatus
64          object, and a new expired state was added to the
65          smLaunchOperStatus object.
66
67          A new smScriptException notification has been added to
68          support runtime error notifications.
69
70          Created new conformance and compliance statements that
71          take care of the new objects and notifications.
72
73          Clarifications have been added in several places to remove
74          ambiguities or contradictions that were discovered and
75          reported by implementors."
76
77
78     REVISION    "199902221800Z"
79     DESCRIPTION
80         "Initial version, published as RFC 2592."
81     ::= { mib-2 64 }
82
83 --
84 -- The groups defined within this MIB module:
85 --
86
87 smObjects       OBJECT IDENTIFIER ::= { scriptMIB 1 }
88 smNotifications OBJECT IDENTIFIER ::= { scriptMIB 2 }
89 smConformance   OBJECT IDENTIFIER ::= { scriptMIB 3 }
90
91 --
92 -- Script language and language extensions.
93 --
94 -- This group defines tables which list the languages and the
95 -- language extensions supported by a Script MIB implementation.
96 -- Languages are uniquely identified by object identifier values.
97 --
98
99 smLangTable OBJECT-TYPE
100     SYNTAX      SEQUENCE OF SmLangEntry
101     MAX-ACCESS  not-accessible
102     STATUS      current
103     DESCRIPTION
104         "This table lists supported script languages."
105     ::= { smObjects 1 }
106
107 smLangEntry OBJECT-TYPE
108     SYNTAX      SmLangEntry
109     MAX-ACCESS  not-accessible
110     STATUS      current
111     DESCRIPTION
112         "An entry describing a particular language."
113     INDEX { smLangIndex }
114     ::= { smLangTable 1 }
115
116 SmLangEntry ::= SEQUENCE {
117     smLangIndex         Integer32,
118     smLangLanguage      OBJECT IDENTIFIER,
119     smLangVersion       SnmpAdminString,
120     smLangVendor        OBJECT IDENTIFIER,
121     smLangRevision      SnmpAdminString,
122     smLangDescr         SnmpAdminString
123 }
124
125 smLangIndex OBJECT-TYPE
126
127
128     SYNTAX      Integer32 (1..2147483647)
129     MAX-ACCESS  not-accessible
130     STATUS      current
131     DESCRIPTION
132         "The locally arbitrary, but unique identifier associated
133          with this language entry.
134
135          The value is expected to remain constant at least from one
136          re-initialization of the entity's network management system
137          to the next re-initialization.
138
139          Note that the data type and the range of this object must
140          be consistent with the definition of smScriptLanguage."
141     ::= { smLangEntry 1 }
142
143 smLangLanguage OBJECT-TYPE
144     SYNTAX      OBJECT IDENTIFIER
145     MAX-ACCESS  read-only
146     STATUS      current
147     DESCRIPTION
148         "The globally unique identification of the language."
149     ::= { smLangEntry 2 }
150
151 smLangVersion OBJECT-TYPE
152     SYNTAX      SnmpAdminString (SIZE (0..32))
153     MAX-ACCESS  read-only
154     STATUS      current
155     DESCRIPTION
156         "The version number of the language. The zero-length string
157          shall be used if the language does not have a version
158          number.
159
160          It is suggested that the version number consist of one or
161          more decimal numbers separated by dots, where the first
162          number is called the major version number."
163     ::= { smLangEntry 3 }
164
165 smLangVendor OBJECT-TYPE
166     SYNTAX      OBJECT IDENTIFIER
167     MAX-ACCESS  read-only
168     STATUS      current
169     DESCRIPTION
170         "An object identifier which identifies the vendor who
171          provides the implementation of the language. This object
172          identifier SHALL point to the object identifier directly
173          below the enterprise object identifier {1 3 6 1 4 1}
174          allocated for the vendor. The value must be the object
175          identifier {0 0} if the vendor is not known."
176
177
178     ::= { smLangEntry 4 }
179
180 smLangRevision OBJECT-TYPE
181     SYNTAX      SnmpAdminString (SIZE (0..32))
182     MAX-ACCESS  read-only
183     STATUS      current
184     DESCRIPTION
185         "The version number of the language implementation.
186          The value of this object must be an empty string if
187          version number of the implementation is unknown.
188
189          It is suggested that the value consist of one or more
190          decimal numbers separated by dots, where the first
191          number is called the major version number."
192     ::= { smLangEntry 5 }
193
194 smLangDescr OBJECT-TYPE
195     SYNTAX      SnmpAdminString
196     MAX-ACCESS  read-only
197     STATUS      current
198     DESCRIPTION
199         "A textual description of the language."
200     ::= { smLangEntry 6 }
201
202
203 smExtsnTable OBJECT-TYPE
204     SYNTAX      SEQUENCE OF SmExtsnEntry
205     MAX-ACCESS  not-accessible
206     STATUS      current
207     DESCRIPTION
208         "This table lists supported language extensions."
209     ::= { smObjects 2 }
210
211 smExtsnEntry OBJECT-TYPE
212     SYNTAX      SmExtsnEntry
213     MAX-ACCESS  not-accessible
214     STATUS      current
215     DESCRIPTION
216         "An entry describing a particular language extension."
217     INDEX { smLangIndex, smExtsnIndex }
218     ::= { smExtsnTable 1 }
219
220 SmExtsnEntry ::= SEQUENCE {
221     smExtsnIndex        Integer32,
222     smExtsnExtension    OBJECT IDENTIFIER,
223     smExtsnVersion      SnmpAdminString,
224     smExtsnVendor       OBJECT IDENTIFIER,
225     smExtsnRevision     SnmpAdminString,
226
227
228     smExtsnDescr        SnmpAdminString
229 }
230
231 smExtsnIndex OBJECT-TYPE
232     SYNTAX      Integer32 (1..2147483647)
233     MAX-ACCESS  not-accessible
234     STATUS      current
235     DESCRIPTION
236         "The locally arbitrary, but unique identifier associated
237          with this language extension entry.
238
239          The value is expected to remain constant at least from one
240          re-initialization of the entity's network management system
241          to the next re-initialization."
242     ::= { smExtsnEntry 1}
243
244 smExtsnExtension OBJECT-TYPE
245     SYNTAX      OBJECT IDENTIFIER
246     MAX-ACCESS  read-only
247     STATUS      current
248     DESCRIPTION
249         "The globally unique identification of the language
250          extension."
251     ::= { smExtsnEntry 2 }
252
253 smExtsnVersion OBJECT-TYPE
254     SYNTAX      SnmpAdminString (SIZE (0..32))
255     MAX-ACCESS  read-only
256     STATUS      current
257     DESCRIPTION
258         "The version number of the language extension.
259          It is suggested that the version number consist of one or
260          more decimal numbers separated by dots, where the first
261          number is called the major version number."
262     ::= { smExtsnEntry 3 }
263
264 smExtsnVendor OBJECT-TYPE
265     SYNTAX      OBJECT IDENTIFIER
266     MAX-ACCESS  read-only
267     STATUS      current
268     DESCRIPTION
269         "An object identifier which identifies the vendor who
270          provides the implementation of the extension. The
271          object identifier value should point to the OID node
272          directly below the enterprise OID {1 3 6 1 4 1}
273          allocated for the vendor. The value must by the object
274          identifier {0 0} if the vendor is not known."
275     ::= { smExtsnEntry 4 }
276
277
278 smExtsnRevision OBJECT-TYPE
279     SYNTAX      SnmpAdminString (SIZE (0..32))
280     MAX-ACCESS  read-only
281     STATUS      current
282     DESCRIPTION
283         "The version number of the extension implementation.
284          The value of this object must be an empty string if
285          version number of the implementation is unknown.
286
287          It is suggested that the value consist of one or more
288          decimal numbers separated by dots, where the first
289          number is called the major version number."
290     ::= { smExtsnEntry 5 }
291
292 smExtsnDescr OBJECT-TYPE
293     SYNTAX      SnmpAdminString
294     MAX-ACCESS  read-only
295     STATUS      current
296     DESCRIPTION
297         "A textual description of the language extension."
298     ::= { smExtsnEntry 6 }
299
300 --
301 -- Scripts known by the Script MIB implementation.
302 --
303 -- This group defines a table which lists all known scripts.
304 -- Scripts can be added and removed through manipulation of the
305 -- smScriptTable.
306 --
307
308 smScriptObjects OBJECT IDENTIFIER ::= { smObjects 3 }
309
310 smScriptTable OBJECT-TYPE
311     SYNTAX      SEQUENCE OF SmScriptEntry
312     MAX-ACCESS  not-accessible
313     STATUS      current
314     DESCRIPTION
315         "This table lists and describes locally known scripts."
316     ::= { smScriptObjects 1 }
317
318 smScriptEntry OBJECT-TYPE
319     SYNTAX      SmScriptEntry
320     MAX-ACCESS  not-accessible
321     STATUS      current
322     DESCRIPTION
323         "An entry describing a particular script. Every script that
324          is stored in non-volatile memory is required to appear in
325          this script table."
326
327
328     INDEX { smScriptOwner, smScriptName }
329     ::= { smScriptTable 1 }
330
331 SmScriptEntry ::= SEQUENCE {
332     smScriptOwner       SnmpAdminString,
333     smScriptName        SnmpAdminString,
334     smScriptDescr       SnmpAdminString,
335     smScriptLanguage    Integer32,
336     smScriptSource      DisplayString,
337     smScriptAdminStatus INTEGER,
338     smScriptOperStatus  INTEGER,
339     smScriptStorageType StorageType,
340     smScriptRowStatus   RowStatus,
341     smScriptError       SnmpAdminString,
342     smScriptLastChange  DateAndTime
343 }
344
345 smScriptOwner OBJECT-TYPE
346     SYNTAX      SnmpAdminString (SIZE (0..32))
347     MAX-ACCESS  not-accessible
348     STATUS      current
349     DESCRIPTION
350         "The manager who owns this row in the smScriptTable."
351     ::= { smScriptEntry 1 }
352
353 smScriptName OBJECT-TYPE
354     SYNTAX      SnmpAdminString (SIZE (1..32))
355     MAX-ACCESS  not-accessible
356     STATUS      current
357     DESCRIPTION
358         "The locally-unique, administratively assigned name for this
359          script. This object allows an smScriptOwner to have multiple
360          entries in the smScriptTable.
361
362          This value of this object may be used to derive the name
363          (e.g. a file name) which is used by the Script MIB
364          implementation to access the script in non-volatile
365          storage. The details of this mapping are implementation
366          specific. However, the mapping needs to ensure that scripts
367          created by different owners with the same script name do not
368          map to the same name in non-volatile storage."
369     ::= { smScriptEntry 2 }
370
371 smScriptDescr OBJECT-TYPE
372     SYNTAX      SnmpAdminString
373     MAX-ACCESS  read-create
374     STATUS      current
375     DESCRIPTION
376
377
378         "A description of the purpose of the script."
379     ::= { smScriptEntry 3 }
380
381 smScriptLanguage OBJECT-TYPE
382     SYNTAX      Integer32 (0..2147483647)
383     MAX-ACCESS  read-create
384     STATUS      current
385     DESCRIPTION
386         "The value of this object type identifies an entry in the
387          smLangTable which is used to execute this script.
388          The special value 0 may be used by hard-wired scripts
389          that can not be modified and that are executed by
390          internal functions.
391
392          Set requests to change this object are invalid if the
393          value of smScriptOperStatus is `enabled' or `compiling'
394          and will result in an inconsistentValue error.
395
396          Note that the data type and the range of this object must
397          be consistent with the definition of smLangIndex."
398     ::= { smScriptEntry 4 }
399
400 smScriptSource OBJECT-TYPE
401     SYNTAX      DisplayString
402     MAX-ACCESS  read-create
403     STATUS      current
404     DESCRIPTION
405         "This object either contains a reference to the script
406          source or an empty string. A reference must be given
407          in the form of a Uniform Resource Locator (URL) as
408          defined in RFC 2396. The allowed character sets and the
409          encoding rules defined in RFC 2396 section 2 apply.
410
411          When the smScriptAdminStatus object is set to `enabled',
412          the Script MIB implementation will `pull' the script
413          source from the URL contained in this object if the URL
414          is not empty.
415
416          An empty URL indicates that the script source is loaded
417          from local storage. The script is read from the smCodeTable
418          if the value of smScriptStorageType is volatile. Otherwise,
419          the script is read from non-volatile storage.
420
421          Note: This document does not mandate implementation of any
422          specific URL scheme. An attempt to load a script from a
423          nonsupported URL scheme will cause the smScriptOperStatus
424          to report an `unknownProtocol' error.
425
426
427
428          Set requests to change this object are invalid if the
429          value of smScriptOperStatus is `enabled', `editing',
430          `retrieving' or `compiling' and will result in an
431          inconsistentValue error."
432     DEFVAL { ''H }
433     ::= { smScriptEntry 5 }
434
435 smScriptAdminStatus OBJECT-TYPE
436     SYNTAX      INTEGER {
437                     enabled(1),
438                     disabled(2),
439                     editing(3)
440                 }
441     MAX-ACCESS  read-create
442     STATUS      current
443     DESCRIPTION
444         "The value of this object indicates the desired status of
445          the script. See the definition of smScriptOperStatus for
446          a description of the values.
447
448          When the smScriptAdminStatus object is set to `enabled' and
449          the smScriptOperStatus is `disabled' or one of the error
450          states, the Script MIB implementation will `pull' the script
451          source from the URL contained in the smScriptSource object
452          if the URL is not empty."
453     DEFVAL { disabled }
454     ::= { smScriptEntry 6 }
455
456 smScriptOperStatus OBJECT-TYPE
457     SYNTAX      INTEGER {
458                     enabled(1),
459                     disabled(2),
460                     editing(3),
461                     retrieving(4),
462                     compiling(5),
463                     noSuchScript(6),
464                     accessDenied(7),
465                     wrongLanguage(8),
466                     wrongVersion(9),
467                     compilationFailed(10),
468                     noResourcesLeft(11),
469                     unknownProtocol(12),
470                     protocolFailure(13),
471                     genericError(14)
472                 }
473     MAX-ACCESS  read-only
474     STATUS      current
475     DESCRIPTION
476
477
478         "The actual status of the script in the runtime system. The
479          value of this object is only meaningful when the value of
480          the smScriptRowStatus object is `active'.
481
482          The smScriptOperStatus object may have the following values:
483
484          - `enabled' indicates that the script is available and can
485             be started by a launch table entry.
486
487          - `disabled' indicates that the script can not be used.
488
489          - `editing' indicates that the script can be modified in the
490            smCodeTable.
491
492          - `retrieving' indicates that the script is currently being
493            loaded from non-volatile storage or a remote system.
494
495          - `compiling' indicates that the script is currently being
496            compiled by the runtime system.
497
498          - `noSuchScript' indicates that the script does not exist
499            at the smScriptSource.
500
501          - `accessDenied' indicates that the script can not be loaded
502            from the smScriptSource due to a lack of permissions.
503
504          - `wrongLanguage' indicates that the script can not be
505             loaded from the smScriptSource because of a language
506             mismatch.
507
508          - `wrongVersion' indicates that the script can not be loaded
509            from the smScriptSource because of a language version
510            mismatch.
511
512          - `compilationFailed' indicates that the compilation failed.
513
514          - `noResourcesLeft' indicates that the runtime system does
515            not have enough resources to load the script.
516
517          - `unknownProtocol' indicates that the script could not be
518            loaded from the smScriptSource because the requested
519            protocol is not supported.
520
521          - `protocolFailure' indicates that the script could not be
522            loaded from the smScriptSource because of a protocol
523            failure.
524
525          - `genericError' indicates that the script could not be
526
527
528            loaded due to an error condition not listed above.
529
530          The `retrieving' and `compiling' states are transient states
531          which will either lead to one of the error states or the
532          `enabled' state. The `disabled' and `editing' states are
533          administrative states which are only reached by explicit
534          management operations.
535
536          All launch table entries that refer to this script table
537          entry shall have an smLaunchOperStatus value of `disabled'
538          when the value of this object is not `enabled'."
539     DEFVAL { disabled }
540     ::= { smScriptEntry 7 }
541
542 smScriptStorageType OBJECT-TYPE
543     SYNTAX      StorageType
544     MAX-ACCESS  read-create
545     STATUS      current
546     DESCRIPTION
547         "This object defines whether this row and the script
548          controlled by this row are kept in volatile storage and
549          lost upon reboot or if this row is backed up by
550          non-volatile or permanent storage.
551
552          The storage type of this row always complies with the value
553          of this entry if the value of the corresponding RowStatus
554          object is `active'.
555
556          However, the storage type of the script controlled by this
557          row may be different, if the value of this entry is
558          `non-volatile'. The script controlled by this row is written
559          into local non-volatile storage if the following condition
560          becomes true:
561
562          (a) the URL contained in the smScriptSource object is empty
563              and
564          (b) the smScriptStorageType is `nonVolatile'
565              and
566          (c) the smScriptOperStatus is `enabled'
567
568          Setting this object to `volatile' removes a script from
569          non-volatile storage if the script controlled by this row
570          has been in non-volatile storage before. Attempts to set
571          this object to permanent will always fail with an
572          inconsistentValue error.
573
574          The value of smScriptStorageType is only meaningful if the
575          value of the corresponding RowStatus object is `active'.
576
577
578          If smScriptStorageType has the value permanent(4), then all
579          objects whose MAX-ACCESS value is read-create must be
580          writable, with the exception of the smScriptStorageType and
581          smScriptRowStatus objects, which shall be read-only."
582     DEFVAL { volatile }
583     ::= { smScriptEntry 8 }
584
585 smScriptRowStatus OBJECT-TYPE
586     SYNTAX      RowStatus
587     MAX-ACCESS  read-create
588     STATUS      current
589     DESCRIPTION
590         "A control that allows entries to be added and removed from
591          this table.
592
593          Changing the smScriptRowStatus from `active' to
594          `notInService' will remove the associated script from the
595          runtime system.
596
597          Deleting conceptual rows from this table may affect the
598          deletion of other resources associated with this row. For
599          example, a script stored in non-volatile storage may be
600          removed from non-volatile storage.
601
602          An entry may not exist in the `active' state unless all
603          required objects in the entry have appropriate values. Rows
604          that are not complete or not in service are not known by the
605          script runtime system.
606
607          Attempts to `destroy' a row or to set a row `notInService'
608          while the smScriptOperStatus is `enabled' will result in an
609          inconsistentValue error.
610
611          Attempts to `destroy' a row or to set a row `notInService'
612          where the value of the smScriptStorageType object is
613          `permanent' or `readOnly' will result in an
614          inconsistentValue error.
615
616          The value of this object has no effect on whether other
617          objects in this conceptual row can be modified."
618     ::= { smScriptEntry 9 }
619
620 smScriptError OBJECT-TYPE
621     SYNTAX      SnmpAdminString
622     MAX-ACCESS  read-only
623     STATUS      current
624     DESCRIPTION
625         "This object contains a descriptive error message if the
626
627
628          transition into the operational status `enabled' failed.
629          Implementations must reset the error message to a
630          zero-length string when a new attempt to change the
631          script status to `enabled' is started."
632     DEFVAL { ''H }
633     ::= { smScriptEntry 10 }
634
635 smScriptLastChange OBJECT-TYPE
636     SYNTAX      DateAndTime
637     MAX-ACCESS  read-only
638     STATUS      current
639     DESCRIPTION
640         "The date and time when this script table entry was last
641          modified. The value '0000000000000000'H is returned if
642          the script table entry has not yet been modified.
643
644          Note that the resetting of smScriptError is not considered
645          a change of the script table entry."
646     DEFVAL { '0000000000000000'H }
647     ::= { smScriptEntry 11 }
648
649 --
650 -- Access to script code via SNMP
651 --
652 -- The smCodeTable allows script code to be read and modified
653 -- via SNMP.
654 --
655
656 smCodeTable OBJECT-TYPE
657     SYNTAX      SEQUENCE OF SmCodeEntry
658     MAX-ACCESS  not-accessible
659     STATUS      current
660     DESCRIPTION
661         "This table contains the script code for scripts that are
662          written via SNMP write operations."
663     ::= { smScriptObjects 2 }
664
665 smCodeEntry OBJECT-TYPE
666     SYNTAX      SmCodeEntry
667     MAX-ACCESS  not-accessible
668     STATUS      current
669     DESCRIPTION
670         "An entry describing a particular fragment of a script."
671     INDEX { smScriptOwner, smScriptName, smCodeIndex }
672     ::= { smCodeTable 1 }
673
674 SmCodeEntry ::= SEQUENCE {
675     smCodeIndex         Unsigned32,
676
677
678     smCodeText          OCTET STRING,
679     smCodeRowStatus     RowStatus
680 }
681
682 smCodeIndex OBJECT-TYPE
683     SYNTAX      Unsigned32 (1..4294967295)
684     MAX-ACCESS  not-accessible
685     STATUS      current
686     DESCRIPTION
687         "The index value identifying this code fragment."
688     ::= { smCodeEntry 1 }
689
690 smCodeText OBJECT-TYPE
691     SYNTAX      OCTET STRING (SIZE (1..1024))
692     MAX-ACCESS  read-create
693     STATUS      current
694     DESCRIPTION
695         "The code that makes up a fragment of a script. The format
696          of this code fragment depends on the script language which
697          is identified by the associated smScriptLanguage object."
698     ::= { smCodeEntry 2 }
699
700 smCodeRowStatus OBJECT-TYPE
701     SYNTAX      RowStatus
702     MAX-ACCESS  read-create
703     STATUS      current
704     DESCRIPTION
705         "A control that allows entries to be added and removed from
706          this table.
707
708          The value of this object has no effect on whether other
709          objects in this conceptual row can be modified."
710     ::= { smCodeEntry 3 }
711
712 --
713 -- Script execution.
714 --
715 -- This group defines tables which allow script execution to be
716 -- initiated, suspended, resumed, and terminated.  It also provides
717 -- a mechanism for keeping a history of recent script executions
718 -- and their results.
719 --
720
721 smRunObjects OBJECT IDENTIFIER ::= { smObjects 4 }
722
723 smLaunchTable OBJECT-TYPE
724     SYNTAX      SEQUENCE OF SmLaunchEntry
725     MAX-ACCESS  not-accessible
726
727
728     STATUS      current
729     DESCRIPTION
730         "This table lists and describes scripts that are ready
731          to be executed together with their parameters."
732     ::= { smRunObjects 1 }
733
734 smLaunchEntry OBJECT-TYPE
735     SYNTAX      SmLaunchEntry
736     MAX-ACCESS  not-accessible
737     STATUS      current
738     DESCRIPTION
739         "An entry describing a particular executable script."
740     INDEX { smLaunchOwner, smLaunchName }
741     ::= { smLaunchTable 1 }
742
743 SmLaunchEntry ::= SEQUENCE {
744     smLaunchOwner               SnmpAdminString,
745     smLaunchName                SnmpAdminString,
746     smLaunchScriptOwner         SnmpAdminString,
747     smLaunchScriptName          SnmpAdminString,
748     smLaunchArgument            OCTET STRING,
749     smLaunchMaxRunning          Unsigned32,
750     smLaunchMaxCompleted        Unsigned32,
751     smLaunchLifeTime            TimeInterval,
752     smLaunchExpireTime          TimeInterval,
753     smLaunchStart               Integer32,
754     smLaunchControl             INTEGER,
755     smLaunchAdminStatus         INTEGER,
756     smLaunchOperStatus          INTEGER,
757     smLaunchRunIndexNext        Integer32,
758     smLaunchStorageType         StorageType,
759     smLaunchRowStatus           RowStatus,
760     smLaunchError               SnmpAdminString,
761     smLaunchLastChange          DateAndTime,
762     smLaunchRowExpireTime       TimeInterval
763 }
764
765 smLaunchOwner OBJECT-TYPE
766     SYNTAX      SnmpAdminString (SIZE (0..32))
767     MAX-ACCESS  not-accessible
768     STATUS      current
769     DESCRIPTION
770         "The manager who owns this row in the smLaunchTable. Every
771          instance of a running script started from a particular entry
772          in the smLaunchTable (i.e. entries in the smRunTable) will
773          be owned by the same smLaunchOwner used to index the entry
774          in the smLaunchTable. This owner is not necessarily the same
775          as the owner of the script itself (smLaunchScriptOwner)."
776
777
778     ::= { smLaunchEntry 1 }
779
780 smLaunchName OBJECT-TYPE
781     SYNTAX      SnmpAdminString (SIZE (1..32))
782     MAX-ACCESS  not-accessible
783     STATUS      current
784     DESCRIPTION
785         "The locally-unique, administratively assigned name for this
786          launch table entry. This object allows an smLaunchOwner to
787          have multiple entries in the smLaunchTable. The smLaunchName
788          is an arbitrary name that must be different from any other
789          smLaunchTable entries with the same smLaunchOwner but can be
790          the same as other entries in the smLaunchTable with
791          different smLaunchOwner values. Note that the value of
792          smLaunchName is not related in any way to the name of the
793          script being launched."
794     ::= { smLaunchEntry 2 }
795
796 smLaunchScriptOwner OBJECT-TYPE
797     SYNTAX      SnmpAdminString (SIZE (0..32))
798     MAX-ACCESS  read-create
799     STATUS      current
800     DESCRIPTION
801         "The value of this object in combination with the value of
802          smLaunchScriptName identifies the script that can be
803          launched from this smLaunchTable entry. Attempts to write
804          this object will fail with an inconsistentValue error if
805          the value of smLaunchOperStatus is `enabled'."
806     ::= { smLaunchEntry 3 }
807
808 smLaunchScriptName OBJECT-TYPE
809     SYNTAX      SnmpAdminString (SIZE (0..32))
810     MAX-ACCESS  read-create
811     STATUS      current
812     DESCRIPTION
813         "The value of this object in combination with the value of
814          the smLaunchScriptOwner identifies the script that can be
815          launched from this smLaunchTable entry. The zero-length
816          string may be used to point to a non-existing script.
817
818          Attempts to write this object will fail with an
819          inconsistentValue error if the value of smLaunchOperStatus
820          is `enabled'."
821     DEFVAL { ''H }
822     ::= { smLaunchEntry 4 }
823
824 smLaunchArgument OBJECT-TYPE
825     SYNTAX      OCTET STRING
826
827
828     MAX-ACCESS  read-create
829     STATUS      current
830     DESCRIPTION
831         "The argument supplied to the script. When a script is
832          invoked, the value of this object is used to initialize
833          the smRunArgument object."
834     DEFVAL { ''H }
835     ::= { smLaunchEntry 5 }
836
837 smLaunchMaxRunning OBJECT-TYPE
838     SYNTAX      Unsigned32 (1..4294967295)
839     MAX-ACCESS  read-create
840     STATUS      current
841     DESCRIPTION
842         "The maximum number of concurrently running scripts that may
843          be invoked from this entry in the smLaunchTable. Lowering
844          the current value of this object does not affect any scripts
845          that are already executing."
846     DEFVAL { 1 }
847     ::= { smLaunchEntry 6 }
848
849 smLaunchMaxCompleted OBJECT-TYPE
850     SYNTAX      Unsigned32 (1..4294967295)
851     MAX-ACCESS  read-create
852     STATUS      current
853     DESCRIPTION
854         "The maximum number of finished scripts invoked from this
855          entry in the smLaunchTable allowed to be retained in the
856          smRunTable. Whenever the value of this object is changed
857          and whenever a script terminates, entries in the smRunTable
858          are deleted if necessary until the number of completed
859          scripts is smaller than the value of this object. Scripts
860          whose smRunEndTime value indicates the oldest completion
861          time are deleted first."
862     DEFVAL { 1 }
863     ::= { smLaunchEntry 7 }
864
865 smLaunchLifeTime OBJECT-TYPE
866     SYNTAX      TimeInterval
867     UNITS       "centi-seconds"
868     MAX-ACCESS  read-create
869     STATUS      current
870     DESCRIPTION
871         "The default maximum amount of time a script launched
872          from this entry may run. The value of this object is used
873          to initialize the smRunLifeTime object when a script is
874          launched. Changing the value of an smLaunchLifeTime
875          instance does not affect scripts previously launched from
876
877
878          this entry."
879     DEFVAL { 360000 }
880     ::= { smLaunchEntry 8 }
881
882 smLaunchExpireTime OBJECT-TYPE
883     SYNTAX      TimeInterval
884     UNITS       "centi-seconds"
885     MAX-ACCESS  read-create
886     STATUS      current
887     DESCRIPTION
888         "The default maximum amount of time information about a
889          script launched from this entry is kept in the smRunTable
890          after the script has completed execution.  The value of
891          this object is used to initialize the smRunExpireTime
892          object when a script is launched. Changing the value of an
893          smLaunchExpireTime instance does not affect scripts
894          previously launched from this entry."
895     DEFVAL { 360000 }
896     ::= { smLaunchEntry 9 }
897
898 smLaunchStart OBJECT-TYPE
899     SYNTAX      Integer32 (0..2147483647)
900     MAX-ACCESS  read-create
901     STATUS      current
902     DESCRIPTION
903         "This object is used to start the execution of scripts.
904          When retrieved, the value will be the value of smRunIndex
905          for the last script that started execution by manipulating
906          this object. The value will be zero if no script started
907          execution yet.
908
909          A script is started by setting this object to an unused
910          smRunIndex value. A new row in the smRunTable will be
911          created which is indexed by the value supplied by the
912          set-request in addition to the value of smLaunchOwner and
913          smLaunchName. An unused value can be obtained by reading
914          the smLaunchRunIndexNext object.
915
916          Setting this object to the special value 0 will start
917          the script with a self-generated smRunIndex value. The
918          consequence is that the script invoker has no reliable
919          way to determine the smRunIndex value for this script
920          invocation and that the invoker has therefore no way
921          to obtain the results from this script invocation. The
922          special value 0 is however useful for scheduled script
923          invocations.
924
925          If this object is set, the following checks must be
926
927
928          performed:
929
930          1) The value of the smLaunchOperStatus object in this
931             entry of the smLaunchTable must be `enabled'.
932          2) The values of smLaunchScriptOwner and
933             smLaunchScriptName of this row must identify an
934             existing entry in the smScriptTable.
935          3) The value of smScriptOperStatus of this entry must
936             be `enabled'.
937          4) The principal performing the set operation must have
938             read access to the script. This must be checked by
939             calling the isAccessAllowed abstract service interface
940             defined in RFC 2271 on the row in the smScriptTable
941             identified by smLaunchScriptOwner and smLaunchScriptName.
942             The isAccessAllowed abstract service interface must be
943             called on all columnar objects in the smScriptTable with
944             a MAX-ACCESS value different than `not-accessible'. The
945             test fails as soon as a call indicates that access is
946             not allowed.
947          5) If the value provided by the set operation is not 0,
948             a check must be made that the value is currently not
949             in use. Otherwise, if the value provided by the set
950             operation is 0, a suitable unused value must be
951             generated.
952          6) The number of currently executing scripts invoked
953             from this smLaunchTable entry must be less than
954             smLaunchMaxRunning.
955
956          Attempts to start a script will fail with an
957          inconsistentValue error if one of the checks described
958          above fails.
959
960          Otherwise, if all checks have been passed, a new entry
961          in the smRunTable will be created indexed by smLaunchOwner,
962          smLaunchName and the new value for smRunIndex. The value
963          of smLaunchArgument will be copied into smRunArgument,
964          the value of smLaunchLifeTime will be copied to
965          smRunLifeTime, and the value of smLaunchExpireTime
966          will be copied to smRunExpireTime.
967
968          The smRunStartTime will be set to the current time and
969          the smRunState will be set to `initializing' before the
970          script execution is initiated in the appropriate runtime
971          system.
972
973          Note that the data type and the range of this object must
974          be consistent with the smRunIndex object. Since this
975          object might be written from the scheduling MIB, the
976
977
978          data type Integer32 rather than Unsigned32 is used."
979     DEFVAL { 0 }
980     ::= { smLaunchEntry 10 }
981
982 smLaunchControl OBJECT-TYPE
983     SYNTAX      INTEGER {
984                     abort(1),
985                     suspend(2),
986                     resume(3),
987                     nop(4)
988                 }
989     MAX-ACCESS  read-create
990     STATUS      current
991     DESCRIPTION
992         "This object is used to request a state change for all
993          running scripts in the smRunTable that were started from
994          this row in the smLaunchTable.
995
996          Setting this object to abort(1), suspend(2) or resume(3)
997          will set the smRunControl object of all applicable rows
998          in the smRunTable to abort(1), suspend(2) or resume(3)
999          respectively. The phrase `applicable rows' means the set of
1000          rows which were created from this entry in the smLaunchTable
1001          and whose value of smRunState allows the corresponding
1002          state change as described in the definition of the
1003          smRunControl object. Setting this object to nop(4) has no
1004          effect.
1005
1006          Attempts to set this object lead to an inconsistentValue
1007          error only if all implicated sets on all the applicable
1008          rows lead to inconsistentValue errors. It is not allowed
1009          to return an inconsistentValue error if at least one state
1010          change on one of the applicable rows was successful."
1011     DEFVAL { nop }
1012     ::= { smLaunchEntry 11 }
1013
1014 smLaunchAdminStatus OBJECT-TYPE
1015     SYNTAX      INTEGER {
1016                     enabled(1),
1017                     disabled(2),
1018                     autostart(3)
1019                 }
1020     MAX-ACCESS  read-create
1021     STATUS      current
1022     DESCRIPTION
1023         "The value of this object indicates the desired status of
1024          this launch table entry. The values enabled(1) and
1025          autostart(3) both indicate that the launch table entry
1026
1027
1028          should transition into the operational enabled(1) state as
1029          soon as the associated script table entry is enabled(1).
1030
1031          The value autostart(3) further indicates that the script
1032          is started automatically by conceptually writing the
1033          value 0 into the associated smLaunchStart object during
1034          the transition from the `disabled' into the `enabled'
1035          operational state. This is useful for scripts that are
1036          to be launched on system start-up."
1037     DEFVAL { disabled }
1038     ::= { smLaunchEntry 12 }
1039
1040 smLaunchOperStatus OBJECT-TYPE
1041     SYNTAX      INTEGER {
1042                     enabled(1),
1043                     disabled(2),
1044                     expired(3)
1045                 }
1046     MAX-ACCESS  read-only
1047     STATUS      current
1048     DESCRIPTION
1049         "The value of this object indicates the actual status of
1050          this launch table entry.  The smLaunchOperStatus object
1051          may have the following values:
1052
1053          - `enabled' indicates that the launch table entry is
1054            available and can be used to start scripts.
1055
1056          - `disabled' indicates that the launch table entry can
1057            not be used to start scripts.
1058
1059          - `expired' indicates that the launch table entry can
1060            not be used to start scripts and will disappear as
1061            soon as all smRunTable entries associated with this
1062            launch table entry have disappeared.
1063
1064          The value `enabled' requires that the smLaunchRowStatus
1065          object is active. The value `disabled' requires that there
1066          are no entries in the smRunTable associated with this
1067          smLaunchTable entry."
1068     DEFVAL { disabled }
1069     ::= { smLaunchEntry 13 }
1070
1071 smLaunchRunIndexNext OBJECT-TYPE
1072     SYNTAX      Integer32 (1..2147483647)
1073     MAX-ACCESS  read-only
1074     STATUS      current
1075     DESCRIPTION
1076
1077
1078         "This variable is used for creating rows in the smRunTable.
1079          The value of this variable is a currently unused value
1080          for smRunIndex, which can be written into the smLaunchStart
1081          object associated with this row to launch a script.
1082
1083          The value returned when reading this variable must be unique
1084          for the smLaunchOwner and smLaunchName associated with this
1085          row. Subsequent attempts to read this variable must return
1086          different values.
1087
1088          This variable will return the special value 0 if no new rows
1089          can be created.
1090
1091          Note that the data type and the range of this object must be
1092          consistent with the definition of smRunIndex."
1093     ::= { smLaunchEntry 14 }
1094
1095 smLaunchStorageType OBJECT-TYPE
1096     SYNTAX      StorageType
1097     MAX-ACCESS  read-create
1098     STATUS      current
1099     DESCRIPTION
1100         "This object defines if this row is kept in volatile storage
1101          and lost upon reboot or if this row is backed up by stable
1102          storage.
1103
1104          The value of smLaunchStorageType is only meaningful if the
1105          value of the corresponding RowStatus object is active.
1106
1107          If smLaunchStorageType has the value permanent(4), then all
1108          objects whose MAX-ACCESS value is read-create must be
1109          writable, with the exception of the smLaunchStorageType and
1110          smLaunchRowStatus objects, which shall be read-only."
1111     DEFVAL { volatile }
1112     ::= { smLaunchEntry 15 }
1113
1114 smLaunchRowStatus OBJECT-TYPE
1115     SYNTAX      RowStatus
1116     MAX-ACCESS  read-create
1117     STATUS      current
1118     DESCRIPTION
1119         "A control that allows entries to be added and removed from
1120          this table.
1121
1122          Attempts to `destroy' a row or to set a row `notInService'
1123          while the smLaunchOperStatus is `enabled' will result in
1124          an inconsistentValue error.
1125
1126
1127
1128          Attempts to `destroy' a row or to set a row `notInService'
1129          where the value of the smLaunchStorageType object is
1130          `permanent' or `readOnly' will result in an
1131          inconsistentValue error.
1132
1133          The value of this object has no effect on whether other
1134          objects in this conceptual row can be modified."
1135     ::= { smLaunchEntry 16 }
1136
1137 smLaunchError OBJECT-TYPE
1138     SYNTAX      SnmpAdminString
1139     MAX-ACCESS  read-only
1140     STATUS      current
1141     DESCRIPTION
1142         "This object contains a descriptive error message if an
1143          attempt to launch a script fails. Implementations must reset
1144          the error message to a zero-length string when a new attempt
1145          to launch a script is started."
1146     DEFVAL { ''H }
1147     ::= { smLaunchEntry 17 }
1148
1149 smLaunchLastChange OBJECT-TYPE
1150     SYNTAX      DateAndTime
1151     MAX-ACCESS  read-only
1152     STATUS      current
1153     DESCRIPTION
1154         "The date and time when this launch table entry was last
1155          modified. The value '0000000000000000'H is returned if
1156          the launch table entry has not yet been modified.
1157
1158          Note that a change of smLaunchStart, smLaunchControl,
1159          smLaunchRunIndexNext, smLaunchRowExpireTime, or the
1160          resetting of smLaunchError is not considered a change
1161          of this launch table entry."
1162     DEFVAL { '0000000000000000'H }
1163     ::= { smLaunchEntry 18 }
1164
1165 smLaunchRowExpireTime OBJECT-TYPE
1166     SYNTAX      TimeInterval
1167     UNITS       "centi-seconds"
1168     MAX-ACCESS  read-create
1169     STATUS      current
1170     DESCRIPTION
1171         "The value of this object specifies how long this row remains
1172          in the `enabled' or `disabled' operational state. The value
1173          reported by this object ticks backwards. When the value
1174          reaches 0, it stops ticking backward and the row is
1175          deleted if there are no smRunTable entries associated with
1176
1177
1178          this smLaunchTable entry. Otherwise, the smLaunchOperStatus
1179          changes to `expired' and the row deletion is deferred
1180          until there are no smRunTable entries associated with this
1181          smLaunchTable entry.
1182
1183          The smLaunchRowExpireTime will not tick backwards if it is
1184          set to its maximum value (2147483647). In other words,
1185          setting this object to its maximum value turns the timer
1186          off.
1187
1188          The value of this object may be set in order to increase
1189          or reduce the remaining time that the launch table entry
1190          may be used. Setting the value to 0 will cause an immediate
1191          row deletion or transition into the `expired' operational
1192          state.
1193
1194          It is not possible to set this object while the operational
1195          status is `expired'. Attempts to modify this object while
1196          the operational status is `expired' leads to an
1197          inconsistentValue error.
1198
1199          Note that the timer ticks backwards independent of the
1200          operational state of the launch table entry."
1201     DEFVAL { 2147483647 }
1202     ::= { smLaunchEntry 19 }
1203
1204
1205 smRunTable OBJECT-TYPE
1206     SYNTAX      SEQUENCE OF SmRunEntry
1207     MAX-ACCESS  not-accessible
1208     STATUS      current
1209     DESCRIPTION
1210         "This table lists and describes scripts that are currently
1211          running or have been running in the past."
1212     ::= { smRunObjects 2 }
1213
1214 smRunEntry OBJECT-TYPE
1215     SYNTAX      SmRunEntry
1216     MAX-ACCESS  not-accessible
1217     STATUS      current
1218     DESCRIPTION
1219         "An entry describing a particular running or finished
1220          script."
1221     INDEX { smLaunchOwner, smLaunchName, smRunIndex }
1222     ::= { smRunTable 1 }
1223
1224 SmRunEntry ::= SEQUENCE {
1225     smRunIndex          Integer32,
1226
1227
1228     smRunArgument       OCTET STRING,
1229     smRunStartTime      DateAndTime,
1230     smRunEndTime        DateAndTime,
1231     smRunLifeTime       TimeInterval,
1232     smRunExpireTime     TimeInterval,
1233     smRunExitCode       INTEGER,
1234     smRunResult         OCTET STRING,
1235     smRunControl        INTEGER,
1236     smRunState          INTEGER,
1237     smRunError          SnmpAdminString,
1238     smRunResultTime     DateAndTime,
1239     smRunErrorTime      DateAndTime
1240 }
1241
1242 smRunIndex OBJECT-TYPE
1243     SYNTAX      Integer32 (1..2147483647)
1244     MAX-ACCESS  not-accessible
1245     STATUS      current
1246     DESCRIPTION
1247         "The locally arbitrary, but unique identifier associated
1248          with this running or finished script. This value must be
1249          unique for all rows in the smRunTable with the same
1250          smLaunchOwner and smLaunchName.
1251
1252          Note that the data type and the range of this object must
1253          be consistent with the definition of smLaunchRunIndexNext
1254          and smLaunchStart."
1255     ::= { smRunEntry 1 }
1256
1257 smRunArgument OBJECT-TYPE
1258     SYNTAX      OCTET STRING
1259     MAX-ACCESS  read-only
1260     STATUS      current
1261     DESCRIPTION
1262         "The argument supplied to the script when it started."
1263     DEFVAL { ''H }
1264     ::= { smRunEntry 2 }
1265
1266 smRunStartTime OBJECT-TYPE
1267     SYNTAX      DateAndTime
1268     MAX-ACCESS  read-only
1269     STATUS      current
1270     DESCRIPTION
1271         "The date and time when the execution started. The value
1272          '0000000000000000'H is returned if the script has not
1273          started yet."
1274     DEFVAL { '0000000000000000'H }
1275     ::= { smRunEntry 3 }
1276
1277
1278 smRunEndTime OBJECT-TYPE
1279     SYNTAX      DateAndTime
1280     MAX-ACCESS  read-only
1281     STATUS      current
1282     DESCRIPTION
1283         "The date and time when the execution terminated. The value
1284          '0000000000000000'H is returned if the script has not
1285          terminated yet."
1286     DEFVAL { '0000000000000000'H }
1287     ::= { smRunEntry 4 }
1288
1289 smRunLifeTime OBJECT-TYPE
1290     SYNTAX      TimeInterval
1291     UNITS       "centi-seconds"
1292     MAX-ACCESS  read-write
1293     STATUS      current
1294     DESCRIPTION
1295         "This object specifies how long the script can execute.
1296          This object returns the remaining time that the script
1297          may run. The object is initialized with the value of the
1298          associated smLaunchLifeTime object and ticks backwards.
1299          The script is aborted immediately when the value reaches 0.
1300
1301          The value of this object may be set in order to increase or
1302          reduce the remaining time that the script may run. Setting
1303          this value to 0 will abort script execution immediately,
1304          and, if the value of smRunExpireTime is also 0, will remove
1305          this entry from the smRunTable once it has terminated.
1306
1307          If smRunLifeTime is set to its maximum value (2147483647),
1308          either by a set operation or by its initialization from the
1309          smLaunchLifeTime object, then it will not tick backwards.
1310          A running script with a maximum smRunLifeTime value will
1311          thus never be terminated with a `lifeTimeExceeded' exit
1312          code.
1313
1314          The value of smRunLifeTime reflects the real-time execution
1315          time as seen by the outside world. The value of this object
1316          will always be 0 for a script that finished execution, that
1317          is smRunState has the value `terminated'.
1318
1319          The value of smRunLifeTime does not change while a script
1320          is suspended, that is smRunState has the value `suspended'.
1321          Note that this does not affect set operations. It is legal
1322          to modify smRunLifeTime via set operations while a script
1323          is suspended."
1324     ::= { smRunEntry 5 }
1325
1326
1327
1328 smRunExpireTime OBJECT-TYPE
1329     SYNTAX      TimeInterval
1330     UNITS       "centi-seconds"
1331     MAX-ACCESS  read-write
1332     STATUS      current
1333     DESCRIPTION
1334         "The value of this object specifies how long this row can
1335          exist in the smRunTable after the script has terminated.
1336          This object returns the remaining time that the row may
1337          exist before it is aged out. The object is initialized with
1338          the value of the associated smLaunchExpireTime object and
1339          ticks backwards. The entry in the smRunTable is destroyed
1340          when the value reaches 0 and the smRunState has the value
1341          `terminated'.
1342
1343          The value of this object may be set in order to increase or
1344          reduce the remaining time that the row may exist.  Setting
1345          the value to 0 will destroy this entry as soon as the
1346          smRunState has the value `terminated'."
1347     ::= { smRunEntry 6 }
1348
1349 smRunExitCode OBJECT-TYPE
1350     SYNTAX      INTEGER {
1351                     noError(1),
1352                     halted(2),
1353                     lifeTimeExceeded(3),
1354                     noResourcesLeft(4),
1355                     languageError(5),
1356                     runtimeError(6),
1357                     invalidArgument(7),
1358                     securityViolation(8),
1359                     genericError(9)
1360                 }
1361     MAX-ACCESS  read-only
1362     STATUS      current
1363     DESCRIPTION
1364         "The value of this object indicates the reason why a
1365          script finished execution. The smRunExitCode code may have
1366          one of the following values:
1367
1368          - `noError', which indicates that the script completed
1369             successfully without errors;
1370
1371          - `halted', which indicates that the script was halted
1372             by a request from an authorized manager;
1373
1374          - `lifeTimeExceeded', which indicates that the script
1375             exited because a time limit was exceeded;
1376
1377
1378          - `noResourcesLeft', which indicates that the script
1379             exited because it ran out of resources (e.g. memory);
1380
1381          - `languageError', which indicates that the script exited
1382             because of a language error (e.g. a syntax error in an
1383             interpreted language);
1384
1385          - `runtimeError', which indicates that the script exited
1386             due to a runtime error (e.g. a division by zero);
1387
1388          - `invalidArgument', which indicates that the script could
1389             not be run because of invalid script arguments;
1390
1391          - `securityViolation', which indicates that the script
1392             exited due to a security violation;
1393
1394          - `genericError', which indicates that the script exited
1395             for an unspecified reason.
1396
1397          If the script has not yet begun running, or is currently
1398          running, the value will be `noError'."
1399     DEFVAL { noError }
1400     ::= { smRunEntry 7 }
1401
1402 smRunResult OBJECT-TYPE
1403     SYNTAX      OCTET STRING
1404     MAX-ACCESS  read-only
1405     STATUS      current
1406     DESCRIPTION
1407         "The result value produced by the running script. Note that
1408          the result may change while the script is executing."
1409     DEFVAL { ''H }
1410     ::= { smRunEntry 8 }
1411
1412 smRunControl OBJECT-TYPE
1413     SYNTAX      INTEGER {
1414                     abort(1),
1415                     suspend(2),
1416                     resume(3),
1417                     nop(4)
1418                 }
1419     MAX-ACCESS  read-write
1420     STATUS      current
1421     DESCRIPTION
1422         "The value of this object indicates the desired status of the
1423          script execution defined by this row.
1424
1425          Setting this object to `abort' will abort execution if the
1426
1427
1428          value of smRunState is `initializing', `executing',
1429          `suspending', `suspended' or `resuming'. Setting this object
1430          to `abort' when the value of smRunState is `aborting' or
1431          `terminated', or if the implementation can determine that
1432          the attempt to abort the execution would fail, will result
1433          in an inconsistentValue error.
1434
1435          Setting this object to `suspend' will suspend execution
1436          if the value of smRunState is `executing'. Setting this
1437          object to `suspend' will cause an inconsistentValue error
1438          if the value of smRunState is not `executing' or if the
1439          implementation can determine that the attempt to suspend
1440          the execution would fail.
1441
1442          Setting this object to `resume' will resume execution
1443          if the value of smRunState is `suspending' or
1444          `suspended'. Setting this object to `resume' will cause an
1445          inconsistentValue error if the value of smRunState is
1446          not `suspended' or if the implementation can determine
1447          that the attempt to resume the execution would fail.
1448
1449          Setting this object to nop(4) has no effect."
1450     DEFVAL { nop }
1451     ::= { smRunEntry 9 }
1452
1453 smRunState OBJECT-TYPE
1454     SYNTAX      INTEGER {
1455                     initializing(1),
1456                     executing(2),
1457                     suspending(3),
1458                     suspended(4),
1459                     resuming(5),
1460                     aborting(6),
1461                     terminated(7)
1462                 }
1463     MAX-ACCESS  read-only
1464     STATUS      current
1465     DESCRIPTION
1466         "The value of this object indicates the script's execution
1467          state. If the script has been invoked but has not yet
1468          begun execution, the value will be `initializing'. If the
1469          script is running, the value will be `executing'.
1470
1471          A running script which received a request to suspend
1472          execution first transitions into a temporary `suspending'
1473          state.  The temporary `suspending' state changes to
1474          `suspended' when the script has actually been suspended. The
1475          temporary `suspending' state changes back to `executing' if
1476
1477
1478          the attempt to suspend the running script fails.
1479
1480          A suspended script which received a request to resume
1481          execution first transitions into a temporary `resuming'
1482          state. The temporary `resuming' state changes to `running'
1483          when the script has actually been resumed. The temporary
1484          `resuming' state changes back to `suspended' if the attempt
1485          to resume the suspended script fails.
1486
1487          A script which received a request to abort execution but
1488          which is still running first transitions into a temporary
1489          `aborting' state.
1490
1491          A script which has finished its execution is `terminated'."
1492     ::= { smRunEntry 10 }
1493
1494 smRunError OBJECT-TYPE
1495     SYNTAX      SnmpAdminString
1496     MAX-ACCESS  read-only
1497     STATUS      current
1498     DESCRIPTION
1499         "This object contains a descriptive error message if the
1500          script startup or execution raised an abnormal condition.
1501          An implementation must store a descriptive error message
1502          in this object if the script exits with the smRunExitCode
1503          `genericError'."
1504     DEFVAL { ''H }
1505     ::= { smRunEntry 11 }
1506
1507 smRunResultTime OBJECT-TYPE
1508     SYNTAX      DateAndTime
1509     MAX-ACCESS  read-only
1510     STATUS      current
1511     DESCRIPTION
1512         "The date and time when the smRunResult was last updated.
1513          The value '0000000000000000'H is returned if smRunResult
1514          has not yet been updated after the creation of this
1515          smRunTable entry."
1516     DEFVAL { '0000000000000000'H }
1517     ::= { smRunEntry 12 }
1518
1519 smRunErrorTime OBJECT-TYPE
1520     SYNTAX      DateAndTime
1521     MAX-ACCESS  read-only
1522     STATUS      current
1523     DESCRIPTION
1524         "The date and time when the smRunError was last updated.
1525          The value '0000000000000000'H is returned if smRunError
1526
1527
1528          has not yet been updated after the creation of this
1529          smRunTable entry."
1530     DEFVAL { '0000000000000000'H }
1531     ::= { smRunEntry 13 }
1532
1533 --
1534 -- Notifications. The definition of smTraps makes notification
1535 -- registrations reversible (see STD 58, RFC 2578).
1536 --
1537
1538 smTraps OBJECT IDENTIFIER ::= { smNotifications 0 }
1539
1540 smScriptAbort NOTIFICATION-TYPE
1541     OBJECTS     { smRunExitCode, smRunEndTime, smRunError }
1542     STATUS      current
1543     DESCRIPTION
1544         "This notification is generated whenever a running script
1545          terminates with an smRunExitCode unequal to `noError'."
1546     ::= { smTraps 1 }
1547
1548 smScriptResult NOTIFICATION-TYPE
1549     OBJECTS     { smRunResult }
1550     STATUS      current
1551     DESCRIPTION
1552         "This notification can be used by scripts to notify other
1553          management applications about results produced by the
1554          script.
1555
1556          This notification is not automatically generated by the
1557          Script MIB implementation. It is the responsibility of
1558          the executing script to emit this notification where it
1559          is appropriate to do so."
1560     ::= { smTraps 2 }
1561
1562 smScriptException NOTIFICATION-TYPE
1563     OBJECTS     { smRunError }
1564     STATUS      current
1565     DESCRIPTION
1566         "This notification can be used by scripts to notify other
1567          management applications about script errors.
1568
1569          This notification is not automatically generated by the
1570          Script MIB implementation. It is the responsibility of
1571          the executing script or the runtime system to emit this
1572          notification where it is appropriate to do so."
1573     ::= { smTraps 3 }
1574
1575 -- conformance information
1576
1577
1578 smCompliances OBJECT IDENTIFIER ::= { smConformance 1 }
1579 smGroups      OBJECT IDENTIFIER ::= { smConformance 2 }
1580
1581 -- compliance statements
1582
1583 smCompliance2 MODULE-COMPLIANCE
1584     STATUS      current
1585     DESCRIPTION
1586         "The compliance statement for SNMP entities which implement
1587          the Script MIB."
1588     MODULE      -- this module
1589     MANDATORY-GROUPS {
1590             smLanguageGroup, smScriptGroup2, smLaunchGroup2,
1591             smRunGroup2, smNotificationsGroup2
1592     }
1593     GROUP   smCodeGroup
1594     DESCRIPTION
1595         "The smCodeGroup is mandatory only for those implementations
1596          that support the downloading of scripts via SNMP."
1597     OBJECT  smScriptSource
1598     MIN-ACCESS  read-only
1599     DESCRIPTION
1600         "The smScriptSource object is read-only for implementations
1601          that are not able to download script code from a URL."
1602     OBJECT smCodeText
1603     DESCRIPTION
1604         "A compliant implementation need only support write access to
1605          the smCodeText object only during row creation."
1606     OBJECT smLaunchArgument
1607     DESCRIPTION
1608         "A compliant implementation has to support a minimum size
1609          for smLaunchArgument of 255 octets."
1610     OBJECT smRunArgument
1611     DESCRIPTION
1612         "A compliant implementation has to support a minimum size
1613          for smRunArgument of 255 octets."
1614     OBJECT smRunResult
1615     DESCRIPTION
1616         "A compliant implementation has to support a minimum size
1617          for smRunResult of 255 octets."
1618     OBJECT smRunState
1619     DESCRIPTION
1620         "A compliant implementation does not have to support script
1621          suspension and the smRunState `suspended'. Such an
1622          implementation will change into the `suspending' state
1623          when the smRunControl is set to `suspend' and remain in this
1624          state until smRunControl is set to `resume' or the script
1625          terminates."
1626
1627
1628     ::= { smCompliances 2 }
1629
1630 smLanguageGroup OBJECT-GROUP
1631     OBJECTS {
1632         smLangLanguage, smLangVersion,
1633         smLangVendor, smLangRevision,
1634         smLangDescr, smExtsnExtension,
1635         smExtsnVersion, smExtsnVendor,
1636         smExtsnRevision, smExtsnDescr
1637     }
1638     STATUS      current
1639     DESCRIPTION
1640         "A collection of objects providing information about the
1641          capabilities of the scripting engine."
1642     ::= { smGroups 1 }
1643
1644 smScriptGroup2 OBJECT-GROUP
1645     OBJECTS {
1646         smScriptDescr, smScriptLanguage,
1647         smScriptSource, smScriptAdminStatus,
1648         smScriptOperStatus, smScriptStorageType,
1649         smScriptRowStatus, smScriptError,
1650         smScriptLastChange
1651     }
1652     STATUS      current
1653     DESCRIPTION
1654         "A collection of objects providing information about
1655          installed scripts."
1656     ::= { smGroups 7 }
1657
1658 smCodeGroup OBJECT-GROUP
1659     OBJECTS {
1660         smCodeText, smCodeRowStatus
1661     }
1662     STATUS      current
1663     DESCRIPTION
1664         "A collection of objects used to download or modify scripts
1665          by using SNMP set requests."
1666     ::= { smGroups 3 }
1667
1668 smLaunchGroup2 OBJECT-GROUP
1669     OBJECTS {
1670         smLaunchScriptOwner, smLaunchScriptName,
1671         smLaunchArgument, smLaunchMaxRunning,
1672         smLaunchMaxCompleted, smLaunchLifeTime,
1673         smLaunchExpireTime, smLaunchStart,
1674         smLaunchControl, smLaunchAdminStatus,
1675         smLaunchOperStatus, smLaunchRunIndexNext,
1676
1677
1678         smLaunchStorageType, smLaunchRowStatus,
1679         smLaunchError, smLaunchLastChange,
1680         smLaunchRowExpireTime
1681     }
1682     STATUS      current
1683     DESCRIPTION
1684         "A collection of objects providing information about scripts
1685          that can be launched."
1686     ::= { smGroups 8 }
1687
1688 smRunGroup2 OBJECT-GROUP
1689     OBJECTS {
1690         smRunArgument, smRunStartTime,
1691         smRunEndTime, smRunLifeTime,
1692         smRunExpireTime, smRunExitCode,
1693         smRunResult, smRunState,
1694         smRunControl, smRunError,
1695         smRunResultTime, smRunErrorTime
1696     }
1697     STATUS      current
1698     DESCRIPTION
1699         "A collection of objects providing information about running
1700          scripts."
1701     ::= { smGroups 9 }
1702
1703 smNotificationsGroup2 NOTIFICATION-GROUP
1704     NOTIFICATIONS {
1705         smScriptAbort,
1706         smScriptResult,
1707         smScriptException
1708     }
1709     STATUS      current
1710     DESCRIPTION
1711         "The notifications emitted by the Script MIB."
1712     ::= { smGroups 10 }
1713
1714 --
1715 -- Deprecated compliance and conformance group definitions
1716 -- from RFC 2592.
1717 --
1718
1719 smCompliance MODULE-COMPLIANCE
1720     STATUS      deprecated
1721     DESCRIPTION
1722         "The compliance statement for SNMP entities which implement
1723          the Script MIB."
1724     MODULE      -- this module
1725     MANDATORY-GROUPS {
1726
1727
1728             smLanguageGroup, smScriptGroup, smLaunchGroup, smRunGroup
1729     }
1730     GROUP   smCodeGroup
1731     DESCRIPTION
1732         "The smCodeGroup is mandatory only for those implementations
1733          that support the downloading of scripts via SNMP."
1734     OBJECT  smScriptSource
1735     MIN-ACCESS  read-only
1736     DESCRIPTION
1737         "The smScriptSource object is read-only for implementations
1738          that are not able to download script code from a URL."
1739     OBJECT smCodeText
1740     DESCRIPTION
1741         "A compliant implementation need only support write access
1742          to the smCodeText object during row creation."
1743     OBJECT smLaunchArgument
1744     DESCRIPTION
1745         "A compliant implementation has to support a minimum size
1746          for smLaunchArgument of 255 octets."
1747     OBJECT smRunArgument
1748     DESCRIPTION
1749         "A compliant implementation has to support a minimum size
1750          for smRunArgument of 255 octets."
1751     OBJECT smRunResult
1752     DESCRIPTION
1753         "A compliant implementation has to support a minimum size
1754          for smRunResult of 255 octets."
1755     OBJECT smRunState
1756     DESCRIPTION
1757         "A compliant implementation does not have to support script
1758          suspension and the smRunState `suspended'. Such an
1759          implementation will change into the `suspending' state
1760          when the smRunControl is set to `suspend' and remain in this
1761          state until smRunControl is set to `resume' or the script
1762          terminates."
1763     ::= { smCompliances 1 }
1764
1765 smScriptGroup OBJECT-GROUP
1766     OBJECTS {
1767         smScriptDescr, smScriptLanguage,
1768         smScriptSource, smScriptAdminStatus,
1769         smScriptOperStatus, smScriptStorageType,
1770         smScriptRowStatus
1771     }
1772     STATUS      deprecated
1773     DESCRIPTION
1774         "A collection of objects providing information about
1775          installed scripts."
1776
1777
1778     ::= { smGroups 2 }
1779
1780 smLaunchGroup OBJECT-GROUP
1781     OBJECTS {
1782         smLaunchScriptOwner, smLaunchScriptName,
1783         smLaunchArgument, smLaunchMaxRunning,
1784         smLaunchMaxCompleted, smLaunchLifeTime,
1785         smLaunchExpireTime, smLaunchStart,
1786         smLaunchControl, smLaunchAdminStatus,
1787         smLaunchOperStatus, smLaunchRunIndexNext,
1788         smLaunchStorageType, smLaunchRowStatus
1789     }
1790     STATUS      deprecated
1791     DESCRIPTION
1792         "A collection of objects providing information about scripts
1793          that can be launched."
1794     ::= { smGroups 4 }
1795
1796 smRunGroup OBJECT-GROUP
1797     OBJECTS {
1798         smRunArgument, smRunStartTime,
1799         smRunEndTime, smRunLifeTime,
1800         smRunExpireTime, smRunExitCode,
1801         smRunResult, smRunState,
1802         smRunControl, smRunError
1803     }
1804     STATUS      deprecated
1805     DESCRIPTION
1806         "A collection of objects providing information about running
1807          scripts."
1808     ::= { smGroups 5 }
1809
1810 smNotificationsGroup NOTIFICATION-GROUP
1811     NOTIFICATIONS {
1812         smScriptAbort,
1813         smScriptResult
1814     }
1815     STATUS      deprecated
1816     DESCRIPTION
1817         "The notifications emitted by the Script MIB."
1818     ::= { smGroups 6 }
1819
1820 END