mirror of
https://github.com/samba-team/samba.git
synced 2025-10-25 19:33:18 +03:00
r26227: Make loadparm_context part of a server task, move loadparm_contexts further up the call stack.
This commit is contained in:
committed by
Stefan Metzmacher
parent
6cbce47a3e
commit
0721a07aad
@@ -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 {
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user