svn commit: samba r20717 - in branches: SAMBA_3_0/source/modules SAMBA_3_0_24/source/modules

jmcd at samba.org jmcd at samba.org
Fri Jan 12 21:56:26 GMT 2007


Author: jmcd
Date: 2007-01-12 21:56:25 +0000 (Fri, 12 Jan 2007)
New Revision: 20717

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

Log:
Merge sharemode patch from Mathias Dietz <MDIETZ at de.ibm.com>.

The patch fixes the behaviour of GPFS sharemodes when
the access mask is no_access.


Modified:
   branches/SAMBA_3_0/source/modules/gpfs.c
   branches/SAMBA_3_0_24/source/modules/gpfs.c


Changeset:
Modified: branches/SAMBA_3_0/source/modules/gpfs.c
===================================================================
--- branches/SAMBA_3_0/source/modules/gpfs.c	2007-01-12 17:58:38 UTC (rev 20716)
+++ branches/SAMBA_3_0/source/modules/gpfs.c	2007-01-12 21:56:25 UTC (rev 20717)
@@ -52,11 +52,16 @@
 				 DELETE_ACCESS)) ? GPFS_SHARE_WRITE : 0;
 	allow |= (access_mask & (FILE_READ_DATA|FILE_EXECUTE)) ?
 		GPFS_SHARE_READ : 0;
-	deny |= (share_access & (FILE_SHARE_WRITE|FILE_SHARE_DELETE)) ?
-		0 : GPFS_DENY_WRITE;
-	deny |= (share_access & (FILE_SHARE_READ)) ?
-		0 : GPFS_DENY_READ;
 
+	if (allow == GPFS_SHARE_NONE) {
+		DEBUG(10, ("special case am=no_access:%x\n",access_mask));
+	}
+	else {	
+		deny |= (share_access & (FILE_SHARE_WRITE|FILE_SHARE_DELETE)) ?
+			0 : GPFS_DENY_WRITE;
+		deny |= (share_access & (FILE_SHARE_READ)) ?
+			0 : GPFS_DENY_READ;
+	}
 	DEBUG(10, ("am=%x, allow=%d, sa=%x, deny=%d\n",
 		   access_mask, allow, share_access, deny));
 

Modified: branches/SAMBA_3_0_24/source/modules/gpfs.c
===================================================================
--- branches/SAMBA_3_0_24/source/modules/gpfs.c	2007-01-12 17:58:38 UTC (rev 20716)
+++ branches/SAMBA_3_0_24/source/modules/gpfs.c	2007-01-12 21:56:25 UTC (rev 20717)
@@ -52,11 +52,16 @@
 				 DELETE_ACCESS)) ? GPFS_SHARE_WRITE : 0;
 	allow |= (access_mask & (FILE_READ_DATA|FILE_EXECUTE)) ?
 		GPFS_SHARE_READ : 0;
-	deny |= (share_access & (FILE_SHARE_WRITE|FILE_SHARE_DELETE)) ?
-		0 : GPFS_DENY_WRITE;
-	deny |= (share_access & (FILE_SHARE_READ)) ?
-		0 : GPFS_DENY_READ;
 
+	if (allow == GPFS_SHARE_NONE) {
+		DEBUG(10, ("special case am=no_access:%x\n",access_mask));
+	}
+	else {	
+		deny |= (share_access & (FILE_SHARE_WRITE|FILE_SHARE_DELETE)) ?
+			0 : GPFS_DENY_WRITE;
+		deny |= (share_access & (FILE_SHARE_READ)) ?
+			0 : GPFS_DENY_READ;
+	}
 	DEBUG(10, ("am=%x, allow=%d, sa=%x, deny=%d\n",
 		   access_mask, allow, share_access, deny));
 



More information about the samba-cvs mailing list