There are some problems with the changes made to
/coda/coda-src/auth2/krb5.c from revision 4.10 to 4.11 (the latest).

The attached patch fixes these problems. With the patch, coda compiles
properly with both heimdal and mit-krb5.

Regards,
Maurice.

-- 
Maurice van der Pot

Gentoo Linux Developer   [EMAIL PROTECTED]     http://www.gentoo.org
Creator of BiteMe!       [EMAIL PROTECTED]   http://www.kfk4ever.com

diff -ruN coda-6.0.15/coda-src/auth2/krb5.c 
coda-6.0.15-fixed/coda-src/auth2/krb5.c
--- coda-6.0.15/coda-src/auth2/krb5.c   2005-04-13 16:27:00.000000000 +0200
+++ coda-6.0.15-fixed/coda-src/auth2/krb5.c     2006-06-08 14:11:17.287528250 
+0200
@@ -54,14 +54,14 @@
 #define tkt_realm(t)    ((t)->client->realm)
 #define tkt_realmlen(t) (strlen((t)->client->realm))
 #define tkt_client(t)   ((t)->client)
-#define tkt_key(t)     ((t)->ticket.key)
+#define tkt_key(t)      (&(t)->ticket.key)
 #define key_data(k)     ((k)->keyvalue.data)
 #define key_length(k)   ((k)->keyvalue.length)
 #else
 #define tkt_realm(t)    ((t)->enc_part2->client->realm.data)
 #define tkt_realmlen(t) ((t)->enc_part2->client->realm.length)
 #define tkt_client(t)   ((t)->enc_part2->client)
-#define tkt_key(t)     ((t)->session)
+#define tkt_key(t)      ((t)->enc_part2->session)
 #define key_data(k)     ((k)->contents)
 #define key_length(k)   ((k)->length)
 #endif
@@ -334,7 +334,7 @@
     /* now prepare the keys */
 
     /* hKey is the md5 hash of the kerberos session secret */
-    HashSecret(key_data(&tkt_key(ticket)), key_length(&tkt_key(ticket)), hKey);
+    HashSecret(key_data(tkt_key(ticket)), key_length(tkt_key(ticket)), hKey);
 
     /* sKey is a random sequence of bytes */
     GenerateSecret(sKey);

Attachment: pgpeqDmhEwBZp.pgp
Description: PGP signature

Reply via email to