Package ch.bailu.gtk.gio
Klasse DBusAuthObserver
java.lang.Object
ch.bailu.gtk.type.Type
ch.bailu.gtk.type.Pointer
ch.bailu.gtk.gobject.Object
ch.bailu.gtk.type.PropertyHolder
ch.bailu.gtk.gio.DBusAuthObserver
- Alle implementierten Schnittstellen:
PointerInterface
`GDBusAuthObserver` provides a mechanism for participating
in how a [class@Gio.DBusServer] (or a [class@Gio.DBusConnection])
authenticates remote peers.
Simply instantiate a `GDBusAuthObserver` and connect to the
signals you are interested in. Note that new signals may be added
in the future.
## Controlling Authentication Mechanisms
By default, a `GDBusServer` or server-side `GDBusConnection` will allow
any authentication mechanism to be used. If you only want to allow D-Bus
connections with the `EXTERNAL` mechanism, which makes use of credentials
passing and is the recommended mechanism for modern Unix platforms such
as Linux and the BSD family, you would use a signal handler like this:
```c
static gboolean
on_allow_mechanism (GDBusAuthObserver *observer,
const gchar *mechanism,
gpointer user_data)
{
if (g_strcmp0 (mechanism, "EXTERNAL") == 0)
{
return TRUE;
}
return FALSE;
}
```
## Controlling Authorization
By default, a `GDBusServer` or server-side `GDBusConnection` will accept
connections from any successfully authenticated user (but not from
anonymous connections using the `ANONYMOUS` mechanism). If you only
want to allow D-Bus connections from processes owned by the same uid
as the server, since GLib 2.68, you should use the
`G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER` flag. It’s equivalent
to the following signal handler:
```c
static gboolean
on_authorize_authenticated_peer (GDBusAuthObserver *observer,
GIOStream *stream,
GCredentials *credentials,
gpointer user_data)
{
gboolean authorized;
authorized = FALSE;
if (credentials != NULL)
{
GCredentials *own_credentials;
own_credentials = g_credentials_new ();
if (g_credentials_is_same_user (credentials, own_credentials, NULL))
authorized = TRUE;
g_object_unref (own_credentials);
}
return authorized;
}
```
in how a [class@Gio.DBusServer] (or a [class@Gio.DBusConnection])
authenticates remote peers.
Simply instantiate a `GDBusAuthObserver` and connect to the
signals you are interested in. Note that new signals may be added
in the future.
## Controlling Authentication Mechanisms
By default, a `GDBusServer` or server-side `GDBusConnection` will allow
any authentication mechanism to be used. If you only want to allow D-Bus
connections with the `EXTERNAL` mechanism, which makes use of credentials
passing and is the recommended mechanism for modern Unix platforms such
as Linux and the BSD family, you would use a signal handler like this:
```c
static gboolean
on_allow_mechanism (GDBusAuthObserver *observer,
const gchar *mechanism,
gpointer user_data)
{
if (g_strcmp0 (mechanism, "EXTERNAL") == 0)
{
return TRUE;
}
return FALSE;
}
```
## Controlling Authorization
By default, a `GDBusServer` or server-side `GDBusConnection` will accept
connections from any successfully authenticated user (but not from
anonymous connections using the `ANONYMOUS` mechanism). If you only
want to allow D-Bus connections from processes owned by the same uid
as the server, since GLib 2.68, you should use the
`G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER` flag. It’s equivalent
to the following signal handler:
```c
static gboolean
on_authorize_authenticated_peer (GDBusAuthObserver *observer,
GIOStream *stream,
GCredentials *credentials,
gpointer user_data)
{
gboolean authorized;
authorized = FALSE;
if (credentials != NULL)
{
GCredentials *own_credentials;
own_credentials = g_credentials_new ();
if (g_credentials_is_same_user (credentials, own_credentials, NULL))
authorized = TRUE;
g_object_unref (own_credentials);
}
return authorized;
}
```
-
Verschachtelte Klassen - Übersicht
Verschachtelte KlassenModifizierer und TypKlasseBeschreibungstatic interface
static interface
Von Klasse geerbte verschachtelte Klassen/Schnittstellen ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDestroyNotify, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Feldübersicht
FelderVon Klasse geerbte Felder ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungCreates a new #GDBusAuthObserver object.DBusAuthObserver
(PointerContainer pointer) -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungboolean
allowMechanism
(Str mechanism) Emits the #GDBusAuthObserver::allow-mechanism signal on @observer.boolean
allowMechanism
(String mechanism) Emits the #GDBusAuthObserver::allow-mechanism signal on @observer.boolean
authorizeAuthenticatedPeer
(IOStream stream, Credentials credentials) Emits the #GDBusAuthObserver::authorize-authenticated-peer signal on @observer.static ClassHandler
static int
static long
static TypeSystem.TypeSize
static long
static TypeSystem.TypeSize
Connect to signal "allow-mechanism".Connect to signal "authorize-authenticated-peer".Von Klasse geerbte Methoden ch.bailu.gtk.type.PropertyHolder
getBooleanProperty, getIntProperty, getObjectProperty, getStringProperty, getStrProperty, setBooleanProperty, setIntProperty, setObjectProperty, setStringProperty, setStrProperty
Von Klasse geerbte Methoden ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref
Von Klasse geerbte Methoden ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Von Klasse geerbte Methoden ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Von Klasse geerbte Methoden java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Felddetails
-
SIGNAL_ON_ALLOW_MECHANISM
- Siehe auch:
-
SIGNAL_ON_AUTHORIZE_AUTHENTICATED_PEER
- Siehe auch:
-
-
Konstruktordetails
-
DBusAuthObserver
-
DBusAuthObserver
public DBusAuthObserver()Creates a new #GDBusAuthObserver object.
-
-
Methodendetails
-
getClassHandler
-
allowMechanism
Emits the #GDBusAuthObserver::allow-mechanism signal on @observer.- Parameter:
mechanism
- The name of the mechanism, e.g. `DBUS_COOKIE_SHA1`.- Gibt zurück:
- %TRUE if @mechanism can be used to authenticate the other peer, %FALSE if not.
-
allowMechanism
Emits the #GDBusAuthObserver::allow-mechanism signal on @observer.- Parameter:
mechanism
- The name of the mechanism, e.g. `DBUS_COOKIE_SHA1`.- Gibt zurück:
- %TRUE if @mechanism can be used to authenticate the other peer, %FALSE if not.
-
authorizeAuthenticatedPeer
public boolean authorizeAuthenticatedPeer(@Nonnull IOStream stream, @Nullable Credentials credentials) Emits the #GDBusAuthObserver::authorize-authenticated-peer signal on @observer.- Parameter:
stream
- A #GIOStream for the #GDBusConnection.credentials
- Credentials received from the peer or %NULL.- Gibt zurück:
- %TRUE if the peer is authorized, %FALSE if not.
-
onAllowMechanism
Connect to signal "allow-mechanism".
SeeDBusAuthObserver.OnAllowMechanism.onAllowMechanism(ch.bailu.gtk.type.Str)
for signal description.
FieldSIGNAL_ON_ALLOW_MECHANISM
contains original signal name and can be used as resource reference.- Parameter:
signal
- callback function (lambda).- Gibt zurück:
SignalHandler
. Can be used to disconnect signal and to release callback function.
-
onAuthorizeAuthenticatedPeer
public SignalHandler onAuthorizeAuthenticatedPeer(DBusAuthObserver.OnAuthorizeAuthenticatedPeer signal) Connect to signal "authorize-authenticated-peer".
SeeDBusAuthObserver.OnAuthorizeAuthenticatedPeer.onAuthorizeAuthenticatedPeer(ch.bailu.gtk.gio.IOStream, ch.bailu.gtk.gio.Credentials)
for signal description.
FieldSIGNAL_ON_AUTHORIZE_AUTHENTICATED_PEER
contains original signal name and can be used as resource reference.- Parameter:
signal
- callback function (lambda).- Gibt zurück:
SignalHandler
. Can be used to disconnect signal and to release callback function.
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-