Files
bpfire/src/patches/samba/samba-3.6.99-fix_rpcclient_timeout_command.patch
Arne Fitzenreiter 1d13e6373a samba: add current RHEL6 patches
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2017-05-28 10:40:09 +02:00

74 lines
2.0 KiB
Diff

From fe30cb2d1932401b5507af9f12149506cf0ae749 Mon Sep 17 00:00:00 2001
From: Andreas Schneider <asn@samba.org>
Date: Tue, 7 Apr 2015 16:12:18 +0200
Subject: [PATCH] PATCHSET25: rpcclient: Fix the timeout command
https://bugzilla.samba.org/show_bug.cgi?id=11199
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(cherry picked from commit 2bca4cdc6f83dce48c73a33288c4fd3ae80f883b)
---
source3/rpcclient/rpcclient.c | 23 +++++++----------------
1 file changed, 7 insertions(+), 16 deletions(-)
diff --git a/source3/rpcclient/rpcclient.c b/source3/rpcclient/rpcclient.c
index c2f3e4c..0dbcd01 100644
--- a/source3/rpcclient/rpcclient.c
+++ b/source3/rpcclient/rpcclient.c
@@ -481,8 +481,6 @@ static NTSTATUS cmd_seal(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
static NTSTATUS cmd_timeout(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
int argc, const char **argv)
{
- struct cmd_list *tmp;
-
if (argc > 2) {
printf("Usage: %s timeout\n", argv[0]);
return NT_STATUS_OK;
@@ -490,19 +488,6 @@ static NTSTATUS cmd_timeout(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
if (argc == 2) {
timeout = atoi(argv[1]);
-
- for (tmp = cmd_list; tmp; tmp = tmp->next) {
-
- struct cmd_set *tmp_set;
-
- for (tmp_set = tmp->cmd_set; tmp_set->name; tmp_set++) {
- if (tmp_set->rpc_pipe == NULL) {
- continue;
- }
-
- rpccli_set_timeout(tmp_set->rpc_pipe, timeout);
- }
- }
}
printf("timeout is %d\n", timeout);
@@ -791,6 +776,11 @@ static NTSTATUS do_cmd(struct cli_state *cli,
}
}
+ /* Set timeout for new connections */
+ if (cmd_entry->rpc_pipe) {
+ rpccli_set_timeout(cmd_entry->rpc_pipe, timeout);
+ }
+
/* Run command */
if ( cmd_entry->returntype == RPC_RTYPE_NTSTATUS ) {
@@ -1124,7 +1114,8 @@ out_free:
/* Load command lists */
- timeout = cli_set_timeout(cli, 10000);
+ timeout = 10000;
+ cli_set_timeout(cli, timeout);
cmd_set = rpcclient_command_list;
--
2.1.0