summaryrefslogtreecommitdiff
path: root/libnm
diff options
context:
space:
mode:
authorThomas Haller <thaller@redhat.com>2016-06-13 11:47:58 +0200
committerThomas Haller <thaller@redhat.com>2016-06-15 15:01:12 +0200
commitcf34211c90d2d45cb325f5558304f64297033bc6 (patch)
tree2e8e624d595485643f2d4484cfe9c35fa2f910cd /libnm
parent1c42375efb56bccb2ed55153cfd82826f910cac1 (diff)
downloadNetworkManager-cf34211c90d2d45cb325f5558304f64297033bc6.tar.gz
libnm/vpn: add nm_vpn_editor_plugin_load_vt()
Let VPN plugins return a virtual function table to extend the API while bypassing libnm. This allows to add and use new functionality to VPN plugins without updating libnm. The actual definitions are in a header-only file "nm-vpn-editor-plugin-call.h", which can be copied to the caller/plugin.
Diffstat (limited to 'libnm')
-rw-r--r--libnm/libnm.ver1
-rw-r--r--libnm/nm-vpn-service-plugin.c8
2 files changed, 9 insertions, 0 deletions
diff --git a/libnm/libnm.ver b/libnm/libnm.ver
index 2dc2103517..41f650f008 100644
--- a/libnm/libnm.ver
+++ b/libnm/libnm.ver
@@ -1069,6 +1069,7 @@ global:
nm_setting_ip6_config_get_token;
nm_setting_ip_config_get_dns_priority;
nm_vpn_editor_plugin_get_plugin_info;
+ nm_vpn_editor_plugin_get_vt;
nm_vpn_editor_plugin_load;
nm_vpn_editor_plugin_set_plugin_info;
nm_vpn_plugin_info_get_aliases;
diff --git a/libnm/nm-vpn-service-plugin.c b/libnm/nm-vpn-service-plugin.c
index bf4369e4ad..df99eb28d9 100644
--- a/libnm/nm-vpn-service-plugin.c
+++ b/libnm/nm-vpn-service-plugin.c
@@ -1306,3 +1306,11 @@ nm_vpn_service_plugin_initable_iface_init (GInitableIface *iface)
{
iface->init = init_sync;
}
+
+/*****************************************************************************/
+
+/* this header is intended to be copied to users of nm_vpn_editor_plugin_call(),
+ * to simplify invocation of generic functions. Include it here, to complile
+ * the code. */
+#include "nm-vpn-editor-plugin-call.h"
+