summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/lib/messaging/irpc.h2
-rw-r--r--source4/lib/messaging/messaging.c7
2 files changed, 7 insertions, 2 deletions
diff --git a/source4/lib/messaging/irpc.h b/source4/lib/messaging/irpc.h
index 93cadddd34..99a2d60f35 100644
--- a/source4/lib/messaging/irpc.h
+++ b/source4/lib/messaging/irpc.h
@@ -28,7 +28,7 @@ struct irpc_message {
};
/* don't allow calls to take too long */
-#define IRPC_CALL_TIMEOUT 20
+#define IRPC_CALL_TIMEOUT 10
/* the server function type */
diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c
index 4c4b6ea8da..823058b0cf 100644
--- a/source4/lib/messaging/messaging.c
+++ b/source4/lib/messaging/messaging.c
@@ -308,7 +308,12 @@ NTSTATUS messaging_send(struct messaging_context *msg, uint32_t server,
rec->path = messaging_path(msg, server);
talloc_steal(rec, rec->path);
- status = try_send(rec);
+ if (msg->pending != NULL) {
+ status = STATUS_MORE_ENTRIES;
+ } else {
+ status = try_send(rec);
+ }
+
if (NT_STATUS_EQUAL(status, STATUS_MORE_ENTRIES)) {
if (msg->pending == NULL) {
EVENT_FD_WRITEABLE(msg->event.fde);