summaryrefslogtreecommitdiff
path: root/source3/smbd/nttrans.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2007-09-13 22:08:59 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:30:44 -0500
commiteacd3140573d1122a3785823e4003bfc6352c431 (patch)
treea1ee9d9e59da4c44e0484d895eb78a8c8e1f0de2 /source3/smbd/nttrans.c
parentd0de93ca762e8b59f09c2179448188c9952f68fc (diff)
downloadsamba-eacd3140573d1122a3785823e4003bfc6352c431.tar.gz
samba-eacd3140573d1122a3785823e4003bfc6352c431.tar.bz2
samba-eacd3140573d1122a3785823e4003bfc6352c431.zip
r25138: More pstring elimination. Add a TALLOC_CTX parameter
to unix_convert(). Jeremy. (This used to be commit 39c211a702e91c34c1a5a689e1b0c4530ea8a1ac)
Diffstat (limited to 'source3/smbd/nttrans.c')
-rw-r--r--source3/smbd/nttrans.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/source3/smbd/nttrans.c b/source3/smbd/nttrans.c
index 452533629c..14a11c3fe3 100644
--- a/source3/smbd/nttrans.c
+++ b/source3/smbd/nttrans.c
@@ -745,7 +745,7 @@ void reply_ntcreate_and_X(connection_struct *conn,
file_attributes &= ~FILE_FLAG_POSIX_SEMANTICS;
}
- status = unix_convert(conn, fname, False, &fname, NULL, &sbuf);
+ status = unix_convert(ctx, conn, fname, False, &fname, NULL, &sbuf);
if (!NT_STATUS_IS_OK(status)) {
TALLOC_FREE(case_state);
reply_nterror(req, status);
@@ -1479,7 +1479,7 @@ static void call_nt_transact_create(connection_struct *conn,
return;
}
- status = unix_convert(conn, fname, False, &fname, NULL, &sbuf);
+ status = unix_convert(ctx, conn, fname, False, &fname, NULL, &sbuf);
if (!NT_STATUS_IS_OK(status)) {
TALLOC_FREE(case_state);
reply_nterror(req, status);
@@ -1817,11 +1817,12 @@ void reply_ntcancel(connection_struct *conn, struct smb_request *req)
Copy a file.
****************************************************************************/
-static NTSTATUS copy_internals(connection_struct *conn,
- struct smb_request *req,
- const char *oldname_in,
- const char *newname_in,
- uint32 attrs)
+static NTSTATUS copy_internals(TALLOC_CTX *ctx,
+ connection_struct *conn,
+ struct smb_request *req,
+ const char *oldname_in,
+ const char *newname_in,
+ uint32 attrs)
{
SMB_STRUCT_STAT sbuf1, sbuf2;
char *oldname = NULL;
@@ -1841,7 +1842,7 @@ static NTSTATUS copy_internals(connection_struct *conn,
return NT_STATUS_MEDIA_WRITE_PROTECTED;
}
- status = unix_convert(conn, oldname_in, False, &oldname,
+ status = unix_convert(ctx, conn, oldname_in, False, &oldname,
&last_component_oldname, &sbuf1);
if (!NT_STATUS_IS_OK(status)) {
return status;
@@ -1862,7 +1863,7 @@ static NTSTATUS copy_internals(connection_struct *conn,
return NT_STATUS_NO_SUCH_FILE;
}
- status = unix_convert(conn, newname_in, False, &newname,
+ status = unix_convert(ctx, conn, newname_in, False, &newname,
&last_component_newname, &sbuf2);
if (!NT_STATUS_IS_OK(status)) {
return status;
@@ -2058,7 +2059,8 @@ void reply_ntrename(connection_struct *conn, struct smb_request *req)
/* No wildcards. */
status = NT_STATUS_OBJECT_PATH_SYNTAX_BAD;
} else {
- status = hardlink_internals(conn,
+ status = hardlink_internals(ctx,
+ conn,
oldname,
newname);
}
@@ -2068,7 +2070,7 @@ void reply_ntrename(connection_struct *conn, struct smb_request *req)
/* No wildcards. */
status = NT_STATUS_OBJECT_PATH_SYNTAX_BAD;
} else {
- status = copy_internals(conn, req, oldname,
+ status = copy_internals(ctx, conn, req, oldname,
newname, attrs);
}
break;