Annotation of 43BSDReno/contrib/isode-beta/pepsy/t1.py, revision 1.1.1.1

1.1       root        1: T1 DEFINITIONS ::=
                      2: 
                      3: 
                      4: BEGIN
                      5: 
                      6: -- Embedded Sequences test
                      7: 
                      8: 
                      9: SECTIONS enc dec prnt
                     10: 
                     11:     -- Test of Embedded Strings
                     12: Emb-Strings ::= SEQUENCE {
                     13:        atest INTEGER,
                     14:        btest OCTET STRING,
                     15:        ctest BIT STRING,
                     16:        big-test Strings,
                     17:        emb-test SEQUENCE {
                     18:            em-int INTEGER,
                     19:            em-oct OCTET STRING,
                     20:            em-bit BIT STRING
                     21:        }
                     22:     }
                     23: 
                     24: 
                     25: Strings ::= SEQUENCE { -- Test Octet strings, bit strings and character
                     26:                       -- Strings in general
                     27:        ostring OCTET STRING,
                     28:        bstring BIT STRING,
                     29:        nstring NumericString,
                     30:        pstring PrintableString,
                     31:        tstring TeletexString,
                     32:        t61string T61String,
                     33:        vstring VideotexString,
                     34:        vis-string VisibleString,
                     35:        i646string ISO646String,
                     36:        ia5string IA5String,
                     37:        graphstring GraphicString,
                     38:        genstring GeneralString
                     39:        }
                     40: 
                     41: Embedded ::= SEQUENCE {
                     42:        anMPDU MPDU,
                     43:        ei INTEGER
                     44:        }
                     45: 
                     46: MPDU ::=
                     47:        SEQUENCE {
                     48:            a-seq SEQUENCE {
                     49:                fred [0] IMPLICIT INTEGER,
                     50: 
                     51:                    george BOOLEAN
                     52:            }
                     53:        }
                     54: 
                     55: ServiceMPDU ::=
                     56:        SET {
                     57:            a-set SET {
                     58:                    a-data [1] IMPLICIT BIT STRING,
                     59: 
                     60:                a-more-data [2] IMPLICIT INTEGER
                     61:            },
                     62:            b-set SET {
                     63:                    b-data [1] IMPLICIT BIT STRING,
                     64: 
                     65:                b-more-data [2] IMPLICIT INTEGER
                     66:            }
                     67:        }
                     68: -- Implicit tags
                     69: 
                     70: Impl-Tags ::= SEQUENCE {
                     71:        i-impl [1] IMPLICIT INTEGER,
                     72:        o-impl [2] IMPLICIT OCTET STRING,
                     73:        b-impl [3] IMPLICIT BIT STRING,
                     74:        f-impl [4] IMPLICIT BOOLEAN,
                     75:        obj-impl [5] IMPLICIT Emb-Strings,
                     76: 
                     77:     -- Test of Embedded Strings
                     78:        i-emb-test [APPLICATION 88] IMPLICIT SEQUENCE {
                     79:            i-em-int INTEGER,
                     80:            i-em-oct OCTET STRING,
                     81:            i-em-bit BIT STRING
                     82:        }
                     83:     }
                     84: 
                     85: -- Explicit tags
                     86: 
                     87: Expl-Tags ::= SEQUENCE {
                     88:        i-expl [1] INTEGER,
                     89:        o-expl [2] OCTET STRING,
                     90:        b-expl [3] BIT STRING,
                     91:        f-expl [4] BOOLEAN,
                     92:        obj-expl [5] Emb-Strings,
                     93: 
                     94:     -- Test of Embedded Strings
                     95:        i-exp-test [APPLICATION 88] SEQUENCE {
                     96:            i-ex-int INTEGER,
                     97:            i-ex-oct OCTET STRING,
                     98:            i-ex-bit BIT STRING
                     99:        }
                    100:     }
                    101: 
                    102:   -- Test of Sequence of
                    103: Seqof-Test ::= SEQUENCE {
                    104:        sqof-test1 SEQUENCE OF Expl-Tags,
                    105:        stof-test1 SET OF Expl-Tags,
                    106:        i-test1 INTEGER,
                    107:        sqof-test2 SEQUENCE OF SEQUENCE {
                    108:            sqof-in Expl-Tags,
                    109:            sqof-i INTEGER,
                    110:            sqof-o OCTET STRING
                    111:        },
                    112:        stof-test2 SET OF SEQUENCE {
                    113:            stof-in Expl-Tags,
                    114:            stof-i INTEGER,
                    115:            stof-o OCTET STRING
                    116:        },
                    117:        i-test2 INTEGER
                    118:     }
                    119: 
                    120: 
                    121:    -- Test data for the Choice type
                    122: Choice-Test ::= SET {
                    123:        c1 CHOICE {
                    124:        i-c1 [1] IMPLICIT INTEGER,
                    125:        o-c1 [2] IMPLICIT OCTET STRING,
                    126:        b-c1 [3] IMPLICIT BIT STRING,
                    127:        f-c1 [4] IMPLICIT BOOLEAN,
                    128:        obj-c1 [5] IMPLICIT Emb-Strings
                    129:        },
                    130:        c2 CHOICE {
                    131:        i-c2 [6] INTEGER,
                    132:        o-c2 [7] OCTET STRING,
                    133:        b-c2 [8] BIT STRING,
                    134:        f-c2 [9] BOOLEAN,
                    135:        obj-c2 [10] Emb-Strings
                    136:        },
                    137:        c3 CHOICE {
                    138:            seq-c3 SEQUENCE {
                    139:                seq-c3-in Expl-Tags,
                    140:                seq-c3-i INTEGER,
                    141:                seq-c3-o OCTET STRING
                    142:            },
                    143:            set-c3 SET {
                    144:                set-c3-in Expl-Tags,
                    145:                set-c3-i INTEGER,
                    146:                set-c3-o OCTET STRING
                    147:            },
                    148:            i-c3 INTEGER
                    149:        },
                    150:        c4 [12] IMPLICIT SEQUENCE {
                    151:            c4-choice CHOICE {
                    152:                c4-i INTEGER,
                    153:                c4-obj [2] IMPLICIT Expl-Tags,
                    154:                c4-subch CHOICE {
                    155:                    sc-a-i [0] IMPLICIT INTEGER,
                    156:                    sc-b-i [1] IMPLICIT INTEGER
                    157:                }
                    158:            }
                    159:        }
                    160: 
                    161: 
                    162:     }
                    163: 
                    164:   -- Test of Optional fields
                    165: 
                    166: Opt-Strings ::= SEQUENCE {
                    167:        a-opt INTEGER OPTIONAL,
                    168:        b-opt OCTET STRING,
                    169:        c-opt BIT STRING OPTIONAL,
                    170:        d-opt BOOLEAN OPTIONAL,
                    171:        e-opt NULL OPTIONAL,
                    172:        big-opt Strings OPTIONAL,
                    173:        emb-opt SEQUENCE {
                    174:            oem-int INTEGER OPTIONAL,
                    175:            oem-oct OCTET STRING OPTIONAL,
                    176:            oem-bit BIT STRING OPTIONAL
                    177:        }       OPTIONAL,
                    178:        st-opt SET {
                    179:            st-int0 [0] IMPLICIT INTEGER OPTIONAL,
                    180:            st-int1 [1] IMPLICIT INTEGER OPTIONAL,
                    181:            st-int2 [2] IMPLICIT INTEGER OPTIONAL
                    182:        }       OPTIONAL,
                    183:        obj-opt [APPLICATION 1] IMPLICIT  MPDU OPTIONAL,
                    184:        etag-opt [APPLICATION 2] INTEGER OPTIONAL,
                    185:        ch-opt CHOICE {
                    186:            ch-1 [10] IMPLICIT INTEGER,
                    187:            ch-2 [20] IMPLICIT INTEGER
                    188:        } OPTIONAL
                    189:     }
                    190: 
                    191:   -- Test of Default fields
                    192: 
                    193: Def-Strings ::= SEQUENCE {
                    194:        a-def INTEGER  { a-def-0 (0), a-def-1(1) } DEFAULT a-def-0,
                    195:        -- posy bug does not allow handling of 'xxx'b or 'xx'h notation
                    196:        -- so we don't use proper posy notation
                    197:        -- b-def OCTET STRING DEFAULT 'ff01ab20'h,
                    198:        b-def PrintableString   DEFAULT "hello, world",
                    199:        c-def BIT STRING  { c-def-one(3), c-def-two (1)}
                    200:                DEFAULT { c-def-one },
                    201:        okay BOOLEAN DEFAULT TRUE,
                    202:        e-def NULL DEFAULT NULL,
                    203:        big-def Strings,
                    204:        emb-def SEQUENCE {
                    205:            colour INTEGER { red(1), green(2), yellow(3) } DEFAULT green,
                    206:            oem-oct OCTET STRING OPTIONAL,
                    207:            version BIT STRING { basic(0), patch1(1), patch2(2) }
                    208:                DEFAULT { basic }
                    209:        }    DEFAULT { red, { basic } },
                    210:        st-def SET {
                    211:            wine [0] IMPLICIT INTEGER { claret(1), burgundy(2), moselle(3) }
                    212:                DEFAULT claret,
                    213:            beer [1] IMPLICIT INTEGER { vb(0), fosters(1), hieneken(2) }
                    214:                DEFAULT vb,
                    215:            spirit [2] IMPLICIT INTEGER { brandy(0), vodka(1), wisky(2) }
                    216:                DEFAULT vodka
                    217:        }       DEFAULT { vb, vodka }
                    218:     }
                    219: 
                    220: -- External References
                    221: --
                    222: E-ref  ::= SEQUENCE {
                    223:     a-ref T2.Info,
                    224:     b-ref [APPLICATION 33] IMPLICIT T2.Info,
                    225:     c-ref [1] T1.Choice-Test,
                    226:     d-ref [2] T2.Info OPTIONAL,
                    227:     e-ref [APPLICATION 33] IMPLICIT T2.Info OPTIONAL
                    228:     }
                    229: 
                    230: 
                    231: -- Simple type optimisations of POSY/PEPY
                    232: 
                    233:  Bstring ::= [APPLICATION 8] BIT STRING
                    234: 
                    235:  Ostring ::= [31] IMPLICIT OCTET STRING
                    236: 
                    237:  Obj ::= [101] IMPLICIT MPDU
                    238: 
                    239:  Sset ::= SET
                    240: 
                    241:  Sseq ::= SEQUENCE
                    242: 
                    243:  Sany ::= ANY
                    244: 
                    245:  Soid ::= OBJECT IDENTIFIER
                    246: 
                    247: 
                    248: Optimised ::= SEQUENCE {
                    249:     o1 Bstring,
                    250:     o2 Ostring,
                    251:     o3 Obj,
                    252:     o4 [APPLICATION 3] IMPLICIT Sset OPTIONAL,
                    253:     [APPLICATION 21] SET {
                    254:        o5 [PRIVATE 9] IMPLICIT Sseq,
                    255:        o6 [PRIVATE 33] IMPLICIT Sany,
                    256:        o7 [PRIVATE 8] IMPLICIT Soid
                    257:     }
                    258: }
                    259: 
                    260: -- Use of External Simple types
                    261: Ext-Opt ::= SEQUENCE {
                    262:     o1 T2.Bstring,
                    263:     o2 T2.Ostring,
                    264:     o3 T2.Obj,
                    265:     o4 [PRIVATE 38] IMPLICIT T2.Sset OPTIONAL,
                    266:     [APPLICATION 21] SET {
                    267:        o5 [PRIVATE 1] IMPLICIT T2.Sseq,
                    268:        o6 [PRIVATE 2] IMPLICIT T2.Sany,
                    269:        o7 [PRIVATE 3] IMPLICIT T2.Soid
                    270:     }
                    271: }
                    272: 
                    273: -- External type and ANY usage
                    274: 
                    275: Ext-typ ::= SEQUENCE {
                    276:      ext EXTERNAL,
                    277:      a-ny      [APPLICATION 32] ANY,
                    278:      ext-impl  [PRIVATE 6] IMPLICIT EXTERNAL,
                    279:      any-impl  [APPLICATION 7] ANY,
                    280:      ext-expl  [PRIVATE 9] EXTERNAL,
                    281:      any-expl  [APPLICATION 10] ANY
                    282:    }
                    283: 
                    284: SExt ::= [PRIVATE 99] IMPLICIT EXTERNAL
                    285: 
                    286: -- check of posy's %[ name $ head %] stuff
                    287: Names ::=
                    288:        SEQUENCE {
                    289:            SEQUENCE %[ seq_str $ ptr %] {
                    290:                fred [0] IMPLICIT INTEGER
                    291:            }
                    292:        }
                    293: 
                    294: -- Test explicit tags as the first field of an object
                    295: Etags ::=
                    296:        [APPLICATION 3]
                    297:           CHOICE {
                    298:                aE [0] IMPLICIT INTEGER,
                    299:                bE [1] IMPLICIT INTEGER
                    300:            }
                    301: 
                    302: Stest ::=
                    303:     [APPLICATION 4] SET {
                    304:            st1 Sint DEFAULT 33,
                    305:            st2 Soctet DEFAULT "goodbye, world"
                    306:        }
                    307: 
                    308: Sint ::= INTEGER
                    309: 
                    310: Soctet ::= OCTET STRING
                    311: 
                    312: Simpl-test ::= SEQUENCE { si-t [23] IMPLICIT Sbstring }
                    313: 
                    314: Sbstring ::= BIT STRING { bit0(0), bit1(1), bit2(2) }
                    315: 
                    316: SStest ::= [101] IMPLICIT Simpl-test
                    317: 
                    318: Enum-type ::= ENUMERATED { pork(0), beef(1), chicken(3), lamb(-1) }
                    319: 
                    320: T-enum ::= SEQUENCE {
                    321:                ae1 Enum-type,
                    322:                ae2 [12] Enum-type,
                    323:                ae3 [13] IMPLICIT Enum-type,
                    324:                ae4 [15] IMPLICIT Enum-type DEFAULT chicken,
                    325:                ae5 Enum-type OPTIONAL
                    326:            }
                    327: Real ::= REAL
                    328: 
                    329: T-real ::= SEQUENCE {
                    330:                r1 Real,
                    331:                r2 [99] Real,
                    332:                r3 [101] IMPLICIT Real,
                    333:                r4 [501] IMPLICIT Real DEFAULT { 31415962, 10, -7 },
                    334:                r5 Real OPTIONAL
                    335:            }
                    336: END

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.