From 845b4ac1cf8f97c5c4d84e36109ef477edef4a31 Mon Sep 17 00:00:00 2001 From: Derrick Brashear Date: Thu, 13 Jul 2006 18:55:10 +0000 Subject: [PATCH] rxkad-private-reorder-structures-20060713 based on fix from tkeiser@gmail.com for aix segfaulting issue; keep offsets of cprivate and sprivate's copies of type and level the same --- src/rxkad/private_data.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/rxkad/private_data.h b/src/rxkad/private_data.h index 8c4507b..b10f194 100644 --- a/src/rxkad/private_data.h +++ b/src/rxkad/private_data.h @@ -51,11 +51,12 @@ struct rxkad_cidgen { #define PDATA_SIZE(l) (sizeof(struct rxkad_cprivate) - MAXKTCTICKETLEN + (l)) /* private data in client-side security object */ +/* type and level offsets should match sprivate */ struct rxkad_cprivate { - afs_int32 kvno; /* key version of ticket */ - afs_int16 ticketLen; /* length of ticket */ rxkad_type type; /* always client */ rxkad_level level; /* minimum security level of client */ + afs_int32 kvno; /* key version of ticket */ + afs_int16 ticketLen; /* length of ticket */ fc_KeySchedule keysched; /* the session key */ fc_InitializationVector ivec; /* initialization vector for cbc */ char ticket[MAXKTCTICKETLEN]; /* the ticket for the server */ @@ -69,12 +70,13 @@ struct rxkad_cconn { }; /* private data in server-side security object */ +/* type and level offsets should match cprivate */ struct rxkad_sprivate { + rxkad_type type; /* always server */ + rxkad_level level; /* minimum security level of server */ char *get_key_rock; /* rock for get_key function */ int (*get_key) (); /* func. of kvno and server key ptr */ int (*user_ok) (); /* func called with new client name */ - rxkad_type type; /* always server */ - rxkad_level level; /* minimum security level of server */ }; /* private data in server-side connection */ -- 1.9.4