The branch, master has been updated via f240a4c s4:rpc_server/drsuapi: use talloc_zero instead of talloc() in dcesrv_drsuapi_DsBind() via bbac4fb s4:rpc_server/drsuapi: fix a crash in dcesrv_drsuapi_DsGetDomainControllerInfo_1() from f44ad36 samba-tool domain provision: DNS forwarder is not a boolean.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit f240a4c2e7e5b05f91ae728334a9aadb4e97351f Author: Stefan Metzmacher <me...@samba.org> Date: Tue Sep 25 01:13:12 2012 +0200 s4:rpc_server/drsuapi: use talloc_zero instead of talloc() in dcesrv_drsuapi_DsBind() metze Autobuild-User(master): Stefan Metzmacher <me...@samba.org> Autobuild-Date(master): Tue Sep 25 03:06:13 CEST 2012 on sn-devel-104 commit bbac4fb42fc441a2b744ad5c5ecf93fbce920665 Author: Stefan Metzmacher <me...@samba.org> Date: Tue Sep 25 01:09:55 2012 +0200 s4:rpc_server/drsuapi: fix a crash in dcesrv_drsuapi_DsGetDomainControllerInfo_1() metze ----------------------------------------------------------------------- Summary of changes: source4/rpc_server/drsuapi/dcesrv_drsuapi.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c index 1d51ce8..4c78738 100644 --- a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c +++ b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c @@ -220,7 +220,7 @@ static WERROR dcesrv_drsuapi_DsBind(struct dcesrv_call_state *dce_call, TALLOC_C /* * allocate the return bind_info */ - bind_info = talloc(mem_ctx, struct drsuapi_DsBindInfoCtr); + bind_info = talloc_zero(mem_ctx, struct drsuapi_DsBindInfoCtr); W_ERROR_HAVE_NO_MEMORY(bind_info); bind_info->length = 28; @@ -576,14 +576,9 @@ static WERROR dcesrv_drsuapi_DsGetDomainControllerInfo_1(struct drsuapi_bind_sta unsigned int i; *r->out.level_out = r->in.req->req1.level; - r->out.ctr = talloc(mem_ctx, union drsuapi_DsGetDCInfoCtr); + r->out.ctr = talloc_zero(mem_ctx, union drsuapi_DsGetDCInfoCtr); W_ERROR_HAVE_NO_MEMORY(r->out.ctr); - sites_dn = samdb_sites_dn(b_state->sam_ctx, mem_ctx); - if (!sites_dn) { - return WERR_DS_OBJ_NOT_FOUND; - } - switch (*r->out.level_out) { case -1: /* this level is not like the others */ @@ -598,6 +593,11 @@ static WERROR dcesrv_drsuapi_DsGetDomainControllerInfo_1(struct drsuapi_bind_sta return WERR_UNKNOWN_LEVEL; } + sites_dn = samdb_sites_dn(b_state->sam_ctx, mem_ctx); + if (!sites_dn) { + return WERR_DS_OBJ_NOT_FOUND; + } + ret = ldb_search(b_state->sam_ctx, mem_ctx, &res, sites_dn, LDB_SCOPE_SUBTREE, attrs, "objectClass=server"); -- Samba Shared Repository