svn rev #23829: trunk/src/include/ krb5/

tlyu@MIT.EDU tlyu at MIT.EDU
Tue Mar 23 02:09:02 EDT 2010


http://src.mit.edu/fisheye/changelog/krb5/?cs=23829
Commit By: tlyu
Log Message:
ticket: 6689
target_version: 1.8.1
tags: pullup
subject: krb5_typed_data not castable to krb5_pa_data on 64-bit MacOSX

Move krb5_typed_data to krb5.hin from k5-int-pkinit.h because
krb5int_fast_process_error was assuming that it was safe to cast it to
krb5_pa_data.  It's not safe to do the cast on 64-bit MacOSX because
krb5.hin uses #pragma pack on that platform.


Changed Files:
U   trunk/src/include/k5-int-pkinit.h
U   trunk/src/include/krb5/krb5.hin
Modified: trunk/src/include/k5-int-pkinit.h
===================================================================
--- trunk/src/include/k5-int-pkinit.h	2010-03-23 01:58:29 UTC (rev 23828)
+++ trunk/src/include/k5-int-pkinit.h	2010-03-23 06:09:02 UTC (rev 23829)
@@ -101,17 +101,6 @@
     } u;
 } krb5_trusted_ca;
 
-/* typed data */
-/* The FAST error handling logic currently assumes that this structure  and krb5_pa_data * can be safely cast to each other
- * if this structure changes, that code needs to be updated to copy.
- */
-typedef struct _krb5_typed_data {
-    krb5_magic magic;
-    krb5_int32  type;
-    unsigned int length;
-    krb5_octet *data;
-} krb5_typed_data;
-
 /* PA-PK-AS-REQ (Draft 9 -- PA TYPE 14) */
 typedef struct _krb5_pa_pk_as_req_draft9 {
     krb5_octet_data signedAuthPack;

Modified: trunk/src/include/krb5/krb5.hin
===================================================================
--- trunk/src/include/krb5/krb5.hin	2010-03-23 01:58:29 UTC (rev 23828)
+++ trunk/src/include/krb5/krb5.hin	2010-03-23 06:09:02 UTC (rev 23829)
@@ -1184,6 +1184,19 @@
     krb5_octet *contents;
 } krb5_pa_data;
 
+/* typed data */
+/*
+ * The FAST error handling logic currently assumes that this structure and
+ * krb5_pa_data * can be safely cast to each other if this structure changes,
+ * that code needs to be updated to copy.
+ */
+typedef struct _krb5_typed_data {
+    krb5_magic magic;
+    krb5_int32  type;
+    unsigned int length;
+    krb5_octet *data;
+} krb5_typed_data;
+
 typedef struct _krb5_kdc_req {
     krb5_magic magic;
     krb5_msgtype msg_type;              /* AS_REQ or TGS_REQ? */




More information about the cvs-krb5 mailing list