|int||android_setsocknetwork (net_handle_t network, int fd)|
|int||android_setprocnetwork (net_handle_t network)|
|int||android_getaddrinfofornetwork (net_handle_t network, const char *node, const char *service, const struct addrinfo *hints, struct addrinfo **res)|
|__BEGIN_DECLS typedef uint64_t||net_handle_t|
|const char *||node,|
|const char *||service,|
|const struct addrinfo *||hints,|
|struct addrinfo **||res|
Perform hostname resolution via the DNS servers associated with |network|.
All arguments (apart from |network|) are used identically as those passed to getaddrinfo(3). Return and error values are identical to those of getaddrinfo(3), and in particular gai_strerror(3) can be used as expected. Similar to getaddrinfo(3):
- |hints| may be NULL (in which case man page documented defaults apply)
- either |node| or |service| may be NULL, but not both
- |res| must not be NULL
This is the equivalent of: android.net.Network::getAllByName()
Binds the current process to |network|. All sockets created in the future (and not explicitly bound via android_setsocknetwork()) will be bound to |network|. All host name resolutions will be limited to |network| as well. Note that if the network identified by |network| ever disconnects, all sockets created in this way will cease to work and all host name resolutions will fail. This is by design so an application doesn't accidentally use sockets it thinks are still bound to a particular network.
To clear a previous process binding, invoke with NETWORK_UNSPECIFIED.
This is the equivalent of: android.net.ConnectivityManager::setProcessDefaultNetwork()
All functions below that return an int return 0 on success or -1 on failure with an appropriate errno value set. Set the network to be used by the given socket file descriptor.
To clear a previous socket binding, invoke with NETWORK_UNSPECIFIED.
This is the equivalent of: android.net.Network::bindSocket()
|__BEGIN_DECLS typedef uint64_t net_handle_t|
The corresponding C type for android.net.Network::getNetworkHandle() return values. The Java signed long value can be safely cast to a net_handle_t:
[C] ((net_handle_t) java_long_network_handle) [C++] static_cast<net_handle_t>(java_long_network_handle)