server: proxy: show indicative log on bind failure.
authorKobi Mizrachi <kmizrachi18@gmail.com>
Mon, 27 Jan 2020 06:23:28 +0000 (08:23 +0200)
committerakallabeth <akallabeth@users.noreply.github.com>
Mon, 27 Jan 2020 06:57:45 +0000 (07:57 +0100)
libfreerdp/core/info.c
server/proxy/freerdp_proxy.c
server/proxy/pf_server.c

index ecda889..6bc01e1 100644 (file)
@@ -1542,5 +1542,4 @@ BOOL rdp_send_server_status_info(rdpContext* context, UINT32 status)
 
        Stream_Write_UINT32(s, status);
        return rdp_send_data_pdu(rdp, s, DATA_PDU_TYPE_STATUS_INFO, rdp->mcs->userId);
-       ;
 }
index e377cd2..e7e6f2d 100644 (file)
@@ -28,7 +28,6 @@
 #include <winpr/collections.h>
 #include <stdlib.h>
 #include <signal.h>
-#include <winpr/cmdline.h>
 
 #define TAG PROXY_TAG("server")
 
index 5c9a531..d8193a3 100644 (file)
@@ -25,6 +25,7 @@
 #include <winpr/string.h>
 #include <winpr/winsock.h>
 #include <winpr/thread.h>
+#include <errno.h>
 
 #include <freerdp/freerdp.h>
 #include <freerdp/channels/wtsvc.h>
@@ -453,8 +454,19 @@ BOOL pf_server_start(proxyServer* server)
 
        if (!server->listener->Open(server->listener, server->config->Host, server->config->Port))
        {
-               WLog_ERR(TAG,
-                        "listener->Open failed! Port might be already used, or insufficient permissions.");
+               switch (errno)
+               {
+                       case EADDRINUSE:
+                               WLog_ERR(TAG, "failed to start listener: address already in use!");
+                               break;
+                       case EACCES:
+                               WLog_ERR(TAG, "failed to start listener: insufficent permissions!");
+                               break;
+                       default:
+                               WLog_ERR(TAG, "failed to start listener: errno=%d", errno);
+                               break;
+               }
+
                goto error;
        }