WERROR result;
NTSTATUS status;
struct smbXcli_tcon *orig_tcon = NULL;
+ char *orig_share = NULL;
struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
status = dcerpc_srvsvc_NetShareGetInfo(b, mem_ctx,
}
if (cli_state_has_tcon(cli)) {
- orig_tcon = cli_state_save_tcon(cli);
- if (orig_tcon == NULL) {
- return;
- }
+ cli_state_save_tcon_share(cli, &orig_tcon, &orig_share);
}
if (!NT_STATUS_IS_OK(cli_tree_connect(cli, netname, "A:", NULL))) {
- cli_state_restore_tcon(cli, orig_tcon);
+ cli_state_restore_tcon_share(cli, orig_tcon, orig_share);
return;
}
if (fnum != (uint16_t)-1)
cli_close(cli, fnum);
cli_tdis(cli);
- cli_state_restore_tcon(cli, orig_tcon);
+ cli_state_restore_tcon_share(cli, orig_tcon, orig_share);
return;
}