The Samba-Bugzilla – Attachment 2269 Details for
Bug 4377
Cannot change case of existing file names
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch for 3.0.25
look (text/plain), 2.70 KB, created by
Jeremy Allison
on 2007-02-07 16:18:47 UTC
(
hide
)
Description:
Patch for 3.0.25
Filename:
MIME Type:
Creator:
Jeremy Allison
Created:
2007-02-07 16:18:47 UTC
Size:
2.70 KB
patch
obsolete
>Index: smbd/msdfs.c >=================================================================== >--- smbd/msdfs.c (revision 21219) >+++ smbd/msdfs.c (working copy) >@@ -261,7 +261,7 @@ > talloc CTX can be NULL here if reflistp and refcnt pointers are null. > **********************************************************************/ > >-BOOL is_msdfs_link(TALLOC_CTX *ctx, connection_struct *conn, char *path, >+BOOL is_msdfs_link(TALLOC_CTX *ctx, connection_struct *conn, const char *path, > struct referral **reflistp, int *refcnt, > SMB_STRUCT_STAT *sbufp) > { >@@ -317,11 +317,15 @@ > are also NULL. > *****************************************************************/ > >-static BOOL resolve_dfs_path(TALLOC_CTX *ctx, const char *dfspath, >- struct dfs_path *dp, >- connection_struct *conn, BOOL search_flag, >- struct referral **reflistpp, int *refcntp, >- BOOL *self_referralp, int *consumedcntp) >+static BOOL resolve_dfs_path(TALLOC_CTX *ctx, >+ const char *dfspath, >+ struct dfs_path *dp, >+ connection_struct *conn, >+ BOOL search_flag, >+ struct referral **reflistpp, >+ int *refcntp, >+ BOOL *self_referralp, >+ int *consumedcntp) > { > pstring localpath; > int consumed_level = 1; >@@ -349,12 +353,25 @@ > > DEBUG(10,("resolve_dfs_path: Conn path = %s req_path = %s\n", conn->connectpath, dp->reqpath)); > >- status = unix_convert(conn, dp->reqpath, False, NULL, &sbuf); >- /* Should we terminate on status != NT_STATUS_OK ???? */ >+ /* >+ * Note the unix path conversion here we're doing we can >+ * throw away. We're looking for a symlink for a dfs >+ * resolution, if we don't find it we'll do another >+ * unix_convert later in the codepath. >+ * If we needed to remember what we'd resolved in >+ * dp->reqpath (as the original code did) we'd >+ * pstrcpy(localhost, dp->reqpath) on any code >+ * path below that returns True - but I don't >+ * think this is needed. JRA. >+ */ > >- /* JRA... should we strlower the last component here.... ? */ > pstrcpy(localpath, dp->reqpath); > >+ status = unix_convert(conn, localpath, False, NULL, &sbuf); >+ if (!NT_STATUS_IS_OK(status)) { >+ return False; >+ } >+ > /* check if need to redirect */ > if (is_msdfs_link(ctx, conn, localpath, reflistpp, refcntp, NULL)) { > if ( search_flag ) { >@@ -371,7 +388,7 @@ > } > > /* redirect if any component in the path is a link */ >- pstrcpy(reqpath, dp->reqpath); >+ pstrcpy(reqpath, localpath); > p = strrchr_m(reqpath, '/'); > while (p) { > *p = '\0'; >@@ -448,9 +465,10 @@ > return True; > } else { > DEBUG(3,("dfs_redirect: Not redirecting %s.\n", pathname)); >- >+ > /* Form non-dfs tcon-relative path */ > pstrcpy(pathname, dp.reqpath); >+ > DEBUG(3,("dfs_redirect: Path converted to non-dfs path %s\n", pathname)); > return False; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 4377
: 2269