summaryrefslogtreecommitdiff
path: root/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
diff options
context:
space:
mode:
authorFelix Geyer <debfx-pkg@fobos.de>2011-10-17 14:18:31 +0200
committerFelix Geyer <debfx-pkg@fobos.de>2011-10-17 14:18:31 +0200
commit1cf00a61132b69bc7e27254fdd74bf105d2da28c (patch)
treea7d314cc5ec77b4ce3e1f037af600b53ae1d43f8 /src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
parentf8fd93b0b6b13ba94584bb61c1efd1a761f438c9 (diff)
downloadvirtualbox-1cf00a61132b69bc7e27254fdd74bf105d2da28c.tar.gz
Imported Upstream version 4.1.4-dfsgupstream/4.1.4-dfsg
Diffstat (limited to 'src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp')
-rw-r--r--src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp b/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
index e6579f732..d5996860f 100644
--- a/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
+++ b/src/VBox/HostDrivers/VBoxNetFlt/darwin/VBoxNetFlt-darwin.cpp
@@ -1,4 +1,4 @@
-/* $Id: VBoxNetFlt-darwin.cpp 38408 2011-08-10 20:07:04Z vboxsync $ */
+/* $Id: VBoxNetFlt-darwin.cpp $ */
/** @file
* VBoxNetFlt - Network Filter Driver (Host), Darwin Specific Code.
*/
@@ -996,7 +996,12 @@ int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *pvIfData, PINTNETSG pSG, u
/*
* Create a mbuf for the gather list and push it onto the wire.
*/
- if (fDst & INTNETTRUNKDIR_WIRE)
+ /*
+ * If the interface is in the promiscuous mode we need to send
+ * the packet down the stack so it reaches the driver and Berkeley
+ * Packet Filter (see #5817).
+ */
+ if ((fDst & INTNETTRUNKDIR_WIRE) || vboxNetFltDarwinIsPromiscuous(pThis))
{
mbuf_t pMBuf = vboxNetFltDarwinMBufFromSG(pThis, pSG);
if (pMBuf)