diff options
Diffstat (limited to 'source3/auth/auth_domain.c')
-rw-r--r-- | source3/auth/auth_domain.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/source3/auth/auth_domain.c b/source3/auth/auth_domain.c index 6e182a38e7..3a9da2cc68 100644 --- a/source3/auth/auth_domain.c +++ b/source3/auth/auth_domain.c @@ -424,12 +424,16 @@ static NTSTATUS check_ntdomain_security(const struct auth_context *auth_context, /* module initialisation */ static NTSTATUS auth_init_ntdomain(struct auth_context *auth_context, const char* param, auth_methods **auth_method) { - if (!make_auth_methods(auth_context, auth_method)) { + struct auth_methods *result; + + result = TALLOC_ZERO_P(auth_context, struct auth_methods); + if (result == NULL) { return NT_STATUS_NO_MEMORY; } + result->name = "ntdomain"; + result->auth = check_ntdomain_security; - (*auth_method)->name = "ntdomain"; - (*auth_method)->auth = check_ntdomain_security; + *auth_method = result; return NT_STATUS_OK; } @@ -524,12 +528,16 @@ static NTSTATUS check_trustdomain_security(const struct auth_context *auth_conte /* module initialisation */ static NTSTATUS auth_init_trustdomain(struct auth_context *auth_context, const char* param, auth_methods **auth_method) { - if (!make_auth_methods(auth_context, auth_method)) { + struct auth_methods *result; + + result = TALLOC_ZERO_P(auth_context, struct auth_methods); + if (result == NULL) { return NT_STATUS_NO_MEMORY; } + result->name = "trustdomain"; + result->auth = check_trustdomain_security; - (*auth_method)->name = "trustdomain"; - (*auth_method)->auth = check_trustdomain_security; + *auth_method = result; return NT_STATUS_OK; } |