1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-29 11:21:54 +03:00
Commit Graph

520 Commits

Author SHA1 Message Date
Volker Lendecke
58dff077d9 s3: Do not check the PIDs is parse_share_modes
We do that when conflicts arise

Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
bc3b7d76a8 s3: Be less picky on stale share mode entries
If a process died, the share mode entry might be bogus. Ignore those entries.

Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Volker Lendecke
6666de1975 s3: Check for serverid_exists in rename_share_filename
Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:38 -07:00
Jeremy Allison
6526432682 Fix an invalid state only reachable on server crash/abort.
Remove any delete-on-close tokens and clear the count if there are no
valid share modes.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:37 -07:00
Volker Lendecke
5842d4e025 s3: Add "share_mode_stale_pid"
This is a helper routine that prunes a dead share mode entry on demand. This
prepares for removing the serverids_exist call in parse_share_modes.

Signed-off-by: Jeremy Allison <jra@samba.org>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25 09:19:37 -07:00
Jeremy Allison
87a62df8e6 Raise the debug level from 1 to 5 in get_share_mode_lock_internal()
This isn't a fatal condition, there is a valid codepath
that can cause this message.
2012-05-18 19:33:37 -07:00
Volker Lendecke
f5ca3f11e4 s3: Revert the serverid changes, they need more work
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Fri May 18 13:12:14 CEST 2012 on sn-devel-104
2012-05-18 13:12:14 +02:00
Volker Lendecke
43296090f9 s3: Be less picky on stale share mode entries
If a process died, the share mode entry might be bogus. Ignore those entries.

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
4e1656a782 s3: Check for serverid_exists in rename_share_filename
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
6379709b88 s3: Do not check the PIDs is parse_share_modes
We do that when conflicts arise

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:22 -07:00
Volker Lendecke
f45966d169 s3: Add "share_mode_stale_server"
This is a helper routine that prunes a dead share mode entry on demand. This
prepares for removing the serverids_exist call in parse_share_modes.

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17 13:17:21 -07:00
Volker Lendecke
997da4a28b s3: talloc_zero is not needed for structs we ndr_pull into
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Mon May 14 18:59:07 CEST 2012 on sn-devel-104
2012-05-14 18:59:07 +02:00
Volker Lendecke
393936aee6 s3: Fix Coverity ID 2682 -- NULL_RETURNS
Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Thu Apr 19 22:28:34 CEST 2012 on sn-devel-104
2012-04-19 22:28:34 +02:00
Jeremy Allison
989fc20fc3 Found whilst back-porting the fix for bug 8837 - smbd crashes when deleting directory and veto files are enabled.
The delete tokens are unique to each name hash representing a pathname,
if we don't correctly return here we'll add duplicate tokens for a
given pasname hash.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Sat Apr  7 02:13:58 CEST 2012 on sn-devel-104
2012-04-07 02:13:58 +02:00
Andrew Bartlett
6aa12fcb30 build: Remove SMB_OFF_T, replace with off_t
Now that we always require a 64 bit off_t, we no longer need SMB_OFF_T.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri Apr  6 01:47:43 CEST 2012 on sn-devel-104
2012-04-06 01:47:43 +02:00
Andrew Bartlett
1ac7f071ce build: Remove SMB_F* locking defines 2012-04-05 02:39:09 +02:00
Andrew Bartlett
96108eed10 build: #ifdef LARGE_SMB_OFF_T as off_t is now always 64 bits 2012-04-05 02:39:08 +02:00
Jeremy Allison
c10ed730d4 Second part of bugfix for bug #8837 - smbd crashes when deleting directory and veto files are enabled.
Store the 'struct security_token' as well as the 'struct security_unix_token'
inside the locking db when setting a delete on close.
2012-04-04 14:58:42 -07:00
Volker Lendecke
db17767d4d s3: Add an error msg when a share mode entry is discarded 2012-02-22 15:48:06 +01:00
Volker Lendecke
f217faef1a s3: get_share_mode_lock_fresh->get_share_mode_lock
get_share_mode_lock_fresh is just a confusing name

