NetworkService

open class NetworkService(val gioNetworkServicePointer: <Error class: unknown class><<Error class: unknown class>>) : SocketConnectable(source)

Like class@Gio.NetworkAddress does with hostnames, GNetworkService provides an easy way to resolve a SRV record, and then attempt to connect to one of the hosts that implements that service, handling service priority/weighting, multiple IP addresses, and multiple address families.

See struct@Gio.SrvTarget for more information about SRV records, and see iface@Gio.SocketConnectable for an example of using the connectable interface.

Constructors

Link copied to clipboard
constructor(service: String, protocol: String, domain: String)

Creates a new #GNetworkService representing the given @service,

constructor(gioNetworkServicePointer: <Error class: unknown class><<Error class: unknown class>>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open val domain: String

Network domain, for example example.com.

Link copied to clipboard
val gioNetworkServicePointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
abstract val gioProxyPointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open override val gioSocketConnectablePointer: <Error class: unknown class><<Error class: unknown class>>
Link copied to clipboard
open val protocol: String

Network protocol, for example tcp.

Link copied to clipboard
open var scheme: String

Network scheme (default is to use service).

Link copied to clipboard
open val service: String

Service name, for example ldap.

Functions

Link copied to clipboard
open fun connect(connection: IoStream, proxyAddress: ProxyAddress, cancellable: Cancellable? = null): <Error class: unknown class><IoStream>

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.

Link copied to clipboard
open fun connectAsync(connection: IoStream, proxyAddress: ProxyAddress, cancellable: Cancellable? = null, callback: AsyncReadyCallback?)

Asynchronous version of g_proxy_connect().

Link copied to clipboard
open fun connectFinish(result: AsyncResult): <Error class: unknown class><IoStream>

See g_proxy_connect().

Link copied to clipboard

Creates a #GSocketAddressEnumerator for @connectable.

Link copied to clipboard

Creates a #GSocketAddressEnumerator for @connectable that will return a #GProxyAddress for each of its addresses that you must connect to via a proxy.

Link copied to clipboard

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().

Link copied to clipboard

Format a #GSocketConnectable as a string. This is a human-readable format for use in debugging output, and is not a stable serialization format. It is not suitable for use in user interfaces as it exposes too much information for a user.