summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2008-02-04 23:04:35 +1100
committerAndrew Bartlett <abartlet@samba.org>2008-02-04 23:04:35 +1100
commit7e15e09f677f0167dd6b1cec2ccacdd8608e02c7 (patch)
treee859378abd91e622a0eeb7e0053a22366d0cf437
parent0f8eeb81ec109cde681961614fb690f8373fa9c6 (diff)
downloadsamba-7e15e09f677f0167dd6b1cec2ccacdd8608e02c7.tar.gz
samba-7e15e09f677f0167dd6b1cec2ccacdd8608e02c7.tar.bz2
samba-7e15e09f677f0167dd6b1cec2ccacdd8608e02c7.zip
Fix a few more breakages from our recent changes to the server_id
structure. The BASE-TORTURE test found this problem - caused because the messaging path was not unique. If we didn't use a macro for cluster_id_equal(), we could make it opaque, and avoid this... Andrew Bartlett (This used to be commit c3387545c57d2dd4922b4f3806b4552cee8035a3)
-rw-r--r--source4/cluster/cluster.h4
-rw-r--r--source4/lib/messaging/messaging.c4
2 files changed, 5 insertions, 3 deletions
diff --git a/source4/cluster/cluster.h b/source4/cluster/cluster.h
index 203aef439c..7545757f2c 100644
--- a/source4/cluster/cluster.h
+++ b/source4/cluster/cluster.h
@@ -25,7 +25,9 @@
/*
test for same cluster id
*/
-#define cluster_id_equal(id1, id2) ((id1)->id == (id2)->id && (id1)->node == (id2)->node)
+#define cluster_id_equal(id_1, id_2) ((id_1)->id == (id_2)->id \
+ && (id_1)->id2 == (id_2)->id2 \
+ && (id_1)->node == (id_2)->node)
/*
test for same cluster node
diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c
index 9cb10f961c..6a879ab962 100644
--- a/source4/lib/messaging/messaging.c
+++ b/source4/lib/messaging/messaging.c
@@ -121,8 +121,8 @@ static NTSTATUS irpc_uptime(struct irpc_message *msg,
*/
static char *messaging_path(struct messaging_context *msg, struct server_id server_id)
{
- return talloc_asprintf(msg, "%s/msg.%u.%u", msg->base_path,
- (unsigned)server_id.node, (unsigned)server_id.id);
+ return talloc_asprintf(msg, "%s/msg.%s", msg->base_path,
+ cluster_id_string(msg, server_id));
}
/*