/* Machine generated file -- Do NOT edit */

#ifndef	_RXGEN_KAUTH_
#define	_RXGEN_KAUTH_

#ifdef	KERNEL
/* The following 'ifndefs' are not a good solution to the vendor's omission of surrounding all system includes with 'ifndef's since it requires that this file is included after the system includes...*/
#include "../afs/param.h"
#include "../h/types.h"
#ifndef	SOCK_DGRAM  /* XXXXX */
#include "../h/socket.h"
#endif
#ifndef	DTYPE_SOCKET  /* XXXXX */
#ifdef AFS_DEC_ENV
#include "../h/smp_lock.h"
#endif
#include "../h/file.h"
#endif
#ifndef	S_IFMT  /* XXXXX */
#include "../h/stat.h"
#endif
#ifndef	IPPROTO_UDP /* XXXXX */
#include "../netinet/in.h"
#endif
#ifndef	DST_USA  /* XXXXX */
#include "../h/time.h"
#endif
#include "../rpc/types.h"
#ifndef	XDR_GETLONG /* XXXXX */
#include "../rpc/xdr.h"
#endif
#include "../afsint/rxgen_consts.h"
#include "../afs/osi.h"
#include "../afsint/rx.h"
#else	/* KERNEL */
#include <sys/types.h>
#include <rx/xdr.h>
#include <rx/rx.h>
#include <afs/rxgen_consts.h>
#endif	/* KERNEL */


struct ka_CBS {
	long SeqLen;
	char *SeqBody;
};
typedef struct ka_CBS ka_CBS;
bool_t xdr_ka_CBS();


struct ka_BBS {
	long MaxSeqLen;
	long SeqLen;
	char *SeqBody;
};
typedef struct ka_BBS ka_BBS;
bool_t xdr_ka_BBS();

#define MAXKAKVNO 127
#define KAFNORMAL 0x001
#define KAFFREE 0x002
#define KAFOLDKEYS 0x010
#define KAFSPECIAL 0x100
#define KAFASSOCROOT 0x200
#define KAFASSOC 0x400
#define KAFADMIN 0x004
#define KAFNOTGS 0x008
#define KAFNOSEAL 0x020
#define KAFNOCPW 0x040
#define KAFNEWASSOC 0x080
#define KAF_SETTABLE_FLAGS (KAFADMIN | KAFNOTGS | KAFNOSEAL | KAFNOCPW | KAFNEWASSOC)

struct EncryptionKey {
	char key[8];
};
typedef struct EncryptionKey EncryptionKey;
bool_t xdr_EncryptionKey();

#define KAMAJORVERSION 5
#define KAMINORVERSION 2
#ifndef NEVERDATE
#define NEVERDATE 037777777777		/* a date that will never come */
#endif
#ifndef Date
#define Date unsigned long
#endif
#if !defined(AFS_AIX22_ENV) && !defined(AFS_HPUX_ENV)
#define AUTH_LOG
#endif

typedef char *kaname;
bool_t xdr_kaname();


struct kaident {
	char name[64];
	char instance[64];
};
typedef struct kaident kaident;
bool_t xdr_kaident();


struct kaentryinfo {
	long minor_version;
	long flags;
	u_long user_expiration;
	u_long modification_time;
	struct kaident modification_user;
	u_long change_password_time;
	long max_ticket_lifetime;
	long key_version;
	EncryptionKey key;
	u_long keyCheckSum;
	u_long misc_auth_bytes;
	long reserved3;
	long reserved4;
};
typedef struct kaentryinfo kaentryinfo;
bool_t xdr_kaentryinfo();


struct kasstats {
	long minor_version;
	long allocs;
	long frees;
	long cpws;
	long reserved1;
	long reserved2;
	long reserved3;
	long reserved4;
};
typedef struct kasstats kasstats;
bool_t xdr_kasstats();


struct katimeval {
	long tv_sec;
	long tv_usec;
};
typedef struct katimeval katimeval;
bool_t xdr_katimeval();


struct karpcstats {
	int requests;
	int aborts;
};
typedef struct karpcstats karpcstats;
bool_t xdr_karpcstats();


struct kadstats {
	long minor_version;
	long host;
	u_long start_time;
	long hashTableUtilization;
	struct karpcstats Authenticate;
	struct karpcstats ChangePassword;
	struct karpcstats GetTicket;
	struct karpcstats CreateUser;
	struct karpcstats SetPassword;
	struct karpcstats SetFields;
	struct karpcstats DeleteUser;
	struct karpcstats GetEntry;
	struct karpcstats ListEntry;
	struct karpcstats GetStats;
	struct karpcstats GetPassword;
	struct karpcstats GetRandomKey;
	struct karpcstats Debug;
	struct karpcstats UAuthenticate;
	struct karpcstats UGetTicket;
	struct karpcstats Unlock;
	struct karpcstats LockStatus;
	long string_checks;
	long reserved1;
	long reserved2;
	long reserved3;
	long reserved4;
};
typedef struct kadstats kadstats;
bool_t xdr_kadstats();

#define KADEBUGKCINFOSIZE 25

struct ka_kcInfo {
	u_long used;
	long kvno;
	char primary;
	char keycksum;
	char principal[64];
};
typedef struct ka_kcInfo ka_kcInfo;
bool_t xdr_ka_kcInfo();


struct ka_debugInfo {
	long minorVersion;
	long host;
	u_long startTime;
	int noAuth;
	u_long lastTrans;
	char lastOperation[16];
	char lastAuth[256];
	char lastUAuth[256];
	char lastTGS[256];
	char lastUTGS[256];
	char lastAdmin[256];
	char lastTGSServer[256];
	char lastUTGSServer[256];
	u_long nextAutoCPW;
	int updatesRemaining;
	u_long dbHeaderRead;
	long dbVersion;
	long dbFreePtr;
	long dbEofPtr;
	long dbKvnoPtr;
	long dbSpecialKeysVersion;
	long cheader_lock;
	long keycache_lock;
	long kcVersion;
	int kcSize;
	int kcUsed;
	struct ka_kcInfo kcInfo[KADEBUGKCINFOSIZE];
	long reserved1;
	long reserved2;
	long reserved3;
	long reserved4;
};
typedef struct ka_debugInfo ka_debugInfo;
bool_t xdr_ka_debugInfo();


/* Opcode-related useful stats for package: KAA_ */
#define KAA_LOWEST_OPCODE   1
#define KAA_HIGHEST_OPCODE	21
#define KAA_NUMBER_OPCODES	3


/* Opcode-related useful stats for package: KAT_ */
#define KAT_LOWEST_OPCODE   3
#define KAT_HIGHEST_OPCODE	23
#define KAT_NUMBER_OPCODES	2


/* Opcode-related useful stats for package: KAM_ */
#define KAM_LOWEST_OPCODE   4
#define KAM_HIGHEST_OPCODE	15
#define KAM_NUMBER_OPCODES	12

#endif	/* _RXGEN_KAUTH_ */
