r26221: Add loadparm_context parameter to auth_context_create.
authorJelmer Vernooij <jelmer@samba.org>
Sun, 2 Dec 2007 15:20:18 +0000 (16:20 +0100)
committerStefan Metzmacher <metze@samba.org>
Fri, 21 Dec 2007 04:46:58 +0000 (05:46 +0100)
source/auth/auth.c
source/auth/auth.h
source/auth/auth_simple.c
source/auth/ntlmssp/ntlmssp_server.c
source/rpc_server/netlogon/dcerpc_netlogon.c
source/scripting/ejs/smbcalls_auth.c
source/smb_server/smb/negprot.c
source/smb_server/smb/sesssetup.c

index 1dc55de61e71be9cc2d9ee5ce6f5d720056ddd86..b36f87780c5a39e22489771e5c317182e276c921 100644 (file)
@@ -414,18 +414,19 @@ NTSTATUS auth_context_create_methods(TALLOC_CTX *mem_ctx, const char **methods,
 NTSTATUS auth_context_create(TALLOC_CTX *mem_ctx, 
                             struct event_context *ev,
                             struct messaging_context *msg,
+                            struct loadparm_context *lp_ctx,
                             struct auth_context **auth_ctx)
 {
        const char **auth_methods = NULL;
-       switch (lp_server_role(global_loadparm)) {
+       switch (lp_server_role(lp_ctx)) {
        case ROLE_STANDALONE:
-               auth_methods = lp_parm_string_list(global_loadparm, NULL, "auth methods", "standalone", NULL);
+               auth_methods = lp_parm_string_list(lp_ctx, NULL, "auth methods", "standalone", NULL);
                break;
        case ROLE_DOMAIN_MEMBER:
-               auth_methods = lp_parm_string_list(global_loadparm, NULL, "auth methods", "member server", NULL);
+               auth_methods = lp_parm_string_list(lp_ctx, NULL, "auth methods", "member server", NULL);
                break;
        case ROLE_DOMAIN_CONTROLLER:
-               auth_methods = lp_parm_string_list(global_loadparm, NULL, "auth methods", "domain controller", NULL);
+               auth_methods = lp_parm_string_list(lp_ctx, NULL, "auth methods", "domain controller", NULL);
                break;
        }
        return auth_context_create_methods(mem_ctx, auth_methods, ev, msg, auth_ctx);
index 4e9f7b939f265b0f8d88716182510bf60d89168d..95819fbaf3424fcf70e5fbf4fd8e5b78dd94196a 100644 (file)
@@ -26,6 +26,7 @@ extern const char *user_attrs[];
 union netr_Validation;
 struct netr_SamBaseInfo;
 struct netr_SamInfo3;
+struct loadparm_context;
 
 /* modules can use the following to determine if the interface has changed
  * please increment the version number after each interface change
index 3e07adcb6a4743ec09deb258296ada1027211502..0b94669008fb06e14b489ba510fe95deb5809a35 100644 (file)
@@ -24,6 +24,7 @@
 #include "includes.h"
 #include "auth/auth.h"
 #include "lib/events/events.h"
+#include "param/param.h"
 
 /*
  It's allowed to pass NULL as session_info,
@@ -49,6 +50,7 @@ _PUBLIC_ NTSTATUS authenticate_username_pw(TALLOC_CTX *mem_ctx,
 
        nt_status = auth_context_create(tmp_ctx, 
                                        ev, msg,
+                                       global_loadparm,
                                        &auth_context);
        if (!NT_STATUS_IS_OK(nt_status)) {
                talloc_free(tmp_ctx);
index 79a17e5733af0d8b1f08f8b111041a016a0049bc..2734c545d88a60989b605fb5444fa96bd0beeeca 100644 (file)
@@ -792,6 +792,7 @@ NTSTATUS gensec_ntlmssp_server_start(struct gensec_security *gensec_security)
        nt_status = auth_context_create(gensec_ntlmssp_state, 
                                        gensec_security->event_ctx,
                                        gensec_security->msg_ctx,
+                                       global_loadparm,
                                        &gensec_ntlmssp_state->auth_context);
        NT_STATUS_NOT_OK_RETURN(nt_status);
 
index b8f0103901e7d869936771c1b71a054b3d43cd62..d441be807a5def41b3bf117d3bd7b17a7ece6d34 100644 (file)
@@ -432,6 +432,7 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal
                /* TODO: we need to deny anonymous access here */
                nt_status = auth_context_create(mem_ctx, 
                                                dce_call->event_ctx, dce_call->msg_ctx,
+                                               global_loadparm,
                                                &auth_context);
                NT_STATUS_NOT_OK_RETURN(nt_status);
 
@@ -458,6 +459,7 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal
                /* TODO: we need to deny anonymous access here */
                nt_status = auth_context_create(mem_ctx, 
                                                dce_call->event_ctx, dce_call->msg_ctx,
+                                               global_loadparm,
                                                &auth_context);
                NT_STATUS_NOT_OK_RETURN(nt_status);
 
index b4848d4323fcaa3aab7b9ffa724a8b255b4fe6d3..6ddb0497886bc854298d711bd62fbfe5044c1277 100644 (file)
@@ -62,7 +62,7 @@ static int ejs_doauth(MprVarHandle eid,
        if (auth_types) {
                nt_status = auth_context_create_methods(tmp_ctx, auth_types, ev, msg, &auth_context);
        } else {
-               nt_status = auth_context_create(tmp_ctx, ev, msg, &auth_context);
+               nt_status = auth_context_create(tmp_ctx, ev, msg, global_loadparm, &auth_context);
        }
        if (!NT_STATUS_IS_OK(nt_status)) {
                mprSetPropertyValue(auth, "result", mprCreateBoolVar(false));
index de70dfe5f61b3e15e15be89c20acbe7926ffb78b..7ab4c7d352a9c838a6e7f9565e4f9d3a586526b2 100644 (file)
@@ -47,6 +47,7 @@ static NTSTATUS get_challenge(struct smbsrv_connection *smb_conn, uint8_t buff[8
        nt_status = auth_context_create(smb_conn, 
                                        smb_conn->connection->event.ctx,
                                        smb_conn->connection->msg_ctx,
+                                       global_loadparm,
                                        &smb_conn->negotiate.auth_context);
        if (!NT_STATUS_IS_OK(nt_status)) {
                DEBUG(0, ("auth_context_create() returned %s", nt_errstr(nt_status)));
index 57e2f28b8afa4e671c60bc1ca5b3dc764526dcd6..d96ebb6cced8df4dd0bd11a535a91a291d0371aa 100644 (file)
@@ -246,6 +246,7 @@ static void sesssetup_nt1(struct smbsrv_request *req, union smb_sesssetup *sess)
                status = auth_context_create(req, 
                                             req->smb_conn->connection->event.ctx,
                                             req->smb_conn->connection->msg_ctx,
+                                            global_loadparm,
                                             &auth_context);
                if (!NT_STATUS_IS_OK(status)) goto failed;
        } else {