Top |
Functions
g_socket_address_enumerator_next ()
GSocketAddress * g_socket_address_enumerator_next (GSocketAddressEnumerator *enumerator
,GCancellable *cancellable
,GError **error
);
Retrieves the next GSocketAddress from enumerator
. Note that this
may block for some amount of time. (Eg, a GNetworkAddress may need
to do a DNS lookup before it can return an address.) Use
g_socket_address_enumerator_next_async()
if you need to avoid
blocking.
If enumerator
is expected to yield addresses, but for some reason
is unable to (eg, because of a DNS error), then the first call to
g_socket_address_enumerator_next()
will return an appropriate error
in *error
. However, if the first call to
g_socket_address_enumerator_next()
succeeds, then any further
internal errors (other than cancellable
being triggered) will be
ignored.
Parameters
enumerator |
||
cancellable |
optional GCancellable object, |
[nullable] |
error |
a GError. |
Returns
a GSocketAddress (owned by the caller), or NULL
on
error (in which case *error
will be set) or if there are no
more addresses.
[transfer full]
g_socket_address_enumerator_next_async ()
void g_socket_address_enumerator_next_async (GSocketAddressEnumerator *enumerator
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
Asynchronously retrieves the next GSocketAddress from enumerator
and then calls callback
, which must call
g_socket_address_enumerator_next_finish()
to get the result.
Parameters
enumerator |
||
cancellable |
optional GCancellable object, |
[nullable] |
callback |
a GAsyncReadyCallback to call when the request is satisfied. |
[scope async] |
user_data |
the data to pass to callback function. |
[closure] |
g_socket_address_enumerator_next_finish ()
GSocketAddress * g_socket_address_enumerator_next_finish (GSocketAddressEnumerator *enumerator
,GAsyncResult *result
,GError **error
);
Retrieves the result of a completed call to
g_socket_address_enumerator_next_async()
. See
g_socket_address_enumerator_next()
for more information about
error handling.
Returns
a GSocketAddress (owned by the caller), or NULL
on
error (in which case *error
will be set) or if there are no
more addresses.
[transfer full]
Types and Values
GSocketAddressEnumerator
typedef struct _GSocketAddressEnumerator GSocketAddressEnumerator;
Enumerator type for objects that contain or generate GSocketAddress instances.
struct GSocketAddressEnumeratorClass
struct GSocketAddressEnumeratorClass { GObjectClass parent_class; /* Virtual Table */ GSocketAddress * (* next) (GSocketAddressEnumerator *enumerator, GCancellable *cancellable, GError **error); void (* next_async) (GSocketAddressEnumerator *enumerator, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data); GSocketAddress * (* next_finish) (GSocketAddressEnumerator *enumerator, GAsyncResult *result, GError **error); };