1 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
3 * portions of patch submitted by Tim Mooney
4 <enchanter at users dot sourceforge dot net>
6 * configure.in: never auto-select libxml (FDO Bug #12479)
8 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
10 * patches by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
12 * dbus/dbus-sysdeps-unix (_dbus_get_autolaunch_address): handle OOM
15 * dbus/dbus-uuidgen.c (return_uuid): handle OOM (FDO Bug #12928)
17 * dbus/dbus-misc.c (dbus_get_local_machine_id): handle OOM, fix return
18 value to return NULL not FALSE (FDO Bug #12946)
20 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
22 * bus/bus.c (bus_context_check_security_policy): rewrite selinux error
23 handling to not abort due to a NULL read and to set the error only if
24 it is not already set (Based off of FDO Bug #12430)
26 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
28 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
30 * dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
31 _dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
33 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
35 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
37 * dbus/dbus-spawn.c (babysit, babysitter_iteration): add error
38 handling when polling (FDO Bug #12954)
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 * bus/config-parser.c (locate_attributes): remove dead code which
45 always evaluated to TRUE
47 * dbus/dbus-shell.c (_dbus_shell_quote): remove unused code
49 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
51 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
53 * bus/connection.c (bus_connection_complete): plug a possible
54 BusClientPolicy leak (FDO Bug #13242)
56 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
58 * patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz#
63 * bus/Makefile.am: add inotify module to the build
65 * bus/dir-watch-inotify.c: inotify module based off the dnotify and
68 * configure.in: add checks and switch for inotify
69 also add a printout at the end of configure if inotify and kqueue
70 support is being built in (dnotify already had this)
72 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
74 * patch by Frederic Crozat <fcrozat at mandriva dot com>
76 * bus/dir-watch-dnotify.c (bus_watch_directory): watch for file
79 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
81 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
83 * dbus/dbus-transport-socket.c(do_reading): return message
84 loader buffer in case of OOM (FDO Bug#12666)
86 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
88 * configure.in: add warning to output when libxml is selected since
89 we don't have a libxml maintainer and expat works perfectly fine
90 for what we need an xml parser for
92 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
94 * Patch by Andrea Luzzardi <scox at sig11 dot org>: creates a
95 _dbus_geteuid function to fix EXTERNAL authentication in setuid
98 * dbus/dbus-sysdeps-unix.c (_dbus_geteuid): used to get the effective
99 uid of the running program
100 (_dbus_credentials_add_from_current_process): use geteuid instead of
102 (_dbus_append_user_from_current_process): use geteuid instead of
105 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user): use
106 geteuid instead of getuid
107 (_dbus_unix_user_is_at_console): use geteuid instead of getuid
109 * dbus/dbus-sysdeps-win.c (_dbus_geteuid): add a windows equivilant
110 that returns DBUS_UID_UNSET
112 2007-12-18 Havoc Pennington <hp@redhat.com>
114 * dbus/dbus-connection.c (_dbus_connection_block_pending_call):
115 fix location of curly braces
117 2007-11-23 Sjoerd Simons <sjoerd@luon.net>
119 * tools/dbus-launch.c: let both a normal dbus-launch and an
120 autolaunched bus save their parameters in X11 if possible. This makes
121 the autolaunch and non-autolaunch behaviour more similar. With the
122 exception that on a normal launch there will always be a new session
123 bus and not being able to save parameters is not fatal. This also
124 enables to launch programs directly with autolaunch (not very usefull
127 2007-10-31 Havoc Pennington <hp@redhat.com>
129 * bus/selinux.c (log_audit_callback): rewrite to use
130 _dbus_string_copy_to_buffer_with_nul()
132 * dbus/dbus-string.c (_dbus_string_copy_to_buffer): change to NOT
133 nul-terminate the buffer; fail an assertion if there is not enough
134 space in the target buffer. This fixes two bugs where
135 copy_to_buffer was used to copy the binary bytes in a UUID, where
136 nul termination did not make sense. Bug reported by David Castelow.
137 (_dbus_string_copy_to_buffer_with_nul): new function that always
138 nul-terminates the buffer, and fails an assertion if there is not
139 enough space in the buffer.
141 2007-10-23 Havoc Pennington <hp@redhat.com>
143 * bus/bus.c (bus_context_new): use the new name here
145 * bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
146 to avoid possible libc conflict, and declare it in .h file to
149 2007-10-19 Havoc Pennington <hp@redhat.com>
151 * bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX
153 2007-10-19 Havoc Pennington <hp@redhat.com>
155 * bus/bus.c (bus_context_new): put the audit_init() in here
156 instead, which I believe ends up being the same as where it was
157 before, though I'm not sure I understand why it goes here.
159 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
160 remove audit_init() from here, this file can't depend on code in
163 2007-10-16 Simon McVittie <simon.mcvittie@collabora.co.uk>
165 * configure.in: *Actually* fix detection of i486 atomic ops -
166 my previous attempt at a fix would always enable them due to wrong
167 quoting. Patch from Colin Walters <walters@verbum.org>
169 2007-10-11 Simon McVittie <simon.mcvittie@collabora.co.uk>
171 * configure.in: enable Autoconf's AC_C_INLINE to avoid compilation
172 failure with gcc -ansi
173 * dbus/dbus-macros.h, dbus/dbus-arch-deps.h.in: Use new macro
174 _DBUS_GNUC_EXTENSION (the same as G_GNUC_EXTENSION) to avoid -ansi
175 warnings about use of "long long".
176 * dbus/dbus-server-socket.c: remove unused variable when assertions
178 * dbus/dbus-marshal-validate.c: avoid empty statements by removing
180 * tools/dbus-launch.c: convert C++-style comment to C-style, add {}
182 * .gitignore: ignore vi swapfiles
183 * dbus/dbus-errors.h, dbus/dbus-errors.c: Add DBUS_ERROR_INIT macro,
184 equivalent to calling dbus_error_init() on an uninitialized DBusError
185 * dbus/dbus-address.c, dbus/dbus-auth-script.c, dbus/dbus-auth-util.c,
186 dbus/dbus-connection.c, dbus/dbus-internals.c, dbus/dbus-keyring.c,
187 dbus/dbus-message-util.c, dbus/dbus-server.c, dbus/dbus-sha.c,
188 dbus/dbus-spawn-win.c, dbus/dbus-spawn.c,
189 dbus/dbus-sysdeps-util-win.c, dbus/dbus-transport-socket.c,
190 dbus/dbus-transport.c, dbus/dbus-userdb.c: use that macro instead of
191 calling dbus_error_init() where it's clearly equivalent
192 * configure.in, dbus/dbus-sysdeps.h, dbus/dbus-sysdeps-unix.c: Fix
193 detection of i486 atomic ops. Previously, the attempts to determine
194 support at compile-time on Darwin were causing the i486 atomic ops to
195 be used on *all* i386 or x86-64 GCC builds (AH_VERBATIM can't be
196 conditionalized like we were trying to).
198 2007-10-10 Simon McVittie <simon.mcvittie@collabora.co.uk>
200 * dbus/dbus-errors.c, dbus/dbus-protocol.h: Add new error
201 org.freedesktop.DBus.Error.ObjectPathInUse
202 * dbus/dbus-object-tree.h, dbus/dbus-object-tree.c,
203 dbus/dbus-connection.c, dbus/dbus-connection.h: add new functions
204 dbus_connection_try_register_object_path and
205 dbus_connection_try_register_fallback, which raise ObjectPathInUse
206 rather than asserting, to make object path registration less painful
208 * .gitignore: add various things that weren't in .cvsignore because
209 CVS implicitly ignored them; generally bring up to date
211 2007-10-09 John (J5) Palmieri <johnp@redhat.com>
213 * tools/run-with-tmp-session-bus.sh: Fix env exports for better
215 * tools/dbus-send.1: Document syntax for container types in dbus-send
216 man file (#9553) - patch from Jack Spaar <jspaar at
217 users.sourceforge.net>
219 [Both OK for MIT/X11 relicensing -smcv]
221 2007-10-09 Simon McVittie <simon.mcvittie@collabora.co.uk>
223 * doc/dbus-specification.xml: Specifically forbid empty structs (#7969)
224 * doc/dbus-specification.xml: Patches from Kristoffer Lundén to clarify
225 description of DBUS_COOKIE_SHA1 (#10184) and allowable contents of a
226 variant (#10185, amended as per Havoc's comments)
228 [All of the above are OK for MIT/X11 licensing]
230 2007-10-03 John (J5) Palmieri <johnp@redhat.com>
232 * dbus/dbus-internals.h: fd.o bug #11678 Don't error out if compiler
233 does not support vararg macros. _dbus_verbose is the only function
234 that does this so make it a noop if vararg macros are not supported
235 * bus/selinux.c, dbus/dbus-sysdeps-util-unix.c: fd.o bug #12429
236 Reverse check to setpcap and only init audit if we were root
237 (patch by Dan Walsh <dwalsh@redhat.com>,
238 https://bugs.freedesktop.org/show_bug.cgi?id=12429). Reverse
239 we_were_root check to setpcap if we were root. Also only init audit
240 if we were root. So error dbus message will not show up when policy
241 reload happens. dbus -session will no longer try to send audit
242 message, only system will.
243 * configure.in: fd.o bug #11872 improve linker test for --gc-sections.
244 Patch by Tim Mooney <enchanter at users.sourceforge.net>
245 * configure.in, dbus/dbus-sysdeps.c: fd.o bug #11872 fix clearenv for
246 systems that do not have it. Patch from Brian Cameron <brian.cameron
248 * tools/dbus-launch.c: fd.o bug #12547 remove superfluous if.
249 Also convert tabs to spaces
250 * configure.in, bus/Makefile.am, dbus/Makefile.am: Correctly implement
251 -fPIC and -fPIE. For security reasons we want possition independent
252 code for libraries and possition independent executable for
253 executables. Before we were just enabling -fPIC. Now we correctly
254 enable -fPIC and -PIE for libdbus and the bus respectively. Proper
255 LD_FLAGS are set for each also.
257 2007-09-20 Ryan Lortie <desrt@desrt.ca>
259 Add argument path matching support. Bug #11066.
261 * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
262 bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
263 match_rule_matches): Add support for parsing and matching on
264 arg0path='/some/path' type rules.
266 * dbus/signals.h (bus_match_rule_set_arg): change to take const
267 DBusString instead of const char * for the string to match against.
269 * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
270 documentation about the path matching.
272 * doc/dbus-specification.xml: add a more detailed description of the
275 2007-09-19 Ryan Lortie <desrt@desrt.ca>
277 Add support for compacting DBusStrings to release wasted memory.
279 * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
280 _dbus_string_lock): new compact function to free up allocated memory
281 that is no longer used.
283 * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
284 message loader buffer.
286 * dbus/dbus-transport-socket.c (do_reading, do_writing): call
287 _dbus_string_compact on the incoming/outgoing "encoded" buffers.
289 * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
292 2007-09-13 Ryan Lortie <desrt@desrt.ca>
294 * HACKING: add more explicit git branch/tag instructions
296 2007-09-13 Ryan Lortie <desrt@desrt.ca>
298 migrate from cvs to git (cvs2svn -> git-svnimport).
300 * HACKING: update release/branch/tag instructions
301 * */.cvsignore: rename to .gitignore
303 also, clean up tags and branch names to conform to HACKING
305 2007-08-17 William Jon McCann <mccann@jhu.edu>
307 * update-dbus-docs.sh: upload DTD to server
309 2007-08-17 Havoc Pennington <hp@redhat.com>
311 * tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
312 Lorenz to use long not int with XChangeProperty format 32
314 * dbus/dbus-sysdeps-util-unix.c
315 (_dbus_write_pid_to_file_and_pipe): factor this out, and use the
316 same code in _dbus_become_daemon (where the parent writes the pid
317 file and to the pid pipe) and in bus_context_new (where the daemon
318 writes its own pid file and to its own pid pipe)
320 * bus/bus.c (bus_context_new): close the pid pipe after we print
321 to it. Also, don't write the pid to the pipe twice when we fork,
322 someone reported this bug a long time ago.
324 2007-08-03 Havoc Pennington <hp@redhat.com>
326 * configure.in: add major/minor/micro version number AC_SUBST
328 * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
329 DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
330 DBUS_VERSION): collection of macros to get version of library we
331 are compiled against.
333 * dbus/dbus-misc.c (dbus_get_version): new function, to get
334 version of library we are linked against at runtime.
336 2007-07-30 Havoc Pennington <hp@redhat.com>
338 * bus/activation-helper.c (check_bus_name): don't use
339 _dbus_check_valid_bus_name() which is only around with
340 --enable-checks, instead use _dbus_validate_bus_name().
341 Bug #11766 from Diego <diego@pemas.net>
343 2007-07-27 Havoc Pennington <hp@redhat.com>
345 * configure.in: post-release version bump
347 2007-07-27 Havoc Pennington <hp@redhat.com>
351 2007-07-26 Havoc Pennington <hp@redhat.com>
353 * bus/config-parser-trivial.c (check_return_values): disable a
354 test that hardcoded the bus user's name
356 * bus/dispatch.c (bus_dispatch_test_conf): remove the "if
357 (!use_launcher)" around the tests, they were only failing because
358 we didn't pass through all the expected errors from the helper.
360 * bus/activation-exit-codes.h
361 (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
362 (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
363 failure code, so if a third party launch helper were written it
364 could just always return 1 on failure.
366 2007-07-24 Daniel P. Berrange <dan@berrange.com>
368 * bus/dbus-daemon.1: Add docs on new syntax options for the bus
371 * dbus/dbus-address.c: Allow * in addresses (for binding to all
374 * dbus/dbus-sysdeps.h:
375 * dbus/dbus-sysdeps-unix.c: Re-write to use getaddrinfo instead
376 of gethostbyname to enable protocol independant name lookup,
379 * dbus/dbus-server-socket.h:
380 * dbus/dbus-server-socket.c: Add support for 'family' in the
381 address string to specify ipv4 vs ipv6. Use a port string to
382 allow for service resolution. Allow for binding to multiple
383 sockets at once in case of dual IPv4 & IPv6 stacks.
385 * dbus/dbus-server-unix.c: Pass in an array of file descriptors
386 instead of a single one.
388 * dbus/dbus-transport-socket.h:
389 * dbus/dbus-transport-socket.c: Add support for 'family' in the
390 address string to specify ipv4 vs ipv6. Use a port string to
391 allow for service resolution.
393 2007-07-24 Havoc Pennington <hp@redhat.com>
395 * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
397 * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
398 TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
399 test shell_fail_service_auto_start when use_launcher==TRUE
401 * bus/activation-helper-bin.c (convert_error_to_exit_code): pass
402 through the INVALID_ARGS error so the test suite works
404 * bus/activation.c (handle_activation_exit_error): return
405 DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
407 * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
408 return only the exit code of the child, not the entire thingy from
409 waitpid(), and make the return value indicate whether the child
410 exited normally (with a status code)
412 * bus/bus.c (process_config_first_time_only): _dbus_strdup works
413 on NULL so no need to check
414 (process_config_every_time): move servicehelper init here, so we
415 reload it on HUP or config file change
417 * bus/Makefile.am (install-data-hook): remove comment because
418 Emacs make mode seems to be grumpy about it
420 2007-07-24 Richard Hughes <richard@hughsie.com>
423 * bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
424 (test_post_hook), (main):
425 Add back the test-system.c file - not sure now this got ignored in the
428 2007-07-24 Richard Hughes <richard@hughsie.com>
431 Use ustar to generate the tarball; this fixes the make distcheck
432 problem when the data files do not fit in the archive:
433 tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
434 TestSuiteShellEchoServiceFail.service.in: file name is too
435 long (max 99); not dumped
437 We have to have the 'long' names as the service helper matches by
438 filename rather than by the name in the service file.
440 2007-07-24 Richard Hughes <richard@hughsie.com>
444 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
445 uiteNoExec.service.in:
446 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
447 uiteNoService.service.in:
448 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
449 uiteNoUser.service.in:
450 * test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
451 * test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
452 * test/data/valid-config-files/debug-allow-all-sha1.conf.in:
453 * test/data/valid-config-files/debug-allow-all.conf.in:
454 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
455 teEchoService.service.in:
456 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
457 teSegfaultService.service.in:
458 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
459 teShellEchoServiceFail.service.in:
460 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
461 teShellEchoServiceSuccess.service.in:
462 * test/data/valid-service-files/debug-echo.service.in:
463 * test/data/valid-service-files/debug-segfault.service.in:
464 * test/data/valid-service-files/debug-shell-echo-fail.service.in:
465 * test/data/valid-service-files/debug-shell-echo-success.service.in:
466 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
468 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
469 ultService.service.in:
470 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
471 EchoServiceFail.service.in:
472 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
473 EchoServiceSuccess.service.in:
474 Add the data files needed by the system activation unit checks.
476 2007-07-24 Richard Hughes <richard@hughsie.com>
478 * bus/dispatch.c: (check_segfault_service_no_auto_start),
479 (check_launch_service_file_missing),
480 (check_launch_service_user_missing),
481 (check_launch_service_exec_missing),
482 (check_launch_service_service_missing), (bus_dispatch_test_conf),
483 (bus_dispatch_test_conf_fail), (bus_dispatch_test):
484 Add unit tests for system activation. Most are copied from the
485 session activation tests, but some didn't apply when using a laucher.
487 2007-07-24 Richard Hughes <richard@hughsie.com>
489 * bus/activation.c: (bus_activation_activate_service):
490 If the bus uses a service-laucher, then use the setuid laucher.
492 2007-07-24 Richard Hughes <richard@hughsie.com>
495 Add the needed library exports for the new laucher.
497 2007-07-24 Richard Hughes <richard@hughsie.com>
500 Check for -Wl,--gc-sections so we can really reduce the size of the
503 2007-07-24 Richard Hughes <richard@hughsie.com>
505 * bus/activation.c: (handle_activation_exit_error),
506 (babysitter_watch_callback):
507 Map the child exit status integer to a proper dbus error.
509 2007-07-24 Richard Hughes <richard@hughsie.com>
511 * bus/bus.c: (process_config_first_time_only),
512 (process_config_every_time), (bus_context_unref),
513 (bus_context_get_servicehelper):
515 Add the concept of a service-helper and allow it's value to be read.
517 2007-07-24 Richard Hughes <richard@hughsie.com>
519 * bus/activation.c: (bus_activation_entry_unref),
520 (update_desktop_file_entry):
521 Add the concept of, and read the value of user from the desktop file.
522 The user string is not required unless we are using system activation.
524 2007-07-24 Richard Hughes <richard@hughsie.com>
527 * bus/desktop-file.h:
528 Move the defines into the header file, as we use these in the lauch
529 helper as well as the desktop file parsing.
531 2007-07-24 Richard Hughes <richard@hughsie.com>
534 Add the autogenerated binary files.
536 2007-07-24 Richard Hughes <richard@hughsie.com>
540 Add the build glue for the lauch helper, and also add the launch-helper
541 OOM checks into make check. I've probably broken the build, give me 2.
543 2007-07-24 Richard Hughes <richard@hughsie.com>
545 * bus/test-launch-helper.c: (die), (check_memleaks),
546 (test_post_hook), (bus_activation_helper_oom_test), (main):
547 Add a test wrapper to allow OOM checks on the launch helper.
549 2007-07-24 Richard Hughes <richard@hughsie.com>
551 * bus/activation-helper-bin.c: (convert_error_to_exit_code),
553 * bus/activation-helper.c: (desktop_file_for_name),
554 (clear_environment), (check_permissions), (check_service_name),
555 (get_parameters_for_service), (switch_user),
556 (exec_for_correct_user), (check_bus_name), (get_correct_parser),
557 (launch_bus_name), (check_dbus_user), (run_launch_helper):
558 * bus/activation-helper.h:
559 Add the initial launch-helper. This is split into a main section and a
560 binary loader that allows us to lauch the main section in another test
561 harness to do stuff like OOM testing. No build glue yet.
563 2007-07-24 Richard Hughes <richard@hughsie.com>
566 * bus/config-parser.c: (bus_config_parser_unref),
567 (start_busconfig_child), (bus_config_parser_end_element),
568 (servicehelper_path), (bus_config_parser_content),
569 (bus_config_parser_finished),
570 (bus_config_parser_get_servicehelper),
571 (test_default_session_servicedirs),
572 (test_default_system_servicedirs), (bus_config_parser_test):
573 * bus/config-parser.h:
574 Make the config-parser code use the common config code.
575 Also add the session and systemdirs stuff, and make the config parser
576 aware of the servicehelper field.
578 2007-07-24 Richard Hughes <richard@hughsie.com>
580 * bus/system.conf.in:
581 Add new servicehelper fields to the default system.conf file.
583 2007-07-24 Richard Hughes <richard@hughsie.com>
585 * bus/config-parser-trivial.c: (service_dirs_find_dir),
586 (service_dirs_append_link_unique_or_free), (bus_config_parser_new),
587 (bus_config_parser_unref), (bus_config_parser_start_element),
588 (bus_config_parser_end_element), (bus_config_parser_content),
589 (bus_config_parser_finished), (bus_config_parser_get_user),
590 (bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
591 (check_return_values), (do_load), (check_loader_oom_func),
592 (process_test_valid_subdir), (make_full_path), (check_file_valid),
593 (bus_config_parser_trivial_test):
594 * bus/config-parser-trivial.h:
595 Add a security sensitive stripped down config parser for the setuid
596 launcher. This file only reads what it needs, and doesn't try to do
597 anything remotely clever like including external files.
598 It is not intended to validate the config file; it is expected that
599 config-parser will do that before the setuid program tries to read it.
601 2007-07-24 Richard Hughes <richard@hughsie.com>
603 * bus/config-parser-common.c:
604 (bus_config_parser_element_name_to_type),
605 (bus_config_parser_element_type_to_name):
606 * bus/config-parser-common.h:
607 We don't want to run the whole config parser with all it's deps in the
608 setuid program. We need to implement a stripped down config parser just
609 for the launcher, and to do so I need some common functions and
610 defines; add them here.
612 2007-07-24 Richard Hughes <richard@hughsie.com>
614 * dbus/dbus-sysdeps-unix.c:
615 (_dbus_get_standard_system_servicedirs):
616 * dbus/dbus-sysdeps-win.c:
617 Provide a way to get the standard system servicedirs, just like we do
618 for the session service dirs. These should be seporate, as there may
619 be a security issue starting up some session stuff as root.
620 The use-case for the same binary starting up per-system _and_
621 per-session is also not valid.
623 2007-07-24 Richard Hughes <richard@hughsie.com>
625 * bus/dbus-daemon.1.in:
626 Add standard_system_servicedirs and servicehelper into the man file
627 and explain what each does.
629 2007-07-24 Richard Hughes <richard@hughsie.com>
632 Add servicehelper into the dtd, it will soon be a valid part of the
635 2007-07-24 Richard Hughes <richard@hughsie.com>
637 * dbus/dbus-spawn.c: (read_data),
638 (_dbus_babysitter_get_child_exit_status):
640 Add a function so we can get access to the exit status of the launch
642 By providing the return code and not the error we can leave the
643 'what does this mean?' to the bus launch code and not include it in the
646 2007-07-24 Richard Hughes <richard@hughsie.com>
648 * bus/activation-exit-codes.h:
649 Add defines which specify the output codes of the launch helper.
650 We have to use exit codes as this is the only way we can return failure
651 type without going grotty things like redirecting possibly-nonsecure
652 stderr into the error.
654 2007-07-24 Richard Hughes <richard@hughsie.com>
656 * dbus/dbus-protocol.h:
657 Add new error names needed for the launch helper.
659 2007-07-24 Richard Hughes <richard@hughsie.com>
661 * dbus/dbus-sysdeps.c: (_dbus_clearenv):
662 * dbus/dbus-sysdeps.h:
663 Add a wrapper for clearenv.
665 2007-07-24 Richard Hughes <richard@hughsie.com>
667 * doc/system-activation.txt:
668 Add design document for the system activation parts. I'll shortly be
669 committing many patches that add system activation using a setuid
670 launcher into CVS, so expect things to be broken for a few hours.
672 2007-07-19 Ralf Habacker <ralf.habacker@freenet.de>
674 * cmake/modules/FindKDEWIN.cmake: fixed comment
675 * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
677 2007-07-18 Havoc Pennington <hp@redhat.com>
679 * dbus/dbus-message.c (dbus_message_get_cached)
680 (dbus_message_cache_or_finalize): don't mess with message from
681 message cache outside of the cache lock. Bug #9164 from Jonathan
684 2007-07-13 Havoc Pennington <hp@redhat.com>
686 * Add indent-tabs-mode: nil to all file headers.
688 2007-07-12 Havoc Pennington <hp@redhat.com>
690 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
691 for parsing hex as double to be sure it fails to work
693 * dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
695 2007-07-10 Havoc Pennington <hp@redhat.com>
697 * dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
698 Hochreutiner to avoid trying to protect individual bits in a word
699 with different locks (make dispatch_acquired and io_path_acquired
700 dbus_bool_t rather than bitfields)
702 2007-07-09 Ralf Habacker <ralf.habacker@freenet.de>
704 * dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,
705 dbus-sysdeps-spawn-win.c: synced with windbus sources
707 2007-07-07 Ralf Habacker <ralf.habacker@freenet.de>
709 * dbus/dbus-sysdeps-win.c
710 (_dbus_getsid): remove unused jump label
711 (_dbus_read_credentials_socket): _dbus_string_init could fail,
713 (_dbus_get_working_dir, _dbus_init_working_dir): remove unused
716 2007-07-04 Ralf Habacker <ralf.habacker@freenet.de>
718 * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs
719 for windows supplementary packages too
721 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
723 * cmake/dbus/CMakeLists.txt: handle userdb as unix file
725 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
727 * dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate
730 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
732 * dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
734 2007-06-23 Ralf Habacker <ralf.habacker@freenet.de>
736 * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and
737 WIN_ONLY commands for auth scripts
738 * test/data/auth/external-root.auth-script: limit execution to unix
740 2007-06-21 Havoc Pennington <hp@redhat.com>
742 * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
745 2007-06-21 Havoc Pennington <hp@redhat.com>
747 * dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
748 not be the same as before, the ABI has never been declared stable
749 on Windows and 2) do not commit to cross-platform files without
750 posting the exact patch to the mailing list
752 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
753 out before, either 0xff needs to work on both platforms, or none
754 of the dbus code can rely on it working. That means the options
755 are 1) audit the code for anywhere that relies on 0xff working, if
756 none found ideally add a test that it *doesn't* work and make unix
757 reject it explicitly, but in any case this test would go away or
758 2) make it work on Windows also, then we don't have to figure out
759 whether we rely on it.
761 And in either case, post the exact patch to the mailing list and
764 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
766 * cmake/CMakeLists.txt: added VERSION_PATCH to be able to
767 distinguish win32 binary release from dbus versioning
769 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
771 * dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
772 (_dbus_getsid): new function
773 (_dbus_read_credentials_socket): used correct function
774 (_dbus_append_user_from_current_process,
775 _dbus_credentials_add_from_current_process): added real
777 (_dbus_credentials_parse_and_add_desired,_dbus_parse_uid):
780 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
782 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): don't check
783 0xff as floating point, this isn't supported on win32 math
786 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
788 * dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username,
789 _dbus_homedir_from_current_process, _dbus_append_desired_identity):
790 removed obsolate functions
792 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
794 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-util-win.c,
795 dbus/dbus-sysdeps-win.h: disabled uid/sid conversation stuff
796 implementation by Peter Kuemmel
798 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
800 * dbus/dbus-watch.c (dbus_watch_get_fd): this function is
801 deprecated and its behavior should be as before until all
802 client code is migrated.
804 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
806 * dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c:
807 msvc7.1 fixes by Jaroslaw Staniek tested with mingw
809 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
811 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c,
812 dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation
815 2007-06-18 Ralf Habacker <ralf.habacker@freenet.de>
817 * dbus-win.patch: removed obsolate patches
819 2007-06-18 Havoc Pennington <hp@redhat.com>
821 * configure.in: bump version to 1.1.2 so CVS is higher than last
822 release (this is not the 1.1.2 release)
824 2007-06-18 Havoc Pennington <hp@redhat.com>
828 2007-06-18 Havoc Pennington <hp@redhat.com>
830 * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
832 * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
834 * bus/bus.c (bus_context_new): generate a unique ID for each bus context
836 * dbus/dbus-connection.c (dbus_connection_get_server_id): new function
838 * dbus/dbus-bus.c (dbus_bus_get_id): new function
840 * dbus/dbus-server.c (dbus_server_get_id): new function
842 2007-06-18 Havoc Pennington <hp@redhat.com>
844 * dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
845 this up a little bit, to try and understand why telnet'ing to a
846 server and sending a non-nul byte didn't disconnect immediately;
847 now it seems that it does disconnect immediately as it should,
848 though I don't understand what has changed.
850 2007-06-18 Havoc Pennington <hp@redhat.com>
852 * dbus/dbus-watch.c (dbus_watch_get_socket)
853 (dbus_watch_get_unix_fd): new API to match DBusConnection
854 (dbus_watch_get_fd): deprecate this
856 Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
857 now since all the transports use sockets anyway
859 2007-06-16 Ralf Habacker <ralf.habacker@freenet.de>
861 * dbus/dbus-macros.h, dbus/dbus-message.c,
862 dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED
863 to DBUS_DEPRECATED and extended to msvc compiler
865 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
867 * cmake/CMakeLists.txt: use local include header first
869 * dbus/dbus-sysdeps-win.c: mingw fix of DBusCredential struct
871 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
873 * cmake/ConfigureChecks.cmake,cmake/config.h.cmake:
874 added check for HAVE_ERRNO_H
876 * cmake/dbus/CMakeLists.txt: added missing files
878 * dbus/dbus-transport-win.c/.h: new files
880 * dbus/dbus-sysdeps-win.c,.h: added required _unix functions
881 to make dbus compilable on win32
883 * dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to
886 * dbus-win.patch: removed applied or obsolate patches
888 Note: dbus-win32 is now compilable, no guarantee that it runs
891 2007-06-15 Havoc Pennington <hp@redhat.com>
893 * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
894 (_dbus_append_system_config_file): new functions
896 * bus/main.c (main): use _dbus_append_system_config_file() and
897 _dbus_append_session_config_file()
899 * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
900 DBUS_SESSION_CONFIG_FILE into this makefile
902 2007-06-15 Havoc Pennington <hp@redhat.com>
904 * dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
905 (_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
906 (_dbus_strerror_from_errno): family of functions to abstract
907 errno, though these are somewhat bogus (really we should make our
908 socket wrappers not use errno probably - the issue is that any
909 usage of errno that isn't socket-related probably is not
910 cross-platform, so should either be in a unix-only file that can
911 use errno directly, or is a bug - these general errno wrappers
912 hide issues of this nature in non-socket code, while
913 socket-specific API changes would not since sockets are allowed
916 2007-06-14 Havoc Pennington <hp@redhat.com>
918 * bus/dispatch.c (check_get_connection_unix_process_id): mop up
919 getpid() (noticed by Peter Kümmel) and adapt the test to
920 expect a "pid unknown" error when running on Windows.
922 2007-06-14 Havoc Pennington <hp@redhat.com>
924 * dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
925 delete this function since it was effectively the same as
926 _dbus_credentials_add_from_username()
928 2007-06-14 Havoc Pennington <hp@redhat.com>
930 * dbus/dbus-auth.c: adapt to keyring changes
932 * dbus/dbus-keyring.c: change to avoid using user ID and home
933 directory directly; instead use a
934 keyring-location-from-credentials function in dbus-sysdeps
936 * fix to use _dbus_append_user_from_current_process() instead of
937 _dbus_username_from_current_process() or _dbus_append_desired_identity().
939 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
941 * reverted global rename of function _dbus_username_from_current_process.
942 It needs too much tests to verify that the change does not break anything.
943 I had overseen that the signatures are different and requires non
945 This is one *major* disadvantage of emulating oop functionality with c.
946 You are responsible for cleaning every object on every function return point
947 which could be a nightmare if you are not working with dbus all the days.
949 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
951 * dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech):
952 fixed usage of _dbus_append_desired_identity()
954 * dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
956 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
958 * dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
960 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
962 * global rename of function _dbus_username_from_current_process
963 to _dbus_append_desired_identity.
964 Approved by Havoc Pennington
966 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
968 * dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
969 (_dbus_append_desired_identity, _dbus_windows_user_is_process_owner):
970 new win32 functions as counterpart of unix related
971 (_dbus_send_credentials_socket,_dbus_read_credentials_socket):
972 renamed from ..._unix_socket
973 (_dbus_send_credentials_unix_socket): removed obsolate function
975 * dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
976 (_dbus_verify_daemon_user,_dbus_change_to_daemon_user):
977 new win32 functions as counterpart of unix related
979 2007-06-14 Simon McVittie <simon.mcvittie@collabora.co.uk>
981 * doc/dbus-specification.xml: say the protocol version is 1 instead of
982 0 (patch from Kristoffer Lundén, fd.o#10033) and remove the FIXME
983 about removing protocol version from messages (as per Havoc's comment
986 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
988 * dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches):
989 new win32 functions as counterpart of unix related
991 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
993 * cmake/modules/FindKDEWIN.cmake,
994 cmake/modules/FindKDEWIN_Packager.cmake,
995 cmake/modules/Win32Macros.cmake: new files from the
997 * cmake/CMakeLists.txt: cleaned support for kdewin installer and
998 win32 explorer wrapper
1000 2007-06-13 Havoc Pennington <hp@redhat.com>
1002 * dbus/dbus-message.c (dbus_message_iter_open_container): Fix
1003 broken return_if_fail (kind of scary that test suite does not
1006 2007-06-13 Havoc Pennington <hp@redhat.com>
1008 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
1009 all_interfaces=true|false for tcp servers
1011 * dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
1014 * bus/selinux.c: fix some missing includes
1016 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
1017 port to simply be omitted in addition to specifying 0
1019 2007-06-13 Havoc Pennington <hp@redhat.com>
1021 * configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
1022 libaudit support, no clue what this means really but now we have
1023 it. Patches from Fedora package.
1025 * bus/bus.c (bus_context_new): move selinux initialization after
1026 changing to daemon user, patch from Fedora package
1028 * dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
1030 2007-06-12 Havoc Pennington <hp@redhat.com>
1032 * dbus/dbus-message.c (dbus_message_iter_open_container): improve
1033 the checks/warnings for contained_signature a bit
1035 2007-06-12 Havoc Pennington <hp@redhat.com>
1037 * dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
1038 improve the warning a bit if you write extra data into a message
1040 2007-06-12 Havoc Pennington <hp@redhat.com>
1042 * dbus/dbus-auth.c (sha1_handle_second_client_response)
1043 (handle_server_data_anonymous_mech): add the process ID from
1044 socket credentials, if available, even if not using EXTERNAL
1046 * dbus/dbus-transport.c (auth_via_default_rules): support
1047 allow_anonymous flag
1049 * dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
1050 (dbus_connection_set_allow_anonymous): new API for controlling
1053 2007-06-09 Havoc Pennington <hp@redhat.com>
1055 * dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
1056 think an empty line is the end of the file.
1057 Also, fix some whitespace.
1059 * dbus/dbus-string-util.c: add more tests for
1060 _dbus_string_pop_line() revealing that it thinks an empty line is
1061 the end of the file, which broke dbus-auth-script.c so
1062 it didn't really run the scripts
1064 * dbus/dbus-auth.c: add ANONYMOUS mechanism
1066 * dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
1067 an empty/no-op auth script; add commands to check that we have or
1068 don't have the expected credentials
1070 2007-06-09 Havoc Pennington <hp@redhat.com>
1072 * bus/policy.c (bus_policy_create_client_policy): gracefully
1073 continue if the connection has no unix user - just don't apply
1074 any unix user dependent rules.
1076 * bus/config-parser.c: remove dbus-userdb.h usage
1078 * bus/bus.c: remove dbus-userdb.h usage
1080 * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
1081 support Windows user function; also, fix the logic for checking
1082 auth as root in the default auth code (broken in the previous
1085 * dbus/dbus-connection.c
1086 (dbus_connection_set_windows_user_function): new function
1087 (dbus_connection_get_windows_user): new function
1089 2007-06-09 Havoc Pennington <hp@redhat.com>
1091 * bus/dispatch.c (check_get_connection_unix_process_id): adapt
1092 since sysdeps-unix.h stuff isn't included anymore
1094 * bus/bus.c (bus_context_new): use more abstract functions to
1095 change user, so they can be no-ops on Windows
1097 * dbus/dbus-credentials.c, dbus/dbus-credentials.h,
1098 dbus/dbus-credentials-util.c: new files containing a fully opaque
1099 DBusCredentials data type to replace the old not opaque one.
1101 * configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
1104 * dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
1105 up the uses of it in bus/*.c and factor out the parts of
1106 cookie auth that depend on it
1108 2007-06-07 Havoc Pennington <hp@redhat.com>
1110 * dbus/dbus-message.c: improve some docs related to reading values
1113 2007-06-02 Ralf Habacker <ralf.habacker@freenet.de>
1115 * cmake: added cygwin compile support
1117 2007-06-01 Ralf Habacker <ralf.habacker@freenet.de>
1119 * tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
1121 * cmake/dbus-launch.bat.cmake: removed obsolate file
1123 2007-05-31 Ralf Habacker <ralf.habacker@freenet.de>
1125 * bus/main.c (main): uses _dbus_get_config_file_name() to detect
1126 session.conf location on win32.
1128 * dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists):
1129 new prototyp, undefined interface after including windows.h because
1130 it makes trouble when a paramater is named interface.
1132 * dbus-sysdeps-win.c (_dbus_get_install_root,
1133 _dbus_get_config_file_name,_dbus_file_exists): new functions.
1135 2007-05-27 Ralf Habacker <ralf.habacker@freenet.de>
1137 * bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings
1138 as reported by Peter Kümmel.
1140 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1144 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1146 * Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
1147 We forgot to do this during the 1.0 release and it makes sense
1148 now as we get ready to release the first 1.1.0 development tarball
1150 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1152 * create directory test/data/valid-config-files/session.d so that
1155 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1157 * INSTALL: remove dependancies for bindings since they no longer
1160 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1162 * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file
1163 with empty function _dbus_server_listen_platform_specific().
1165 * dbus/dbus-server.c (listen_funcs): uses
1166 _dbus_server_listen_platform_specific on any platform.
1168 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1170 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting
1171 user info from a domain controller isn't an error, the computer
1172 may run in a non domain context.
1174 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1176 * dbus/dbus-sysdeps-win.c (_dbus_full_duplex_pipe): fixed assertation.
1178 2007-05-24 Simon McVittie <simon.mcvittie@collabora.co.uk>
1180 * bus/config-parser.c (test_service_dir_matches): fixed ordering for unix.
1182 * bus/config-parser.c (test_default_session_servicedirs): made allocation
1183 of _progs platform independent.
1185 2007-05-23 Havoc Pennington <hp@redhat.com>
1187 * bus/Makefile.am (install-data-hook): create session.d
1189 * bus/session.conf.in: add session.d for the session bus, so
1190 security policy can be extended
1192 2007-05-22 Ralf.Habacker <ralf.habacker@freenet.de>
1194 * cmake/CMakeLists.txt: fixed creating of TEST_..._BINARY to make
1195 bus-test able to find the binaries.
1197 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1199 * acinclude.m4, configure.in: In recent autotools, ${datadir} is
1200 defined in terms of ${datarootdir}, so EXPANDED_DATADIR needs to be
1201 expanded recursively. Rather than fixing configure.in to do this, I
1202 grabbed the AS_AC_EXPAND macro from autostars.sf.net, which seems to be
1205 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1207 * update-dbus-docs.sh: Assorted improvements:
1208 - Default user if $FDUSER is not set is the ssh default
1209 (set in ~/.ssh/config or based on the local username), not a
1211 - Temporary checkout directory is created securely (preventing symlink
1212 attacks), if mktemp(1) is available
1213 - Use make -C rather than cd && make && cd ..
1215 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1217 * HACKING: Point to correct mailing list
1219 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1221 * doc/dbus-specification.xml: explicitly specify that STRING cannot
1222 contain embedded NULs.
1224 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1226 * dbus/dbus-internal.c: fix inline problem on win32.
1228 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1230 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not reaching
1231 domain controller isn't an error, converted error message to verbose
1234 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1236 * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): disabled
1237 tests not running on wince.
1239 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1241 * dbus/dbus-internals.c (_dbus_verbose_init): win32 requires 'varname='
1242 to unset a environment variable.
1244 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1246 * dbus/dbus-sysdeps.c (_dbus_setenv): win32 requires 'varname='
1247 to unset a environment variable.
1249 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1251 * bus/policy.c (bus_policy_create_client_policy):
1252 win32 temporary fix until the userdb stuff is ported completly.
1254 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1256 * dbus/dbus-server.c (listen_funcs):
1257 _dbus_server_listen_platform_specific is empty on win32,
1258 limited to unix only.
1260 * dbus/dbus-server.c (valid_addresses): limit unix
1261 only addresses to unix.
1263 2007-05-18 Havoc Pennington <hp@redhat.com>
1265 * doc/dbus-specification.xml: add a GetAll to the Properties
1268 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1270 * bus\config-parser.c (test_default_session_servicedirs):
1273 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1275 * configure.in: define constant DBUS_UNIX.
1277 2007-05-14 Ralf Habacker <ralf.habacker@freenet.de>
1279 * dbus/dbus-sysdeps-win.c (_dbus_printf_string_upper_bound):
1280 compile fix for MS Platform SDK 6
1281 patch from Michael Luschas <mluschas@gmail.com>
1283 2007-05-10 John (J5) Palmieri <johnp@redhat.com>
1285 * dbus-1.pc.in: add daemondir to pc file
1286 patch from Brian Cameron <brian.cameron at sun.com>
1288 2007-05-04 Simon McVittie <simon.mcvittie@collabora.co.uk>
1290 * doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local
1291 interface and the corresponding /o/fd/DBus/Local object path;
1292 describe them as reserved and forbid using them in a sent message,
1293 mentioning that in the reference implementation this will cause the
1294 connection to be dropped. Patch approved by Havoc.
1296 2007-04-28 Ralf Habacker <ralf.habacker@freenet.de>
1298 * cmake/: don't install test applications and service files,
1299 moved CMAKE_DEBUG_POSTFIX to top level CMakeLists.txt
1301 2007-04-27 Havoc Pennington <hp@redhat.com>
1303 * dbus/dbus-sysdeps-unix.c (_dbus_open_socket): fix #10781 from
1304 Tobias Nygren, checking pointer to fd vs. 0 rather than checking
1307 2007-04-26 Ralf Habacker <ralf.habacker@freenet.de>
1309 * cmake/: added debug postfixes to debug exe's for
1311 * dbus\dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1312 print error code in case no string message is available.
1314 2007-04-06 Simon McVittie <simon.mcvittie@collabora.co.uk>
1316 * dbus/dbus-message-util.c, dbus/dbus-message.c,
1317 dbus/dbus-message.h: Add API to convert a DBusMessage to/from a
1318 byte array. Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>,
1319 approved by Havoc Pennington.
1321 2007-04-03 Timo Hoenig <thoenig@suse.de>
1323 * dbus/dbus-address.c (dbus_parse_address): Do not accept zero-
1325 * dbus/dbus-address.c (_dbus_address_test): Add test for zero-
1328 2007-03-25 Ralf.Habacker <ralf.habacker@freenet.de>
1330 * cmake/dbus/CMakeLists.txt: debug postfix also for mingw.
1332 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1334 * cmake/modules/FindExpat.cmake: fix package detection on win32.
1336 * README.win: update install instructions.
1338 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1340 * dbus/dbus-sysdeps.h (_dbus_split_paths_and_append):
1342 (_DBUS_PATH_SEPARATOR): new macro.
1344 * dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged
1345 from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c.
1347 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1349 * bus/config-parser.c, bus/policy.c,
1350 bus/policy.h, bus/dbus-daemon.1.in,
1351 bus/session.conf.in: added eavesdrop support
1352 for replies - patch by olli.salli at collabora.co.uk
1353 approved by Havoc Pennington.
1355 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1357 * dbus\dbus-sysdeps-win-thread.c: renamed to
1358 dbus-sysdeps-thread-win.c, it is a platform depending file
1359 similar to dbus-sysdeps-pthread.c.
1361 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1363 * cmake\doc\CMakeLists.txt: added prelimary xml doc
1364 support, needs cmake Find script.
1366 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1368 * cmake: add doxygen support
1370 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1372 * cmake/config.h.cmake: WINCE fixes, defined DBUS_UNIX.
1374 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1376 * dbus/dbus-sysdeps-util-win.c (dbus_become_daemon):
1379 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1381 * dbus-win.patch: removed obsolate patches.
1383 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1385 * dbus/dbus-sysdeps-win.c: added zero byte sending
1386 and receiving after connection start up
1388 2007-03-11 Havoc Pennington <hp@redhat.com>
1390 * tools/dbus-launch.c (do_close_stderr): fix C89 problem and
1393 * Mostly fix the DBusPipe mess.
1394 - put line break after function return types
1395 - put space before parens
1396 - do not pass structs around by value
1397 - don't use dbus_strerror after calling supposedly cross-platform
1399 - don't name pipe variables "fd"
1400 - abstract special fd numbers like -1 and 1
1402 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1404 * dbus/dbus-sysdeps-win.h, dbus/dbus-sysdeps-win.c,
1405 dbus/dbus-sysdeps-util-win.c: renamed functions
1406 _dbus_xxx_file() to _dbus_file_xxx() to reflect
1407 struct name DBusFile.
1409 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1411 * dbus/dbus-sysdeps-util-unix.c (_dbus_become_daemon):
1412 fix _dbus_pid_fd check.
1414 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1416 * tools/dbus-print-message.c (print_message):
1417 added printing of the reply serial to method returns and
1418 errors, so you can actually figure out the message/reply
1419 pairs - patch by olli.salli at collabora.co.uk.
1421 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1423 * dbus-win.patch: removed committed patches.
1425 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1427 * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c,
1428 dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c,
1429 dbus/dbus-sysdeps-util-win.c, dbus/dbus-sysdeps-win.c,
1430 dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx,
1431 completed _dbus_pipe support.
1433 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1435 * dbus/dbus-sysdeps.h (_dbus_listen_tcp_socket):
1436 changed type or port to pointer, because the port is given back.
1438 * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
1439 implemented returning tcp port. Skipping port parameter
1440 and non integer port values in config <listen> statement
1443 * dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c
1444 (_dbus_listen_tcp_socket): return the real used tcp port.
1446 * bus/dbus-daemon.1.in: added <listen> tcp examples
1448 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1450 * cmake/config.h.cmake: win32 msvc bug fix
1452 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1454 * cmake/config.h.cmake: fixed DBUS_WINxx defines,
1455 using _WINCE does not work.
1457 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1459 * dbus-win.patch: removed _dbus_write_pipe() patch, it is now
1462 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1464 * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h:
1465 rename pipe related write() function calls to _dbus_write_pipe().
1467 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1469 * dbus-win.patch: added bus/config-loader-libexpat.c patch,
1470 uses DBUS_WIN for alls win32 related #ifdefs,
1473 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1475 * dbus-win.patch: updated patch for bus/dispatch.c.
1477 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1479 * dbus-win.patch: dbus-connection.c (dbus_connection_get_unix_user,
1480 dbus_connection_get_unix_process_id): Let return them valid user id's,
1481 otherwise bus-test fails. How to replace on win32 ?.
1483 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir):
1486 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1488 * dbus/dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1489 use dbus friendly error name.
1490 (fill_win_user_info_homedir): print user name in error case too.
1492 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1494 * cmake/ConfigureChecks.cmake: fixed socketpair check
1496 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1498 * bus/dispatch.c: disabled segfault test on win32 for now
1500 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1502 * configure.in, cmake/ConfigureChecks.cmake: added check
1504 * test/test-segfault.c: only include setrlimit stuff only
1507 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1509 * test/test-segfault.c: unix compile fix.
1510 * dbus-win.patch: removed obsolate patches.
1512 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1514 * bus/activation.c: removed obsolate include header.
1515 * test/test-segfault.c: win32 compile fix, rlimit
1516 isn't available on win32.
1517 * dbus-win.patch: removed some more patches, they
1518 are applied or obsolate
1520 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1522 * bus-win.patch: fixes unix listen problems, dbus-test
1525 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1527 * cmake/dbus/CMakeLists.txt,cmake/bus/CMakeLists.txt,
1528 cmake/CMakeLists.txt: win32 compile fix
1530 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1532 * dbus-win.patch, README.win: added available win32
1533 patches from windbus project (http://sf.net/projects/windbus)
1535 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1537 * bus/activation.c: (bus_activation_activate_service):
1538 fixed call to _dbus_spawn_async_with_babysitter().
1540 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1542 * dbus/dbus-spawn.c,dbus/dbus-spawn.h (_dbus_spawn_async_with_babysitter):
1543 added environment pointer as function parameter, used on win32.
1545 * test/spawn-test.c: fixed call to above mentioned function.
1547 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1549 * configure.in,test/test-sleep-forever.c,test/test-names.c:
1550 added configure check for unistd.h.
1552 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1554 * test/Makefile.am: fixed test data copy problem in
1555 out of source build, when sources came from svn or cvs.
1557 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1559 * dbus/*-win.*,bus/*-win.*: added win32 platform related
1560 files. These files are only added to the cmake build system.
1561 The missing dbus-win.patch file will be added later.
1563 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1565 * cmake: new directory, contains cmake build support.
1566 See http://www.cmake.org for more informations.
1567 Currently only unix will be buildable because some
1568 win32 required files are still missing.
1570 2007-03-03 Thiago Macieira <thiago@kde.org>
1572 * dbus/dbus-sysdeps-unix.c: capture the dbus-launch stderr
1573 output and add it to the DBusError message we return.
1575 * tools/dbus-launch.1:
1576 * tools/dbus-launch.c: Add option --close-stderr to, well,
1577 close stderr before starting dbus-daemon.
1579 2007-01-31 Havoc Pennington <hp@redhat.com>
1581 * bus/dbus-daemon.1.in: write a section in the man page on running
1582 a test daemon for debugging purposes
1584 2007-01-26 Havoc Pennington <hp@redhat.com>
1586 * bus/session.conf.in: override all the default limits with much
1587 higher limits on the session bus, there is no reason the session
1588 bus should have low limits
1590 * bus/config-parser.c (bus_config_parser_new): increase default
1591 limits so they are less likely to be hit; in particular the max
1592 replies per connection was way too low
1594 2006-01-25 Simon McVittie <simon.mcvittie@collabora.co.uk>
1596 * doc/dbus-tutorial.xml: Replace Python section of tutorial with
1597 a pointer to the tutorial maintained as part of dbus-python
1599 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1601 * dbus/dbus-sysdeps-unix.c: unix compile fix, moved
1602 atomic_exchange_and_add() from dbus/dbus-sysdeps.c
1603 to here, it's used by _dbus_atomic_inc() and _dbus_atomic_dec().
1605 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1607 * tools/dbus-monitor.c: gettimeofday() is not available
1608 on windows so we have to provide our own. It's taken from
1609 lgpl'd kdewin32 package. - Patches from Christian Ehrlicher
1611 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1613 * dbus/dbus-sysdeps-unix.c: moved _dbus_atomic_inc/dec()
1614 from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec()
1615 is in dbus-sysdeps-win.c (not in this patch).
1617 * dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit
1618 with InterlockedInc/Decrement.
1619 - Patches from Christian Ehrlicher
1621 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1623 * tools/dbus-send.c, tools/dbus-monitor.c: win32 compile fix.
1625 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1627 * dbus/dbus-marshal-recursive.c (type DBusTypeReaderClass):
1628 fix mispaced const statement. - Patch from Peter Kümmel
1630 2006-12-19 Ray Strode <rstrode@redhat.com>
1632 * bus/bus.c (process_config_every_time):
1633 don't overwrite existing bus context activation object
1634 until after we've checked that the new activation is
1638 (signal_handler), (handle_reload_watch):
1639 don't call exit() on failure, instead make do and keep
1641 (close_reload_pipe): new function to turn off
1642 hangup-causes-config-reload behavior if an unexpected
1645 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1647 * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
1648 correctness fix. - Patch from Christian Ehrlicher
1650 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1652 * dbus/dbus-internals.h: msvc also knows about __FUNCTION__,
1653 we should also use it. - Patch from Christian Ehrlicher
1655 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1657 * dbus-sysdeps-util.c: added win32 related tests
1659 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1661 * dbus/dbus-string.c (_dbus_string_pop_line),
1662 bus/desktop-file.c (parse_section_start,
1663 parse_comment_or_blank,parse_key_value,): uses
1664 _dbus_string_find_eol() to support platform independent eol style.
1666 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1668 * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function.
1669 * dbus/dbus-string-util.c (_dbus_string_test): added testcases for
1670 _dbus_string_find_eol().
1671 Approved by: Havoc Pennington.
1673 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1675 * configure.in: Added switch to disable user_database caching.
1677 * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
1678 be able disable user_dabase caching.
1680 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1682 * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext
1683 struct. It is unnecessary we have a global one already. Also remove
1684 bus_context_get_user_database function, it is no longer needed.
1685 Flush the global database on reload.
1687 * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups
1688 with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
1690 * dbus/dbus-userdb.c, dbus/dbus-userdb.h:
1691 Add _dbus_user_database_flush_system.
1692 Make more functions DBUS_USERDB_INCLUDES_PRIVATE.
1693 Small unrelated change in _dbus_is_a_number: change
1694 _dbus_string_parse_int to _dbus_string_parse_uint.
1696 * bus/connection.c: Change call to _dbus_user_database_get_groups to
1697 _dbus_groups_from_uid.
1699 * bus/policy.c, bus/policy.h: Change call to
1700 _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove
1701 DBusUserDatabase from bus_policy_allow_user prototype, it no longer
1704 2006-12-12 John (J5) Palmieri <johnp@redhat.com>
1706 * bus/signal.c: Fix match_rule_equal errata
1707 (CVE-2006-6107 - Patch from Kimmo Hämäläinen
1708 <kimmo.hamalainen@nokia.com>)
1710 2006-11-19 Thiago Macieira <thiago@kde.org>
1712 * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
1713 _dbus_pthread_condvar_wait,
1714 _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
1715 pthread_self() after coming back from a conditional variable
1716 wait as well as in one codepath where it was forgotten.
1717 Approved by: Havoc Pennington.
1719 2006-11-17 Havoc Pennington <hp@redhat.com>
1721 * update-dbus-docs.sh: allow setting fd.org username via env
1722 variable. Make it run autogen with --enable-xml-docs=yes
1723 --enable-doxygen-docs=yes so configure will fail if the required
1726 2006-11-17 Havoc Pennington <hp@redhat.com>
1728 * doc/dbus-faq.xml: minor FAQ tweaks
1730 2006-11-14 Havoc Pennington <hp@redhat.com>
1732 * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
1733 dbus_get_local_machine_id() to its own file, no substantive
1734 changes. There are a couple other things we might want to add that
1735 are "misc" so moving out of dbus-connection.[hc] which is big
1738 2006-11-14 Havoc Pennington <hp@redhat.com>
1740 * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
1741 UUID had the timestamp last, but the implementation had it first;
1742 move it to last since I think it's a tiny bit nicer (easier to
1743 compare at a glance, faster to sort, less code), and will not
1744 cause any practical compatibility problems. Also, always convert
1745 the timestamp to big endian.
1747 * doc/dbus-specification.xml: Clean up the docs on the UUID.
1749 * tools/dbus-uuidgen.1: more prominently say it is not suitable
1750 as a replacement for regular uuidgen/RFC4122.
1752 2006-11-14 John (J5) Palmieri <johnp@redhat.com>
1754 * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
1755 the correct value so we don't assert when initalizing recursive threads
1757 * test/name-test/test-thread-init.c: call dbus_threads_init_default
1758 instead of _dbus_threads_init_debug since it is more of a real world