summaryrefslogtreecommitdiff
path: root/node
diff options
context:
space:
mode:
Diffstat (limited to 'node')
-rw-r--r--node/Constants.hpp1
-rw-r--r--node/EthernetTap.cpp60
2 files changed, 60 insertions, 1 deletions
diff --git a/node/Constants.hpp b/node/Constants.hpp
index f92540d6..adff34ae 100644
--- a/node/Constants.hpp
+++ b/node/Constants.hpp
@@ -71,6 +71,7 @@
#define NOMINMAX
#pragma warning(disable : 4290)
#pragma warning(disable : 4996)
+#pragma warning(disable : 4101)
#undef __UNIX_LIKE__
#define ZT_PATH_SEPARATOR '\\'
#define ZT_PATH_SEPARATOR_S "\\"
diff --git a/node/EthernetTap.cpp b/node/EthernetTap.cpp
index 38d37bd1..89265188 100644
--- a/node/EthernetTap.cpp
+++ b/node/EthernetTap.cpp
@@ -675,6 +675,64 @@ void EthernetTap::threadMain()
#ifdef __WINDOWS__
-// TODO
+#include <WinSock2.h>
+#include <Windows.h>
+#include <ws2ipdef.h>
+
+namespace ZeroTier {
+
+EthernetTap::EthernetTap(
+ const RuntimeEnvironment *renv,
+ const MAC &mac,
+ unsigned int mtu,
+ void (*handler)(void *,const MAC &,const MAC &,unsigned int,const Buffer<4096> &),
+ void *arg)
+ throw(std::runtime_error) :
+ _mac(mac),
+ _mtu(mtu),
+ _r(renv),
+ _handler(handler),
+ _arg(arg)
+{
+}
+
+EthernetTap::~EthernetTap()
+{
+}
+
+void EthernetTap::whack()
+{
+}
+
+bool EthernetTap::addIP(const InetAddress &ip)
+{
+ return false;
+}
+
+bool EthernetTap::removeIP(const InetAddress &ip)
+{
+ return false;
+}
+
+void EthernetTap::put(const MAC &from,const MAC &to,unsigned int etherType,const void *data,unsigned int len)
+{
+}
+
+std::string EthernetTap::deviceName() const
+{
+ return std::string();
+}
+
+bool EthernetTap::updateMulticastGroups(std::set<MulticastGroup> &groups)
+{
+ return false;
+}
+
+void EthernetTap::threadMain()
+ throw()
+{
+}
+
+} // namespace ZeroTier
#endif // __WINDOWS__