1
0
mirror of https://github.com/mfontanini/libtins synced 2026-01-23 02:35:57 +01:00

android workaround (#471)

This commit is contained in:
Lattice 0
2022-04-24 12:44:52 -03:00
committed by GitHub
parent 7204fbd688
commit 2601493752
2 changed files with 18 additions and 12 deletions

View File

@@ -331,7 +331,7 @@ NetworkInterface::Info NetworkInterface::info() const {
} }
#else // _WIN32 #else // _WIN32
#ifndef ANDROID
struct ifaddrs* ifaddrs = 0; struct ifaddrs* ifaddrs = 0;
struct ifaddrs* if_it = 0; struct ifaddrs* if_it = 0;
getifaddrs(&ifaddrs); getifaddrs(&ifaddrs);
@@ -341,7 +341,9 @@ NetworkInterface::Info NetworkInterface::info() const {
if (ifaddrs) { if (ifaddrs) {
freeifaddrs(ifaddrs); freeifaddrs(ifaddrs);
} }
#else
throw new std::runtime_error("android ifaddr not supported");
#endif
#endif // _WIN32 #endif // _WIN32
// If we didn't even get the hw address or ip address, this went wrong // If we didn't even get the hw address or ip address, this went wrong

View File

@@ -413,17 +413,21 @@ set<string> network_interfaces() {
} }
#else #else
set<string> network_interfaces() { set<string> network_interfaces() {
set<string> output; #ifndef ANDROID
struct ifaddrs* ifaddrs = 0; set<string> output;
struct ifaddrs* if_it = 0; struct ifaddrs* ifaddrs = 0;
getifaddrs(&ifaddrs); struct ifaddrs* if_it = 0;
for (if_it = ifaddrs; if_it; if_it = if_it->ifa_next) { getifaddrs(&ifaddrs);
output.insert(if_it->ifa_name); for (if_it = ifaddrs; if_it; if_it = if_it->ifa_next) {
} output.insert(if_it->ifa_name);
if (ifaddrs) { }
freeifaddrs(ifaddrs); if (ifaddrs) {
} freeifaddrs(ifaddrs);
}
return output; return output;
#else
throw std::runtime_error("android ifaddr not supported");
#endif
} }
#endif // _WIN32 #endif // _WIN32