cope with NULL attr
authorAndrew Tridgell <tridge@samba.org>
Tue, 30 Sep 2008 15:44:06 +0000 (08:44 -0700)
committerAndrew Tridgell <tridge@samba.org>
Tue, 30 Sep 2008 15:46:22 +0000 (08:46 -0700)
source4/rpc_server/lsa/lsa_init.c

index a95cb10f9fa33b32b57095585220dcf6fa3036e8..8d8417109f8de0b008bf82494e7f3842abfc98b1 100644 (file)
@@ -199,7 +199,7 @@ NTSTATUS dcesrv_lsa_OpenPolicy2(struct dcesrv_call_state *dce_call, TALLOC_CTX *
 
        ZERO_STRUCTP(r->out.handle);
 
 
        ZERO_STRUCTP(r->out.handle);
 
-       if (r->in.attr == NULL ||
+       if (r->in.attr != NULL &&
            r->in.attr->root_dir != NULL) {
                /* MS-LSAD 3.1.4.4.1 */
                return NT_STATUS_INVALID_PARAMETER;
            r->in.attr->root_dir != NULL) {
                /* MS-LSAD 3.1.4.4.1 */
                return NT_STATUS_INVALID_PARAMETER;
@@ -217,6 +217,8 @@ NTSTATUS dcesrv_lsa_OpenPolicy2(struct dcesrv_call_state *dce_call, TALLOC_CTX *
 
        handle->data = talloc_steal(handle, state);
 
 
        handle->data = talloc_steal(handle, state);
 
+       /* need to check the access mask against - need ACLs - fails
+          WSPP test */
        state->access_mask = r->in.access_mask;
        state->handle = handle;
        *r->out.handle = handle->wire_handle;
        state->access_mask = r->in.access_mask;
        state->handle = handle;
        *r->out.handle = handle->wire_handle;