1. 14 May, 2015 1 commit
  2. 28 Apr, 2014 1 commit
  3. 30 Aug, 2013 1 commit
  4. 28 Jun, 2013 1 commit
  5. 17 Jun, 2013 2 commits
  6. 05 Jun, 2012 1 commit
  7. 12 Apr, 2012 2 commits
    • David Zeuthen's avatar
      Avoid using monotonic time in the DBUS_COOKIE_SHA1 authentication method · 87035143
      David Zeuthen authored
      When libdbus-1 moved to using monotonic time support for the
      DBUS_COOKIE_SHA1 authentication was broken, in particular
      interoperability with non-libdbus-1 implementations such as GDBus.
      
      The problem is that if monotonic clocks are available in the OS,
      _dbus_get_current_time() will not return the number of seconds since
      the Epoch so using it for DBUS_COOKIE_SHA1 will violate the D-Bus
      specification. If both peers are using libdbus-1 it's not a problem
      since both ends will use the wrong time and thus agree. However, if
      the other end is another implementation and following the spec it will
      not work.
      
      First, we change _dbus_get_current_time() back so it always returns
      time since the Epoch and we then rename it _dbus_get_real_time() to
      make this clear. We then introduce _dbus_get_monotonic_time() and
      carefully make all current users of _dbus_get_current_time() use it,
      if applicable. During this audit, one of the callers,
      _dbus_generate_uuid(), was currently using monotonic time but it was
      decided to make it use real time instead.
      Signed-off-by: 's avatarDavid Zeuthen <davidz@redhat.com>
      Reviewed-by: 's avatarSimon McVittie <simon.mcvittie@collabora.co.uk>
      Bug: https://bugs.freedesktop.org/show_bug.cgi?id=48580
      87035143
    • David Zeuthen's avatar
      Avoid using monotonic time in the DBUS_COOKIE_SHA1 authentication method · 8734e4a1
      David Zeuthen authored
      When libdbus-1 moved to using monotonic time support for the
      DBUS_COOKIE_SHA1 authentication was broken, in particular
      interoperability with non-libdbus-1 implementations such as GDBus.
      
      The problem is that if monotonic clocks are available in the OS,
      _dbus_get_current_time() will not return the number of seconds since
      the Epoch so using it for DBUS_COOKIE_SHA1 will violate the D-Bus
      specification. If both peers are using libdbus-1 it's not a problem
      since both ends will use the wrong time and thus agree. However, if
      the other end is another implementation and following the spec it will
      not work.
      
      First, we change _dbus_get_current_time() back so it always returns
      time since the Epoch and we then rename it _dbus_get_real_time() to
      make this clear. We then introduce _dbus_get_monotonic_time() and
      carefully make all current users of _dbus_get_current_time() use it,
      if applicable. During this audit, one of the callers,
      _dbus_generate_uuid(), was currently using monotonic time but it was
      decided to make it use real time instead.
      Signed-off-by: 's avatarDavid Zeuthen <davidz@redhat.com>
      Reviewed-by: 's avatarSimon McVittie <simon.mcvittie@collabora.co.uk>
      Bug: https://bugs.freedesktop.org/show_bug.cgi?id=48580
      8734e4a1
  8. 21 Feb, 2012 2 commits
  9. 13 Feb, 2012 1 commit
    • Simon McVittie's avatar
      Provide a hook to allow refcounting to be traced · 566a8416
      Simon McVittie authored
      This is designed to be used from a wrapper function, partly to supply
      the same arguments every time for a particular class of object, and partly
      to provide a more specific gdb breakpoint. It has several purposes:
      
      * when under gdb, provide a function which can be used in breakpoints
      * when not under valgrind and DBUS_MESSAGE_TRACE=1 is set, emit a
        _dbus_verbose when a message's refcount changes
      * when under valgrind and DBUS_MESSAGE_TRACE=1 is set, emit a
        VALGRIND_PRINTF_BACKTRACE when a message's refcount changes,
        which lets you see the complete history of each message to track down
        reference leaks
      
      Compile-time support is currently conditional on DBUS_ENABLE_VERBOSE_MODE,
      but could be separated out if desired.
      
      Bug: https://bugs.freedesktop.org/show_bug.cgi?id=37286Signed-off-by: 's avatarSimon McVittie <simon.mcvittie@collabora.co.uk>
      Reviewed-by: 's avatarLennart Poettering <lennart@poettering.net>
      566a8416
  10. 10 Feb, 2012 1 commit
  11. 04 Jan, 2012 1 commit
    • Simon McVittie's avatar
      Revert all changes since a36d4918 · 5df8c3db
      Simon McVittie authored
      Someone seems to have merged part of master into 1.4. Again. Let's go
      back to the "last known good" point (the branch-point of some 1.4
      branches I had locally), then we can cherry-pick the changes that
      should have gone in.
      5df8c3db
  12. 21 Sep, 2011 2 commits
  13. 13 Aug, 2011 1 commit
  14. 05 Aug, 2011 1 commit
  15. 01 Jun, 2011 1 commit
  16. 28 May, 2011 1 commit
  17. 31 Jan, 2011 2 commits
  18. 03 Sep, 2010 1 commit
    • Colin Walters's avatar
      Make dbus-uuidgen atomic · 45d53565
      Colin Walters authored
      A Red Hat QA engineer hit in practice a race condition in dbus-uuidgen
      where it could leave an empty file.
      
      dbus-uuidgen (_dbus_create_uuid_file_exclusively) formerly created an
      empty file in the path to the uuid, then filled it in.  At some point,
      the internal libdbus _dbus_string_save_to_file became atomic on Unix
      at least (doing the save to temp file, fsync(), rename() dance).
      
      So _dbus_create_uuid_file_exclusively doesn't need to create the file
      beforehand anymore.  However, it *does* need the file to be
      world-readable, unlike all other consumers of
      _dbus_string_save_to_file.  So add a "world_readable" argument.
      45d53565
  19. 19 Jul, 2010 1 commit
  20. 17 Jun, 2010 1 commit
  21. 14 Jun, 2010 1 commit
    • Ralf Habacker's avatar
      Bug 28460 - Refactored dbus configuration access. · 6f9077ee
      Ralf Habacker authored
      Libdbus uses several config variables. On unix these settings are read from
      environment variables by using _dbus_getenv.
      
      On other platforms like wince there are no environment variables available and
      _dbus_getenv needs an emulation for those plattforms (see
      dbus/dbus-sysdeps-wince-glue.c)
      
      To cleanup this emulation the appended patch adds a config api by adding
      _dbus_config_... functions.
      
      Also having all client config related functions listed in one header file
      provides a good overview about which config attributes  are available.
      
      The default implementation retrieves the config values from environment
      variables. For other os this could be easily extended or replaced by.
      6f9077ee
  22. 19 Mar, 2010 1 commit
  23. 25 Feb, 2010 1 commit
  24. 19 Dec, 2009 1 commit
  25. 01 Dec, 2009 1 commit
    • Tor Lillqvist's avatar
      Avoid warnings on Windows · 459c19b9
      Tor Lillqvist authored
      Remove unused functions, or put in #if 0 if potentially useful. Make
      internal functions used just in one file static. Use -Werror after all
      also on Windows. Construct the installation root from the location of
      the dbus DLL, not from the location of the program .exe of the
      process.
      459c19b9
  26. 30 Nov, 2009 3 commits
  27. 14 Jul, 2009 1 commit
  28. 10 Jul, 2009 1 commit
  29. 15 Jan, 2008 1 commit
    • John (J5) Palmieri's avatar
      add OOM handling · c18415e2
      John (J5) Palmieri authored
      2008-01-15  John (J5) Palmieri  <johnp@redhat.com>
      
      	* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
      
      	* dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
      	_dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
      c18415e2
  30. 11 Oct, 2007 1 commit
  31. 14 Jul, 2007 1 commit
  32. 09 Jun, 2007 1 commit
    • Havoc Pennington's avatar
      2007-06-09 Havoc Pennington <hp@redhat.com> · 23832672
      Havoc Pennington authored
      	* bus/dispatch.c (check_get_connection_unix_process_id): adapt
      	since sysdeps-unix.h stuff isn't included anymore
      
      	* bus/bus.c (bus_context_new): use more abstract functions to
      	change user, so they can be no-ops on Windows
      
      	* dbus/dbus-credentials.c, dbus/dbus-credentials.h,
      	dbus/dbus-credentials-util.c: new files containing a fully opaque
      	DBusCredentials data type to replace the old not opaque one.
      
      	* configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
      	windows
      
      	* dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
      	up the uses of it in bus/*.c and factor out the parts of
      	cookie auth that depend on it
      23832672
  33. 20 May, 2007 1 commit