When checking a property locked/unlocked for a certain group, xfconf_user_is_in_group() enumerates through all visible groups to generate a cache (xfconf_ensure_group_cache()) which is then searched for the group, then the group members. However, this does not work when the group is not enumerated by getgrent(), such as LDAP with enumeration turned off or various other identity providers. A possible solution is to use getgrouplist(), the output of which can be searched to see if a user is a member of a certain group.
Sorry, I just noticed that getgrouplist() is BSD-specific. Perhaps the initgroups_dyn() function (or similar) would be useful?
Retargeting this bug to 4.14.
-- GitLab Migration Automatic Message -- This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/xfce/xfconf/-/issues/3. Please create an account or use an existing account on one of our supported OAuth providers. If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev