[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha6-1239-ga4e570e

Günther Deschner gd at samba.org
Wed Feb 25 21:18:18 GMT 2009


The branch, master has been updated
       via  a4e570e3cedf284ee83853415176e4dcccc105cb (commit)
      from  bfc7ec9e4a35e8ad64205e56cd0e621b41740efb (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit a4e570e3cedf284ee83853415176e4dcccc105cb
Author: Günther Deschner <gd at samba.org>
Date:   Wed Feb 25 22:10:21 2009 +0100

    s3-rpcclient: add test command to call netr_LogonGetCapabilities (for bug #6100).
    
    Guenther

-----------------------------------------------------------------------

Summary of changes:
 source3/rpcclient/cmd_netlogon.c |   44 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 44 insertions(+), 0 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpcclient/cmd_netlogon.c b/source3/rpcclient/cmd_netlogon.c
index 9955d2d..45df488 100644
--- a/source3/rpcclient/cmd_netlogon.c
+++ b/source3/rpcclient/cmd_netlogon.c
@@ -1107,6 +1107,49 @@ static NTSTATUS cmd_netlogon_database_redo(struct rpc_pipe_client *cli,
 	return status;
 }
 
+static NTSTATUS cmd_netlogon_capabilities(struct rpc_pipe_client *cli,
+					  TALLOC_CTX *mem_ctx, int argc,
+					  const char **argv)
+{
+	NTSTATUS status = NT_STATUS_UNSUCCESSFUL;
+	struct netr_Authenticator credential;
+	struct netr_Authenticator return_authenticator;
+	union netr_Capabilities capabilities;
+	uint32_t level = 1;
+
+	if (argc > 2) {
+		fprintf(stderr, "Usage: %s <level>\n", argv[0]);
+		return NT_STATUS_OK;
+	}
+
+	if (argc == 2) {
+		level = atoi(argv[1]);
+	}
+
+#if 0
+	netlogon_creds_client_step(cli->dc, &credential);
+#else
+	ZERO_STRUCT(credential);
+#endif
+
+	status = rpccli_netr_LogonGetCapabilities(cli, mem_ctx,
+						  cli->desthost,
+						  global_myname(),
+						  &credential,
+						  &return_authenticator,
+						  level,
+						  &capabilities);
+#if 0
+	if (!netlogon_creds_client_check(cli->dc,
+					 &return_authenticator.cred)) {
+		DEBUG(0,("credentials chain check failed\n"));
+		return NT_STATUS_ACCESS_DENIED;
+	}
+#endif
+
+	return status;
+}
+
 /* List of commands exported by this module */
 
 struct cmd_set netlogon_commands[] = {
@@ -1134,6 +1177,7 @@ struct cmd_set netlogon_commands[] = {
 	{ "netrenumtrusteddomainsex", RPC_RTYPE_WERROR, NULL, cmd_netlogon_enumtrusteddomainsex, &ndr_table_netlogon.syntax_id, NULL, "Enumerate trusted domains",     "" },
 	{ "getdcsitecoverage", RPC_RTYPE_WERROR, NULL, cmd_netlogon_getdcsitecoverage, &ndr_table_netlogon.syntax_id, NULL, "Get the Site-Coverage from a DC",     "" },
 	{ "database_redo", RPC_RTYPE_NTSTATUS, cmd_netlogon_database_redo, NULL, &ndr_table_netlogon.syntax_id, NULL, "Replicate single object from a DC",     "" },
+	{ "capabilities", RPC_RTYPE_NTSTATUS, cmd_netlogon_capabilities, NULL, &ndr_table_netlogon.syntax_id, NULL, "Return Capabilities",     "" },
 
 	{ NULL }
 };


-- 
Samba Shared Repository


More information about the samba-cvs mailing list