Index: /trunk/src/VBox/NetworkServices/Dhcpd/Config.cpp
===================================================================
--- /trunk/src/VBox/NetworkServices/Dhcpd/Config.cpp	(revision 79621)
+++ /trunk/src/VBox/NetworkServices/Dhcpd/Config.cpp	(revision 79622)
@@ -108,8 +108,5 @@
         rc = m_strHome.assignNoThrow(szHome);
     else
-    {
-        LogFunc(("unable to locate the VirtualBox home directory: %Rrc", rc)); /* no release log at this point. */
-        RTMsgError("unable to locate the VirtualBox home directory: %Rrs", rc);
-    }
+        DHCP_LOG_MSG_ERROR(("unable to locate the VirtualBox home directory: %Rrc\n", rc));
     return rc;
 }
@@ -587,5 +584,5 @@
     if (pszFileName == NULL || pszFileName[0] == '\0')
     {
-        RTMsgError("Empty configuration filename");
+        DHCP_LOG_MSG_ERROR(("Config::i_read: Empty configuration filename\n"));
         return NULL;
     }
@@ -599,18 +596,15 @@
     catch (const xml::EIPRTFailure &e)
     {
-        LogFunc(("%s\n", e.what()));
-        RTMsgError("%s\n", e.what());
+        DHCP_LOG_MSG_ERROR(("Config::i_read: %s\n", e.what()));
         return NULL;
     }
     catch (const RTCError &e)
     {
-        LogFunc(("%s\n", e.what()));
-        RTMsgError("%s\n", e.what());
+        DHCP_LOG_MSG_ERROR(("Config::i_read: %s\n", e.what()));
         return NULL;
     }
     catch (...)
     {
-        LogFunc(("Unknown exception while reading and parsing '%s'\n", pszFileName));
-        RTMsgError("Unknown exception while reading and parsing '%s'\n", pszFileName);
+        DHCP_LOG_MSG_ERROR(("Config::i_read: Unknown exception while reading and parsing '%s'\n", pszFileName));
         return NULL;
     }
@@ -625,18 +619,15 @@
     catch (const RTCError &e)
     {
-        LogFunc(("%s\n", e.what()));
-        RTMsgError("%s\n", e.what());
+        DHCP_LOG_MSG_ERROR(("Config::i_read: %s\n", e.what()));
         return NULL;
     }
     catch (std::bad_alloc &)
     {
-        LogFunc(("std::bad_alloc\n"));
-        RTMsgError("std::bad_alloc reading config\n");
+        DHCP_LOG_MSG_ERROR(("Config::i_read: std::bad_alloc\n"));
         return NULL;
     }
     catch (...)
     {
-        LogFunc(("Unexpected exception\n"));
-        RTMsgError("Unexpected exception\n");
+        DHCP_LOG_MSG_ERROR(("Config::i_read: Unexpected exception\n"));
         return NULL;
     }
Index: /trunk/src/VBox/NetworkServices/Dhcpd/DHCPD.cpp
===================================================================
--- /trunk/src/VBox/NetworkServices/Dhcpd/DHCPD.cpp	(revision 79621)
+++ /trunk/src/VBox/NetworkServices/Dhcpd/DHCPD.cpp	(revision 79622)
@@ -53,9 +53,6 @@
             return VINF_SUCCESS;
 
-        /** @todo macro for this: */
-        LogRel((   "Ran out of memory loading leases from '%s'.  Try rename or delete the file.\n",
-                   pConfig->getLeasesFilename().c_str()));
-        RTMsgError("Ran out of memory loading leases from '%s'.  Try rename or delete the file.\n",
-                   pConfig->getLeasesFilename().c_str());
+        DHCP_LOG_MSG_ERROR(("Ran out of memory loading leases from '%s'.  Try rename or delete the file.\n",
+                            pConfig->getLeasesFilename().c_str()));
     }
     return rc;
Index: /trunk/src/VBox/NetworkServices/Dhcpd/DhcpdInternal.h
===================================================================
--- /trunk/src/VBox/NetworkServices/Dhcpd/DhcpdInternal.h	(revision 79621)
+++ /trunk/src/VBox/NetworkServices/Dhcpd/DhcpdInternal.h	(revision 79622)
@@ -78,3 +78,6 @@
 /** @} */
 
+/** LogRel + RTMsgError helper. */
+#define DHCP_LOG_MSG_ERROR(a_MsgArgs)       do { LogRel(a_MsgArgs);     RTMsgError a_MsgArgs; } while (0)
+
 #endif /* !VBOX_INCLUDED_SRC_Dhcpd_DhcpdInternal_h */
Index: /trunk/src/VBox/NetworkServices/Dhcpd/VBoxNetDhcpd.cpp
===================================================================
--- /trunk/src/VBox/NetworkServices/Dhcpd/VBoxNetDhcpd.cpp	(revision 79621)
+++ /trunk/src/VBox/NetworkServices/Dhcpd/VBoxNetDhcpd.cpp	(revision 79622)
@@ -380,6 +380,5 @@
         else
         {
-            LogRel(("ifWait failed: %Rrc\n", rc));
-            RTMsgError("ifWait failed: %Rrc", rc);
+            DHCP_LOG_MSG_ERROR(("ifWait failed: %Rrc\n", rc));
             return;
         }
@@ -663,11 +662,11 @@
             }
             else
-                RTMsgError("Terminating - vboxLwipCoreInitialize failed: %Rrc", rc);
+                DHCP_LOG_MSG_ERROR(("Terminating - vboxLwipCoreInitialize failed: %Rrc\n", rc));
         }
         else
-            RTMsgError("Terminating - ifInit failed: %Rrc", rc);
+            DHCP_LOG_MSG_ERROR(("Terminating - ifInit failed: %Rrc\n", rc));
     }
     else
-        RTMsgError("Terminating - Dhcpd::init failed: %Rrc", rc);
+        DHCP_LOG_MSG_ERROR(("Terminating - Dhcpd::init failed: %Rrc\n", rc));
     return rc;
 }
