mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2025-06-05 03:53:44 +02:00
Add flags and metric to ZT-managed routes.
This commit is contained in:
parent
8c7433a525
commit
82635ce606
2 changed files with 14 additions and 0 deletions
|
@ -633,6 +633,16 @@ typedef struct
|
||||||
* Gateway IP address (port ignored) or NULL (family == 0) for LAN-local (no gateway)
|
* Gateway IP address (port ignored) or NULL (family == 0) for LAN-local (no gateway)
|
||||||
*/
|
*/
|
||||||
struct sockaddr_storage via;
|
struct sockaddr_storage via;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Route flags
|
||||||
|
*/
|
||||||
|
uint16_t flags;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Route metric (not currently used)
|
||||||
|
*/
|
||||||
|
uint16_t metric;
|
||||||
} ZT_VirtualNetworkRoute;
|
} ZT_VirtualNetworkRoute;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -376,6 +376,8 @@ public:
|
||||||
for(unsigned int i=0;i<routeCount;++i) {
|
for(unsigned int i=0;i<routeCount;++i) {
|
||||||
reinterpret_cast<const InetAddress *>(&(routes[i].target))->serialize(b);
|
reinterpret_cast<const InetAddress *>(&(routes[i].target))->serialize(b);
|
||||||
reinterpret_cast<const InetAddress *>(&(routes[i].via))->serialize(b);
|
reinterpret_cast<const InetAddress *>(&(routes[i].via))->serialize(b);
|
||||||
|
b.append((uint16_t)routes[i].flags);
|
||||||
|
b.append((uint16_t)routes[i].metric);
|
||||||
}
|
}
|
||||||
|
|
||||||
b.append((uint16_t)staticIpCount);
|
b.append((uint16_t)staticIpCount);
|
||||||
|
@ -510,6 +512,8 @@ public:
|
||||||
for(unsigned int i=0;i<routeCount;++i) {
|
for(unsigned int i=0;i<routeCount;++i) {
|
||||||
p += reinterpret_cast<InetAddress *>(&(routes[i].target))->deserialize(b,p);
|
p += reinterpret_cast<InetAddress *>(&(routes[i].target))->deserialize(b,p);
|
||||||
p += reinterpret_cast<InetAddress *>(&(routes[i].via))->deserialize(b,p);
|
p += reinterpret_cast<InetAddress *>(&(routes[i].via))->deserialize(b,p);
|
||||||
|
routes[i].flags = b.template at<uint16_t>(p); p += 2;
|
||||||
|
routes[i].metric = b.template at<uint16_t>(p); p += 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
staticIpCount = (unsigned int)b.template at<uint16_t>(p); p += 2;
|
staticIpCount = (unsigned int)b.template at<uint16_t>(p); p += 2;
|
||||||
|
|
Loading…
Add table
Reference in a new issue