From 3ada5b5a6a7e39b57dbfb30c2ab2743784f34317 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20=C5=A0imerda?= Date: Wed, 1 Aug 2012 21:10:15 +0200 Subject: [PATCH] distro: remove nm_backend_ipv6_use_tempaddr() This function was *not* distribution specific and was used only in one place. --- src/backends/NetworkManagerArch.c | 6 --- src/backends/NetworkManagerDebian.c | 6 --- src/backends/NetworkManagerExherbo.c | 6 --- src/backends/NetworkManagerFrugalware.c | 6 --- src/backends/NetworkManagerGeneric.c | 50 ------------------------- src/backends/NetworkManagerGeneric.h | 1 - src/backends/NetworkManagerGentoo.c | 6 --- src/backends/NetworkManagerLFS.c | 5 --- src/backends/NetworkManagerLinexa.c | 6 --- src/backends/NetworkManagerMandriva.c | 6 --- src/backends/NetworkManagerPaldo.c | 6 --- src/backends/NetworkManagerPardus.c | 6 --- src/backends/NetworkManagerRedHat.c | 6 --- src/backends/NetworkManagerSlackware.c | 6 --- src/backends/NetworkManagerSuSE.c | 6 --- src/backends/nm-backend.h | 1 - src/nm-device.c | 45 +++++++++++++++++++++- 17 files changed, 43 insertions(+), 131 deletions(-) diff --git a/src/backends/NetworkManagerArch.c b/src/backends/NetworkManagerArch.c index f3d1c57406..f550bdcf2b 100644 --- a/src/backends/NetworkManagerArch.c +++ b/src/backends/NetworkManagerArch.c @@ -42,9 +42,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerDebian.c b/src/backends/NetworkManagerDebian.c index f18a40e408..732d37374b 100644 --- a/src/backends/NetworkManagerDebian.c +++ b/src/backends/NetworkManagerDebian.c @@ -40,9 +40,3 @@ void nm_backend_enable_loopback (void) else nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerExherbo.c b/src/backends/NetworkManagerExherbo.c index 58cf00f72b..430977f6f1 100644 --- a/src/backends/NetworkManagerExherbo.c +++ b/src/backends/NetworkManagerExherbo.c @@ -35,9 +35,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerFrugalware.c b/src/backends/NetworkManagerFrugalware.c index b7a9774de7..73b2840188 100644 --- a/src/backends/NetworkManagerFrugalware.c +++ b/src/backends/NetworkManagerFrugalware.c @@ -30,9 +30,3 @@ void nm_backend_enable_loopback (void) { fwnet_loup (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerGeneric.c b/src/backends/NetworkManagerGeneric.c index 561b784363..74ff4c29d6 100644 --- a/src/backends/NetworkManagerGeneric.c +++ b/src/backends/NetworkManagerGeneric.c @@ -102,60 +102,10 @@ out: rtnl_addr_put (addr); } -/* - * nm_generic_ipv6_use_tempaddr - * - * Get net.ipv6.conf.default.use_tempaddr value from /etc/sysctl.conf or - * /lib/sysctl.d/sysctl.conf - * - */ -int nm_generic_ipv6_use_tempaddr (void) -{ - char *contents = NULL; - gsize len = 0; - const char *group_name = "[forged_group]\n"; - char *sysctl_data = NULL; - GKeyFile *keyfile; - GError *error = NULL; - int tmp, ret = -1; - - /* Read file contents to a string. */ - if (!g_file_get_contents ("/etc/sysctl.conf", &contents, &len, NULL)) - if (!g_file_get_contents ("/lib/sysctl.d/sysctl.conf", &contents, &len, NULL)) - return -1; - - /* Prepend a group so that we can use GKeyFile parser. */ - sysctl_data = g_strdup_printf ("%s%s", group_name, contents); - - keyfile = g_key_file_new (); - if (keyfile == NULL) - goto done; - - if (!g_key_file_load_from_data (keyfile, sysctl_data, len + strlen (group_name), G_KEY_FILE_NONE, NULL)) - goto done; - - tmp = g_key_file_get_integer (keyfile, "forged_group", "net.ipv6.conf.default.use_tempaddr", &error); - if (error == NULL) - ret = tmp; - -done: - g_free (contents); - g_free (sysctl_data); - g_clear_error (&error); - g_key_file_free (keyfile); - - return ret; -} - #ifdef TARGET_GENERIC void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} #endif diff --git a/src/backends/NetworkManagerGeneric.h b/src/backends/NetworkManagerGeneric.h index 93cedd317a..b060b2af53 100644 --- a/src/backends/NetworkManagerGeneric.h +++ b/src/backends/NetworkManagerGeneric.h @@ -27,6 +27,5 @@ #include "nm-backend.h" void nm_generic_enable_loopback (void); -int nm_generic_ipv6_use_tempaddr (void); #endif /* NM_GENERIC_H */ diff --git a/src/backends/NetworkManagerGentoo.c b/src/backends/NetworkManagerGentoo.c index 351ac9aeee..51d9a37ed2 100644 --- a/src/backends/NetworkManagerGentoo.c +++ b/src/backends/NetworkManagerGentoo.c @@ -63,9 +63,3 @@ void nm_backend_enable_loopback (void) g_free (comm); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerLFS.c b/src/backends/NetworkManagerLFS.c index fb3b0894a9..070469fc53 100644 --- a/src/backends/NetworkManagerLFS.c +++ b/src/backends/NetworkManagerLFS.c @@ -37,8 +37,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} diff --git a/src/backends/NetworkManagerLinexa.c b/src/backends/NetworkManagerLinexa.c index 3f03ec930e..d8266c4693 100644 --- a/src/backends/NetworkManagerLinexa.c +++ b/src/backends/NetworkManagerLinexa.c @@ -36,9 +36,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerMandriva.c b/src/backends/NetworkManagerMandriva.c index 679674fcdb..6d48f76f8c 100644 --- a/src/backends/NetworkManagerMandriva.c +++ b/src/backends/NetworkManagerMandriva.c @@ -32,9 +32,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerPaldo.c b/src/backends/NetworkManagerPaldo.c index b692e80e7c..47fbe310e4 100644 --- a/src/backends/NetworkManagerPaldo.c +++ b/src/backends/NetworkManagerPaldo.c @@ -34,9 +34,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerPardus.c b/src/backends/NetworkManagerPardus.c index 92ecc49218..0d506778da 100644 --- a/src/backends/NetworkManagerPardus.c +++ b/src/backends/NetworkManagerPardus.c @@ -30,9 +30,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerRedHat.c b/src/backends/NetworkManagerRedHat.c index 144c69a18a..1cabefed10 100644 --- a/src/backends/NetworkManagerRedHat.c +++ b/src/backends/NetworkManagerRedHat.c @@ -30,9 +30,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerSlackware.c b/src/backends/NetworkManagerSlackware.c index 3d311b49ae..e95de363e9 100644 --- a/src/backends/NetworkManagerSlackware.c +++ b/src/backends/NetworkManagerSlackware.c @@ -30,9 +30,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/NetworkManagerSuSE.c b/src/backends/NetworkManagerSuSE.c index 2141f4f16f..b0233bb8f0 100644 --- a/src/backends/NetworkManagerSuSE.c +++ b/src/backends/NetworkManagerSuSE.c @@ -35,9 +35,3 @@ void nm_backend_enable_loopback (void) { nm_generic_enable_loopback (); } - -int nm_backend_ipv6_use_tempaddr (void) -{ - return nm_generic_ipv6_use_tempaddr (); -} - diff --git a/src/backends/nm-backend.h b/src/backends/nm-backend.h index 8f4b03b87f..1aed6f8cd2 100644 --- a/src/backends/nm-backend.h +++ b/src/backends/nm-backend.h @@ -24,6 +24,5 @@ /* Random disto-specific stuff */ void nm_backend_enable_loopback (void); -int nm_backend_ipv6_use_tempaddr (void); #endif /* NM_BACKEND_H */ diff --git a/src/nm-device.c b/src/nm-device.c index 605ed21717..7786b0ef76 100644 --- a/src/nm-device.c +++ b/src/nm-device.c @@ -40,7 +40,6 @@ #include "nm-glib-compat.h" #include "nm-device.h" #include "nm-device-private.h" -#include "backends/nm-backend.h" #include "NetworkManagerUtils.h" #include "nm-system.h" #include "nm-dhcp-manager.h" @@ -2295,6 +2294,48 @@ addrconf6_cleanup (NMDevice *self) /******************************************/ +/* Get net.ipv6.conf.default.use_tempaddr value from /etc/sysctl.conf or + * /lib/sysctl.d/sysctl.conf + */ +static int +ip6_use_tempaddr (void) +{ + char *contents = NULL; + gsize len = 0; + const char *group_name = "[forged_group]\n"; + char *sysctl_data = NULL; + GKeyFile *keyfile; + GError *error = NULL; + int tmp, ret = -1; + + /* Read file contents to a string. */ + if (!g_file_get_contents ("/etc/sysctl.conf", &contents, &len, NULL)) + if (!g_file_get_contents ("/lib/sysctl.d/sysctl.conf", &contents, &len, NULL)) + return -1; + + /* Prepend a group so that we can use GKeyFile parser. */ + sysctl_data = g_strdup_printf ("%s%s", group_name, contents); + + keyfile = g_key_file_new (); + if (keyfile == NULL) + goto done; + + if (!g_key_file_load_from_data (keyfile, sysctl_data, len + strlen (group_name), G_KEY_FILE_NONE, NULL)) + goto done; + + tmp = g_key_file_get_integer (keyfile, "forged_group", "net.ipv6.conf.default.use_tempaddr", &error); + if (error == NULL) + ret = tmp; + +done: + g_free (contents); + g_free (sysctl_data); + g_clear_error (&error); + g_key_file_free (keyfile); + + return ret; +} + static NMActStageReturn real_act_stage3_ip6_config_start (NMDevice *self, NMIP6Config **out_config, @@ -2362,7 +2403,7 @@ real_act_stage3_ip6_config_start (NMDevice *self, * If a global value is configured by sysadmin (e.g. /etc/sysctl.conf), * use that value instead of per-connection value. */ - conf_use_tempaddr = nm_backend_ipv6_use_tempaddr (); + conf_use_tempaddr = ip6_use_tempaddr (); if (conf_use_tempaddr >= 0) ip6_privacy = conf_use_tempaddr; else {