mirror of https://github.com/oxen-io/lokinet
Merge pull request #1899 from majestrate/use-new-gui-2022-04-18
windows updates
This commit is contained in:
commit
1dfed9e061
|
@ -1,6 +1,6 @@
|
|||
if(NOT GUI_ZIP_URL)
|
||||
set(GUI_ZIP_URL "https://oxen.rocks/oxen-io/loki-network-control-panel/lokinet-gui-windows-32bit-v0.3.8.zip")
|
||||
set(GUI_ZIP_HASH_OPTS EXPECTED_HASH SHA256=60c2b738cf997e5684f307e5222498fd09143d495a932924105a49bf59ded8bb)
|
||||
set(GUI_ZIP_URL "https://oxen.rocks/oxen-io/lokinet-gui/dev/lokinet-windows-x64-20220331T180338Z-569f90ad8.zip")
|
||||
set(GUI_ZIP_HASH_OPTS EXPECTED_HASH SHA256=316f10489f5907bfa9c74b21f8ef2fdd7b7c7e6a0f5bcedaed2ee5f4004eab52)
|
||||
endif()
|
||||
|
||||
set(TUNTAP_URL "https://build.openvpn.net/downloads/releases/latest/tap-windows-latest-stable.exe")
|
||||
|
|
|
@ -169,18 +169,9 @@ namespace llarp::vpn
|
|||
return ret;
|
||||
}
|
||||
|
||||
class Win32Interface final : public NetworkInterface
|
||||
namespace
|
||||
{
|
||||
std::atomic<bool> m_Run;
|
||||
HANDLE m_Device, m_IOCP;
|
||||
std::vector<std::thread> m_Threads;
|
||||
thread::Queue<net::IPPacket> m_ReadQueue;
|
||||
|
||||
InterfaceInfo m_Info;
|
||||
|
||||
AbstractRouter* const _router;
|
||||
|
||||
static std::wstring
|
||||
std::wstring
|
||||
get_win_sys_path()
|
||||
{
|
||||
wchar_t win_sys_path[MAX_PATH] = {0};
|
||||
|
@ -193,6 +184,18 @@ namespace llarp::vpn
|
|||
}
|
||||
return win_sys_path;
|
||||
}
|
||||
} // namespace
|
||||
|
||||
class Win32Interface final : public NetworkInterface
|
||||
{
|
||||
std::atomic<bool> m_Run;
|
||||
HANDLE m_Device, m_IOCP;
|
||||
std::vector<std::thread> m_Threads;
|
||||
thread::Queue<net::IPPacket> m_ReadQueue;
|
||||
|
||||
InterfaceInfo m_Info;
|
||||
|
||||
AbstractRouter* const _router;
|
||||
|
||||
static std::string
|
||||
NetSHCommand()
|
||||
|
@ -514,6 +517,17 @@ namespace llarp::vpn
|
|||
::system(cmd.c_str());
|
||||
}
|
||||
|
||||
static std::string
|
||||
PowerShell()
|
||||
{
|
||||
std::wstring wcmd =
|
||||
get_win_sys_path() + L"\\WindowsPowerShell\\v1.0\\powershell.exe -Command ";
|
||||
|
||||
using convert_type = std::codecvt_utf8<wchar_t>;
|
||||
std::wstring_convert<convert_type, wchar_t> converter;
|
||||
return converter.to_bytes(wcmd);
|
||||
}
|
||||
|
||||
static std::string
|
||||
RouteCommand()
|
||||
{
|
||||
|
@ -623,12 +637,16 @@ namespace llarp::vpn
|
|||
void
|
||||
AddDefaultRouteViaInterface(std::string ifname) override
|
||||
{
|
||||
// kill ipv6
|
||||
Execute(PowerShell() + R"(Disable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6)");
|
||||
DefaultRouteViaInterface(ifname, "ADD");
|
||||
}
|
||||
|
||||
void
|
||||
DelDefaultRouteViaInterface(std::string ifname) override
|
||||
{
|
||||
// restore ipv6
|
||||
Execute(PowerShell() + R"(Enable-NetAdapterBinding -Name "*" -ComponentID ms_tcpip6)");
|
||||
DefaultRouteViaInterface(ifname, "DELETE");
|
||||
}
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue