The branch, master has been updated via dde836a... s4-drs: allow for security bypass for DsReplicaGetInfo via 2985aeb... s4-dsdb: isGlobalCatalogReady should be shown by default from aa1fce6... ldap: Fix test failure that seemed to go unreported previously.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit dde836adbdb5c04cb43774c65fa1af713d9cdb7a Author: Andrew Tridgell <tri...@samba.org> Date: Sun Jan 17 06:52:14 2010 +1100 s4-drs: allow for security bypass for DsReplicaGetInfo Use --option=drs:disable_sec_check=true until the group membership bug with the PAC is fixed. commit 2985aeb8c930b3b2e4d4bba080b3d6ec0722c7d3 Author: Andrew Tridgell <tri...@samba.org> Date: Sun Jan 17 06:48:09 2010 +1100 s4-dsdb: isGlobalCatalogReady should be shown by default This caused repadmin.exe to crash. Thanks to Hongwei for tracking this down for us. ----------------------------------------------------------------------- Summary of changes: source4/dsdb/samdb/ldb_modules/rootdse.c | 2 +- source4/rpc_server/drsuapi/dcesrv_drsuapi.c | 14 +++++++++----- 2 files changed, 10 insertions(+), 6 deletions(-) Changeset truncated at 500 lines: diff --git a/source4/dsdb/samdb/ldb_modules/rootdse.c b/source4/dsdb/samdb/ldb_modules/rootdse.c index 4ce379b..9d2b8cd 100644 --- a/source4/dsdb/samdb/ldb_modules/rootdse.c +++ b/source4/dsdb/samdb/ldb_modules/rootdse.c @@ -364,7 +364,7 @@ static int rootdse_add_dynamic(struct ldb_module *module, struct ldb_message *ms } } - if (do_attribute_explicit(attrs, "isGlobalCatalogReady")) { + if (do_attribute(attrs, "isGlobalCatalogReady")) { /* MS-ADTS 3.1.1.3.2.10 Note, we should only return true here is we have completed at least one synchronisation. As both diff --git a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c index ae70fbc..b5088bb 100644 --- a/source4/rpc_server/drsuapi/dcesrv_drsuapi.c +++ b/source4/rpc_server/drsuapi/dcesrv_drsuapi.c @@ -28,6 +28,7 @@ #include "rpc_server/drsuapi/dcesrv_drsuapi.h" #include "libcli/security/security.h" #include "auth/auth.h" +#include "param/param.h" #define DRSUAPI_UNSUPPORTED(fname) do { \ DEBUG(1,(__location__ ": Unsupported DRS call %s\n", #fname)); \ @@ -745,11 +746,14 @@ static WERROR dcesrv_drsuapi_DsReplicaGetInfo(struct dcesrv_call_state *dce_call { enum security_user_level level; - level = security_session_user_level(dce_call->conn->auth_state.session_info); - if (level < SECURITY_ADMINISTRATOR) { - DEBUG(1,(__location__ ": Administrator access required for DsReplicaGetInfo\n")); - security_token_debug(2, dce_call->conn->auth_state.session_info->security_token); - return WERR_DS_DRA_ACCESS_DENIED; + if (!lp_parm_bool(dce_call->conn->dce_ctx->lp_ctx, NULL, + "drs", "disable_sec_check", false)) { + level = security_session_user_level(dce_call->conn->auth_state.session_info); + if (level < SECURITY_ADMINISTRATOR) { + DEBUG(1,(__location__ ": Administrator access required for DsReplicaGetInfo\n")); + security_token_debug(2, dce_call->conn->auth_state.session_info->security_token); + return WERR_DS_DRA_ACCESS_DENIED; + } } dcesrv_irpc_forward_rpc_call(dce_call, mem_ctx, r, NDR_DRSUAPI_DSREPLICAGETINFO, -- Samba Shared Repository