Define preprocessor symbols for the extent of GCredentials support
Submitted by Simon McVittie
Link to original bug (#701482)
Description
Created attachment 245880 Define preprocessor symbols for the extent of GCredentials support
Some Unix-specific packages, like gdm, rely on particular GCredentials features. With these symbols, they can use the preprocessor to check for defined(G_CREDENTIALS_HAVE_UNIX_PID), and refuse to compile if an OS feature that they will need at runtime is missing.
I've used separate macros to support OSs where you can credentials-pass a uid but not a pid. I have no idea whether such OSs really exist - all our currently-supported OSs pass a triple (uid, pid, gid).
I'd like to use this for Bug #687921, with a fallback to "if not defined, check for one of linux, FreeBSD, FreeBSD_kernel or OpenBSD" (since those are the kernels where it worked with 2.36). gdm should continue to fail to build on (e.g.) Hurd until/unless credentials-passing is actually implemented there.
Patch 245880, "Define preprocessor symbols for the extent of GCredentials support":
0001-Define-preprocessor-symbols-for-the-extent-of-GCrede.patch
Version: 2.37.x