The Samba-Bugzilla – Attachment 11510 Details for
Bug 11562
s4:lib/messaging: use correct path for names.tdb
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for master
patch (text/plain), 3.66 KB, created by
Ralph Böhme
on 2015-10-20 09:40:41 UTC
(
hide
)
Description:
Patch for master
Filename:
MIME Type:
Creator:
Ralph Böhme
Created:
2015-10-20 09:40:41 UTC
Size:
3.66 KB
patch
obsolete
>From bc1b84cc1aa472904a56ae96a2b0b55b95a57714 Mon Sep 17 00:00:00 2001 >From: Ralph Boehme <slow@samba.org> >Date: Wed, 14 Oct 2015 12:40:03 +0200 >Subject: [PATCH 1/2] s4:lib/messaging: use correct path for names.tdb > >source3 messaging_init() calls server_id_db_init() (where names.tdb is >created) with lock_path. source4 imessaging_init() otoh wrongly used the >special lock_path subdirectory "msg.lock": > >> find /opt/samba/ -name names.tdb >/opt/samba/var/lock/msg.lock/names.tdb >/opt/samba/var/lock/names.tdb > >> tdbdump /opt/samba/var/lock/names.tdb >{ >key(14) = "notify-daemon\00" >data(27) = "28609/12756565486113779780\00" >} > >> tdbdump /opt/samba/var/lock/msg.lock/names.tdb >{ >key(15) = "winbind_server\00" >data(8) = "28593/0\00" >} > >With this patch both source3 and source4 messaging now use the same >names.tdb which is what we want: > >> find /opt/samba/ -name names.tdb >/opt/samba/var/lock/names.tdb > >> tdbdump /opt/samba/var/lock/names.tdb >{ >key(15) = "winbind_server\00" >data(8) = "26434/0\00" >} >{ >key(14) = "notify-daemon\00" >data(26) = "26452/3454520012124001687\00" >} > >Bug: https://bugzilla.samba.org/show_bug.cgi?id=11562 > >Signed-off-by: Ralph Boehme <slow@samba.org> >--- > source4/lib/messaging/messaging.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > >diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c >index d91d175..72867da 100644 >--- a/source4/lib/messaging/messaging.c >+++ b/source4/lib/messaging/messaging.c >@@ -311,6 +311,7 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx, > struct imessaging_context *msg; > bool ok; > int ret; >+ const char *lock_dir; > > if (ev == NULL) { > return NULL; >@@ -323,6 +324,11 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx, > > /* create the messaging directory if needed */ > >+ lock_dir = lpcfg_lock_directory(lp_ctx); >+ if (lock_dir == NULL) { >+ goto fail; >+ } >+ > msg->sock_dir = lpcfg_private_path(msg, lp_ctx, "msg.sock"); > if (msg->sock_dir == NULL) { > goto fail; >@@ -363,7 +369,7 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx, > msg->start_time = timeval_current(); > > msg->names = server_id_db_init( >- msg, server_id, msg->lock_dir, 0, >+ msg, server_id, lock_dir, 0, > TDB_INCOMPATIBLE_HASH|TDB_CLEAR_IF_FIRST| > lpcfg_tdb_flags(lp_ctx, 0)); > if (msg->names == NULL) { >-- >2.1.0 > > >From 00c95f245ebe82d6c47ae341336268c665be361c Mon Sep 17 00:00:00 2001 >From: Ralph Boehme <slow@samba.org> >Date: Tue, 20 Oct 2015 11:35:23 +0200 >Subject: [PATCH 2/2] s4:lib/messaging: use a helper variable for tdb flags > >Small refactoring that eliminates a nested function call. These are a >pita when stepping with gdb. > >Bug: https://bugzilla.samba.org/show_bug.cgi?id=11562 > >Signed-off-by: Ralph Boehme <slow@samba.org> >--- > source4/lib/messaging/messaging.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > >diff --git a/source4/lib/messaging/messaging.c b/source4/lib/messaging/messaging.c >index 72867da..48e2509 100644 >--- a/source4/lib/messaging/messaging.c >+++ b/source4/lib/messaging/messaging.c >@@ -312,6 +312,7 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx, > bool ok; > int ret; > const char *lock_dir; >+ int tdb_flags = TDB_INCOMPATIBLE_HASH|TDB_CLEAR_IF_FIRST; > > if (ev == NULL) { > return NULL; >@@ -368,10 +369,9 @@ struct imessaging_context *imessaging_init(TALLOC_CTX *mem_ctx, > > msg->start_time = timeval_current(); > >- msg->names = server_id_db_init( >- msg, server_id, lock_dir, 0, >- TDB_INCOMPATIBLE_HASH|TDB_CLEAR_IF_FIRST| >- lpcfg_tdb_flags(lp_ctx, 0)); >+ tdb_flags |= lpcfg_tdb_flags(lp_ctx, 0); >+ >+ msg->names = server_id_db_init(msg, server_id, lock_dir, 0, tdb_flags); > if (msg->names == NULL) { > goto fail; > } >-- >2.1.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 11562
: 11510 |
11526