changeset 542:80c3caafe9d3

Common: rename network_error to network_errc
author David Demelier <markand@malikania.fr>
date Tue, 21 Nov 2017 12:29:50 +0100
parents 1c2598716ffc
children 7051034bf2ee
files irccdctl/cli.cpp libcommon/CMakeLists.txt libcommon/irccd/errors.cpp libcommon/irccd/errors.hpp libcommon/irccd/network_errc.cpp libcommon/irccd/network_errc.hpp libirccd/irccd/transport_client.cpp libirccd/irccd/transport_client.hpp libirccd/irccd/transport_server.cpp libirccdctl/irccd/ctl/controller.cpp libirccdctl/irccd/ctl/network_connection.hpp
diffstat 11 files changed, 150 insertions(+), 147 deletions(-) [+]
line wrap: on
line diff
--- a/irccdctl/cli.cpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/irccdctl/cli.cpp	Tue Nov 21 12:29:50 2017 +0100
@@ -18,8 +18,8 @@
 
 #include <boost/system/system_error.hpp>
 
-#include <irccd/errors.hpp>
 #include <irccd/json_util.hpp>
+#include <irccd/network_errc.hpp>
 #include <irccd/options.hpp>
 #include <irccd/string_util.hpp>
 
@@ -45,7 +45,7 @@
         }
 
         if (message["error"].is_number_integer())
-            throw boost::system::system_error(static_cast<network_error>(message["error"].template get<int>()));
+            throw boost::system::system_error(static_cast<network_errc>(message["error"].template get<int>()));
         if (message["error"].is_string())
             throw std::runtime_error(message["error"].template get<std::string>());
 
--- a/libcommon/CMakeLists.txt	Mon Nov 20 19:35:58 2017 +0100
+++ b/libcommon/CMakeLists.txt	Tue Nov 21 12:29:50 2017 +0100
@@ -22,12 +22,12 @@
 
 set(
     HEADERS
-    ${libcommon_SOURCE_DIR}/irccd/errors.hpp
     ${libcommon_SOURCE_DIR}/irccd/fs_util.hpp
     ${libcommon_SOURCE_DIR}/irccd/ini.hpp
     ${libcommon_SOURCE_DIR}/irccd/json_util.hpp
     ${libcommon_SOURCE_DIR}/irccd/logger.hpp
     ${libcommon_SOURCE_DIR}/irccd/net.hpp
+    ${libcommon_SOURCE_DIR}/irccd/network_errc.hpp
     ${libcommon_SOURCE_DIR}/irccd/net_util.hpp
     ${libcommon_SOURCE_DIR}/irccd/options.hpp
     ${libcommon_SOURCE_DIR}/irccd/signals.hpp
@@ -39,10 +39,10 @@
 
 set(
     SOURCES
-    ${libcommon_SOURCE_DIR}/irccd/errors.cpp
     ${libcommon_SOURCE_DIR}/irccd/ini.cpp
     ${libcommon_SOURCE_DIR}/irccd/json_util.cpp
     ${libcommon_SOURCE_DIR}/irccd/logger.cpp
+    ${libcommon_SOURCE_DIR}/irccd/network_errc.cpp
     ${libcommon_SOURCE_DIR}/irccd/options.cpp
     ${libcommon_SOURCE_DIR}/irccd/string_util.cpp
     ${libcommon_SOURCE_DIR}/irccd/system.cpp
--- a/libcommon/irccd/errors.cpp	Mon Nov 20 19:35:58 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,59 +0,0 @@
-/*
- * errors.cpp -- describe some error codes
- *
- * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include "errors.hpp"
-
-namespace irccd {
-
-const boost::system::error_category& network_category() noexcept
-{
-    static const class network_category : public boost::system::error_category {
-    public:
-        const char* name() const noexcept override
-        {
-            return "network_category";
-        }
-
-        std::string message(int code) const override
-        {
-            switch (static_cast<network_error>(code)) {
-            case network_error::no_error:
-                return "no error";
-            case network_error::invalid_program:
-                return "invalid program";
-            case network_error::invalid_version:
-                return "invalid version";
-            case network_error::invalid_auth:
-                return "invalid authentication";
-            case network_error::invalid_message:
-                return "invalid message";
-            default:
-                return "unknown error";
-            }
-        }
-    } category;
-
-    return category;
-}
-
-boost::system::error_code make_error_code(network_error errc) noexcept
-{
-    return {static_cast<int>(errc), network_category()};
-}
-
-} // !irccd
--- a/libcommon/irccd/errors.hpp	Mon Nov 20 19:35:58 2017 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,72 +0,0 @@
-/*
- * errors.hpp -- describe some error codes
- *
- * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#ifndef IRCCD_COMMON_ERRORS_HPP
-#define IRCCD_COMMON_ERRORS_HPP
-
-/**
- * \file errors.hpp
- * \brief Describe some error codes.
- */
-
-#include <boost/system/error_code.hpp>
-
-#include <type_traits>
-
-namespace irccd {
-
-/**
- * \brief Error code for transport/irccdctl
- */
-enum class network_error {
-    no_error = 0,           //!< no error (default)
-    invalid_program,        //!< connected daemon is not irccd
-    invalid_version,        //!< irccd daemon is incompatible
-    invalid_auth,           //!< invalid credentials in auth command
-    invalid_message         //!< the message was not JSON
-};
-
-/**
- * Get the network category singleton.
- *
- * \return the category for network_error enum
- */
-const boost::system::error_category& network_category() noexcept;
-
-/**
- * Construct an error_code from network_error enum.
- *
- * \return the error code
- */
-boost::system::error_code make_error_code(network_error errc) noexcept;
-
-} // !irccd
-
-namespace boost {
-
-namespace system {
-
-template <>
-struct is_error_code_enum<irccd::network_error> : public std::true_type {
-};
-
-} // !system
-
-} // !boost
-
-#endif // !IRCCD_COMMON_ERRORS_HPP
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libcommon/irccd/network_errc.cpp	Tue Nov 21 12:29:50 2017 +0100
@@ -0,0 +1,61 @@
+/*
+ * network_errc.cpp -- describe some error codes
+ *
+ * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "network_errc.hpp"
+
+namespace irccd {
+
+const boost::system::error_category& network_category() noexcept
+{
+    static const class network_category : public boost::system::error_category {
+    public:
+        const char* name() const noexcept override
+        {
+            return "network_category";
+        }
+
+        std::string message(int code) const override
+        {
+            switch (static_cast<network_errc>(code)) {
+            case network_errc::no_error:
+                return "no error";
+            case network_errc::invalid_program:
+                return "invalid program";
+            case network_errc::invalid_version:
+                return "invalid version";
+            case network_errc::invalid_auth:
+                return "invalid authentication";
+            case network_errc::invalid_message:
+                return "invalid message";
+            case network_errc::corrupt_message:
+                return "corrupt message";
+            default:
+                return "unknown error";
+            }
+        }
+    } category;
+
+    return category;
+}
+
+boost::system::error_code make_error_code(network_errc errc) noexcept
+{
+    return {static_cast<int>(errc), network_category()};
+}
+
+} // !irccd
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/libcommon/irccd/network_errc.hpp	Tue Nov 21 12:29:50 2017 +0100
@@ -0,0 +1,73 @@
+/*
+ * network_errc.hpp -- describe some error codes
+ *
+ * Copyright (c) 2013-2017 David Demelier <markand@malikania.fr>
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef IRCCD_COMMON_NETWORK_ERRC_HPP
+#define IRCCD_COMMON_NETWORK_ERRC_HPP
+
+/**
+ * \file network_errc.hpp
+ * \brief Describe some error codes.
+ */
+
+#include <boost/system/error_code.hpp>
+
+#include <type_traits>
+
+namespace irccd {
+
+/**
+ * \brief Error code for transport/irccdctl
+ */
+enum class network_errc {
+    no_error = 0,           //!< no error (default)
+    invalid_program,        //!< connected daemon is not irccd
+    invalid_version,        //!< irccd daemon is incompatible
+    invalid_auth,           //!< invalid credentials in auth command
+    invalid_message,        //!< the message was not JSON
+    corrupt_message,        //!< error occured while sending a message
+};
+
+/**
+ * Get the network category singleton.
+ *
+ * \return the category for network_errc enum
+ */
+const boost::system::error_category& network_category() noexcept;
+
+/**
+ * Construct an error_code from network_errc enum.
+ *
+ * \return the error code
+ */
+boost::system::error_code make_error_code(network_errc errc) noexcept;
+
+} // !irccd
+
+namespace boost {
+
+namespace system {
+
+template <>
+struct is_error_code_enum<irccd::network_errc> : public std::true_type {
+};
+
+} // !system
+
+} // !boost
+
+#endif // !IRCCD_COMMON_NETWORK_ERRC_HPP
--- a/libirccd/irccd/transport_client.cpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/libirccd/irccd/transport_client.cpp	Tue Nov 21 12:29:50 2017 +0100
@@ -76,11 +76,11 @@
             auto json = nlohmann::json::parse(message);
 
             if (!json.is_object())
-                handler(nullptr, network_error::invalid_message);
+                handler(nullptr, network_errc::invalid_message);
             else
                 handler(json, code);
         } catch (...) {
-            handler(nullptr, network_error::invalid_message);
+            handler(nullptr, network_errc::invalid_message);
         }
     });
 }
