[SCM] Samba Shared Repository - branch master updated

Volker Lendecke vlendec at samba.org
Tue Feb 1 14:38:01 MST 2011


The branch, master has been updated
       via  ba4ec70 s3: Fix bug 7940 -- fall back for utimes calls
      from  3b94800 Added SSL global catalog

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit ba4ec70529c0fa9cf4dc797176dbae1a2c949dbc
Author: Volker Lendecke <vl at samba.org>
Date:   Sat Jan 29 10:59:14 2011 +0100

    s3: Fix bug 7940 -- fall back for utimes calls
    
    There are systems where ./configure has detected advanced utimes calls which
    are then not available on other kernels. We should do a proper fallback.
    
    Autobuild-User: Volker Lendecke <vlendec at samba.org>
    Autobuild-Date: Tue Feb  1 22:37:35 CET 2011 on sn-devel-104

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

Summary of changes:
 source3/modules/vfs_default.c |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_default.c b/source3/modules/vfs_default.c
index 9cca349..698e745 100644
--- a/source3/modules/vfs_default.c
+++ b/source3/modules/vfs_default.c
@@ -786,7 +786,11 @@ static int vfswrap_ntimes(vfs_handle_struct *handle,
 	} else {
 		result = utimensat(AT_FDCWD, smb_fname->base_name, NULL, 0);
 	}
-#elif defined(HAVE_UTIMES)
+	if (!((result == -1) && (errno == ENOSYS))) {
+		goto out;
+	}
+#endif
+#if defined(HAVE_UTIMES)
 	if (ft != NULL) {
 		struct timeval tv[2];
 		tv[0] = convert_timespec_to_timeval(ft->atime);
@@ -795,7 +799,11 @@ static int vfswrap_ntimes(vfs_handle_struct *handle,
 	} else {
 		result = utimes(smb_fname->base_name, NULL);
 	}
-#elif defined(HAVE_UTIME)
+	if (!((result == -1) && (errno == ENOSYS))) {
+		goto out;
+	}
+#endif
+#if defined(HAVE_UTIME)
 	if (ft != NULL) {
 		struct utimbuf times;
 		times.actime = convert_timespec_to_time_t(ft->atime);
@@ -804,10 +812,12 @@ static int vfswrap_ntimes(vfs_handle_struct *handle,
 	} else {
 		result = utime(smb_fname->base_name, NULL);
 	}
-#else
+	if (!((result == -1) && (errno == ENOSYS))) {
+		goto out;
+	}
+#endif
 	errno = ENOSYS;
 	result = -1;
-#endif
 
  out:
 	END_PROFILE(syscall_ntimes);


-- 
Samba Shared Repository


More information about the samba-cvs mailing list