svn commit: samba r19668 - in branches/SAMBA_3_0/source: locking param script

vlendec at samba.org vlendec at samba.org
Sat Nov 11 17:05:14 GMT 2006


Author: vlendec
Date: 2006-11-11 17:05:11 +0000 (Sat, 11 Nov 2006)
New Revision: 19668

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=19668

Log:
Convert the locking params to use struct share_param instead of snum
Modified:
   branches/SAMBA_3_0/source/locking/brlock.c
   branches/SAMBA_3_0/source/locking/locking.c
   branches/SAMBA_3_0/source/locking/posix.c
   branches/SAMBA_3_0/source/param/loadparm.c
   branches/SAMBA_3_0/source/script/mkproto.awk


Changeset:
Modified: branches/SAMBA_3_0/source/locking/brlock.c
===================================================================
--- branches/SAMBA_3_0/source/locking/brlock.c	2006-11-11 17:04:08 UTC (rev 19667)
+++ branches/SAMBA_3_0/source/locking/brlock.c	2006-11-11 17:05:11 UTC (rev 19668)
@@ -333,7 +333,7 @@
 	   be mapped into a lower level POSIX one, and if so can
 	   we get it ? */
 
-	if (!IS_PENDING_LOCK(plock->lock_type) && lp_posix_locking(SNUM(fsp->conn))) {
+	if (!IS_PENDING_LOCK(plock->lock_type) && lp_posix_locking(fsp->conn->params)) {
 		int errno_ret;
 		if (!set_posix_lock_windows_flavour(fsp,
 				plock->start,
@@ -654,7 +654,7 @@
 	   be mapped into a lower level POSIX one, and if so can
 	   we get it ? */
 
-	if (!IS_PENDING_LOCK(plock->lock_type) && lp_posix_locking(SNUM(br_lck->fsp->conn))) {
+	if (!IS_PENDING_LOCK(plock->lock_type) && lp_posix_locking(br_lck->fsp->conn->params)) {
 		int errno_ret;
 
 		/* The lower layer just needs to attempt to
@@ -829,7 +829,7 @@
 	br_lck->modified = True;
 
 	/* Unlock the underlying POSIX regions. */
-	if(lp_posix_locking(SNUM(br_lck->fsp->conn))) {
+	if(lp_posix_locking(br_lck->fsp->conn->params)) {
 		release_posix_lock_windows_flavour(br_lck->fsp,
 				plock->start,
 				plock->size,
@@ -978,7 +978,7 @@
 	}
 
 	/* Unlock any POSIX regions. */
-	if(lp_posix_locking(SNUM(br_lck->fsp->conn))) {
+	if(lp_posix_locking(br_lck->fsp->conn->params)) {
 		release_posix_lock_posix_flavour(br_lck->fsp,
 						plock->start,
 						plock->size,
@@ -1103,7 +1103,7 @@
 	 * This only conflicts with Windows locks, not POSIX locks.
 	 */
 
-	if(lp_posix_locking(SNUM(fsp->conn)) && (lock_flav == WINDOWS_LOCK)) {
+	if(lp_posix_locking(fsp->conn->params) && (lock_flav == WINDOWS_LOCK)) {
 		ret = is_posix_locked(fsp, &start, &size, &lock_type, WINDOWS_LOCK);
 
 		DEBUG(10,("brl_locktest: posix start=%.0f len=%.0f %s for fnum %d file %s\n",
@@ -1169,7 +1169,7 @@
 	 * see if there is a POSIX lock from a UNIX or NFS process.
 	 */
 
-	if(lp_posix_locking(SNUM(fsp->conn))) {
+	if(lp_posix_locking(fsp->conn->params)) {
 		BOOL ret = is_posix_locked(fsp, pstart, psize, plock_type, POSIX_LOCK);
 
 		DEBUG(10,("brl_lockquery: posix start=%.0f len=%.0f %s for fnum %d file %s\n",
@@ -1252,7 +1252,7 @@
 	struct process_id pid = procid_self();
 	BOOL unlock_individually = False;
 
-	if(lp_posix_locking(SNUM(fsp->conn))) {
+	if(lp_posix_locking(fsp->conn->params)) {
 
 		/* Check if there are any Windows locks associated with this dev/ino
 		   pair that are not this fnum. If so we need to call unlock on each
@@ -1358,7 +1358,7 @@
 		}
 	}
 
-	if(lp_posix_locking(SNUM(fsp->conn)) && num_deleted_windows_locks) {
+	if(lp_posix_locking(fsp->conn->params) && num_deleted_windows_locks) {
 		/* Reduce the Windows lock POSIX reference count on this dev/ino pair. */
 		reduce_windows_lock_ref_count(fsp, num_deleted_windows_locks);
 	}

Modified: branches/SAMBA_3_0/source/locking/locking.c
===================================================================
--- branches/SAMBA_3_0/source/locking/locking.c	2006-11-11 17:04:08 UTC (rev 19667)
+++ branches/SAMBA_3_0/source/locking/locking.c	2006-11-11 17:05:11 UTC (rev 19668)
@@ -80,8 +80,7 @@
 		SMB_BIG_UINT offset, 
 		enum brl_type lock_type)
 {
-	int snum = SNUM(fsp->conn);
-	int strict_locking = lp_strict_locking(snum);
+	int strict_locking = lp_strict_locking(fsp->conn->params);
 	enum brl_flavour lock_flav = lp_posix_cifsu_locktype();
 	BOOL ret = True;
 	
@@ -89,7 +88,7 @@
 		return False;
 	}
 
-	if (!lp_locking(snum) || !strict_locking) {
+	if (!lp_locking(fsp->conn->params) || !strict_locking) {
 		return False;
 	}
 
@@ -156,7 +155,7 @@
 		return fsp->is_directory ? NT_STATUS_INVALID_DEVICE_REQUEST : NT_STATUS_INVALID_HANDLE;
 	}
 
-	if (!lp_locking(SNUM(fsp->conn))) {
+	if (!lp_locking(fsp->conn->params)) {
 		return NT_STATUS_OK;
 	}
 
@@ -197,7 +196,7 @@
 		return NULL;
 	}
 
-	if (!lp_locking(SNUM(fsp->conn))) {
+	if (!lp_locking(fsp->conn->params)) {
 		*perr = NT_STATUS_OK;
 		return NULL;
 	}
@@ -243,7 +242,7 @@
 		return fsp->is_directory ? NT_STATUS_INVALID_DEVICE_REQUEST : NT_STATUS_INVALID_HANDLE;
 	}
 	
-	if (!lp_locking(SNUM(fsp->conn))) {
+	if (!lp_locking(fsp->conn->params)) {
 		return NT_STATUS_OK;
 	}
 	
@@ -290,7 +289,7 @@
 			NT_STATUS_INVALID_DEVICE_REQUEST : NT_STATUS_INVALID_HANDLE;
 	}
 	
-	if (!lp_locking(SNUM(fsp->conn))) {
+	if (!lp_locking(fsp->conn->params)) {
 		return NT_STATUS_DOS(ERRDOS, ERRcancelviolation);
 	}
 
@@ -327,7 +326,7 @@
 {
 	struct byte_range_lock *br_lck;
 
-	if (!lp_locking(SNUM(fsp->conn))) {
+	if (!lp_locking(fsp->conn->params)) {
 		return;
 	}
 

Modified: branches/SAMBA_3_0/source/locking/posix.c
===================================================================
--- branches/SAMBA_3_0/source/locking/posix.c	2006-11-11 17:04:08 UTC (rev 19667)
+++ branches/SAMBA_3_0/source/locking/posix.c	2006-11-11 17:05:11 UTC (rev 19668)
@@ -643,7 +643,7 @@
 	int *fd_array = NULL;
 	size_t count, i;
 
-	if (!lp_locking(SNUM(fsp->conn)) || !lp_posix_locking(SNUM(conn))) {
+	if (!lp_locking(fsp->conn->params) || !lp_posix_locking(conn->params)) {
 		/*
 		 * No locking or POSIX to worry about or we want POSIX semantics
 		 * which will lose all locks on all fd's open on this dev/inode,

Modified: branches/SAMBA_3_0/source/param/loadparm.c
===================================================================
--- branches/SAMBA_3_0/source/param/loadparm.c	2006-11-11 17:04:08 UTC (rev 19667)
+++ branches/SAMBA_3_0/source/param/loadparm.c	2006-11-11 17:05:11 UTC (rev 19668)
@@ -1752,6 +1752,8 @@
 
 #define FN_LOCAL_PARM_BOOL(fn_name,val) \
  BOOL fn_name(const struct share_params *p) {return(LP_SNUM_OK(p->service)? ServicePtrs[(p->service)]->val : sDefault.val);}
+#define FN_LOCAL_PARM_INTEGER(fn_name,val) \
+ int fn_name(const struct share_params *p) {return(LP_SNUM_OK(p->service)? ServicePtrs[(p->service)]->val : sDefault.val);}
 #define FN_LOCAL_PARM_STRING(fn_name,val) \
  char *fn_name(const struct share_params *p) {return(lp_string((LP_SNUM_OK(p->service) && ServicePtrs[(p->service)]->val) ? ServicePtrs[(p->service)]->val : sDefault.val));}
 #define FN_LOCAL_CHAR(fn_name,val) \
@@ -2020,9 +2022,9 @@
 FN_LOCAL_BOOL(lp_map_archive, bMap_archive)
 FN_LOCAL_BOOL(lp_store_dos_attributes, bStoreDosAttributes)
 FN_LOCAL_BOOL(lp_dmapi_support, bDmapiSupport)
-FN_LOCAL_BOOL(lp_locking, bLocking)
-FN_LOCAL_INTEGER(lp_strict_locking, iStrictLocking)
-FN_LOCAL_BOOL(lp_posix_locking, bPosixLocking)
+FN_LOCAL_PARM_BOOL(lp_locking, bLocking)
+FN_LOCAL_PARM_INTEGER(lp_strict_locking, iStrictLocking)
+FN_LOCAL_PARM_BOOL(lp_posix_locking, bPosixLocking)
 FN_LOCAL_BOOL(lp_share_modes, bShareModes)
 FN_LOCAL_BOOL(lp_oplocks, bOpLocks)
 FN_LOCAL_BOOL(lp_level2_oplocks, bLevel2OpLocks)

Modified: branches/SAMBA_3_0/source/script/mkproto.awk
===================================================================
--- branches/SAMBA_3_0/source/script/mkproto.awk	2006-11-11 17:04:08 UTC (rev 19667)
+++ branches/SAMBA_3_0/source/script/mkproto.awk	2006-11-11 17:05:11 UTC (rev 19668)
@@ -53,6 +53,11 @@
   printf "BOOL %s(const struct share_params *p );\n", a[2]
 }
 
+/^FN_LOCAL_PARM_INTEGER/ {
+  split($0,a,"[,()]")
+  printf "int %s(const struct share_params *p );\n", a[2]
+}
+
 /^FN_LOCAL_LIST/ {
   split($0,a,"[,()]")
   printf "const char **%s(int );\n", a[2]



More information about the samba-cvs mailing list