Import Upstream version 1.8.5
[hcoop/debian/openafs.git] / src / auth / token.xg
1 /*
2 * afstoken - pioctl interface for new common token data structures.
3 *
4 * revised following suggestions from lha@kth.se 20070511, 20070513
5 */
6
7 /* this file is in the public domain. Do what thou wilt. */
8
9 const AFSTOKEN_RK_TIX_MAX = 12000; /* Matches entry in rxkad.h */
10
11 struct token_rxkad {
12 afs_int32 rk_viceid;
13 afs_int32 rk_kvno;
14 opaque rk_key[8];
15 afs_int32 rk_begintime;
16 afs_int32 rk_endtime;
17 afs_int32 rk_primary_flag;
18 opaque rk_ticket<AFSTOKEN_RK_TIX_MAX>;
19 };
20
21 const AFSTOKEN_UNION_NOAUTH = 0;
22 const AFSTOKEN_UNION_KAD = 2;
23 union ktc_tokenUnion switch (afs_int32 at_type) {
24 case AFSTOKEN_UNION_KAD:
25 token_rxkad at_kad;
26 };
27
28 const AFSTOKEN_LENGTH_MAX = 16384;
29 typedef opaque token_opaque<AFSTOKEN_LENGTH_MAX>;
30
31 const AFSTOKEN_EX_SETPAG = 0x00000001; /* set tokens in new pag */
32 const AFSTOKEN_MAX = 8;
33 const AFSTOKEN_CELL_MAX = 64;
34
35 struct ktc_setTokenData {
36 afs_int32 flags;
37 string cell<AFSTOKEN_CELL_MAX>;
38 token_opaque tokens<AFSTOKEN_MAX>;
39 };