summaryrefslogtreecommitdiff
path: root/node/Node.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'node/Node.cpp')
-rw-r--r--node/Node.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/node/Node.cpp b/node/Node.cpp
index fd1daab3..9f95eaa7 100644
--- a/node/Node.cpp
+++ b/node/Node.cpp
@@ -1011,6 +1011,22 @@ bool Node::updateCheck()
return false;
}
+bool Node::injectPacketFromHost(uint64_t nwid,const unsigned char *from,const unsigned char *to,unsigned int etherType,const void *data,unsigned int len)
+{
+ if (!running())
+ return false;
+ if ((!from)||(!to))
+ return false;
+
+ _NodeImpl *impl = (_NodeImpl *)_impl;
+ RuntimeEnvironment *RR = (RuntimeEnvironment *)&(impl->renv);
+
+ SharedPtr<Network> network(RR->nc->network(nwid));
+ if (network)
+ return network->tapInjectPacketFromHost(MAC(from,6),MAC(to,6),etherType,data,len);
+ return false;
+}
+
class _VersionStringMaker
{
public: