simulator: support IPv6 in enum_routes()
This commit is contained in:
parent
729a8e9152
commit
bd0c237134
|
@ -718,11 +718,22 @@ namespace libtorrent
|
||||||
for (int i = 0; i < int(ips.size()); ++i)
|
for (int i = 0; i < int(ips.size()); ++i)
|
||||||
{
|
{
|
||||||
ip_route r;
|
ip_route r;
|
||||||
r.destination = address_v4();
|
if (ips[i].is_v4())
|
||||||
r.netmask = address_v4::from_string("255.255.255.0");
|
{
|
||||||
address_v4::bytes_type b = ips[i].to_v4().to_bytes();
|
r.destination = address_v4();
|
||||||
b[3] = 1;
|
r.netmask = address_v4::from_string("255.255.255.0");
|
||||||
r.gateway = address_v4(b);
|
address_v4::bytes_type b = ips[i].to_v4().to_bytes();
|
||||||
|
b[3] = 1;
|
||||||
|
r.gateway = address_v4(b);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
r.destination = address_v6();
|
||||||
|
r.netmask = address_v6::from_string("FFFF:FFFF:FFFF:FFFF::0");
|
||||||
|
address_v6::bytes_type b = ips[i].to_v6().to_bytes();
|
||||||
|
b[14] = 1;
|
||||||
|
r.gateway = address_v6(b);
|
||||||
|
}
|
||||||
strcpy(r.name, "eth0");
|
strcpy(r.name, "eth0");
|
||||||
r.mtu = ios.sim().config().path_mtu(ips[i], ips[i]);
|
r.mtu = ios.sim().config().path_mtu(ips[i], ips[i]);
|
||||||
ret.push_back(r);
|
ret.push_back(r);
|
||||||
|
|
Loading…
Reference in New Issue