Object Hierarchy:

GLib.Credentials GLib.Credentials GLib.Credentials GLib.Object GLib.Object GLib.Object->GLib.Credentials


[ CCode ( type_id = "g_credentials_get_type ()" ) ]
[ Version ( since = "2.26" ) ]
public sealed class Credentials : Object

The `GCredentials` type is a reference-counted wrapper for native credentials.

The information in `GCredentials` is typically used for identifying, authenticating and authorizing other processes.

Some operating systems supports looking up the credentials of the remote peer of a communication endpoint - see e.g. [ method@Gio.Socket.get_credentials].

Some operating systems supports securely sending and receiving credentials over a Unix Domain Socket, see [class@Gio.UnixCredentialsMessage], [ method@Gio.UnixConnection.send_credentials] and [method@Gio.UnixConnection.receive_credentials] for details.

On Linux, the native credential type is a `struct ucred` - see the [`unix(7)` man page](man:unix(7)) for details. This corresponds to `G_CREDENTIALS_TYPE_LINUX_UCRED`.

On Apple operating systems (including iOS, tvOS, and macOS), the native credential type is a `struct xucred`. This corresponds to `G_CREDENTIALS_TYPE_APPLE_XUCRED`.

On FreeBSD, Debian GNU/kFreeBSD, and GNU/Hurd, the native credential type is a `struct cmsgcred`. This corresponds to `G_CREDENTIALS_TYPE_FREEBSD_CMSGCRED`.

On NetBSD, the native credential type is a `struct unpcbid`. This corresponds to `G_CREDENTIALS_TYPE_NETBSD_UNPCBID`.

On OpenBSD, the native credential type is a `struct sockpeercred`. This corresponds to `G_CREDENTIALS_TYPE_OPENBSD_SOCKPEERCRED`.

On Solaris (including OpenSolaris and its derivatives), the native credential type is a `ucred_t`. This corresponds to `G_CREDENTIALS_TYPE_SOLARIS_UCRED`.

Since GLib 2.72, on Windows, the native credentials may contain the PID of a process. This corresponds to `G_CREDENTIALS_TYPE_WIN32_PID`.

Namespace: GLib
Package: gio-2.0


Creation methods:


Inherited Members: