diff options
Diffstat (limited to 'windows')
| -rw-r--r-- | windows/libshared/src/libshared/network/interfaceutils.cpp | 21 | ||||
| -rw-r--r-- | windows/libshared/src/libshared/network/interfaceutils.h | 2 | ||||
| -rw-r--r-- | windows/winnet/src/winnet/converters.cpp | 13 | ||||
| -rw-r--r-- | windows/winnet/src/winnet/converters.h | 1 | ||||
| -rw-r--r-- | windows/winnet/src/winnet/winnet.cpp | 118 | ||||
| -rw-r--r-- | windows/winnet/src/winnet/winnet.def | 2 | ||||
| -rw-r--r-- | windows/winnet/src/winnet/winnet.h | 25 |
7 files changed, 0 insertions, 182 deletions
diff --git a/windows/libshared/src/libshared/network/interfaceutils.cpp b/windows/libshared/src/libshared/network/interfaceutils.cpp index e381a2abca..fcfcb47a0e 100644 --- a/windows/libshared/src/libshared/network/interfaceutils.cpp +++ b/windows/libshared/src/libshared/network/interfaceutils.cpp @@ -55,25 +55,4 @@ std::set<InterfaceUtils::NetworkAdapter> InterfaceUtils::GetAllAdapters(ULONG fa return adapters; } -//static -void InterfaceUtils::AddDeviceIpAddresses(NET_LUID device, const std::vector<SOCKADDR_INET> &addresses) -{ - for (const auto &address : addresses) - { - MIB_UNICASTIPADDRESS_ROW row; - InitializeUnicastIpAddressEntry(&row); - - row.InterfaceLuid = device; - row.Address = address; - row.DadState = IpDadStatePreferred; - - const auto status = CreateUnicastIpAddressEntry(&row); - - if (NO_ERROR != status) - { - THROW_WINDOWS_ERROR(status, "Assign IP address on network interface"); - } - } -} - } diff --git a/windows/libshared/src/libshared/network/interfaceutils.h b/windows/libshared/src/libshared/network/interfaceutils.h index 0fff359d08..1ab637eaf6 100644 --- a/windows/libshared/src/libshared/network/interfaceutils.h +++ b/windows/libshared/src/libshared/network/interfaceutils.h @@ -62,8 +62,6 @@ public: }; static std::set<NetworkAdapter> GetAllAdapters(ULONG family, ULONG flags); - - static void AddDeviceIpAddresses(NET_LUID device, const std::vector<SOCKADDR_INET> &addresses); }; } diff --git a/windows/winnet/src/winnet/converters.cpp b/windows/winnet/src/winnet/converters.cpp index dc3f333c6c..c09ae6339d 100644 --- a/windows/winnet/src/winnet/converters.cpp +++ b/windows/winnet/src/winnet/converters.cpp @@ -129,19 +129,6 @@ std::vector<Route> ConvertRoutes(const WINNET_ROUTE *routes, uint32_t numRoutes) return out; } -std::vector<SOCKADDR_INET> ConvertAddresses(const WINNET_IP *addresses, uint32_t numAddresses) -{ - std::vector<SOCKADDR_INET> out; - out.reserve(numAddresses); - - for (uint32_t i = 0; i < numAddresses; ++i) - { - out.emplace_back(IpToNative(addresses[i])); - } - - return out; -} - std::vector<WINNET_IP> ConvertNativeAddresses(const SOCKADDR_INET *addresses, uint32_t numAddresses) { std::vector<WINNET_IP> out; diff --git a/windows/winnet/src/winnet/converters.h b/windows/winnet/src/winnet/converters.h index e094728902..a608958cee 100644 --- a/windows/winnet/src/winnet/converters.h +++ b/windows/winnet/src/winnet/converters.h @@ -11,7 +11,6 @@ namespace winnet routing::Network ConvertNetwork(const WINNET_IP_NETWORK &in); std::optional<routing::Node> ConvertNode(const WINNET_NODE *in); std::vector<routing::Route> ConvertRoutes(const WINNET_ROUTE *routes, uint32_t numRoutes); -std::vector<SOCKADDR_INET> ConvertAddresses(const WINNET_IP *addresses, uint32_t numAddresses); std::vector<WINNET_IP> ConvertNativeAddresses(const SOCKADDR_INET *addresses, uint32_t numAddresses); } diff --git a/windows/winnet/src/winnet/winnet.cpp b/windows/winnet/src/winnet/winnet.cpp index 1c0555a10c..aae9f0f44e 100644 --- a/windows/winnet/src/winnet/winnet.cpp +++ b/windows/winnet/src/winnet/winnet.cpp @@ -79,75 +79,6 @@ WinNet_GetBestDefaultRoute( extern "C"
WINNET_LINKAGE
-WINNET_STATUS
-WINNET_API
-WinNet_InterfaceLuidToIpAddress(
- WINNET_ADDR_FAMILY family,
- uint64_t interfaceLuid,
- WINNET_IP *ip,
- MullvadLogSink logSink,
- void *logSinkContext
-)
-{
- try
- {
- if (nullptr == ip)
- {
- THROW_ERROR("Invalid argument: ip");
- }
-
- static const std::pair<WINNET_ADDR_FAMILY, ADDRESS_FAMILY> familyMap[] =
- {
- { WINNET_ADDR_FAMILY_IPV4, static_cast<ADDRESS_FAMILY>(AF_INET) },
- { WINNET_ADDR_FAMILY_IPV6, static_cast<ADDRESS_FAMILY>(AF_INET6) }
- };
- const auto win_family = common::ValueMapper::Map<>(family, familyMap);
-
- MIB_UNICASTIPADDRESS_TABLE *table = nullptr;
- const auto status = GetUnicastIpAddressTable(win_family, &table);
-
- if (NO_ERROR != status)
- {
- THROW_WINDOWS_ERROR(status, "GetUnicastIpAddressTable");
- }
-
- common::memory::ScopeDestructor destructor;
-
- destructor += [table]() {
- FreeMibTable(table);
- };
-
- for (ULONG i = 0; i < table->NumEntries; i++)
- {
- const auto entry = table->Table[i];
-
- if (interfaceLuid != entry.InterfaceLuid.Value)
- {
- continue;
- }
-
- // Found IP address
- const auto ips = winnet::ConvertNativeAddresses(&entry.Address, 1);
- *ip = ips[0];
-
- return WINNET_STATUS_SUCCESS;
- }
-
- return WINNET_STATUS_NOT_FOUND;
- }
- catch (const std::exception & err)
- {
- shared::logging::UnwindAndLog(logSink, logSinkContext, err);
- return WINNET_STATUS_FAILURE;
- }
- catch (...)
- {
- return WINNET_STATUS_FAILURE;
- }
-}
-
-extern "C"
-WINNET_LINKAGE
bool
WINNET_API
WinNet_ActivateRouteManager(
@@ -469,52 +400,3 @@ WinNet_DeactivateRouteManager( {
}
}
-
-extern "C"
-WINNET_LINKAGE
-bool
-WINNET_API
-WinNet_AddDeviceIpAddresses(
- const wchar_t *deviceAlias,
- const WINNET_IP *addresses,
- uint32_t numAddresses,
- MullvadLogSink logSink,
- void *logSinkContext
-)
-{
- try
- {
- if (nullptr == deviceAlias)
- {
- THROW_ERROR("Invalid argument: deviceAlias")
- }
-
- if (nullptr == addresses)
- {
- THROW_ERROR("Invalid argument: addresses")
- }
-
- NET_LUID luid;
-
- if (0 != ConvertInterfaceAliasToLuid(deviceAlias, &luid))
- {
- const auto msg = std::string("Unable to derive interface LUID from interface alias: ")
- .append(common::string::ToAnsi(deviceAlias));
-
- THROW_ERROR(msg.c_str());
- }
-
- InterfaceUtils::AddDeviceIpAddresses(luid, winnet::ConvertAddresses(addresses, numAddresses));
-
- return true;
- }
- catch (const std::exception &err)
- {
- shared::logging::UnwindAndLog(logSink, logSinkContext, err);
- return false;
- }
- catch (...)
- {
- return false;
- }
-}
diff --git a/windows/winnet/src/winnet/winnet.def b/windows/winnet/src/winnet/winnet.def index a5f9a63863..0bc759d8bc 100644 --- a/windows/winnet/src/winnet/winnet.def +++ b/windows/winnet/src/winnet/winnet.def @@ -2,6 +2,4 @@ LIBRARY winnet EXPORTS WinNet_ActivateRouteManager WinNet_DeactivateRouteManager - WinNet_AddDeviceIpAddresses WinNet_GetBestDefaultRoute - WinNet_InterfaceLuidToIpAddress diff --git a/windows/winnet/src/winnet/winnet.h b/windows/winnet/src/winnet/winnet.h index 0c72c91eb8..38d1386a58 100644 --- a/windows/winnet/src/winnet/winnet.h +++ b/windows/winnet/src/winnet/winnet.h @@ -134,18 +134,6 @@ WinNet_GetBestDefaultRoute( void *logSinkContext ); -extern "C" -WINNET_LINKAGE -WINNET_STATUS -WINNET_API -WinNet_InterfaceLuidToIpAddress( - WINNET_ADDR_FAMILY family, - uint64_t interfaceLuid, - WINNET_IP *ip, - MullvadLogSink logSink, - void *logSinkContext -); - enum WINNET_DEFAULT_ROUTE_CHANGED_EVENT_TYPE { // Best default route changed. @@ -196,16 +184,3 @@ void WINNET_API WinNet_DeactivateRouteManager( ); - -extern "C" -WINNET_LINKAGE -bool -WINNET_API -WinNet_AddDeviceIpAddresses( - const wchar_t *deviceAlias, - const WINNET_IP *addresses, - uint32_t numAddresses, - MullvadLogSink logSink, - void *logSinkContext -); - |
