[SCM] Samba Shared Repository - branch v3-4-test updated - release-4-0-0alpha7-815-gc7d5e04

Volker Lendecke vlendec at samba.org
Thu Apr 23 12:56:32 GMT 2009


The branch, v3-4-test has been updated
       via  c7d5e046d8fa4097fc16a3dee10e95b83a8c8e55 (commit)
      from  aa09344a77a686466371725e6f1c3f2ebaca684a (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-4-test


- Log -----------------------------------------------------------------
commit c7d5e046d8fa4097fc16a3dee10e95b83a8c8e55
Author: Volker Lendecke <vl at samba.org>
Date:   Thu Apr 23 14:56:55 2009 +0200

    Revert "Do not use the file system GET_REAL_FILENAME for mangled names"
    
    This reverts commit c8cc6da0ab4441ce7b22cf00eed05290e91530c4.

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

Summary of changes:
 source3/smbd/filename.c |   30 +++++++-----------------------
 1 files changed, 7 insertions(+), 23 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/filename.c b/source3/smbd/filename.c
index e35f23e..80722a7 100644
--- a/source3/smbd/filename.c
+++ b/source3/smbd/filename.c
@@ -33,9 +33,6 @@ static NTSTATUS build_stream_path(TALLOC_CTX *mem_ctx,
 				  const char *streamname,
 				  SMB_STRUCT_STAT *pst,
 				  char **path);
-static int get_real_filename_mangled(connection_struct *conn, const char *path,
-				     const char *name, TALLOC_CTX *mem_ctx,
-				     char **found_name);
 
 /****************************************************************************
  Mangle the 2nd name and check if it is then equal to the first name.
@@ -450,7 +447,7 @@ NTSTATUS unix_convert(TALLOC_CTX *ctx,
 			 */
 
 			if (name_has_wildcard ||
-			    (get_real_filename_mangled(
+			    (SMB_VFS_GET_REAL_FILENAME(
 				     conn, dirpath, start,
 				     talloc_tos(), &found_name) == -1)) {
 				char *unmangled;
@@ -792,12 +789,15 @@ static bool fname_equal(const char *name1, const char *name2,
  If the name looks like a mangled name then try via the mangling functions
 ****************************************************************************/
 
-static int get_real_filename_mangled(connection_struct *conn, const char *path,
-				     const char *name, TALLOC_CTX *mem_ctx,
-				     char **found_name)
+int get_real_filename(connection_struct *conn, const char *path,
+		      const char *name, TALLOC_CTX *mem_ctx,
+		      char **found_name)
 {
+	struct smb_Dir *cur_dir;
+	const char *dname;
 	bool mangled;
 	char *unmangled_name = NULL;
+	long curpos;
 
 	mangled = mangle_is_mangled(name, conn->params);
 
@@ -838,24 +838,8 @@ static int get_real_filename_mangled(connection_struct *conn, const char *path,
 			/* Name is now unmangled. */
 			name = unmangled_name;
 		}
-		return get_real_filename(conn, path, name, mem_ctx,
-					 found_name);
 	}
 
-	return SMB_VFS_GET_REAL_FILENAME(conn, path, name, mem_ctx,
-					 found_name);
-}
-
-int get_real_filename(connection_struct *conn, const char *path,
-		      const char *name, TALLOC_CTX *mem_ctx,
-		      char **found_name)
-{
-	struct smb_Dir *cur_dir;
-	const char *dname;
-	bool mangled;
-	char *unmangled_name = NULL;
-	long curpos;
-
 	/* open the directory */
 	if (!(cur_dir = OpenDir(talloc_tos(), conn, path, NULL, 0))) {
 		DEBUG(3,("scan dir didn't open dir [%s]\n",path));


-- 
Samba Shared Repository


More information about the samba-cvs mailing list