From cc818a96983ae7f23820f51888fdf647a1571367 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Fri, 4 Jan 2013 13:27:26 +0100 Subject: [PATCH] s4:lib/messaging: terminate the irpc_servers_byname() result with server_id_set_disconnected() (bug #9540) Signed-off-by: Stefan Metzmacher Reviewed-by: Andrew Bartlett (cherry picked from commit 8d9a77f8646cd26371dc2ec1d3ed52730ac19eb9) --- source4/lib/messaging/messaging.c | 4 ++-- source4/lib/messaging/pymessaging.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c index 6618897..29ba388 100644 --- a/source4/lib/messaging/messaging.c +++ b/source4/lib/messaging/messaging.c @@ -977,7 +977,7 @@ struct server_id *irpc_servers_byname(struct imessaging_context *msg_ctx, for (i=0;itdb, name); talloc_free(t); @@ -1414,7 +1414,7 @@ struct dcerpc_binding_handle *irpc_binding_handle_by_name(TALLOC_CTX *mem_ctx, errno = EADDRNOTAVAIL; return NULL; } - if (sids[0].pid == 0) { + if (server_id_is_disconnected(&sids[0])) { talloc_free(sids); errno = EADDRNOTAVAIL; return NULL; diff --git a/source4/lib/messaging/pymessaging.c b/source4/lib/messaging/pymessaging.c index fca46e6..cb79d72 100644 --- a/source4/lib/messaging/pymessaging.c +++ b/source4/lib/messaging/pymessaging.c @@ -247,7 +247,7 @@ static PyObject *py_irpc_servers_byname(PyObject *self, PyObject *args, PyObject return NULL; } - for (i = 0; ids[i].pid != 0; i++) { + for (i = 0; !server_id_is_disconnected(&ids[i]); i++) { /* Do nothing */ } @@ -257,7 +257,7 @@ static PyObject *py_irpc_servers_byname(PyObject *self, PyObject *args, PyObject PyErr_NoMemory(); return NULL; } - for (i = 0; ids[i].pid; i++) { + for (i = 0; !server_id_is_disconnected(&ids[i]); i++) { PyObject *py_server_id; struct server_id *p_server_id = talloc(NULL, struct server_id); if (!p_server_id) { -- 1.7.8.6