From f4a1083cf9f64b4d2b65b68942e93861409ea90f Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sun, 2 Dec 2007 17:09:52 +0100 Subject: r26227: Make loadparm_context part of a server task, move loadparm_contexts further up the call stack. (This used to be commit 0721a07aada6a1fae6dcbd610b8783df57d7bbad) --- source4/rpc_server/common/server_info.c | 2 +- source4/rpc_server/drsuapi/dcesrv_drsuapi.c | 3 ++- source4/rpc_server/lsa/lsa_init.c | 2 +- source4/rpc_server/netlogon/dcerpc_netlogon.c | 12 ++++++------ source4/rpc_server/samr/dcesrv_samr.c | 4 ++-- source4/rpc_server/samr/samr_password.c | 7 ++++--- 6 files changed, 16 insertions(+), 14 deletions(-) (limited to 'source4/rpc_server') diff --git a/source4/rpc_server/common/server_info.c b/source4/rpc_server/common/server_info.c index c6f93f076a..6896c9fada 100644 --- a/source4/rpc_server/common/server_info.c +++ b/source4/rpc_server/common/server_info.c @@ -118,7 +118,7 @@ _PUBLIC_ uint32_t dcesrv_common_get_server_type(TALLOC_CTX *mem_ctx, struct dces break; } /* open main ldb */ - samctx = samdb_connect(tmp_ctx, anonymous_session(tmp_ctx)); + samctx = samdb_connect(tmp_ctx, global_loadparm, anonymous_session(tmp_ctx)); if (samctx == NULL) { DEBUG(2,("Unable to open samdb in determining server announce flags\n")); } else { diff --git a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c index a0663a588d..cf2d259907 100644 --- a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c +++ b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c @@ -27,6 +27,7 @@ #include "rpc_server/drsuapi/dcesrv_drsuapi.h" #include "dsdb/samdb/samdb.h" #include "lib/ldb/include/ldb_errors.h" +#include "param/param.h" /* drsuapi_DsBind @@ -57,7 +58,7 @@ static WERROR dcesrv_drsuapi_DsBind(struct dcesrv_call_state *dce_call, TALLOC_C /* * connect to the samdb */ - b_state->sam_ctx = samdb_connect(b_state, dce_call->conn->auth_state.session_info); + b_state->sam_ctx = samdb_connect(b_state, global_loadparm, dce_call->conn->auth_state.session_info); if (!b_state->sam_ctx) { return WERR_FOOBAR; } diff --git a/source4/rpc_server/lsa/lsa_init.c b/source4/rpc_server/lsa/lsa_init.c index 6cf062a22a..83607cc446 100644 --- a/source4/rpc_server/lsa/lsa_init.c +++ b/source4/rpc_server/lsa/lsa_init.c @@ -50,7 +50,7 @@ NTSTATUS dcesrv_lsa_get_policy_state(struct dcesrv_call_state *dce_call, TALLOC_ } /* make sure the sam database is accessible */ - state->sam_ldb = samdb_connect(state, dce_call->conn->auth_state.session_info); + state->sam_ldb = samdb_connect(state, global_loadparm, dce_call->conn->auth_state.session_info); if (state->sam_ldb == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c index d441be807a..d5e385f70d 100644 --- a/source4/rpc_server/netlogon/dcerpc_netlogon.c +++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c @@ -92,7 +92,7 @@ static NTSTATUS dcesrv_netr_ServerAuthenticate3(struct dcesrv_call_state *dce_ca return NT_STATUS_ACCESS_DENIED; } - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -301,7 +301,7 @@ static NTSTATUS dcesrv_netr_ServerPasswordSet(struct dcesrv_call_state *dce_call &creds); NT_STATUS_NOT_OK_RETURN(nt_status); - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -339,7 +339,7 @@ static NTSTATUS dcesrv_netr_ServerPasswordSet2(struct dcesrv_call_state *dce_cal &creds); NT_STATUS_NOT_OK_RETURN(nt_status); - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -885,7 +885,7 @@ static NTSTATUS dcesrv_netr_LogonGetDomainInfo(struct dcesrv_call_state *dce_cal NULL); NT_STATUS_NOT_OK_RETURN(status); - sam_ctx = samdb_connect(mem_ctx, dce_call->conn->auth_state.session_info); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, dce_call->conn->auth_state.session_info); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -989,7 +989,7 @@ static WERROR dcesrv_netr_DsRGetDCNameEx2(struct dcesrv_call_state *dce_call, TA ZERO_STRUCT(r->out); - sam_ctx = samdb_connect(mem_ctx, dce_call->conn->auth_state.session_info); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, dce_call->conn->auth_state.session_info); if (sam_ctx == NULL) { return WERR_DS_SERVICE_UNAVAILABLE; } @@ -1147,7 +1147,7 @@ static WERROR dcesrv_netr_DsrEnumerateDomainTrusts(struct dcesrv_call_state *dce ZERO_STRUCT(r->out); - sam_ctx = samdb_connect(mem_ctx, dce_call->conn->auth_state.session_info); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, dce_call->conn->auth_state.session_info); if (sam_ctx == NULL) { return WERR_GENERAL_FAILURE; } diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c index 9d208f8444..5d83ba84a7 100644 --- a/source4/rpc_server/samr/dcesrv_samr.c +++ b/source4/rpc_server/samr/dcesrv_samr.c @@ -141,7 +141,7 @@ static NTSTATUS dcesrv_samr_Connect(struct dcesrv_call_state *dce_call, TALLOC_C } /* make sure the sam database is accessible */ - c_state->sam_ctx = samdb_connect(c_state, dce_call->conn->auth_state.session_info); + c_state->sam_ctx = samdb_connect(c_state, global_loadparm, dce_call->conn->auth_state.session_info); if (c_state->sam_ctx == NULL) { talloc_free(c_state); return NT_STATUS_INVALID_SYSTEM_SERVICE; @@ -4086,7 +4086,7 @@ static NTSTATUS dcesrv_samr_GetDomPwInfo(struct dcesrv_call_state *dce_call, TAL ZERO_STRUCT(r->out.info); - sam_ctx = samdb_connect(mem_ctx, dce_call->conn->auth_state.session_info); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, dce_call->conn->auth_state.session_info); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } diff --git a/source4/rpc_server/samr/samr_password.c b/source4/rpc_server/samr/samr_password.c index a38f9840b6..736b85d7ee 100644 --- a/source4/rpc_server/samr/samr_password.c +++ b/source4/rpc_server/samr/samr_password.c @@ -33,6 +33,7 @@ #include "rpc_server/samr/proto.h" #include "libcli/auth/libcli_auth.h" #include "util/util_ldb.h" +#include "param/param.h" /* samr_ChangePasswordUser @@ -64,7 +65,7 @@ NTSTATUS dcesrv_samr_ChangePasswordUser(struct dcesrv_call_state *dce_call, TALL } /* To change a password we need to open as system */ - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -203,7 +204,7 @@ NTSTATUS dcesrv_samr_OemChangePasswordUser2(struct dcesrv_call_state *dce_call, } /* To change a password we need to open as system */ - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } @@ -341,7 +342,7 @@ NTSTATUS dcesrv_samr_ChangePasswordUser3(struct dcesrv_call_state *dce_call, } /* To change a password we need to open as system */ - sam_ctx = samdb_connect(mem_ctx, system_session(mem_ctx)); + sam_ctx = samdb_connect(mem_ctx, global_loadparm, system_session(mem_ctx)); if (sam_ctx == NULL) { return NT_STATUS_INVALID_SYSTEM_SERVICE; } -- cgit