From 1abcbd70aed327ae5233423ce74662241fa9d21a Mon Sep 17 00:00:00 2001 From: Simo Sorce Date: Sat, 24 Jul 2010 10:35:25 -0400 Subject: s3-dcerpc: Add next authentication step with gssapi --- source3/librpc/rpc/dcerpc_gssapi.c | 15 +++++++++++++-- source3/librpc/rpc/dcerpc_gssapi.h | 1 + 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'source3/librpc') diff --git a/source3/librpc/rpc/dcerpc_gssapi.c b/source3/librpc/rpc/dcerpc_gssapi.c index e3e5eedac4..d415369207 100644 --- a/source3/librpc/rpc/dcerpc_gssapi.c +++ b/source3/librpc/rpc/dcerpc_gssapi.c @@ -240,7 +240,7 @@ NTSTATUS gse_init_client(TALLOC_CTX *mem_ctx, mech_set.elements = &gse_ctx->gss_mech; gss_maj = gss_acquire_cred(&gss_min, - gse_ctx->server_name, + GSS_C_NO_NAME, GSS_C_INDEFINITE, &mech_set, GSS_C_INITIATE, @@ -296,7 +296,8 @@ NTSTATUS gse_get_client_auth_token(TALLOC_CTX *mem_ctx, case GSS_S_CONTINUE_NEEDED: /* we will need a third leg */ gse_ctx->more_processing = true; - status = NT_STATUS_MORE_PROCESSING_REQUIRED; + /* status = NT_STATUS_MORE_PROCESSING_REQUIRED; */ + status = NT_STATUS_OK; break; default: DEBUG(0, ("gss_init_sec_context failed with [%s]\n", @@ -368,6 +369,11 @@ done: return errstr; } +bool gse_require_more_processing(struct gse_context *gse_ctx) +{ + return gse_ctx->more_processing; +} + DATA_BLOB gse_get_session_key(struct gse_context *gse_ctx) { return gse_ctx->session_key; @@ -396,6 +402,11 @@ NTSTATUS gse_gen_client_auth_token(TALLOC_CTX *mem_ctx, return NT_STATUS_NOT_IMPLEMENTED; } +bool gse_require_more_processing(struct gse_context *gse_ctx) +{ + return NT_STATUS_NOT_IMPLEMENTED; +} + DATA_BLOB gse_get_session_key(struct gse_context *gse_ctx) { return data_blob_null; diff --git a/source3/librpc/rpc/dcerpc_gssapi.h b/source3/librpc/rpc/dcerpc_gssapi.h index c172cacc14..ea44e9e383 100644 --- a/source3/librpc/rpc/dcerpc_gssapi.h +++ b/source3/librpc/rpc/dcerpc_gssapi.h @@ -42,6 +42,7 @@ NTSTATUS gse_get_client_auth_token(TALLOC_CTX *mem_ctx, DATA_BLOB *token_in, DATA_BLOB *token_out); +bool gse_require_more_processing(struct gse_context *gse_ctx); DATA_BLOB gse_get_session_key(struct gse_context *gse_ctx); #endif /* _CLI_PIPE_GSSAPI_H_ */ -- cgit