1. 26 Mar, 2018 1 commit
  2. 15 Jun, 2016 3 commits
    • Thomas Haller's avatar
      libnm/vpn: pass NMVpnPluginInfo to the NMVpnEditorPlugin instance · 1c42375e
      Thomas Haller authored
      The NMVpnPluginInfo is essentially the .name file, that is, a
      configuration file about the plugin itself. Via NMVpnPluginInfo
      instance, the NMVpnEditorPlugin can be created.
      
      Usually, one would create a NMVpnPluginInfo (that is, reading the
      .name file) and then create a NMVpnEditorPlugin instance from there.
      In this case, usually the editor-plugin is owned by the plugin-info
      instance (although the API allows for creating the editor-plugin
      independently).
      
      Now, pass the  NMVpnPluginInfo to the editor-plugin too.
      This is useful, because then the editor-plugin can look at the .name
      file.
      
      The .name file is not user configuration. Instead it is configuration
      about the plugin itself. Although the .name file is part of the plugin
      build artefacts, it is useful to allow the plugin to access the .name
      file. The reason is, that this can allow the user to easily change a
      configuration knob of the plugin without requiring to patch or the
      plugin.
      1c42375e
    • Thomas Haller's avatar
    • Thomas Haller's avatar
      10445bed
  3. 05 May, 2016 1 commit
  4. 22 Apr, 2016 4 commits
  5. 02 Nov, 2015 1 commit
    • Lubomir Rintel's avatar
      vpn-plugin-info: drop nm_vpn_plugin_info_get_service() · 3517084b
      Lubomir Rintel authored
      It is not used externally and its use might be confusing and undesired when we
      add plugin aliases. The external users should only use the name when idenfiying
      the plugin and nm_vpn_plugin_info_list_find_by_service() when matchin the plugin.
      3517084b
  6. 13 Oct, 2015 1 commit
  7. 04 Aug, 2015 1 commit
    • Thomas Haller's avatar
      libnm: avoid deprecated warning for NMVpnPluginInfo · e0bded93
      Thomas Haller authored
      When merely including "nm-vpn-plugin-info.h" (or "NetworkManager.h")
      gcc raises warnings like:
        "Not available before 1.2 [-Werror=deprecated-declarations]"
      
      The problem is that the NMVpnPluginInfo typedef itself is marked as
      deprecated but also used by other functions like nm_vpn_plugin_info_get_name().
      
          typedef struct {
              int field;
          } Foo G_UNAVAILABLE(1,2);
      
          G_UNAVAILABLE(1,2)
          void deprecated_function (Foo *foo);
      
          warning: ‘Foo’ is deprecated: Not available before 1.2 [-Wdeprecated-declarations]
      
      I think that when a function is itself deprecated, gcc should not warn about
      the use of a deprecated typedef.
      Gcc's documentation states: "Note that the warnings only occur for
      uses and then only if the type is being applied to an identifier
      that itself is not being declared as deprecated.".
      Apparently, this only works for structs, but not for typedef of structs.
      
      Anyway. Remove the deprecation from NMVpnPluginInfo to avoid the compiler
      warning.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=753098
      
      Fixes: d6226bd9
      e0bded93
  8. 31 Jul, 2015 1 commit
  9. 29 Jul, 2015 2 commits
    • Thomas Haller's avatar
    • Thomas Haller's avatar
      libnm: add NMVpnPluginInfo class · d6226bd9
      Thomas Haller authored
      NMVpnPluginInfo is little more then a wrapper around
      the GKeyFile that describes the VPN plugin settings,
      i.e. the name files under "/etc/NetworkManager/VPN/".
      
      Add this class to make the VPN API more explicit. Clients
      now can use NMVpnPluginInfo instead of concerning themselves
      with loading the keyfile and the meaning of its properties.
      
      Also add support for a new VPN plugins directory
      "/usr/lib/NetworkManager/VPN", which should replace
      "/etc/NetworkManager/VPN" in the future. But we have to
      consider both locations for backward compatibility.
      
      The content of the VPN directory is not user configuration,
      hence it should not be under "/etc". See related bug 738853.
      d6226bd9