Index: /trunk/src/VBox/Main/ConsoleImpl2.cpp
===================================================================
--- /trunk/src/VBox/Main/ConsoleImpl2.cpp	(revision 23719)
+++ /trunk/src/VBox/Main/ConsoleImpl2.cpp	(revision 23720)
@@ -1926,4 +1926,14 @@
 }
 
+/**
+ * Ellipsis to va_list wrapper for calling setVMRuntimeErrorCallback.
+ */
+/*static*/ void Console::setVMRuntimeErrorCallbackF(PVM pVM, void *pvConsole, uint32_t fFlags, const char *pszErrorId, const char *pszFormat, ...)
+{
+    va_list va;
+    va_start(va, pszFormat);
+    setVMRuntimeErrorCallback(pVM, pvConsole, fFlags, pszErrorId, pszFormat, va);
+    va_end(va);
+}
 
 /**
@@ -2294,4 +2304,23 @@
             /** @todo Check for malformed names. */
             const char *pszTrunk = pszHifName;
+
+            /* Issue a warning if the interface is down */
+            {
+                int iSock = socket(AF_INET, SOCK_DGRAM, 0);
+                if (iSock >= 0)
+                {
+                    struct ifreq Req;
+
+                    memset(&Req, 0, sizeof(Req));
+                    strncpy(Req.ifr_name, pszHifName, sizeof(Req.ifr_name) - 1);
+                    if (ioctl(iSock, SIOCGIFFLAGS, &Req) >= 0)
+                        if ((Req.ifr_flags & IFF_UP) == 0)
+                        {
+                            setVMRuntimeErrorCallbackF(pVM, pThis, 0, "BridgedInterfaceDown", "Bridged interface %s is down. Guest will not be able to use this interface", pszHifName);
+                        }
+
+                    close(iSock);
+                }
+            }
 
 # else
Index: /trunk/src/VBox/Main/include/ConsoleImpl.h
===================================================================
--- /trunk/src/VBox/Main/include/ConsoleImpl.h	(revision 23719)
+++ /trunk/src/VBox/Main/include/ConsoleImpl.h	(revision 23720)
@@ -471,4 +471,7 @@
                                                    const char *pszFormat, va_list args);
 
+    static DECLCALLBACK(void) setVMRuntimeErrorCallbackF (PVM pVM, void *pvUser, uint32_t fFatal,
+                               const char *pszErrorId,
+                               const char *pszFormat, ...);
     static DECLCALLBACK(void) setVMRuntimeErrorCallback (PVM pVM, void *pvUser, uint32_t fFatal,
                                const char *pszErrorId,
