gio: add gcredential support for macOS

[smcv: Apply my review feedback from
<https://bugzilla.gnome.org/show_bug.cgi?id=668866>]

Co-authored-by: Simon McVittie <smcv@collabora.com>
Resolves: https://gitlab.gnome.org/GNOME/glib/issues/507
This commit is contained in:
Dr. Michael Lauer
2018-02-18 15:26:54 +01:00
committed by Philip Withnall
parent 05cb229082
commit ec2f60a008
7 changed files with 124 additions and 2 deletions

View File

@@ -39,6 +39,7 @@
#undef G_CREDENTIALS_USE_NETBSD_UNPCBID
#undef G_CREDENTIALS_USE_OPENBSD_SOCKPEERCRED
#undef G_CREDENTIALS_USE_SOLARIS_UCRED
#undef G_CREDENTIALS_USE_APPLE_XUCRED
/*
* G_CREDENTIALS_NATIVE_TYPE:
@@ -156,6 +157,17 @@
#define G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED 1
#define G_CREDENTIALS_HAS_PID 1
#elif defined(__APPLE__)
#include <sys/ucred.h>
#define G_CREDENTIALS_SUPPORTED 1
#define G_CREDENTIALS_USE_APPLE_XUCRED 1
#define G_CREDENTIALS_NATIVE_TYPE G_CREDENTIALS_TYPE_APPLE_XUCRED
#define G_CREDENTIALS_NATIVE_SIZE (sizeof (struct xucred))
#undef G_CREDENTIALS_UNIX_CREDENTIALS_MESSAGE_SUPPORTED
#define G_CREDENTIALS_SOCKET_GET_CREDENTIALS_SUPPORTED 1
#define G_CREDENTIALS_SPOOFING_SUPPORTED 1
#define G_CREDENTIALS_HAS_PID 0
#endif
#endif /* __G_CREDENTIALS_PRIVATE_H__ */