1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

s3: Use cli_connect_nb in remote_password_change

This commit is contained in:
Volker Lendecke 2011-05-28 20:45:11 +02:00
parent 57ae32794f
commit 06eec02e74

View File

@ -33,10 +33,8 @@ NTSTATUS remote_password_change(const char *remote_machine, const char *user_nam
const char *old_passwd, const char *new_passwd, const char *old_passwd, const char *new_passwd,
char **err_str) char **err_str)
{ {
struct nmb_name calling, called;
struct cli_state *cli = NULL; struct cli_state *cli = NULL;
struct rpc_pipe_client *pipe_hnd = NULL; struct rpc_pipe_client *pipe_hnd = NULL;
struct sockaddr_storage ss;
char *user, *domain, *p; char *user, *domain, *p;
NTSTATUS result; NTSTATUS result;
@ -57,41 +55,14 @@ NTSTATUS remote_password_change(const char *remote_machine, const char *user_nam
*err_str = NULL; *err_str = NULL;
if(!resolve_name( remote_machine, &ss, 0x20, false)) { result = cli_connect_nb(remote_machine, NULL, 0, 0x20, NULL,
if (asprintf(err_str, "Unable to find an IP address for machine " Undefined, &cli);
"%s.\n", remote_machine) == -1) {
*err_str = NULL;
}
return NT_STATUS_UNSUCCESSFUL;
}
cli = cli_initialise();
if (!cli) {
return NT_STATUS_NO_MEMORY;
}
result = cli_connect(cli, remote_machine, &ss);
if (!NT_STATUS_IS_OK(result)) { if (!NT_STATUS_IS_OK(result)) {
if (asprintf(err_str, "Unable to connect to SMB server on " if (asprintf(err_str, "Unable to connect to SMB server on "
"machine %s. Error was : %s.\n", "machine %s. Error was : %s.\n",
remote_machine, nt_errstr(result))==-1) { remote_machine, nt_errstr(result))==-1) {
*err_str = NULL; *err_str = NULL;
} }
cli_shutdown(cli);
return result;
}
make_nmb_name(&calling, global_myname() , 0x0);
make_nmb_name(&called , remote_machine, 0x20);
if (!cli_session_request(cli, &calling, &called)) {
result = cli_nt_error(cli);
if (asprintf(err_str, "machine %s rejected the session setup. "
"Error was : %s.\n",
remote_machine, nt_errstr(result)) == -1) {
*err_str = NULL;
}
cli_shutdown(cli);
return result; return result;
} }