Commit ddd9b5ac authored by George Kiagiadakis's avatar George Kiagiadakis Committed by Christian Beier

Fix rfbProcessNewConnection to return some value instead of void.

BUG: 256891
Signed-off-by: 's avatarChristian Beier <dontmind@freeshell.org>
parent 9f8d8d4e
......@@ -260,7 +260,8 @@ rfbCheckFds(rfbScreenInfoPtr rfbScreen,long usec)
if (rfbScreen->listenSock != -1 && FD_ISSET(rfbScreen->listenSock, &fds)) {
rfbProcessNewConnection(rfbScreen);
if (!rfbProcessNewConnection(rfbScreen))
return -1;
FD_CLR(rfbScreen->listenSock, &fds);
if (--nfds == 0)
......@@ -322,7 +323,7 @@ rfbCheckFds(rfbScreenInfoPtr rfbScreen,long usec)
return result;
}
void
rfbBool
rfbProcessNewConnection(rfbScreenInfoPtr rfbScreen)
{
const int one = 1;
......@@ -333,19 +334,19 @@ rfbProcessNewConnection(rfbScreenInfoPtr rfbScreen)
if ((sock = accept(rfbScreen->listenSock,
(struct sockaddr *)&addr, &addrlen)) < 0) {
rfbLogPerror("rfbCheckFds: accept");
return -1;
return FALSE;
}
if(!rfbSetNonBlocking(sock)) {
closesocket(sock);
return -1;
return FALSE;
}
if (setsockopt(sock, IPPROTO_TCP, TCP_NODELAY,
(char *)&one, sizeof(one)) < 0) {
rfbLogPerror("rfbCheckFds: setsockopt");
closesocket(sock);
return -1;
return FALSE;
}
#ifdef USE_LIBWRAP
......@@ -354,13 +355,15 @@ rfbProcessNewConnection(rfbScreenInfoPtr rfbScreen)
rfbLog("Rejected connection from client %s\n",
inet_ntoa(addr.sin_addr));
closesocket(sock);
return -1;
return FALSE;
}
#endif
rfbLog("Got connection from client %s\n", inet_ntoa(addr.sin_addr));
rfbNewClient(rfbScreen,sock);
return TRUE;
}
......
......@@ -1007,7 +1007,7 @@ extern rfbBool rfbSendTextChatMessage(rfbClientPtr cl, uint32_t length, char *bu
* Additions for Qt event loop integration
* Original idea taken from vino.
*/
void rfbProcessNewConnection(rfbScreenInfoPtr rfbScreen);
rfbBool rfbProcessNewConnection(rfbScreenInfoPtr rfbScreen);
rfbBool rfbUpdateClient(rfbClientPtr cl);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment