git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@840 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Assar Westerlund
1996-10-11 10:35:33 +00:00
parent 7c190872e8
commit d52b7eef2b

138
k5_der.h
View File

@@ -1,138 +0,0 @@
#include <der.h>
#include <time.h>
/*
* Message types.
*/
enum {
KRB_AS_REQ = 10,
KRB_AS_REP = 11,
KRB_TGS_REQ = 12,
KRB_TGS_REP = 13,
KRB_AP_REQ = 14,
KRB_AP_REP = 15,
KRB_SAFE = 20,
KRB_PRIV = 21,
KRB_CRED = 22,
KRB_ENCASREPPART = 25,
KRB_ENCKDCREPPART = 26,
KRB_ERROR = 30
};
/*
* Application
*/
enum {
APPL_TICKET = 1
};
struct KdcOptions {
unsigned
reserved : 1,
forwardable : 1,
forwarded : 1,
proxiable : 1,
proxy : 1,
allow_postdate : 1,
postdated : 1,
unused7 : 1,
renewable : 1,
unused9 : 1,
unused10 : 1,
unused11 : 1,
renewable_ok : 1,
enc_tkt_in_skey : 1,
renew : 1,
validate : 1;
};
typedef struct KdcOptions KdcOptions;
struct Kdc_Req {
int pvno;
int msg_type;
KdcOptions kdc_options;
krb5_principal cname;
krb5_realm realm;
krb5_principal sname;
krb5_time till;
int nonce;
unsigned num_etypes;
krb5_enctype *etypes;
krb5_addresses addrs;
};
typedef struct Kdc_Req Kdc_Req;
typedef Kdc_Req As_Req;
struct EncryptedData {
int etype;
int *kvno;
krb5_data cipher;
};
typedef struct EncryptedData EncryptedData;
struct LastReq {
int number;
struct {
int lr_type;
krb5_time lr_value;
} *values;
};
typedef struct LastReq LastReq;
struct TicketFlags {
unsigned forwardable:1,
forwarded:1,
proxiable:1,
proxy:1,
may_postdate:1,
postdated:1,
invalid:1,
renewable:1,
initial:1,
pre_authent:1,
hw_authent:1;
};
typedef struct TicketFlags TicketFlags;
struct EncKdcRepPart {
krb5_keyblock key;
LastReq req;
int nonce;
krb5_time *key_expiration;
TicketFlags flags;
krb5_time authtime;
krb5_time *starttime;
krb5_time endtime;
krb5_time *renew_till;
krb5_realm srealm;
krb5_principal sname;
krb5_addresses caddr;
};
typedef struct EncKdcRepPart EncKdcRepPart;
typedef EncKdcRepPart EncASRepPart;
typedef EncKdcRepPart EncTGSRepPart;
struct krb5_kdc_rep {
int pvno;
int msg_type;
krb5_realm realm;
krb5_principal cname;
krb5_ticket ticket;
EncryptedData enc_part;
EncASRepPart enc_part2;
};
typedef krb5_kdc_rep As_Rep;
typedef krb5_kdc_rep Tgs_Rep;