--- a/libirccd/irccd/transport_client.hpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/libirccd/irccd/transport_client.hpp	Tue Nov 21 12:29:50 2017 +0100
@@ -35,7 +35,7 @@
 
 #include "json.hpp"
 
-#include "errors.hpp"
+#include "network_errc.hpp"
 
 namespace irccd {
 
@@ -250,7 +250,7 @@
      * \param reason the error code
      * \param handler the optional handler
      */
-    inline void error(const std::string& cname, network_error reason, send_t handler)
+    inline void error(const std::string& cname, network_errc reason, send_t handler)
     {
         assert(!cname.empty());
 
--- a/libirccd/irccd/transport_server.cpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/libirccd/irccd/transport_server.cpp	Tue Nov 21 12:29:50 2017 +0100
@@ -32,12 +32,12 @@
     auto password = message["password"];
 
     if (!command.is_string() || !password.is_string()) {
-        handler(nullptr, network_error::invalid_message);
+        handler(nullptr, network_errc::invalid_message);
         return false;
     }
 
     if (command != "auth" || password.get<std::string>() != password_) {
-        handler(nullptr, network_error::invalid_auth);
+        handler(nullptr, network_errc::invalid_auth);
         return false;
     }
 
--- a/libirccdctl/irccd/ctl/controller.cpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/libirccdctl/irccd/ctl/controller.cpp	Tue Nov 21 12:29:50 2017 +0100
@@ -18,7 +18,7 @@
 
 #include <cassert>
 
-#include <irccd/errors.hpp>
+#include <irccd/network_errc.hpp>
 #include <irccd/sysconfig.hpp>
 #include <irccd/json_util.hpp>
 
@@ -74,7 +74,7 @@
 
         recv([handler, info, this] (auto code, auto message) {
             if (message["error"].is_string())
-                code = network_error::invalid_auth;
+                code = network_errc::invalid_auth;
 
             handler(std::move(code), std::move(info));
         });
@@ -90,9 +90,9 @@
         }
 
         if (json_util::to_string(message["program"]) != "irccd")
-            handler(network_error::invalid_program, std::move(message));
+            handler(network_errc::invalid_program, std::move(message));
         else if (json_util::to_int(message["major"]) != IRCCD_VERSION_MAJOR)
-            handler(network_error::invalid_version, std::move(message));
+            handler(network_errc::invalid_version, std::move(message));
         else {
             if (!password_.empty())
                 authenticate(std::move(handler), message);
--- a/libirccdctl/irccd/ctl/network_connection.hpp	Mon Nov 20 19:35:58 2017 +0100
+++ b/libirccdctl/irccd/ctl/network_connection.hpp	Tue Nov 21 12:29:50 2017 +0100
@@ -26,7 +26,7 @@
 
 #include <boost/asio.hpp>
 
-#include <irccd/errors.hpp>
+#include <irccd/network_errc.hpp>
 
 #include "connection.hpp"
 
@@ -97,7 +97,7 @@
         try {
             handler(code, nlohmann::json::parse(command));
         } catch (...) {
-            handler(network_error::invalid_message, nullptr);
+            handler(network_errc::invalid_message, nullptr);
         }
     });
 }