From: Yu Watanabe Date: Wed, 28 Apr 2021 16:17:36 +0000 (+0900) Subject: network: unify log_link_message_full_errno() and log_message_warning_errno() X-Git-Tag: v249-rc1~323^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fd221544f22ecc01998956ffd5e5c2470e94501b;p=thirdparty%2Fsystemd.git network: unify log_link_message_full_errno() and log_message_warning_errno() This also introduces log_message_error_errno() or friends. --- diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index e851e9e51b1..d29ba13ad33 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -2967,15 +2967,3 @@ static const char* const link_state_table[_LINK_STATE_MAX] = { }; DEFINE_STRING_TABLE_LOOKUP(link_state, LinkState); - -int log_link_message_full_errno(Link *link, sd_netlink_message *m, int level, int err, const char *msg) { - const char *err_msg = NULL; - - (void) sd_netlink_message_read_string(m, NLMSGERR_ATTR_MSG, &err_msg); - return log_link_full_errno(link, level, err, - "%s: %s%s%s%m", - msg, - strempty(err_msg), - err_msg && !endswith(err_msg, ".") ? "." : "", - err_msg ? " " : ""); -} diff --git a/src/network/networkd-link.h b/src/network/networkd-link.h index a9f6cf61eb6..8e91c05f0f9 100644 --- a/src/network/networkd-link.h +++ b/src/network/networkd-link.h @@ -237,10 +237,3 @@ int link_reconfigure(Link *link, bool force); int manager_udev_process_link(sd_device_monitor *monitor, sd_device *device, void *userdata); int manager_rtnl_process_link(sd_netlink *rtnl, sd_netlink_message *message, Manager *m); - -int log_link_message_full_errno(Link *link, sd_netlink_message *m, int level, int err, const char *msg); -#define log_link_message_error_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_ERR, err, msg) -#define log_link_message_warning_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_WARNING, err, msg) -#define log_link_message_notice_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_NOTICE, err, msg) -#define log_link_message_info_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_INFO, err, msg) -#define log_link_message_debug_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_DEBUG, err, msg) diff --git a/src/network/networkd-util.c b/src/network/networkd-util.c index a9dd6d45eb6..43ddf124d44 100644 --- a/src/network/networkd-util.c +++ b/src/network/networkd-util.c @@ -2,6 +2,7 @@ #include "condition.h" #include "conf-parser.h" +#include "networkd-link.h" #include "networkd-util.h" #include "parse-util.h" #include "string-table.h" @@ -223,3 +224,17 @@ unsigned hashmap_find_free_section_line(Hashmap *hashmap) { return n + 1; } + +int log_link_message_full_errno(Link *link, sd_netlink_message *m, int level, int err, const char *msg) { + const char *err_msg = NULL; + + /* link may be NULL. */ + + (void) sd_netlink_message_read_string(m, NLMSGERR_ATTR_MSG, &err_msg); + return log_link_full_errno(link, level, err, + "%s: %s%s%s%m", + msg, + strempty(err_msg), + err_msg && !endswith(err_msg, ".") ? "." : "", + err_msg ? " " : ""); +} diff --git a/src/network/networkd-util.h b/src/network/networkd-util.h index 4926fc5eb70..62f38bcdc2c 100644 --- a/src/network/networkd-util.h +++ b/src/network/networkd-util.h @@ -11,6 +11,8 @@ #include "network-util.h" #include "string-util.h" +typedef struct Link Link; + typedef struct NetworkConfigSection { unsigned line; bool invalid; @@ -73,9 +75,15 @@ static inline bool section_is_invalid(NetworkConfigSection *section) { DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func); \ DEFINE_TRIVIAL_CLEANUP_FUNC(type*, free_func##_or_set_invalid); -static inline int log_message_warning_errno(sd_netlink_message *m, int err, const char *msg) { - const char *err_msg = NULL; - - (void) sd_netlink_message_read_string(m, NLMSGERR_ATTR_MSG, &err_msg); - return log_warning_errno(err, "%s: %s%s%m", msg, strempty(err_msg), err_msg ? " " : ""); -} +int log_link_message_full_errno(Link *link, sd_netlink_message *m, int level, int err, const char *msg); +#define log_link_message_error_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_ERR, err, msg) +#define log_link_message_warning_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_WARNING, err, msg) +#define log_link_message_notice_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_NOTICE, err, msg) +#define log_link_message_info_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_INFO, err, msg) +#define log_link_message_debug_errno(link, m, err, msg) log_link_message_full_errno(link, m, LOG_DEBUG, err, msg) +#define log_message_full_errno(m, level, err, msg) log_link_message_full_errno(NULL, m, level, err, msg) +#define log_message_error_errno(m, err, msg) log_message_full_errno(m, LOG_ERR, err, msg) +#define log_message_warning_errno(m, err, msg) log_message_full_errno(m, LOG_WARNING, err, msg) +#define log_message_notice_errno(m, err, msg) log_message_full_errno(m, LOG_NOTICE, err, msg) +#define log_message_info_errno(m, err, msg) log_message_full_errno(m, LOG_INFO, err, msg) +#define log_message_debug_errno(m, err, msg) log_message_full_errno(m, LOG_DEBUG, err, msg)