diff options
author | Grant Limberg <grant.limberg@zerotier.com> | 2017-01-09 12:41:45 -0800 |
---|---|---|
committer | Grant Limberg <grant.limberg@zerotier.com> | 2017-01-09 12:41:45 -0800 |
commit | dbd577c6b0a6d984452d04415733c275ba6577a4 (patch) | |
tree | e832f0aa37decbb8580ad5e284dfe88a06ae795e /service | |
parent | 7ebb207005620ce753bed57e25afddff1bf7e80e (diff) | |
parent | 0f6c53589eb9f4faf0b2025f9e1e19c0d30b7ebb (diff) | |
download | infinitytier-dbd577c6b0a6d984452d04415733c275ba6577a4.tar.gz infinitytier-dbd577c6b0a6d984452d04415733c275ba6577a4.zip |
Merge branch 'winroute' into dev
Diffstat (limited to 'service')
-rw-r--r-- | service/OneService.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/service/OneService.cpp b/service/OneService.cpp index 3a7edacb..96b3a960 100644 --- a/service/OneService.cpp +++ b/service/OneService.cpp @@ -1666,6 +1666,16 @@ public: case ZT_VIRTUAL_NETWORK_CONFIG_OPERATION_CONFIG_UPDATE: memcpy(&(n.config),nwc,sizeof(ZT_VirtualNetworkConfig)); if (n.tap) { // sanity check +#ifdef __WINDOWS__ + // wait for up to 5 seconds for the WindowsEthernetTap to actually be initialized + // + // without WindowsEthernetTap::isInitialized() returning true, the won't actually + // be online yet and setting managed routes on it will fail. + const int MAX_SLEEP_COUNT = 500; + for (int i = 0; !n.tap->isInitialized() && i < MAX_SLEEP_COUNT; i++) { + Sleep(10); + } +#endif syncManagedStuff(n,true,true); } else { _nets.erase(nwid); |