[SCM] SAMBA-CTDB repository - branch v3-2-ctdb updated - build_3.2.7_ctdb.54-197-g06a3ab7

Michael Adam obnox at samba.org
Wed Mar 4 10:21:10 GMT 2009


The branch, v3-2-ctdb has been updated
       via  06a3ab7b3c787df05a5a5e482ce44f4e80dbb117 (commit)
      from  e627e495f56f3d3b9fcbab87d9c5899176c5ff65 (commit)

http://gitweb.samba.org/?p=obnox/samba-ctdb.git;a=shortlog;h=v3-2-ctdb


- Log -----------------------------------------------------------------
commit 06a3ab7b3c787df05a5a5e482ce44f4e80dbb117
Author: Volker Lendecke <vl at samba.org>
Date:   Mon Mar 2 14:56:01 2009 +0100

    Make use of gpfs_get_real_filename optional

-----------------------------------------------------------------------

Summary of changes:
 source/modules/gpfs.c     |    6 +++++-
 source/modules/vfs_gpfs.c |    5 +++++
 2 files changed, 10 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/modules/gpfs.c b/source/modules/gpfs.c
index cba14ac..96bce00 100644
--- a/source/modules/gpfs.c
+++ b/source/modules/gpfs.c
@@ -26,6 +26,7 @@
 
 static bool gpfs_share_modes;
 static bool gpfs_leases;
+static bool gpfs_getrealfilename;
 
 static int (*gpfs_set_share_fn)(int fd, unsigned int allow, unsigned int deny);
 static int (*gpfs_set_lease_fn)(int fd, unsigned int leaseType);
@@ -139,7 +140,8 @@ int smbd_gpfs_putacl(char *pathname, int flags, void *acl)
 int smbd_gpfs_get_realfilename_path(char *pathname, char *filenamep,
 				    int *buflen)
 {
-	if (gpfs_get_realfilename_path_fn == NULL) {
+	if ((!gpfs_getrealfilename)
+	    || (gpfs_get_realfilename_path_fn == NULL)) {
 		errno = ENOSYS;
 		return -1;
 	}
@@ -208,6 +210,8 @@ void init_gpfs(void)
 
 	gpfs_share_modes = lp_parm_bool(-1, "gpfs", "sharemodes", True);
 	gpfs_leases      = lp_parm_bool(-1, "gpfs", "leases", True);
+	gpfs_getrealfilename = lp_parm_bool(-1, "gpfs", "getrealfilename",
+					    True);
 
 	return;
 }
diff --git a/source/modules/vfs_gpfs.c b/source/modules/vfs_gpfs.c
index 383d8ce..5aaba7b 100644
--- a/source/modules/vfs_gpfs.c
+++ b/source/modules/vfs_gpfs.c
@@ -96,6 +96,11 @@ static int vfs_gpfs_get_real_filename(struct vfs_handle_struct *handle,
 
 	TALLOC_FREE(full_path);
 
+	if ((result == -1) && (errno == ENOSYS)) {
+		return SMB_VFS_NEXT_GET_REAL_FILENAME(
+			handle, path, name, mem_ctx, found_name);
+	}
+
 	if (result == -1) {
 		DEBUG(10, ("smbd_gpfs_get_realfilename_path returned %s\n",
 			   strerror(errno)));


-- 
SAMBA-CTDB repository


More information about the samba-cvs mailing list