2009/4/15 Hans Leidekker <h...@codeweavers.com>:
> @@ -441,6 +441,23 @@ NTSTATUS WINAPI NtQueryInformationToken(
>         }
>         SERVER_END_REQ;
>         break;
> +    case TokenDefaultDacl:
> +        if (tokeninfo)
> +        {
> +            TOKEN_DEFAULT_DACL *token = (TOKEN_DEFAULT_DACL *)tokeninfo;
> +            ACL *acl;
> +
> +            FIXME("returning empty DACL\n");
> +
> +            acl = token->DefaultDacl = (ACL *)token + 
> sizeof(TOKEN_DEFAULT_DACL);
> +
> +            acl->AclRevision = ACL_REVISION;
> +            acl->Sbz1        = 0;
> +            acl->AclSize     = sizeof(ACL);
> +            acl->AceCount    = 0;
> +            acl->Sbz2        = 0;
> +        }
> +        break;
>     default:
>         {
>             ERR("Unhandled Token Information class %d!\n", tokeninfoclass);

The server already tracks the default DACL of the token in the token
object, so implementing these functions properly shouldn't be much
more work than writing the code to marshall and unmarshall the ACL to
and from the server, with two new trivial functions in the server for
getting and setting the default_dacl field.

-- 
Rob Shearman


Reply via email to