DBusServer
GDBusServer
is a helper for listening to and accepting D-Bus connections. This can be used to create a new D-Bus server, allowing two peers to use the D-Bus protocol for their own specialized communication. A server instance provided in this way will not perform message routing or implement the org.freedesktop.DBus
interface.
To just export an object on a well-known name on a message bus, such as the session or system bus, you should instead use func@Gio.bus_own_name.
An example of peer-to-peer communication with GDBus can be found in gdbus-example-peer.c.
Note that a minimal GDBusServer
will accept connections from any peer. In many use-cases it will be necessary to add a class@Gio.DBusAuthObserver that only accepts connections that have successfully authenticated as the same user that is running the GDBusServer
. Since GLib 2.68 this can be achieved more simply by passing the G_DBUS_SERVER_FLAGS_AUTHENTICATION_REQUIRE_SAME_USER
flag to the server.
Skipped during bindings generation
method
active
: Property has no getter nor settermethod
address
: Property has no getter nor settermethod
authentication-observer
: Property has no getter nor setter
Since
2.26
Constructors
Creates a new D-Bus server that listens on the first address in
Properties
Functions
Given @connection to communicate with a proxy (eg, a #GSocketConnection that is connected to the proxy server), this does the necessary handshake to connect to @proxy_address, and if required, wraps the #GIOStream to handle proxy payload.
Asynchronous version of g_proxy_connect().
See g_proxy_connect().
Initializes the object implementing the interface.
Emitted when a new authenticated connection has been made. Use g_dbus_connection_get_peer_credentials() to figure out what identity (if any), was authenticated.
Some proxy protocols expect to be passed a hostname, which they will resolve to an IP address themselves. Others, like SOCKS4, do not allow this. This function will return false if @proxy is implementing such a protocol. When false is returned, the caller should resolve the destination hostname first, and then pass a #GProxyAddress containing the stringified IP address to g_proxy_connect() or g_proxy_connect_async().