| libsoup Reference Manual |
|---|
SoupAddress —
enum SoupAddressFamily; #define SOUP_ADDRESS_ANY_PORT SoupAddress* soup_address_new (const char *name, guint port); SoupAddress* soup_address_new_from_sockaddr (struct sockaddr *sa, int len); SoupAddress* soup_address_new_any (SoupAddressFamily family, guint port); void (*SoupAddressCallback) (SoupAddress *addr, guint status, gpointer data); void soup_address_resolve_async (SoupAddress *addr, SoupAddressCallback callback, gpointer user_data); guint soup_address_resolve_sync (SoupAddress *addr); const char* soup_address_get_name (SoupAddress *addr); const char* soup_address_get_physical (SoupAddress *addr); guint soup_address_get_port (SoupAddress *addr);
typedef enum {
SOUP_ADDRESS_FAMILY_IPV4 = AF_INET,
SOUP_ADDRESS_FAMILY_IPV6 = AF_INET6
} SoupAddressFamily;
SoupAddress* soup_address_new (const char *name,
guint port);Creates a SoupAddress from name and port. The SoupAddress's IP address may not be available right away; the caller can call soup_address_resolve_async() or soup_address_resolve_sync() to force a DNS resolution.
| name : | a hostname or physical address |
| port : | a port number |
| Returns : | a SoupAddress |
SoupAddress* soup_address_new_from_sockaddr (struct sockaddr *sa,
int len);
| sa : | a pointer to a sockaddr |
| len : | size of sa |
| Returns : | a SoupAddress equivalent to sa (or NULL if sa's address family isn't supported) |
SoupAddress* soup_address_new_any (SoupAddressFamily family, guint port);
| family : | the address family |
| port : | the port number (usually 0, meaning "any port") |
| Returns : | a SoupAddress corresponding to the "any" address for family (or NULL if family isn't supported), suitable for passing to soup_socket_server_new(). |
void (*SoupAddressCallback) (SoupAddress *addr,
guint status,
gpointer data);
| addr : | |
| status : | |
| data : |
void soup_address_resolve_async (SoupAddress *addr,
SoupAddressCallback callback,
gpointer user_data);Asynchronously resolves the missing half of addr. (Its IP address if it was created with soup_address_new(), or its hostname if it was created with soup_address_new_from_sockaddr() or soup_address_new_any().) callback will be called when the resolution finishes (successfully or not).
| addr : | a SoupAddress |
| callback : | callback to call with the result |
| user_data : | data for callback |
guint soup_address_resolve_sync (SoupAddress *addr);
Synchronously resolves the missing half of addr, as with soup_address_resolve_async().
| addr : | a SoupAddress |
| Returns : | SOUP_STATUS_OK or SOUP_STATUS_CANT_RESOLVE |
const char* soup_address_get_name (SoupAddress *addr);
| addr : | a SoupAddress |
| Returns : | the hostname associated with addr, or NULL if it is not known. |
const char* soup_address_get_physical (SoupAddress *addr);
Returns the physical address associated with addr as a string. (Eg, "127.0.0.1"). If the address is not yet known, returns NULL.
| addr : | a SoupAddress |
| Returns : | the physical address, or NULL |
| << soup-dns | SoupAuth >> |