diff options
author | Sami Littow <[email protected]> | 2023-04-14 08:54:38 +0300 |
---|---|---|
committer | Sami Littow <[email protected]> | 2023-04-19 14:36:08 +0300 |
commit | 481ae1cb9e52dfe198030e9a4a6e562005f04ca7 (patch) | |
tree | 4365c32ac61766da8d539c4eb60a31a4edcd900d /src/libs/qlicenseservice/licenser.cpp | |
parent | b8e7c76ea05ab2ab1dbec0efe547ee2ff259e374 (diff) |
(clitoolhandler.h)
- Server response validity was only checked when requesting longterm reservation
- Could have exploited with telnet
- Server response JSON status field check moved to the beginning of method
(HttpClient, Licenser classes)
- Pass the REST endpoint to the HTTP client per request, rather than
trying to guess it in HTTP client
Change-Id: I13d05b33f1032a91d393e7315552f1b9d391142d
Reviewed-by: Qt CI Bot <[email protected]>
Reviewed-by: Arttu Tarkiainen <[email protected]>
Diffstat (limited to 'src/libs/qlicenseservice/licenser.cpp')
-rw-r--r-- | src/libs/qlicenseservice/licenser.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/libs/qlicenseservice/licenser.cpp b/src/libs/qlicenseservice/licenser.cpp index 9094bd7..df85f4e 100644 --- a/src/libs/qlicenseservice/licenser.cpp +++ b/src/libs/qlicenseservice/licenser.cpp @@ -31,10 +31,7 @@ Licenser::Licenser(uint16_t tcpPort, const std::string &settingsPath) } m_mocInterval = utils::strToInt(m_settings->get("moc_renewal_interval")) * SECS_IN_HOUR; // Start the HTTP client - m_http = new HttpClient(m_settings->get("server_addr"), - m_settings->get("reservation_access_point"), - m_settings->get("permanent_access_point"), - m_settings->get("version_query_access_point")); + m_http = new HttpClient(m_settings->get("server_addr")); // Start the TCP/IP server m_tcpServer = new TcpServer(tcpPort); if (!m_tcpServer->init()) { @@ -149,7 +146,6 @@ int Licenser::listen() if (m_floatingClients.size() > 0) { checkTasksDue(); } - std::cout << "Current clients in cache: " << m_floatingClients.size() << std::endl; return 0; } @@ -214,7 +210,6 @@ ClientHandler *Licenser::parseInputAndCreateCLient(uint16_t socketId, const std: int Licenser::sendServerRequest(const RequestInfo &request, std::string &reply) { std::string auth; - std::cout << "Payload: " << request.payload << std::endl; // Generate auth hash for HTTP headers std::string hash; @@ -223,7 +218,9 @@ int Licenser::sendServerRequest(const RequestInfo &request, std::string &reply) auth = "apikey " + hash; // Send the request - if (m_http->sendRequest(reply, request.payload, request.serverAddr, auth) != 0) { + if (m_http->sendAndReceive(reply, request.payload, + request.accessPoint, + request.serverAddr, auth) != 0) { return e_bad_connection; } return e_got_response; |