s3: Use msg_ctx->id in messaging
authorVolker Lendecke <vl@samba.org>
Sun, 4 Jul 2010 14:41:51 +0000 (16:41 +0200)
committerVolker Lendecke <vl@samba.org>
Sun, 4 Jul 2010 15:29:23 +0000 (17:29 +0200)
This removes some references to procid_self() deep inside the code

source3/lib/messages_ctdbd.c
source3/lib/messages_local.c

index 847ab0fe6a9733f943debeab7d6303dde0a26688..871334649db0b753a53875244a5b3e52fc1581af 100644 (file)
@@ -80,7 +80,7 @@ static NTSTATUS messaging_ctdb_send(struct messaging_context *msg_ctx,
        msg.msg_version = MESSAGE_VERSION;
        msg.msg_type    = msg_type;
        msg.dest        = pid;
-       msg.src         = procid_self();
+       msg.src         = msg_ctx->id;
        msg.buf         = *data;
 
        return ctdbd_messaging_send(ctx->conn, pid.vnn, pid.pid, &msg);
index 15b2e4766145811471ab7cfefc59d89fb12a0717..c475773a31f84e899064c80183adc81e1e1c9fda 100644 (file)
@@ -381,7 +381,7 @@ static NTSTATUS messaging_tdb_send(struct messaging_context *msg_ctx,
        rec[msg_array->num_messages].msg_version = MESSAGE_VERSION;
        rec[msg_array->num_messages].msg_type = msg_type & MSG_TYPE_MASK;
        rec[msg_array->num_messages].dest = pid;
-       rec[msg_array->num_messages].src = procid_self();
+       rec[msg_array->num_messages].src = msg_ctx->id;
        rec[msg_array->num_messages].buf = *data;
 
        msg_array->messages = rec;
@@ -408,15 +408,16 @@ static NTSTATUS messaging_tdb_send(struct messaging_context *msg_ctx,
 }
 
 /****************************************************************************
- Retrieve all messages for the current process.
+ Retrieve all messages for a process.
 ****************************************************************************/
 
 static NTSTATUS retrieve_all_messages(TDB_CONTEXT *msg_tdb,
+                                     struct server_id id,
                                      TALLOC_CTX *mem_ctx,
                                      struct messaging_array **presult)
 {
        struct messaging_array *result;
-       TDB_DATA key = message_key_pid(mem_ctx, procid_self());
+       TDB_DATA key = message_key_pid(mem_ctx, id);
        NTSTATUS status;
 
        if (tdb_chainlock(msg_tdb, key) == -1) {
@@ -464,7 +465,7 @@ static void message_dispatch(struct messaging_context *msg_ctx)
        DEBUG(10, ("message_dispatch: received_messages = %d\n",
                   ctx->received_messages));
 
-       status = retrieve_all_messages(tdb->tdb, NULL, &msg_array);
+       status = retrieve_all_messages(tdb->tdb, msg_ctx->id, NULL, &msg_array);
        if (!NT_STATUS_IS_OK(status)) {
                DEBUG(0, ("message_dispatch: failed to retrieve messages: %s\n",
                           nt_errstr(status)));