Merge branch 'master' of github.com:heimdal/heimdal

Conflicts:
	lib/gssapi/gssapi/gssapi.h
	lib/gssapi/mech/gss_mech_switch.c
This commit is contained in:
Luke Howard
2011-02-28 10:21:31 +11:00
29 changed files with 119 additions and 94 deletions

View File

@@ -208,7 +208,7 @@ nodist_libgssapi_la_SOURCES = \
gkrb5_err.h \
$(BUILT_SOURCES)
libgssapi_la_LDFLAGS = -version-info 2:0:0
libgssapi_la_LDFLAGS = -version-info 3:0:0
if versionscript
libgssapi_la_LDFLAGS += $(LDFLAGS_VERSION_SCRIPT)$(srcdir)/version-script.map

View File

@@ -261,18 +261,16 @@ typedef OM_uint32 gss_qop_t;
#define GSS_IOV_BUFFER_TYPE_STREAM 10
#define GSS_IOV_BUFFER_TYPE_SIGN_ONLY 11
#define GSS_IOV_BUFFER_FLAG_MASK 0xffff0000
#define GSS_IOV_BUFFER_FLAG_ALLOCATE 0x00010000
#define GSS_IOV_BUFFER_FLAG_ALLOCATED 0x00020000
#define GSS_IOV_BUFFER_TYPE_FLAG_MASK 0xffff0000
#define GSS_IOV_BUFFER_FLAG_ALLOCATE 0x00010000
#define GSS_IOV_BUFFER_FLAG_ALLOCATED 0x00020000
#define GSS_IOV_BUFFER_TYPE_FLAG_ALLOCATE 0x00010000 /* old name */
#define GSS_IOV_BUFFER_TYPE_FLAG_ALLOCATED 0x00020000 /* old name */
#define GSS_IOV_BUFFER_TYPE(_t) ((_t) & ~GSS_IOV_BUFFER_FLAG_MASK)
#define GSS_IOV_BUFFER_FLAGS(_t) ((_t) & GSS_IOV_BUFFER_FLAG_MASK)
/* compatibility macros; will be removed in the next release */
#define GSS_IOV_BUFFER_TYPE_FLAG_MASK GSS_IOV_BUFFER_FLAG_MASK
#define GSS_IOV_BUFFER_TYPE_FLAG_ALLOCATE GSS_IOV_BUFFER_FLAG_ALLOCATE
#define GSS_IOV_BUFFER_TYPE_FLAG_ALLOCATED GSS_IOV_BUFFER_FLAG_ALLOCATED
GSSAPI_CPP_START
#include <gssapi/gssapi_oid.h>

View File

@@ -99,6 +99,7 @@ _gsskrb5i_is_cfx(krb5_context context, gsskrb5_ctx ctx, int acceptor)
case ETYPE_DES_CBC_MD4:
case ETYPE_DES_CBC_MD5:
case ETYPE_DES3_CBC_MD5:
case ETYPE_OLD_DES3_CBC_SHA1:
case ETYPE_DES3_CBC_SHA1:
case ETYPE_ARCFOUR_HMAC_MD5:
case ETYPE_ARCFOUR_HMAC_MD5_56:
@@ -263,6 +264,10 @@ send_error_token(OM_uint32 *minor_status,
krb5_principal ap_req_server = NULL;
krb5_error_code ret;
krb5_data outbuf;
/* this e_data value encodes KERB_AP_ERR_TYPE_SKEW_RECOVERY which
tells windows to try again with the corrected timestamp. See
[MS-KILE] 2.2.1 KERB-ERROR-DATA */
krb5_data e_data = { 7, rk_UNCONST("\x30\x05\xa1\x03\x02\x01\x02") };
/* build server from request if the acceptor had not selected one */
if (server == NULL) {
@@ -285,7 +290,7 @@ send_error_token(OM_uint32 *minor_status,
server = ap_req_server;
}
ret = krb5_mk_error(context, kret, NULL, NULL, NULL,
ret = krb5_mk_error(context, kret, NULL, &e_data, NULL,
server, NULL, NULL, &outbuf);
if (ap_req_server)
krb5_free_principal(context, ap_req_server);

View File

@@ -202,6 +202,8 @@ _gsskrb5_import_sec_context (
krb5_storage_free (sp);
_gsskrb5i_is_cfx(context, ctx, (ctx->more_flags & LOCAL) == 0);
*context_handle = (gss_ctx_id_t)ctx;
return GSS_S_COMPLETE;