summaryrefslogtreecommitdiffstats
path: root/src/lib/ccapi/include/msg.h
diff options
context:
space:
mode:
authorSam Hartman <hartmans@mit.edu>2006-06-22 18:43:20 +0000
committerSam Hartman <hartmans@mit.edu>2006-06-22 18:43:20 +0000
commite1c6f641ea03e411ddfa6af9a66e5e3801554a33 (patch)
tree1dce165b527fbe4cb89dd551ce2d740f0d7b3ffa /src/lib/ccapi/include/msg.h
parentc09f8fec46803bc14c6c3b3560459891ff993bb9 (diff)
parent90c9fe974de343ffec87efbed89ddcfefd431d9e (diff)
downloadkrb5-e1c6f641ea03e411ddfa6af9a66e5e3801554a33.tar.gz
krb5-e1c6f641ea03e411ddfa6af9a66e5e3801554a33.tar.xz
krb5-e1c6f641ea03e411ddfa6af9a66e5e3801554a33.zip
r18022@luminous: jaltman | 2006-05-19 05:18:37 -0400
Updates of portable CCAPI sources. All code compiles. r18025@luminous: jaltman | 2006-05-20 23:48:39 -0400 Construct an outline of a sample platform specific main.c Add ccs_serv_cleanup() routine. Currently does nothing. Correct field names used within the authorization check. r18026@luminous: jaltman | 2006-05-22 02:25:43 -0400 More byte order conversions in the server operations code. r18027@luminous: jaltman | 2006-05-22 13:12:49 -0400 Source files containing common routines used by both the client and the server. r18028@luminous: jaltman | 2006-05-22 13:17:07 -0400 Move msg.c and marshall.c to common library. Add dllmain.c which contains the Windows DllMain() entry point. This must be moved later to a Windows specific directory. Cleanup type usage and function name references. All that is missing now from the client DLL is a definition of cci_perform_rpc() which is the entry point to the IPC routine. r18029@luminous: jaltman | 2006-05-22 13:18:27 -0400 Move generic list functions to common/generic_lists.c so they can be used by both the client dll and the server. Fix type utilization in serv_ops.c r18083@luminous: jaltman | 2006-06-05 13:49:34 -0400 improved error handling r18094@luminous: jaltman | 2006-06-09 10:42:04 -0400 * corrections to windows rpc layer * corrections to network byte order conversions r18095@luminous: lxs | 2006-06-09 17:46:24 -0400 cci_msg_retrieve_blob(): changed argument 4 from void** to char** to suppress the warnings from gcc. r18096@luminous: lxs | 2006-06-09 17:55:32 -0400 moved enum cc_list_type to generic_lists.h to avoid "incomplete enum" warnings when compiling generic_lists.c r18097@luminous: lxs | 2006-06-09 17:56:15 -0400 Removed ancient Metrowerks tests from public headers. r18098@luminous: lxs | 2006-06-09 17:57:20 -0400 Include string.h to get memcpy, strlen, etc on BSD OSes. r18099@luminous: lxs | 2006-06-09 17:59:36 -0400 Added Mac OS X project file and Mach-IPC support code r18106@luminous: jaltman | 2006-06-12 09:56:31 -0400 remove duplicate header file and obsolete source file r18193@luminous: jaltman | 2006-06-22 12:57:14 -0400 This commit updates lib/krb5/ccache/ccapi to support CCAPI Version 3 and above. Specify -DUSE_CCAPI_V3=1 when compiling to use CCAPI Version 3 r18194@luminous: jaltman | 2006-06-22 12:58:37 -0400 Fix parameter name in cc_credentials_iterator_t next() r18195@luminous: jaltman | 2006-06-22 12:59:08 -0400 Add missing header r18196@luminous: jaltman | 2006-06-22 13:11:37 -0400 Use the old exported names for setup and shutdown r18197@luminous: jaltman | 2006-06-22 13:18:14 -0400 krb5_stdccv3_setup is ok === Please enter your commit message above this line === git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@18200 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/ccapi/include/msg.h')
-rw-r--r--src/lib/ccapi/include/msg.h53
1 files changed, 34 insertions, 19 deletions
diff --git a/src/lib/ccapi/include/msg.h b/src/lib/ccapi/include/msg.h
index 0d712d6664..79b9a7f72e 100644
--- a/src/lib/ccapi/include/msg.h
+++ b/src/lib/ccapi/include/msg.h
@@ -1,6 +1,6 @@
/* $Copyright:
*
- * Copyright 2004 by the Massachusetts Institute of Technology.
+ * Copyright 2004-2006 by the Massachusetts Institute of Technology.
*
* All rights reserved.
*
@@ -43,7 +43,7 @@
/*
* Verifiable, extensible message format.
- *
+ *
* Format:
* <size of header block (header_len)>
* <size of *entire* message, including previous field (flat_len)>
@@ -60,13 +60,13 @@
* If the header has variable length data it is included in the data blobs.
* The header field has the offset from the beginning of the message of the 1st
* byte of the data and the length of the data.
- *
*/
#ifndef __CC_MSG_H__
#define __CC_MSG_H__
#include "CredentialsCache.h"
+#include "generic_lists.h"
struct cc_msg_t {
cc_uint32 type; /*type of message*/
@@ -87,16 +87,15 @@ enum {
ccmsg_CTX_RELEASE,
ccmsg_CTX_GET_CHANGE_TIME,
ccmsg_CTX_GET_DEFAULT_CCACHE_NAME,
- ccmsg_CTX_COMPARE,
+ ccmsg_CTX_CCACHE_OPEN,
+ ccmsg_CTX_CCACHE_OPEN_DEFAULT,
+ ccmsg_CTX_CCACHE_CREATE,
+ ccmsg_CTX_CCACHE_CREATE_DEFAULT,
+ ccmsg_CTX_CCACHE_CREATE_UNIQUE,
ccmsg_CTX_NEW_CCACHE_ITERATOR,
ccmsg_CTX_LOCK,
ccmsg_CTX_UNLOCK,
- ccmsg_CTX_CLONE,
- ccmsg_CCACHE_OPEN,
- ccmsg_CCACHE_OPEN_DEFAULT,
- ccmsg_CCACHE_CREATE,
- ccmsg_CCACHE_CREATE_DEFAULT,
- ccmsg_CCACHE_CREATE_UNIQUE,
+ ccmsg_CTX_COMPARE,
ccmsg_CCACHE_RELEASE,
ccmsg_CCACHE_DESTROY,
ccmsg_CCACHE_SET_DEFAULT,
@@ -104,29 +103,28 @@ enum {
ccmsg_CCACHE_GET_NAME,
ccmsg_CCACHE_GET_PRINCIPAL,
ccmsg_CCACHE_SET_PRINCIPAL,
- ccmsg_CCACHE_CREDS_ITERATOR,
+ ccmsg_CCACHE_NEW_CREDS_ITERATOR,
ccmsg_CCACHE_STORE_CREDS,
ccmsg_CCACHE_REM_CREDS,
+ ccmsg_CCACHE_MOVE,
+ ccmsg_CCACHE_LOCK,
+ ccmsg_CCACHE_UNLOCK,
ccmsg_CCACHE_GET_LAST_DEFAULT_TIME,
ccmsg_CCACHE_GET_CHANGE_TIME,
- ccmsg_CCACHE_MOVE,
ccmsg_CCACHE_COMPARE,
ccmsg_CCACHE_GET_KDC_TIME_OFFSET,
ccmsg_CCACHE_SET_KDC_TIME_OFFSET,
ccmsg_CCACHE_CLEAR_KDC_TIME_OFFSET,
ccmsg_CCACHE_ITERATOR_RELEASE,
ccmsg_CCACHE_ITERATOR_NEXT,
- ccmsg_CCACHE_LOCK,
- ccmsg_CCACHE_UNLOCK,
+ ccmsg_CCACHE_ITERATOR_CLONE,
ccmsg_CREDS_ITERATOR_RELEASE,
ccmsg_CREDS_ITERATOR_NEXT,
- ccmsg_CREDS_RELEASE,
- ccmsg_CREDS_V4,
- ccmsg_CREDS_V5
+ ccmsg_CREDS_ITERATOR_CLONE
};
#define CC_MSG_MAX_SIZE 1073741824 /*2^30*/
-#define CC_MSG_MAX_TYPE ccmsg_CREDS_V5
+#define CC_MSG_MAX_TYPE ccmsg_CREDS_ITERATOR_CLONE
#define BLOB_LEN (sizeof(cc_uint32))
#define MAGIC_DATA_LEN (sizeof(cc_uint32))
#define MAGIC_HEAD_LEN (sizeof(cc_uint32))
@@ -141,6 +139,23 @@ cc_int32 cci_msg_flatten(cc_msg_t* msg, void **);
cc_int32 cci_msg_calc_magic(void *flat, int flat_len, cc_uint32 * sizep);
cc_int32 cci_msg_verify(void* flat, int flat_len, cc_uint32 * sizep);
cc_int32 cci_msg_unflatten(void *flat, int flat_len, cc_msg_t** msgpp);
-cc_int32 cci_msg_retrieve_blob(cc_msg_t* msg, cc_uint32 blob_offset, cc_uint32 blob_len, void **);
+cc_int32 cci_msg_retrieve_blob(cc_msg_t* msg, cc_uint32 blob_offset, cc_uint32 blob_len, char **);
cc_int32 cci_msg_destroy(cc_msg_t* msg);
+
+/* Add missing byte swapping macros for 64-bit values */
+#ifdef MAC
+#define htonll(x) OSSwapHostToBigInt64(x)
+#define ntohll(x) OSSwapBigToHostInt64(x)
+#else
+#ifdef _WIN32
+#ifdef _M_IX86
+#define htonll(x) _byteswap_uint64(x)
+#define ntohll(x) _byteswap_uint64(x)
+#else
+#define htonll(x) (x)
+#define ntohll(x) (x)
+#endif
+#endif
+#endif
+
#endif /*__CC_MSG_H__*/