*/
#include <afsconfig.h>
-#if defined(UKERNEL)
-#include "afs/param.h"
-#else
#include <afs/param.h>
-#endif
+#include <stdio.h>
-#if defined(UKERNEL)
-#include "afs/sysincludes.h"
-#include "afsincludes.h"
-#include "afs/stds.h"
-#include "rx/xdr.h"
-#include "rx/rx.h"
-#include "des/des.h"
-#include "rxkad/lifetimes.h"
-#include "rx/rxkad.h"
-#else /* defined(UKERNEL) */
#include <afs/stds.h>
#include <sys/types.h>
#ifdef AFS_NT40_ENV
#include <netinet/in.h>
#endif
#include <string.h>
+#include <des.h>
+#include <des_prototypes.h>
#include <rx/xdr.h>
#include <rx/rx.h>
-#include <des.h>
#include "lifetimes.h"
#include "rxkad.h"
-#endif /* defined(UKERNEL) */
/* This union is used to insure we allocate enough space for a key
* schedule even if we are linked against a library that uses OpenSSL's
int
tkt_DecodeTicket(char *asecret, afs_int32 ticketLen,
struct ktc_encryptionKey *key, char *name, char *inst,
- char *cell, char *sessionKey, afs_int32 * host,
- afs_int32 * start, afs_int32 * end)
+ char *cell, struct ktc_encryptionKey *sessionKey, afs_int32 * host,
+ afs_uint32 * start, afs_uint32 * end)
{
char clear_ticket[MAXKTCTICKETLEN];
char *ticket;
((ticketLen) % 8 != 0)) /* enc. part must be (0 mod 8) bytes */
return RXKADBADTICKET;
- if (key_sched(key, schedule.schedule))
+ if (key_sched(ktc_to_cblock(key), schedule.schedule))
return RXKADBADKEY;
ticket = clear_ticket;
- pcbc_encrypt(asecret, ticket, ticketLen, schedule.schedule, key, DECRYPT);
+ pcbc_encrypt(asecret, ticket, ticketLen, schedule.schedule, ktc_to_cblockptr(key), DECRYPT);
code =
decode_athena_ticket(ticket, ticketLen, name, inst, cell, host,
- sessionKey, start, end);
+ (struct ktc_encryptionKey *)sessionKey, start, end);
if (code)
return RXKADBADTICKET;
return -1;
/* encrypt ticket */
- if ((code = key_sched(key, schedule.schedule))) {
+ if ((code = key_sched(ktc_to_cblock(key), schedule.schedule))) {
printf("In tkt_MakeTicket: key_sched returned %d\n", code);
return RXKADBADKEY;
}
- pcbc_encrypt(ticket, ticket, *ticketLen, schedule.schedule, key, ENCRYPT);
+ pcbc_encrypt(ticket, ticket, *ticketLen, schedule.schedule, ktc_to_cblockptr(key), ENCRYPT);
return 0;
}