summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2011-01-21 16:58:32 +0100
committerGünther Deschner <gd@samba.org>2011-01-24 16:56:00 +0100
commit99437614fa8028d60356ee79611d94051ec756ec (patch)
treeb139d046570a03c4065c022fef704357e8ede0a8
parentef0a3903f007cee5a564699fc9750d6e8a472d7d (diff)
downloadsamba-99437614fa8028d60356ee79611d94051ec756ec.tar.gz
samba-99437614fa8028d60356ee79611d94051ec756ec.tar.bz2
samba-99437614fa8028d60356ee79611d94051ec756ec.zip
s3-rpcclient: allow to define validation level for samlogon.
Guenther
-rw-r--r--source3/rpc_client/cli_netlogon.c2
-rw-r--r--source3/rpc_client/cli_netlogon.h1
-rw-r--r--source3/rpcclient/cmd_netlogon.c6
3 files changed, 5 insertions, 4 deletions
diff --git a/source3/rpc_client/cli_netlogon.c b/source3/rpc_client/cli_netlogon.c
index 3046d277ee..914bfd3df6 100644
--- a/source3/rpc_client/cli_netlogon.c
+++ b/source3/rpc_client/cli_netlogon.c
@@ -159,6 +159,7 @@ NTSTATUS rpccli_netlogon_sam_logon(struct rpc_pipe_client *cli,
const char *username,
const char *password,
const char *workstation,
+ uint16_t validation_level,
int logon_type)
{
NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
@@ -168,7 +169,6 @@ NTSTATUS rpccli_netlogon_sam_logon(struct rpc_pipe_client *cli,
union netr_LogonLevel *logon;
union netr_Validation validation;
uint8_t authoritative;
- int validation_level = 3;
fstring clnt_name_slash;
struct dcerpc_binding_handle *b = cli->binding_handle;
diff --git a/source3/rpc_client/cli_netlogon.h b/source3/rpc_client/cli_netlogon.h
index 107c222cee..bb38b75b95 100644
--- a/source3/rpc_client/cli_netlogon.h
+++ b/source3/rpc_client/cli_netlogon.h
@@ -15,6 +15,7 @@ NTSTATUS rpccli_netlogon_sam_logon(struct rpc_pipe_client *cli,
const char *username,
const char *password,
const char *workstation,
+ uint16_t validation_level,
int logon_type);
NTSTATUS rpccli_netlogon_sam_network_logon(struct rpc_pipe_client *cli,
TALLOC_CTX *mem_ctx,
diff --git a/source3/rpcclient/cmd_netlogon.c b/source3/rpcclient/cmd_netlogon.c
index 1942352939..c909efe53f 100644
--- a/source3/rpcclient/cmd_netlogon.c
+++ b/source3/rpcclient/cmd_netlogon.c
@@ -718,7 +718,7 @@ static NTSTATUS cmd_netlogon_sam_logon(struct rpc_pipe_client *cli,
NTSTATUS result = NT_STATUS_UNSUCCESSFUL;
int logon_type = NetlogonNetworkInformation;
const char *username, *password;
- int auth_level = 2;
+ uint16_t validation_level = 3;
uint32 logon_param = 0;
const char *workstation = NULL;
@@ -740,14 +740,14 @@ static NTSTATUS cmd_netlogon_sam_logon(struct rpc_pipe_client *cli,
sscanf(argv[4], "%i", &logon_type);
if (argc >= 6)
- sscanf(argv[5], "%i", &auth_level);
+ validation_level = atoi(argv[5]);
if (argc == 7)
sscanf(argv[6], "%x", &logon_param);
/* Perform the sam logon */
- result = rpccli_netlogon_sam_logon(cli, mem_ctx, logon_param, lp_workgroup(), username, password, workstation, logon_type);
+ result = rpccli_netlogon_sam_logon(cli, mem_ctx, logon_param, lp_workgroup(), username, password, workstation, validation_level, logon_type);
if (!NT_STATUS_IS_OK(result))
goto done;