diff options
author | Beniamino Galvani <bgalvani@redhat.com> | 2018-09-21 18:30:49 +0200 |
---|---|---|
committer | Beniamino Galvani <bgalvani@redhat.com> | 2018-09-26 11:49:37 +0200 |
commit | 3b49d1075daa084edd7541a0915a97b3afd643e9 (patch) | |
tree | dc9474b67d8ff942ddb3ae9a48c9d1020554812c /src | |
parent | d7017005e1ffe169ee110bfccfb01fa2345ceb13 (diff) | |
download | NetworkManager-3b49d1075daa084edd7541a0915a97b3afd643e9.tar.gz |
core: improve nm_ip_config_dump()
Previously we had nm_ip{4,6}_config_dump() for debugging purposes, but
they were inconveniently printing to stdout and so the output was not
ordered in the journal.
Implement a unified nm_ip_config_dump() that logs through the usual
logging mechanism.
Diffstat (limited to 'src')
-rw-r--r-- | src/nm-ip4-config.c | 119 | ||||
-rw-r--r-- | src/nm-ip4-config.h | 6 | ||||
-rw-r--r-- | src/nm-ip6-config.c | 47 | ||||
-rw-r--r-- | src/nm-ip6-config.h | 1 |
4 files changed, 74 insertions, 99 deletions
diff --git a/src/nm-ip4-config.c b/src/nm-ip4-config.c index 573c479a92..1fec20d51f 100644 --- a/src/nm-ip4-config.c +++ b/src/nm-ip4-config.c @@ -1971,71 +1971,90 @@ nm_ip4_config_replace (NMIP4Config *dst, const NMIP4Config *src, gboolean *relev } void -nm_ip4_config_dump (const NMIP4Config *self, const char *detail) +nm_ip_config_dump (const NMIPConfig *self, + const char *detail, + NMLogLevel level, + NMLogDomain domain) { - guint32 tmp; - guint i; - const char *str; NMDedupMultiIter ipconf_iter; - const NMPlatformIP4Address *address; - const NMPlatformIP4Route *route; - - g_message ("--------- NMIP4Config %p (%s)", self, detail); + const NMPlatformIP4Address *addr4; + const NMPlatformIP6Address *addr6; + const NMPlatformIP4Route *route4; + const NMPlatformIP6Route *route6; + const NMIP4Config *ip4; + const NMIP6Config *ip6; + int addr_family = AF_UNSPEC; + char addr_family_char = '?'; + const char *path; + gconstpointer ptr; + guint i; - if (self == NULL) { - g_message (" (null)"); - return; + if (self) { + addr_family = nm_ip_config_get_addr_family (self); + addr_family_char = nm_utils_addr_family_to_char (addr_family); } - str = nm_dbus_object_get_path (NM_DBUS_OBJECT (self)); - if (str) - g_message (" path: %s", str); - - /* addresses */ - nm_ip_config_iter_ip4_address_for_each (&ipconf_iter, self, &address) - g_message (" a: %s", nm_platform_ip4_address_to_string (address, NULL, 0)); + nm_log (level, domain, NULL, NULL, + "---- NMIP%cConfig %p (%s)", + addr_family_char, + self, + detail); - /* nameservers */ - for (i = 0; i < nm_ip4_config_get_num_nameservers (self); i++) { - tmp = nm_ip4_config_get_nameserver (self, i); - g_message (" ns: %s", nm_utils_inet4_ntop (tmp, NULL)); - } - - /* routes */ - nm_ip_config_iter_ip4_route_for_each (&ipconf_iter, self, &route) - g_message (" rt: %s", nm_platform_ip4_route_to_string (route, NULL, 0)); + if (!self) + return; - /* domains */ - for (i = 0; i < nm_ip4_config_get_num_domains (self); i++) - g_message (" domain: %s", nm_ip4_config_get_domain (self, i)); + path = nm_dbus_object_get_path (NM_DBUS_OBJECT (self)); + if (path) + nm_log (level, domain, NULL, NULL, " path : %s", path); - /* dns searches */ - for (i = 0; i < nm_ip4_config_get_num_searches (self); i++) - g_message (" search: %s", nm_ip4_config_get_search (self, i)); + if (addr_family == AF_INET) { + ip4 = NM_IP4_CONFIG (self); + nm_ip_config_iter_ip4_address_for_each (&ipconf_iter, ip4, &addr4) { + nm_log (level, domain, NULL, NULL, " address : %s", + nm_platform_ip4_address_to_string (addr4, NULL, 0)); + } + nm_ip_config_iter_ip4_route_for_each (&ipconf_iter, ip4, &route4) { + nm_log (level, domain, NULL, NULL, " route : %s", + nm_platform_ip4_route_to_string (route4, NULL, 0)); + } + } else { + ip6 = NM_IP6_CONFIG (self); + nm_ip_config_iter_ip6_address_for_each (&ipconf_iter, ip6, &addr6) { + nm_log (level, domain, NULL, NULL, " address : %s", + nm_platform_ip6_address_to_string (addr6, NULL, 0)); + } + nm_ip_config_iter_ip6_route_for_each (&ipconf_iter, ip6, &route6) { + nm_log (level, domain, NULL, NULL, " route : %s", + nm_platform_ip6_route_to_string (route6, NULL, 0)); + } + } - /* dns options */ - for (i = 0; i < nm_ip4_config_get_num_dns_options (self); i++) - g_message (" dnsopt: %s", nm_ip4_config_get_dns_option (self, i)); + for (i = 0; i < nm_ip_config_get_num_nameservers (self); i++) { + ptr = nm_ip_config_get_nameserver (self, i); + nm_log (level, domain, NULL, NULL, " dns : %s", + nm_utils_inet_ntop (addr_family, ptr, NULL)); + } - g_message (" dnspri: %d", nm_ip4_config_get_dns_priority (self)); + for (i = 0; i < nm_ip_config_get_num_domains (self); i++) + nm_log (level, domain, NULL, NULL, " domain : %s", nm_ip_config_get_domain (self, i)); - g_message (" mtu: %"G_GUINT32_FORMAT" (source: %d)", nm_ip4_config_get_mtu (self), (int) nm_ip4_config_get_mtu_source (self)); + for (i = 0; i < nm_ip_config_get_num_searches (self); i++) + nm_log (level, domain, NULL, NULL, " search : %s", nm_ip_config_get_search (self, i)); - /* NIS */ - for (i = 0; i < nm_ip4_config_get_num_nis_servers (self); i++) { - tmp = nm_ip4_config_get_nis_server (self, i); - g_message (" nis: %s", nm_utils_inet4_ntop (tmp, NULL)); - } + for (i = 0; i < nm_ip_config_get_num_dns_options (self); i++) + nm_log (level, domain, NULL, NULL, "dns-option: %s", nm_ip_config_get_dns_option (self, i)); - g_message (" nisdmn: %s", nm_ip4_config_get_nis_domain (self) ?: "(none)"); + nm_log (level, domain, NULL, NULL, " dns-prio : %d", nm_ip_config_get_dns_priority (self)); - /* WINS */ - for (i = 0; i < nm_ip4_config_get_num_wins (self); i++) { - tmp = nm_ip4_config_get_wins (self, i); - g_message (" wins: %s", nm_utils_inet4_ntop (tmp, NULL)); + if (addr_family == AF_INET) { + ip4 = NM_IP4_CONFIG (self); + nm_log (level, domain, NULL, NULL, + " mtu : %"G_GUINT32_FORMAT" (source: %d)", + nm_ip4_config_get_mtu (ip4), + (int) nm_ip4_config_get_mtu_source (ip4)); + nm_log (level, domain, NULL, NULL, " metered : %d", + (int) nm_ip4_config_get_metered (ip4)); } - - g_message (" mtrd: %d", (int) nm_ip4_config_get_metered (self)); } /*****************************************************************************/ diff --git a/src/nm-ip4-config.h b/src/nm-ip4-config.h index d9ac969cb2..4983ca7add 100644 --- a/src/nm-ip4-config.h +++ b/src/nm-ip4-config.h @@ -194,7 +194,6 @@ NMIP4Config *nm_ip4_config_intersect_alloc (const NMIP4Config *a, const NMIP4Config *b, guint32 default_route_metric_penalty); gboolean nm_ip4_config_replace (NMIP4Config *dst, const NMIP4Config *src, gboolean *relevant_changes); -void nm_ip4_config_dump (const NMIP4Config *self, const char *detail); const NMPObject *nm_ip4_config_best_default_route_get (const NMIP4Config *self); const NMPObject *_nm_ip4_config_best_default_route_find (const NMIP4Config *self); @@ -297,6 +296,11 @@ gboolean nm_ip4_config_equal (const NMIP4Config *a, const NMIP4Config *b); gboolean _nm_ip_config_check_and_add_domain (GPtrArray *array, const char *domain); +void nm_ip_config_dump (const NMIPConfig *self, + const char *detail, + NMLogLevel level, + NMLogDomain domain); + /*****************************************************************************/ #include "nm-ip6-config.h" diff --git a/src/nm-ip6-config.c b/src/nm-ip6-config.c index 378b76d6ba..382512945e 100644 --- a/src/nm-ip6-config.c +++ b/src/nm-ip6-config.c @@ -1483,53 +1483,6 @@ nm_ip6_config_replace (NMIP6Config *dst, const NMIP6Config *src, gboolean *relev return has_relevant_changes || has_minor_changes; } -void -nm_ip6_config_dump (const NMIP6Config *self, const char *detail) -{ - const struct in6_addr *tmp; - guint32 i; - const char *str; - NMDedupMultiIter ipconf_iter; - const NMPlatformIP6Address *address; - const NMPlatformIP6Route *route; - - g_return_if_fail (self != NULL); - - g_message ("--------- NMIP6Config %p (%s)", self, detail); - - str = nm_dbus_object_get_path (NM_DBUS_OBJECT (self)); - if (str) - g_message (" path: %s", str); - - /* addresses */ - nm_ip_config_iter_ip6_address_for_each (&ipconf_iter, self, &address) - g_message (" a: %s", nm_platform_ip6_address_to_string (address, NULL, 0)); - - /* nameservers */ - for (i = 0; i < nm_ip6_config_get_num_nameservers (self); i++) { - tmp = nm_ip6_config_get_nameserver (self, i); - g_message (" ns: %s", nm_utils_inet6_ntop (tmp, NULL)); - } - - /* routes */ - nm_ip_config_iter_ip6_route_for_each (&ipconf_iter, self, &route) - g_message (" rt: %s", nm_platform_ip6_route_to_string (route, NULL, 0)); - - /* domains */ - for (i = 0; i < nm_ip6_config_get_num_domains (self); i++) - g_message (" domain: %s", nm_ip6_config_get_domain (self, i)); - - /* dns searches */ - for (i = 0; i < nm_ip6_config_get_num_searches (self); i++) - g_message (" search: %s", nm_ip6_config_get_search (self, i)); - - /* dns options */ - for (i = 0; i < nm_ip6_config_get_num_dns_options (self); i++) - g_message (" dnsopt: %s", nm_ip6_config_get_dns_option (self, i)); - - g_message (" dnspri: %d", nm_ip6_config_get_dns_priority (self)); -} - /*****************************************************************************/ void diff --git a/src/nm-ip6-config.h b/src/nm-ip6-config.h index 425b20496c..d796c33996 100644 --- a/src/nm-ip6-config.h +++ b/src/nm-ip6-config.h @@ -135,7 +135,6 @@ NMIP6Config *nm_ip6_config_intersect_alloc (const NMIP6Config *a, const NMIP6Config *b, guint32 default_route_metric_penalty); gboolean nm_ip6_config_replace (NMIP6Config *dst, const NMIP6Config *src, gboolean *relevant_changes); -void nm_ip6_config_dump (const NMIP6Config *self, const char *detail); const NMPObject *nm_ip6_config_best_default_route_get (const NMIP6Config *self); const NMPObject *_nm_ip6_config_best_default_route_find (const NMIP6Config *self); |