remove gcc34
[dragonfly.git] / crypto / heimdal-0.6.3 / lib / hdb / hdb.asn1
1 -- $Id: hdb.asn1,v 1.9 2001/06/21 14:54:53 joda Exp $
2 HDB DEFINITIONS ::=
3 BEGIN
4
5 IMPORTS EncryptionKey, KerberosTime, Principal FROM krb5;
6
7 HDB_DB_FORMAT INTEGER ::= 2     -- format of database, 
8                                 -- update when making changes
9
10 -- these must have the same value as the pa-* counterparts
11 hdb-pw-salt     INTEGER ::= 3
12 hdb-afs3-salt   INTEGER ::= 10
13
14 Salt ::= SEQUENCE {
15         type[0]         INTEGER,
16         salt[1]         OCTET STRING
17 }
18
19 Key ::= SEQUENCE {
20         mkvno[0]        INTEGER OPTIONAL,       -- master key version number
21         key[1]          EncryptionKey,
22         salt[2]         Salt OPTIONAL
23 }
24
25 Event ::= SEQUENCE {
26         time[0]         KerberosTime,
27         principal[1]    Principal OPTIONAL
28 }
29
30 HDBFlags ::= BIT STRING {
31         initial(0),             -- require as-req
32         forwardable(1),         -- may issue forwardable
33         proxiable(2),           -- may issue proxiable
34         renewable(3),           -- may issue renewable
35         postdate(4),            -- may issue postdatable
36         server(5),              -- may be server
37         client(6),              -- may be client
38         invalid(7),             -- entry is invalid
39         require-preauth(8),     -- must use preauth
40         change-pw(9),           -- change password service
41         require-hwauth(10),     -- must use hwauth
42         ok-as-delegate(11),     -- as in TicketFlags
43         user-to-user(12),       -- may use user-to-user auth
44         immutable(13)           -- may not be deleted
45 }
46
47 GENERATION ::= SEQUENCE {
48         time[0]         KerberosTime,   -- timestamp
49         usec[1]         INTEGER,        -- microseconds
50         gen[2]          INTEGER         -- generation number
51 }
52
53 hdb_entry ::= SEQUENCE {
54         principal[0]    Principal  OPTIONAL, -- this is optional only 
55                                              -- for compatibility with libkrb5
56         kvno[1]         INTEGER,
57         keys[2]         SEQUENCE OF Key,
58         created-by[3]   Event,
59         modified-by[4]  Event OPTIONAL,
60         valid-start[5]  KerberosTime OPTIONAL,
61         valid-end[6]    KerberosTime OPTIONAL,
62         pw-end[7]       KerberosTime OPTIONAL,
63         max-life[8]     INTEGER OPTIONAL,
64         max-renew[9]    INTEGER OPTIONAL,
65         flags[10]       HDBFlags,
66         etypes[11]      SEQUENCE OF INTEGER OPTIONAL,
67         generation[12]  GENERATION OPTIONAL
68 }
69
70 END