summaryrefslogtreecommitdiff
path: root/source4/ntvfs/posix/pvfs_resolve.c
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2008-02-28 18:27:29 +0100
committerJelmer Vernooij <jelmer@samba.org>2008-02-28 18:27:29 +0100
commitfc6bc92e116d3891671a77bc4564047eefd69f95 (patch)
tree9fd31f538af9cea9f144ece7e7b7cd2333d2bd81 /source4/ntvfs/posix/pvfs_resolve.c
parentd70eafc5c635255feafc7121b381e7044ac11854 (diff)
parentafe8e533b9626fff8c59653972019d3f91bf136c (diff)
downloadsamba-fc6bc92e116d3891671a77bc4564047eefd69f95.tar.gz
samba-fc6bc92e116d3891671a77bc4564047eefd69f95.tar.bz2
samba-fc6bc92e116d3891671a77bc4564047eefd69f95.zip
Merge branch 'v4-0-trivial' into v4-0-test
(This used to be commit 6cbb241c05539cc62526a366094c9c472e6422a5)
Diffstat (limited to 'source4/ntvfs/posix/pvfs_resolve.c')
-rw-r--r--source4/ntvfs/posix/pvfs_resolve.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/source4/ntvfs/posix/pvfs_resolve.c b/source4/ntvfs/posix/pvfs_resolve.c
index cf74816391..2bfc47beff 100644
--- a/source4/ntvfs/posix/pvfs_resolve.c
+++ b/source4/ntvfs/posix/pvfs_resolve.c
@@ -329,14 +329,15 @@ static NTSTATUS pvfs_unix_path(struct pvfs_state *pvfs, const char *cifs_name,
reduce a name that contains .. components or repeated \ separators
return NULL if it can't be reduced
*/
-static NTSTATUS pvfs_reduce_name(TALLOC_CTX *mem_ctx, const char **fname, uint_t flags)
+static NTSTATUS pvfs_reduce_name(TALLOC_CTX *mem_ctx,
+ struct smb_iconv_convenience *iconv_convenience,
+ const char **fname, uint_t flags)
{
codepoint_t c;
size_t c_size, len;
int i, num_components, err_count;
char **components;
char *p, *s, *ret;
- struct smb_iconv_convenience *iconv_convenience = lp_iconv_convenience(global_loadparm);
s = talloc_strdup(mem_ctx, *fname);
if (s == NULL) return NT_STATUS_NO_MEMORY;
@@ -471,7 +472,7 @@ NTSTATUS pvfs_resolve_name(struct pvfs_state *pvfs, TALLOC_CTX *mem_ctx,
if (NT_STATUS_EQUAL(status, NT_STATUS_OBJECT_PATH_SYNTAX_BAD)) {
/* it might contain .. components which need to be reduced */
- status = pvfs_reduce_name(*name, &cifs_name, flags);
+ status = pvfs_reduce_name(*name, lp_iconv_convenience(pvfs->ntvfs->ctx->lp_ctx), &cifs_name, flags);
if (!NT_STATUS_IS_OK(status)) {
return status;
}