[SCM] Samba Website Repository - branch master updated
The branch, master has been updated via 0994f3f FAQ: Some updates. from fc98b10 Add missing ) and try to make it a sentence http://gitweb.samba.org/?p=samba-web.git;a=shortlog;h=master - Log - commit 0994f3f081e4f1a24abb9df9ef25bc7b87f23e51 Author: Karolin Seeger ksee...@samba.org Date: Sun Apr 7 21:00:35 2013 +0200 FAQ: Some updates. Better reflect the current status of the release branches. Thanks to Patrick Lauer patrick.la...@star-group.net for reporting! Karolin --- Summary of changes: docs/FAQ/index.html | 22 -- 1 files changed, 12 insertions(+), 10 deletions(-) Changeset truncated at 500 lines: diff --git a/docs/FAQ/index.html b/docs/FAQ/index.html index 7e24088..b4cd809 100755 --- a/docs/FAQ/index.html +++ b/docs/FAQ/index.html @@ -68,24 +68,26 @@ to include as much good work as we can./p pThe Samba 3.2 branch is not supported any longer./p -pThe Samba 3.3 branch is in the security fixes only mode./p +pThe Samba 3.3 branch is not supported any longer./p -pThe Samba 3.4 branch is in the bug fix mode. That means, there are bug fix -releases on a as needed basis./p +pThe Samba 3.4 branch is not supported any longer./p -pThe current stable, production Samba server is the Samba 3.5 branch. The +pThe Samba 3.5 branch is in the security fixes only mode./p + +pThe Samba 3.6 branch is in the maintenance mode. That means, major issues +will be fixed on a as needed basis./p + +pThe Samba 4.0 branch is in the bug fix mode. That means, bug fix releases +are available approximately every six weeks (on a as needed basis)./p + +pThe current stable, production Samba server is the Samba 4.0 branch. The most recent release is always the recommended version for production use. See the a href=/samba/historyrelease history/a page for an overview of current and past releases or the a -href=http://wiki.samba.org/index.php/Samba3_Release_Planning;Release +href=http://wiki.samba.org/index.php/Samba_Release_Planning;Release Planning Wiki page/a for more information on current and upcoming releases and schedules./p -pSamba4 is a development branch that hasn't yet had an initial release. If -you are a developer wanting to play with the bleeding-edge of the work done on -Samba, try a href=http://gitweb.samba.org/?p=samba.git;a=tree;h=v4-0-test;hb=v4-0-test;Samba4/a, -which you'll obviously have to build yourself./p - h3How do I verify a tarball with the GnuPG signature?/h3 pUsing GnuPG, simply download the Samba source distribution, the tarball -- Samba Website Repository
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via ac66048 printing: update registry and publish in background via c30c66d spoolss: only reload printers on pcap update message via f4af7c4 printing: add sighup and conf change handlers via 23ac828 printing: move pcap change notifier to bg process via d7286bb smbd: fix cups printcap cache updates on startup from 93bca18 Make sure that we only propogate the INHERITED flag when we are allowed to. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit ac6604868d1325dd4c872dc0f6ab056d10ebaecf Author: David Disseldorp dd...@samba.org Date: Fri Mar 15 16:54:06 2013 +0100 printing: update registry and publish in background Currently all smbd processes unnecessarily access each printer registry TDB entry following printcap cache reload. This change moves responsibility for this to the background print queue process. This and the last four commits address bug 9650: New or delete cups printerqueues are not recognized by the samba. commit c30c66d8b5b4ebbde1b148c51310e336f29ca04e Author: David Disseldorp dd...@samba.org Date: Fri Feb 15 12:17:53 2013 +0100 spoolss: only reload printers on pcap update message Printcap cache updates are the responsibility of the background printing process, which after doing so broadcasts a MSG_PRINTER_PCAP message. Spoolssd should only reload printers after receiving such a message. commit f4af7c4d4cafe15c437742d450c7753a8b6d8422 Author: David Disseldorp dd...@samba.org Date: Thu Feb 14 17:02:08 2013 +0100 printing: add sighup and conf change handlers The background printing process is now responsible for all printcap cache updates, which should be done on SIGHUP and configuration change. commit 23ac828ba93e2ffc60ced19656af9609dcc1b2ab Author: David Disseldorp dd...@samba.org Date: Thu Feb 14 14:42:21 2013 +0100 printing: move pcap change notifier to bg process The background print queue process is responsible for printcap cache updates, and should be the only process to send notifications. commit d7286bb6520ebe03355e98e3311e1d79e2746791 Author: David Disseldorp dd...@samba.org Date: Tue Feb 12 18:57:53 2013 +0100 smbd: fix cups printcap cache updates on startup On startup the parent smbd process currently calls pcap_cache_reload(), which is done immediately before the background queue process is forked. pcap_cache_reload() is asynchronous with cups, in that it forks a separate process to obtain the printer listing. The cache_fd_event print_cups.c global variable is used to track when a cups printer listing is in progress. cache_fd_event is set when the background queue process is forked, due to smbd's pcap_cache_reload() call immediately prior. As a result, the background queue process assumes an existing pcap_cache_reload() call is indefinitely outstanding, causing the printcap cache to remain stale thereafter. --- Summary of changes: source3/printing/printing.c | 77 +++- source3/printing/spoolssd.c | 18 - source3/smbd/process.c | 53 --- source3/smbd/proto.h |7 +--- source3/smbd/server.c| 77 ++-- source3/smbd/server_reload.c | 80 + 6 files changed, 207 insertions(+), 105 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/printing/printing.c b/source3/printing/printing.c index a5b36c7..16821ae 100644 --- a/source3/printing/printing.c +++ b/source3/printing/printing.c @@ -1656,6 +1656,24 @@ static void add_child_pid(pid_t pid) num_children += 1; } +/ + Notify smbds of new printcap data +**/ +static void reload_pcap_change_notify(struct tevent_context *ev, + struct messaging_context *msg_ctx) +{ + /* +* Reload the printers first in the background process so that +* newly added printers get default values created in the registry. +* +* This will block the process for some time (~1 sec per printer), but +* it doesn't block smbd's servering clients. +*/ + reload_printers_full(ev, msg_ctx); + + message_send_all(msg_ctx, MSG_PRINTER_PCAP, NULL, 0, NULL); +} + static bool printer_housekeeping_fn(const struct timeval *now, void *private_data) { @@ -1678,6 +1696,43 @@ static bool printer_housekeeping_fn(const struct timeval *now, return true; } +static void
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 64fb72c wkssvc: Fix bug 9727, NULL pointer dereference from ac66048 printing: update registry and publish in background http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 64fb72ccb26b8e48c50407bc58618499ab2f5603 Author: Volker Lendecke v...@samba.org Date: Mon Mar 18 09:36:17 2013 +0100 wkssvc: Fix bug 9727, NULL pointer dereference Signed-off-by: Volker Lendecke v...@samba.org Reviewed-by: Michael Adam ob...@samba.org Autobuild-User(master): Michael Adam ob...@samba.org Autobuild-Date(master): Mon Mar 18 11:39:27 CET 2013 on sn-devel-104 (cherry picked from commit 05a7a10c88be99d864eacd6f9d37a340022f01f6) --- Summary of changes: source3/rpc_server/wkssvc/srv_wkssvc_nt.c |8 ++-- 1 files changed, 6 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/rpc_server/wkssvc/srv_wkssvc_nt.c b/source3/rpc_server/wkssvc/srv_wkssvc_nt.c index 1764941..2d3ec1e 100644 --- a/source3/rpc_server/wkssvc/srv_wkssvc_nt.c +++ b/source3/rpc_server/wkssvc/srv_wkssvc_nt.c @@ -579,7 +579,9 @@ WERROR _wkssvc_NetWkstaEnumUsers(struct pipes_struct *p, } r-out.info-level = r-in.info-level; *r-out.entries_read = r-out.info-ctr.user0-entries_read; - *r-out.resume_handle = 0; + if (r-out.resume_handle != NULL) { + *r-out.resume_handle = 0; + } break; case 1: r-out.info-ctr.user1 = create_enum_users1(p-mem_ctx); @@ -588,7 +590,9 @@ WERROR _wkssvc_NetWkstaEnumUsers(struct pipes_struct *p, } r-out.info-level = r-in.info-level; *r-out.entries_read = r-out.info-ctr.user1-entries_read; - *r-out.resume_handle = 0; + if (r-out.resume_handle != NULL) { + *r-out.resume_handle = 0; + } break; default: return WERR_UNKNOWN_LEVEL; -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 57db335 Final fix for bug #9130 - Certain xattrs cause Windows error 0x800700FF via 7950384 Ensure we don't return uninitialized memory in the pad bytes. via 8794bb9 Fix bug #9130 - Certain xattrs cause Windows error 0x800700FF via c668853 Change estimate_ea_size() to correctly estimate the EA size over SMB2. via 4565442 Modify fill_ea_chained_buffer() to be able to do size calculation only, no marshalling. from 64fb72c wkssvc: Fix bug 9727, NULL pointer dereference http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 57db33599589b06a60cb7cbb454f87bf40c542e0 Author: Jeremy Allison j...@samba.org Date: Wed Mar 27 11:54:34 2013 -0700 Final fix for bug #9130 - Certain xattrs cause Windows error 0x800700FF The spec lies when it says that NextEntryOffset is the only value considered when finding the next EA. We were adding 4 more extra pad bytes than needed (i.e. if the next entry already was on a 4 byte boundary, then we were adding 4 additional pad bytes). Signed-off-by: Jeremy Allison j...@samba.org The last 5 patches address bug #9130 - Certain xattrs cause Windows error 0x800700FF. commit 79503841059e945e6b14fa8c92375041c5390764 Author: Jeremy Allison j...@samba.org Date: Tue Mar 26 17:07:55 2013 -0700 Ensure we don't return uninitialized memory in the pad bytes. Signed-off-by: Jeremy Allison j...@samba.org commit 8794bb97495a7de4bf98f497abdf713be68db7a9 Author: Jeremy Allison j...@samba.org Date: Tue Mar 26 16:55:03 2013 -0700 Fix bug #9130 - Certain xattrs cause Windows error 0x800700FF Ensure we never return any zero-length EA's. Signed-off-by: Jeremy Allison j...@samba.org commit c6688532c8a01836f29a38806ced62b34617222d Author: Jeremy Allison j...@samba.org Date: Tue Mar 26 16:53:45 2013 -0700 Change estimate_ea_size() to correctly estimate the EA size over SMB2. Signed-off-by: Jeremy Allison j...@samba.org commit 45654424a5c686a43cd9edb8026c0d0424260fd9 Author: Jeremy Allison j...@samba.org Date: Tue Mar 26 16:50:13 2013 -0700 Modify fill_ea_chained_buffer() to be able to do size calculation only, no marshalling. Signed-off-by: Jeremy Allison j...@samba.org --- Summary of changes: source3/smbd/trans2.c | 61 +--- 1 files changed, 52 insertions(+), 9 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index df4fa64..01b0130 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -328,6 +328,15 @@ static struct ea_list *get_ea_list_from_file(TALLOC_CTX *mem_ctx, connection_str return NULL; } + if (listp-ea.value.length == 0) { + /* +* We can never return a zero length EA. +* Windows reports the EA's as corrupted. +*/ + TALLOC_FREE(listp); + continue; + } + push_ascii_fstring(dos_ea_name, listp-ea.name); *pea_total_len += @@ -411,6 +420,7 @@ static NTSTATUS fill_ea_chained_buffer(TALLOC_CTX *mem_ctx, { uint8_t *p = (uint8_t *)pdata; uint8_t *last_start = NULL; + bool store_data = (pdata != NULL); *ret_data_size = 0; @@ -422,8 +432,9 @@ static NTSTATUS fill_ea_chained_buffer(TALLOC_CTX *mem_ctx, size_t dos_namelen; fstring dos_ea_name; size_t this_size; + size_t pad = 0; - if (last_start) { + if (last_start store_data) { SIVAL(last_start, 0, PTR_DIFF(p, last_start)); } last_start = p; @@ -440,7 +451,7 @@ static NTSTATUS fill_ea_chained_buffer(TALLOC_CTX *mem_ctx, this_size = 0x08 + dos_namelen + 1 + ea_list-ea.value.length; if (ea_list-next) { - size_t pad = 4 - (this_size % 4); + pad = (4 - (this_size % 4)) % 4; this_size += pad; } @@ -449,12 +460,19 @@ static NTSTATUS fill_ea_chained_buffer(TALLOC_CTX *mem_ctx, } /* We know we have room. */ - SIVAL(p, 0x00, 0); /* next offset */ - SCVAL(p, 0x04, ea_list-ea.flags); - SCVAL(p, 0x05, dos_namelen); - SSVAL(p, 0x06, ea_list-ea.value.length); - fstrcpy((char *)(p+0x08), dos_ea_name); - memcpy(p + 0x08 + dos_namelen + 1, ea_list-ea.value.data, ea_list-ea.value.length); + if (store_data) { +
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 1df6178 Fix bug #9733 - smbcontrol close-share is not working. from 57db335 Final fix for bug #9130 - Certain xattrs cause Windows error 0x800700FF http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 1df61789ca466923a7a252244888bd1b7cfbc79e Author: Jeremy Allison j...@samba.org Date: Thu Mar 21 13:59:20 2013 -0700 Fix bug #9733 - smbcontrol close-share is not working. As part of forcibly disconnecting a client from a share, smbd must atomically call reload_services() to ensure that the entry in the ServicePtrs[] array corresponding to that share is removed if the share was removed from the smb.conf or registry entries. Otherwise the ServicePtrs[] array entry for the share remains active and the client races to auto-reconnect to the share before a second message to reload the smb.conf file can be sent. This has to be done as part of the close-share message processing, as removing the share from the smb.conf file first, then telling the smbd to reload followed by the forcible disconnect message doesn't work as in this sequence of events when the reload message is received the client is still connected to the share, so the ServicePtrs[] entry is still left active. The forcible-disconnect + service reload has to be done together as an atomic operation in order for this to work. Signed-off-by: Jeremy Allison j...@samba.org --- Summary of changes: source3/smbd/conn.c |7 ++- 1 files changed, 6 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/conn.c b/source3/smbd/conn.c index 8a96e88..05e692f 100644 --- a/source3/smbd/conn.c +++ b/source3/smbd/conn.c @@ -481,7 +481,7 @@ void msg_force_tdis(struct messaging_context *msg, if (strcmp(sharename, *) == 0) { DEBUG(1,(Forcing close of all shares\n)); conn_close_all(sconn); - return; + goto done; } if (sconn-using_smb2) { @@ -512,4 +512,9 @@ void msg_force_tdis(struct messaging_context *msg, } } } + + done: + + change_to_root_user(); + reload_services(msg, -1, true); } -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 01192ce BUG 9735: Fix winbind seperator in upn to username conversion. from 1df6178 Fix bug #9733 - smbcontrol close-share is not working. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 01192ce939cf77737de8efe7072dded5c3e1da94 Author: Andreas Schneider a...@samba.org Date: Fri Mar 22 14:15:57 2013 +0100 BUG 9735: Fix winbind seperator in upn to username conversion. Reviewed-by: Günther Deschner g...@samba.org Signed-off-by: Andreas Schneider a...@samba.org --- Summary of changes: nsswitch/pam_winbind.c |2 +- 1 files changed, 1 insertions(+), 1 deletions(-) Changeset truncated at 500 lines: diff --git a/nsswitch/pam_winbind.c b/nsswitch/pam_winbind.c index 3257101..d126494 100644 --- a/nsswitch/pam_winbind.c +++ b/nsswitch/pam_winbind.c @@ -2448,7 +2448,7 @@ static char* winbind_upn_to_username(struct pwb_context *ctx, return NULL; } - return talloc_asprintf(ctx, %s\\%s, domain, name); + return talloc_asprintf(ctx, %s%c%s, domain, sep, name); } static int _pam_delete_cred(pam_handle_t *pamh, int flags, -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 565d140 smbd: Tune dir a bit. from 01192ce BUG 9735: Fix winbind seperator in upn to username conversion. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 565d1409c7c424fbbeed1e98b042d3970b0acf73 Author: Volker Lendecke v...@samba.org Date: Thu Mar 21 22:00:06 2013 +0100 smbd: Tune dir a bit. for i in $(seq 1 2) ; do echo dir ; done | smbclient //127.0.0.1/tmp -U% without and with this patch: $ time bin/smbd -d0 -i smbd version 4.1.0pre1-GIT-1f139ae started. Copyright Andrew Tridgell and the Samba Team 1992-2013 Beendet real0m28.342s user0m10.249s sys 0m10.513s $ time bin/smbd -d0 -i smbd version 4.1.0pre1-GIT-1f139ae started. Copyright Andrew Tridgell and the Samba Team 1992-2013 Beendet real0m27.348s user0m9.089s sys 0m10.853s The real timestamp is irrelevant, this also contains the time between starting smbd and the smbclient job. It's the user time. The result that this patch improves the time spent in user space by 10% is consistent. Signed-off-by: Volker Lendecke v...@samba.org Reviewed-by: Jeremy Allison j...@samba.org Fix bug #9736 - Change to smbd/dir.c code gives significant performance increases on large directory listings. --- Summary of changes: source3/smbd/dir.c | 25 +++-- 1 files changed, 19 insertions(+), 6 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c index 92be816..f7bc325 100644 --- a/source3/smbd/dir.c +++ b/source3/smbd/dir.c @@ -941,12 +941,14 @@ bool smbd_dirptr_get_entry(TALLOC_CTX *ctx, long *_prev_offset) { connection_struct *conn = dirptr-conn; - bool needslash; + size_t slashlen; + size_t pathlen; *_smb_fname = NULL; *_mode = 0; - needslash = ( dirptr-path[strlen(dirptr-path) -1] != '/'); + pathlen = strlen(dirptr-path); + slashlen = ( dirptr-path[pathlen-1] != '/') ? 1 : 0; while (true) { long cur_offset; @@ -990,16 +992,27 @@ bool smbd_dirptr_get_entry(TALLOC_CTX *ctx, continue; } - pathreal = talloc_asprintf(ctx, %s%s%s, - dirptr-path, - needslash?/:, - dname); + /* +* This used to be +* pathreal = talloc_asprintf(ctx, %s%s%s, dirptr-path, +*needslash?/:, dname); +* but this was measurably slower than doing the memcpy. +*/ + + pathreal = talloc_array( + ctx, char, + pathlen + slashlen + talloc_get_size(dname)); if (!pathreal) { TALLOC_FREE(dname); TALLOC_FREE(fname); return false; } + memcpy(pathreal, dirptr-path, pathlen); + pathreal[pathlen] = '/'; + memcpy(pathreal + slashlen + pathlen, dname, + talloc_get_size(dname)); + /* Create smb_fname with NULL stream_name. */ ZERO_STRUCT(smb_fname); smb_fname.base_name = pathreal; -- Samba Shared Repository
[SCM] Samba Shared Repository - branch v3-6-test updated
The branch, v3-6-test has been updated via 60a2fb5 Optimization suggested by Volker. Don't do a stat system call on normal read path. from 565d140 smbd: Tune dir a bit. http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test - Log - commit 60a2fb5ddac02376d82f323f2acb1211bb7929e3 Author: Jeremy Allison j...@samba.org Date: Mon Mar 25 09:54:50 2013 -0700 Optimization suggested by Volker. Don't do a stat system call on normal read path. Only do it if we need it in the sendfile() path. Signed-off-by: Jeremy Allison j...@samba.org Reviewed-by: Volker Lendecke v...@samba.org Autobuild-User(master): Volker Lendecke v...@samba.org Autobuild-Date(master): Thu Mar 28 17:51:22 CET 2013 on sn-devel-104 Fix bug #9748 - Remove unneeded fstat system call from hot read path. --- Summary of changes: source3/smbd/reply.c | 30 +++--- 1 files changed, 15 insertions(+), 15 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index ffe128a..31f4e2f 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -3529,11 +3529,6 @@ static void send_file_readX(connection_struct *conn, struct smb_request *req, struct lock_struct lock; int saved_errno = 0; - if(fsp_stat(fsp) == -1) { - reply_nterror(req, map_nt_error_from_unix(errno)); - return; - } - init_strict_lock_struct(fsp, (uint64_t)req-smbpid, (uint64_t)startpos, (uint64_t)smb_maxcnt, READ_LOCK, lock); @@ -3543,16 +3538,6 @@ static void send_file_readX(connection_struct *conn, struct smb_request *req, return; } - if (!S_ISREG(fsp-fsp_name-st.st_ex_mode) || - (startpos fsp-fsp_name-st.st_ex_size) - || (smb_maxcnt (fsp-fsp_name-st.st_ex_size - startpos))) { - /* -* We already know that we would do a short read, so don't -* try the sendfile() path. -*/ - goto nosendfile_read; - } - /* * We can only use sendfile on a non-chained packet * but we can use on a non-oplocked file. tridge proved this @@ -3566,6 +3551,21 @@ static void send_file_readX(connection_struct *conn, struct smb_request *req, uint8 headerbuf[smb_size + 12 * 2]; DATA_BLOB header; + if(fsp_stat(fsp) == -1) { + reply_nterror(req, map_nt_error_from_unix(errno)); + goto strict_unlock; + } + + if (!S_ISREG(fsp-fsp_name-st.st_ex_mode) || + (startpos fsp-fsp_name-st.st_ex_size) || + (smb_maxcnt (fsp-fsp_name-st.st_ex_size - startpos))) { + /* +* We already know that we would do a short read, so don't +* try the sendfile() path. +*/ + goto nosendfile_read; + } + /* * Set up the packet header before send. We * assume here the sendfile will work (get the -- Samba Shared Repository
[SCM] CTDB repository - branch master updated - ctdb-2.1-47-g1c7adbc
The branch, master has been updated via 1c7adbccc69ac276d2b957ad16c3802fdb8868ca (commit) via fe8c4880b371492a38554868d4ca10918c54e412 (commit) via 524ec206e6a5e8b11723f4d8d1251ed5d84063b0 (commit) via 74acc2c568300ef42740cf11299a1b2507047f60 (commit) via f7f8bde2376f8180a0dca6d7b8d7d2a4a12f4bd8 (commit) via c137531fae8f7f6392746ce1b9ac6f219775fc29 (commit) via bf7296ce9b98563bcb8426cd035dbeab6d884f59 (commit) via 20be1f991dd75c2333c9ec9db226432a819f57ba (commit) via 4e1ec7412866f2d31c41de1bec0fbf788c03051b (commit) from 85b777196289646ca37e06ebbf1f7a684d0aabc5 (commit) http://gitweb.samba.org/?p=ctdb.git;a=shortlog;h=master - Log - commit 1c7adbccc69ac276d2b957ad16c3802fdb8868ca Author: Amitay Isaacs ami...@gmail.com Date: Fri Apr 5 13:34:06 2013 +1100 recoverd/takeover: Use IP-node mapping info from nodes hosting that IP When collating IP information for IP layout, only trust the nodes that are hosting an IP, to have correct information about that IP. Ignore what all the other nodes think. Signed-off-by: Amitay Isaacs ami...@gmail.com commit fe8c4880b371492a38554868d4ca10918c54e412 Author: Amitay Isaacs ami...@gmail.com Date: Wed Apr 3 14:44:08 2013 +1100 statd-callout: Make sure statd callout script always runs as root In RHEL 6+, rpc.statd runs as rpcuser instead of root as on RHEL 5. This prevents CTDB tool commands talking to daemon since rpcuser cannot access CTDB socket. Signed-off-by: Amitay Isaacs ami...@gmail.com Pair-Programmed-With: Martin Schwenke mar...@meltin.net commit 524ec206e6a5e8b11723f4d8d1251ed5d84063b0 Author: Amitay Isaacs ami...@gmail.com Date: Mon Mar 18 13:45:08 2013 +1100 client: Set the socket non-blocking only after connect succeeds If the socket is set non-blocking before connect, then we should catch EAGAIN errors and retry. Instead of adding a random number of retries, better to wait for connect to succeed and then set the socket to non-blocking. Signed-off-by: Amitay Isaacs ami...@gmail.com commit 74acc2c568300ef42740cf11299a1b2507047f60 Author: Amitay Isaacs ami...@gmail.com Date: Fri Apr 5 13:19:34 2013 +1100 Revert client: handle transient connection errors This reverts commit dc0c58547cd4b20a8e2cd21f3c8363f34fd03e75. There is a simpler solution that retrying random number of times. Do not set socket non-blocking till connect succeeds. commit f7f8bde2376f8180a0dca6d7b8d7d2a4a12f4bd8 Author: Volker Lendecke v...@samba.org Date: Wed Apr 3 14:59:21 2013 +0200 common/messaging: Use the jenkins hash in ctdb_message This give a better hash distribution commit c137531fae8f7f6392746ce1b9ac6f219775fc29 Author: Volker Lendecke v...@samba.org Date: Fri Apr 5 13:11:31 2013 +1100 common/messaging: use tdb_parse_record in message_list_db_fetch This avoids malloc/free in a hot code path. commit bf7296ce9b98563bcb8426cd035dbeab6d884f59 Author: Amitay Isaacs ami...@gmail.com Date: Wed Apr 3 15:08:14 2013 +1100 common/messaging: Abstract db related operations inside db functions This simplifies the use of message indexdb API and abstracts tdb related code inside the API. Signed-off-by: Amitay Isaacs ami...@gmail.com commit 20be1f991dd75c2333c9ec9db226432a819f57ba Author: Amitay Isaacs ami...@gmail.com Date: Tue Apr 2 16:57:51 2013 +1100 common/messaging: Don't forget to free the result returned by tdb_fetch() This fixes a memory leak in the messaging code. Signed-off-by: Amitay Isaacs ami...@gmail.com commit 4e1ec7412866f2d31c41de1bec0fbf788c03051b Author: Amitay Isaacs ami...@gmail.com Date: Tue Apr 2 12:08:39 2013 +1100 common/messaging: Free message list header if all message handlers are freed This makes sure that even if the srvids are not deregistered, the header structure is freed when the last message handler has been freed as a result of client going away. Signed-off-by: Amitay Isaacs ami...@gmail.com --- Summary of changes: Makefile.in|1 + client/ctdb_client.c | 39 +++- common/ctdb_message.c | 110 +--- config/ctdb.sudoers|3 + config/statd-callout |3 + libctdb/ctdb.c |6 +- packaging/RPM/ctdb.spec.in |4 +- server/ctdb_takeover.c |8 +++- 8 files changed, 80 insertions(+), 94 deletions(-) create mode 100644 config/ctdb.sudoers Changeset truncated at 500 lines: diff --git a/Makefile.in b/Makefile.in index 762f788..9511e90 100755 --- a/Makefile.in +++ b/Makefile.in @@ -330,6 +330,7 @@ install: all manpages $(PMDA_INSTALL) ${INSTALLCMD} -m 644
[SCM] CTDB repository - branch 1.2.40 updated - ctdb-1.2.60-10-gf7a21af
The branch, 1.2.40 has been updated via f7a21af8adc65c72326c0f955e5e1712467951ad (commit) via 1d7db16870c3e166f00669eb46c57fac765d0e1e (commit) via 34da547bd3534386e83056bc82b1ee7d9b2148f8 (commit) via b9541b26ed16a141b6cf608feabb29409ebb7ef2 (commit) via 17e11263cae9602da04d9af69cad0083bc29476d (commit) via 184318ce3ec607af53c86ddf8e0e8f6d77313ea4 (commit) via 09f82b58b2ab367a1c4f5b2bc79ceb63ff66a3c4 (commit) via 12090590085c5a3e3b895896ea2668cb592a7e28 (commit) via 2ac73c1e00734aef5da8bc03704c0fa4b0956011 (commit) via e1ba96d63b103bde841b634dc9c4c0eedabe72a9 (commit) from 0372e73b27b0193240aa0a020c8ab9f79abd262f (commit) http://gitweb.samba.org/?p=ctdb.git;a=shortlog;h=1.2.40 - Log - commit f7a21af8adc65c72326c0f955e5e1712467951ad Author: Amitay Isaacs ami...@gmail.com Date: Fri Apr 5 16:26:24 2013 +1100 New version 1.2.61 Signed-off-by: Amitay Isaacs ami...@gmail.com commit 1d7db16870c3e166f00669eb46c57fac765d0e1e Author: Amitay Isaacs ami...@gmail.com Date: Fri Apr 5 15:31:26 2013 +1100 lockwait: Pass CTDB daemon PID on command line In lockwait helper process we cannot rely on getppid() to find the pid of CTDB daemon as CTDB daemon can go away before the helper executes. In which case, ctdb helper process will hang around forever. Signed-off-by: Amitay Isaacs ami...@gmail.com commit 34da547bd3534386e83056bc82b1ee7d9b2148f8 Author: Amitay Isaacs ami...@gmail.com Date: Fri Apr 5 13:34:06 2013 +1100 recoverd/takeover: Use IP-node mapping info from nodes hosting that IP When collating IP information for IP layout, only trust the nodes that are hosting an IP, to have correct information about that IP. Ignore what all the other nodes think. Signed-off-by: Amitay Isaacs ami...@gmail.com (cherry picked from commit 1c7adbccc69ac276d2b957ad16c3802fdb8868ca) commit b9541b26ed16a141b6cf608feabb29409ebb7ef2 Author: Amitay Isaacs ami...@gmail.com Date: Wed Apr 3 14:44:08 2013 +1100 statd-callout: Make sure statd callout script always runs as root In RHEL 6+, rpc.statd runs as rpcuser instead of root as on RHEL 5. This prevents CTDB tool commands talking to daemon since rpcuser cannot access CTDB socket. Signed-off-by: Amitay Isaacs ami...@gmail.com Pair-Programmed-With: Martin Schwenke mar...@meltin.net (cherry picked from commit fe8c4880b371492a38554868d4ca10918c54e412) Conflicts: packaging/RPM/ctdb.spec.in commit 17e11263cae9602da04d9af69cad0083bc29476d Author: Amitay Isaacs ami...@gmail.com Date: Mon Mar 18 13:45:08 2013 +1100 client: Set the socket non-blocking only after connect succeeds If the socket is set non-blocking before connect, then we should catch EAGAIN errors and retry. Instead of adding a random number of retries, better to wait for connect to succeed and then set the socket to non-blocking. Signed-off-by: Amitay Isaacs ami...@gmail.com (cherry picked from commit 524ec206e6a5e8b11723f4d8d1251ed5d84063b0) commit 184318ce3ec607af53c86ddf8e0e8f6d77313ea4 Author: Volker Lendecke v...@samba.org Date: Wed Apr 3 14:59:21 2013 +0200 common/messaging: Use the jenkins hash in ctdb_message This give a better hash distribution (cherry picked from commit f7f8bde2376f8180a0dca6d7b8d7d2a4a12f4bd8) commit 09f82b58b2ab367a1c4f5b2bc79ceb63ff66a3c4 Author: Volker Lendecke v...@samba.org Date: Fri Apr 5 13:11:31 2013 +1100 common/messaging: use tdb_parse_record in message_list_db_fetch This avoids malloc/free in a hot code path. (cherry picked from commit c137531fae8f7f6392746ce1b9ac6f219775fc29) commit 12090590085c5a3e3b895896ea2668cb592a7e28 Author: Amitay Isaacs ami...@gmail.com Date: Wed Apr 3 15:08:14 2013 +1100 common/messaging: Abstract db related operations inside db functions This simplifies the use of message indexdb API and abstracts tdb related code inside the API. Signed-off-by: Amitay Isaacs ami...@gmail.com (cherry picked from commit bf7296ce9b98563bcb8426cd035dbeab6d884f59) commit 2ac73c1e00734aef5da8bc03704c0fa4b0956011 Author: Amitay Isaacs ami...@gmail.com Date: Tue Apr 2 16:57:51 2013 +1100 common/messaging: Don't forget to free the result returned by tdb_fetch() This fixes a memory leak in the messaging code. Signed-off-by: Amitay Isaacs ami...@gmail.com (cherry picked from commit 20be1f991dd75c2333c9ec9db226432a819f57ba) commit e1ba96d63b103bde841b634dc9c4c0eedabe72a9 Author: Amitay Isaacs ami...@gmail.com Date: Tue Apr 2 12:08:39 2013 +1100 common/messaging: Free message list header if all message handlers are freed This makes sure that even if the srvids are not deregistered, the header structure is freed when the last message
[SCM] CTDB repository - annotated tag ctdb-1.2.61 created - ctdb-1.2.61
The annotated tag, ctdb-1.2.61 has been created at 4083383045259c4b3d3b015bd0fb390cdae2d7d1 (tag) tagging f7a21af8adc65c72326c0f955e5e1712467951ad (commit) replaces ctdb-1.2.60 tagged by Amitay Isaacs on Mon Apr 8 14:42:44 2013 +1000 - Log - new version 1.2.61 Amitay Isaacs (8): common/messaging: Free message list header if all message handlers are freed common/messaging: Don't forget to free the result returned by tdb_fetch() common/messaging: Abstract db related operations inside db functions client: Set the socket non-blocking only after connect succeeds statd-callout: Make sure statd callout script always runs as root recoverd/takeover: Use IP-node mapping info from nodes hosting that IP lockwait: Pass CTDB daemon PID on command line New version 1.2.61 Volker Lendecke (2): common/messaging: use tdb_parse_record in message_list_db_fetch common/messaging: Use the jenkins hash in ctdb_message --- -- CTDB repository