glibmm: Gio::Credentials Class Reference
An object containing credentials. More...
#include <giomm/credentials.h>
Public Member Functions | |
virtual | ~Credentials () |
GCredentials* | gobj () |
Provides access to the underlying C GObject. | |
const GCredentials* | gobj () const |
Provides access to the underlying C GObject. | |
GCredentials* | gobj_copy () |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. | |
Glib::ustring | to_string () const |
Creates a human-readable textual representation of credentials that can be used in logging and debug messages. | |
gpointer | get_native (CredentialsType native_type) |
Gets a pointer to native credentials of type native_type from credentials. | |
void | set_native (CredentialsType native_type, gpointer native) |
Copies the native credentials of type native_type from native into credentials. | |
bool | is_same_user (const Glib::RefPtr< const Credentials >& other_credentials) |
Checks if credentials and other_credentials is the same user. | |
Static Public Member Functions | |
static Glib::RefPtr< Credentials > | create () |
Protected Member Functions | |
Credentials () | |
Related Functions | |
(Note that these are not member functions.) | |
Glib::RefPtr< Gio::Credentials > | wrap (GCredentials* object, bool take_copy=false) |
A Glib::wrap() method for this object. |
Detailed Description
An object containing credentials.
The Credentials type is a reference-counted wrapper for native credentials. This information 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. Gio::Socket::get_credentials().
Some operating systems supports securely sending and receiving credentials over a Unix Domain Socket, see UnixCredentialsMessage, Gio::UnixConnection::send_credentials() and Gio::UnixConnection::receive_credentials() for details.
On Linux, the native credential type is a struct ucred - see the unix(7) man page for details. This corresponds to Gio::CREDENTIALS_TYPE_LINUX_UCRED.
On FreeBSD, the native credential type is a struct cmsgcred. This corresponds to Gio::CREDENTIALS_TYPE_FREEBSD_CMSGCRED.
Constructor & Destructor Documentation
virtual Gio::Credentials::~Credentials | ( | ) | [virtual] |
Gio::Credentials::Credentials | ( | ) | [protected] |
Member Function Documentation
static Glib::RefPtr<Credentials> Gio::Credentials::create | ( | ) | [static] |
gpointer Gio::Credentials::get_native | ( | CredentialsType | native_type | ) |
Gets a pointer to native credentials of type native_type from credentials.
It is a programming error (which will cause an warning to be logged) to use this method if there is no Credentials support for the OS or if native_type isn't supported by the OS.
- Parameters:
-
native_type The type of native credentials to get.
- Returns:
- The pointer to native credentials or
0
if the operation there is no Credentials support for the OS or if native_type isn't supported by the OS. Do not free the returned data, it is owned by credentials.
GCredentials* Gio::Credentials::gobj | ( | ) | [inline] |
Provides access to the underlying C GObject.
Reimplemented from Glib::ObjectBase.
const GCredentials* Gio::Credentials::gobj | ( | ) | const [inline] |
Provides access to the underlying C GObject.
Reimplemented from Glib::ObjectBase.
GCredentials* Gio::Credentials::gobj_copy | ( | ) |
Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
bool Gio::Credentials::is_same_user | ( | const Glib::RefPtr< const Credentials >& | other_credentials | ) |
Checks if credentials and other_credentials is the same user.
This operation can fail if Credentials is not supported on the the OS.
- Parameters:
-
other_credentials A Credentials.
- Returns:
true
if credentials and other_credentials has the same user,false
otherwise or if error is set.
void Gio::Credentials::set_native | ( | CredentialsType | native_type, |
gpointer | native | ||
) |
Copies the native credentials of type native_type from native into credentials.
It is a programming error (which will cause an warning to be logged) to use this method if there is no Credentials support for the OS or if native_type isn't supported by the OS.
- Parameters:
-
native_type The type of native credentials to set. native A pointer to native credentials.
Glib::ustring Gio::Credentials::to_string | ( | ) | const |
Creates a human-readable textual representation of credentials that can be used in logging and debug messages.
The format of the returned string may change in future GLib release.
- Returns:
- A string that should be freed with Glib::free().
Friends And Related Function Documentation
Glib::RefPtr< Gio::Credentials > wrap | ( | GCredentials * | object, |
bool | take_copy = false |
||
) | [related] |
A Glib::wrap() method for this object.
- Parameters:
-
object The C instance. take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
- Returns:
- A C++ instance that wraps this C instance.