[SCM] Samba Shared Repository - branch master updated

2011-04-08 Thread Matthias Dieter Wallnöfer
The branch, master has been updated
   via  ab0a881 ldb:ldb/common/ldb_modules.c - change the request counter 
type to be unsigned
   via  a15ebe6 ldb:ldb/common/ldb_modules.c - trivial - fix integer output 
specifiers
  from  9705dab s3:net rpc trust: fix two C++ implicit void * cast warnings

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit ab0a881bb4015d0b32f4f577f2bbd3ca72d31217
Author: Matthias Dieter Wallnöfer m...@samba.org
Date:   Fri Apr 8 08:30:41 2011 +0200

ldb:ldb/common/ldb_modules.c - change the request counter type to be 
unsigned

Just for consistency since all other LDB counters are unsigned as well.

And also the debug output specifier has been chosen to be %u - so it
really should be unsigned.

Autobuild-User: Matthias Dieter Wallnöfer m...@samba.org
Autobuild-Date: Fri Apr  8 09:17:47 CEST 2011 on sn-devel-104

commit a15ebe61c3a25c5097d1a320e3d8f47e4dba19f4
Author: Matthias Dieter Wallnöfer m...@samba.org
Date:   Fri Apr 8 08:29:51 2011 +0200

ldb:ldb/common/ldb_modules.c - trivial - fix integer output specifiers

---

Summary of changes:
 source4/lib/ldb/common/ldb_modules.c |6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/lib/ldb/common/ldb_modules.c 
b/source4/lib/ldb/common/ldb_modules.c
index 2e1aeb6..61d1901 100644
--- a/source4/lib/ldb/common/ldb_modules.c
+++ b/source4/lib/ldb/common/ldb_modules.c
@@ -402,7 +402,7 @@ int ldb_load_modules(struct ldb_context *ldb, const char 
*options[])
if (res-count == 0) {
ldb_debug(ldb, LDB_DEBUG_TRACE, no modules 
required by the db);
} else if (res-count  1) {
-   ldb_debug(ldb, LDB_DEBUG_FATAL, Too many 
records found (%d), bailing out, res-count);
+   ldb_debug(ldb, LDB_DEBUG_FATAL, Too many 
records found (%u), bailing out, res-count);
talloc_free(mem_ctx);
return LDB_ERR_OPERATIONS_ERROR;
} else {
@@ -783,7 +783,7 @@ int ldb_module_done(struct ldb_request *req,
if ((req-handle-ldb-flags  LDB_FLG_ENABLE_TRACING) 
req-handle-nesting == 0) {
ldb_debug_add(req-handle-ldb, ldb_trace_response: DONE\n);
-   ldb_debug_add(req-handle-ldb, error: %u\n, error);
+   ldb_debug_add(req-handle-ldb, error: %d\n, error);
if (ldb_errstring(req-handle-ldb)) {
ldb_debug_add(req-handle-ldb, msg: %s\n,
  ldb_errstring(req-handle-ldb));
@@ -1089,7 +1089,7 @@ int ldb_modules_load(const char *modules_path, const char 
*version)
 char *ldb_module_call_chain(struct ldb_request *req, TALLOC_CTX *mem_ctx)
 {
char *ret;
-   int i=0;
+   unsigned int i = 0;
 
ret = talloc_strdup(mem_ctx, );
if (ret == NULL) {


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2011-04-08 Thread Stefan Metzmacher
The branch, master has been updated
   via  eb0e276 talloc/testsuite: avoid memory leak reported by valgrind
   via  f9fdef8 talloc/testsuite: test more talloc_pool related things
   via  2146ffd talloc: include valgrind headers if available
   via  73cc85a talloc: add TC_INVALIDATE_POOL marco
   via  9c9f208 talloc: add TC_UNDEFINE_GROW_CHUNK() marco
   via  6126c35 talloc: add TC_INVALIDATE_SHRINK_CHUNK() marco
   via  4895f55 talloc: add TC_INVALIDATE_FULL_CHUNK() macro
   via  efbb358 talloc: use VALGRIND_MAKE_MEM_UNDEFINED() before memmove()
   via  1e70439 talloc: optimize talloc_free() and talloc_realloc() for 
talloc pools
   via  73330f8 talloc: add TC_POOL_FIRST_CHUNK() macro
   via  13fab67 talloc: add TC_POOL_SPACE_LEFT() macro
   via  4084cb7 talloc: add TC_ALIGN16() macro
   via  d399401 talloc: use TC_HDR_SIZE instead of sizeof(struct 
talloc_chunk)
  from  ab0a881 ldb:ldb/common/ldb_modules.c - change the request counter 
type to be unsigned

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit eb0e276f3a3b57405cd8cd36c74021350aba9a98
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 15:53:46 2011 +0200

talloc/testsuite: avoid memory leak reported by valgrind

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

Autobuild-User: Stefan Metzmacher me...@samba.org
Autobuild-Date: Fri Apr  8 10:15:41 CEST 2011 on sn-devel-104

commit f9fdef870e4c49d9e6c23ba085ba6dbd34ec5469
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 19:50:47 2011 +0200

talloc/testsuite: test more talloc_pool related things

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 2146ffd764499d67e3f0576a2e78a1575cd52d9c
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 16:28:31 2011 +0200

talloc: include valgrind headers if available

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 73cc85ac903387f2c7f8ef2d948b40b57887cf17
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 15:08:20 2011 +0200

talloc: add TC_INVALIDATE_POOL marco

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 9c9f208598d34d700bfc2ed7302b206e863a4c9b
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 13:29:47 2011 +0200

talloc: add TC_UNDEFINE_GROW_CHUNK() marco

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 6126c3506d493cd4836a7539586b74faea8ca0b3
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 13:28:11 2011 +0200

talloc: add TC_INVALIDATE_SHRINK_CHUNK() marco

This invalidates the unused bytes if we shrink memory.

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 4895f55f0604a1851d45c24a8a584a10170d5917
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 11:47:57 2011 +0200

talloc: add TC_INVALIDATE_FULL_CHUNK() macro

This makes it easier to mark a talloc pointer as
invalid.

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit efbb35824e3845c3cdefea328dd1bf67d0f9087d
Author: Stefan Metzmacher me...@samba.org
Date:   Mon Apr 4 16:46:21 2011 +0200

talloc: use VALGRIND_MAKE_MEM_UNDEFINED() before memmove()

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 1e70439f770181ca16a0749c2164d0237d3bfd0a
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 16:58:46 2011 +0200

talloc: optimize talloc_free() and talloc_realloc() for talloc pools

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 73330f8436707b5ab46c0720ea735908948f5d27
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 16:56:18 2011 +0200

talloc: add TC_POOL_FIRST_CHUNK() macro

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 13fab67995a0b836b92847536768703dac391b57
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 16:51:40 2011 +0200

talloc: add TC_POOL_SPACE_LEFT() macro

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit 4084cb723c4e14898a411fbd1cf8fa878ff290ff
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 16:55:00 2011 +0200

talloc: add TC_ALIGN16() macro

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

commit d39940113a24078bd563b0cfce4225648c632544
Author: Stefan Metzmacher me...@samba.org
Date:   Thu Mar 31 15:18:55 2011 +0200

talloc: use TC_HDR_SIZE instead of sizeof(struct talloc_chunk)

As this includes the padding to 16 bytes.

metze

Signed-off-By: Andrew Tridgell tri...@samba.org

---

Summary of changes:
 lib/talloc/talloc.c|  338 ++--
 lib/talloc/testsuite.c |   57 

[SCM] Samba Shared Repository - branch master updated

2011-04-08 Thread Michael Adam
The branch, master has been updated
   via  58a0c8a s3:net idmap check: fix output of an invalid record
   via  6db4fc1 s3-net: idmap check ignore __db_sequence_number__
  from  eb0e276 talloc/testsuite: avoid memory leak reported by valgrind

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 58a0c8a9e0daa5e4071b756fb8f410a398ae8b99
Author: Michael Adam ob...@samba.org
Date:   Fri Apr 8 14:49:43 2011 +0200

s3:net idmap check: fix output of an invalid record

Only print the value number for hwm, version and seqnum keys.

Pair-Programmed-With: Gregor Beck gb...@sernet.de

Autobuild-User: Michael Adam ob...@samba.org
Autobuild-Date: Fri Apr  8 17:29:31 CEST 2011 on sn-devel-104

commit 6db4fc15df8eaba8ad23ef9c528fa2df1759f8c0
Author: Gregor Beck gb...@sernet.de
Date:   Fri Apr 8 14:53:25 2011 +0200

s3-net: idmap check ignore __db_sequence_number__

Signed-off-by: Michael Adam ob...@samba.org

---

Summary of changes:
 source3/utils/net_idmap_check.c |   15 +--
 1 files changed, 13 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/utils/net_idmap_check.c b/source3/utils/net_idmap_check.c
index 556a058..88725e1 100644
--- a/source3/utils/net_idmap_check.c
+++ b/source3/utils/net_idmap_check.c
@@ -52,7 +52,7 @@ static bool is_empty(TDB_DATA data) {
 enum DT {
DT_INV = 0,
DT_SID, DT_UID, DT_GID,
-   DT_HWM, DT_VER
+   DT_HWM, DT_VER, DT_SEQ,
 };
 
 struct record {
@@ -225,8 +225,13 @@ static char get_action(struct check_action* a, struct 
record* r, TDB_DATA* v) {
d_printf(%s: %s , a-name, print_data(r, r-key));
if (is_map(r)) {
d_printf(- %s\n, print_data(r, r-val));
-   } else {
+   } else if (r-key_type == DT_HWM ||
+  r-key_type == DT_VER ||
+  r-key_type == DT_SEQ)
+   {
d_printf(: %ld\n, r-id);
+   } else {
+   d_printf(\n);
}
} else {
d_printf(a-fmt, a-name,
@@ -621,6 +626,12 @@ parse_record(TALLOC_CTX* mem_ctx, TDB_DATA key, TDB_DATA 
val)
ret-id = IVAL(val.dptr,0);
ret-val_type = DT_VER;
}
+   } else if (strcmp((const char*)key.dptr, __db_sequence_number__) == 
0) {
+   ret-key_type = DT_SEQ;
+   if (val.dsize == 8) {
+   ret-id = *(uint64_t*)val.dptr;
+   ret-val_type = DT_SEQ;
+   }
}
 
return ret;


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch v3-6-test updated

2011-04-08 Thread Michael Adam
The branch, v3-6-test has been updated
   via  0a660c4 s3:net idmap check: fix output of an invalid record
   via  494dda9 s3-net: idmap check ignore __db_sequence_number__
  from  50755b2 s3:net rpc trust: fix two C++ implicit void * cast warnings

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -
commit 0a660c4258264295be875c8e39747a2d464d2f18
Author: Michael Adam ob...@samba.org
Date:   Fri Apr 8 14:49:43 2011 +0200

s3:net idmap check: fix output of an invalid record

Only print the value number for hwm, version and seqnum keys.

Pair-Programmed-With: Gregor Beck gb...@sernet.de

Autobuild-User: Michael Adam ob...@samba.org
Autobuild-Date: Fri Apr  8 17:29:31 CEST 2011 on sn-devel-104

commit 494dda9bdea0b5d0f2266690f91b4782a94279b9
Author: Gregor Beck gb...@sernet.de
Date:   Fri Apr 8 14:53:25 2011 +0200

s3-net: idmap check ignore __db_sequence_number__

Signed-off-by: Michael Adam ob...@samba.org

---

Summary of changes:
 source3/utils/net_idmap_check.c |   15 +--
 1 files changed, 13 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/utils/net_idmap_check.c b/source3/utils/net_idmap_check.c
index 556a058..88725e1 100644
--- a/source3/utils/net_idmap_check.c
+++ b/source3/utils/net_idmap_check.c
@@ -52,7 +52,7 @@ static bool is_empty(TDB_DATA data) {
 enum DT {
DT_INV = 0,
DT_SID, DT_UID, DT_GID,
-   DT_HWM, DT_VER
+   DT_HWM, DT_VER, DT_SEQ,
 };
 
 struct record {
@@ -225,8 +225,13 @@ static char get_action(struct check_action* a, struct 
record* r, TDB_DATA* v) {
d_printf(%s: %s , a-name, print_data(r, r-key));
if (is_map(r)) {
d_printf(- %s\n, print_data(r, r-val));
-   } else {
+   } else if (r-key_type == DT_HWM ||
+  r-key_type == DT_VER ||
+  r-key_type == DT_SEQ)
+   {
d_printf(: %ld\n, r-id);
+   } else {
+   d_printf(\n);
}
} else {
d_printf(a-fmt, a-name,
@@ -621,6 +626,12 @@ parse_record(TALLOC_CTX* mem_ctx, TDB_DATA key, TDB_DATA 
val)
ret-id = IVAL(val.dptr,0);
ret-val_type = DT_VER;
}
+   } else if (strcmp((const char*)key.dptr, __db_sequence_number__) == 
0) {
+   ret-key_type = DT_SEQ;
+   if (val.dsize == 8) {
+   ret-id = *(uint64_t*)val.dptr;
+   ret-val_type = DT_SEQ;
+   }
}
 
return ret;


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated

2011-04-08 Thread Jeremy Allison
The branch, master has been updated
   via  af45636 Fix bug 8072 - PANIC: create_file_acl_common frees handle 
two times.
   via  c6c1724 Subtle change. Microsoft SMB2 tests return different access 
mask than for SMB1 with raw.acls.
  from  58a0c8a s3:net idmap check: fix output of an invalid record

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit af45636166c7a0cb87630105d18ce489e7391525
Author: Jeremy Allison j...@samba.org
Date:   Fri Apr 8 14:24:44 2011 -0700

Fix bug 8072 - PANIC: create_file_acl_common frees handle two times.

Caused by premature optimisation storing the parent ACL on the
module handle instead of (correctly) on the file fsp. Previous
code wasn't reentrant safe. This is less optimal but doesn't
crash in the specific case :-).

Jeremy.

Autobuild-User: Jeremy Allison j...@samba.org
Autobuild-Date: Sat Apr  9 02:05:15 CEST 2011 on sn-devel-104

commit c6c17242d23cd03acd5adc29969177881a7d04e1
Author: Jeremy Allison j...@samba.org
Date:   Fri Apr 8 16:18:56 2011 -0700

Subtle change. Microsoft SMB2 tests return different access mask than for 
SMB1 with raw.acls.

---

Summary of changes:
 source3/modules/vfs_acl_common.c |   99 ++---
 source3/smbd/open.c  |   13 +-
 2 files changed, 60 insertions(+), 52 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_acl_common.c b/source3/modules/vfs_acl_common.c
index 6e11ffc..ea41fbb 100644
--- a/source3/modules/vfs_acl_common.c
+++ b/source3/modules/vfs_acl_common.c
@@ -484,14 +484,11 @@ static NTSTATUS inherit_new_acl(vfs_handle_struct *handle,
psd);
 }
 
-static NTSTATUS check_parent_acl_common(vfs_handle_struct *handle,
+static NTSTATUS get_parent_acl_common(vfs_handle_struct *handle,
const char *path,
-   uint32_t access_mask,
struct security_descriptor **pp_parent_desc)
 {
char *parent_name = NULL;
-   struct security_descriptor *parent_desc = NULL;
-   uint32_t access_granted = 0;
NTSTATUS status;
 
if (!parent_dirname(talloc_tos(), path, parent_name, NULL)) {
@@ -504,15 +501,31 @@ static NTSTATUS check_parent_acl_common(vfs_handle_struct 
*handle,
(SECINFO_OWNER |
 SECINFO_GROUP |
 SECINFO_DACL),
-   parent_desc);
+   pp_parent_desc);
 
if (!NT_STATUS_IS_OK(status)) {
-   DEBUG(10,(check_parent_acl_common: get_nt_acl_internal 
+   DEBUG(10,(get_parent_acl_common: get_nt_acl_internal 
on directory %s for 
path %s returned %s\n,
parent_name,
path,
nt_errstr(status) ));
+   }
+   return status;
+}
+
+static NTSTATUS check_parent_acl_common(vfs_handle_struct *handle,
+   const char *path,
+   uint32_t access_mask,
+   struct security_descriptor **pp_parent_desc)
+{
+   char *parent_name = NULL;
+   struct security_descriptor *parent_desc = NULL;
+   uint32_t access_granted = 0;
+   NTSTATUS status;
+
+   status = get_parent_acl_common(handle, path, parent_desc);
+   if (!NT_STATUS_IS_OK(status)) {
return status;
}
if (pp_parent_desc) {
@@ -536,11 +549,6 @@ static NTSTATUS check_parent_acl_common(vfs_handle_struct 
*handle,
return NT_STATUS_OK;
 }
 
-static void free_sd_common(void **ptr)
-{
-   TALLOC_FREE(*ptr);
-}
-
 /*
  Check ACL on open. For new files inherit from parent directory.
 */
@@ -553,7 +561,6 @@ static int open_acl_common(vfs_handle_struct *handle,
 {
uint32_t access_granted = 0;
struct security_descriptor *pdesc = NULL;
-   struct security_descriptor *parent_desc = NULL;
bool file_existed = true;
char *fname = NULL;
NTSTATUS status;
@@ -599,29 +606,28 @@ static int open_acl_common(vfs_handle_struct *handle,
 * Check the parent directory ACL will allow this.
 */
if (flags  O_CREAT) {
-   struct security_descriptor *psd = NULL;
+   struct security_descriptor *parent_desc = NULL;
+   struct security_descriptor **pp_psd = NULL;
 
status = check_parent_acl_common(handle, fname,

[SCM] Samba Shared Repository - branch v3-6-test updated

2011-04-08 Thread Jeremy Allison
The branch, v3-6-test has been updated
   via  37145c9 Fix bug 8072 - PANIC: create_file_acl_common frees handle 
two times.
   via  aa08a22 Subtle change. Microsoft SMB2 tests return different access 
mask than for SMB1 with raw.acls. (cherry picked from commit 
c6c17242d23cd03acd5adc29969177881a7d04e1)
  from  0a660c4 s3:net idmap check: fix output of an invalid record

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-6-test


- Log -
commit 37145c97f59bdf0e6c97a0545f5aa9c35a6243af
Author: Jeremy Allison j...@samba.org
Date:   Fri Apr 8 14:24:44 2011 -0700

Fix bug 8072 - PANIC: create_file_acl_common frees handle two times.

Caused by premature optimisation storing the parent ACL on the
module handle instead of (correctly) on the file fsp. Previous
code wasn't reentrant safe. This is less optimal but doesn't
crash in the specific case :-).

Jeremy.

Autobuild-User: Jeremy Allison j...@samba.org
Autobuild-Date: Sat Apr  9 02:05:15 CEST 2011 on sn-devel-104
(cherry picked from commit af45636166c7a0cb87630105d18ce489e7391525)

commit aa08a226cd7bf4ec9f065d044ed2c8da38050153
Author: Jeremy Allison j...@samba.org
Date:   Fri Apr 8 16:18:56 2011 -0700

Subtle change. Microsoft SMB2 tests return different access mask than for 
SMB1 with raw.acls.
(cherry picked from commit c6c17242d23cd03acd5adc29969177881a7d04e1)

---

Summary of changes:
 source3/modules/vfs_acl_common.c |   99 ++---
 source3/smbd/open.c  |   13 +-
 2 files changed, 60 insertions(+), 52 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_acl_common.c b/source3/modules/vfs_acl_common.c
index 827c954..f8265c5 100644
--- a/source3/modules/vfs_acl_common.c
+++ b/source3/modules/vfs_acl_common.c
@@ -484,14 +484,11 @@ static NTSTATUS inherit_new_acl(vfs_handle_struct *handle,
psd);
 }
 
-static NTSTATUS check_parent_acl_common(vfs_handle_struct *handle,
+static NTSTATUS get_parent_acl_common(vfs_handle_struct *handle,
const char *path,
-   uint32_t access_mask,
struct security_descriptor **pp_parent_desc)
 {
char *parent_name = NULL;
-   struct security_descriptor *parent_desc = NULL;
-   uint32_t access_granted = 0;
NTSTATUS status;
 
if (!parent_dirname(talloc_tos(), path, parent_name, NULL)) {
@@ -504,15 +501,31 @@ static NTSTATUS check_parent_acl_common(vfs_handle_struct 
*handle,
(SECINFO_OWNER |
 SECINFO_GROUP |
 SECINFO_DACL),
-   parent_desc);
+   pp_parent_desc);
 
if (!NT_STATUS_IS_OK(status)) {
-   DEBUG(10,(check_parent_acl_common: get_nt_acl_internal 
+   DEBUG(10,(get_parent_acl_common: get_nt_acl_internal 
on directory %s for 
path %s returned %s\n,
parent_name,
path,
nt_errstr(status) ));
+   }
+   return status;
+}
+
+static NTSTATUS check_parent_acl_common(vfs_handle_struct *handle,
+   const char *path,
+   uint32_t access_mask,
+   struct security_descriptor **pp_parent_desc)
+{
+   char *parent_name = NULL;
+   struct security_descriptor *parent_desc = NULL;
+   uint32_t access_granted = 0;
+   NTSTATUS status;
+
+   status = get_parent_acl_common(handle, path, parent_desc);
+   if (!NT_STATUS_IS_OK(status)) {
return status;
}
if (pp_parent_desc) {
@@ -536,11 +549,6 @@ static NTSTATUS check_parent_acl_common(vfs_handle_struct 
*handle,
return NT_STATUS_OK;
 }
 
-static void free_sd_common(void **ptr)
-{
-   TALLOC_FREE(*ptr);
-}
-
 /*
  Check ACL on open. For new files inherit from parent directory.
 */
@@ -553,7 +561,6 @@ static int open_acl_common(vfs_handle_struct *handle,
 {
uint32_t access_granted = 0;
struct security_descriptor *pdesc = NULL;
-   struct security_descriptor *parent_desc = NULL;
bool file_existed = true;
char *fname = NULL;
NTSTATUS status;
@@ -599,29 +606,28 @@ static int open_acl_common(vfs_handle_struct *handle,
 * Check the parent directory ACL will allow this.
 */
if (flags  O_CREAT) {
-   struct security_descriptor *psd = NULL;
+