SrvTarget

SRV (service) records are used by some network protocols to provide service-specific aliasing and load-balancing. For example, XMPP (Jabber) uses SRV records to locate the XMPP server for a domain; rather than connecting directly to "example.com" or assuming a specific server hostname like "xmpp.example.com", an XMPP client would look up the "xmpp-client" SRV record for "example.com", and then connect to whatever host was pointed to by that record.

You can use g_resolver_lookup_service() or g_resolver_lookup_service_async() to find the #GSrvTargets for a given service. However, if you are simply planning to connect to the remote service, you can use #GNetworkService's #GSocketConnectable interface and not need to worry about #GSrvTarget at all.

Constructors

this
this(GSrvTarget* gSrvTarget)

Sets our main struct and passes it to the parent class.

this
this(string hostname, ushort port, ushort priority, ushort weight)

Creates a new #GSrvTarget with the given parameters.

Members

Functions

copy
SrvTarget copy()

Copies @target

free
void free()

Frees @target

getHostname
string getHostname()

Gets @target's hostname (in ASCII form; if you are going to present this to the user, you should use g_hostname_is_ascii_encoded() to check if it contains encoded Unicode segments, and use g_hostname_to_unicode() to convert it if it does.)

getPort
ushort getPort()

Gets @target's port

getPriority
ushort getPriority()

Gets @target's priority. You should not need to look at this; #GResolver already sorts the targets according to the algorithm in RFC 2782.

getSrvTargetStruct
GSrvTarget* getSrvTargetStruct()

Get the main Gtk struct

getStruct
void* getStruct()

the main Gtk struct as a void*

getWeight
ushort getWeight()

Gets @target's weight. You should not need to look at this; #GResolver already sorts the targets according to the algorithm in RFC 2782.

Static functions

getType
GType getType()
listSort
ListG listSort(ListG targets)

Sorts @targets in place according to the algorithm in RFC 2782.

Variables

gSrvTarget
GSrvTarget* gSrvTarget;

the main Gtk struct

Meta