summaryrefslogtreecommitdiff
path: root/source3/smbd/trans2.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2009-09-14 15:30:05 -0700
committerJeremy Allison <jra@samba.org>2009-09-14 15:30:05 -0700
commitca2c93b9e578fd9cd565f934b8910d6c738d787b (patch)
tree47393ccd730acf6e5dc40029427a7d6212d05219 /source3/smbd/trans2.c
parentf31138ecc778db42b1aa7ce634425a1df663b0eb (diff)
downloadsamba-ca2c93b9e578fd9cd565f934b8910d6c738d787b.tar.gz
samba-ca2c93b9e578fd9cd565f934b8910d6c738d787b.tar.bz2
samba-ca2c93b9e578fd9cd565f934b8910d6c738d787b.zip
Fix bug 6494 - Incorrect FileStatus returned in NT_CREATE_ANDX.
Lookup the EA and Stream status on CreateX. Jeremy.
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r--source3/smbd/trans2.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 73873e09a3..f2c025b6c1 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -207,7 +207,9 @@ NTSTATUS get_ea_names_from_file(TALLOC_CTX *mem_ctx, connection_struct *conn,
if (sizeret == 0) {
TALLOC_FREE(names);
- *pnames = NULL;
+ if (pnames) {
+ *pnames = NULL;
+ }
*pnum_names = 0;
return NT_STATUS_OK;
}
@@ -244,7 +246,11 @@ NTSTATUS get_ea_names_from_file(TALLOC_CTX *mem_ctx, connection_struct *conn,
names[num_names++] = p;
}
- *pnames = names;
+ if (pnames) {
+ *pnames = names;
+ } else {
+ TALLOC_FREE(names);
+ }
*pnum_names = num_names;
return NT_STATUS_OK;
}