diff options
| author | Adam Ierymenko <adam.ierymenko@zerotier.com> | 2014-01-27 23:13:36 -0800 |
|---|---|---|
| committer | Adam Ierymenko <adam.ierymenko@zerotier.com> | 2014-01-27 23:13:36 -0800 |
| commit | f80ec871f6f4c63a28b9b8192477114b7aac696d (patch) | |
| tree | b2b02a40d9d9e0ee9f0dd0478fe192e966e274bc /node/Switch.cpp | |
| parent | e0cb5caef21243cf045cecc25ed064869d1594d4 (diff) | |
| download | infinitytier-f80ec871f6f4c63a28b9b8192477114b7aac696d.tar.gz infinitytier-f80ec871f6f4c63a28b9b8192477114b7aac696d.zip | |
Make EthernetTap creation occur in a background thread in Network since it's a time consuming operation on Windows. This fixes one of the last remaining Windows problems.
Diffstat (limited to 'node/Switch.cpp')
| -rw-r--r-- | node/Switch.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/node/Switch.cpp b/node/Switch.cpp index 5473402d..cf3580df 100644 --- a/node/Switch.cpp +++ b/node/Switch.cpp @@ -86,12 +86,11 @@ void Switch::onLocalEthernet(const SharedPtr<Network> &network,const MAC &from,c if (!nconf) return; - if (to == network->tap().mac()) { - LOG("%s: frame received from self, ignoring (bridge loop? OS bug?)",network->tap().deviceName().c_str()); + if (to == network->mac()) { + LOG("%s: frame received from self, ignoring (bridge loop? OS bug?)",network->tapDeviceName().c_str()); return; } - - if (from != network->tap().mac()) { + if (from != network->mac()) { LOG("ignored tap: %s -> %s %s (bridging not supported)",from.toString().c_str(),to.toString().c_str(),etherTypeName(etherType)); return; } |
