Update NEWS for 1.6.22
[pkg-k5-afs_openafs.git] / src / fsint / pagcb.xg
blobbc136fa028afd14b8d5fafc576b43576fb0b6253
1 /*
2  * Copyright 2006, International Business Machines Corporation and others.
3  * All Rights Reserved.
4  *
5  * This software has been released under the terms of the IBM Public
6  * License.  For details, see the LICENSE file in the top-level source
7  * directory or online at http://www.openafs.org/dl/license10.html
8  */
11  * pagcb.xg:
12  *      Definition of the PAG Manager callback RPC interface.
13  */
15 package PAGCB_
16 prefix S
17 statindex 21
18 %#define PAGCB_SERVICEID 2
20 const PAGCB_MAXREALMLEN = 256;
21 const PAGCB_MAXTICKETLEN = 12000;
22 const PAGCB_MAXCREDS = 256;
23 const PAGCB_MAXSYSNAMELEN = 128;
24 const PAGCB_MAXSYSNAMES = 16;
26 struct PAGCB_ClearToken {
27   afs_int32 AuthHandle;
28   char HandShakeKey[8];
29   afs_int32 ViceId;
30   afs_int32 BeginTimestamp;
31   afs_int32 EndTimestamp;
34 struct CredInfo {
35   string cellname<PAGCB_MAXREALMLEN>;
36   afs_int32 vid;
37   afs_int32 states;
38   PAGCB_ClearToken ct;
39   opaque st<PAGCB_MAXTICKETLEN>;
42 typedef CredInfo CredInfos<PAGCB_MAXCREDS>;
44 struct SysNameEnt {
45   string sysname<PAGCB_MAXSYSNAMELEN>;
48 typedef SysNameEnt SysNameList<PAGCB_MAXSYSNAMES>;
50 proc GetCreds(
51   IN  afs_int32 uid,
52   OUT CredInfos *creds
53 ) = 1;
55 proc GetSysName(
56   IN afs_int32 uid,
57   OUT SysNameList *sysnames
58 ) = 2;