summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-03-03 04:34:19 +0100
committerStefan Metzmacher <metze@samba.org>2012-05-17 20:04:33 +0200
commitbffa1c5547dbe8075004f61bd25e63b4d2e3c521 (patch)
tree513615dc41aceafab12eb639fb448b28f52dca4f
parent6b38d0274a209c951fc0ef33e2913aaaa9d48299 (diff)
downloadsamba-bffa1c5547dbe8075004f61bd25e63b4d2e3c521.tar.gz
samba-bffa1c5547dbe8075004f61bd25e63b4d2e3c521.tar.bz2
samba-bffa1c5547dbe8075004f61bd25e63b4d2e3c521.zip
s3:gse: implement gensec_gse_expire_time()
metze
-rw-r--r--source3/librpc/crypto/gse.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/source3/librpc/crypto/gse.c b/source3/librpc/crypto/gse.c
index 64ae97720f..fba942bd64 100644
--- a/source3/librpc/crypto/gse.c
+++ b/source3/librpc/crypto/gse.c
@@ -147,6 +147,8 @@ static NTSTATUS gse_context_init(TALLOC_CTX *mem_ctx,
}
talloc_set_destructor((TALLOC_CTX *)gse_ctx, gse_context_destructor);
+ gse_ctx->expire_time = GENSEC_EXPIRE_TIME_INFINITY;
+
memcpy(&gse_ctx->gss_mech, gss_mech_krb5, sizeof(gss_OID_desc));
gse_ctx->gss_want_flags = GSS_C_MUTUAL_FLAG |
@@ -1036,6 +1038,15 @@ static bool gensec_gse_have_feature(struct gensec_security *gensec_security,
return false;
}
+static NTTIME gensec_gse_expire_time(struct gensec_security *gensec_security)
+{
+ struct gse_context *gse_ctx =
+ talloc_get_type_abort(gensec_security->private_data,
+ struct gse_context);
+
+ return gse_ctx->expire_time;
+}
+
/*
* Extract the 'sesssion key' needed by SMB signing and ncacn_np
* (for encrypting some passwords).
@@ -1167,6 +1178,7 @@ const struct gensec_security_ops gensec_gse_krb5_security_ops = {
.wrap = gensec_gse_wrap,
.unwrap = gensec_gse_unwrap,
.have_feature = gensec_gse_have_feature,
+ .expire_time = gensec_gse_expire_time,
.enabled = true,
.kerberos = true,
.priority = GENSEC_GSSAPI