s3-privs Make privilege_enum_sids() take an LUID, not a bitmap
[amitay/samba.git] / source3 / rpc_server / srv_lsa_nt.c
index 04e8d1970c59d56c94d4a31436c683d99dcaecd7..896ca66c6d66ee4d09872a393710acc918b13e35 100644 (file)
@@ -2440,7 +2440,7 @@ NTSTATUS _lsa_EnumAccountsWithUserRight(struct pipes_struct *p,
        struct dom_sid *sids = NULL;
        int num_sids = 0;
        uint32_t i;
-       uint64_t mask;
+       enum sec_privilege privilege;
 
        if (!find_policy_by_hnd(p, r->in.handle, (void **)(void *)&info)) {
                return NT_STATUS_INVALID_HANDLE;
@@ -2458,11 +2458,12 @@ NTSTATUS _lsa_EnumAccountsWithUserRight(struct pipes_struct *p,
                return NT_STATUS_NO_SUCH_PRIVILEGE;
        }
 
-       if (!se_priv_from_name(r->in.name->string, &mask)) {
+       privilege = sec_privilege_id(r->in.name->string);
+       if (privilege == SEC_PRIV_INVALID) {
                return NT_STATUS_NO_SUCH_PRIVILEGE;
        }
 
-       status = privilege_enum_sids(&mask, p->mem_ctx,
+       status = privilege_enum_sids(privilege, p->mem_ctx,
                                     &sids, &num_sids);
        if (!NT_STATUS_IS_OK(status)) {
                return status;