messaging4: Remove lp_ctx from imessaging_context
authorVolker Lendecke <vl@samba.org>
Thu, 27 Mar 2014 10:18:05 +0000 (10:18 +0000)
committerJeremy Allison <jra@samba.org>
Mon, 31 Mar 2014 20:52:14 +0000 (22:52 +0200)
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source4/lib/messaging/messaging.c

index 5933693afb099f5a3660fbcea83457926f34916b..fbdfd95d910fe9a5a8d6fc49bf51aa402801748e 100644 (file)
@@ -39,7 +39,8 @@
 /* change the message version with any incompatible changes in the protocol */
 #define IMESSAGING_VERSION 1
 
-static struct tdb_wrap *irpc_namedb_open(struct imessaging_context *msg_ctx);
+static struct tdb_wrap *irpc_namedb_open(struct imessaging_context *msg_ctx,
+                                        struct loadparm_context *lp_ctx);
 
 /*
   a pending irpc call
@@ -58,7 +59,6 @@ struct imessaging_context {
        struct socket_context *sock;
        const char *base_path;
        const char *path;
-       struct loadparm_context *lp_ctx;
        struct dispatch_fn **dispatch;
        uint32_t num_types;
        struct idr_context *dispatch_tree;
@@ -598,11 +598,6 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx,
 
        /* create the messaging directory if needed */
 
-       msg->lp_ctx = talloc_reference(msg, lp_ctx);
-       if (!msg->lp_ctx) {
-               goto fail;
-       }
-
        msg->base_path     = lpcfg_imessaging_path(msg, lp_ctx);
        if (msg->base_path == NULL) {
                goto fail;
@@ -631,7 +626,7 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx,
 
        msg->start_time    = timeval_current();
 
-       msg->names_db = irpc_namedb_open(msg);
+       msg->names_db = irpc_namedb_open(msg, lp_ctx);
        if (msg->names_db == NULL) {
                goto fail;
        }
@@ -912,17 +907,16 @@ static int irpc_destructor(struct irpc_request *irpc)
 /*
   open the naming database
 */
-static struct tdb_wrap *irpc_namedb_open(struct imessaging_context *msg_ctx)
+static struct tdb_wrap *irpc_namedb_open(struct imessaging_context *msg_ctx,
+                                        struct loadparm_context *lp_ctx)
 {
        struct tdb_wrap *t;
        char *path = talloc_asprintf(msg_ctx, "%s/names.tdb", msg_ctx->base_path);
        if (path == NULL) {
                return NULL;
        }
-       t = tdb_wrap_open(msg_ctx, path,
-                         lpcfg_tdb_hash_size(msg_ctx->lp_ctx, path),
-                         lpcfg_tdb_flags(msg_ctx->lp_ctx, 0),
-                         O_RDWR|O_CREAT, 0660);
+       t = tdb_wrap_open(msg_ctx, path, lpcfg_tdb_hash_size(lp_ctx, path),
+                         lpcfg_tdb_flags(lp_ctx, 0), O_RDWR|O_CREAT, 0660);
        talloc_free(path);
        return t;
 }