Index: /trunk/include/iprt/socket.h
===================================================================
--- /trunk/include/iprt/socket.h	(revision 39803)
+++ /trunk/include/iprt/socket.h	(revision 39804)
@@ -118,5 +118,8 @@
  *
  * @returns IPRT status code
- * @param   pszAddress      Name or IP address.
+ * @param   pszAddress      Name or IP address.  NULL or empty string (no
+ *                          spaces) is taken to mean INADDR_ANY, which is
+ *                          meaningful when binding a server socket for
+ *                          instance.
  * @param   uPort           Port number (host byte order).
  * @param   pAddr           Where to return the generic IPRT network address.
Index: /trunk/src/VBox/Runtime/r3/socket.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/socket.cpp	(revision 39803)
+++ /trunk/src/VBox/Runtime/r3/socket.cpp	(revision 39804)
@@ -623,5 +623,5 @@
      */
     AssertReturn(uPort > 0, VERR_INVALID_PARAMETER);
-    AssertPtrReturn(pszAddress, VERR_INVALID_POINTER);
+    AssertPtrNullReturn(pszAddress, VERR_INVALID_POINTER);
 
 #ifdef RT_OS_WINDOWS
@@ -647,5 +647,6 @@
      * It probably needs to be converted to getaddrinfo(). */
     RTNETADDRIPV4 IPv4Quad;
-    if (rtSocketIsIPv4Numerical(pszAddress, &IPv4Quad))
+    if (   !pszAddress
+        || rtSocketIsIPv4Numerical(pszAddress, &IPv4Quad))
     {
         Log3(("rtSocketIsIPv4Numerical: %#x (%RTnaipv4)\n", pszAddress, IPv4Quad.u, IPv4Quad));
