diff options
author | Stefan Metzmacher <metze@samba.org> | 2013-01-04 13:27:26 +0100 |
---|---|---|
committer | Andrew Bartlett <abartlet@samba.org> | 2013-01-09 09:11:20 +0100 |
commit | 8d9a77f8646cd26371dc2ec1d3ed52730ac19eb9 (patch) | |
tree | ffc50d4f30eead98a991a3fb299bd961fe4ba332 /source4/lib | |
parent | 2cc6f9ce7f8068440ef527b0aebd3ad5ad105a9d (diff) | |
download | samba-8d9a77f8646cd26371dc2ec1d3ed52730ac19eb9.tar.gz samba-8d9a77f8646cd26371dc2ec1d3ed52730ac19eb9.tar.bz2 samba-8d9a77f8646cd26371dc2ec1d3ed52730ac19eb9.zip |
s4:lib/messaging: terminate the irpc_servers_byname() result with server_id_set_disconnected() (bug #9540)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4/lib')
-rw-r--r-- | source4/lib/messaging/messaging.c | 4 | ||||
-rw-r--r-- | 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 2df6f41e4c..5966c29d5a 100644 --- a/source4/lib/messaging/messaging.c +++ b/source4/lib/messaging/messaging.c @@ -982,7 +982,7 @@ struct server_id *irpc_servers_byname(struct imessaging_context *msg_ctx, for (i=0;i<count;i++) { ret[i] = ((struct server_id *)rec.dptr)[i]; } - ret[i] = cluster_id(0, 0); + server_id_set_disconnected(&ret[i]); free(rec.dptr); tdb_unlock_bystring(t->tdb, name); talloc_free(t); @@ -1419,7 +1419,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 fca46e6749..cb79d72065 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) { |