[SCM] Samba Shared Repository - branch v3-5-test updated
Jeremy Allison
jra at samba.org
Wed Nov 11 19:36:51 MST 2009
The branch, v3-5-test has been updated
via fbb22af... Second part of bugfix for 6865 - acl_xattr module: Has dependency that inherit acls = yes or xattrs are removed. We also need dos filemode = true set as well. Jeremy. (cherry picked from commit a8769e667514f83a45ee3e825d21a351987d0210)
from cdcd4da... Fix bug 6878 - Cannot change ACL's inherit flag. Based on a patch submitted by Tsukasa Hamano <hamano at osstech.co.jp>, this is a change in the POSIX ACL mapping to deal with the lossy mapping for directory ACE entries:
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test
- Log -----------------------------------------------------------------
commit fbb22af1fa4fceab143de77700d388eb073e7452
Author: Jeremy Allison <jra at samba.org>
Date: Wed Nov 11 18:35:18 2009 -0800
Second part of bugfix for 6865 - acl_xattr module: Has dependency that inherit acls = yes or xattrs are removed.
We also need dos filemode = true set as well.
Jeremy.
(cherry picked from commit a8769e667514f83a45ee3e825d21a351987d0210)
-----------------------------------------------------------------------
Summary of changes:
docs-xml/smbdotconf/misc/dosfilemode.xml | 8 +++++++-
source3/include/proto.h | 1 -
source3/modules/vfs_acl_tdb.c | 6 ++++--
source3/modules/vfs_acl_xattr.c | 8 ++++++--
source3/param/loadparm.c | 10 ----------
5 files changed, 17 insertions(+), 16 deletions(-)
Changeset truncated at 500 lines:
diff --git a/docs-xml/smbdotconf/misc/dosfilemode.xml b/docs-xml/smbdotconf/misc/dosfilemode.xml
index e67ccd9..cf53192 100644
--- a/docs-xml/smbdotconf/misc/dosfilemode.xml
+++ b/docs-xml/smbdotconf/misc/dosfilemode.xml
@@ -12,7 +12,13 @@
(including ACL) on it. Note that a user belonging to the group
owning the file will not be allowed to change permissions if
the group is only granted read access. Ownership of the
- file/directory may also be changed.</para>
+ file/directory may also be changed.
+
+ Note that using the VFS modules acl_xattr or acl_tdb which store native
+ Windows as meta-data will automatically turn this option on for any
+ share for which they are loaded, as they require this option to emulate
+ Windows ACLs correctly.
+ </para>
</description>
<value type="default">no</value>
</samba:parameter>
diff --git a/source3/include/proto.h b/source3/include/proto.h
index 7213a0d..27f80db 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -4373,7 +4373,6 @@ void lp_set_posix_default_cifsx_readwrite_locktype(enum brl_flavour val);
int lp_min_receive_file_size(void);
char* lp_perfcount_module(void);
void lp_set_passdb_backend(const char *backend);
-bool set_inherit_acls(int i);
/* The following definitions come from param/util.c */
diff --git a/source3/modules/vfs_acl_tdb.c b/source3/modules/vfs_acl_tdb.c
index 3d06e52..db3881e 100644
--- a/source3/modules/vfs_acl_tdb.c
+++ b/source3/modules/vfs_acl_tdb.c
@@ -384,9 +384,11 @@ static int connect_acl_tdb(struct vfs_handle_struct *handle,
/* Ensure we have "inherit acls = yes" if we're
* using this module. */
- DEBUG(2,("connect_acl_tdb: setting 'inherit acls = true' for service %s\n",
+ DEBUG(2,("connect_acl_tdb: setting 'inherit acls = true' "
+ "and 'dos filemode = true' for service %s\n",
service ));
- set_inherit_acls(SNUM(handle->conn));
+ lp_do_parameter(SNUM(handle->conn), "inherit acls", "true");
+ lp_do_parameter(SNUM(handle->conn), "dos filemode", "true");
return 0;
}
diff --git a/source3/modules/vfs_acl_xattr.c b/source3/modules/vfs_acl_xattr.c
index 11ca890..962d1b7 100644
--- a/source3/modules/vfs_acl_xattr.c
+++ b/source3/modules/vfs_acl_xattr.c
@@ -214,9 +214,13 @@ static int connect_acl_xattr(struct vfs_handle_struct *handle,
{
/* Ensure we have "inherit acls = yes" if we're
* using this module. */
- DEBUG(2,("connect_acl_xattr: setting 'inherit acls = true' for service %s\n",
+ DEBUG(2,("connect_acl_xattr: setting 'inherit acls = true' "
+ "and 'dos filemode = true' for service %s\n",
service ));
- set_inherit_acls(SNUM(handle->conn));
+
+ lp_do_parameter(SNUM(handle->conn), "inherit acls", "true");
+ lp_do_parameter(SNUM(handle->conn), "dos filemode", "true");
+
return 0;
}
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index 9a0f834..c62deb5 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -9843,13 +9843,3 @@ void lp_set_passdb_backend(const char *backend)
{
string_set(&Globals.szPassdbBackend, backend);
}
-
-bool set_inherit_acls(int i)
-{
- if (!LP_SNUM_OK(i)) {
- return false;
- }
- ServicePtrs[(i)]->bInheritACLS = true;
-
- return true;
-}
--
Samba Shared Repository
More information about the samba-cvs
mailing list