diff options
author | Karolin Seeger <kseeger@samba.org> | 2009-05-15 15:25:30 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2009-06-10 16:17:53 +0200 |
commit | b00c7c8c743ed4c25ae694aaaf2cfefd8910807c (patch) | |
tree | caf52369baba8a8bb94e17b61d9be33c867b0087 /source/smbd | |
parent | 50f9d7c1549dd7e1140e36f3649260cf4a88600c (diff) | |
download | samba-b00c7c8c743ed4c25ae694aaaf2cfefd8910807c.tar.gz samba-b00c7c8c743ed4c25ae694aaaf2cfefd8910807c.tar.xz samba-b00c7c8c743ed4c25ae694aaaf2cfefd8910807c.zip |
Revert "Do not use the file system GET_REAL_FILENAME for mangled names"
This reverts commit 5a5dcd125fe236ddd93a6e56ae361fc84e306185.
(cherry picked from commit 79003837947882c4a62490c0eff7984f7c343807)
Diffstat (limited to 'source/smbd')
-rw-r--r-- | source/smbd/filename.c | 30 |
1 files changed, 7 insertions, 23 deletions
diff --git a/source/smbd/filename.c b/source/smbd/filename.c index 031668f66b5..003cb0ffd44 100644 --- a/source/smbd/filename.c +++ b/source/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)); |