diff options
Diffstat (limited to 'source4/rpc_server')
-rw-r--r-- | source4/rpc_server/common/gendb.c | 59 | ||||
-rw-r--r-- | source4/rpc_server/config.mk | 3 | ||||
-rw-r--r-- | source4/rpc_server/drsuapi/drsuapi_cracknames.c | 4 | ||||
-rw-r--r-- | source4/rpc_server/dssetup/dcesrv_dssetup.c | 2 | ||||
-rw-r--r-- | source4/rpc_server/lsa/dcesrv_lsa.c | 38 | ||||
-rw-r--r-- | source4/rpc_server/netlogon/dcerpc_netlogon.c | 18 | ||||
-rw-r--r-- | source4/rpc_server/samr/dcesrv_samr.c | 40 | ||||
-rw-r--r-- | source4/rpc_server/samr/samr_password.c | 12 |
8 files changed, 58 insertions, 118 deletions
diff --git a/source4/rpc_server/common/gendb.c b/source4/rpc_server/common/gendb.c deleted file mode 100644 index bca1b823c2..0000000000 --- a/source4/rpc_server/common/gendb.c +++ /dev/null @@ -1,59 +0,0 @@ -/* - Unix SMB/CIFS implementation. - - common share info functions - - Copyright (C) Andrew Tridgell 2004 - Copyright (C) Tim Potter 2004 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -#include "includes.h" -#include "lib/ldb/include/ldb.h" - -/* - search the sam for the specified attributes - va_list variant -*/ -int gendb_search_v(struct ldb_context *ldb, - TALLOC_CTX *mem_ctx, - const char *basedn, - struct ldb_message ***res, - const char * const *attrs, - const char *format, - va_list ap) _PRINTF_ATTRIBUTE(6,0) -{ - char *expr = NULL; - int count; - - vasprintf(&expr, format, ap); - if (expr == NULL) { - return -1; - } - - *res = NULL; - - count = ldb_search(ldb, basedn, LDB_SCOPE_SUBTREE, expr, attrs, res); - - if (*res) talloc_steal(mem_ctx, *res); - - DEBUG(4,("gendb_search_v: %s %s -> %d (%s)\n", - basedn?basedn:"NULL", expr, count, - count==-1?ldb_errstring(ldb):"OK")); - - free(expr); - - return count; -} diff --git a/source4/rpc_server/config.mk b/source4/rpc_server/config.mk index 765f2237bc..a3dfd3de51 100644 --- a/source4/rpc_server/config.mk +++ b/source4/rpc_server/config.mk @@ -5,8 +5,7 @@ [SUBSYSTEM::DCERPC_COMMON] ADD_OBJ_FILES = \ rpc_server/common/server_info.o \ - rpc_server/common/share_info.o \ - rpc_server/common/gendb.o + rpc_server/common/share_info.o # # End SUBSYSTEM DCERPC_COMMON ################################################ diff --git a/source4/rpc_server/drsuapi/drsuapi_cracknames.c b/source4/rpc_server/drsuapi/drsuapi_cracknames.c index 47a4715cf8..65da137356 100644 --- a/source4/rpc_server/drsuapi/drsuapi_cracknames.c +++ b/source4/rpc_server/drsuapi/drsuapi_cracknames.c @@ -143,7 +143,7 @@ static WERROR DsCrackNameOneName(struct drsuapi_bind_state *b_state, TALLOC_CTX } /* if we have a domain_filter look it up and set the result_basedn and the dns_domain_name */ - ret = samdb_search(b_state->sam_ctx, mem_ctx, NULL, &domain_res, domain_attrs, + ret = gendb_search(b_state->sam_ctx, mem_ctx, NULL, &domain_res, domain_attrs, "%s", domain_filter); switch (ret) { case 1: @@ -166,7 +166,7 @@ static WERROR DsCrackNameOneName(struct drsuapi_bind_state *b_state, TALLOC_CTX if (result_filter) { result_basedn = samdb_result_string(domain_res[0], "dn", NULL); - ret = samdb_search(b_state->sam_ctx, mem_ctx, result_basedn, &result_res, + ret = gendb_search(b_state->sam_ctx, mem_ctx, result_basedn, &result_res, result_attrs, "%s", result_filter); switch (ret) { case 1: diff --git a/source4/rpc_server/dssetup/dcesrv_dssetup.c b/source4/rpc_server/dssetup/dcesrv_dssetup.c index 5df9c4fc0b..fa219343c1 100644 --- a/source4/rpc_server/dssetup/dcesrv_dssetup.c +++ b/source4/rpc_server/dssetup/dcesrv_dssetup.c @@ -87,7 +87,7 @@ static WERROR dssetup_DsRoleGetPrimaryDomainInformation(struct dcesrv_call_state return WERR_SERVER_UNAVAILABLE; } - ret = samdb_search(sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(&(objectClass=domainDNS)(!(objectClass=builtinDomain)))"); if (ret != 1) { return WERR_SERVER_UNAVAILABLE; diff --git a/source4/rpc_server/lsa/dcesrv_lsa.c b/source4/rpc_server/lsa/dcesrv_lsa.c index 2e1a621eee..ea803559c4 100644 --- a/source4/rpc_server/lsa/dcesrv_lsa.c +++ b/source4/rpc_server/lsa/dcesrv_lsa.c @@ -359,7 +359,7 @@ static NTSTATUS lsa_info_AccountDomain(struct lsa_policy_state *state, TALLOC_CT int ret; struct ldb_message **res; - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "dn=%s", state->domain_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -381,7 +381,7 @@ static NTSTATUS lsa_info_DNS(struct lsa_policy_state *state, TALLOC_CTX *mem_ctx int ret; struct ldb_message **res; - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "dn=%s", state->domain_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -496,7 +496,7 @@ static NTSTATUS lsa_EnumAccounts(struct dcesrv_call_state *dce_call, TALLOC_CTX state = h->data; - ret = samdb_search(state->sam_ldb, mem_ctx, state->builtin_dn, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, state->builtin_dn, &res, attrs, "privilege=*"); if (ret <= 0) { return NT_STATUS_NO_SUCH_USER; @@ -600,7 +600,7 @@ static NTSTATUS lsa_CreateTrustedDomain(struct dcesrv_call_state *dce_call, TALL } /* search for the trusted_domain record */ - ret = samdb_search(trusted_domain_state->policy->sam_ldb, + ret = gendb_search(trusted_domain_state->policy->sam_ldb, mem_ctx, policy_state->system_dn, &msgs, attrs, "(&(cn=%s)(objectclass=trustedDomain))", r->in.info->name.string); @@ -700,7 +700,7 @@ static NTSTATUS lsa_OpenTrustedDomain(struct dcesrv_call_state *dce_call, TALLOC } /* search for the trusted_domain record */ - ret = samdb_search(trusted_domain_state->policy->sam_ldb, + ret = gendb_search(trusted_domain_state->policy->sam_ldb, mem_ctx, policy_state->system_dn, &msgs, attrs, "(&(securityIdentifier=%s)(objectclass=trustedDomain))", sid_string); @@ -765,7 +765,7 @@ static NTSTATUS lsa_OpenTrustedDomainByName(struct dcesrv_call_state *dce_call, trusted_domain_state->policy = policy_state; /* search for the trusted_domain record */ - ret = samdb_search(trusted_domain_state->policy->sam_ldb, + ret = gendb_search(trusted_domain_state->policy->sam_ldb, mem_ctx, policy_state->system_dn, &msgs, attrs, "(&(flatname=%s)(objectclass=trustedDomain))", r->in.name.string); @@ -850,7 +850,7 @@ static NTSTATUS lsa_QueryTrustedDomainInfo(struct dcesrv_call_state *dce_call, T trusted_domain_state = h->data; /* pull all the user attributes */ - ret = samdb_search(trusted_domain_state->policy->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(trusted_domain_state->policy->sam_ldb, mem_ctx, NULL, &res, attrs, "dn=%s", trusted_domain_state->trusted_domain_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -970,7 +970,7 @@ static NTSTATUS lsa_EnumTrustDom(struct dcesrv_call_state *dce_call, TALLOC_CTX /* search for all users in this domain. This could possibly be cached and resumed based on resume_key */ - count = samdb_search(policy_state->sam_ldb, mem_ctx, policy_state->system_dn, &domains, attrs, + count = gendb_search(policy_state->sam_ldb, mem_ctx, policy_state->system_dn, &domains, attrs, "objectclass=trustedDomain"); if (count == -1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -1105,7 +1105,7 @@ static NTSTATUS lsa_lookup_sid(struct lsa_policy_state *state, TALLOC_CTX *mem_c const char * const attrs[] = { "sAMAccountName", "sAMAccountType", "name", NULL}; NTSTATUS status; - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "objectSid=%s", sid_str); if (ret == 1) { *name = ldb_msg_find_string(res[0], "sAMAccountName", NULL); @@ -1373,7 +1373,7 @@ static NTSTATUS lsa_EnumPrivsAccount(struct dcesrv_call_state *dce_call, r->out.privs->unknown = 0; r->out.privs->set = NULL; - ret = samdb_search(astate->policy->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(astate->policy->sam_ldb, mem_ctx, NULL, &res, attrs, "dn=%s", astate->account_dn); if (ret != 1) { return NT_STATUS_OK; @@ -1429,7 +1429,7 @@ static NTSTATUS lsa_EnumAccountRights(struct dcesrv_call_state *dce_call, return NT_STATUS_NO_MEMORY; } - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "objectSid=%s", sidstr); if (ret != 1) { return NT_STATUS_OBJECT_NAME_NOT_FOUND; @@ -1746,7 +1746,7 @@ static NTSTATUS lsa_CreateSecret(struct dcesrv_call_state *dce_call, TALLOC_CTX name2 = talloc_asprintf(mem_ctx, "%s Secret", name); /* search for the secret record */ - ret = samdb_search(secret_state->sam_ldb, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, policy_state->system_dn, &msgs, attrs, "(&(cn=%s)(objectclass=secret))", name2); @@ -1776,7 +1776,7 @@ static NTSTATUS lsa_CreateSecret(struct dcesrv_call_state *dce_call, TALLOC_CTX secret_state->sam_ldb = talloc_reference(secret_state, secrets_db_connect(mem_ctx)); /* search for the secret record */ - ret = samdb_search(secret_state->sam_ldb, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, "cn=LSA Secrets", &msgs, attrs, "(&(cn=%s)(objectclass=secret))", name); @@ -1872,7 +1872,7 @@ static NTSTATUS lsa_OpenSecret(struct dcesrv_call_state *dce_call, TALLOC_CTX *m } /* search for the secret record */ - ret = samdb_search(secret_state->sam_ldb, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, policy_state->system_dn, &msgs, attrs, "(&(cn=%s Secret)(objectclass=secret))", name); @@ -1895,7 +1895,7 @@ static NTSTATUS lsa_OpenSecret(struct dcesrv_call_state *dce_call, TALLOC_CTX *m } /* search for the secret record */ - ret = samdb_search(secret_state->sam_ldb, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, "cn=LSA Secrets", &msgs, attrs, "(&(cn=%s)(objectclass=secret))", name); @@ -2048,7 +2048,7 @@ static NTSTATUS lsa_SetSecret(struct dcesrv_call_state *dce_call, TALLOC_CTX *me }; /* search for the secret record */ - ret = samdb_search(secret_state->sam_ldb, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, NULL, &res, attrs, "(dn=%s)", secret_state->secret_dn); if (ret == 0) { @@ -2121,7 +2121,7 @@ static NTSTATUS lsa_QuerySecret(struct dcesrv_call_state *dce_call, TALLOC_CTX * secret_state = h->data; /* pull all the user attributes */ - ret = samdb_search(secret_state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(secret_state->sam_ldb, mem_ctx, NULL, &res, attrs, "dn=%s", secret_state->secret_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -2340,7 +2340,7 @@ static NTSTATUS lsa_EnumAccountsWithUserRight(struct dcesrv_call_state *dce_call return NT_STATUS_NO_SUCH_PRIVILEGE; } - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "privilege=%s", privname); if (ret <= 0) { return NT_STATUS_NO_SUCH_USER; @@ -2541,7 +2541,7 @@ static NTSTATUS lsa_lookup_name(struct lsa_policy_state *state, TALLOC_CTX *mem_ name = p + 1; } - ret = samdb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "sAMAccountName=%s", name); + ret = gendb_search(state->sam_ldb, mem_ctx, NULL, &res, attrs, "sAMAccountName=%s", name); if (ret == 1) { const char *sid_str = ldb_msg_find_string(res[0], "objectSid", NULL); if (sid_str == NULL) { diff --git a/source4/rpc_server/netlogon/dcerpc_netlogon.c b/source4/rpc_server/netlogon/dcerpc_netlogon.c index 6a29bf7db8..0b6106d485 100644 --- a/source4/rpc_server/netlogon/dcerpc_netlogon.c +++ b/source4/rpc_server/netlogon/dcerpc_netlogon.c @@ -152,7 +152,7 @@ static NTSTATUS netr_ServerAuthenticate3(struct dcesrv_call_state *dce_call, TAL return NT_STATUS_INVALID_SYSTEM_SERVICE; } /* pull the user attributes */ - num_records = samdb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, + num_records = gendb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(sAMAccountName=%s)(objectclass=user))", r->in.account_name); @@ -327,7 +327,7 @@ static NTSTATUS netr_ServerPasswordSet(struct dcesrv_call_state *dce_call, TALLO return NT_STATUS_INVALID_SYSTEM_SERVICE; } /* pull the user attributes */ - num_records = samdb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, + num_records = gendb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(sAMAccountName=%s)(objectclass=user))", pipe_state->creds->account_name); if (num_records == -1) { @@ -353,7 +353,7 @@ static NTSTATUS netr_ServerPasswordSet(struct dcesrv_call_state *dce_call, TALLO } /* find the domain's DN */ - num_records_domain = samdb_search(sam_ctx, mem_ctx, NULL, + num_records_domain = gendb_search(sam_ctx, mem_ctx, NULL, &msgs_domain, domain_attrs, "(&(objectSid=%s)(objectclass=domain))", domain_sid); @@ -951,12 +951,12 @@ static NTSTATUS netr_LogonGetDomainInfo(struct dcesrv_call_state *dce_call, TALL primary domain is also a "trusted" domain, so we need to put the primary domain into the lists of returned trusts as well */ - ret1 = samdb_search(sam_ctx, mem_ctx, NULL, &res1, attrs, "(objectClass=domainDNS)"); + ret1 = gendb_search(sam_ctx, mem_ctx, NULL, &res1, attrs, "(objectClass=domainDNS)"); if (ret1 != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; } - ret2 = samdb_search(sam_ctx, mem_ctx, NULL, &res2, attrs, "(objectClass=trustedDomain)"); + ret2 = gendb_search(sam_ctx, mem_ctx, NULL, &res2, attrs, "(objectClass=trustedDomain)"); if (ret2 == -1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; } @@ -1030,7 +1030,7 @@ static NTSTATUS netr_ServerPasswordSet2(struct dcesrv_call_state *dce_call, TALL return NT_STATUS_INVALID_SYSTEM_SERVICE; } /* pull the user attributes */ - num_records = samdb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, + num_records = gendb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(sAMAccountName=%s)(objectclass=user))", pipe_state->creds->account_name); if (num_records == -1) { @@ -1056,7 +1056,7 @@ static NTSTATUS netr_ServerPasswordSet2(struct dcesrv_call_state *dce_call, TALL } /* find the domain's DN */ - num_records_domain = samdb_search(sam_ctx, mem_ctx, NULL, + num_records_domain = gendb_search(sam_ctx, mem_ctx, NULL, &msgs_domain, domain_attrs, "(&(objectSid=%s)(objectclass=domain))", domain_sid); @@ -1160,7 +1160,7 @@ static WERROR netr_DrsGetDCNameEx2(struct dcesrv_call_state *dce_call, TALLOC_CT return WERR_DS_SERVICE_UNAVAILABLE; } - ret = samdb_search(sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(&(objectClass=domainDNS)(dnsDomain=%s))", r->in.domain_name); if (ret != 1) { @@ -1248,7 +1248,7 @@ static WERROR netr_DsrEnumerateDomainTrusts(struct dcesrv_call_state *dce_call, return WERR_GENERAL_FAILURE; } - ret = samdb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(objectClass=domainDNS)"); + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(objectClass=domainDNS)"); if (ret == -1) { return WERR_GENERAL_FAILURE; } diff --git a/source4/rpc_server/samr/dcesrv_samr.c b/source4/rpc_server/samr/dcesrv_samr.c index 44f3890e44..41074b4128 100644 --- a/source4/rpc_server/samr/dcesrv_samr.c +++ b/source4/rpc_server/samr/dcesrv_samr.c @@ -288,7 +288,7 @@ static NTSTATUS samr_OpenDomain(struct dcesrv_call_state *dce_call, TALLOC_CTX * return NT_STATUS_INVALID_PARAMETER; } - ret = samdb_search(c_state->sam_ctx, + ret = gendb_search(c_state->sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(objectSid=%s)(objectclass=domain))", sidstr); @@ -343,7 +343,7 @@ static NTSTATUS samr_info_DomInfo1(struct samr_domain_state *state, int ret; struct ldb_message **res; - ret = samdb_search(state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", state->domain_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -373,7 +373,7 @@ static NTSTATUS samr_info_DomInfo2(struct samr_domain_state *state, TALLOC_CTX * int ret; struct ldb_message **res; - ret = samdb_search(state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", state->domain_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -887,7 +887,7 @@ static NTSTATUS samr_EnumDomainUsers(struct dcesrv_call_state *dce_call, TALLOC_ /* search for all users in this domain. This could possibly be cached and resumed based on resume_key */ - count = samdb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &res, attrs, + count = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &res, attrs, "objectclass=user"); if (count == -1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -1288,7 +1288,7 @@ static NTSTATUS samr_LookupNames(struct dcesrv_call_state *dce_call, TALLOC_CTX r->out.rids.ids[i] = 0; r->out.types.ids[i] = SID_NAME_UNKNOWN; - count = samdb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &res, attrs, + count = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &res, attrs, "sAMAccountName=%s", r->in.names[i].string); if (count != 1) { status = STATUS_SOME_UNMAPPED; @@ -1367,7 +1367,7 @@ static NTSTATUS samr_LookupRids(struct dcesrv_call_state *dce_call, TALLOC_CTX * ids[i] = SID_NAME_UNKNOWN; - count = samdb_search(d_state->sam_ctx, mem_ctx, + count = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &res, attrs, "(objectSid=%s-%u)", d_state->domain_sid, r->in.rids[i]); @@ -1431,7 +1431,7 @@ static NTSTATUS samr_OpenGroup(struct dcesrv_call_state *dce_call, TALLOC_CTX *m } /* search for the group record */ - ret = samdb_search(d_state->sam_ctx, + ret = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &msgs, attrs, "(&(objectSid=%s)(objectclass=group)" "(grouptype=%s))", @@ -1547,7 +1547,7 @@ static NTSTATUS samr_QueryGroupInfo(struct dcesrv_call_state *dce_call, TALLOC_C a_state = h->data; /* pull all the group attributes */ - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", a_state->account_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -1667,7 +1667,7 @@ static NTSTATUS samr_AddGroupMember(struct dcesrv_call_state *dce_call, TALLOC_C /* In native mode, AD can also nest domain groups. Not sure yet * whether this is also available via RPC. */ - ret = samdb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, + ret = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &msgs, attrs, "(&(objectSid=%s)(objectclass=user))", membersidstr); @@ -1755,7 +1755,7 @@ static NTSTATUS samr_DeleteGroupMember(struct dcesrv_call_state *dce_call, TALLO /* In native mode, AD can also nest domain groups. Not sure yet * whether this is also available via RPC. */ - ret = samdb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, + ret = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &msgs, attrs, "(&(objectSid=%s)(objectclass=user))", membersidstr); @@ -1807,7 +1807,7 @@ static NTSTATUS samr_QueryGroupMember(struct dcesrv_call_state *dce_call, TALLOC a_state = h->data; /* pull the member attribute */ - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", a_state->account_dn); if (ret != 1) { @@ -1841,7 +1841,7 @@ static NTSTATUS samr_QueryGroupMember(struct dcesrv_call_state *dce_call, TALLOC for (i=0; i<el->num_values; i++) { struct ldb_message **res2; const char * const attrs2[2] = { "objectSid", NULL }; - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res2, attrs2, "dn=%s", (char *)el->values[i].data); if (ret != 1) @@ -1902,7 +1902,7 @@ static NTSTATUS samr_OpenAlias(struct dcesrv_call_state *dce_call, TALLOC_CTX *m return NT_STATUS_NO_MEMORY; /* search for the group record */ - ret = samdb_search(d_state->sam_ctx, + ret = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &msgs, attrs, "(&(objectSid=%s)(objectclass=group)" "(|(grouptype=%s)(grouptype=%s)))", @@ -1973,7 +1973,7 @@ static NTSTATUS samr_QueryAliasInfo(struct dcesrv_call_state *dce_call, TALLOC_C a_state = h->data; /* pull all the alias attributes */ - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", a_state->account_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -2092,7 +2092,7 @@ static NTSTATUS samr_AddAliasMember(struct dcesrv_call_state *dce_call, TALLOC_C if (sidstr == NULL) return NT_STATUS_INVALID_PARAMETER; - ret = samdb_search(d_state->sam_ctx, mem_ctx, NULL, + ret = gendb_search(d_state->sam_ctx, mem_ctx, NULL, &msgs, attrs, "(objectsid=%s)", sidstr); if (ret == 1) { @@ -2269,7 +2269,7 @@ static NTSTATUS samr_GetMembersInAlias(struct dcesrv_call_state *dce_call, TALLO a_state = h->data; d_state = a_state->domain_state; - ret = samdb_search(d_state->sam_ctx, mem_ctx, NULL, &msgs, attrs, + ret = gendb_search(d_state->sam_ctx, mem_ctx, NULL, &msgs, attrs, "dn=%s", a_state->account_dn); if (ret != 1) @@ -2292,7 +2292,7 @@ static NTSTATUS samr_GetMembersInAlias(struct dcesrv_call_state *dce_call, TALLO for (i=0; i<el->num_values; i++) { struct ldb_message **msgs2; const char * const attrs2[2] = { "objectSid", NULL }; - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &msgs2, attrs2, "dn=%s", (char *)el->values[i].data); if (ret != 1) @@ -2339,7 +2339,7 @@ static NTSTATUS samr_OpenUser(struct dcesrv_call_state *dce_call, TALLOC_CTX *me } /* search for the user record */ - ret = samdb_search(d_state->sam_ctx, + ret = gendb_search(d_state->sam_ctx, mem_ctx, d_state->domain_dn, &msgs, attrs, "(&(objectSid=%s)(objectclass=user))", sidstr); @@ -2431,7 +2431,7 @@ static NTSTATUS samr_QueryUserInfo(struct dcesrv_call_state *dce_call, TALLOC_CT a_state = h->data; /* pull all the user attributes */ - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, &res, NULL, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res, NULL, "dn=%s", a_state->account_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -3362,7 +3362,7 @@ static NTSTATUS samr_GetDomPwInfo(struct dcesrv_call_state *dce_call, TALLOC_CTX return NT_STATUS_INVALID_SYSTEM_SERVICE; } - ret = samdb_search(sam_ctx, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &msgs, attrs, "(&(name=%s)(objectclass=domain))", lp_workgroup()); diff --git a/source4/rpc_server/samr/samr_password.c b/source4/rpc_server/samr/samr_password.c index 468f02d831..f5390cc1d5 100644 --- a/source4/rpc_server/samr/samr_password.c +++ b/source4/rpc_server/samr/samr_password.c @@ -50,7 +50,7 @@ NTSTATUS samr_ChangePasswordUser(struct dcesrv_call_state *dce_call, TALLOC_CTX a_state = h->data; /* fetch the old hashes */ - ret = samdb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, + ret = gendb_search(a_state->sam_ctx, mem_ctx, NULL, &res, attrs, "dn=%s", a_state->account_dn); if (ret != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; @@ -167,7 +167,7 @@ NTSTATUS samr_OemChangePasswordUser2(struct dcesrv_call_state *dce_call, TALLOC_ /* we need the users dn and the domain dn (derived from the user SID). We also need the current lm password hash in order to decrypt the incoming password */ - ret = samdb_search(sam_ctx, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(&(sAMAccountName=%s)(objectclass=user))", r->in.account->string); @@ -295,7 +295,7 @@ NTSTATUS samr_ChangePasswordUser3(struct dcesrv_call_state *dce_call, /* we need the users dn and the domain dn (derived from the user SID). We also need the current lm and nt password hashes in order to decrypt the incoming passwords */ - ret = samdb_search(sam_ctx, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, attrs, "(&(sAMAccountName=%s)(objectclass=user))", r->in.account->string); @@ -400,7 +400,7 @@ NTSTATUS samr_ChangePasswordUser3(struct dcesrv_call_state *dce_call, return NT_STATUS_OK; failed: - ret = samdb_search(sam_ctx, + ret = gendb_search(sam_ctx, mem_ctx, NULL, &res, dom_attrs, "dn=%s", domain_dn); @@ -517,7 +517,7 @@ NTSTATUS samdb_set_password(void *ctx, TALLOC_CTX *mem_ctx, unix_to_nt_time(&now_nt, now); /* pull all the user parameters */ - count = samdb_search(ctx, mem_ctx, NULL, &res, user_attrs, "dn=%s", user_dn); + count = gendb_search(ctx, mem_ctx, NULL, &res, user_attrs, "dn=%s", user_dn); if (count != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; } @@ -533,7 +533,7 @@ NTSTATUS samdb_set_password(void *ctx, TALLOC_CTX *mem_ctx, pwdLastSet = samdb_result_uint64(res[0], "pwdLastSet", 0); /* pull the domain parameters */ - count = samdb_search(ctx, mem_ctx, NULL, &res, domain_attrs, "dn=%s", domain_dn); + count = gendb_search(ctx, mem_ctx, NULL, &res, domain_attrs, "dn=%s", domain_dn); if (count != 1) { return NT_STATUS_INTERNAL_DB_CORRUPTION; } |