Imported Upstream version 0.4.8
[platform/upstream/libsmi.git] / pibs / tubs / META-POLICY-PIB-orig
1 META-POLICY-PIB PIB-DEFINITIONS ::= BEGIN 
2  
3 IMPORTS 
4      Unsigned32, timeticks, 
5      MODULE-IDENTITY, OBJECT-TYPE, 
6      InstanceId, ReferenceId 
7           FROM COPS-PR-SPPI 
8      TEXTUAL-CONVENTION 
9   
10           FROM SNMPv2-TC; 
11  
12 metaPolicyPib  MODULE-IDENTITY 
13      SUBJECT-CATEGORY { all } 
14      LAST-UPDATED "200104010000" 
15      ORGANIZATION "IETF" 
16      CONTACT-INFO " Andreas Polyrakis 
17                     Dept. of Computer Science, 
18                     University of Toronto, 
19                     10 King's College Road, 
20                     Toronto, Ontario,M5S 3G4, Canada. 
21                     e-mail: apolyr@cs.toronto.edu 
22                     Phone: ++1 (416) 978-4837 
23                     Fax: ++1 (416) 978 1931 
24  
25                     Raouf Boutaba 
26                     Dept. of Computer Science, 
27                     University of Waterloo, 
28                     200 University Avenue West, 
29                     Waterloo, Ontario N2L 3G1, Canada 
30                     e-mail: rboutaba@bbcr.uwaterloo.ca 
31                     Phone: ++1 (519) 888 4567 ext.4820 
32                     Fax: ++1 (519) 885 1208" 
33      DESCRIPTION 
34           "The meta-policy PIB module. It contains the classes 
35           that are necessary for the provisioning of meta-policy 
36           related information. This module is applicable, 
37           but not mandatory, to all subject-categories" 
38  
39      ::= { tbd } 
40 -- The root OID for PRCs in the Meta-Policy PIB 
41  
42  
43 --- 
44 --- Textual Conventions 
45 --- 
46 BERValue ::= TEXTUAL-CONVENTION 
47      STATUS       current 
48      DESCRIPTION 
49           "A sequence of octets that encodes a value using BER. 
50           The suppoted BER types are (borrowed by SNMPv2): 
51           Type                | BER identifier 
52           --------------------|---------------- 
53  
54           INTEGER             | 02 
55           BIT STRING          | 03 
56           OCTET STRING        | 04 
57           NULL                | 05 
58           OBJECT IDENTIFIER   | 06 
59           IP ADDRESS          | 40 
60           COUNTER32           | 41 
61           GAUGE32             | 42 
62           TIMETICKS           | 43 
63           OPAQUE              | 44 
64   
65  
66           By using this type, the PEP can store values for different  
67           types of parameters in the same class (PRC)." 
68  
69      SYNTAX OCTET STRING (SIZE (0..16)) 
70  
71 XMLString ::= TEXTUAL-CONVENTION 
72        STATUS       current 
73        DESCRIPTION 
74           "A string that contains a logical expression encoded using  
75           XML. The semantics of the XML tags are defined in special  
76           DTDs, which the PEP declares that supports." 
77        SYNTAX OCTET STRING (SIZE (0..1024)) 
78 --- 
79 --- End of Textual Conventions 
80 --- 
81  
82 ----------------------------------------------- 
83 ----------------------------------------------- 
84  
85  
86 -- Meta-Policy Capabilities Group 
87 metaPolicyCapabilitiesClasses 
88      OBJECT IDENTIFIER ::= { metaPolicyPib 1 } 
89  
90  
91 --- 
92 --- Meta-Policy Capabilities Table 
93 --- 
94 xmlDTDTable OBJECT-TYPE 
95      SYNTAX SEQUENCE OF xmlDTDEntry 
96      PIB-ACCESS notify 
97      STATUS current 
98      DESCRIPTION 
99           "Each instance of this class specifies a PRC that 
100           identifies an XML DTD supported by the PEP for encoding 
101           logical expressions. If this class has no instances, 
102           then the PEP supports only expressions that are formed 
103           with boolean predicates and operators, and in this case 
104           the PDP MUST not attempt to install any XML-encoded 
105           expressions in the generalConditionTable." 
106      ::= { metaPolicyCapabilitiesClasses 1 } 
107  
108 xmlDTDEntry OBJECT-TYPE 
109      SYNTAX MetaPolicyCapabilitiesEntry 
110      STATUS current 
111      DESCRIPTION 
112           "An instance of the xmlDTDTable class that determines an 
113           XML DTD that can be used to encode a logical expression" 
114      INDEX { metaPolicyPrid } 
115      ::= { metaPolicyTable 1 } 
116  
117 XmlDTDEntry ::= 
118      SEQUENCE { 
119   
120           xmlDTDPrid           InstanceId, 
121           xmlDTDURL            SnmpAdminString 
122      } 
123  
124 xmlDTDPrid OBJECT-TYPE 
125      SYNTAX InstanceId 
126      STATUS current 
127      DESCRIPTION 
128           "An arbitrary integer that uniquely identifies an 
129           instance of the xmlDTD class." 
130      ::= { xmlDTDEntry 1 } 
131  
132 xmlDTDURL OBJECT-TYPE 
133      SYNTAX SnmpAdminString 
134      STATUS current 
135      DESCRIPTION 
136           "The XML DTD URL. A string that indicates the URL of an 
137           XML DTD that can be used for encoding expressions. 
138           These DTDs can be defined either by standardization 
139           organizations, such as IETF, or be vendor specific. 
140  
141           When the PDP receives a URL that uniquely identifies 
142           such a DTD, it knows that it may encode expressions 
143           according to this DTD that the PEP will be able to 
144           evaluate." 
145      ::= { xmlDTDEntry 2 } 
146  
147 --End of xmlDTDTable 
148  
149 ----------------------------------------------- 
150 ----------------------------------------------- 
151  
152 -- Base Meta-Policy Group 
153 metaPolicyClasses 
154      OBJECT IDENTIFIER ::= { metaPolicyPib 2 } 
155  
156  
157 --- 
158 --- Meta-Policy Table 
159 --- 
160 metaPolicyTable OBJECT-TYPE 
161      SYNTAX SEQUENCE OF metaPolicyEntry 
162      PIB-ACCESS INSTALL 
163      STATUS current 
164      DESCRIPTION 
165           "Each instance of this class specifies a PRC that 
166           represents a meta-policy. Each meta-policy, apart 
167           from a unique identifier and an optional name, it 
168           constists of a condition and a group of actions." 
169      ::= { metaPolicyClasses 1 } 
170  
171 metaPolicyEntry OBJECT-TYPE 
172      SYNTAX MetaPolicyEntry 
173      STATUS current 
174   
175      DESCRIPTION 
176           "An instance of the metaPolicy Class that represents 
177           a meta-policy." 
178      INDEX { metaPolicyPrid } 
179      ::= { metaPolicyTable 1 } 
180  
181 MetaPolicyEntry ::= 
182      SEQUENCE { 
183           metaPolicyPrid            InstanceId, 
184           metaPolicyName            SnmpAdminString, 
185           metaPolicyCondition       ReferenceId, 
186           metaPolicyActions         TagId 
187      } 
188  
189 metaPolicyPrid OBJECT-TYPE 
190      SYNTAX InstanceId 
191      STATUS current 
192      DESCRIPTION 
193           "An arbitrary integer that uniquely identifies an 
194           instance of the metaPolicy class." 
195      ::= { metaPolicyEntry 1 } 
196  
197 metaPolicyName OBJECT-TYPE 
198      SYNTAX SnmpAdminString 
199      STATUS current 
200      DESCRIPTION 
201           "A display string that represents the name of the 
202           meta-policy. It is reccomented that different 
203           meta-policies have different names. However, similar 
204           meta-policies may have the same name. 
205           Also, an empty string can be used as a name." 
206      ::= { metaPolicyEntry 2 } 
207  
208 metaPolicyCondition OBJECT-TYPE 
209      SYNTAX ReferenceId 
210      PIB-REFERENCES contitionTable 
211      STATUS current 
212      DESCRIPTION 
213           "This attribute associates the specific meta-policy with 
214           a condition in the condition Class. The condition MUST 
215  
216           exist when the meta-policy is installed. The meta-policy 
217           MUST always be assosiated with one condition (which means 
218           that the attribute can never be null/invalid." 
219      ::= { metaPolicyEntry 3 } 
220  
221 metaPolicyActions OBJECT-TYPE 
222      SYNTAX TagId 
223      PIB-REFERENCES actionsTable 
224      STATUS current 
225      DESCRIPTION 
226           "A tag that maps this instance (meta-policy) to a group 
227           of actions in the actions Class. Although the tag should 
228           map to at least one action, there might be cases where a 
229   
230           meta-policy is associated to no actions. However such 
231           cases should be avoided and only be temporal." 
232      ::= { metaPolicyEntry 4 } 
233 --End of metaPolicyTable 
234  
235 -- 
236 -- Meta-Policy Status Table 
237 -- 
238 metaPolicyStatusTable OBJECT-TYPE 
239      SYNTAX SEQUENCE OF metaPolicyStatusEntry 
240      PIB-ACCESS REPORT-ONLY 
241      STATUS current 
242      DESCRIPTION 
243           "This class augments the metaPolicy class. 
244           Each instance of this class defines a PRC that is used 
245           in order to report to the PDP the status of the 
246           meta-policies. 
247  
248           Also, information form this table can be used as a 
249           parameter to another meta-policy, as an alternative 
250           way to ensure that two priorities cannot be 
251           activated at the same time." 
252      ::= { metaPolicyClasses 2 } 
253  
254 metaPolicyStatusEntry OBJECT-TYPE 
255      SYNTAX MetaPolicyStatusEntry 
256      STATUS current 
257      DESCRIPTION 
258           "An instance of the metaPolicyStatus class that reports 
259           the status of the corresponding meta-policy in the 
260           metaPolicy class." 
261      AUGMENTS { metaPolicyEntry } 
262      ::= { metaPolicyStatusTable 1 } 
263  
264 metaPolicyStatusEntry ::= 
265      SEQUENCE { 
266           metaPolicyActive     TruthValue, 
267           metaPolicySuppressed TruthValue 
268      } 
269  
270 metaPolicyActive OBJECT-TYPE 
271      SYNTAX TruthValue 
272      STATUS current 
273      DESCRIPTION 
274           "True while the meta-policy is active" 
275      ::= { metaPolicyStatusEntry 1 } 
276  
277 metaPolicySuppress OBJECT-TYPE 
278      SYNTAX TruthValue 
279      STATUS current 
280      DESCRIPTION 
281           "If this meta-policy is prevented from being active by 
282           an other meta-policy (but its conditions are met), this 
283           attribute is set to true. 
284   
285  
286           If this meta-policy prevents another meta-policy from 
287           being active, then this attribute is true. 
288  
289           In other words: 
290           Active | Suppr.| 
291           -------------------------------- 
292            true  | true  | meta-policy active, 
293                          | it suppresses another one 
294            true  | false | meta-policy active, 
295                          | does not suppress another one 
296            false | true  | meta-policy inactive 
297                          | because it is suppressed by another one 
298            false | false | meta-policy inactive because 
299                          | the conditions are not met 
300           " 
301      ::= { metaPolicyStatusEntry 2 } 
302 --End of metaPolicyStatusTable 
303  
304  
305 --- 
306 --- Meta-Policy Priority Table 
307 --- 
308 metaPolicyPriorityTable OBJECT-TYPE 
309      SYNTAX SEQUENCE OF metaPolicyPriorityEntry 
310      PIB-ACCESS INSTALL 
311      STATUS current 
312      DESCRIPTION 
313           "This table reports conflicting meta-policies. 
314           When a meta-policy needs to be activated, the PEP 
315           MUST check if it is conflicting with another meta-policy, 
316           which is already active or needs to be activated at the 
317           same time. If so, the one that is referenced in the 
318           higherPriority attribute is activated and the other one 
319           is deactivated or remains deactivated. Similarly, when a 
320           meta-policy is deactivated, the PEP must check if a 
321           lower-priority meta-policy must now be activated." 
322      ::= { metaPolicyClasses 3 } 
323  
324 metaPolicyPriorityEntry OBJECT-TYPE 
325      SYNTAX MetaPolicyPriorityEntry 
326      STATUS current 
327      DESCRIPTION 
328           "An instance of the metaPolicyPriority Class that 
329           identifies the relative priority between two 
330           meta-policies." 
331      INDEX { metaPolicyPrid } 
332      ::= { metaPolicyPriorityTable 1 } 
333  
334 MetaPolicyPriorityEntry ::= 
335      SEQUENCE { 
336           metaPolicyPriorityPrid   InstanceId, 
337           higherPriority           ReferenceId, 
338           lowerPriority            ReferenceId, 
339   
340      } 
341  
342 metaPolicyPriorityPrid OBJECT-TYPE 
343      SYNTAX InstanceId 
344      STATUS current 
345      DESCRIPTION 
346           "An arbitrary integer  that uniquely identifies an 
347           instance of the metaPolicyPriority class." 
348      ::= { metaPolicyPriorityEntry 1 } 
349  
350 higherPriority OBJECT-TYPE 
351      SYNTAX ReferenceId 
352      PIB-REFERENCES metaPolicyTable 
353      STATUS current 
354      DESCRIPTION 
355           "This attribute references to the meta-policy that 
356           has higher priority than the one referenced by the 
357           lowerPriority attribute" 
358      ::= { metaPolicyPriorityEntry 2 } 
359  
360 lowerPriority OBJECT-TYPE 
361      SYNTAX ReferenceId 
362      PIB-REFERENCES metaPolicyTable 
363      STATUS current 
364      DESCRIPTION 
365  
366           "This attribute references to the meta-policy that 
367           has lower priority than the one referenced by the 
368           higherPriority attribute" 
369      ::= { metaPolicyPriorityEntry 3 } 
370  
371 --End of metaPolicyPriorityTable 
372 ----------------------------------------------- 
373 ---------------------------------------------- 
374  
375  
376 -- Condition Group 
377 conditionClasses 
378      OBJECT IDENTIFIER ::= { metaPolicyPib 3 } 
379  
380  
381 -- 
382 -- Condition Table 
383 -- 
384 conditionTable OBJECT-TYPE 
385      SYNTAX SEQUENCE OF conditionEntry 
386      PIB-ACCESS INSTALL 
387      STATUS current 
388      DESCRIPTION 
389           "Each instance of this PRC represents a boolean 
390           expression. The conditionss of the meta-policies are 
391           instances of this class. However, if the condition of 
392           a meta-policy contains more than one predicate, the 
393           predicates are also instances of this PRC. 
394   
395  
396           For instance, Suppose that we want to encode a condition 
397           A, which is evaluated as ( B OR C ), where B and C some 
398           other boolean expressions. 
399           In this case, A, B and C are instances of this PRC. 
400  
401           All instances of this PRC MUST be extended by an instance 
402           of one of the rest PRCs of this group, in order to denote 
403           if this condition should be evaluated based on simpler 
404           conditions, if it is a boolean operand or an other 
405           logical expression." 
406      ::= { conditionClasses 1 } 
407  
408 conditionEntry OBJECT-TYPE 
409      SYNTAX ConditionEntry 
410      STATUS current 
411      DESCRIPTION 
412           "An instance of the condition Class that defines a 
413           boolean condition" 
414      INDEX { conditionIndex } 
415      ::= { conditionTable 1 } 
416  
417 ConditionEntry ::= 
418      SEQUENCE { 
419           conditionPrid       InstanceId, 
420           conditionReverse    Truevalue 
421      } 
422  
423 conditionPrid OBJECT-TYPE 
424      SYNTAX InstanceId 
425      STATUS current 
426      DESCRIPTION 
427           "An arbitrary integer that uniquely identifies an 
428           instance of the condition class." 
429      ::= { conditionEntry 1 } 
430  
431 conditionReverse OBJECT-TYPE 
432      SYNTAX Truevalue 
433      STATUS current 
434      DESCRIPTION 
435           "if true, the negation of the logical expression 
436            is evaluated, instead." 
437      ::= { conditionEntry 2 } 
438 -- END OF conditionTable 
439  
440 -- 
441 -- Complex Condition Table 
442 -- 
443 complexConditionTable OBJECT-TYPE 
444      SYNTAX SEQUENCE OF complexConditionEntry 
445      PIB-ACCESS INSTALL 
446      STATUS current 
447      DESCRIPTION 
448           "Each instance of this PRC represents a complex 
449   
450           condition. It consists of two simplier conditions, 
451           and a logical operator that determines how the two 
452           terms are assosiated to compose the more 
453           complicated condition" 
454      ::= { conditionClasses 2 } 
455  
456 complexConditionEntry OBJECT-TYPE 
457      SYNTAX ComplexConditionEntry 
458      STATUS current 
459      DESCRIPTION 
460           "An instance of the complexCondition class that breaks a 
461           complex condition into two simpler ones." 
462      EXTENDS { conditionTable } 
463  
464      ::= { complexConditionTable } 
465  
466 ComplexConditionEntry ::= 
467      SEQUENCE { 
468           operator       Unsigned32, 
469           leftTerm       ReferenceId, 
470           rightTerm      ReferenceId 
471      } 
472  
473 operator OBJECT-TYPE 
474      SYNTAX Unsigned32 { 
475           AND (0), 
476           OR (1) 
477           } 
478      STATUS current 
479      DESCRIPTION 
480           "The logical operator in the complex condition" 
481      ::= { complexConditionEntry 1 } 
482  
483 leftTerm OBJECT-TYPE 
484      SYNTAX ReferenceId 
485      PIB-REFERENCES conditionTable 
486      STATUS current 
487      DESCRIPTION 
488           "A reference to the first simpler condition." 
489      ::= { complexConditionEntry 2 } 
490  
491 rightTerm OBJECT-TYPE 
492      SYNTAX ReferenceId 
493      PIB-REFERENCES conditionTable 
494      STATUS current 
495  
496      DESCRIPTION 
497           "A reference to the second simpler condition." 
498      ::= { complexConditionEntry 3 } 
499 -- END OF complexConditionTable 
500  
501 -- 
502 -- Boolean Condition Expression Table 
503 -- 
504   
505 booleanConditionTable OBJECT-TYPE 
506      SYNTAX SEQUENCE OF booleanConditionEntry 
507      PIB-ACCESS INSTALL 
508      STATUS mandatory 
509      DESCRIPTION 
510           "Each instance of this class extends the condition class 
511           and represents a boolean parameter from which the 
512           condition is evaluated." 
513      ::= { metaPolicyPibClasses 2 } 
514  
515 booleanConditionEntry OBJECT-TYPE 
516      SYNTAX BooleanConditionEntry 
517      STATUS mandatory 
518      DESCRIPTION 
519           "An instance of the booleanCondition class that defines 
520           the boolean parameter that gives values to the 
521           corresponding condition." 
522      EXTENDS { conditionTable } 
523      ::= { booleanConditionTable 1 } 
524  
525 BooleanConditionEntry ::= 
526      SEQUENCE { 
527           parameterReference  ReferenceId 
528      } 
529  
530 parameterReference OBJECT-TYPE 
531      SYNTAX ReferenceId 
532      PIB-REFERENCES parameterTable 
533      STATUS current 
534      DESCRIPTION 
535           "A reference to a parameter from where the condition is 
536           evaluated. This condition MUST be of type boolean 
537           (Truthvalue)." 
538      ::= { booleanConditionEntry 1 } 
539 -- End of booleanConditionTable 
540  
541 -- 
542 -- Generic Condition Table 
543 -- 
544 genericConditionTable OBJECT-TYPE 
545      SYNTAX SEQUENCE OF genericConditionEntry 
546      PIB-ACCESS INSTALL 
547      STATUS current 
548      DESCRIPTION 
549           "Each instance of this class extends the condition class 
550           and assosiates the corresponding condition with a complex 
551           logical expression, from where the condition is 
552           evaluated." 
553      ::= { conditionClasses 2 } 
554  
555 genericConditionEntry OBJECT-TYPE 
556      SYNTAX GenericConditionEntry 
557      STATUS current 
558      DESCRIPTION 
559   
560           "An instance of the generalCondition class that defines 
561           the logical expression for the corresponding condition 
562           of the condition class." 
563      EXTENDS { generalConditionTable } 
564      ::= { conditionNumericalExpressionTable } 
565  
566 GenericConditionEntry ::= 
567      SEQUENCE { 
568         xmlDTDRef   ReferenceId, 
569           xmlCondition   XMLString 
570      } 
571  
572 xmlDTDRef OBJECT-TYPE 
573      SYNTAX ReferenceId 
574      PIB-REFERENCES xmlDTDTable 
575      STATUS current 
576      DESCRIPTION 
577           "A reference to the xmlDTD class that deternies which 
578           of the XML DTDs that this PEP supports is used in 
579           order to encode the expression." 
580      ::= { genericConditionEntry 1 } 
581  
582 xmlCondition OBJECT-TYPE 
583      SYNTAX XMLString 
584      STATUS mandatory 
585      DESCRIPTION 
586           "The XML-encoded expression." 
587      ::={ genericConditionEntry 2 } 
588 -- End of genericConditionTable 
589  
590 ----------------------------------------------- 
591 ----------------------------------------------- 
592  
593  
594 -- Actions Group 
595 actionClasses 
596      OBJECT IDENTIFIER ::= { metaPolicyPib 4 } 
597  
598  
599 -- 
600 -- Actions Table 
601 -- 
602 actionTable OBJECT-TYPE 
603      SYNTAX SEQUENCE of actionEntry 
604      PIB-ACCESS INSTALL 
605      STATUS current 
606      DESCRIPTION 
607           "Each instance of this class stores an action of 
608           a meta-policy." 
609      ::= { actionClasses 1 } 
610  
611 actionEntry OBJECT-TYPE 
612      SYNTAX ActionEntry 
613      STATUS current 
614   
615      DESCRIPTION 
616           "An instance of the action class that stores an action 
617           of a meta-policy." 
618      INDEX { actionPrid } 
619      ::= { actionTable 1 } 
620  
621 ActionEntry ::= 
622      SEQUENCE { 
623           actionPrid        InstanceId, 
624           actionRefTag      TagReferenceId, 
625           actionTargetPrid  Prid 
626      } 
627  
628 actionPrid OBJECT-TYPE 
629      SYNTAX InstanceId 
630      STATUS current 
631      DESCRIPTION 
632           "An arbitrary integer that uniquely identifies an 
633           instance of the action class." 
634      ::= { actionEntry 1 } 
635  
636 actionRefTag OBJECT-TYPE 
637      SYNTAX TagReferenceId 
638      PIB-TAG metaPolicyActions 
639      STATUS current 
640      DESCRIPTION 
641           "An attribute that defines a Tag Group of actions. 
642           All actions with the same tag are grouped as the actions 
643           of a single meta-policy." 
644      ::={ actionEntry 2 } 
645  
646 actionTargetPrid OBJECT-TYPE 
647      SYNTAX Prid 
648      STATUS current 
649      DESCRIPTION 
650           "The PRID of the PRI to be installed/updated. 
651           The PRID must point to a single PRI." 
652      ::={ actionEntry 3 } 
653 -- END OF actionsTable 
654  
655 -- 
656 -- Action Value table 
657 -- 
658 actionValueTable OBJECT-TYPE 
659      SYNTAX SEQUENCE OF actionValueEntry 
660      PIB-ACCESS INSTALL 
661      STATUS current 
662      DESCRIPTION 
663           "Each instance of this class extends the corresponding 
664           instance of the action class. It provides the BER-encoded 
665 value  
666           that will be installed at the corresponding PRI." 
667      ::= { actionClasses 2 } 
668
669   
670  
671  
672 actionValueEntry OBJECT-TYPE 
673      SYNTAX ActionsValueEntry 
674      STATUS current 
675      DESCRIPTION 
676           "An insance of the actionValue class. It provides 
677           the value (encoded with BER) that will be installed at 
678           the PRI denoted by the corresponding instance of the 
679           action class." 
680      EXTENDS { actionEntry } 
681      ::= { actionValueTable 1 } 
682  
683 ActionValueEntry ::= 
684      SEQUENCE { 
685           ActionValueEpd      BERValue 
686      } 
687  
688 actionValueEpd OBJECT-TYPE 
689      SYNTAX BERValue 
690      STATUS current 
691      DESCRIPTION 
692           "This attribute contains the BER-encoded value of the 
693           PRI to be installed/updated." 
694      ::={ actionValueEntry 1 } 
695 -- END OF actionValueTable 
696  
697 -- 
698 -- Action Parametric Value Table 
699 -- 
700 actionParametricValueTable OBJECT-TYPE 
701      SYNTAX SEQUENCE OF actionParametricValueEntry 
702      PIB-ACCESS INSTALL 
703      STATUS current 
704      DESCRIPTION 
705           "Each instance of this class that extends the 
706            corresponding instance of the action class. It provides 
707 with the 
708            parametric value that will be installed at the 
709 corresponding PRI." 
710      ::= { actionClasses 3 } 
711  
712 actionParametricValueEntry OBJECT-TYPE 
713      SYNTAX ActionParametricValueEntry 
714      STATUS current 
715      DESCRIPTION 
716           "An insance of the actionValue class. It provides with 
717           the parametric value that will be installed at the PRI 
718            denoted by the corresponding instance of the action 
719            class." 
720      EXTENDS { actionEntry } 
721  
722      ::= { actionParametricValueTable 1 } 
723  
724   
725 ActionParametricValueEntry ::= 
726      SEQUENCE { 
727           ParameterRef        ReferenceId 
728      } 
729  
730 ParameterRef OBJECT-TYPE 
731      SYNTAX ReferenceId 
732      PIB-REFERENCES parameterTable 
733      STATUS current 
734      DESCRIPTION 
735           "A reference to a the parameter, from where the value 
736           of the installed PRI should be obtained. Whenever the 
737           value of the parameter changes, the installed PRI 
738           MUST be updated." 
739      ::={ actionParametricValueEntry 1 } 
740 -- END OF actionParametricValueTable 
741  
742 ----------------------------------------------- 
743 ----------------------------------------------- 
744  
745  
746 -- Parameter Group 
747 parameterClasses 
748      OBJECT IDENTIFIER ::= { metaPolicyPib 5 } 
749  
750  
751
752 - Parameter Table 
753
754 parameterTable OBJECT-TYPE 
755      SYNTAX SEQUENCE OF parameterEntry 
756      PIB-ACCESS INSTALL 
757      STATUS current 
758      DESCRIPTION 
759           "Each instance of this class defines a parameter 
760           that has been installed on the PEP. This class 
761           MUST be extended by a class that defines how 
762           the value of the parameter will be evaluated." 
763      ::= { parameterClasses 1} 
764  
765 parameterEntry OBJECT-TYPE 
766      SYNTAX ParameterEntry 
767      STATUS current 
768      DESCRIPTION 
769           "An instance of the parameter class that installs 
770           a parameter into the PEP." 
771      INDEX { parameterPrid } 
772      ::= { parameterTable 1 } 
773  
774 ParameterEntry ::= 
775      SEQUENCE { 
776           parameterPrid       InstanceId, 
777           parameterName       SNMPAdminString, 
778           parameterType       Unsigned32 
779   
780      } 
781  
782 parameterPrid OBJECT-TYPE 
783      SYNTAX InstanceId 
784      STATUS current 
785      DESCRIPTION 
786           "An arbitrary integer that uniquely identifies an 
787           instance of the parameter class." 
788      ::= { parameterEntry 1 } 
789  
790 parameterNameOBJECT-TYPE 
791      SYNTAX SNMPAdminString 
792      STATUS current 
793      DESCRIPTION 
794           "A string that represents the name of the parameter. 
795           It is reccomented that different parameter have different 
796           names. However, similar parameter may have the same name. 
797           Also, an empty string can be used as a name." 
798      ::= { parameterEntry 2 } 
799  
800 parameterType 
801      SYNTAX Unsigned32 { 
802           INTEGER (02) 
803           BIT STRING (03) 
804           OCTET STRING (04) 
805           NULL (05) 
806           OBJECT IDENTIFIER (06) 
807           IP ADDRESS (40) 
808           } 
809      STATUS current 
810      DESCRIPTION 
811           "The BER type of the parameter. 
812           The suppoted BER types are: 
813           Type                | BER identifier 
814           --------------------|---------------- 
815           INTEGER             | 02 
816           BIT STRING          | 03 
817           OCTET STRING        | 04 
818           NULL                | 05 
819           OBJECT IDENTIFIER   | 06 
820           IP ADDRESS          | 40" 
821      ::= { parameterEntry 3 } 
822 -- END OF parameterTable 
823  
824 -- 
825 -- MIBPIB Parameter Table 
826 -- 
827 mibPibParameterTable OBJECT-TYPE 
828      SYNTAX SEQUENCE OF mibPibParameterEntry 
829      PIB-ACCESS INSTALL 
830      STATUS current 
831      DESCRIPTION 
832           "This class extends the parameter class. 
833           Each instance of this class assosiates to the 
834   
835           corresponding parameter a MIB or PIB variable, from 
836           where the parameter is evaluated" 
837      ::= { parameterClasses 2 } 
838  
839 mibPibParameterEntry OBJECT-TYPE 
840      SYNTAX MibPibParameterEntry 
841      STATUS current 
842      DESCRIPTION 
843           "An instance of the mibPibParameter class that provides 
844           the identifier of the MIB/PIB variable from where the 
845           corresponding parameter is evaluated." 
846      EXTENDS { parameterEntry } 
847      ::= { mibPibParameterTable 1 } 
848  
849 MibPibParameterEntry ::= 
850      SEQUENCE { 
851           targetOID        OBJECT-IDENTIFIER, 
852           EvaluationFrequency timeticks 
853           } 
854  
855 targetOID OBJECT-TYPE 
856      SYNTAX OBJECT-IDENTIFIER 
857      PIB-ACCESS INSTALL 
858      STATUS current 
859      DESCRIPTION 
860           "The object identifier of the MIB/PIB variable. 
861           The MIB/PIB variable MUST exist in the MIB/PIB of the 
862           device. Also, the type of the target variable MUST be 
863           compatible with the type of the corresponding PRI of the 
864           parameter Class." 
865      ::={ mibPibParameterEntry 1 } 
866  
867 EvaluationFrequency OBJECT-TYPE 
868      SYNTAX timeticks 
869      STATUS current 
870      DESCRIPTION 
871           "The frequency of updating the parameter in milliseconds" 
872      ::={ mibPibParameterEntry 2 } 
873 -- END of mibPibParameterTable 
874  
875 -- 
876 -- PDP Parameter Table 
877 -- 
878 pdpParameterTable OBJECT-TYPE 
879      SYNTAX SEQUENCE OF pdpParameterEntry 
880      PIB-ACCESS INSTALL 
881      STATUS current 
882      DESCRIPTION 
883           "This class extends the parameter class. Each instance 
884           of this class contains the value of the corresponding 
885           paramter. This value is send by the PDP and updated 
886           whenever necessary." 
887      ::= { parameterClasses 3 } 
888  
889   
890 pdpParameterEntry OBJECT-TYPE 
891      SYNTAX PdpParameterEntry 
892      STATUS current 
893      DESCRIPTION 
894           "An instance of the pdpParameter class that stores the 
895           value, sent by the PDP, for the corresponding parameter." 
896      INDEX { parameterIndex } 
897      ::= { pdpParametersTable 1 } 
898  
899 PdpParameterEntry ::= 
900      SEQUENCE { 
901           lastValue         BERValue 
902      } 
903  
904 lastValue OBJECT-TYPE 
905      SYNTAX BERValue 
906      STATUS current 
907      DESCRIPTION 
908           "The latest value of the parameter, encoded with BER. 
909           The BER-encoded value must be of the same type as the 
910           corresponding PRI of the parameter class." 
911      ::={ pdpParameterEntry 1 } 
912 -- END OF pdpParameterTable 
913  
914  
915 END