1. 18 Sep, 2014 3 commits
    • 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
      dispatcher: make test-dispatcher-envp not take an argument · 8d26c451
      Dan Winship authored
      Compile srcdir into test-dispatcher-envp rather than passing it on the
      command-line, to make it easier to run by hand, and so we can use
      automake's TESTS support.
      8d26c451
    • Dan Winship's avatar
      dispatcher: port to GDBus · 1a5cfc1f
      Dan Winship authored
      Port nm-dispatcher to GDBus, mostly, using dbus-glib's GVariant
      utilities to translate the return value of nm_connection_to_dbus().
      1a5cfc1f
  2. 04 Sep, 2014 1 commit
    • Dan Winship's avatar
      libnm-core: rename NMConnection to/from_hash methods · 773d3f0a
      Dan Winship authored
      Rename nm_connection_to_hash() to nm_connection_to_dbus(), and
      nm_connection_new_from_hash() to nm_connection_new_from_dbus(). In
      addition to clarifying that this is specifically the D-Bus
      serialization format, these names will also work better in the
      GDBus-based future where the serialization format is GVariant, not
      GHashTable.
      
      Also, move NMSettingHashFlags to nm-connection.h, and rename it
      NMConnectionSerializationFlags.
      773d3f0a
  3. 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
  4. 16 Aug, 2014 1 commit
    • Dan Winship's avatar
      libnm-core, libnm, core: make NMConnection an interface · e1ba13a4
      Dan Winship authored
      The fact that NMRemoteConnection has to be an NMConnection and
      therefore can't be an NMObject means that it needs to reimplement bits
      of NMObject functionality (and likewise NMObject needs some special
      magic to deal with it). Likewise, we will need a daemon-side
      equivalent of NMObject as part of the gdbus port, and we would want
      NMSettingsConnection to be able to inherit from this as well.
      
      Solve this problem by making NMConnection into an interface, and
      having NMRemoteConnection and NMSettingsConnection implement it. (We
      use some hacks to keep the GHashTable of NMSettings objects inside
      nm-connection.c rather than having to be implemented by the
      implementations.)
      
      Since NMConnection is no longer an instantiable type, this adds
      NMSimpleConnection to replace the various non-D-Bus-based uses of
      NMConnection throughout the code. nm_connection_new() becomes
      nm_simple_connection_new(), nm_connection_new_from_hash() becomes
      nm_simple_connection_new_from_hash(), and nm_connection_duplicate()
      becomes nm_simple_connection_new_clone().
      e1ba13a4
  5. 01 Aug, 2014 1 commit
    • Dan Winship's avatar
      libnm: add NetworkManager.h, disallow including individual headers · d0b05b34
      Dan Winship authored
      Add NetworkManager.h, which includes all of the other NM header, and
      require all external users of libnm to use that rather than the
      individual headers.
      
      (An exception is made for nm-dbus-interface.h,
      nm-vpn-dbus-interface.h, and nm-version.h, which can be included
      separately.)
      d0b05b34
  6. 06 Jun, 2014 1 commit
  7. 27 May, 2014 1 commit
  8. 22 Apr, 2014 1 commit
  9. 03 Aug, 2013 1 commit
  10. 24 Jun, 2013 1 commit
  11. 26 Feb, 2013 1 commit
    • Dan Winship's avatar
      tests: clean up gtester usage · f936400c
      Dan Winship authored
      Use g_test_add_func() and g_test_add_data_func() to simplify the test
      cases, getting rid of the GLIB_CHECK_VERSION calls in the process.
      f936400c
  12. 26 Sep, 2012 1 commit
    • Dan Winship's avatar
      all: Don't use ctype.h macros · 6878d20a
      Dan Winship authored
      The ctype macros (eg, isalnum(), tolower()) are locale-dependent. Use
      glib's ASCII-only versions instead.
      
      Also, replace isascii() with g_ascii_isprint(), since isascii()
      accepts control characters, which isn't what the code wanted in any of
      the places where it was using it.
      6878d20a
  13. 10 May, 2011 1 commit
  14. 03 May, 2011 1 commit
    • Dan Williams's avatar
      dispatcher: enhance dispatcher script environment (bgo #648382) · f898dbf1
      Dan Williams authored
      For VPN connections, the interface name would be that of the VPN's
      IP interface, but the script environment would be the that of the
      VPN's parent device.  Enhance the environment by adding any VPN
      specific details as additional environment variables prefixed by
      "VPN_".  Leave the existing environment setup intact for backwards
      compatiblity.
      
      Additionally, the dispatcher never got updated for IPv6 support,
      so push IPv6 configuration and DHCPv6 configuration into the
      environment too.
      
      Even better, push everything the dispatcher needs to it instead
      of making the dispatcher make D-Bus requests back to NM, which
      sometimes fails if NM has already torn down the device or the
      connection which the device was using.
      
      And add some testcases to ensure that we don't break backwards compat,
      the testcases here were grabbed from a 0.8.4 machine with a hacked up
      dispatcher to dump everything it was given from NM.
      f898dbf1