summaryrefslogtreecommitdiff
path: root/source3/locking/locking.c
AgeCommit message (Collapse)AuthorFilesLines
2013-09-11smbd: Fix a typoVolker Lendecke1-1/+1
2013-09-06smbd: Apply some const to find_share_mode_entryVolker Lendecke1-2/+2
Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2013-09-06smbd: Apply some const to share_modes_identicalVolker Lendecke1-2/+2
Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2013-09-06smbd: Simplify find_share_mode_entryVolker Lendecke1-2/+5
There's no point checking the validity of the "entry" argument more than once Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2013-09-03smbd: Fix flawed share_mode_stale_pid APIVolker Lendecke1-9/+26
The comment for this routine said: > Modifies d->num_share_modes, watch out in routines iterating over > that array. Well, it turns out that *every* caller of this API got it wrong. So I think it's better to change the routine. This leaves the array untouched while iterating but filters out the deleted ones while saving them back to disk. Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2013-09-03smbd: Rename parameter "i" to "idx"Volker Lendecke1-6/+6
We'll need "i" in a later checkin ... :-) Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Michael Adam <obnox@samba.org>
2013-04-26smbd: We don't use DEFERRED_OPEN_ENTRY anymoreVolker Lendecke1-61/+0
Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2012-09-08s3:locking: add mark_share_mode_disconnected()Stefan Metzmacher1-0/+38
Pair-Programmed-With: Michael Adam <obnox@samba.org>
2012-07-03Move copy_unix_token() from locking/locking.c to lib/util.c.Jeremy Allison1-29/+0
Make public.
2012-06-21s3:util: rename procid_equal() to serverid_equal()Michael Adam1-3/+3
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-21s3: Remove a user of procid_is_meVolker Lendecke1-1/+2
Signed-off-by: Michael Adam <obnox@samba.org> Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-15s3:locking: change locking.c to use fsp_fnum_dbg() for fsp->fnum logging.Michael Adam1-8/+8
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-06s3:include: change lock_struct->fnum to uint64_tMichael Adam1-2/+2
Note: this changes the format of brlock.tdb! Pair-Programmed-With: Stefan Metzmacher <metze@samba.org> Autobuild-User: Michael Adam <obnox@samba.org> Autobuild-Date: Wed Jun 6 23:22:00 CEST 2012 on sn-devel-104
2012-06-03s3: Simplify get_delete_on_close_token moreVolker Lendecke1-6/+2
All remaining callers actually want the token Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-03s3: Simplify get_delete_on_close_token slightlyVolker Lendecke1-19/+32
Introduce find_delete_on_close_token. Thus is_delete_on_close_set does not have to call get_delete_on_close_token anymore. Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-06-01s3: Avoid a lot of calls to serverid_exists()Volker Lendecke1-1/+1
Signed-off-by: Stefan Metzmacher <metze@samba.org> Autobuild-User: Stefan Metzmacher <metze@samba.org> Autobuild-Date: Fri Jun 1 18:58:30 CEST 2012 on sn-devel-104
2012-05-25s3: Be less picky on stale share mode entriesVolker Lendecke1-1/+3
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-25s3: Check for serverid_exists in rename_share_filenameVolker Lendecke1-0/+4
Signed-off-by: Jeremy Allison <jra@samba.org> Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-05-25Fix an invalid state only reachable on server crash/abort.Jeremy Allison1-0/+11
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-25s3: Add "share_mode_stale_pid"Volker Lendecke1-0/+32
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-18s3: Revert the serverid changes, they need more workVolker Lendecke1-39/+1
Autobuild-User: Volker Lendecke <vl@samba.org> Autobuild-Date: Fri May 18 13:12:14 CEST 2012 on sn-devel-104
2012-05-17s3: Be less picky on stale share mode entriesVolker Lendecke1-1/+3
If a process died, the share mode entry might be bogus. Ignore those entries. Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17s3: Check for serverid_exists in rename_share_filenameVolker Lendecke1-0/+4
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-05-17s3: Add "share_mode_stale_server"Volker Lendecke1-0/+32
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-04-07Found whilst back-porting the fix for bug 8837 - smbd crashes when deleting ↵Jeremy Allison1-9/+10
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-04Second part of bugfix for bug #8837 - smbd crashes when deleting directory ↵Jeremy Allison1-8/+43
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-02-19s3: get_share_mode_lock_fresh->get_share_mode_lockVolker Lendecke1-1/+1
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-19s3: get_share_mode_lock->get_existing_share_mode_lockVolker Lendecke1-5/+5
2012-01-13Add comments to all functions (to help me understand it better).Jeremy Allison1-0/+5
Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Fri Jan 13 01:35:03 CET 2012 on sn-devel-104
2012-01-12s3: Move the share_mode_lock handling to its own fileVolker Lendecke1-415/+0
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12s3: Put an indirection layer into share_mode_lockVolker Lendecke1-133/+147
Signed-off-by: Jeremy Allison <jra@samba.org>
2012-01-12s3: Introduce get_share_mode_lock_fresh()Volker Lendecke1-11/+19
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-12s3: Replace fill_share_mode_lock()Volker Lendecke1-84/+67
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-06Fix format warning message.Jeremy Allison1-1/+1
2011-12-25s3: Fix a 64-bit warningVolker Lendecke1-1/+1
2011-12-16s3:locking: avoid using sconn_server_id()Stefan Metzmacher1-6/+6
metze
2011-12-15s3: Fix a typoVolker Lendecke1-1/+1
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Thu Dec 15 23:35:28 CET 2011 on sn-devel-104
2011-12-14s3: Remove UNUSED_SHARE_MODE_ENTRYVolker Lendecke1-44/+19
2011-12-13s3: Move can_set_delete_on_close to smbd/Volker Lendecke1-59/+0
2011-12-13s3: Use talloc_tos() in set_write_time()Volker Lendecke1-1/+1
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Tue Dec 13 15:44:58 CET 2011 on sn-devel-104
2011-12-13s3: Use talloc_tos() in set_sticky_write_time()Volker Lendecke1-1/+1
2011-12-02s3: Use autogenerated open_files.idlVolker Lendecke1-349/+65
2011-11-23s3: Fix a valgrind errorVolker Lendecke1-1/+1
Autobuild-User: Volker Lendecke <vlendec@samba.org> Autobuild-Date: Wed Nov 23 19:17:20 CET 2011 on sn-devel-104
2011-11-23s3: Replace delete_token_list by an arrayVolker Lendecke1-50/+66
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-10-27s3: Use serverids_exist in parse_share_modesVolker Lendecke1-1/+23
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-27s3: Use talloc_tos() in parse_share_modes()Volker Lendecke1-1/+1
2011-10-12Fix bug #8515 - Empty CIFS share can be blocked for other clients by ↵Volodymyr Khomenko1-0/+8
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-11s3:locking: convert locking.c to use dbwrap wrapper functions onlyMichael Adam1-12/+31
Avoid direct use of the db_record and db_context structs.
2011-07-29s3:dbwrap: move all .c and .h files of dbwrap to lib/dbwrap/Michael Adam1-1/+1
Autobuild-User: Michael Adam <obnox@samba.org> Autobuild-Date: Fri Jul 29 13:34:22 CEST 2011 on sn-devel-104
2011-07-29s3:dbwrap: move db_open() to a file dbwrap_open.c of its own.Michael Adam1-0/+1
Also start new folder lib/dbwrap/ where dbwrap_open.c is stored and make the fallbacke implementation functoins non-static and create a dbwrap_private.h header file that contains their prototypes.