ixwebsocketserver::broadcast server to return a boolean to know whether the server could start/listen, and use that in ws

This commit is contained in:
Benjamin Sergeant 2021-03-19 11:52:41 -07:00
parent 7fee54464e
commit 88970604e3
3 changed files with 12 additions and 6 deletions

View File

@ -201,15 +201,15 @@ namespace ix
});
}
int WebSocketServer::listenAndStart()
bool WebSocketServer::listenAndStart()
{
auto res = listen();
if (!res.first)
{
return 1;
return false;
}
start();
return 0;
return true;
}
} // namespace ix

View File

@ -48,7 +48,7 @@ namespace ix
std::set<std::shared_ptr<WebSocket>> getClients();
void makeBroadcastServer();
int listenAndStart();
bool listenAndStart();
const static int kDefaultHandShakeTimeoutSecs;

View File

@ -2768,8 +2768,14 @@ int main(int argc, char** argv)
ix::WebSocketServer server(port, hostname);
server.setTLSOptions(tlsOptions);
server.makeBroadcastServer();
server.listenAndStart();
server.wait();
if (!server.listenAndStart())
{
spdlog::error("Error while starting the server");
}
else
{
server.wait();
}
}
else if (app.got_subcommand("send"))
{