The branch, master has been updated via b9cfe10 s4-drs: fixed a crash in writspn from 8e34df4 s4-test: we need to import testtools before subunit/python
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit b9cfe109453937f5c2ae5008bee4b12226d68914 Author: Andrew Tridgell <tri...@samba.org> Date: Sat Nov 13 19:08:45 2010 +1100 s4-drs: fixed a crash in writspn sam_ctx_system may be NULL for non-privileged users Autobuild-User: Andrew Tridgell <tri...@samba.org> Autobuild-Date: Sat Nov 13 08:52:53 UTC 2010 on sn-devel-104 ----------------------------------------------------------------------- Summary of changes: source4/rpc_server/drsuapi/writespn.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/rpc_server/drsuapi/writespn.c b/source4/rpc_server/drsuapi/writespn.c index 23b0626..320232d 100644 --- a/source4/rpc_server/drsuapi/writespn.c +++ b/source4/rpc_server/drsuapi/writespn.c @@ -160,6 +160,7 @@ WERROR dcesrv_drsuapi_DsWriteAccountSpn(struct dcesrv_call_state *dce_call, TALL int ret; unsigned spn_count=0; bool passed_checks = true; + struct ldb_context *sam_ctx; req = &r->in.req->req1; count = req->count; @@ -215,9 +216,14 @@ WERROR dcesrv_drsuapi_DsWriteAccountSpn(struct dcesrv_call_state *dce_call, TALL } } + if (passed_checks && b_state->sam_ctx_system) { + sam_ctx = b_state->sam_ctx_system; + } else { + sam_ctx = b_state->sam_ctx; + } + /* Apply to database */ - ret = dsdb_modify(passed_checks?b_state->sam_ctx_system:b_state->sam_ctx, - msg, DSDB_MODIFY_PERMISSIVE); + ret = dsdb_modify(sam_ctx, msg, DSDB_MODIFY_PERMISSIVE); if (ret != LDB_SUCCESS) { DEBUG(0,("Failed to modify SPNs on %s: %s\n", ldb_dn_get_linearized(msg->dn), -- Samba Shared Repository