diff options
Diffstat (limited to 'source4/rpc_server')
-rw-r--r-- | source4/rpc_server/common/server_info.c | 12 | ||||
-rw-r--r-- | source4/rpc_server/dcerpc_server.c | 6 | ||||
-rw-r--r-- | source4/rpc_server/dcesrv_auth.c | 3 | ||||
-rw-r--r-- | source4/rpc_server/lsa/dcesrv_lsa.c | 8 | ||||
-rw-r--r-- | source4/rpc_server/netlogon/dcerpc_netlogon.c | 13 | ||||
-rw-r--r-- | source4/rpc_server/remote/dcesrv_remote.c | 4 | ||||
-rw-r--r-- | source4/rpc_server/samr/dcesrv_samr.c | 4 | ||||
-rw-r--r-- | source4/rpc_server/service_rpc.c | 14 | ||||
-rw-r--r-- | source4/rpc_server/spoolss/dcesrv_spoolss.c | 14 | ||||
-rw-r--r-- | source4/rpc_server/srvsvc/dcesrv_srvsvc.c | 4 |
10 files changed, 44 insertions, 38 deletions
diff --git a/source4/rpc_server/common/server_info.c b/source4/rpc_server/common/server_info.c index 8848dcd1df..a046f1e29f 100644 --- a/source4/rpc_server/common/server_info.c +++ b/source4/rpc_server/common/server_info.c @@ -47,7 +47,7 @@ _PUBLIC_ const char *dcesrv_common_get_server_name(TALLOC_CTX *mem_ctx, struct d /* if there's no string return our NETBIOS name */ if (!p) { - return talloc_strdup(mem_ctx, lp_netbios_name()); + return talloc_strdup(mem_ctx, lp_netbios_name(global_loadparm)); } /* if there're '\\\\' in front remove them otherwise just pass the string */ @@ -60,7 +60,7 @@ _PUBLIC_ const char *dcesrv_common_get_server_name(TALLOC_CTX *mem_ctx, struct d const char *dcesrv_common_get_domain_name(TALLOC_CTX *mem_ctx, struct dcesrv_context *dce_ctx) { - return talloc_strdup(mem_ctx, lp_workgroup()); + return talloc_strdup(mem_ctx, lp_workgroup(global_loadparm)); } /* This hardcoded value should go into a ldb database! */ @@ -89,7 +89,7 @@ _PUBLIC_ uint32_t dcesrv_common_get_server_type(TALLOC_CTX *mem_ctx, struct dces default_server_announce |= SV_TYPE_SERVER; default_server_announce |= SV_TYPE_SERVER_UNIX; - switch (lp_announce_as()) { + switch (lp_announce_as(global_loadparm)) { case ANNOUNCE_AS_NT_SERVER: default_server_announce |= SV_TYPE_SERVER_NT; /* fall through... */ @@ -106,7 +106,7 @@ _PUBLIC_ uint32_t dcesrv_common_get_server_type(TALLOC_CTX *mem_ctx, struct dces break; } - switch (lp_server_role()) { + switch (lp_server_role(global_loadparm)) { case ROLE_DOMAIN_MEMBER: default_server_announce |= SV_TYPE_DOMAIN_MEMBER; break; @@ -138,10 +138,10 @@ _PUBLIC_ uint32_t dcesrv_common_get_server_type(TALLOC_CTX *mem_ctx, struct dces default: break; } - if (lp_time_server()) + if (lp_time_server(global_loadparm)) default_server_announce |= SV_TYPE_TIME_SOURCE; - if (lp_host_msdfs()) + if (lp_host_msdfs(global_loadparm)) default_server_announce |= SV_TYPE_DFS_SERVER; diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index c3de00d8d0..02f38a15fd 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -390,7 +390,7 @@ static void dcesrv_init_hdr(struct ncacn_packet *pkt) { pkt->rpc_vers = 5; pkt->rpc_vers_minor = 0; - if (lp_rpc_big_endian()) { + if (lp_rpc_big_endian(global_loadparm)) { pkt->drep[0] = 0; } else { pkt->drep[0] = DCERPC_DREP_LE; @@ -892,7 +892,7 @@ _PUBLIC_ NTSTATUS dcesrv_reply(struct dcesrv_call_state *call) pointers */ push->ptr_count = call->ndr_pull->ptr_count; - if (lp_rpc_big_endian()) { + if (lp_rpc_big_endian(global_loadparm)) { push->flags |= LIBNDR_FLAG_BIGENDIAN; } @@ -1372,7 +1372,7 @@ _PUBLIC_ NTSTATUS dcesrv_init_ipc_context(TALLOC_CTX *mem_ctx, struct dcesrv_con NTSTATUS status; struct dcesrv_context *dce_ctx; - status = dcesrv_init_context(mem_ctx, lp_dcerpc_endpoint_servers(), &dce_ctx); + status = dcesrv_init_context(mem_ctx, lp_dcerpc_endpoint_servers(global_loadparm), &dce_ctx); NT_STATUS_NOT_OK_RETURN(status); *_dce_ctx = dce_ctx; diff --git a/source4/rpc_server/dcesrv_auth.c b/source4/rpc_server/dcesrv_auth.c index 49a4c3de13..0843a43761 100644 --- a/source4/rpc_server/dcesrv_auth.c +++ b/source4/rpc_server/dcesrv_auth.c @@ -25,6 +25,7 @@ #include "librpc/gen_ndr/ndr_dcerpc.h" #include "auth/credentials/credentials.h" #include "auth/gensec/gensec.h" +#include "param/param.h" /* parse any auth information from a dcerpc bind request @@ -70,7 +71,7 @@ BOOL dcesrv_auth_bind(struct dcesrv_call_state *call) return False; } - cli_credentials_set_conf(server_credentials); + cli_credentials_set_conf(server_credentials, global_loadparm); status = cli_credentials_set_machine_account(server_credentials); if (!NT_STATUS_IS_OK(status)) { DEBUG(10, ("Failed to obtain server credentials, perhaps a standalone server?: %s\n", nt_errstr(status))); diff --git a/source4/rpc_server/lsa/dcesrv_lsa.c b/source4/rpc_server/lsa/dcesrv_lsa.c index 8a695bdedf..a580487b6f 100644 --- a/source4/rpc_server/lsa/dcesrv_lsa.c +++ b/source4/rpc_server/lsa/dcesrv_lsa.c @@ -262,7 +262,7 @@ static WERROR dcesrv_dssetup_DsRoleGetPrimaryDomainInformation(struct dcesrv_cal ZERO_STRUCT(domain_guid); - switch (lp_server_role()) { + switch (lp_server_role(global_loadparm)) { case ROLE_STANDALONE: role = DS_ROLE_STANDALONE_SERVER; break; @@ -278,13 +278,13 @@ static WERROR dcesrv_dssetup_DsRoleGetPrimaryDomainInformation(struct dcesrv_cal break; } - switch (lp_server_role()) { + switch (lp_server_role(global_loadparm)) { case ROLE_STANDALONE: - domain = talloc_strdup(mem_ctx, lp_workgroup()); + domain = talloc_strdup(mem_ctx, lp_workgroup(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(domain); break; case ROLE_DOMAIN_MEMBER: - domain = talloc_strdup(mem_ctx, lp_workgroup()); + domain = talloc_strdup(mem_ctx, lp_workgroup(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(domain); /* TODO: what is with dns_domain and forest and guid? */ break; diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c index 14a724a6f6..2d551da4d1 100644 --- a/source4/rpc_server/netlogon/dcerpc_netlogon.c +++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c @@ -165,7 +165,7 @@ static NTSTATUS dcesrv_netr_ServerAuthenticate3(struct dcesrv_call_state *dce_ca creds->account_name = talloc_steal(creds, r->in.account_name); creds->computer_name = talloc_steal(creds, r->in.computer_name); - creds->domain = talloc_strdup(creds, lp_workgroup()); + creds->domain = talloc_strdup(creds, lp_workgroup(global_loadparm)); creds->secure_channel_type = r->in.secure_channel_type; @@ -259,7 +259,8 @@ static NTSTATUS dcesrv_netr_creds_server_step_check(const char *computer_name, * disconnects) we must update the database every time we * update the structure */ - nt_status = schannel_fetch_session_key_ldb(ldb, ldb, computer_name, lp_workgroup(), + nt_status = schannel_fetch_session_key_ldb(ldb, ldb, computer_name, + lp_workgroup(global_loadparm), &creds); if (NT_STATUS_IS_OK(nt_status)) { nt_status = creds_server_step_check(creds, @@ -528,7 +529,7 @@ static NTSTATUS dcesrv_netr_LogonSamLogon_base(struct dcesrv_call_state *dce_cal sam6 = talloc_zero(mem_ctx, struct netr_SamInfo6); NT_STATUS_HAVE_NO_MEMORY(sam6); sam6->base = *sam; - sam6->forest.string = lp_realm(); + sam6->forest.string = lp_realm(global_loadparm); sam6->principle.string = talloc_asprintf(mem_ctx, "%s@%s", sam->account_name.string, sam6->forest.string); NT_STATUS_HAVE_NO_MEMORY(sam6->principle.string); @@ -552,7 +553,7 @@ static NTSTATUS dcesrv_netr_LogonSamLogonEx(struct dcesrv_call_state *dce_call, { NTSTATUS nt_status; struct creds_CredentialState *creds; - nt_status = schannel_fetch_session_key(mem_ctx, r->in.computer_name, lp_workgroup(), &creds); + nt_status = schannel_fetch_session_key(mem_ctx, r->in.computer_name, lp_workgroup(global_loadparm), &creds); if (!NT_STATUS_IS_OK(nt_status)) { return nt_status; } @@ -1004,7 +1005,9 @@ static WERROR dcesrv_netr_DsRGetDCNameEx2(struct dcesrv_call_state *dce_call, TA /* TODO: - return real IP address * - check all r->in.* parameters (server_unc is ignored by w2k3!) */ - r->out.info->dc_unc = talloc_asprintf(mem_ctx, "\\\\%s.%s", lp_netbios_name(),lp_realm()); + r->out.info->dc_unc = talloc_asprintf(mem_ctx, "\\\\%s.%s", + lp_netbios_name(global_loadparm), + lp_realm(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(r->out.info->dc_unc); r->out.info->dc_address = talloc_strdup(mem_ctx, "\\\\0.0.0.0"); W_ERROR_HAVE_NO_MEMORY(r->out.info->dc_address); diff --git a/source4/rpc_server/remote/dcesrv_remote.c b/source4/rpc_server/remote/dcesrv_remote.c index 2b481919d1..7434a32128 100644 --- a/source4/rpc_server/remote/dcesrv_remote.c +++ b/source4/rpc_server/remote/dcesrv_remote.c @@ -76,7 +76,7 @@ static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct if (!credentials) { return NT_STATUS_NO_MEMORY; } - cli_credentials_set_conf(credentials); + cli_credentials_set_conf(credentials, global_loadparm); cli_credentials_set_username(credentials, user, CRED_SPECIFIED); if (domain) { cli_credentials_set_domain(credentials, domain, CRED_SPECIFIED); @@ -85,7 +85,7 @@ static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct } else if (machine_account) { DEBUG(5, ("dcerpc_remote: RPC Proxy: Using machine account\n")); credentials = cli_credentials_init(private); - cli_credentials_set_conf(credentials); + cli_credentials_set_conf(credentials, global_loadparm); if (domain) { cli_credentials_set_domain(credentials, domain, CRED_SPECIFIED); } diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c index 475925e865..0ec979b81f 100644 --- a/source4/rpc_server/samr/dcesrv_samr.c +++ b/source4/rpc_server/samr/dcesrv_samr.c @@ -498,7 +498,7 @@ static NTSTATUS dcesrv_samr_info_DomInfo2(struct samr_domain_state *state, TALLO struct ldb_message **dom_msgs, struct samr_DomInfo2 *info) { - enum server_role role = lp_server_role(); + enum server_role role = lp_server_role(global_loadparm); /* This pulls the NetBIOS name from the cn=NTDS Settings,cn=<NETBIOS name of PDC>,.... @@ -611,7 +611,7 @@ static NTSTATUS dcesrv_samr_info_DomInfo7(struct samr_domain_state *state, struct samr_DomInfo7 *info) { - enum server_role role = lp_server_role(); + enum server_role role = lp_server_role(global_loadparm); switch (role) { case ROLE_DOMAIN_CONTROLLER: diff --git a/source4/rpc_server/service_rpc.c b/source4/rpc_server/service_rpc.c index 6875ff88ff..62666b09ba 100644 --- a/source4/rpc_server/service_rpc.c +++ b/source4/rpc_server/service_rpc.c @@ -256,7 +256,8 @@ static NTSTATUS dcesrv_add_ep_ncalrpc(struct dcesrv_context *dce_ctx, struct dce e->ep_description->endpoint = talloc_strdup(dce_ctx, "DEFAULT"); } - full_path = talloc_asprintf(dce_ctx, "%s/%s", lp_ncalrpc_dir(), e->ep_description->endpoint); + full_path = talloc_asprintf(dce_ctx, "%s/%s", lp_ncalrpc_dir(global_loadparm), + e->ep_description->endpoint); dcesrv_sock = talloc(event_ctx, struct dcesrv_socket_context); NT_STATUS_HAVE_NO_MEMORY(dcesrv_sock); @@ -362,7 +363,7 @@ static NTSTATUS dcesrv_add_ep_tcp(struct dcesrv_context *dce_ctx, struct dcesrv_ NTSTATUS status; /* Add TCP/IP sockets */ - if (lp_interfaces() && lp_bind_interfaces_only()) { + if (lp_interfaces(global_loadparm) && lp_bind_interfaces_only(global_loadparm)) { int num_interfaces = iface_count(); int i; for(i = 0; i < num_interfaces; i++) { @@ -371,7 +372,8 @@ static NTSTATUS dcesrv_add_ep_tcp(struct dcesrv_context *dce_ctx, struct dcesrv_ NT_STATUS_NOT_OK_RETURN(status); } } else { - status = add_socket_rpc_tcp_iface(dce_ctx, e, event_ctx, model_ops, lp_socket_address()); + status = add_socket_rpc_tcp_iface(dce_ctx, e, event_ctx, model_ops, + lp_socket_address(global_loadparm)); NT_STATUS_NOT_OK_RETURN(status); } @@ -412,13 +414,13 @@ static void dcesrv_task_init(struct task_server *task) task_server_set_title(task, "task[dcesrv]"); status = dcesrv_init_context(task->event_ctx, - lp_dcerpc_endpoint_servers(), + lp_dcerpc_endpoint_servers(global_loadparm), &dce_ctx); if (!NT_STATUS_IS_OK(status)) goto failed; /* Make sure the directory for NCALRPC exists */ - if (!directory_exist(lp_ncalrpc_dir())) { - mkdir(lp_ncalrpc_dir(), 0755); + if (!directory_exist(lp_ncalrpc_dir(global_loadparm))) { + mkdir(lp_ncalrpc_dir(global_loadparm), 0755); } for (e=dce_ctx->endpoint_list;e;e=e->next) { diff --git a/source4/rpc_server/spoolss/dcesrv_spoolss.c b/source4/rpc_server/spoolss/dcesrv_spoolss.c index d6c8d864aa..3d7a5319ca 100644 --- a/source4/rpc_server/spoolss/dcesrv_spoolss.c +++ b/source4/rpc_server/spoolss/dcesrv_spoolss.c @@ -174,10 +174,10 @@ static WERROR dcesrv_spoolss_check_server_name(struct dcesrv_call_state *dce_cal server_name += 2; /* NETBIOS NAME is ok */ - ret = strequal(lp_netbios_name(), server_name); + ret = strequal(lp_netbios_name(global_loadparm), server_name); if (ret) return WERR_OK; - aliases = lp_netbios_aliases(); + aliases = lp_netbios_aliases(global_loadparm); for (i=0; aliases && aliases[i]; i++) { if (strequal(aliases[i], server_name)) { @@ -188,12 +188,12 @@ static WERROR dcesrv_spoolss_check_server_name(struct dcesrv_call_state *dce_cal /* DNS NAME is ok * TODO: we need to check if aliases are also ok */ - if (lp_realm()) { + if (lp_realm(global_loadparm)) { char *str; str = talloc_asprintf(mem_ctx, "%s.%s", - lp_netbios_name(), - lp_realm()); + lp_netbios_name(global_loadparm), + lp_realm(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(str); ret = strequal(str, server_name); @@ -216,7 +216,7 @@ static NTSTATUS dcerpc_spoolss_bind(struct dcesrv_call_state *dce_call, const st NTSTATUS status; struct ntptr_context *ntptr; - status = ntptr_init_context(dce_call->context, lp_ntptr_providor(), &ntptr); + status = ntptr_init_context(dce_call->context, lp_ntptr_providor(global_loadparm), &ntptr); NT_STATUS_NOT_OK_RETURN(status); dce_call->context->private = ntptr; @@ -1163,7 +1163,7 @@ static WERROR dcesrv_spoolss_RemoteFindFirstPrinterChangeNotifyEx(struct dcesrv_ } ZERO_STRUCT(rop); - rop.in.server_name = lp_netbios_name(); + rop.in.server_name = lp_netbios_name(global_loadparm); W_ERROR_HAVE_NO_MEMORY(rop.in.server_name); rop.in.printer_local = 0; rop.in.type = REG_NONE; diff --git a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c index 6e8732f788..aee88d915c 100644 --- a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c +++ b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c @@ -1499,7 +1499,7 @@ static WERROR dcesrv_srvsvc_NetSrvGetInfo(struct dcesrv_call_state *dce_call, TA info101->version_major = dcesrv_common_get_version_major(mem_ctx, dce_ctx); info101->version_minor = dcesrv_common_get_version_minor(mem_ctx, dce_ctx); info101->server_type = dcesrv_common_get_server_type(mem_ctx, dce_ctx); - info101->comment = talloc_strdup(mem_ctx, lp_serverstring()); + info101->comment = talloc_strdup(mem_ctx, lp_serverstring(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(info101->comment); r->out.info.info101 = info101; @@ -1519,7 +1519,7 @@ static WERROR dcesrv_srvsvc_NetSrvGetInfo(struct dcesrv_call_state *dce_call, TA info102->version_major = dcesrv_common_get_version_major(mem_ctx, dce_ctx); info102->version_minor = dcesrv_common_get_version_minor(mem_ctx, dce_ctx); info102->server_type = dcesrv_common_get_server_type(mem_ctx, dce_ctx); - info102->comment = talloc_strdup(mem_ctx, lp_serverstring()); + info102->comment = talloc_strdup(mem_ctx, lp_serverstring(global_loadparm)); W_ERROR_HAVE_NO_MEMORY(info102->comment); info102->users = dcesrv_common_get_users(mem_ctx, dce_ctx); |