windows uses multiple commands for default route.

pull/1319/head
Jeff Becker 4 years ago
parent d1abee84d1
commit 400f5d3902
No known key found for this signature in database
GPG Key ID: F357B3B42F6F9B05

@ -316,35 +316,31 @@ DelRoute(std::string ip, std::string gateway)
void
AddDefaultRouteViaInterface(std::string ifname)
{
std::stringstream ss;
#ifdef __linux__
ss << "ip route add default dev " << ifname;
Execute("ip route add default dev " + ifname);
#elif _WIN32
ss << "route ADD 0.0.0.0 MASK 128.0.0.0 " << ifname;
ss << "route ADD 128.0.0.0 MASK 128.0.0.0 " << ifname;
Execute("route ADD 0.0.0.0 MASK 128.0.0.0 " + ifname);
Execute("route ADD 128.0.0.0 MASK 128.0.0.0 " + ifname);
#elif __APPLE__
ss << "route -n add -net 0.0.0.0 -interface " << ifname;
Execute("route -n add -net 0.0.0.0 -interface " + ifname);
#else
#error unsupported platform
#endif
Execute(ss.str());
}
void
DelDefaultRouteViaInterface(std::string ifname)
{
std::stringstream ss;
#ifdef __linux__
ss << "ip route del default dev " << ifname;
Execute("ip route del default dev " + ifname);
#elif _WIN32
ss << "route DELETE 0.0.0.0 MASK 128.0.0.0 " << ifname;
ss << "route DELETE 128.0.0.0 MASK 128.0.0.0 " << ifname;
Execute("route DELETE 0.0.0.0 MASK 128.0.0.0 " + ifname);
Execute("route DELETE 128.0.0.0 MASK 128.0.0.0 " + ifname);
#elif __APPLE__
ss << "route -n delete -net 0.0.0.0 -interface " << ifname;
Execute("route -n delete -net 0.0.0.0 -interface " + ifname);
#else
#error unsupported platform
#endif
Execute(ss.str());
}
std::vector<std::string>

Loading…
Cancel
Save