Send connman mailing list submissions to connman@lists.01.org To subscribe or unsubscribe via the World Wide Web, visit https://lists.01.org/mailman/listinfo/connman or, via email, send a message with subject or body 'help' to connman-requ...@lists.01.org
You can reach the person managing the list at connman-ow...@lists.01.org When replying, please edit your Subject line so it is more specific than "Re: Contents of connman digest..." Today's Topics: 1. [PATCH] notifier: constify vtables (Slava Monich) ---------------------------------------------------------------------- Message: 1 Date: Sat, 20 Oct 2018 02:05:50 +0300 From: Slava Monich <slava.mon...@jolla.com> To: connman@lists.01.org Subject: [PATCH] notifier: constify vtables Message-ID: <1539990350-18621-1-git-send-email-slava.mon...@jolla.com> connman_notifier vtables are read-only structures. Declaring them const at compile time allows the compiler to actually make them read-only at runtime. --- include/notifier.h | 4 ++-- plugins/iospm.c | 2 +- plugins/nmcompat.c | 2 +- plugins/pacrunner.c | 2 +- plugins/vpn.c | 2 +- src/dnsproxy.c | 4 ++-- src/ipv6pd.c | 2 +- src/manager.c | 2 +- src/nat.c | 2 +- src/notifier.c | 22 +++++++++++----------- src/provider.c | 2 +- src/session.c | 2 +- src/timeserver.c | 2 +- tools/iptables-unit.c | 6 +++--- 14 files changed, 28 insertions(+), 28 deletions(-) diff --git a/include/notifier.h b/include/notifier.h index 50b5fb4..9c0909c 100644 --- a/include/notifier.h +++ b/include/notifier.h @@ -57,8 +57,8 @@ struct connman_notifier { void (*idle_state) (bool idle); }; -int connman_notifier_register(struct connman_notifier *notifier); -void connman_notifier_unregister(struct connman_notifier *notifier); +int connman_notifier_register(const struct connman_notifier *notifier); +void connman_notifier_unregister(const struct connman_notifier *notifier); #ifdef __cplusplus } diff --git a/plugins/iospm.c b/plugins/iospm.c index fcb4cea..cded9e0 100644 --- a/plugins/iospm.c +++ b/plugins/iospm.c @@ -86,7 +86,7 @@ static void iospm_offline_mode(bool enabled) send_indication(IOSPM_FLIGHT_MODE, enabled); } -static struct connman_notifier iospm_notifier = { +static const struct connman_notifier iospm_notifier = { .name = "iospm", .priority = CONNMAN_NOTIFIER_PRIORITY_DEFAULT, .service_enabled= iospm_service_enabled, diff --git a/plugins/nmcompat.c b/plugins/nmcompat.c index 883ce9b..274baab 100644 --- a/plugins/nmcompat.c +++ b/plugins/nmcompat.c @@ -173,7 +173,7 @@ static void offline_mode(bool enabled) current_service = NULL; } -static struct connman_notifier notifier = { +static const struct connman_notifier notifier = { .name = "nmcompat", .priority = CONNMAN_NOTIFIER_PRIORITY_DEFAULT, .default_changed = default_changed, diff --git a/plugins/pacrunner.c b/plugins/pacrunner.c index d2464a5..9c652f3 100644 --- a/plugins/pacrunner.c +++ b/plugins/pacrunner.c @@ -277,7 +277,7 @@ static void proxy_changed(struct connman_service *service) create_proxy_configuration(); } -static struct connman_notifier pacrunner_notifier = { +static const struct connman_notifier pacrunner_notifier = { .name = "pacrunner", .default_changed = default_service_changed, .proxy_changed = proxy_changed, diff --git a/plugins/vpn.c b/plugins/vpn.c index 22d69a3..11bab15 100644 --- a/plugins/vpn.c +++ b/plugins/vpn.c @@ -1947,7 +1947,7 @@ static void vpn_service_state_changed(struct connman_service *service, vpn_disconnect_check(); } -static struct connman_notifier vpn_notifier = { +static const struct connman_notifier vpn_notifier = { .name = "vpn", .priority = CONNMAN_NOTIFIER_PRIORITY_DEFAULT, .default_changed = vpn_service_list_changed, diff --git a/src/dnsproxy.c b/src/dnsproxy.c index 951f2cb..2dc7340 100644 --- a/src/dnsproxy.c +++ b/src/dnsproxy.c @@ -2912,13 +2912,13 @@ static void dnsproxy_default_changed(struct connman_service *service) cache_refresh(); } -static struct connman_notifier dnsproxy_notifier = { +static const struct connman_notifier dnsproxy_notifier = { .name = "dnsproxy", .default_changed = dnsproxy_default_changed, .offline_mode = dnsproxy_offline_mode, }; -static unsigned char opt_edns0_type[2] = { 0x00, 0x29 }; +static const unsigned char opt_edns0_type[2] = { 0x00, 0x29 }; static int parse_request(unsigned char *buf, size_t len, char *name, unsigned int size) diff --git a/src/ipv6pd.c b/src/ipv6pd.c index a70de3f..8cd2a33 100644 --- a/src/ipv6pd.c +++ b/src/ipv6pd.c @@ -295,7 +295,7 @@ static void update_ipconfig(struct connman_service *service, } } -static struct connman_notifier pd_notifier = { +static const struct connman_notifier pd_notifier = { .name = "IPv6 prefix delegation", .default_changed = update_default_interface, .ipconfig_changed = update_ipconfig, diff --git a/src/manager.c b/src/manager.c index d15ce20..dc2e062 100644 --- a/src/manager.c +++ b/src/manager.c @@ -169,7 +169,7 @@ static void idle_state(bool idle) return; } -static struct connman_notifier technology_notifier = { +static const struct connman_notifier technology_notifier = { .name = "manager", .priority = CONNMAN_NOTIFIER_PRIORITY_HIGH, .idle_state = idle_state, diff --git a/src/nat.c b/src/nat.c index 2aac60d..681acb2 100644 --- a/src/nat.c +++ b/src/nat.c @@ -203,7 +203,7 @@ static void cleanup_nat(gpointer data) g_free(nat); } -static struct connman_notifier nat_notifier = { +static const struct connman_notifier nat_notifier = { .name = "nat", .default_changed = update_default_interface, }; diff --git a/src/notifier.c b/src/notifier.c index 5ba5324..47eb72f 100644 --- a/src/notifier.c +++ b/src/notifier.c @@ -50,11 +50,11 @@ static gint compare_priority(gconstpointer a, gconstpointer b) * * Returns: %0 on success */ -int connman_notifier_register(struct connman_notifier *notifier) +int connman_notifier_register(const struct connman_notifier *notifier) { DBG("notifier %p name %s", notifier, notifier->name); - notifier_list = g_slist_insert_sorted(notifier_list, notifier, + notifier_list = g_slist_insert_sorted(notifier_list, (void*)notifier, compare_priority); return 0; @@ -66,7 +66,7 @@ int connman_notifier_register(struct connman_notifier *notifier) * * Remove a previously registered notifier module */ -void connman_notifier_unregister(struct connman_notifier *notifier) +void connman_notifier_unregister(const struct connman_notifier *notifier) { DBG("notifier %p name %s", notifier, notifier->name); @@ -215,7 +215,7 @@ void __connman_notifier_default_changed(struct connman_service *service) GSList *list; for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->default_changed) notifier->default_changed(service); @@ -228,7 +228,7 @@ void __connman_notifier_service_add(struct connman_service *service, GSList *list; for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->service_add) notifier->service_add(service, name); @@ -251,7 +251,7 @@ void __connman_notifier_service_remove(struct connman_service *service) } for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->service_remove) notifier->service_remove(service); @@ -263,7 +263,7 @@ void __connman_notifier_proxy_changed(struct connman_service *service) GSList *list; for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->proxy_changed) notifier->proxy_changed(service); @@ -289,7 +289,7 @@ void __connman_notifier_offlinemode(bool enabled) state_changed(); for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->offline_mode) notifier->offline_mode(enabled); @@ -303,7 +303,7 @@ static void notify_idle_state(bool idle) DBG("idle %d", idle); for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->idle_state) notifier->idle_state(idle); @@ -318,7 +318,7 @@ void __connman_notifier_service_state_changed(struct connman_service *service, bool found; for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->service_state_changed) notifier->service_state_changed(service, state); @@ -361,7 +361,7 @@ void __connman_notifier_ipconfig_changed(struct connman_service *service, GSList *list; for (list = notifier_list; list; list = list->next) { - struct connman_notifier *notifier = list->data; + const struct connman_notifier *notifier = list->data; if (notifier->ipconfig_changed) notifier->ipconfig_changed(service, ipconfig); diff --git a/src/provider.c b/src/provider.c index 5f57ba9..9d9741e 100644 --- a/src/provider.c +++ b/src/provider.c @@ -747,7 +747,7 @@ static void provider_service_changed(struct connman_service *service, connman_provider_disconnect(provider); } -static struct connman_notifier provider_notifier = { +static const struct connman_notifier provider_notifier = { .name = "provider", .offline_mode = provider_offline_mode, .service_state_changed = provider_service_changed, diff --git a/src/session.c b/src/session.c index 3ef7bf5..2a1dd9a 100644 --- a/src/session.c +++ b/src/session.c @@ -2001,7 +2001,7 @@ static void ipconfig_changed(struct connman_service *service, } } -static struct connman_notifier session_notifier = { +static const struct connman_notifier session_notifier = { .name = "session", .service_state_changed = service_state_changed, .ipconfig_changed = ipconfig_changed, diff --git a/src/timeserver.c b/src/timeserver.c index 48f026c..657b782 100644 --- a/src/timeserver.c +++ b/src/timeserver.c @@ -500,7 +500,7 @@ static void default_changed(struct connman_service *default_service) timeserver_stop(); } -static struct connman_notifier timeserver_notifier = { +static const struct connman_notifier timeserver_notifier = { .name = "timeserver", .default_changed = default_changed, }; diff --git a/tools/iptables-unit.c b/tools/iptables-unit.c index 426631a..0ab4249 100644 --- a/tools/iptables-unit.c +++ b/tools/iptables-unit.c @@ -318,7 +318,7 @@ static void test_iptables_target0(void) assert_rule_not_exists("filter", "-A INPUT -m mark --mark 0x2"); } -struct connman_notifier *nat_notifier; +const struct connman_notifier *nat_notifier; struct connman_service { char *dummy; @@ -329,14 +329,14 @@ char *connman_service_get_interface(struct connman_service *service) return "eth0"; } -int connman_notifier_register(struct connman_notifier *notifier) +int connman_notifier_register(const struct connman_notifier *notifier) { nat_notifier = notifier; return 0; } -void connman_notifier_unregister(struct connman_notifier *notifier) +void connman_notifier_unregister(const struct connman_notifier *notifier) { nat_notifier = NULL; } -- 1.9.1 ------------------------------ Subject: Digest Footer _______________________________________________ connman mailing list connman@lists.01.org https://lists.01.org/mailman/listinfo/connman ------------------------------ End of connman Digest, Vol 36, Issue 19 ***************************************