diff options
author | Ed Tanous <edtanous@google.com> | 2022-01-07 20:18:40 +0300 |
---|---|---|
committer | Ed Tanous <ed@tanous.net> | 2022-01-12 22:00:37 +0300 |
commit | ecd6a3a20ab128ae9d3e356d6250695800dc13be (patch) | |
tree | 658b040f57c6a4e3ee31b567606551f598a7b540 /http | |
parent | 543f44000a992870ff76e76888dd589a3a31ed4e (diff) | |
download | bmcweb-ecd6a3a20ab128ae9d3e356d6250695800dc13be.tar.xz |
Enable cppcoreguidelines-special-member-functions checks
Part of enforcing cpp core guidelines involves explicitly including all
constructors required on a non-trivial class. We were missing quite a
few. In all cases, the copy/move/and operator= methods are simply
deleted.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ie8d6e8bf2bc311fa21a9ae48b0d61ee5c1940999
Diffstat (limited to 'http')
-rw-r--r-- | http/app.hpp | 5 | ||||
-rw-r--r-- | http/http_connection.hpp | 5 | ||||
-rw-r--r-- | http/http_request.hpp | 3 | ||||
-rw-r--r-- | http/http_response.hpp | 4 | ||||
-rw-r--r-- | http/logging.hpp | 5 | ||||
-rw-r--r-- | http/routing.hpp | 5 | ||||
-rw-r--r-- | http/websocket.hpp | 5 |
7 files changed, 32 insertions, 0 deletions
diff --git a/http/app.hpp b/http/app.hpp index b4ccd95e6a..8dcec48e93 100644 --- a/http/app.hpp +++ b/http/app.hpp @@ -44,6 +44,11 @@ class App this->stop(); } + App(const App&) = delete; + App(App&&) = delete; + App& operator=(const App&) = delete; + App& operator=(const App&&) = delete; + template <typename Adaptor> void handleUpgrade(const Request& req, Response& res, Adaptor&& adaptor) { diff --git a/http/http_connection.hpp b/http/http_connection.hpp index 6de2bf7a0a..77886c5da1 100644 --- a/http/http_connection.hpp +++ b/http/http_connection.hpp @@ -81,6 +81,11 @@ class Connection : << connectionCount; } + Connection(const Connection&) = delete; + Connection(Connection&&) = delete; + Connection& operator=(const Connection&) = delete; + Connection& operator=(Connection&&) = delete; + void prepareMutualTls() { std::error_code error; diff --git a/http/http_request.hpp b/http/http_request.hpp index 4567314787..be1c2a2404 100644 --- a/http/http_request.hpp +++ b/http/http_request.hpp @@ -46,7 +46,10 @@ struct Request } Request(const Request&) = delete; + Request(const Request&&) = delete; Request& operator=(const Request&) = delete; + Request& operator=(const Request&&) = delete; + ~Request() = default; boost::beast::http::verb method() const { diff --git a/http/http_response.hpp b/http/http_response.hpp index a983d4ae51..08b76f2478 100644 --- a/http/http_response.hpp +++ b/http/http_response.hpp @@ -39,6 +39,10 @@ struct Response Response() : stringResponse(response_type{}) {} + ~Response() = default; + + Response(const Response&) = delete; + Response(Response&&) = delete; Response& operator=(const Response& r) = delete; Response& operator=(Response&& r) noexcept diff --git a/http/logging.hpp b/http/logging.hpp index 0121729542..e2bfdb1365 100644 --- a/http/logging.hpp +++ b/http/logging.hpp @@ -62,6 +62,11 @@ class Logger } } + Logger(const Logger&) = delete; + Logger(Logger&&) = delete; + Logger& operator=(const Logger&) = delete; + Logger& operator=(const Logger&&) = delete; + // template <typename T> Logger& operator<<([[maybe_unused]] T const& value) diff --git a/http/routing.hpp b/http/routing.hpp index 06f2a091ba..a7c0ced992 100644 --- a/http/routing.hpp +++ b/http/routing.hpp @@ -34,6 +34,11 @@ class BaseRule virtual ~BaseRule() = default; + BaseRule(const BaseRule&) = delete; + BaseRule(BaseRule&&) = delete; + BaseRule& operator=(const BaseRule&) = delete; + BaseRule& operator=(const BaseRule&&) = delete; + virtual void validate() = 0; std::unique_ptr<BaseRule> upgrade() { diff --git a/http/websocket.hpp b/http/websocket.hpp index 30a9b9f4b5..74bce581d2 100644 --- a/http/websocket.hpp +++ b/http/websocket.hpp @@ -29,6 +29,11 @@ struct Connection : std::enable_shared_from_this<Connection> req(reqIn.req), userName{std::move(user)}, userdataPtr(nullptr) {} + Connection(const Connection&) = delete; + Connection(Connection&&) = delete; + Connection& operator=(const Connection&) = delete; + Connection& operator=(const Connection&&) = delete; + virtual void sendBinary(const std::string_view msg) = 0; virtual void sendBinary(std::string&& msg) = 0; virtual void sendText(const std::string_view msg) = 0; |