D6597: Add magic define to enable setgroups(2)

Michael Pyne noreply at phabricator.kde.org
Sun Jul 9 23:49:11 UTC 2017


mpyne created this revision.
Restricted Application added a project: Frameworks.

REVISION SUMMARY
  The KIO KPAC DHCP helper uses `setgroups(2)`.  But this is apparently not specified in POSIX due to being a "privileged call", so it is only available as an extension, typically needing `_BSD_SOURCE` to be explicitly defined from what I can gather.
  
  glibc will gladly provide `setgroups()` as a GNU extension without requiring `_BSD_SOURCE`, but musl libc requires one of `_{BSD_GNU}_SOURCE` and doesn't pre-define either.
  
  Defining `_BSD_SOURCE` is easy enough but it seems that glibc now complains about that, calling it deprecated, so I also threw in a `_DEFAULT_SOURCE` define, which appears to be the new hotness.  But maybe it would be easier to find a way to avoid `setgroups()`?

TEST PLAN
  KIO now builds under musl libc
  KIO still builds under glibc

REPOSITORY
  R241 KIO

REVISION DETAIL
  https://phabricator.kde.org/D6597

AFFECTED FILES
  src/kpac/kpac_dhcp_helper.c

To: mpyne, #frameworks
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20170709/148a2d3b/attachment.html>


More information about the Kde-frameworks-devel mailing list