summaryrefslogtreecommitdiff
path: root/auth
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2017-05-11 15:56:29 -0700
committerRalph Boehme <slow@samba.org>2017-05-13 16:50:13 +0200
commit3cfa58de1256de94461e9e303984030fa6483568 (patch)
tree3873ac82aab9e5d5ad8bf6be5e4e4e2b5261526b /auth
parent6f05597f5f02c2ad2b01a66e3b3b4625c6f05021 (diff)
downloadsamba-3cfa58de1256de94461e9e303984030fa6483568.tar.gz
gensec: Add a TALLOC_CTX * to gensec_register().
Pass in the TALLOC_CTX * from the module init to remove another talloc_autofree_context() use. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
Diffstat (limited to 'auth')
-rw-r--r--auth/gensec/external.c2
-rw-r--r--auth/gensec/gensec.h3
-rw-r--r--auth/gensec/gensec_start.c5
-rw-r--r--auth/gensec/ncalrpc.c2
-rw-r--r--auth/gensec/schannel.c2
-rw-r--r--auth/gensec/spnego.c2
-rw-r--r--auth/ntlmssp/ntlmssp.c4
7 files changed, 11 insertions, 9 deletions
diff --git a/auth/gensec/external.c b/auth/gensec/external.c
index 92295bcf03f..01580456794 100644
--- a/auth/gensec/external.c
+++ b/auth/gensec/external.c
@@ -115,7 +115,7 @@ NTSTATUS gensec_external_init(TALLOC_CTX *ctx)
{
NTSTATUS ret;
- ret = gensec_register(&gensec_external_ops);
+ ret = gensec_register(ctx, &gensec_external_ops);
if (!NT_STATUS_IS_OK(ret)) {
DEBUG(0,("Failed to register '%s' gensec backend!\n",
gensec_external_ops.name));
diff --git a/auth/gensec/gensec.h b/auth/gensec/gensec.h
index 3924a7ce987..e7b9477bffc 100644
--- a/auth/gensec/gensec.h
+++ b/auth/gensec/gensec.h
@@ -181,7 +181,8 @@ NTSTATUS gensec_start_mech_by_oid(struct gensec_security *gensec_security,
const char *gensec_get_name_by_oid(struct gensec_security *gensec_security, const char *oid_string);
struct cli_credentials *gensec_get_credentials(struct gensec_security *gensec_security);
NTSTATUS gensec_init(void);
-NTSTATUS gensec_register(const struct gensec_security_ops *ops);
+NTSTATUS gensec_register(TALLOC_CTX *ctx,
+ const struct gensec_security_ops *ops);
const struct gensec_security_ops *gensec_security_by_oid(struct gensec_security *gensec_security,
const char *oid_string);
const struct gensec_security_ops *gensec_security_by_sasl_name(struct gensec_security *gensec_security,
diff --git a/auth/gensec/gensec_start.c b/auth/gensec/gensec_start.c
index 83a86cfd654..0f7e8265498 100644
--- a/auth/gensec/gensec_start.c
+++ b/auth/gensec/gensec_start.c
@@ -893,7 +893,8 @@ _PUBLIC_ NTSTATUS gensec_set_credentials(struct gensec_security *gensec_security
The 'name' can be later used by other backends to find the operations
structure for this backend.
*/
-_PUBLIC_ NTSTATUS gensec_register(const struct gensec_security_ops *ops)
+_PUBLIC_ NTSTATUS gensec_register(TALLOC_CTX *ctx,
+ const struct gensec_security_ops *ops)
{
if (gensec_security_by_name(NULL, ops->name) != NULL) {
/* its already registered! */
@@ -902,7 +903,7 @@ _PUBLIC_ NTSTATUS gensec_register(const struct gensec_security_ops *ops)
return NT_STATUS_OBJECT_NAME_COLLISION;
}
- generic_security_ops = talloc_realloc(talloc_autofree_context(),
+ generic_security_ops = talloc_realloc(ctx,
generic_security_ops,
const struct gensec_security_ops *,
gensec_num_backends+2);
diff --git a/auth/gensec/ncalrpc.c b/auth/gensec/ncalrpc.c
index 8916ef5d88a..f28a1c43b49 100644
--- a/auth/gensec/ncalrpc.c
+++ b/auth/gensec/ncalrpc.c
@@ -342,7 +342,7 @@ _PUBLIC_ NTSTATUS gensec_ncalrpc_as_system_init(TALLOC_CTX *ctx)
{
NTSTATUS status;
- status = gensec_register(&gensec_ncalrpc_security_ops);
+ status = gensec_register(ctx, &gensec_ncalrpc_security_ops);
if (!NT_STATUS_IS_OK(status)) {
DEBUG(0, ("Failed to register '%s' gensec backend!\n",
gensec_ncalrpc_security_ops.name));
diff --git a/auth/gensec/schannel.c b/auth/gensec/schannel.c
index bf169d4acf1..41f635182cf 100644
--- a/auth/gensec/schannel.c
+++ b/auth/gensec/schannel.c
@@ -852,7 +852,7 @@ static const struct gensec_security_ops gensec_schannel_security_ops = {
_PUBLIC_ NTSTATUS gensec_schannel_init(TALLOC_CTX *ctx)
{
NTSTATUS ret;
- ret = gensec_register(&gensec_schannel_security_ops);
+ ret = gensec_register(ctx, &gensec_schannel_security_ops);
if (!NT_STATUS_IS_OK(ret)) {
DEBUG(0,("Failed to register '%s' gensec backend!\n",
gensec_schannel_security_ops.name));
diff --git a/auth/gensec/spnego.c b/auth/gensec/spnego.c
index 4b3edc686cc..484f49175fc 100644
--- a/auth/gensec/spnego.c
+++ b/auth/gensec/spnego.c
@@ -1697,7 +1697,7 @@ static const struct gensec_security_ops gensec_spnego_security_ops = {
_PUBLIC_ NTSTATUS gensec_spnego_init(TALLOC_CTX *ctx)
{
NTSTATUS ret;
- ret = gensec_register(&gensec_spnego_security_ops);
+ ret = gensec_register(ctx, &gensec_spnego_security_ops);
if (!NT_STATUS_IS_OK(ret)) {
DEBUG(0,("Failed to register '%s' gensec backend!\n",
gensec_spnego_security_ops.name));
diff --git a/auth/ntlmssp/ntlmssp.c b/auth/ntlmssp/ntlmssp.c
index ec2f6d93172..cb8f10b9459 100644
--- a/auth/ntlmssp/ntlmssp.c
+++ b/auth/ntlmssp/ntlmssp.c
@@ -256,14 +256,14 @@ _PUBLIC_ NTSTATUS gensec_ntlmssp_init(TALLOC_CTX *ctx)
{
NTSTATUS ret;
- ret = gensec_register(&gensec_ntlmssp_security_ops);
+ ret = gensec_register(ctx, &gensec_ntlmssp_security_ops);
if (!NT_STATUS_IS_OK(ret)) {
DEBUG(0,("Failed to register '%s' gensec backend!\n",
gensec_ntlmssp_security_ops.name));
return ret;
}
- ret = gensec_register(&gensec_ntlmssp_resume_ccache_ops);
+ ret = gensec_register(ctx, &gensec_ntlmssp_resume_ccache_ops);
if (!NT_STATUS_IS_OK(ret)) {
DEBUG(0,("Failed to register '%s' gensec backend!\n",
gensec_ntlmssp_resume_ccache_ops.name));