Autobuild-User: Volker Lendecke <vl@samba.org>
Autobuild-Date: Sun Feb 19 19:16:41 CET 2012 on sn-devel-104
2012-02-19 19:16:41 +01:00
Volker Lendecke
e5c8484073 s3: get_share_mode_lock->get_existing_share_mode_lock 2012-02-19 17:44:26 +01:00
Volker Lendecke
45e61fcf61 s3: Add a "lock_order" argument to db_open
This will be used to enforce a lock hierarchy between the databases. We have
seen deadlocks between locking.tdb, brlock.tdb, serverid.tdb and notify*.tdb.
These should be fixed by refusing a dbwrap_fetch_locked that does not follow a
defined lock hierarchy.
2012-01-18 14:48:04 +01:00
Volker Lendecke
afb8a7c870 s3: Fix the talloc hierarchy in fetch_share_mode_unlocked
Thanks, metze for noticing!

Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Fri Jan 13 13:16:44 CET 2012 on sn-devel-104
2012-01-13 13:16:44 +01:00
Jeremy Allison
6c1d98eac0 Add comments to all functions (to help me understand it better).
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Jan 13 01:35:03 CET 2012 on sn-devel-104
2012-01-13 01:35:03 +01:00
Volker Lendecke
6da246bae1 s3: Fix nested get_share_mode_lock calls
This forces us to only do one real get_share_mode_lock call and
share the data between the nested get_share_mode_lock calls.

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12 23:59:22 +01:00
Volker Lendecke
6f9442a705 s3: Move the share_mode_lock handling to its own file
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12 23:59:22 +01:00
Volker Lendecke
cfebba96bd s3: Put an indirection layer into share_mode_lock
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12 23:59:22 +01:00
Volker Lendecke
9cf6d735d4 s3: Introduce get_share_mode_lock_fresh()
This slightly simplifies the code path for all callers which assume
that a share mode exists already. Only the callers in open_file_ntcreate
and open_directory will ever create new share modes.

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12 23:59:22 +01:00
Volker Lendecke
540e51f77e s3: Replace fill_share_mode_lock()
This replaces fill_share_mode_lock() with the two routines
fresh_share_mode_lock() and parse_share_modes(). This lifts the
decision whether a share mode already existed on level up.

Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12 23:59:22 +01:00
Jeremy Allison
5cddd22cd8 Fix format warning message. 2012-01-06 14:25:06 -08:00
Volker Lendecke
2b75e877fb s3: Fix a 64-bit warning 2011-12-25 13:31:58 +01:00
Stefan Metzmacher
fe7c5198a2 s3:locking: avoid using sconn_server_id()
metze
2011-12-16 13:19:32 +01:00
Volker Lendecke
1355f0ac8c s3: Fix a typo
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Thu Dec 15 23:35:28 CET 2011 on sn-devel-104
2011-12-15 23:35:28 +01:00
Volker Lendecke
f7e84f2809 s3: Remove UNUSED_SHARE_MODE_ENTRY 2011-12-14 17:34:21 +01:00
Stefan Metzmacher
2e0bc74a6e s3:smbd: remove brl_register_msgs()
metze
2011-12-14 12:00:06 +01:00
Volker Lendecke
34d58c9d92 s3: Move can_set_delete_on_close to smbd/ 2011-12-13 17:27:26 +01:00
Volker Lendecke
1cf54ef4a6 s3: Use talloc_tos() in set_write_time()
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Tue Dec 13 15:44:58 CET 2011 on sn-devel-104
2011-12-13 15:44:58 +01:00
Volker Lendecke
27e63b72a1 s3: Use talloc_tos() in set_sticky_write_time() 2011-12-13 14:14:24 +01:00
Richard Sharpe
422494a8e6 vfs: Make function pointer names consistent. They all end in _fn
Autobuild-User: Richard Sharpe <sharpe@samba.org>
Autobuild-Date: Mon Dec 12 04:58:40 CET 2011 on sn-devel-104
2011-12-12 04:58:40 +01:00
Volker Lendecke
1c46fb5c3e s3: Use autogenerated open_files.idl 2011-12-02 22:43:05 +01:00
Michael Adam
37f7a2c82d s3:locking:posix: remove uses of SMB_ASSERT() from get_windows_lock_ref_count()
SMB_ASSERT is useless, since in non-developer build it does not actually
fail after the log message, but usual flow just continues.

Autobuild-User: Michael Adam <obnox@samba.org>
Autobuild-Date: Fri Nov 25 14:59:53 CET 2011 on sn-devel-104
2011-11-25 14:59:53 +01:00
Michael Adam
95e686d59c s3:locking:posix: adapt use of dbrwrap_fetch() to new NTSTATUS semantics 2011-11-25 13:24:34 +01:00
Volker Lendecke
b1f7164aa8 s3: Fix a valgrind error
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Nov 23 19:17:20 CET 2011 on sn-devel-104
2011-11-23 19:17:20 +01:00
Volker Lendecke
b4ca1fa538 s3: Replace delete_token_list by an array
This will make it easier to convert locking.tdb to IDL, and I don't think there
will be enough entries to justify a linked list over an array.

Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Nov 23 09:02:12 CET 2011 on sn-devel-104
2011-11-23 09:02:10 +01:00
Volker Lendecke
4a96b629a6 s3: Use serverids_exist in parse_share_modes
This is the main reason for the preceding commits. We need to reduce the number
of round-trips to ctdb when checking the locking record entries for existence.
Using the plural version of process_exists gets the number of round-trips to
ctdb for process_exists down to 1.
2011-10-27 20:28:31 +02:00
Volker Lendecke
e5231a5976 s3: Use talloc_tos() in parse_share_modes() 2011-10-27 20:28:31 +02:00
Volodymyr Khomenko
bd260f03ab Fix bug #8515 - Empty CIFS share can be blocked for other clients by deleting it via empty path (DELETE_PENDING until the last client)
Disallow "." in can_set_delete_on_close().

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Wed Oct 12 21:07:27 CEST 2011 on sn-devel-104
2011-10-12 21:07:27 +02:00
Michael Adam
311ed56afe s3:locking: convert posix.c to use dbwrap wrapper functions only
Avoid direct use of the db_record and db_context structs.
2011-10-11 14:17:58 +02:00
Michael Adam
f0ab22e6ec s3:locking: convert locking.c to use dbwrap wrapper functions only
Avoid direct use of the db_record and db_context structs.
2011-10-11 14:17:58 +02:00
Michael Adam
5cbc505e6d s3:locking: convert brlock to only use dbwrap wrapper functions
Avoid direct use of the db_record and db_context structs.
2011-10-11 14:17:58 +02:00