vectorRemoveDuplicates(allowedGroups); // sorted
auto &gids = m_privilegeGids.getGids(); // sorted
- forbiddenGroups.reserve(gids.size());
+ forbiddenGroups.reserve(gids.size() + 1);
std::set_difference(gids.begin(), gids.end(), allowedGroups.begin(), allowedGroups.end(),
std::back_inserter(forbiddenGroups)); // sorted
+ if (!smack_simple_check())
+ forbiddenGroups.emplace_back(getSystemAccessGid());
} catch (const std::runtime_error &) {
return SECURITY_MANAGER_ERROR_UNKNOWN;
} catch (const std::bad_alloc &e) {