1 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
3 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
5 * dbus/dbus-errors.c (dbus_set_error): make sure to call va_end if we
6 hit an OOM error inside va_start (FDO Bug #12846)
8 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
10 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
12 * dbus/dbus-connection.c (dbus_connection_send_with_reply):
13 fix possible crash if pending_return is NULL (FDO Bug #12673)
15 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
17 * portions of patch submitted by Tim Mooney
18 <enchanter at users dot sourceforge dot net>
20 * configure.in: never auto-select libxml (FDO Bug #12479)
22 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
24 * patches by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
26 * dbus/dbus-sysdeps-unix (_dbus_get_autolaunch_address): handle OOM
29 * dbus/dbus-uuidgen.c (return_uuid): handle OOM (FDO Bug #12928)
31 * dbus/dbus-misc.c (dbus_get_local_machine_id): handle OOM, fix return
32 value to return NULL not FALSE (FDO Bug #12946)
34 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
36 * bus/bus.c (bus_context_check_security_policy): rewrite selinux error
37 handling to not abort due to a NULL read and to set the error only if
38 it is not already set (Based off of FDO Bug #12430)
40 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
42 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
44 * dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
45 _dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
47 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
49 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
51 * dbus/dbus-spawn.c (babysit, babysitter_iteration): add error
52 handling when polling (FDO Bug #12954)
54 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
56 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
58 * bus/config-parser.c (locate_attributes): remove dead code which
59 always evaluated to TRUE
61 * dbus/dbus-shell.c (_dbus_shell_quote): remove unused code
63 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
65 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
67 * bus/connection.c (bus_connection_complete): plug a possible
68 BusClientPolicy leak (FDO Bug #13242)
70 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
72 * patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz#
77 * bus/Makefile.am: add inotify module to the build
79 * bus/dir-watch-inotify.c: inotify module based off the dnotify and
82 * configure.in: add checks and switch for inotify
83 also add a printout at the end of configure if inotify and kqueue
84 support is being built in (dnotify already had this)
86 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
88 * patch by Frederic Crozat <fcrozat at mandriva dot com>
90 * bus/dir-watch-dnotify.c (bus_watch_directory): watch for file
93 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
95 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
97 * dbus/dbus-transport-socket.c(do_reading): return message
98 loader buffer in case of OOM (FDO Bug#12666)
100 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
102 * configure.in: add warning to output when libxml is selected since
103 we don't have a libxml maintainer and expat works perfectly fine
104 for what we need an xml parser for
106 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
108 * Patch by Andrea Luzzardi <scox at sig11 dot org>: creates a
109 _dbus_geteuid function to fix EXTERNAL authentication in setuid
112 * dbus/dbus-sysdeps-unix.c (_dbus_geteuid): used to get the effective
113 uid of the running program
114 (_dbus_credentials_add_from_current_process): use geteuid instead of
116 (_dbus_append_user_from_current_process): use geteuid instead of
119 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user): use
120 geteuid instead of getuid
121 (_dbus_unix_user_is_at_console): use geteuid instead of getuid
123 * dbus/dbus-sysdeps-win.c (_dbus_geteuid): add a windows equivilant
124 that returns DBUS_UID_UNSET
126 2007-12-18 Havoc Pennington <hp@redhat.com>
128 * dbus/dbus-connection.c (_dbus_connection_block_pending_call):
129 fix location of curly braces
131 2007-11-23 Sjoerd Simons <sjoerd@luon.net>
133 * tools/dbus-launch.c: let both a normal dbus-launch and an
134 autolaunched bus save their parameters in X11 if possible. This makes
135 the autolaunch and non-autolaunch behaviour more similar. With the
136 exception that on a normal launch there will always be a new session
137 bus and not being able to save parameters is not fatal. This also
138 enables to launch programs directly with autolaunch (not very usefull
141 2007-10-31 Havoc Pennington <hp@redhat.com>
143 * bus/selinux.c (log_audit_callback): rewrite to use
144 _dbus_string_copy_to_buffer_with_nul()
146 * dbus/dbus-string.c (_dbus_string_copy_to_buffer): change to NOT
147 nul-terminate the buffer; fail an assertion if there is not enough
148 space in the target buffer. This fixes two bugs where
149 copy_to_buffer was used to copy the binary bytes in a UUID, where
150 nul termination did not make sense. Bug reported by David Castelow.
151 (_dbus_string_copy_to_buffer_with_nul): new function that always
152 nul-terminates the buffer, and fails an assertion if there is not
153 enough space in the buffer.
155 2007-10-23 Havoc Pennington <hp@redhat.com>
157 * bus/bus.c (bus_context_new): use the new name here
159 * bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
160 to avoid possible libc conflict, and declare it in .h file to
163 2007-10-19 Havoc Pennington <hp@redhat.com>
165 * bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX
167 2007-10-19 Havoc Pennington <hp@redhat.com>
169 * bus/bus.c (bus_context_new): put the audit_init() in here
170 instead, which I believe ends up being the same as where it was
171 before, though I'm not sure I understand why it goes here.
173 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
174 remove audit_init() from here, this file can't depend on code in
177 2007-10-16 Simon McVittie <simon.mcvittie@collabora.co.uk>
179 * configure.in: *Actually* fix detection of i486 atomic ops -
180 my previous attempt at a fix would always enable them due to wrong
181 quoting. Patch from Colin Walters <walters@verbum.org>
183 2007-10-11 Simon McVittie <simon.mcvittie@collabora.co.uk>
185 * configure.in: enable Autoconf's AC_C_INLINE to avoid compilation
186 failure with gcc -ansi
187 * dbus/dbus-macros.h, dbus/dbus-arch-deps.h.in: Use new macro
188 _DBUS_GNUC_EXTENSION (the same as G_GNUC_EXTENSION) to avoid -ansi
189 warnings about use of "long long".
190 * dbus/dbus-server-socket.c: remove unused variable when assertions
192 * dbus/dbus-marshal-validate.c: avoid empty statements by removing
194 * tools/dbus-launch.c: convert C++-style comment to C-style, add {}
196 * .gitignore: ignore vi swapfiles
197 * dbus/dbus-errors.h, dbus/dbus-errors.c: Add DBUS_ERROR_INIT macro,
198 equivalent to calling dbus_error_init() on an uninitialized DBusError
199 * dbus/dbus-address.c, dbus/dbus-auth-script.c, dbus/dbus-auth-util.c,
200 dbus/dbus-connection.c, dbus/dbus-internals.c, dbus/dbus-keyring.c,
201 dbus/dbus-message-util.c, dbus/dbus-server.c, dbus/dbus-sha.c,
202 dbus/dbus-spawn-win.c, dbus/dbus-spawn.c,
203 dbus/dbus-sysdeps-util-win.c, dbus/dbus-transport-socket.c,
204 dbus/dbus-transport.c, dbus/dbus-userdb.c: use that macro instead of
205 calling dbus_error_init() where it's clearly equivalent
206 * configure.in, dbus/dbus-sysdeps.h, dbus/dbus-sysdeps-unix.c: Fix
207 detection of i486 atomic ops. Previously, the attempts to determine
208 support at compile-time on Darwin were causing the i486 atomic ops to
209 be used on *all* i386 or x86-64 GCC builds (AH_VERBATIM can't be
210 conditionalized like we were trying to).
212 2007-10-10 Simon McVittie <simon.mcvittie@collabora.co.uk>
214 * dbus/dbus-errors.c, dbus/dbus-protocol.h: Add new error
215 org.freedesktop.DBus.Error.ObjectPathInUse
216 * dbus/dbus-object-tree.h, dbus/dbus-object-tree.c,
217 dbus/dbus-connection.c, dbus/dbus-connection.h: add new functions
218 dbus_connection_try_register_object_path and
219 dbus_connection_try_register_fallback, which raise ObjectPathInUse
220 rather than asserting, to make object path registration less painful
222 * .gitignore: add various things that weren't in .cvsignore because
223 CVS implicitly ignored them; generally bring up to date
225 2007-10-09 John (J5) Palmieri <johnp@redhat.com>
227 * tools/run-with-tmp-session-bus.sh: Fix env exports for better
229 * tools/dbus-send.1: Document syntax for container types in dbus-send
230 man file (#9553) - patch from Jack Spaar <jspaar at
231 users.sourceforge.net>
233 [Both OK for MIT/X11 relicensing -smcv]
235 2007-10-09 Simon McVittie <simon.mcvittie@collabora.co.uk>
237 * doc/dbus-specification.xml: Specifically forbid empty structs (#7969)
238 * doc/dbus-specification.xml: Patches from Kristoffer Lundén to clarify
239 description of DBUS_COOKIE_SHA1 (#10184) and allowable contents of a
240 variant (#10185, amended as per Havoc's comments)
242 [All of the above are OK for MIT/X11 licensing]
244 2007-10-03 John (J5) Palmieri <johnp@redhat.com>
246 * dbus/dbus-internals.h: fd.o bug #11678 Don't error out if compiler
247 does not support vararg macros. _dbus_verbose is the only function
248 that does this so make it a noop if vararg macros are not supported
249 * bus/selinux.c, dbus/dbus-sysdeps-util-unix.c: fd.o bug #12429
250 Reverse check to setpcap and only init audit if we were root
251 (patch by Dan Walsh <dwalsh@redhat.com>,
252 https://bugs.freedesktop.org/show_bug.cgi?id=12429). Reverse
253 we_were_root check to setpcap if we were root. Also only init audit
254 if we were root. So error dbus message will not show up when policy
255 reload happens. dbus -session will no longer try to send audit
256 message, only system will.
257 * configure.in: fd.o bug #11872 improve linker test for --gc-sections.
258 Patch by Tim Mooney <enchanter at users.sourceforge.net>
259 * configure.in, dbus/dbus-sysdeps.c: fd.o bug #11872 fix clearenv for
260 systems that do not have it. Patch from Brian Cameron <brian.cameron
262 * tools/dbus-launch.c: fd.o bug #12547 remove superfluous if.
263 Also convert tabs to spaces
264 * configure.in, bus/Makefile.am, dbus/Makefile.am: Correctly implement
265 -fPIC and -fPIE. For security reasons we want possition independent
266 code for libraries and possition independent executable for
267 executables. Before we were just enabling -fPIC. Now we correctly
268 enable -fPIC and -PIE for libdbus and the bus respectively. Proper
269 LD_FLAGS are set for each also.
271 2007-09-20 Ryan Lortie <desrt@desrt.ca>
273 Add argument path matching support. Bug #11066.
275 * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
276 bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
277 match_rule_matches): Add support for parsing and matching on
278 arg0path='/some/path' type rules.
280 * dbus/signals.h (bus_match_rule_set_arg): change to take const
281 DBusString instead of const char * for the string to match against.
283 * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
284 documentation about the path matching.
286 * doc/dbus-specification.xml: add a more detailed description of the
289 2007-09-19 Ryan Lortie <desrt@desrt.ca>
291 Add support for compacting DBusStrings to release wasted memory.
293 * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
294 _dbus_string_lock): new compact function to free up allocated memory
295 that is no longer used.
297 * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
298 message loader buffer.
300 * dbus/dbus-transport-socket.c (do_reading, do_writing): call
301 _dbus_string_compact on the incoming/outgoing "encoded" buffers.
303 * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
306 2007-09-13 Ryan Lortie <desrt@desrt.ca>
308 * HACKING: add more explicit git branch/tag instructions
310 2007-09-13 Ryan Lortie <desrt@desrt.ca>
312 migrate from cvs to git (cvs2svn -> git-svnimport).
314 * HACKING: update release/branch/tag instructions
315 * */.cvsignore: rename to .gitignore
317 also, clean up tags and branch names to conform to HACKING
319 2007-08-17 William Jon McCann <mccann@jhu.edu>
321 * update-dbus-docs.sh: upload DTD to server
323 2007-08-17 Havoc Pennington <hp@redhat.com>
325 * tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
326 Lorenz to use long not int with XChangeProperty format 32
328 * dbus/dbus-sysdeps-util-unix.c
329 (_dbus_write_pid_to_file_and_pipe): factor this out, and use the
330 same code in _dbus_become_daemon (where the parent writes the pid
331 file and to the pid pipe) and in bus_context_new (where the daemon
332 writes its own pid file and to its own pid pipe)
334 * bus/bus.c (bus_context_new): close the pid pipe after we print
335 to it. Also, don't write the pid to the pipe twice when we fork,
336 someone reported this bug a long time ago.
338 2007-08-03 Havoc Pennington <hp@redhat.com>
340 * configure.in: add major/minor/micro version number AC_SUBST
342 * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
343 DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
344 DBUS_VERSION): collection of macros to get version of library we
345 are compiled against.
347 * dbus/dbus-misc.c (dbus_get_version): new function, to get
348 version of library we are linked against at runtime.
350 2007-07-30 Havoc Pennington <hp@redhat.com>
352 * bus/activation-helper.c (check_bus_name): don't use
353 _dbus_check_valid_bus_name() which is only around with
354 --enable-checks, instead use _dbus_validate_bus_name().
355 Bug #11766 from Diego <diego@pemas.net>
357 2007-07-27 Havoc Pennington <hp@redhat.com>
359 * configure.in: post-release version bump
361 2007-07-27 Havoc Pennington <hp@redhat.com>
365 2007-07-26 Havoc Pennington <hp@redhat.com>
367 * bus/config-parser-trivial.c (check_return_values): disable a
368 test that hardcoded the bus user's name
370 * bus/dispatch.c (bus_dispatch_test_conf): remove the "if
371 (!use_launcher)" around the tests, they were only failing because
372 we didn't pass through all the expected errors from the helper.
374 * bus/activation-exit-codes.h
375 (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
376 (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
377 failure code, so if a third party launch helper were written it
378 could just always return 1 on failure.
380 2007-07-24 Daniel P. Berrange <dan@berrange.com>
382 * bus/dbus-daemon.1: Add docs on new syntax options for the bus
385 * dbus/dbus-address.c: Allow * in addresses (for binding to all
388 * dbus/dbus-sysdeps.h:
389 * dbus/dbus-sysdeps-unix.c: Re-write to use getaddrinfo instead
390 of gethostbyname to enable protocol independant name lookup,
393 * dbus/dbus-server-socket.h:
394 * dbus/dbus-server-socket.c: Add support for 'family' in the
395 address string to specify ipv4 vs ipv6. Use a port string to
396 allow for service resolution. Allow for binding to multiple
397 sockets at once in case of dual IPv4 & IPv6 stacks.
399 * dbus/dbus-server-unix.c: Pass in an array of file descriptors
400 instead of a single one.
402 * dbus/dbus-transport-socket.h:
403 * dbus/dbus-transport-socket.c: Add support for 'family' in the
404 address string to specify ipv4 vs ipv6. Use a port string to
405 allow for service resolution.
407 2007-07-24 Havoc Pennington <hp@redhat.com>
409 * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
411 * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
412 TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
413 test shell_fail_service_auto_start when use_launcher==TRUE
415 * bus/activation-helper-bin.c (convert_error_to_exit_code): pass
416 through the INVALID_ARGS error so the test suite works
418 * bus/activation.c (handle_activation_exit_error): return
419 DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
421 * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
422 return only the exit code of the child, not the entire thingy from
423 waitpid(), and make the return value indicate whether the child
424 exited normally (with a status code)
426 * bus/bus.c (process_config_first_time_only): _dbus_strdup works
427 on NULL so no need to check
428 (process_config_every_time): move servicehelper init here, so we
429 reload it on HUP or config file change
431 * bus/Makefile.am (install-data-hook): remove comment because
432 Emacs make mode seems to be grumpy about it
434 2007-07-24 Richard Hughes <richard@hughsie.com>
437 * bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
438 (test_post_hook), (main):
439 Add back the test-system.c file - not sure now this got ignored in the
442 2007-07-24 Richard Hughes <richard@hughsie.com>
445 Use ustar to generate the tarball; this fixes the make distcheck
446 problem when the data files do not fit in the archive:
447 tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
448 TestSuiteShellEchoServiceFail.service.in: file name is too
449 long (max 99); not dumped
451 We have to have the 'long' names as the service helper matches by
452 filename rather than by the name in the service file.
454 2007-07-24 Richard Hughes <richard@hughsie.com>
458 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
459 uiteNoExec.service.in:
460 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
461 uiteNoService.service.in:
462 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
463 uiteNoUser.service.in:
464 * test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
465 * test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
466 * test/data/valid-config-files/debug-allow-all-sha1.conf.in:
467 * test/data/valid-config-files/debug-allow-all.conf.in:
468 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
469 teEchoService.service.in:
470 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
471 teSegfaultService.service.in:
472 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
473 teShellEchoServiceFail.service.in:
474 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
475 teShellEchoServiceSuccess.service.in:
476 * test/data/valid-service-files/debug-echo.service.in:
477 * test/data/valid-service-files/debug-segfault.service.in:
478 * test/data/valid-service-files/debug-shell-echo-fail.service.in:
479 * test/data/valid-service-files/debug-shell-echo-success.service.in:
480 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
482 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
483 ultService.service.in:
484 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
485 EchoServiceFail.service.in:
486 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
487 EchoServiceSuccess.service.in:
488 Add the data files needed by the system activation unit checks.
490 2007-07-24 Richard Hughes <richard@hughsie.com>
492 * bus/dispatch.c: (check_segfault_service_no_auto_start),
493 (check_launch_service_file_missing),
494 (check_launch_service_user_missing),
495 (check_launch_service_exec_missing),
496 (check_launch_service_service_missing), (bus_dispatch_test_conf),
497 (bus_dispatch_test_conf_fail), (bus_dispatch_test):
498 Add unit tests for system activation. Most are copied from the
499 session activation tests, but some didn't apply when using a laucher.
501 2007-07-24 Richard Hughes <richard@hughsie.com>
503 * bus/activation.c: (bus_activation_activate_service):
504 If the bus uses a service-laucher, then use the setuid laucher.
506 2007-07-24 Richard Hughes <richard@hughsie.com>
509 Add the needed library exports for the new laucher.
511 2007-07-24 Richard Hughes <richard@hughsie.com>
514 Check for -Wl,--gc-sections so we can really reduce the size of the
517 2007-07-24 Richard Hughes <richard@hughsie.com>
519 * bus/activation.c: (handle_activation_exit_error),
520 (babysitter_watch_callback):
521 Map the child exit status integer to a proper dbus error.
523 2007-07-24 Richard Hughes <richard@hughsie.com>
525 * bus/bus.c: (process_config_first_time_only),
526 (process_config_every_time), (bus_context_unref),
527 (bus_context_get_servicehelper):
529 Add the concept of a service-helper and allow it's value to be read.
531 2007-07-24 Richard Hughes <richard@hughsie.com>
533 * bus/activation.c: (bus_activation_entry_unref),
534 (update_desktop_file_entry):
535 Add the concept of, and read the value of user from the desktop file.
536 The user string is not required unless we are using system activation.
538 2007-07-24 Richard Hughes <richard@hughsie.com>
541 * bus/desktop-file.h:
542 Move the defines into the header file, as we use these in the lauch
543 helper as well as the desktop file parsing.
545 2007-07-24 Richard Hughes <richard@hughsie.com>
548 Add the autogenerated binary files.
550 2007-07-24 Richard Hughes <richard@hughsie.com>
554 Add the build glue for the lauch helper, and also add the launch-helper
555 OOM checks into make check. I've probably broken the build, give me 2.
557 2007-07-24 Richard Hughes <richard@hughsie.com>
559 * bus/test-launch-helper.c: (die), (check_memleaks),
560 (test_post_hook), (bus_activation_helper_oom_test), (main):
561 Add a test wrapper to allow OOM checks on the launch helper.
563 2007-07-24 Richard Hughes <richard@hughsie.com>
565 * bus/activation-helper-bin.c: (convert_error_to_exit_code),
567 * bus/activation-helper.c: (desktop_file_for_name),
568 (clear_environment), (check_permissions), (check_service_name),
569 (get_parameters_for_service), (switch_user),
570 (exec_for_correct_user), (check_bus_name), (get_correct_parser),
571 (launch_bus_name), (check_dbus_user), (run_launch_helper):
572 * bus/activation-helper.h:
573 Add the initial launch-helper. This is split into a main section and a
574 binary loader that allows us to lauch the main section in another test
575 harness to do stuff like OOM testing. No build glue yet.
577 2007-07-24 Richard Hughes <richard@hughsie.com>
580 * bus/config-parser.c: (bus_config_parser_unref),
581 (start_busconfig_child), (bus_config_parser_end_element),
582 (servicehelper_path), (bus_config_parser_content),
583 (bus_config_parser_finished),
584 (bus_config_parser_get_servicehelper),
585 (test_default_session_servicedirs),
586 (test_default_system_servicedirs), (bus_config_parser_test):
587 * bus/config-parser.h:
588 Make the config-parser code use the common config code.
589 Also add the session and systemdirs stuff, and make the config parser
590 aware of the servicehelper field.
592 2007-07-24 Richard Hughes <richard@hughsie.com>
594 * bus/system.conf.in:
595 Add new servicehelper fields to the default system.conf file.
597 2007-07-24 Richard Hughes <richard@hughsie.com>
599 * bus/config-parser-trivial.c: (service_dirs_find_dir),
600 (service_dirs_append_link_unique_or_free), (bus_config_parser_new),
601 (bus_config_parser_unref), (bus_config_parser_start_element),
602 (bus_config_parser_end_element), (bus_config_parser_content),
603 (bus_config_parser_finished), (bus_config_parser_get_user),
604 (bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
605 (check_return_values), (do_load), (check_loader_oom_func),
606 (process_test_valid_subdir), (make_full_path), (check_file_valid),
607 (bus_config_parser_trivial_test):
608 * bus/config-parser-trivial.h:
609 Add a security sensitive stripped down config parser for the setuid
610 launcher. This file only reads what it needs, and doesn't try to do
611 anything remotely clever like including external files.
612 It is not intended to validate the config file; it is expected that
613 config-parser will do that before the setuid program tries to read it.
615 2007-07-24 Richard Hughes <richard@hughsie.com>
617 * bus/config-parser-common.c:
618 (bus_config_parser_element_name_to_type),
619 (bus_config_parser_element_type_to_name):
620 * bus/config-parser-common.h:
621 We don't want to run the whole config parser with all it's deps in the
622 setuid program. We need to implement a stripped down config parser just
623 for the launcher, and to do so I need some common functions and
624 defines; add them here.
626 2007-07-24 Richard Hughes <richard@hughsie.com>
628 * dbus/dbus-sysdeps-unix.c:
629 (_dbus_get_standard_system_servicedirs):
630 * dbus/dbus-sysdeps-win.c:
631 Provide a way to get the standard system servicedirs, just like we do
632 for the session service dirs. These should be seporate, as there may
633 be a security issue starting up some session stuff as root.
634 The use-case for the same binary starting up per-system _and_
635 per-session is also not valid.
637 2007-07-24 Richard Hughes <richard@hughsie.com>
639 * bus/dbus-daemon.1.in:
640 Add standard_system_servicedirs and servicehelper into the man file
641 and explain what each does.
643 2007-07-24 Richard Hughes <richard@hughsie.com>
646 Add servicehelper into the dtd, it will soon be a valid part of the
649 2007-07-24 Richard Hughes <richard@hughsie.com>
651 * dbus/dbus-spawn.c: (read_data),
652 (_dbus_babysitter_get_child_exit_status):
654 Add a function so we can get access to the exit status of the launch
656 By providing the return code and not the error we can leave the
657 'what does this mean?' to the bus launch code and not include it in the
660 2007-07-24 Richard Hughes <richard@hughsie.com>
662 * bus/activation-exit-codes.h:
663 Add defines which specify the output codes of the launch helper.
664 We have to use exit codes as this is the only way we can return failure
665 type without going grotty things like redirecting possibly-nonsecure
666 stderr into the error.
668 2007-07-24 Richard Hughes <richard@hughsie.com>
670 * dbus/dbus-protocol.h:
671 Add new error names needed for the launch helper.
673 2007-07-24 Richard Hughes <richard@hughsie.com>
675 * dbus/dbus-sysdeps.c: (_dbus_clearenv):
676 * dbus/dbus-sysdeps.h:
677 Add a wrapper for clearenv.
679 2007-07-24 Richard Hughes <richard@hughsie.com>
681 * doc/system-activation.txt:
682 Add design document for the system activation parts. I'll shortly be
683 committing many patches that add system activation using a setuid
684 launcher into CVS, so expect things to be broken for a few hours.
686 2007-07-19 Ralf Habacker <ralf.habacker@freenet.de>
688 * cmake/modules/FindKDEWIN.cmake: fixed comment
689 * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
691 2007-07-18 Havoc Pennington <hp@redhat.com>
693 * dbus/dbus-message.c (dbus_message_get_cached)
694 (dbus_message_cache_or_finalize): don't mess with message from
695 message cache outside of the cache lock. Bug #9164 from Jonathan
698 2007-07-13 Havoc Pennington <hp@redhat.com>
700 * Add indent-tabs-mode: nil to all file headers.
702 2007-07-12 Havoc Pennington <hp@redhat.com>
704 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
705 for parsing hex as double to be sure it fails to work
707 * dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
709 2007-07-10 Havoc Pennington <hp@redhat.com>
711 * dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
712 Hochreutiner to avoid trying to protect individual bits in a word
713 with different locks (make dispatch_acquired and io_path_acquired
714 dbus_bool_t rather than bitfields)
716 2007-07-09 Ralf Habacker <ralf.habacker@freenet.de>
718 * dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,
719 dbus-sysdeps-spawn-win.c: synced with windbus sources
721 2007-07-07 Ralf Habacker <ralf.habacker@freenet.de>
723 * dbus/dbus-sysdeps-win.c
724 (_dbus_getsid): remove unused jump label
725 (_dbus_read_credentials_socket): _dbus_string_init could fail,
727 (_dbus_get_working_dir, _dbus_init_working_dir): remove unused
730 2007-07-04 Ralf Habacker <ralf.habacker@freenet.de>
732 * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs
733 for windows supplementary packages too
735 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
737 * cmake/dbus/CMakeLists.txt: handle userdb as unix file
739 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
741 * dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate
744 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
746 * dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
748 2007-06-23 Ralf Habacker <ralf.habacker@freenet.de>
750 * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and
751 WIN_ONLY commands for auth scripts
752 * test/data/auth/external-root.auth-script: limit execution to unix
754 2007-06-21 Havoc Pennington <hp@redhat.com>
756 * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
759 2007-06-21 Havoc Pennington <hp@redhat.com>
761 * dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
762 not be the same as before, the ABI has never been declared stable
763 on Windows and 2) do not commit to cross-platform files without
764 posting the exact patch to the mailing list
766 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
767 out before, either 0xff needs to work on both platforms, or none
768 of the dbus code can rely on it working. That means the options
769 are 1) audit the code for anywhere that relies on 0xff working, if
770 none found ideally add a test that it *doesn't* work and make unix
771 reject it explicitly, but in any case this test would go away or
772 2) make it work on Windows also, then we don't have to figure out
773 whether we rely on it.
775 And in either case, post the exact patch to the mailing list and
778 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
780 * cmake/CMakeLists.txt: added VERSION_PATCH to be able to
781 distinguish win32 binary release from dbus versioning
783 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
785 * dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
786 (_dbus_getsid): new function
787 (_dbus_read_credentials_socket): used correct function
788 (_dbus_append_user_from_current_process,
789 _dbus_credentials_add_from_current_process): added real
791 (_dbus_credentials_parse_and_add_desired,_dbus_parse_uid):
794 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
796 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): don't check
797 0xff as floating point, this isn't supported on win32 math
800 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
802 * dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username,
803 _dbus_homedir_from_current_process, _dbus_append_desired_identity):
804 removed obsolate functions
806 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
808 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-util-win.c,
809 dbus/dbus-sysdeps-win.h: disabled uid/sid conversation stuff
810 implementation by Peter Kuemmel
812 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
814 * dbus/dbus-watch.c (dbus_watch_get_fd): this function is
815 deprecated and its behavior should be as before until all
816 client code is migrated.
818 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
820 * dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c:
821 msvc7.1 fixes by Jaroslaw Staniek tested with mingw
823 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
825 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c,
826 dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation
829 2007-06-18 Ralf Habacker <ralf.habacker@freenet.de>
831 * dbus-win.patch: removed obsolate patches
833 2007-06-18 Havoc Pennington <hp@redhat.com>
835 * configure.in: bump version to 1.1.2 so CVS is higher than last
836 release (this is not the 1.1.2 release)
838 2007-06-18 Havoc Pennington <hp@redhat.com>
842 2007-06-18 Havoc Pennington <hp@redhat.com>
844 * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
846 * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
848 * bus/bus.c (bus_context_new): generate a unique ID for each bus context
850 * dbus/dbus-connection.c (dbus_connection_get_server_id): new function
852 * dbus/dbus-bus.c (dbus_bus_get_id): new function
854 * dbus/dbus-server.c (dbus_server_get_id): new function
856 2007-06-18 Havoc Pennington <hp@redhat.com>
858 * dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
859 this up a little bit, to try and understand why telnet'ing to a
860 server and sending a non-nul byte didn't disconnect immediately;
861 now it seems that it does disconnect immediately as it should,
862 though I don't understand what has changed.
864 2007-06-18 Havoc Pennington <hp@redhat.com>
866 * dbus/dbus-watch.c (dbus_watch_get_socket)
867 (dbus_watch_get_unix_fd): new API to match DBusConnection
868 (dbus_watch_get_fd): deprecate this
870 Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
871 now since all the transports use sockets anyway
873 2007-06-16 Ralf Habacker <ralf.habacker@freenet.de>
875 * dbus/dbus-macros.h, dbus/dbus-message.c,
876 dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED
877 to DBUS_DEPRECATED and extended to msvc compiler
879 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
881 * cmake/CMakeLists.txt: use local include header first
883 * dbus/dbus-sysdeps-win.c: mingw fix of DBusCredential struct
885 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
887 * cmake/ConfigureChecks.cmake,cmake/config.h.cmake:
888 added check for HAVE_ERRNO_H
890 * cmake/dbus/CMakeLists.txt: added missing files
892 * dbus/dbus-transport-win.c/.h: new files
894 * dbus/dbus-sysdeps-win.c,.h: added required _unix functions
895 to make dbus compilable on win32
897 * dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to
900 * dbus-win.patch: removed applied or obsolate patches
902 Note: dbus-win32 is now compilable, no guarantee that it runs
905 2007-06-15 Havoc Pennington <hp@redhat.com>
907 * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
908 (_dbus_append_system_config_file): new functions
910 * bus/main.c (main): use _dbus_append_system_config_file() and
911 _dbus_append_session_config_file()
913 * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
914 DBUS_SESSION_CONFIG_FILE into this makefile
916 2007-06-15 Havoc Pennington <hp@redhat.com>
918 * dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
919 (_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
920 (_dbus_strerror_from_errno): family of functions to abstract
921 errno, though these are somewhat bogus (really we should make our
922 socket wrappers not use errno probably - the issue is that any
923 usage of errno that isn't socket-related probably is not
924 cross-platform, so should either be in a unix-only file that can
925 use errno directly, or is a bug - these general errno wrappers
926 hide issues of this nature in non-socket code, while
927 socket-specific API changes would not since sockets are allowed
930 2007-06-14 Havoc Pennington <hp@redhat.com>
932 * bus/dispatch.c (check_get_connection_unix_process_id): mop up
933 getpid() (noticed by Peter Kümmel) and adapt the test to
934 expect a "pid unknown" error when running on Windows.
936 2007-06-14 Havoc Pennington <hp@redhat.com>
938 * dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
939 delete this function since it was effectively the same as
940 _dbus_credentials_add_from_username()
942 2007-06-14 Havoc Pennington <hp@redhat.com>
944 * dbus/dbus-auth.c: adapt to keyring changes
946 * dbus/dbus-keyring.c: change to avoid using user ID and home
947 directory directly; instead use a
948 keyring-location-from-credentials function in dbus-sysdeps
950 * fix to use _dbus_append_user_from_current_process() instead of
951 _dbus_username_from_current_process() or _dbus_append_desired_identity().
953 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
955 * reverted global rename of function _dbus_username_from_current_process.
956 It needs too much tests to verify that the change does not break anything.
957 I had overseen that the signatures are different and requires non
959 This is one *major* disadvantage of emulating oop functionality with c.
960 You are responsible for cleaning every object on every function return point
961 which could be a nightmare if you are not working with dbus all the days.
963 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
965 * dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech):
966 fixed usage of _dbus_append_desired_identity()
968 * dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
970 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
972 * dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
974 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
976 * global rename of function _dbus_username_from_current_process
977 to _dbus_append_desired_identity.
978 Approved by Havoc Pennington
980 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
982 * dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
983 (_dbus_append_desired_identity, _dbus_windows_user_is_process_owner):
984 new win32 functions as counterpart of unix related
985 (_dbus_send_credentials_socket,_dbus_read_credentials_socket):
986 renamed from ..._unix_socket
987 (_dbus_send_credentials_unix_socket): removed obsolate function
989 * dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
990 (_dbus_verify_daemon_user,_dbus_change_to_daemon_user):
991 new win32 functions as counterpart of unix related
993 2007-06-14 Simon McVittie <simon.mcvittie@collabora.co.uk>
995 * doc/dbus-specification.xml: say the protocol version is 1 instead of
996 0 (patch from Kristoffer Lundén, fd.o#10033) and remove the FIXME
997 about removing protocol version from messages (as per Havoc's comment
1000 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
1002 * dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches):
1003 new win32 functions as counterpart of unix related
1005 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
1007 * cmake/modules/FindKDEWIN.cmake,
1008 cmake/modules/FindKDEWIN_Packager.cmake,
1009 cmake/modules/Win32Macros.cmake: new files from the
1011 * cmake/CMakeLists.txt: cleaned support for kdewin installer and
1012 win32 explorer wrapper
1014 2007-06-13 Havoc Pennington <hp@redhat.com>
1016 * dbus/dbus-message.c (dbus_message_iter_open_container): Fix
1017 broken return_if_fail (kind of scary that test suite does not
1020 2007-06-13 Havoc Pennington <hp@redhat.com>
1022 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
1023 all_interfaces=true|false for tcp servers
1025 * dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
1028 * bus/selinux.c: fix some missing includes
1030 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
1031 port to simply be omitted in addition to specifying 0
1033 2007-06-13 Havoc Pennington <hp@redhat.com>
1035 * configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
1036 libaudit support, no clue what this means really but now we have
1037 it. Patches from Fedora package.
1039 * bus/bus.c (bus_context_new): move selinux initialization after
1040 changing to daemon user, patch from Fedora package
1042 * dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
1044 2007-06-12 Havoc Pennington <hp@redhat.com>
1046 * dbus/dbus-message.c (dbus_message_iter_open_container): improve
1047 the checks/warnings for contained_signature a bit
1049 2007-06-12 Havoc Pennington <hp@redhat.com>
1051 * dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
1052 improve the warning a bit if you write extra data into a message
1054 2007-06-12 Havoc Pennington <hp@redhat.com>
1056 * dbus/dbus-auth.c (sha1_handle_second_client_response)
1057 (handle_server_data_anonymous_mech): add the process ID from
1058 socket credentials, if available, even if not using EXTERNAL
1060 * dbus/dbus-transport.c (auth_via_default_rules): support
1061 allow_anonymous flag
1063 * dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
1064 (dbus_connection_set_allow_anonymous): new API for controlling
1067 2007-06-09 Havoc Pennington <hp@redhat.com>
1069 * dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
1070 think an empty line is the end of the file.
1071 Also, fix some whitespace.
1073 * dbus/dbus-string-util.c: add more tests for
1074 _dbus_string_pop_line() revealing that it thinks an empty line is
1075 the end of the file, which broke dbus-auth-script.c so
1076 it didn't really run the scripts
1078 * dbus/dbus-auth.c: add ANONYMOUS mechanism
1080 * dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
1081 an empty/no-op auth script; add commands to check that we have or
1082 don't have the expected credentials
1084 2007-06-09 Havoc Pennington <hp@redhat.com>
1086 * bus/policy.c (bus_policy_create_client_policy): gracefully
1087 continue if the connection has no unix user - just don't apply
1088 any unix user dependent rules.
1090 * bus/config-parser.c: remove dbus-userdb.h usage
1092 * bus/bus.c: remove dbus-userdb.h usage
1094 * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
1095 support Windows user function; also, fix the logic for checking
1096 auth as root in the default auth code (broken in the previous
1099 * dbus/dbus-connection.c
1100 (dbus_connection_set_windows_user_function): new function
1101 (dbus_connection_get_windows_user): new function
1103 2007-06-09 Havoc Pennington <hp@redhat.com>
1105 * bus/dispatch.c (check_get_connection_unix_process_id): adapt
1106 since sysdeps-unix.h stuff isn't included anymore
1108 * bus/bus.c (bus_context_new): use more abstract functions to
1109 change user, so they can be no-ops on Windows
1111 * dbus/dbus-credentials.c, dbus/dbus-credentials.h,
1112 dbus/dbus-credentials-util.c: new files containing a fully opaque
1113 DBusCredentials data type to replace the old not opaque one.
1115 * configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
1118 * dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
1119 up the uses of it in bus/*.c and factor out the parts of
1120 cookie auth that depend on it
1122 2007-06-07 Havoc Pennington <hp@redhat.com>
1124 * dbus/dbus-message.c: improve some docs related to reading values
1127 2007-06-02 Ralf Habacker <ralf.habacker@freenet.de>
1129 * cmake: added cygwin compile support
1131 2007-06-01 Ralf Habacker <ralf.habacker@freenet.de>
1133 * tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
1135 * cmake/dbus-launch.bat.cmake: removed obsolate file
1137 2007-05-31 Ralf Habacker <ralf.habacker@freenet.de>
1139 * bus/main.c (main): uses _dbus_get_config_file_name() to detect
1140 session.conf location on win32.
1142 * dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists):
1143 new prototyp, undefined interface after including windows.h because
1144 it makes trouble when a paramater is named interface.
1146 * dbus-sysdeps-win.c (_dbus_get_install_root,
1147 _dbus_get_config_file_name,_dbus_file_exists): new functions.
1149 2007-05-27 Ralf Habacker <ralf.habacker@freenet.de>
1151 * bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings
1152 as reported by Peter Kümmel.
1154 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1158 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1160 * Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
1161 We forgot to do this during the 1.0 release and it makes sense
1162 now as we get ready to release the first 1.1.0 development tarball
1164 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1166 * create directory test/data/valid-config-files/session.d so that
1169 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1171 * INSTALL: remove dependancies for bindings since they no longer
1174 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1176 * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file
1177 with empty function _dbus_server_listen_platform_specific().
1179 * dbus/dbus-server.c (listen_funcs): uses
1180 _dbus_server_listen_platform_specific on any platform.
1182 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1184 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting
1185 user info from a domain controller isn't an error, the computer
1186 may run in a non domain context.
1188 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1190 * dbus/dbus-sysdeps-win.c (_dbus_full_duplex_pipe): fixed assertation.
1192 2007-05-24 Simon McVittie <simon.mcvittie@collabora.co.uk>
1194 * bus/config-parser.c (test_service_dir_matches): fixed ordering for unix.
1196 * bus/config-parser.c (test_default_session_servicedirs): made allocation
1197 of _progs platform independent.
1199 2007-05-23 Havoc Pennington <hp@redhat.com>
1201 * bus/Makefile.am (install-data-hook): create session.d
1203 * bus/session.conf.in: add session.d for the session bus, so
1204 security policy can be extended
1206 2007-05-22 Ralf.Habacker <ralf.habacker@freenet.de>
1208 * cmake/CMakeLists.txt: fixed creating of TEST_..._BINARY to make
1209 bus-test able to find the binaries.
1211 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1213 * acinclude.m4, configure.in: In recent autotools, ${datadir} is
1214 defined in terms of ${datarootdir}, so EXPANDED_DATADIR needs to be
1215 expanded recursively. Rather than fixing configure.in to do this, I
1216 grabbed the AS_AC_EXPAND macro from autostars.sf.net, which seems to be
1219 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1221 * update-dbus-docs.sh: Assorted improvements:
1222 - Default user if $FDUSER is not set is the ssh default
1223 (set in ~/.ssh/config or based on the local username), not a
1225 - Temporary checkout directory is created securely (preventing symlink
1226 attacks), if mktemp(1) is available
1227 - Use make -C rather than cd && make && cd ..
1229 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1231 * HACKING: Point to correct mailing list
1233 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1235 * doc/dbus-specification.xml: explicitly specify that STRING cannot
1236 contain embedded NULs.
1238 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1240 * dbus/dbus-internal.c: fix inline problem on win32.
1242 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1244 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not reaching
1245 domain controller isn't an error, converted error message to verbose
1248 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1250 * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): disabled
1251 tests not running on wince.
1253 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1255 * dbus/dbus-internals.c (_dbus_verbose_init): win32 requires 'varname='
1256 to unset a environment variable.
1258 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1260 * dbus/dbus-sysdeps.c (_dbus_setenv): win32 requires 'varname='
1261 to unset a environment variable.
1263 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1265 * bus/policy.c (bus_policy_create_client_policy):
1266 win32 temporary fix until the userdb stuff is ported completly.
1268 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1270 * dbus/dbus-server.c (listen_funcs):
1271 _dbus_server_listen_platform_specific is empty on win32,
1272 limited to unix only.
1274 * dbus/dbus-server.c (valid_addresses): limit unix
1275 only addresses to unix.
1277 2007-05-18 Havoc Pennington <hp@redhat.com>
1279 * doc/dbus-specification.xml: add a GetAll to the Properties
1282 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1284 * bus\config-parser.c (test_default_session_servicedirs):
1287 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1289 * configure.in: define constant DBUS_UNIX.
1291 2007-05-14 Ralf Habacker <ralf.habacker@freenet.de>
1293 * dbus/dbus-sysdeps-win.c (_dbus_printf_string_upper_bound):
1294 compile fix for MS Platform SDK 6
1295 patch from Michael Luschas <mluschas@gmail.com>
1297 2007-05-10 John (J5) Palmieri <johnp@redhat.com>
1299 * dbus-1.pc.in: add daemondir to pc file
1300 patch from Brian Cameron <brian.cameron at sun.com>
1302 2007-05-04 Simon McVittie <simon.mcvittie@collabora.co.uk>
1304 * doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local
1305 interface and the corresponding /o/fd/DBus/Local object path;
1306 describe them as reserved and forbid using them in a sent message,
1307 mentioning that in the reference implementation this will cause the
1308 connection to be dropped. Patch approved by Havoc.
1310 2007-04-28 Ralf Habacker <ralf.habacker@freenet.de>
1312 * cmake/: don't install test applications and service files,
1313 moved CMAKE_DEBUG_POSTFIX to top level CMakeLists.txt
1315 2007-04-27 Havoc Pennington <hp@redhat.com>
1317 * dbus/dbus-sysdeps-unix.c (_dbus_open_socket): fix #10781 from
1318 Tobias Nygren, checking pointer to fd vs. 0 rather than checking
1321 2007-04-26 Ralf Habacker <ralf.habacker@freenet.de>
1323 * cmake/: added debug postfixes to debug exe's for
1325 * dbus\dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1326 print error code in case no string message is available.
1328 2007-04-06 Simon McVittie <simon.mcvittie@collabora.co.uk>
1330 * dbus/dbus-message-util.c, dbus/dbus-message.c,
1331 dbus/dbus-message.h: Add API to convert a DBusMessage to/from a
1332 byte array. Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>,
1333 approved by Havoc Pennington.
1335 2007-04-03 Timo Hoenig <thoenig@suse.de>
1337 * dbus/dbus-address.c (dbus_parse_address): Do not accept zero-
1339 * dbus/dbus-address.c (_dbus_address_test): Add test for zero-
1342 2007-03-25 Ralf.Habacker <ralf.habacker@freenet.de>
1344 * cmake/dbus/CMakeLists.txt: debug postfix also for mingw.
1346 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1348 * cmake/modules/FindExpat.cmake: fix package detection on win32.
1350 * README.win: update install instructions.
1352 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1354 * dbus/dbus-sysdeps.h (_dbus_split_paths_and_append):
1356 (_DBUS_PATH_SEPARATOR): new macro.
1358 * dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged
1359 from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c.
1361 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1363 * bus/config-parser.c, bus/policy.c,
1364 bus/policy.h, bus/dbus-daemon.1.in,
1365 bus/session.conf.in: added eavesdrop support
1366 for replies - patch by olli.salli at collabora.co.uk
1367 approved by Havoc Pennington.
1369 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1371 * dbus\dbus-sysdeps-win-thread.c: renamed to
1372 dbus-sysdeps-thread-win.c, it is a platform depending file
1373 similar to dbus-sysdeps-pthread.c.
1375 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1377 * cmake\doc\CMakeLists.txt: added prelimary xml doc
1378 support, needs cmake Find script.
1380 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1382 * cmake: add doxygen support
1384 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1386 * cmake/config.h.cmake: WINCE fixes, defined DBUS_UNIX.
1388 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1390 * dbus/dbus-sysdeps-util-win.c (dbus_become_daemon):
1393 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1395 * dbus-win.patch: removed obsolate patches.
1397 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1399 * dbus/dbus-sysdeps-win.c: added zero byte sending
1400 and receiving after connection start up
1402 2007-03-11 Havoc Pennington <hp@redhat.com>
1404 * tools/dbus-launch.c (do_close_stderr): fix C89 problem and
1407 * Mostly fix the DBusPipe mess.
1408 - put line break after function return types
1409 - put space before parens
1410 - do not pass structs around by value
1411 - don't use dbus_strerror after calling supposedly cross-platform
1413 - don't name pipe variables "fd"
1414 - abstract special fd numbers like -1 and 1
1416 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1418 * dbus/dbus-sysdeps-win.h, dbus/dbus-sysdeps-win.c,
1419 dbus/dbus-sysdeps-util-win.c: renamed functions
1420 _dbus_xxx_file() to _dbus_file_xxx() to reflect
1421 struct name DBusFile.
1423 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1425 * dbus/dbus-sysdeps-util-unix.c (_dbus_become_daemon):
1426 fix _dbus_pid_fd check.
1428 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1430 * tools/dbus-print-message.c (print_message):
1431 added printing of the reply serial to method returns and
1432 errors, so you can actually figure out the message/reply
1433 pairs - patch by olli.salli at collabora.co.uk.
1435 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1437 * dbus-win.patch: removed committed patches.
1439 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1441 * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c,
1442 dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c,
1443 dbus/dbus-sysdeps-util-win.c, dbus/dbus-sysdeps-win.c,
1444 dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx,
1445 completed _dbus_pipe support.
1447 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1449 * dbus/dbus-sysdeps.h (_dbus_listen_tcp_socket):
1450 changed type or port to pointer, because the port is given back.
1452 * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
1453 implemented returning tcp port. Skipping port parameter
1454 and non integer port values in config <listen> statement
1457 * dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c
1458 (_dbus_listen_tcp_socket): return the real used tcp port.
1460 * bus/dbus-daemon.1.in: added <listen> tcp examples
1462 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1464 * cmake/config.h.cmake: win32 msvc bug fix
1466 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1468 * cmake/config.h.cmake: fixed DBUS_WINxx defines,
1469 using _WINCE does not work.
1471 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1473 * dbus-win.patch: removed _dbus_write_pipe() patch, it is now
1476 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1478 * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h:
1479 rename pipe related write() function calls to _dbus_write_pipe().
1481 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1483 * dbus-win.patch: added bus/config-loader-libexpat.c patch,
1484 uses DBUS_WIN for alls win32 related #ifdefs,
1487 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1489 * dbus-win.patch: updated patch for bus/dispatch.c.
1491 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1493 * dbus-win.patch: dbus-connection.c (dbus_connection_get_unix_user,
1494 dbus_connection_get_unix_process_id): Let return them valid user id's,
1495 otherwise bus-test fails. How to replace on win32 ?.
1497 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir):
1500 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1502 * dbus/dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1503 use dbus friendly error name.
1504 (fill_win_user_info_homedir): print user name in error case too.
1506 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1508 * cmake/ConfigureChecks.cmake: fixed socketpair check
1510 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1512 * bus/dispatch.c: disabled segfault test on win32 for now
1514 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1516 * configure.in, cmake/ConfigureChecks.cmake: added check
1518 * test/test-segfault.c: only include setrlimit stuff only
1521 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1523 * test/test-segfault.c: unix compile fix.
1524 * dbus-win.patch: removed obsolate patches.
1526 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1528 * bus/activation.c: removed obsolate include header.
1529 * test/test-segfault.c: win32 compile fix, rlimit
1530 isn't available on win32.
1531 * dbus-win.patch: removed some more patches, they
1532 are applied or obsolate
1534 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1536 * bus-win.patch: fixes unix listen problems, dbus-test
1539 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1541 * cmake/dbus/CMakeLists.txt,cmake/bus/CMakeLists.txt,
1542 cmake/CMakeLists.txt: win32 compile fix
1544 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1546 * dbus-win.patch, README.win: added available win32
1547 patches from windbus project (http://sf.net/projects/windbus)
1549 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1551 * bus/activation.c: (bus_activation_activate_service):
1552 fixed call to _dbus_spawn_async_with_babysitter().
1554 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1556 * dbus/dbus-spawn.c,dbus/dbus-spawn.h (_dbus_spawn_async_with_babysitter):
1557 added environment pointer as function parameter, used on win32.
1559 * test/spawn-test.c: fixed call to above mentioned function.
1561 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1563 * configure.in,test/test-sleep-forever.c,test/test-names.c:
1564 added configure check for unistd.h.
1566 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1568 * test/Makefile.am: fixed test data copy problem in
1569 out of source build, when sources came from svn or cvs.
1571 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1573 * dbus/*-win.*,bus/*-win.*: added win32 platform related
1574 files. These files are only added to the cmake build system.
1575 The missing dbus-win.patch file will be added later.
1577 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1579 * cmake: new directory, contains cmake build support.
1580 See http://www.cmake.org for more informations.
1581 Currently only unix will be buildable because some
1582 win32 required files are still missing.
1584 2007-03-03 Thiago Macieira <thiago@kde.org>
1586 * dbus/dbus-sysdeps-unix.c: capture the dbus-launch stderr
1587 output and add it to the DBusError message we return.
1589 * tools/dbus-launch.1:
1590 * tools/dbus-launch.c: Add option --close-stderr to, well,
1591 close stderr before starting dbus-daemon.
1593 2007-01-31 Havoc Pennington <hp@redhat.com>
1595 * bus/dbus-daemon.1.in: write a section in the man page on running
1596 a test daemon for debugging purposes
1598 2007-01-26 Havoc Pennington <hp@redhat.com>
1600 * bus/session.conf.in: override all the default limits with much
1601 higher limits on the session bus, there is no reason the session
1602 bus should have low limits
1604 * bus/config-parser.c (bus_config_parser_new): increase default
1605 limits so they are less likely to be hit; in particular the max
1606 replies per connection was way too low
1608 2006-01-25 Simon McVittie <simon.mcvittie@collabora.co.uk>
1610 * doc/dbus-tutorial.xml: Replace Python section of tutorial with
1611 a pointer to the tutorial maintained as part of dbus-python
1613 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1615 * dbus/dbus-sysdeps-unix.c: unix compile fix, moved
1616 atomic_exchange_and_add() from dbus/dbus-sysdeps.c
1617 to here, it's used by _dbus_atomic_inc() and _dbus_atomic_dec().
1619 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1621 * tools/dbus-monitor.c: gettimeofday() is not available
1622 on windows so we have to provide our own. It's taken from
1623 lgpl'd kdewin32 package. - Patches from Christian Ehrlicher
1625 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1627 * dbus/dbus-sysdeps-unix.c: moved _dbus_atomic_inc/dec()
1628 from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec()
1629 is in dbus-sysdeps-win.c (not in this patch).
1631 * dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit
1632 with InterlockedInc/Decrement.
1633 - Patches from Christian Ehrlicher
1635 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1637 * tools/dbus-send.c, tools/dbus-monitor.c: win32 compile fix.
1639 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1641 * dbus/dbus-marshal-recursive.c (type DBusTypeReaderClass):
1642 fix mispaced const statement. - Patch from Peter Kümmel
1644 2006-12-19 Ray Strode <rstrode@redhat.com>
1646 * bus/bus.c (process_config_every_time):
1647 don't overwrite existing bus context activation object
1648 until after we've checked that the new activation is
1652 (signal_handler), (handle_reload_watch):
1653 don't call exit() on failure, instead make do and keep
1655 (close_reload_pipe): new function to turn off
1656 hangup-causes-config-reload behavior if an unexpected
1659 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1661 * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
1662 correctness fix. - Patch from Christian Ehrlicher
1664 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1666 * dbus/dbus-internals.h: msvc also knows about __FUNCTION__,
1667 we should also use it. - Patch from Christian Ehrlicher
1669 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1671 * dbus-sysdeps-util.c: added win32 related tests
1673 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1675 * dbus/dbus-string.c (_dbus_string_pop_line),
1676 bus/desktop-file.c (parse_section_start,
1677 parse_comment_or_blank,parse_key_value,): uses
1678 _dbus_string_find_eol() to support platform independent eol style.
1680 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1682 * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function.
1683 * dbus/dbus-string-util.c (_dbus_string_test): added testcases for
1684 _dbus_string_find_eol().
1685 Approved by: Havoc Pennington.
1687 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1689 * configure.in: Added switch to disable user_database caching.
1691 * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
1692 be able disable user_dabase caching.
1694 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1696 * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext
1697 struct. It is unnecessary we have a global one already. Also remove
1698 bus_context_get_user_database function, it is no longer needed.
1699 Flush the global database on reload.
1701 * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups
1702 with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
1704 * dbus/dbus-userdb.c, dbus/dbus-userdb.h:
1705 Add _dbus_user_database_flush_system.
1706 Make more functions DBUS_USERDB_INCLUDES_PRIVATE.
1707 Small unrelated change in _dbus_is_a_number: change
1708 _dbus_string_parse_int to _dbus_string_parse_uint.
1710 * bus/connection.c: Change call to _dbus_user_database_get_groups to
1711 _dbus_groups_from_uid.
1713 * bus/policy.c, bus/policy.h: Change call to
1714 _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove
1715 DBusUserDatabase from bus_policy_allow_user prototype, it no longer
1718 2006-12-12 John (J5) Palmieri <johnp@redhat.com>
1720 * bus/signal.c: Fix match_rule_equal errata
1721 (CVE-2006-6107 - Patch from Kimmo Hämäläinen
1722 <kimmo.hamalainen@nokia.com>)
1724 2006-11-19 Thiago Macieira <thiago@kde.org>
1726 * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
1727 _dbus_pthread_condvar_wait,
1728 _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
1729 pthread_self() after coming back from a conditional variable
1730 wait as well as in one codepath where it was forgotten.
1731 Approved by: Havoc Pennington.
1733 2006-11-17 Havoc Pennington <hp@redhat.com>
1735 * update-dbus-docs.sh: allow setting fd.org username via env
1736 variable. Make it run autogen with --enable-xml-docs=yes
1737 --enable-doxygen-docs=yes so configure will fail if the required
1740 2006-11-17 Havoc Pennington <hp@redhat.com>
1742 * doc/dbus-faq.xml: minor FAQ tweaks
1744 2006-11-14 Havoc Pennington <hp@redhat.com>
1746 * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
1747 dbus_get_local_machine_id() to its own file, no substantive
1748 changes. There are a couple other things we might want to add that
1749 are "misc" so moving out of dbus-connection.[hc] which is big
1752 2006-11-14 Havoc Pennington <hp@redhat.com>
1754 * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
1755 UUID had the timestamp last, but the implementation had it first;
1756 move it to last since I think it's a tiny bit nicer (easier to
1757 compare at a glance, faster to sort, less code), and will not
1758 cause any practical compatibility problems. Also, always convert
1759 the timestamp to big endian.
1761 * doc/dbus-specification.xml: Clean up the docs on the UUID.
1763 * tools/dbus-uuidgen.1: more prominently say it is not suitable
1764 as a replacement for regular uuidgen/RFC4122.
1766 2006-11-14 John (J5) Palmieri <johnp@redhat.com>
1768 * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
1769 the correct value so we don't assert when initalizing recursive threads
1771 * test/name-test/test-thread-init.c: call dbus_threads_init_default
1772 instead of _dbus_threads_init_debug since it is more of a real world