components/samba/samba/patches/vfs_shadow_copy2.c.patch
author Jiri Sasek <Jiri.Sasek@Sun.COM>
Mon, 30 Jan 2012 18:04:00 -0800
branchs11-sru
changeset 2243 4307245757f6
parent 264 84a67a54e8fd
permissions -rw-r--r--
7119845 Samba 3.5.10 can not use the system kerberos keytab. 7121739 Reorganize Samba source patches to change-set manner.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2243
4307245757f6 7119845 Samba 3.5.10 can not use the system kerberos keytab.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 264
diff changeset
     1
7011579 Request to add shadow_copy2 in the next Samba patch or Solaris Samba package
4307245757f6 7119845 Samba 3.5.10 can not use the system kerberos keytab.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 264
diff changeset
     2
s3: Replace shadow_copy2 with a new implementation
4307245757f6 7119845 Samba 3.5.10 can not use the system kerberos keytab.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 264
diff changeset
     3
264
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
     4
X-Git-Url: http://gitweb.samba.org/?p=samba.git;a=blobdiff_plain;f=source3%2Fmodules%2Fvfs_shadow_copy2.c;h=2777907a57da081118e8d11f846f6a33f9095a1d;hp=0393f309692b139f74c2460d2bdc27f8352bf50a;hb=HEAD;hpb=cf74a4857c051b43b1f6a06b714a93a65e8a1f90
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
     5
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
     6
diff --git a/source3/modules/vfs_shadow_copy2.c b/source3/modules/vfs_shadow_copy2.c
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
     7
index 0393f30..2777907 100644
2243
4307245757f6 7119845 Samba 3.5.10 can not use the system kerberos keytab.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 264
diff changeset
     8
--- a/source3/modules/vfs_shadow_copy2.c
4307245757f6 7119845 Samba 3.5.10 can not use the system kerberos keytab.
Jiri Sasek <Jiri.Sasek@Sun.COM>
parents: 264
diff changeset
     9
+++ b/source3/modules/vfs_shadow_copy2.c
264
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    10
@@ -250,8 +250,8 @@ static const char *shadow_copy2_normalise_path(TALLOC_CTX *mem_ctx, const char *
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    11
 } while (0)
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    12
 
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    13
 #define _SHADOW2_NEXT_SMB_FNAME(op, args, rtype, eret, extra) do { \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    14
-		const char *gmt_start; \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    15
-		if (shadow_copy2_match_name(smb_fname->base_name, &gmt_start)) {	\
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    16
+	const char *gmt_start; \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    17
+	if (shadow_copy2_match_name(smb_fname->base_name, &gmt_start)) { \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    18
 		char *name2; \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    19
 		char *smb_base_name_tmp = NULL; \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    20
 		rtype ret; \
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    21
@@ -535,6 +535,10 @@ static int shadow_copy2_rename(vfs_handle_struct *handle,
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    22
 			       const struct smb_filename *smb_fname_src,
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    23
 			       const struct smb_filename *smb_fname_dst)
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    24
 {
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    25
+	if (shadow_copy2_match_name(smb_fname_src->base_name, NULL)) {
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    26
+		errno = EXDEV;
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    27
+		return -1;
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    28
+	}
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    29
 	SHADOW2_NEXT2_SMB_FNAME(RENAME,
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    30
 				(handle, smb_fname_src, smb_fname_dst));
84a67a54e8fd 7044174 Move samba(s) and its dependencies to Userland.
Jiri Sasek <jurasek@opensolaris.org>
parents:
diff changeset
    31
 }