1. 18 Jan, 2018 1 commit
  2. 10 Jan, 2018 1 commit
  3. 12 Dec, 2016 1 commit
  4. 10 Nov, 2016 1 commit
    • Lubomir Rintel's avatar
      libnm: use the o.fd.DBus.ObjectManager API for object management · 1f5b48a5
      Lubomir Rintel authored
      This speeds up the initial object tree load significantly. Also, it
      reduces the object management complexity by shifting the duties to
      GDBusObjectManager.
      
      The lifetime of all NMObjects is now managed by the NMClient via the
      object manager. The NMClient creates the NMObjects for GDBus objects,
      triggers the initialization and serves as an object registry (replaces
      the nm-cache).
      
      The ObjectManager uses the o.fd.DBus.ObjectManager API to learn of the
      object creation, removal and property changes. It takes care of the
      property changes so that we don't have to and lets us always see a
      consistent object state.  Thus at the time we learn of a new object we
      already know its properties.
      
      The NMObject unfortunately can't be made synchronously initializable as
      the NMRemoteConnection's settings are not managed with standard
      o.fd.DBus Properties and ObjectManager APIs and thus are not known to
      the ObjectManager.  Thus most of the asynchronous object property
      changing code in nm-object.c is preserved. The objects notify the
      properties that reference them of their initialization in from their
      init_finish() methods, thus the asynchronously created objects are not
      allowed to fail creation (or the dependees would wait forever). Not a
      problem -- if a connection can't get its Settings, it's either invisible
      or being removed (presumably we'd learn of the removal from the object
      manager soon).
      
      The NMObjects can't be created by the object manager itself, since we
      can't determine the resulting object type in proxy_type() yet (we can't
      tell from the name and can't access the interface list). Therefore the
      GDBusObject is coupled with a NMObject later on.
      
      Lastly, now that all the objects are managed by the object manager, the
      NMRemoteSettings and NMManager go away when the daemon is stopped. The
      complexity of dealing with calls to NMClient that would require any of
      the resources that these objects manage (connection or device lists,
      etc.) had to be moved to NMClient. The bright side is that his allows
      for removal all of the daemon presence tracking from NMObject.
      1f5b48a5
  5. 05 May, 2016 1 commit
  6. 05 Apr, 2016 1 commit
    • Thomas Haller's avatar
      build: disable deprecation checks for internal compilation · 9152dec9
      Thomas Haller authored
      For internal compilation we want to be able to use deprecated
      API without warnings.
      
      Define the version min/max macros to effectively disable deprecation
      warnings.
      
      However, don't do it via CFLAGS option in the makefiles, instead hack it
      to "nm-default.h". After all, *every* source file that is for internal
      compilation needs to include this header as first.
      9152dec9
  7. 20 Jan, 2016 2 commits
  8. 02 Nov, 2015 1 commit
    • Thomas Haller's avatar
      libnm: add internal header file "nm-core-types-internal.h" · d61875c9
      Thomas Haller authored
      This shall contain type definitions, with similar use
      to "nm-core-internal.h".
      
      However, it should contain a minimal set, so that we can include this
      header in other headers under "src/", without including the whole
      "nm-core-internal.h" in headers.
      d61875c9
  9. 29 Jul, 2015 1 commit
    • Thomas Haller's avatar
      libnm/vpn: add new NMVpnServicePlugin class · 867227dd
      Thomas Haller authored
      After copying "nm-vpn-plugin-old.*" to "nm-vpn-service-plugin.*",
      rename the class and add it to the Makefile.
      
      This will become the new VPN Service API for libnm 1.2. No changes
      done yet except renaming of the classes and functions.
      
      Rename the previous classes NMVpnPlugin(Old) to NMVpnServicePlugin
      to have a distinct name from NMVpnEditorPlugin. Buth are plugins, but
      with a different use.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=749951
      867227dd
  10. 24 Jul, 2015 1 commit
    • Beniamino Galvani's avatar
      libnm-core: add enum conversion utilities · 8be98147
      Beniamino Galvani authored
      Add functions nm_utils_enum_to_str() and nm_utils_enum_from_str()
      which can be used to perform conversions between enum values and
      strings, passing the GType automatically generated for every enum by
      glib-mkenums.
      8be98147
  11. 07 Nov, 2014 4 commits
  12. 10 Oct, 2014 1 commit
  13. 18 Sep, 2014 3 commits
    • Dan Winship's avatar
      libnm: port to GDBus · 6793a32a
      Dan Winship authored
      Port libnm-core/libnm to GDBus.
      
      The NetworkManager daemon continues to use dbus-glib; the
      previously-added connection hash/variant conversion methods are now
      moved to NetworkManagerUtils (along with a few other utilities that
      are now only needed by the daemon code).
      6793a32a
    • Dan Winship's avatar
      libnm-core: change connection hash tables to variants in API · acf86f68
      Dan Winship authored
      In preparation for porting to GDBus, make nm_connection_to_dbus(),
      etc, represent connections as GVariants of type 'a{sa{sv}}' rather
      than as GHashTables-of-GHashTables-of-GValues.
      
      This means we're constantly converting back and forth internally, but
      this is just a stepping stone on the way to the full GDBus port, and
      all of that code will go away again later.
      acf86f68
    • Dan Winship's avatar
      libnm: merge libnm-vpn into libnm · 280b1e50
      Dan Winship authored
      There's not much point in keeping them separate: all existing
      libnm-glib-vpn users also link against libnm-glib, and the amount of
      extra code added to libnm by merging in libnm-vpn is negligible.
      
      Additionally, nm-vpn-plugin will later need access to some
      libnm-internal APIs.
      
      So, merge them together.
      280b1e50
  14. 22 Aug, 2014 1 commit
    • Thomas Haller's avatar
      all: add nm-core-internal.h header · ef32da01
      Thomas Haller authored
      Add a header file to expose private utility functions from libnm-core
      that can be used by NetworkManager (core) and libnm.so. The header
      is also used to give privileged access to libnm-core. Since NM links
      statically, these functions are not exported and not part of public ABI.
      
      This also removes the NM_UTILS_PRIVATE_CALL() macro and libnm.so no
      longer exports nm_utils_get_private().
      
      Before, this functionality was partly declared in nm-utils-private.h.
      This was wrong because nm-utils-private.h is for functionality
      entirely private to libnm-core.
      Signed-off-by: Thomas Haller's avatarThomas Haller <thaller@redhat.com>
      ef32da01
  15. 01 Aug, 2014 1 commit
  16. 15 Jul, 2014 1 commit
  17. 01 Jul, 2014 1 commit
  18. 13 May, 2014 1 commit
  19. 13 Feb, 2014 1 commit
    • Dan Winship's avatar
      libnm-util, libnm-glib: add versioned deprecation/availability macros · 9c4d86ee
      Dan Winship authored
      Add versioned NM_DEPRECATED_IN_* and NM_AVAILABLE_IN_* macros, and tag
      new/deprecated functions accordingly. (All currently-deprecated
      functions are assumed to have been deprecated in 0.9.10.)
      
      Add NM_VERSION_MIN_REQUIRED and NM_VERSION_MAX_ALLOWED macros which
      can be set to determine which versions will cause warnings.
      
      With the current settings, external consumers of the
      libnm-util/libnm-glib APIs will have MIN_REQUIRED and MAX_ALLOWED both
      set to NM_VERSION_0_9_8 by default, meaning they will get warnings
      about functions added in 0.9.10. NM internally sets
      NM_VERSION_MAX_ALLOWED to NM_VERSION_NEXT_STABLE to ensure that it is
      always allowed to use all APIs.
      9c4d86ee
  20. 13 Nov, 2012 2 commits
  21. 07 Aug, 2012 1 commit
  22. 01 Aug, 2012 1 commit
  23. 07 Mar, 2011 1 commit
  24. 25 Jan, 2011 1 commit
  25. 28 Sep, 2009 3 commits
  26. 31 Aug, 2009 1 commit
  27. 24 Nov, 2008 1 commit
  28. 19 Nov, 2008 1 commit
  29. 12 Aug, 2008 1 commit
    • Tambet Ingo's avatar
      2008-08-12 Tambet Ingo <tambet@gmail.com> · 0f534a9f
      Tambet Ingo authored
      	Start documenting libnm-glib public API using gtk-doc.
      
      	* libnm-glib/nm-serial-device.c:
      	* libnm-glib/nm-object.c:
      	* libnm-glib/nm-gsm-device.c:
      	* libnm-glib/nm-device.c:
      	* libnm-glib/nm-device-wifi.c:
      	* libnm-glib/nm-device-ethernet.c:
      	* libnm-glib/nm-client.c:
      	* libnm-glib/nm-cdma-device.c: Document the public API.
      
      	* docs/libnm-glib/libnm-glib.types: Implement.
      
      	* docs/libnm-glib/Makefile.am: Implement.
      
      	* autogen.sh:
      	* configure.in:
      	* Makefile.am: Add gtk-doc support.
      
      
      git-svn-id: http://svn-archive.gnome.org/svn/NetworkManager/trunk@3932 4912f4e0-d625-0410-9fb7-b9a5a253dbdc
      0f534a9f