diff options
Diffstat (limited to 'shared/nm-utils/nm-vpn-editor-plugin-call.h')
| -rw-r--r-- | shared/nm-utils/nm-vpn-editor-plugin-call.h | 218 |
1 files changed, 106 insertions, 112 deletions
diff --git a/shared/nm-utils/nm-vpn-editor-plugin-call.h b/shared/nm-utils/nm-vpn-editor-plugin-call.h index b2c39e29..780ef193 100644 --- a/shared/nm-utils/nm-vpn-editor-plugin-call.h +++ b/shared/nm-utils/nm-vpn-editor-plugin-call.h @@ -1,4 +1,4 @@ -// SPDX-License-Identifier: LGPL-2.1+ +/* SPDX-License-Identifier: LGPL-2.1+ */ /* * Copyright (C) 2016 Red Hat, Inc. */ @@ -28,27 +28,26 @@ * add a new connection for the given service-type. **/ typedef enum { /*< skip >*/ - NM_VPN_EDITOR_PLUGIN_SERVICE_FLAGS_NONE = 0x00, - NM_VPN_EDITOR_PLUGIN_SERVICE_FLAGS_CAN_ADD = 0x01, + NM_VPN_EDITOR_PLUGIN_SERVICE_FLAGS_NONE = 0x00, + NM_VPN_EDITOR_PLUGIN_SERVICE_FLAGS_CAN_ADD = 0x01, } NMVpnEditorPluginServiceFlags; struct _NMVpnEditorPluginVT { - gboolean (*fcn_get_service_info) (NMVpnEditorPlugin *plugin, - const char *service_type, - char **out_short_name, - char **out_pretty_name, - char **out_description, - NMVpnEditorPluginServiceFlags *out_flags); - char **(*fcn_get_service_add_details) (NMVpnEditorPlugin *plugin, - const char *service_name); - gboolean (*fcn_get_service_add_detail) (NMVpnEditorPlugin *plugin, - const char *service_type, - const char *add_detail, - char **out_pretty_name, - char **out_description, - char **out_add_detail_key, - char **out_add_detail_val, - guint *out_flags); + gboolean (*fcn_get_service_info)(NMVpnEditorPlugin * plugin, + const char * service_type, + char ** out_short_name, + char ** out_pretty_name, + char ** out_description, + NMVpnEditorPluginServiceFlags *out_flags); + char **(*fcn_get_service_add_details)(NMVpnEditorPlugin *plugin, const char *service_name); + gboolean (*fcn_get_service_add_detail)(NMVpnEditorPlugin *plugin, + const char * service_type, + const char * add_detail, + char ** out_pretty_name, + char ** out_description, + char ** out_add_detail_key, + char ** out_add_detail_val, + guint * out_flags); }; /***************************************************************************** @@ -59,94 +58,93 @@ struct _NMVpnEditorPluginVT { *****************************************************************************/ static inline gboolean -nm_vpn_editor_plugin_get_service_info (NMVpnEditorPlugin *plugin, - const char *service_type, - char **out_short_name, - char **out_pretty_name, - char **out_description, - NMVpnEditorPluginServiceFlags *out_flags) +nm_vpn_editor_plugin_get_service_info(NMVpnEditorPlugin * plugin, + const char * service_type, + char ** out_short_name, + char ** out_pretty_name, + char ** out_description, + NMVpnEditorPluginServiceFlags *out_flags) { - NMVpnEditorPluginVT vt; - gs_free char *short_name_local = NULL; - gs_free char *pretty_name_local = NULL; - gs_free char *description_local = NULL; - guint flags_local = 0; - - g_return_val_if_fail (NM_IS_VPN_EDITOR_PLUGIN (plugin), FALSE); - g_return_val_if_fail (service_type, FALSE); - - nm_vpn_editor_plugin_get_vt (plugin, &vt, sizeof (vt)); - if ( !vt.fcn_get_service_info - || !vt.fcn_get_service_info (plugin, - service_type, - out_short_name ? &short_name_local : NULL, - out_pretty_name ? &pretty_name_local : NULL, - out_description ? &description_local : NULL, - out_flags ? &flags_local : NULL)) - return FALSE; - NM_SET_OUT (out_short_name, g_steal_pointer (&short_name_local)); - NM_SET_OUT (out_pretty_name, g_steal_pointer (&pretty_name_local)); - NM_SET_OUT (out_description, g_steal_pointer (&description_local)); - NM_SET_OUT (out_flags, flags_local); - return TRUE; + NMVpnEditorPluginVT vt; + gs_free char * short_name_local = NULL; + gs_free char * pretty_name_local = NULL; + gs_free char * description_local = NULL; + guint flags_local = 0; + + g_return_val_if_fail(NM_IS_VPN_EDITOR_PLUGIN(plugin), FALSE); + g_return_val_if_fail(service_type, FALSE); + + nm_vpn_editor_plugin_get_vt(plugin, &vt, sizeof(vt)); + if (!vt.fcn_get_service_info + || !vt.fcn_get_service_info(plugin, + service_type, + out_short_name ? &short_name_local : NULL, + out_pretty_name ? &pretty_name_local : NULL, + out_description ? &description_local : NULL, + out_flags ? &flags_local : NULL)) + return FALSE; + NM_SET_OUT(out_short_name, g_steal_pointer(&short_name_local)); + NM_SET_OUT(out_pretty_name, g_steal_pointer(&pretty_name_local)); + NM_SET_OUT(out_description, g_steal_pointer(&description_local)); + NM_SET_OUT(out_flags, flags_local); + return TRUE; } static inline char ** -nm_vpn_editor_plugin_get_service_add_details (NMVpnEditorPlugin *plugin, - const char *service_name) +nm_vpn_editor_plugin_get_service_add_details(NMVpnEditorPlugin *plugin, const char *service_name) { - NMVpnEditorPluginVT vt; - char **details = NULL; - - g_return_val_if_fail (NM_IS_VPN_EDITOR_PLUGIN (plugin), NULL); - g_return_val_if_fail (service_name, NULL); - - nm_vpn_editor_plugin_get_vt (plugin, &vt, sizeof (vt)); - if (vt.fcn_get_service_add_details) - details = vt.fcn_get_service_add_details (plugin, service_name); - if (!details) - return g_new0 (char *, 1); - return details; + NMVpnEditorPluginVT vt; + char ** details = NULL; + + g_return_val_if_fail(NM_IS_VPN_EDITOR_PLUGIN(plugin), NULL); + g_return_val_if_fail(service_name, NULL); + + nm_vpn_editor_plugin_get_vt(plugin, &vt, sizeof(vt)); + if (vt.fcn_get_service_add_details) + details = vt.fcn_get_service_add_details(plugin, service_name); + if (!details) + return g_new0(char *, 1); + return details; } static inline gboolean -nm_vpn_editor_plugin_get_service_add_detail (NMVpnEditorPlugin *plugin, - const char *service_type, - const char *add_detail, - char **out_pretty_name, - char **out_description, - char **out_add_detail_key, - char **out_add_detail_val, - guint *out_flags) +nm_vpn_editor_plugin_get_service_add_detail(NMVpnEditorPlugin *plugin, + const char * service_type, + const char * add_detail, + char ** out_pretty_name, + char ** out_description, + char ** out_add_detail_key, + char ** out_add_detail_val, + guint * out_flags) { - NMVpnEditorPluginVT vt; - gs_free char *pretty_name_local = NULL; - gs_free char *description_local = NULL; - gs_free char *add_detail_key_local = NULL; - gs_free char *add_detail_val_local = NULL; - guint flags_local = 0; - - g_return_val_if_fail (NM_IS_VPN_EDITOR_PLUGIN (plugin), FALSE); - g_return_val_if_fail (service_type, FALSE); - g_return_val_if_fail (add_detail, FALSE); - - nm_vpn_editor_plugin_get_vt (plugin, &vt, sizeof (vt)); - if ( !vt.fcn_get_service_add_detail - || !vt.fcn_get_service_add_detail (plugin, - service_type, - add_detail, - out_pretty_name ? &pretty_name_local : NULL, - out_description ? &description_local : NULL, - out_add_detail_key ? &add_detail_key_local : NULL, - out_add_detail_val ? &add_detail_val_local : NULL, - out_flags ? &flags_local : NULL)) - return FALSE; - NM_SET_OUT (out_pretty_name, g_steal_pointer (&pretty_name_local)); - NM_SET_OUT (out_description, g_steal_pointer (&description_local)); - NM_SET_OUT (out_add_detail_key, g_steal_pointer (&add_detail_key_local)); - NM_SET_OUT (out_add_detail_val, g_steal_pointer (&add_detail_val_local)); - NM_SET_OUT (out_flags, flags_local); - return TRUE; + NMVpnEditorPluginVT vt; + gs_free char * pretty_name_local = NULL; + gs_free char * description_local = NULL; + gs_free char * add_detail_key_local = NULL; + gs_free char * add_detail_val_local = NULL; + guint flags_local = 0; + + g_return_val_if_fail(NM_IS_VPN_EDITOR_PLUGIN(plugin), FALSE); + g_return_val_if_fail(service_type, FALSE); + g_return_val_if_fail(add_detail, FALSE); + + nm_vpn_editor_plugin_get_vt(plugin, &vt, sizeof(vt)); + if (!vt.fcn_get_service_add_detail + || !vt.fcn_get_service_add_detail(plugin, + service_type, + add_detail, + out_pretty_name ? &pretty_name_local : NULL, + out_description ? &description_local : NULL, + out_add_detail_key ? &add_detail_key_local : NULL, + out_add_detail_val ? &add_detail_val_local : NULL, + out_flags ? &flags_local : NULL)) + return FALSE; + NM_SET_OUT(out_pretty_name, g_steal_pointer(&pretty_name_local)); + NM_SET_OUT(out_description, g_steal_pointer(&description_local)); + NM_SET_OUT(out_add_detail_key, g_steal_pointer(&add_detail_key_local)); + NM_SET_OUT(out_add_detail_val, g_steal_pointer(&add_detail_val_local)); + NM_SET_OUT(out_flags, flags_local); + return TRUE; } /***************************************************************************** @@ -155,19 +153,15 @@ nm_vpn_editor_plugin_get_service_add_detail (NMVpnEditorPlugin *plugin, * The following glue code can be used to implement calls in a VPN plugin. *****************************************************************************/ -#define NM_VPN_EDITOR_PLUGIN_VT_DEFINE(vt_name, get_vt, ...) \ -static const NMVpnEditorPluginVT vt_name = { \ - __VA_ARGS__ \ - }; \ -static const NMVpnEditorPluginVT * \ -get_vt (NMVpnEditorPlugin *plugin, \ - gsize *out_vt_size) \ -{ \ - nm_assert (NM_IS_VPN_EDITOR_PLUGIN (plugin)); \ - nm_assert (out_vt_size); \ - \ - *out_vt_size = sizeof (vt_name); \ - return &vt_name; \ -} +#define NM_VPN_EDITOR_PLUGIN_VT_DEFINE(vt_name, get_vt, ...) \ + static const NMVpnEditorPluginVT vt_name = {__VA_ARGS__}; \ + static const NMVpnEditorPluginVT *get_vt(NMVpnEditorPlugin *plugin, gsize *out_vt_size) \ + { \ + nm_assert(NM_IS_VPN_EDITOR_PLUGIN(plugin)); \ + nm_assert(out_vt_size); \ + \ + *out_vt_size = sizeof(vt_name); \ + return &vt_name; \ + } #endif /* __NM_VPN_EDITOR_PLUGIN_CALL_H__ */ |