Volker Lendecke [Tue, 16 Sep 2014 20:39:01 +0000 (22:39 +0200)]
lib: Make set_blocking() available independently
async_connect_send() needs this, and I don't want to pull in samba-util
just for this
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Thu, 18 Sep 2014 12:50:50 +0000 (14:50 +0200)]
lib: Make samba-debug a private library
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Abhidnya Joshi [Mon, 1 Sep 2014 08:40:10 +0000 (14:10 +0530)]
s3: vfs module: Adding new vfs module for Symantec VxFS.
This mainly handles ACL related functions.
Modified to add requirement for -DCFLAGS=-DXATTR_USER_NTACL="user.NTACL"
and to hide access to XATTR_USER_NTACL by jra.
Signed-off-by: Abhidnya Joshi <abhidnya_joshi@symantec.com>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Thu Sep 18 02:30:06 CEST 2014 on sn-devel-104
Andreas Schneider [Tue, 16 Sep 2014 16:03:51 +0000 (18:03 +0200)]
nmbd: Send waiting status to systemd.
This tells the Administrator what's going on and we should log that IPv6
is not supported.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=10816
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Wed Sep 17 13:16:43 CEST 2014 on sn-devel-104
Andreas Schneider [Tue, 16 Sep 2014 16:02:30 +0000 (18:02 +0200)]
lib: Add daemon_status() to util library.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=10816
Signed-off-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Alexander Bokovoy <ab@samba.org>
Amitay Isaacs [Tue, 16 Sep 2014 02:33:26 +0000 (12:33 +1000)]
ctdb-scripts: Do not export variables if they are not set
Variables that are not set but exported, may return an empty string
for getenv(). Tested on freebsd.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Wed Sep 17 09:55:47 CEST 2014 on sn-devel-104
Amitay Isaacs [Tue, 16 Sep 2014 02:00:10 +0000 (12:00 +1000)]
ctdb-scripts: Fix a typo
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Amitay Isaacs [Mon, 15 Sep 2014 06:10:16 +0000 (16:10 +1000)]
ctdb-build: Check for libpcap
AIX and FreeBSD do not support raw sockets. So use libpcap interface
to watch for specific TCP messages.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Amitay Isaacs [Mon, 15 Sep 2014 05:52:38 +0000 (15:52 +1000)]
ctdb-build: Check for ETIME in errno.h
ETIME is not defined on freebsd.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Mon, 15 Sep 2014 01:01:21 +0000 (11:01 +1000)]
ctdb-build: Add some missing configure checks
Fail configure if thread_setsched() is unavailable on AIX or if
sched_setscheduler() is unavailable on other platforms.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Amitay Isaacs [Mon, 15 Sep 2014 05:55:27 +0000 (15:55 +1000)]
ctdb-build: Improve platform check
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Mon, 15 Sep 2014 01:48:33 +0000 (11:48 +1000)]
ctdb-util: Log an error if there is no way to set scheduler
Although configure should catch this, logging a run-time error is
better than being mystified when ctdbd silently exits.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Volker Lendecke [Tue, 16 Sep 2014 21:38:24 +0000 (23:38 +0200)]
lib: Make nt_err_code_struct private
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Wed Sep 17 02:56:54 CEST 2014 on sn-devel-104
Volker Lendecke [Tue, 16 Sep 2014 17:44:57 +0000 (19:44 +0200)]
replace: Make EWOULDBLOCK always available
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Tue, 16 Sep 2014 17:19:06 +0000 (19:19 +0200)]
lib: Avoid a talloc in write_data_iov
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Sun, 14 Sep 2014 16:49:46 +0000 (18:49 +0200)]
lib: Remove unused file_lines_slashcont
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Sun, 14 Sep 2014 16:44:36 +0000 (18:44 +0200)]
lib: Move "large_file_support()" to the source4 smb server
That's the only place where it's used, make it static there.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Michael Adam [Wed, 11 Jun 2014 11:23:33 +0000 (13:23 +0200)]
tdb: change version to 1.3.1
* internal code cleanup
* improved free record detection with a highly contended freelist
on tdb's with dead record support (TDB_VOLATILE).
* implicit defragmentation of the free list.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Sep 16 12:13:31 CEST 2014 on sn-devel-104
Stefan Metzmacher [Thu, 3 Jul 2014 11:34:09 +0000 (13:34 +0200)]
tdb:tools: fix a compiler warning
../../tdb/tools/tdbtool.c: In function ‘do_command’:
../../tdb/tools/tdbtool.c:717: error: declaration of ‘count’ shadows a global declaration
../../tdb/tools/tdbtool.c:597: error: shadowed declaration is here
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Jeremy Allison [Wed, 27 Aug 2014 20:15:29 +0000 (13:15 -0700)]
Add test suite for iconv conversion fail of bad names over SMB1/SMB3.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Tue Sep 16 04:21:49 CEST 2014 on sn-devel-104
Jeremy Allison [Tue, 26 Aug 2014 23:39:56 +0000 (16:39 -0700)]
s3: smbd: Fix a couple of tricky slow-path cases - don't return a mangled name for a name that cannot be converted.
For a name that contains an illegal Windows character, the
directory listing code returns the mangled 8.3 name as the
primary name for the file.
If the original (non-mangled) filename cannot be converted
to UCS2 on the wire via iconv due to conversion error, we
should skip that name when returning a directory listing,
as we can't map back from a returned 8.3 name to a usable
non-mangled filename if the client sends it back to us.
As this is only done in a very slow path (name must be mangled)
or in the old DOS protocol listing code I don't feel too bad
about using a talloc/free pair here.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 22:05:24 +0000 (15:05 -0700)]
s3: smbd: Change get_lanman2_dir_entry() to return the full NTSTATUS.
Handle the errors correctly at the level above inside the SMB1 server.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 21:54:56 +0000 (14:54 -0700)]
s3: smbd: Remove unneeded 'out_of_space' parameter from smbd_dirptr_lanman2_entry().
This can now be handled by checking for the STATUS_MORE_ENTRIES error return.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 21:49:37 +0000 (14:49 -0700)]
s3: smbd: SMB2 - change smbd_dirptr_lanman2_entry() to return an NTSTATUS.
Handle the errors correctly at the top level inside the SMB2 server.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 18:40:19 +0000 (11:40 -0700)]
s3: smbd: smbd_marshall_dir_entry() no longer needs explicit 'out_of_space' parameter.
Handle this in the caller when it returns STATUS_MORE_ENTRIES.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 18:36:41 +0000 (11:36 -0700)]
s3: smbd: Change smbd_marshall_dir_entry() to return an NTSTATUS. Returns STATUS_MORE_ENTRIES on out of space.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 00:11:58 +0000 (17:11 -0700)]
s3: smbd: Change the function signature of srvstr_push() from returning a length to returning an NTSTATUS with a length param.
srvstr_push_fn() now returns an NTSTATUS reporting any
string conversion failure.
We need to get serious about returning character set conversion errors
inside smbd.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Tue, 26 Aug 2014 00:05:47 +0000 (17:05 -0700)]
s3: smbd: Ensure types for all variables called 'len' used in srvstr_push() are correct.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Mon, 25 Aug 2014 23:21:24 +0000 (16:21 -0700)]
s3: smbd: srvstr_push() was changed to never return -1, so don't check for that as an error.
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Jeremy Allison [Fri, 12 Sep 2014 15:46:06 +0000 (08:46 -0700)]
s3: utils: Don't directly manipulate errno inside strupper_m().
Let the internal character conversion routines set it.
Caller code paths don't depend on this (checked by
David Disseldorp ddiss@suse.de).
Bug 10775 - smbd crashes when accessing garbage filenames
https://bugzilla.samba.org/show_bug.cgi?id=10775
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Volker Lendecke [Fri, 12 Sep 2014 11:03:52 +0000 (13:03 +0200)]
vfs_gpfs: Fix the build with profiling-data
This fails with -Werror=declaration-after-statement
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Tue Sep 16 01:55:57 CEST 2014 on sn-devel-104
Jeremy Allison [Wed, 16 Jul 2014 19:41:55 +0000 (12:41 -0700)]
s3: winbindd: Old NT Domain code sets struct winbind_domain->alt_name to be NULL. Ensure this is safe with modern AD-DCs.
There are places in the code where we're not checking that alt_name is NULL
and then calling into the DC lookup code with a NULL name request. This can
happen in offline mode.
Fixes bug #10717 - Winbind crash on losing VPN connection
https://bugzilla.samba.org/show_bug.cgi?id=10717
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Mon Sep 15 23:29:00 CEST 2014 on sn-devel-104
Volker Lendecke [Wed, 10 Sep 2014 14:13:18 +0000 (16:13 +0200)]
messaging_dgm: Don't expose the messaging_dgm_context
Right now we can only support one messaging_dgm_context per process
anyway, the code has checks for this. I would like to keep it that
way, in the future we will have multiple messaging_context's or
imessaging_context's filtering based upon the dst server_id.
Why this change? messaging_dgm's lockfile contains the
serverid->unique_id. When designing messaging_dgm, I had in mind to
remove the serverid.tdb and replace it with the dgm lockfiles for server
lookup and enumeration. I have a WIP-patchset that gets rid of almost
all users of serverid.tdb. The problem is serverid_exists. Here we don't
have a messaging_context available, and it would be pretty intrusive
to make it so. This problem has plagued us since ctdb was developed,
see for example the comment
/*
* This is a Samba3 hack/optimization. Routines like process_exists need to
* talk to ctdbd, and they don't get handed a messaging context.
*/
in messaging_ctdb.c. This patchset removes this problem in a radical way:
Treat the messaging_dgm context as one globally available structure and
be done with it. The ctdb socket could go the same way in the future.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Sun Sep 14 16:29:30 CEST 2014 on sn-devel-104
Volker Lendecke [Wed, 10 Sep 2014 08:12:23 +0000 (10:12 +0200)]
messaging_dgm: Avoid a talloc
Not really required, but it removes a NULL check
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Wed, 10 Sep 2014 08:12:23 +0000 (10:12 +0200)]
messaging_dgm: Avoid a talloc
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Wed, 10 Sep 2014 08:00:05 +0000 (10:00 +0200)]
messaging_dgm: messaging_dgm_lockfile_remove does not use tmp_ctx anymore
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Wed, 10 Sep 2014 08:00:05 +0000 (10:00 +0200)]
messaging_dgm: messaging_dgm_lockfile_create does not use tmp_ctx anymore
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Wed, 10 Sep 2014 07:58:00 +0000 (09:58 +0200)]
messaging_dgm: Avoid talloc_tos()
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Tue, 9 Sep 2014 19:46:19 +0000 (21:46 +0200)]
messaging_dgm: Reformatting
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Volker Lendecke [Tue, 9 Sep 2014 19:45:58 +0000 (21:45 +0200)]
messaging_dgm: Remove an unnecessary cast
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
David Disseldorp [Fri, 12 Sep 2014 11:11:00 +0000 (13:11 +0200)]
namecache: fix uninitialised pointer returns
asprintf_strupper_m() doesn't set *strp on error.
Signed-off-by: David Disseldorp <ddiss@samba.org>
Reviewed-by: Volker Lendecke <Volker.Lendecke@SerNet.DE>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sat Sep 13 03:21:39 CEST 2014 on sn-devel-104
Björn Jacke [Tue, 9 Sep 2014 20:35:08 +0000 (22:35 +0200)]
docs: mention incompatibility between kernel oplocks and streams_xattr
See BUG https://bugzilla.samba.org/show_bug.cgi?id=7537 for details.
Signed-off-by: Bjoern Jacke <bj@sernet.de>
Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Fri Sep 12 18:29:37 CEST 2014 on sn-devel-104
Volker Lendecke [Fri, 12 Sep 2014 10:11:43 +0000 (10:11 +0000)]
ntvfs: Skip the new smb2.oplock.batch26 test
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Autobuild-User(master): Volker Lendecke <vl@samba.org>
Autobuild-Date(master): Fri Sep 12 14:39:00 CEST 2014 on sn-devel-104
Hemanth Thummala [Thu, 11 Sep 2014 21:15:56 +0000 (14:15 -0700)]
Adding new oplock test 'batch26'.
Signed-off-by: Hemanth Thummala <hemanth.thummala@gmail.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Tue, 9 Sep 2014 10:53:52 +0000 (10:53 +0000)]
s3: smbd: streams - Ensure share mode validation ignores internal opens (op_mid == 0).
Fixes bug 10797 - smbd panic at find_oplock_types
https://bugzilla.samba.org/show_bug.cgi?id=10797
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Amitay Isaacs [Fri, 12 Sep 2014 06:24:09 +0000 (16:24 +1000)]
ctdb-doc: Add reference to new magepage ctdb-statistics
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Amitay Isaacs <amitay@samba.org>
Autobuild-Date(master): Fri Sep 12 11:13:56 CEST 2014 on sn-devel-104
Amitay Isaacs [Fri, 12 Sep 2014 04:22:00 +0000 (14:22 +1000)]
ctdb-doc: Add ctdb-statistics manual page
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Amitay Isaacs [Fri, 12 Sep 2014 00:50:27 +0000 (10:50 +1000)]
ctdb-daemon: Decrement pending calls statistics when calls are deferred
Deferred calls should not be treated as pending calls since they are
re-processed from the beginning.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Amitay Isaacs [Fri, 12 Sep 2014 01:25:14 +0000 (11:25 +1000)]
ctdb-tests: Do not expect real-time priority when running local daemons
Local daemons are started mainly for testing and usually not as root.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Amitay Isaacs [Fri, 12 Sep 2014 01:22:36 +0000 (11:22 +1000)]
ctdb-daemon: Make sure ctdb runs with real-time priority
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Martin Schwenke [Wed, 13 Aug 2014 05:01:54 +0000 (15:01 +1000)]
ctdb-locking: Fork lock helper with vfork_with_logging()
Otherwise errors printed by the lock helper get lost.
lock_helper_args() no longer adds the program name to the list of
arguments, since vfork_with_logging() does that. Update the lock
helper to handle the extra log_fd parameter passed by
vfork_with_logging() and send stdout/stderr there.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Wed, 13 Aug 2014 04:46:31 +0000 (14:46 +1000)]
ctdb-locking: Add argc parameter to lock_helper_args()
To make this sane, also add an argv parameter and change the return
type to bool. Anticipating a subsequent change, make the type of argv
match what is needed by vfork_with_logging() and cast it when passing
to execv(). This also means changing the type of the name member of
struct db_namelist.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Volker Lendecke [Thu, 11 Sep 2014 11:33:42 +0000 (11:33 +0000)]
media_harmony: Fix a crash bug
Now that the dust has settled, fix a crash bug that was hidden behind
the warnings...
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Simo Sorce <idra@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Fri Sep 12 02:45:40 CEST 2014 on sn-devel-104
Volker Lendecke [Thu, 11 Sep 2014 11:22:52 +0000 (11:22 +0000)]
media_harmony: Fix warnings
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Simo Sorce <idra@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Jeremy Allison [Thu, 11 Sep 2014 17:03:01 +0000 (10:03 -0700)]
s3: smbd - open logic fix.
As we atomically create using O_CREAT|O_EXCL,
then if new_file_created is true, then
file_existed *MUST* have been false (even
if the file was previously detected as being
there.
We use the variable file_existed again in logic
below this statement, so we must set file_existed = false,
if new_file_created returns are true from open_file().
Based on a fix from Michael Adam.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=10809
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Thu Sep 11 22:29:22 CEST 2014 on sn-devel-104
Amitay Isaacs [Wed, 10 Sep 2014 08:14:24 +0000 (18:14 +1000)]
ctdb-locking: Set real-time priority for lock helpers
To avoid lock helper starvation when userspace robust mutexes are
enabled.
Commit
6f072f85a138f595494dbec137bcf23d1e666acc removed reset_scheduler(),
to avoid resetting scheduler priority. However, that is not sufficient
because of commit
1be8564e553ce044426dbe7b3987edf514832940, which sets
SCHED_RESET_ON_FORK flag. With SCHED_RESET_ON_FORK, all CTDB child
processes will automatically have normal scheduling priority.
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Thu Sep 11 11:31:10 CEST 2014 on sn-devel-104
Amitay Isaacs [Tue, 9 Sep 2014 09:01:55 +0000 (19:01 +1000)]
ctdb-daemon: Increment pending calls statistics correctly
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Andrew Bartlett [Tue, 2 Sep 2014 02:38:11 +0000 (14:38 +1200)]
torture: Provide enough space for test EA name in raw.eas test
The issue is that previously bad_ea_name[5] was the last element on
the array, and so when we later did a strlen() on it, we read past the
end of the stack array. We need bad_ea_name[5] to be the second-last
element, followed by the \0 placed there by the strlcpy().
Found by AddressSanitizer
Change-Id: I871c08200aa2591c612dfa44da92b83132f83d88
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Kamen Mazdrashki <kamenim@samba.org>
Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Sep 11 08:50:16 CEST 2014 on sn-devel-104
Martin Schwenke [Wed, 10 Sep 2014 03:57:58 +0000 (13:57 +1000)]
ctdb-build: Remove unnecessary lib/util include path from tests
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Autobuild-User(master): Amitay Isaacs <amitay@samba.org>
Autobuild-Date(master): Thu Sep 11 06:22:33 CEST 2014 on sn-devel-104
Martin Schwenke [Wed, 10 Sep 2014 03:57:12 +0000 (13:57 +1000)]
ctdb-util: Clean up dependencies
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 5 Sep 2014 06:09:34 +0000 (16:09 +1000)]
ctdb-includes: Remove some unnecessary declarations
To accommodate removing file_lines_load() from here, drop the #ifdef
around the declaration in util.h.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Ralph Boehme [Mon, 8 Sep 2014 18:53:44 +0000 (20:53 +0200)]
vfs_acl_common: dacl size must be updated
Signed-off-by: Ralph Boehme <rb@sernet.de>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Simo Sorce <idra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Thu Sep 11 03:54:42 CEST 2014 on sn-devel-104
Jeremy Allison [Mon, 8 Sep 2014 23:16:24 +0000 (16:16 -0700)]
s3: smbd: Ensure we don't call qsort() with a size of -1.
Based on a patch idea from Ken Harris <kharris@mathworks.com>
Fixes bug 10798 - crash in source3/smbd/notify.c
https://bugzilla.samba.org/show_bug.cgi?id=10798
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ira Cooper <ira@samba.org>
Michael Adam [Wed, 10 Sep 2014 19:58:04 +0000 (21:58 +0200)]
s3:smbd:open_file: use a more natural check.
As suggested by Jeremy Allison <jra@samba.org>.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Michael Adam [Tue, 9 Sep 2014 23:03:57 +0000 (01:03 +0200)]
s4:torture:base: slightly more generous timing in the defer_open test
This copes with cases where the server is very busy and
can't provide tortures more tight time scaling..
This is an attepmt to remove the flapping character of this test.
Signed-off-by: Michael Adam <obnox@samba.org>
Revieed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Wed Sep 10 21:51:42 CEST 2014 on sn-devel-104
Michael Adam [Tue, 9 Sep 2014 22:31:25 +0000 (00:31 +0200)]
s3:smbd: fix a race in open code
The race is when a file vanishes between
existence check and acl check.
In this case, open_file_ncreate() returns
OBJECT_NAME_NOT_FOUND even if the create
was called with disposition OPEN_IF.
But in this case, the file should be created.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Volker Lendecke [Tue, 9 Sep 2014 10:45:38 +0000 (10:45 +0000)]
smbd: Fix a typo
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Michael Adam [Thu, 21 Aug 2014 08:32:00 +0000 (10:32 +0200)]
s4:torture: fix multi_smb_test child status tracking.
The original code in torture_start_procs() lost status of
child status. So the affected test caseses
(defer_open, ntdeny1, bench-torture, and also direct
torture_start_proxy-user bench-nbench) were not always
able to correctly detect and treat errors in the worker children.
With this patch, torture_create_procs() correctly puts
child result and reason into top level torture_result(),
thereby in particular fixing remaining unexpected errors
in the flapping deferopen test.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Michael Adam <obnox@samba.org>
Autobuild-Date(master): Wed Sep 10 13:15:17 CEST 2014 on sn-devel-104
Michael Adam [Wed, 20 Aug 2014 13:42:27 +0000 (15:42 +0200)]
s4:torture:base: add torture_comments to the loop of the deferopen test.
This is to be able to better tell what went wrong if something
went wrong. This is currently one of the main flapping tests.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Michael Adam [Wed, 20 Aug 2014 21:46:32 +0000 (23:46 +0200)]
s4:torture:base: move i++ down in loop in run_deferopen()
This is where it belongs, and it prepares
subsequent patches.
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Martin Schwenke [Tue, 9 Sep 2014 02:58:13 +0000 (12:58 +1000)]
ctdb-util: Make tdb_wrap self-sufficient - it doesn't need includes.h
It should use finer grained includes like replace.h and
ctdb_logging.h.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Autobuild-User(master): Amitay Isaacs <amitay@samba.org>
Autobuild-Date(master): Wed Sep 10 04:03:20 CEST 2014 on sn-devel-104
Martin Schwenke [Fri, 15 Aug 2014 06:15:37 +0000 (16:15 +1000)]
ctdb-build: Tests don't include lib/util/*.c, link ctdb-util instead
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Tue, 19 Aug 2014 03:27:33 +0000 (13:27 +1000)]
ctdb-build: Drop lib/util from includes
In is unnecessary and can accidentally cause lib/util/time.h to be
found instead of /usr/include/time.h. The only things depending on it
were bare includes of db_wrap.h and a bare include of dlinklist.h,
which are both gone now.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 05:46:33 +0000 (15:46 +1000)]
ctdb-util: Rename db_wrap to tdb_wrap and make it a build subsystem
This makes it consistent with Samba, to ease transition.
Update unit test code to link to with tdb_wrap instead of including
db_wrap.c.
There are some potential whitespace fixes in this commit that have
been ignored. CTDB's lib/tdb_wrap will be deleted after the
transition to Samba's lib/tdb_wrap, so there's no point polishing it
too much.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Sun, 17 Aug 2014 04:29:32 +0000 (14:29 +1000)]
ctdb-build: Make ctdb-util a wscript build subsystem
This makes it look similar to samba-util, easing the transition.
Fold ctdb-util-misc into ctdb-util, since Samba doesn't separate them.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Sat, 16 Aug 2014 06:17:02 +0000 (16:17 +1000)]
ctdb-logging: Move variable debug_extra from debug.*
debug_extra is CTDB-specific. Moving it will help with the
transitions to Samba's updated debug.[ch].
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Tue, 9 Sep 2014 03:52:07 +0000 (13:52 +1000)]
ctdb-logging: Factor out ctdb_logging.h from includes.h
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 01:37:15 +0000 (11:37 +1000)]
ctdb-build: Add extra includes to help recursive utility compilation
Subsequent commits will introduce recursive compilation of utilities.
Unfortunately the include file structure requires some global includes
to be found, so make this work.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 06:18:05 +0000 (16:18 +1000)]
ctdb-recoverd: Change include of dlinklist.h to contain directory
This makes it consistent with the rest of the code and avoids problems
when some variant of lib/util isn't in the include path.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 05:53:03 +0000 (15:53 +1000)]
ctdb-tools: Move definition of timeval_delta() to tools/ctdb.c
This function is only used in this file. Samba's lib/util doesn't
have timeval_delta(), so staging a clean transition.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 05:55:20 +0000 (15:55 +1000)]
ctdb-daemon: Drop the argument to fault_setup()
Samba's version doesn't accept an argument, so this aids a smooth
transition.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 06:11:45 +0000 (16:11 +1000)]
ctdb-util: Add extra max_size argument to file_lines_load()
This is part of a migration to Samba's lib/util. CTDB always passes 0
(i.e. no max_size) so use a simple assert() to enforce this, rather
than changing a lot of code that will be discarded anyway.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Fri, 15 Aug 2014 06:12:43 +0000 (16:12 +1000)]
ctdb-client: Rename static function server_id_equal()
Otherwise it conflicts with the same function provided by Samba's
lib/util. Using the Samba one drags in too many dependencies, so
rename the CTDB version to avoid a declaration clash when CTDB starts
including samba_util.h.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Sat, 16 Aug 2014 06:43:23 +0000 (16:43 +1000)]
ctdb-util: Remove declaration of non-existent ctdb_fault_setup()
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Wed, 6 Aug 2014 06:36:58 +0000 (16:36 +1000)]
ctdb-common: Move hex_decode_talloc() to the lock helper
This is the only place it is used.
After migrating to Samba's lib/util, the lock helper can be changed to
use strhex_to_data_blob().
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Mon, 25 Aug 2014 04:00:45 +0000 (14:00 +1000)]
ctdb-build: Fix includes for SAMBA_BINARY()s
No need for "..", since the correct thing is generated. Add "include"
and "include/internal" where missing.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Tue, 2 Sep 2014 06:18:01 +0000 (16:18 +1000)]
ctdb-build: Don't try to set lib64 directory automatically in build
Just install into lib/ and let packagers decide on this policy, since
it can vary between distributions. Update our packaging files
accordingly.
A secondary matter is that things are incorrectly installed into
lib64/ when building with 32-bit userspace on a 64-bit kernel. If
this is done then it should depend on the architecture of the
compiler.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Mon, 18 Aug 2014 05:45:29 +0000 (15:45 +1000)]
ctdb-build: Make ctdb-client depend on ctdb-util and ctdb-util-misc
The client code uses both of these, so might as well depend on it.
That way code that depends on ctdb-client transitively get the
dependencies.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Tue, 19 Aug 2014 01:59:03 +0000 (11:59 +1000)]
ctdb-build: Allow configure and Makefile to find waf in tarball
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 03:33:58 +0000 (13:33 +1000)]
ctdb-common: Add some missing #includes
To avoid warnings when using --enable-developer, which uses
-Wmissing-prototypes.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 03:31:15 +0000 (13:31 +1000)]
ctdb-daemon: Move some inline declarations to header file
To avoid warnings when using --enable-developer, which uses
-Wmissing-prototypes.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 03:30:09 +0000 (13:30 +1000)]
ctdb-tests: Add missing declarations caused by #define magic
Some declarations get lost because they basically get #define-d away,
so they need to be repeated after the #undef-s. Also, some functions
are introduced due the #define-s.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 03:28:34 +0000 (13:28 +1000)]
ctdb-tests: Mark some functions as static
To avoid warnings when using --enable-developer, which uses
-Wmissing-prototypes.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 02:34:46 +0000 (12:34 +1000)]
ctdb-util: Remove util/strlist.c and references to str_util_*()
They're not used in CTDB.
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 01:21:24 +0000 (11:21 +1000)]
ctdb: Fix some "declarations after code" problems
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Martin Schwenke [Thu, 4 Sep 2014 01:20:28 +0000 (11:20 +1000)]
ctdb-util: Variables should be declared extern in headers
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Karolin Seeger [Mon, 8 Sep 2014 19:34:35 +0000 (21:34 +0200)]
docs-xml: Bump version up to 4.2.
Signed-off-by: Karolin Seeger <kseeger@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Autobuild-User(master): David Disseldorp <ddiss@samba.org>
Autobuild-Date(master): Tue Sep 9 15:33:54 CEST 2014 on sn-devel-104
Karolin Seeger [Mon, 8 Sep 2014 19:27:13 +0000 (21:27 +0200)]
WHATSNEW: Start release notes for Samba 4.2.0rc1.
Signed-off-by: Karolin Seeger <kseeger@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Ralph Boehme [Mon, 8 Sep 2014 10:54:32 +0000 (12:54 +0200)]
s3:smbd: fix a comment typo
Signed-off-by: Ralph Boehme <rb@sernet.de>
Reviewed-by: Volker Lendecke <vl@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>
Volker Lendecke [Mon, 8 Sep 2014 10:41:19 +0000 (12:41 +0200)]
smbd: Move make_dir_struct() to reply.c
This routine has nothing to do with dptr handling, it is SMB1 marshalling
called only from reply_search().
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: David Disseldorp <ddiss@samba.org>