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-spawn.c (read_ints, read_pid): use correct ssize_t type
6 instead of size_t (FDO Bug #12862)
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-errors.c (dbus_set_error): make sure to call va_end if we
13 hit an OOM error inside va_start (FDO Bug #12846)
15 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
17 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
19 * dbus/dbus-connection.c (dbus_connection_send_with_reply):
20 fix possible crash if pending_return is NULL (FDO Bug #12673)
22 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
24 * portions of patch submitted by Tim Mooney
25 <enchanter at users dot sourceforge dot net>
27 * configure.in: never auto-select libxml (FDO Bug #12479)
29 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
31 * patches by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
33 * dbus/dbus-sysdeps-unix (_dbus_get_autolaunch_address): handle OOM
36 * dbus/dbus-uuidgen.c (return_uuid): handle OOM (FDO Bug #12928)
38 * dbus/dbus-misc.c (dbus_get_local_machine_id): handle OOM, fix return
39 value to return NULL not FALSE (FDO Bug #12946)
41 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
43 * bus/bus.c (bus_context_check_security_policy): rewrite selinux error
44 handling to not abort due to a NULL read and to set the error only if
45 it is not already set (Based off of FDO Bug #12430)
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-internals.c (_dbus_read_uuid_file_without_creating,
52 _dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
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 * dbus/dbus-spawn.c (babysit, babysitter_iteration): add error
59 handling when polling (FDO Bug #12954)
61 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
63 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
65 * bus/config-parser.c (locate_attributes): remove dead code which
66 always evaluated to TRUE
68 * dbus/dbus-shell.c (_dbus_shell_quote): remove unused code
70 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
72 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
74 * bus/connection.c (bus_connection_complete): plug a possible
75 BusClientPolicy leak (FDO Bug #13242)
77 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
79 * patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz#
84 * bus/Makefile.am: add inotify module to the build
86 * bus/dir-watch-inotify.c: inotify module based off the dnotify and
89 * configure.in: add checks and switch for inotify
90 also add a printout at the end of configure if inotify and kqueue
91 support is being built in (dnotify already had this)
93 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
95 * patch by Frederic Crozat <fcrozat at mandriva dot com>
97 * bus/dir-watch-dnotify.c (bus_watch_directory): watch for file
100 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
102 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
104 * dbus/dbus-transport-socket.c(do_reading): return message
105 loader buffer in case of OOM (FDO Bug#12666)
107 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
109 * configure.in: add warning to output when libxml is selected since
110 we don't have a libxml maintainer and expat works perfectly fine
111 for what we need an xml parser for
113 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
115 * Patch by Andrea Luzzardi <scox at sig11 dot org>: creates a
116 _dbus_geteuid function to fix EXTERNAL authentication in setuid
119 * dbus/dbus-sysdeps-unix.c (_dbus_geteuid): used to get the effective
120 uid of the running program
121 (_dbus_credentials_add_from_current_process): use geteuid instead of
123 (_dbus_append_user_from_current_process): use geteuid instead of
126 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user): use
127 geteuid instead of getuid
128 (_dbus_unix_user_is_at_console): use geteuid instead of getuid
130 * dbus/dbus-sysdeps-win.c (_dbus_geteuid): add a windows equivilant
131 that returns DBUS_UID_UNSET
133 2007-12-18 Havoc Pennington <hp@redhat.com>
135 * dbus/dbus-connection.c (_dbus_connection_block_pending_call):
136 fix location of curly braces
138 2007-11-23 Sjoerd Simons <sjoerd@luon.net>
140 * tools/dbus-launch.c: let both a normal dbus-launch and an
141 autolaunched bus save their parameters in X11 if possible. This makes
142 the autolaunch and non-autolaunch behaviour more similar. With the
143 exception that on a normal launch there will always be a new session
144 bus and not being able to save parameters is not fatal. This also
145 enables to launch programs directly with autolaunch (not very usefull
148 2007-10-31 Havoc Pennington <hp@redhat.com>
150 * bus/selinux.c (log_audit_callback): rewrite to use
151 _dbus_string_copy_to_buffer_with_nul()
153 * dbus/dbus-string.c (_dbus_string_copy_to_buffer): change to NOT
154 nul-terminate the buffer; fail an assertion if there is not enough
155 space in the target buffer. This fixes two bugs where
156 copy_to_buffer was used to copy the binary bytes in a UUID, where
157 nul termination did not make sense. Bug reported by David Castelow.
158 (_dbus_string_copy_to_buffer_with_nul): new function that always
159 nul-terminates the buffer, and fails an assertion if there is not
160 enough space in the buffer.
162 2007-10-23 Havoc Pennington <hp@redhat.com>
164 * bus/bus.c (bus_context_new): use the new name here
166 * bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
167 to avoid possible libc conflict, and declare it in .h file to
170 2007-10-19 Havoc Pennington <hp@redhat.com>
172 * bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX
174 2007-10-19 Havoc Pennington <hp@redhat.com>
176 * bus/bus.c (bus_context_new): put the audit_init() in here
177 instead, which I believe ends up being the same as where it was
178 before, though I'm not sure I understand why it goes here.
180 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
181 remove audit_init() from here, this file can't depend on code in
184 2007-10-16 Simon McVittie <simon.mcvittie@collabora.co.uk>
186 * configure.in: *Actually* fix detection of i486 atomic ops -
187 my previous attempt at a fix would always enable them due to wrong
188 quoting. Patch from Colin Walters <walters@verbum.org>
190 2007-10-11 Simon McVittie <simon.mcvittie@collabora.co.uk>
192 * configure.in: enable Autoconf's AC_C_INLINE to avoid compilation
193 failure with gcc -ansi
194 * dbus/dbus-macros.h, dbus/dbus-arch-deps.h.in: Use new macro
195 _DBUS_GNUC_EXTENSION (the same as G_GNUC_EXTENSION) to avoid -ansi
196 warnings about use of "long long".
197 * dbus/dbus-server-socket.c: remove unused variable when assertions
199 * dbus/dbus-marshal-validate.c: avoid empty statements by removing
201 * tools/dbus-launch.c: convert C++-style comment to C-style, add {}
203 * .gitignore: ignore vi swapfiles
204 * dbus/dbus-errors.h, dbus/dbus-errors.c: Add DBUS_ERROR_INIT macro,
205 equivalent to calling dbus_error_init() on an uninitialized DBusError
206 * dbus/dbus-address.c, dbus/dbus-auth-script.c, dbus/dbus-auth-util.c,
207 dbus/dbus-connection.c, dbus/dbus-internals.c, dbus/dbus-keyring.c,
208 dbus/dbus-message-util.c, dbus/dbus-server.c, dbus/dbus-sha.c,
209 dbus/dbus-spawn-win.c, dbus/dbus-spawn.c,
210 dbus/dbus-sysdeps-util-win.c, dbus/dbus-transport-socket.c,
211 dbus/dbus-transport.c, dbus/dbus-userdb.c: use that macro instead of
212 calling dbus_error_init() where it's clearly equivalent
213 * configure.in, dbus/dbus-sysdeps.h, dbus/dbus-sysdeps-unix.c: Fix
214 detection of i486 atomic ops. Previously, the attempts to determine
215 support at compile-time on Darwin were causing the i486 atomic ops to
216 be used on *all* i386 or x86-64 GCC builds (AH_VERBATIM can't be
217 conditionalized like we were trying to).
219 2007-10-10 Simon McVittie <simon.mcvittie@collabora.co.uk>
221 * dbus/dbus-errors.c, dbus/dbus-protocol.h: Add new error
222 org.freedesktop.DBus.Error.ObjectPathInUse
223 * dbus/dbus-object-tree.h, dbus/dbus-object-tree.c,
224 dbus/dbus-connection.c, dbus/dbus-connection.h: add new functions
225 dbus_connection_try_register_object_path and
226 dbus_connection_try_register_fallback, which raise ObjectPathInUse
227 rather than asserting, to make object path registration less painful
229 * .gitignore: add various things that weren't in .cvsignore because
230 CVS implicitly ignored them; generally bring up to date
232 2007-10-09 John (J5) Palmieri <johnp@redhat.com>
234 * tools/run-with-tmp-session-bus.sh: Fix env exports for better
236 * tools/dbus-send.1: Document syntax for container types in dbus-send
237 man file (#9553) - patch from Jack Spaar <jspaar at
238 users.sourceforge.net>
240 [Both OK for MIT/X11 relicensing -smcv]
242 2007-10-09 Simon McVittie <simon.mcvittie@collabora.co.uk>
244 * doc/dbus-specification.xml: Specifically forbid empty structs (#7969)
245 * doc/dbus-specification.xml: Patches from Kristoffer Lundén to clarify
246 description of DBUS_COOKIE_SHA1 (#10184) and allowable contents of a
247 variant (#10185, amended as per Havoc's comments)
249 [All of the above are OK for MIT/X11 licensing]
251 2007-10-03 John (J5) Palmieri <johnp@redhat.com>
253 * dbus/dbus-internals.h: fd.o bug #11678 Don't error out if compiler
254 does not support vararg macros. _dbus_verbose is the only function
255 that does this so make it a noop if vararg macros are not supported
256 * bus/selinux.c, dbus/dbus-sysdeps-util-unix.c: fd.o bug #12429
257 Reverse check to setpcap and only init audit if we were root
258 (patch by Dan Walsh <dwalsh@redhat.com>,
259 https://bugs.freedesktop.org/show_bug.cgi?id=12429). Reverse
260 we_were_root check to setpcap if we were root. Also only init audit
261 if we were root. So error dbus message will not show up when policy
262 reload happens. dbus -session will no longer try to send audit
263 message, only system will.
264 * configure.in: fd.o bug #11872 improve linker test for --gc-sections.
265 Patch by Tim Mooney <enchanter at users.sourceforge.net>
266 * configure.in, dbus/dbus-sysdeps.c: fd.o bug #11872 fix clearenv for
267 systems that do not have it. Patch from Brian Cameron <brian.cameron
269 * tools/dbus-launch.c: fd.o bug #12547 remove superfluous if.
270 Also convert tabs to spaces
271 * configure.in, bus/Makefile.am, dbus/Makefile.am: Correctly implement
272 -fPIC and -fPIE. For security reasons we want possition independent
273 code for libraries and possition independent executable for
274 executables. Before we were just enabling -fPIC. Now we correctly
275 enable -fPIC and -PIE for libdbus and the bus respectively. Proper
276 LD_FLAGS are set for each also.
278 2007-09-20 Ryan Lortie <desrt@desrt.ca>
280 Add argument path matching support. Bug #11066.
282 * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
283 bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
284 match_rule_matches): Add support for parsing and matching on
285 arg0path='/some/path' type rules.
287 * dbus/signals.h (bus_match_rule_set_arg): change to take const
288 DBusString instead of const char * for the string to match against.
290 * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
291 documentation about the path matching.
293 * doc/dbus-specification.xml: add a more detailed description of the
296 2007-09-19 Ryan Lortie <desrt@desrt.ca>
298 Add support for compacting DBusStrings to release wasted memory.
300 * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
301 _dbus_string_lock): new compact function to free up allocated memory
302 that is no longer used.
304 * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
305 message loader buffer.
307 * dbus/dbus-transport-socket.c (do_reading, do_writing): call
308 _dbus_string_compact on the incoming/outgoing "encoded" buffers.
310 * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
313 2007-09-13 Ryan Lortie <desrt@desrt.ca>
315 * HACKING: add more explicit git branch/tag instructions
317 2007-09-13 Ryan Lortie <desrt@desrt.ca>
319 migrate from cvs to git (cvs2svn -> git-svnimport).
321 * HACKING: update release/branch/tag instructions
322 * */.cvsignore: rename to .gitignore
324 also, clean up tags and branch names to conform to HACKING
326 2007-08-17 William Jon McCann <mccann@jhu.edu>
328 * update-dbus-docs.sh: upload DTD to server
330 2007-08-17 Havoc Pennington <hp@redhat.com>
332 * tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
333 Lorenz to use long not int with XChangeProperty format 32
335 * dbus/dbus-sysdeps-util-unix.c
336 (_dbus_write_pid_to_file_and_pipe): factor this out, and use the
337 same code in _dbus_become_daemon (where the parent writes the pid
338 file and to the pid pipe) and in bus_context_new (where the daemon
339 writes its own pid file and to its own pid pipe)
341 * bus/bus.c (bus_context_new): close the pid pipe after we print
342 to it. Also, don't write the pid to the pipe twice when we fork,
343 someone reported this bug a long time ago.
345 2007-08-03 Havoc Pennington <hp@redhat.com>
347 * configure.in: add major/minor/micro version number AC_SUBST
349 * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
350 DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
351 DBUS_VERSION): collection of macros to get version of library we
352 are compiled against.
354 * dbus/dbus-misc.c (dbus_get_version): new function, to get
355 version of library we are linked against at runtime.
357 2007-07-30 Havoc Pennington <hp@redhat.com>
359 * bus/activation-helper.c (check_bus_name): don't use
360 _dbus_check_valid_bus_name() which is only around with
361 --enable-checks, instead use _dbus_validate_bus_name().
362 Bug #11766 from Diego <diego@pemas.net>
364 2007-07-27 Havoc Pennington <hp@redhat.com>
366 * configure.in: post-release version bump
368 2007-07-27 Havoc Pennington <hp@redhat.com>
372 2007-07-26 Havoc Pennington <hp@redhat.com>
374 * bus/config-parser-trivial.c (check_return_values): disable a
375 test that hardcoded the bus user's name
377 * bus/dispatch.c (bus_dispatch_test_conf): remove the "if
378 (!use_launcher)" around the tests, they were only failing because
379 we didn't pass through all the expected errors from the helper.
381 * bus/activation-exit-codes.h
382 (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
383 (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
384 failure code, so if a third party launch helper were written it
385 could just always return 1 on failure.
387 2007-07-24 Daniel P. Berrange <dan@berrange.com>
389 * bus/dbus-daemon.1: Add docs on new syntax options for the bus
392 * dbus/dbus-address.c: Allow * in addresses (for binding to all
395 * dbus/dbus-sysdeps.h:
396 * dbus/dbus-sysdeps-unix.c: Re-write to use getaddrinfo instead
397 of gethostbyname to enable protocol independant name lookup,
400 * dbus/dbus-server-socket.h:
401 * dbus/dbus-server-socket.c: Add support for 'family' in the
402 address string to specify ipv4 vs ipv6. Use a port string to
403 allow for service resolution. Allow for binding to multiple
404 sockets at once in case of dual IPv4 & IPv6 stacks.
406 * dbus/dbus-server-unix.c: Pass in an array of file descriptors
407 instead of a single one.
409 * dbus/dbus-transport-socket.h:
410 * dbus/dbus-transport-socket.c: Add support for 'family' in the
411 address string to specify ipv4 vs ipv6. Use a port string to
412 allow for service resolution.
414 2007-07-24 Havoc Pennington <hp@redhat.com>
416 * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
418 * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
419 TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
420 test shell_fail_service_auto_start when use_launcher==TRUE
422 * bus/activation-helper-bin.c (convert_error_to_exit_code): pass
423 through the INVALID_ARGS error so the test suite works
425 * bus/activation.c (handle_activation_exit_error): return
426 DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
428 * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
429 return only the exit code of the child, not the entire thingy from
430 waitpid(), and make the return value indicate whether the child
431 exited normally (with a status code)
433 * bus/bus.c (process_config_first_time_only): _dbus_strdup works
434 on NULL so no need to check
435 (process_config_every_time): move servicehelper init here, so we
436 reload it on HUP or config file change
438 * bus/Makefile.am (install-data-hook): remove comment because
439 Emacs make mode seems to be grumpy about it
441 2007-07-24 Richard Hughes <richard@hughsie.com>
444 * bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
445 (test_post_hook), (main):
446 Add back the test-system.c file - not sure now this got ignored in the
449 2007-07-24 Richard Hughes <richard@hughsie.com>
452 Use ustar to generate the tarball; this fixes the make distcheck
453 problem when the data files do not fit in the archive:
454 tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
455 TestSuiteShellEchoServiceFail.service.in: file name is too
456 long (max 99); not dumped
458 We have to have the 'long' names as the service helper matches by
459 filename rather than by the name in the service file.
461 2007-07-24 Richard Hughes <richard@hughsie.com>
465 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
466 uiteNoExec.service.in:
467 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
468 uiteNoService.service.in:
469 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
470 uiteNoUser.service.in:
471 * test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
472 * test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
473 * test/data/valid-config-files/debug-allow-all-sha1.conf.in:
474 * test/data/valid-config-files/debug-allow-all.conf.in:
475 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
476 teEchoService.service.in:
477 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
478 teSegfaultService.service.in:
479 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
480 teShellEchoServiceFail.service.in:
481 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
482 teShellEchoServiceSuccess.service.in:
483 * test/data/valid-service-files/debug-echo.service.in:
484 * test/data/valid-service-files/debug-segfault.service.in:
485 * test/data/valid-service-files/debug-shell-echo-fail.service.in:
486 * test/data/valid-service-files/debug-shell-echo-success.service.in:
487 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
489 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
490 ultService.service.in:
491 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
492 EchoServiceFail.service.in:
493 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
494 EchoServiceSuccess.service.in:
495 Add the data files needed by the system activation unit checks.
497 2007-07-24 Richard Hughes <richard@hughsie.com>
499 * bus/dispatch.c: (check_segfault_service_no_auto_start),
500 (check_launch_service_file_missing),
501 (check_launch_service_user_missing),
502 (check_launch_service_exec_missing),
503 (check_launch_service_service_missing), (bus_dispatch_test_conf),
504 (bus_dispatch_test_conf_fail), (bus_dispatch_test):
505 Add unit tests for system activation. Most are copied from the
506 session activation tests, but some didn't apply when using a laucher.
508 2007-07-24 Richard Hughes <richard@hughsie.com>
510 * bus/activation.c: (bus_activation_activate_service):
511 If the bus uses a service-laucher, then use the setuid laucher.
513 2007-07-24 Richard Hughes <richard@hughsie.com>
516 Add the needed library exports for the new laucher.
518 2007-07-24 Richard Hughes <richard@hughsie.com>
521 Check for -Wl,--gc-sections so we can really reduce the size of the
524 2007-07-24 Richard Hughes <richard@hughsie.com>
526 * bus/activation.c: (handle_activation_exit_error),
527 (babysitter_watch_callback):
528 Map the child exit status integer to a proper dbus error.
530 2007-07-24 Richard Hughes <richard@hughsie.com>
532 * bus/bus.c: (process_config_first_time_only),
533 (process_config_every_time), (bus_context_unref),
534 (bus_context_get_servicehelper):
536 Add the concept of a service-helper and allow it's value to be read.
538 2007-07-24 Richard Hughes <richard@hughsie.com>
540 * bus/activation.c: (bus_activation_entry_unref),
541 (update_desktop_file_entry):
542 Add the concept of, and read the value of user from the desktop file.
543 The user string is not required unless we are using system activation.
545 2007-07-24 Richard Hughes <richard@hughsie.com>
548 * bus/desktop-file.h:
549 Move the defines into the header file, as we use these in the lauch
550 helper as well as the desktop file parsing.
552 2007-07-24 Richard Hughes <richard@hughsie.com>
555 Add the autogenerated binary files.
557 2007-07-24 Richard Hughes <richard@hughsie.com>
561 Add the build glue for the lauch helper, and also add the launch-helper
562 OOM checks into make check. I've probably broken the build, give me 2.
564 2007-07-24 Richard Hughes <richard@hughsie.com>
566 * bus/test-launch-helper.c: (die), (check_memleaks),
567 (test_post_hook), (bus_activation_helper_oom_test), (main):
568 Add a test wrapper to allow OOM checks on the launch helper.
570 2007-07-24 Richard Hughes <richard@hughsie.com>
572 * bus/activation-helper-bin.c: (convert_error_to_exit_code),
574 * bus/activation-helper.c: (desktop_file_for_name),
575 (clear_environment), (check_permissions), (check_service_name),
576 (get_parameters_for_service), (switch_user),
577 (exec_for_correct_user), (check_bus_name), (get_correct_parser),
578 (launch_bus_name), (check_dbus_user), (run_launch_helper):
579 * bus/activation-helper.h:
580 Add the initial launch-helper. This is split into a main section and a
581 binary loader that allows us to lauch the main section in another test
582 harness to do stuff like OOM testing. No build glue yet.
584 2007-07-24 Richard Hughes <richard@hughsie.com>
587 * bus/config-parser.c: (bus_config_parser_unref),
588 (start_busconfig_child), (bus_config_parser_end_element),
589 (servicehelper_path), (bus_config_parser_content),
590 (bus_config_parser_finished),
591 (bus_config_parser_get_servicehelper),
592 (test_default_session_servicedirs),
593 (test_default_system_servicedirs), (bus_config_parser_test):
594 * bus/config-parser.h:
595 Make the config-parser code use the common config code.
596 Also add the session and systemdirs stuff, and make the config parser
597 aware of the servicehelper field.
599 2007-07-24 Richard Hughes <richard@hughsie.com>
601 * bus/system.conf.in:
602 Add new servicehelper fields to the default system.conf file.
604 2007-07-24 Richard Hughes <richard@hughsie.com>
606 * bus/config-parser-trivial.c: (service_dirs_find_dir),
607 (service_dirs_append_link_unique_or_free), (bus_config_parser_new),
608 (bus_config_parser_unref), (bus_config_parser_start_element),
609 (bus_config_parser_end_element), (bus_config_parser_content),
610 (bus_config_parser_finished), (bus_config_parser_get_user),
611 (bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
612 (check_return_values), (do_load), (check_loader_oom_func),
613 (process_test_valid_subdir), (make_full_path), (check_file_valid),
614 (bus_config_parser_trivial_test):
615 * bus/config-parser-trivial.h:
616 Add a security sensitive stripped down config parser for the setuid
617 launcher. This file only reads what it needs, and doesn't try to do
618 anything remotely clever like including external files.
619 It is not intended to validate the config file; it is expected that
620 config-parser will do that before the setuid program tries to read it.
622 2007-07-24 Richard Hughes <richard@hughsie.com>
624 * bus/config-parser-common.c:
625 (bus_config_parser_element_name_to_type),
626 (bus_config_parser_element_type_to_name):
627 * bus/config-parser-common.h:
628 We don't want to run the whole config parser with all it's deps in the
629 setuid program. We need to implement a stripped down config parser just
630 for the launcher, and to do so I need some common functions and
631 defines; add them here.
633 2007-07-24 Richard Hughes <richard@hughsie.com>
635 * dbus/dbus-sysdeps-unix.c:
636 (_dbus_get_standard_system_servicedirs):
637 * dbus/dbus-sysdeps-win.c:
638 Provide a way to get the standard system servicedirs, just like we do
639 for the session service dirs. These should be seporate, as there may
640 be a security issue starting up some session stuff as root.
641 The use-case for the same binary starting up per-system _and_
642 per-session is also not valid.
644 2007-07-24 Richard Hughes <richard@hughsie.com>
646 * bus/dbus-daemon.1.in:
647 Add standard_system_servicedirs and servicehelper into the man file
648 and explain what each does.
650 2007-07-24 Richard Hughes <richard@hughsie.com>
653 Add servicehelper into the dtd, it will soon be a valid part of the
656 2007-07-24 Richard Hughes <richard@hughsie.com>
658 * dbus/dbus-spawn.c: (read_data),
659 (_dbus_babysitter_get_child_exit_status):
661 Add a function so we can get access to the exit status of the launch
663 By providing the return code and not the error we can leave the
664 'what does this mean?' to the bus launch code and not include it in the
667 2007-07-24 Richard Hughes <richard@hughsie.com>
669 * bus/activation-exit-codes.h:
670 Add defines which specify the output codes of the launch helper.
671 We have to use exit codes as this is the only way we can return failure
672 type without going grotty things like redirecting possibly-nonsecure
673 stderr into the error.
675 2007-07-24 Richard Hughes <richard@hughsie.com>
677 * dbus/dbus-protocol.h:
678 Add new error names needed for the launch helper.
680 2007-07-24 Richard Hughes <richard@hughsie.com>
682 * dbus/dbus-sysdeps.c: (_dbus_clearenv):
683 * dbus/dbus-sysdeps.h:
684 Add a wrapper for clearenv.
686 2007-07-24 Richard Hughes <richard@hughsie.com>
688 * doc/system-activation.txt:
689 Add design document for the system activation parts. I'll shortly be
690 committing many patches that add system activation using a setuid
691 launcher into CVS, so expect things to be broken for a few hours.
693 2007-07-19 Ralf Habacker <ralf.habacker@freenet.de>
695 * cmake/modules/FindKDEWIN.cmake: fixed comment
696 * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
698 2007-07-18 Havoc Pennington <hp@redhat.com>
700 * dbus/dbus-message.c (dbus_message_get_cached)
701 (dbus_message_cache_or_finalize): don't mess with message from
702 message cache outside of the cache lock. Bug #9164 from Jonathan
705 2007-07-13 Havoc Pennington <hp@redhat.com>
707 * Add indent-tabs-mode: nil to all file headers.
709 2007-07-12 Havoc Pennington <hp@redhat.com>
711 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
712 for parsing hex as double to be sure it fails to work
714 * dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
716 2007-07-10 Havoc Pennington <hp@redhat.com>
718 * dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
719 Hochreutiner to avoid trying to protect individual bits in a word
720 with different locks (make dispatch_acquired and io_path_acquired
721 dbus_bool_t rather than bitfields)
723 2007-07-09 Ralf Habacker <ralf.habacker@freenet.de>
725 * dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,
726 dbus-sysdeps-spawn-win.c: synced with windbus sources
728 2007-07-07 Ralf Habacker <ralf.habacker@freenet.de>
730 * dbus/dbus-sysdeps-win.c
731 (_dbus_getsid): remove unused jump label
732 (_dbus_read_credentials_socket): _dbus_string_init could fail,
734 (_dbus_get_working_dir, _dbus_init_working_dir): remove unused
737 2007-07-04 Ralf Habacker <ralf.habacker@freenet.de>
739 * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs
740 for windows supplementary packages too
742 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
744 * cmake/dbus/CMakeLists.txt: handle userdb as unix file
746 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
748 * dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate
751 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
753 * dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
755 2007-06-23 Ralf Habacker <ralf.habacker@freenet.de>
757 * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and
758 WIN_ONLY commands for auth scripts
759 * test/data/auth/external-root.auth-script: limit execution to unix
761 2007-06-21 Havoc Pennington <hp@redhat.com>
763 * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
766 2007-06-21 Havoc Pennington <hp@redhat.com>
768 * dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
769 not be the same as before, the ABI has never been declared stable
770 on Windows and 2) do not commit to cross-platform files without
771 posting the exact patch to the mailing list
773 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
774 out before, either 0xff needs to work on both platforms, or none
775 of the dbus code can rely on it working. That means the options
776 are 1) audit the code for anywhere that relies on 0xff working, if
777 none found ideally add a test that it *doesn't* work and make unix
778 reject it explicitly, but in any case this test would go away or
779 2) make it work on Windows also, then we don't have to figure out
780 whether we rely on it.
782 And in either case, post the exact patch to the mailing list and
785 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
787 * cmake/CMakeLists.txt: added VERSION_PATCH to be able to
788 distinguish win32 binary release from dbus versioning
790 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
792 * dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
793 (_dbus_getsid): new function
794 (_dbus_read_credentials_socket): used correct function
795 (_dbus_append_user_from_current_process,
796 _dbus_credentials_add_from_current_process): added real
798 (_dbus_credentials_parse_and_add_desired,_dbus_parse_uid):
801 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
803 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): don't check
804 0xff as floating point, this isn't supported on win32 math
807 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
809 * dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username,
810 _dbus_homedir_from_current_process, _dbus_append_desired_identity):
811 removed obsolate functions
813 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
815 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-util-win.c,
816 dbus/dbus-sysdeps-win.h: disabled uid/sid conversation stuff
817 implementation by Peter Kuemmel
819 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
821 * dbus/dbus-watch.c (dbus_watch_get_fd): this function is
822 deprecated and its behavior should be as before until all
823 client code is migrated.
825 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
827 * dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c:
828 msvc7.1 fixes by Jaroslaw Staniek tested with mingw
830 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
832 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c,
833 dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation
836 2007-06-18 Ralf Habacker <ralf.habacker@freenet.de>
838 * dbus-win.patch: removed obsolate patches
840 2007-06-18 Havoc Pennington <hp@redhat.com>
842 * configure.in: bump version to 1.1.2 so CVS is higher than last
843 release (this is not the 1.1.2 release)
845 2007-06-18 Havoc Pennington <hp@redhat.com>
849 2007-06-18 Havoc Pennington <hp@redhat.com>
851 * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
853 * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
855 * bus/bus.c (bus_context_new): generate a unique ID for each bus context
857 * dbus/dbus-connection.c (dbus_connection_get_server_id): new function
859 * dbus/dbus-bus.c (dbus_bus_get_id): new function
861 * dbus/dbus-server.c (dbus_server_get_id): new function
863 2007-06-18 Havoc Pennington <hp@redhat.com>
865 * dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
866 this up a little bit, to try and understand why telnet'ing to a
867 server and sending a non-nul byte didn't disconnect immediately;
868 now it seems that it does disconnect immediately as it should,
869 though I don't understand what has changed.
871 2007-06-18 Havoc Pennington <hp@redhat.com>
873 * dbus/dbus-watch.c (dbus_watch_get_socket)
874 (dbus_watch_get_unix_fd): new API to match DBusConnection
875 (dbus_watch_get_fd): deprecate this
877 Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
878 now since all the transports use sockets anyway
880 2007-06-16 Ralf Habacker <ralf.habacker@freenet.de>
882 * dbus/dbus-macros.h, dbus/dbus-message.c,
883 dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED
884 to DBUS_DEPRECATED and extended to msvc compiler
886 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
888 * cmake/CMakeLists.txt: use local include header first
890 * dbus/dbus-sysdeps-win.c: mingw fix of DBusCredential struct
892 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
894 * cmake/ConfigureChecks.cmake,cmake/config.h.cmake:
895 added check for HAVE_ERRNO_H
897 * cmake/dbus/CMakeLists.txt: added missing files
899 * dbus/dbus-transport-win.c/.h: new files
901 * dbus/dbus-sysdeps-win.c,.h: added required _unix functions
902 to make dbus compilable on win32
904 * dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to
907 * dbus-win.patch: removed applied or obsolate patches
909 Note: dbus-win32 is now compilable, no guarantee that it runs
912 2007-06-15 Havoc Pennington <hp@redhat.com>
914 * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
915 (_dbus_append_system_config_file): new functions
917 * bus/main.c (main): use _dbus_append_system_config_file() and
918 _dbus_append_session_config_file()
920 * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
921 DBUS_SESSION_CONFIG_FILE into this makefile
923 2007-06-15 Havoc Pennington <hp@redhat.com>
925 * dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
926 (_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
927 (_dbus_strerror_from_errno): family of functions to abstract
928 errno, though these are somewhat bogus (really we should make our
929 socket wrappers not use errno probably - the issue is that any
930 usage of errno that isn't socket-related probably is not
931 cross-platform, so should either be in a unix-only file that can
932 use errno directly, or is a bug - these general errno wrappers
933 hide issues of this nature in non-socket code, while
934 socket-specific API changes would not since sockets are allowed
937 2007-06-14 Havoc Pennington <hp@redhat.com>
939 * bus/dispatch.c (check_get_connection_unix_process_id): mop up
940 getpid() (noticed by Peter Kümmel) and adapt the test to
941 expect a "pid unknown" error when running on Windows.
943 2007-06-14 Havoc Pennington <hp@redhat.com>
945 * dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
946 delete this function since it was effectively the same as
947 _dbus_credentials_add_from_username()
949 2007-06-14 Havoc Pennington <hp@redhat.com>
951 * dbus/dbus-auth.c: adapt to keyring changes
953 * dbus/dbus-keyring.c: change to avoid using user ID and home
954 directory directly; instead use a
955 keyring-location-from-credentials function in dbus-sysdeps
957 * fix to use _dbus_append_user_from_current_process() instead of
958 _dbus_username_from_current_process() or _dbus_append_desired_identity().
960 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
962 * reverted global rename of function _dbus_username_from_current_process.
963 It needs too much tests to verify that the change does not break anything.
964 I had overseen that the signatures are different and requires non
966 This is one *major* disadvantage of emulating oop functionality with c.
967 You are responsible for cleaning every object on every function return point
968 which could be a nightmare if you are not working with dbus all the days.
970 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
972 * dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech):
973 fixed usage of _dbus_append_desired_identity()
975 * dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
977 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
979 * dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
981 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
983 * global rename of function _dbus_username_from_current_process
984 to _dbus_append_desired_identity.
985 Approved by Havoc Pennington
987 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
989 * dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
990 (_dbus_append_desired_identity, _dbus_windows_user_is_process_owner):
991 new win32 functions as counterpart of unix related
992 (_dbus_send_credentials_socket,_dbus_read_credentials_socket):
993 renamed from ..._unix_socket
994 (_dbus_send_credentials_unix_socket): removed obsolate function
996 * dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
997 (_dbus_verify_daemon_user,_dbus_change_to_daemon_user):
998 new win32 functions as counterpart of unix related
1000 2007-06-14 Simon McVittie <simon.mcvittie@collabora.co.uk>
1002 * doc/dbus-specification.xml: say the protocol version is 1 instead of
1003 0 (patch from Kristoffer Lundén, fd.o#10033) and remove the FIXME
1004 about removing protocol version from messages (as per Havoc's comment
1007 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
1009 * dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches):
1010 new win32 functions as counterpart of unix related
1012 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
1014 * cmake/modules/FindKDEWIN.cmake,
1015 cmake/modules/FindKDEWIN_Packager.cmake,
1016 cmake/modules/Win32Macros.cmake: new files from the
1018 * cmake/CMakeLists.txt: cleaned support for kdewin installer and
1019 win32 explorer wrapper
1021 2007-06-13 Havoc Pennington <hp@redhat.com>
1023 * dbus/dbus-message.c (dbus_message_iter_open_container): Fix
1024 broken return_if_fail (kind of scary that test suite does not
1027 2007-06-13 Havoc Pennington <hp@redhat.com>
1029 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
1030 all_interfaces=true|false for tcp servers
1032 * dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
1035 * bus/selinux.c: fix some missing includes
1037 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
1038 port to simply be omitted in addition to specifying 0
1040 2007-06-13 Havoc Pennington <hp@redhat.com>
1042 * configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
1043 libaudit support, no clue what this means really but now we have
1044 it. Patches from Fedora package.
1046 * bus/bus.c (bus_context_new): move selinux initialization after
1047 changing to daemon user, patch from Fedora package
1049 * dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
1051 2007-06-12 Havoc Pennington <hp@redhat.com>
1053 * dbus/dbus-message.c (dbus_message_iter_open_container): improve
1054 the checks/warnings for contained_signature a bit
1056 2007-06-12 Havoc Pennington <hp@redhat.com>
1058 * dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
1059 improve the warning a bit if you write extra data into a message
1061 2007-06-12 Havoc Pennington <hp@redhat.com>
1063 * dbus/dbus-auth.c (sha1_handle_second_client_response)
1064 (handle_server_data_anonymous_mech): add the process ID from
1065 socket credentials, if available, even if not using EXTERNAL
1067 * dbus/dbus-transport.c (auth_via_default_rules): support
1068 allow_anonymous flag
1070 * dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
1071 (dbus_connection_set_allow_anonymous): new API for controlling
1074 2007-06-09 Havoc Pennington <hp@redhat.com>
1076 * dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
1077 think an empty line is the end of the file.
1078 Also, fix some whitespace.
1080 * dbus/dbus-string-util.c: add more tests for
1081 _dbus_string_pop_line() revealing that it thinks an empty line is
1082 the end of the file, which broke dbus-auth-script.c so
1083 it didn't really run the scripts
1085 * dbus/dbus-auth.c: add ANONYMOUS mechanism
1087 * dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
1088 an empty/no-op auth script; add commands to check that we have or
1089 don't have the expected credentials
1091 2007-06-09 Havoc Pennington <hp@redhat.com>
1093 * bus/policy.c (bus_policy_create_client_policy): gracefully
1094 continue if the connection has no unix user - just don't apply
1095 any unix user dependent rules.
1097 * bus/config-parser.c: remove dbus-userdb.h usage
1099 * bus/bus.c: remove dbus-userdb.h usage
1101 * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
1102 support Windows user function; also, fix the logic for checking
1103 auth as root in the default auth code (broken in the previous
1106 * dbus/dbus-connection.c
1107 (dbus_connection_set_windows_user_function): new function
1108 (dbus_connection_get_windows_user): new function
1110 2007-06-09 Havoc Pennington <hp@redhat.com>
1112 * bus/dispatch.c (check_get_connection_unix_process_id): adapt
1113 since sysdeps-unix.h stuff isn't included anymore
1115 * bus/bus.c (bus_context_new): use more abstract functions to
1116 change user, so they can be no-ops on Windows
1118 * dbus/dbus-credentials.c, dbus/dbus-credentials.h,
1119 dbus/dbus-credentials-util.c: new files containing a fully opaque
1120 DBusCredentials data type to replace the old not opaque one.
1122 * configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
1125 * dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
1126 up the uses of it in bus/*.c and factor out the parts of
1127 cookie auth that depend on it
1129 2007-06-07 Havoc Pennington <hp@redhat.com>
1131 * dbus/dbus-message.c: improve some docs related to reading values
1134 2007-06-02 Ralf Habacker <ralf.habacker@freenet.de>
1136 * cmake: added cygwin compile support
1138 2007-06-01 Ralf Habacker <ralf.habacker@freenet.de>
1140 * tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
1142 * cmake/dbus-launch.bat.cmake: removed obsolate file
1144 2007-05-31 Ralf Habacker <ralf.habacker@freenet.de>
1146 * bus/main.c (main): uses _dbus_get_config_file_name() to detect
1147 session.conf location on win32.
1149 * dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists):
1150 new prototyp, undefined interface after including windows.h because
1151 it makes trouble when a paramater is named interface.
1153 * dbus-sysdeps-win.c (_dbus_get_install_root,
1154 _dbus_get_config_file_name,_dbus_file_exists): new functions.
1156 2007-05-27 Ralf Habacker <ralf.habacker@freenet.de>
1158 * bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings
1159 as reported by Peter Kümmel.
1161 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1165 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1167 * Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
1168 We forgot to do this during the 1.0 release and it makes sense
1169 now as we get ready to release the first 1.1.0 development tarball
1171 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1173 * create directory test/data/valid-config-files/session.d so that
1176 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1178 * INSTALL: remove dependancies for bindings since they no longer
1181 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1183 * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file
1184 with empty function _dbus_server_listen_platform_specific().
1186 * dbus/dbus-server.c (listen_funcs): uses
1187 _dbus_server_listen_platform_specific on any platform.
1189 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1191 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting
1192 user info from a domain controller isn't an error, the computer
1193 may run in a non domain context.
1195 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1197 * dbus/dbus-sysdeps-win.c (_dbus_full_duplex_pipe): fixed assertation.
1199 2007-05-24 Simon McVittie <simon.mcvittie@collabora.co.uk>
1201 * bus/config-parser.c (test_service_dir_matches): fixed ordering for unix.
1203 * bus/config-parser.c (test_default_session_servicedirs): made allocation
1204 of _progs platform independent.
1206 2007-05-23 Havoc Pennington <hp@redhat.com>
1208 * bus/Makefile.am (install-data-hook): create session.d
1210 * bus/session.conf.in: add session.d for the session bus, so
1211 security policy can be extended
1213 2007-05-22 Ralf.Habacker <ralf.habacker@freenet.de>
1215 * cmake/CMakeLists.txt: fixed creating of TEST_..._BINARY to make
1216 bus-test able to find the binaries.
1218 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1220 * acinclude.m4, configure.in: In recent autotools, ${datadir} is
1221 defined in terms of ${datarootdir}, so EXPANDED_DATADIR needs to be
1222 expanded recursively. Rather than fixing configure.in to do this, I
1223 grabbed the AS_AC_EXPAND macro from autostars.sf.net, which seems to be
1226 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1228 * update-dbus-docs.sh: Assorted improvements:
1229 - Default user if $FDUSER is not set is the ssh default
1230 (set in ~/.ssh/config or based on the local username), not a
1232 - Temporary checkout directory is created securely (preventing symlink
1233 attacks), if mktemp(1) is available
1234 - Use make -C rather than cd && make && cd ..
1236 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1238 * HACKING: Point to correct mailing list
1240 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1242 * doc/dbus-specification.xml: explicitly specify that STRING cannot
1243 contain embedded NULs.
1245 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1247 * dbus/dbus-internal.c: fix inline problem on win32.
1249 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1251 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not reaching
1252 domain controller isn't an error, converted error message to verbose
1255 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1257 * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): disabled
1258 tests not running on wince.
1260 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1262 * dbus/dbus-internals.c (_dbus_verbose_init): win32 requires 'varname='
1263 to unset a environment variable.
1265 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1267 * dbus/dbus-sysdeps.c (_dbus_setenv): win32 requires 'varname='
1268 to unset a environment variable.
1270 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1272 * bus/policy.c (bus_policy_create_client_policy):
1273 win32 temporary fix until the userdb stuff is ported completly.
1275 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1277 * dbus/dbus-server.c (listen_funcs):
1278 _dbus_server_listen_platform_specific is empty on win32,
1279 limited to unix only.
1281 * dbus/dbus-server.c (valid_addresses): limit unix
1282 only addresses to unix.
1284 2007-05-18 Havoc Pennington <hp@redhat.com>
1286 * doc/dbus-specification.xml: add a GetAll to the Properties
1289 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1291 * bus\config-parser.c (test_default_session_servicedirs):
1294 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1296 * configure.in: define constant DBUS_UNIX.
1298 2007-05-14 Ralf Habacker <ralf.habacker@freenet.de>
1300 * dbus/dbus-sysdeps-win.c (_dbus_printf_string_upper_bound):
1301 compile fix for MS Platform SDK 6
1302 patch from Michael Luschas <mluschas@gmail.com>
1304 2007-05-10 John (J5) Palmieri <johnp@redhat.com>
1306 * dbus-1.pc.in: add daemondir to pc file
1307 patch from Brian Cameron <brian.cameron at sun.com>
1309 2007-05-04 Simon McVittie <simon.mcvittie@collabora.co.uk>
1311 * doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local
1312 interface and the corresponding /o/fd/DBus/Local object path;
1313 describe them as reserved and forbid using them in a sent message,
1314 mentioning that in the reference implementation this will cause the
1315 connection to be dropped. Patch approved by Havoc.
1317 2007-04-28 Ralf Habacker <ralf.habacker@freenet.de>
1319 * cmake/: don't install test applications and service files,
1320 moved CMAKE_DEBUG_POSTFIX to top level CMakeLists.txt
1322 2007-04-27 Havoc Pennington <hp@redhat.com>
1324 * dbus/dbus-sysdeps-unix.c (_dbus_open_socket): fix #10781 from
1325 Tobias Nygren, checking pointer to fd vs. 0 rather than checking
1328 2007-04-26 Ralf Habacker <ralf.habacker@freenet.de>
1330 * cmake/: added debug postfixes to debug exe's for
1332 * dbus\dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1333 print error code in case no string message is available.
1335 2007-04-06 Simon McVittie <simon.mcvittie@collabora.co.uk>
1337 * dbus/dbus-message-util.c, dbus/dbus-message.c,
1338 dbus/dbus-message.h: Add API to convert a DBusMessage to/from a
1339 byte array. Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>,
1340 approved by Havoc Pennington.
1342 2007-04-03 Timo Hoenig <thoenig@suse.de>
1344 * dbus/dbus-address.c (dbus_parse_address): Do not accept zero-
1346 * dbus/dbus-address.c (_dbus_address_test): Add test for zero-
1349 2007-03-25 Ralf.Habacker <ralf.habacker@freenet.de>
1351 * cmake/dbus/CMakeLists.txt: debug postfix also for mingw.
1353 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1355 * cmake/modules/FindExpat.cmake: fix package detection on win32.
1357 * README.win: update install instructions.
1359 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1361 * dbus/dbus-sysdeps.h (_dbus_split_paths_and_append):
1363 (_DBUS_PATH_SEPARATOR): new macro.
1365 * dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged
1366 from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c.
1368 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1370 * bus/config-parser.c, bus/policy.c,
1371 bus/policy.h, bus/dbus-daemon.1.in,
1372 bus/session.conf.in: added eavesdrop support
1373 for replies - patch by olli.salli at collabora.co.uk
1374 approved by Havoc Pennington.
1376 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1378 * dbus\dbus-sysdeps-win-thread.c: renamed to
1379 dbus-sysdeps-thread-win.c, it is a platform depending file
1380 similar to dbus-sysdeps-pthread.c.
1382 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1384 * cmake\doc\CMakeLists.txt: added prelimary xml doc
1385 support, needs cmake Find script.
1387 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1389 * cmake: add doxygen support
1391 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1393 * cmake/config.h.cmake: WINCE fixes, defined DBUS_UNIX.
1395 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1397 * dbus/dbus-sysdeps-util-win.c (dbus_become_daemon):
1400 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1402 * dbus-win.patch: removed obsolate patches.
1404 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1406 * dbus/dbus-sysdeps-win.c: added zero byte sending
1407 and receiving after connection start up
1409 2007-03-11 Havoc Pennington <hp@redhat.com>
1411 * tools/dbus-launch.c (do_close_stderr): fix C89 problem and
1414 * Mostly fix the DBusPipe mess.
1415 - put line break after function return types
1416 - put space before parens
1417 - do not pass structs around by value
1418 - don't use dbus_strerror after calling supposedly cross-platform
1420 - don't name pipe variables "fd"
1421 - abstract special fd numbers like -1 and 1
1423 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1425 * dbus/dbus-sysdeps-win.h, dbus/dbus-sysdeps-win.c,
1426 dbus/dbus-sysdeps-util-win.c: renamed functions
1427 _dbus_xxx_file() to _dbus_file_xxx() to reflect
1428 struct name DBusFile.
1430 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1432 * dbus/dbus-sysdeps-util-unix.c (_dbus_become_daemon):
1433 fix _dbus_pid_fd check.
1435 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1437 * tools/dbus-print-message.c (print_message):
1438 added printing of the reply serial to method returns and
1439 errors, so you can actually figure out the message/reply
1440 pairs - patch by olli.salli at collabora.co.uk.
1442 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1444 * dbus-win.patch: removed committed patches.
1446 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1448 * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c,
1449 dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c,
1450 dbus/dbus-sysdeps-util-win.c, dbus/dbus-sysdeps-win.c,
1451 dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx,
1452 completed _dbus_pipe support.
1454 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1456 * dbus/dbus-sysdeps.h (_dbus_listen_tcp_socket):
1457 changed type or port to pointer, because the port is given back.
1459 * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
1460 implemented returning tcp port. Skipping port parameter
1461 and non integer port values in config <listen> statement
1464 * dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c
1465 (_dbus_listen_tcp_socket): return the real used tcp port.
1467 * bus/dbus-daemon.1.in: added <listen> tcp examples
1469 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1471 * cmake/config.h.cmake: win32 msvc bug fix
1473 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1475 * cmake/config.h.cmake: fixed DBUS_WINxx defines,
1476 using _WINCE does not work.
1478 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1480 * dbus-win.patch: removed _dbus_write_pipe() patch, it is now
1483 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1485 * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h:
1486 rename pipe related write() function calls to _dbus_write_pipe().
1488 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1490 * dbus-win.patch: added bus/config-loader-libexpat.c patch,
1491 uses DBUS_WIN for alls win32 related #ifdefs,
1494 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1496 * dbus-win.patch: updated patch for bus/dispatch.c.
1498 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1500 * dbus-win.patch: dbus-connection.c (dbus_connection_get_unix_user,
1501 dbus_connection_get_unix_process_id): Let return them valid user id's,
1502 otherwise bus-test fails. How to replace on win32 ?.
1504 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir):
1507 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1509 * dbus/dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1510 use dbus friendly error name.
1511 (fill_win_user_info_homedir): print user name in error case too.
1513 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1515 * cmake/ConfigureChecks.cmake: fixed socketpair check
1517 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1519 * bus/dispatch.c: disabled segfault test on win32 for now
1521 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1523 * configure.in, cmake/ConfigureChecks.cmake: added check
1525 * test/test-segfault.c: only include setrlimit stuff only
1528 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1530 * test/test-segfault.c: unix compile fix.
1531 * dbus-win.patch: removed obsolate patches.
1533 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1535 * bus/activation.c: removed obsolate include header.
1536 * test/test-segfault.c: win32 compile fix, rlimit
1537 isn't available on win32.
1538 * dbus-win.patch: removed some more patches, they
1539 are applied or obsolate
1541 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1543 * bus-win.patch: fixes unix listen problems, dbus-test
1546 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1548 * cmake/dbus/CMakeLists.txt,cmake/bus/CMakeLists.txt,
1549 cmake/CMakeLists.txt: win32 compile fix
1551 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1553 * dbus-win.patch, README.win: added available win32
1554 patches from windbus project (http://sf.net/projects/windbus)
1556 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1558 * bus/activation.c: (bus_activation_activate_service):
1559 fixed call to _dbus_spawn_async_with_babysitter().
1561 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1563 * dbus/dbus-spawn.c,dbus/dbus-spawn.h (_dbus_spawn_async_with_babysitter):
1564 added environment pointer as function parameter, used on win32.
1566 * test/spawn-test.c: fixed call to above mentioned function.
1568 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1570 * configure.in,test/test-sleep-forever.c,test/test-names.c:
1571 added configure check for unistd.h.
1573 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1575 * test/Makefile.am: fixed test data copy problem in
1576 out of source build, when sources came from svn or cvs.
1578 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1580 * dbus/*-win.*,bus/*-win.*: added win32 platform related
1581 files. These files are only added to the cmake build system.
1582 The missing dbus-win.patch file will be added later.
1584 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1586 * cmake: new directory, contains cmake build support.
1587 See http://www.cmake.org for more informations.
1588 Currently only unix will be buildable because some
1589 win32 required files are still missing.
1591 2007-03-03 Thiago Macieira <thiago@kde.org>
1593 * dbus/dbus-sysdeps-unix.c: capture the dbus-launch stderr
1594 output and add it to the DBusError message we return.
1596 * tools/dbus-launch.1:
1597 * tools/dbus-launch.c: Add option --close-stderr to, well,
1598 close stderr before starting dbus-daemon.
1600 2007-01-31 Havoc Pennington <hp@redhat.com>
1602 * bus/dbus-daemon.1.in: write a section in the man page on running
1603 a test daemon for debugging purposes
1605 2007-01-26 Havoc Pennington <hp@redhat.com>
1607 * bus/session.conf.in: override all the default limits with much
1608 higher limits on the session bus, there is no reason the session
1609 bus should have low limits
1611 * bus/config-parser.c (bus_config_parser_new): increase default
1612 limits so they are less likely to be hit; in particular the max
1613 replies per connection was way too low
1615 2006-01-25 Simon McVittie <simon.mcvittie@collabora.co.uk>
1617 * doc/dbus-tutorial.xml: Replace Python section of tutorial with
1618 a pointer to the tutorial maintained as part of dbus-python
1620 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1622 * dbus/dbus-sysdeps-unix.c: unix compile fix, moved
1623 atomic_exchange_and_add() from dbus/dbus-sysdeps.c
1624 to here, it's used by _dbus_atomic_inc() and _dbus_atomic_dec().
1626 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1628 * tools/dbus-monitor.c: gettimeofday() is not available
1629 on windows so we have to provide our own. It's taken from
1630 lgpl'd kdewin32 package. - Patches from Christian Ehrlicher
1632 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1634 * dbus/dbus-sysdeps-unix.c: moved _dbus_atomic_inc/dec()
1635 from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec()
1636 is in dbus-sysdeps-win.c (not in this patch).
1638 * dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit
1639 with InterlockedInc/Decrement.
1640 - Patches from Christian Ehrlicher
1642 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1644 * tools/dbus-send.c, tools/dbus-monitor.c: win32 compile fix.
1646 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1648 * dbus/dbus-marshal-recursive.c (type DBusTypeReaderClass):
1649 fix mispaced const statement. - Patch from Peter Kümmel
1651 2006-12-19 Ray Strode <rstrode@redhat.com>
1653 * bus/bus.c (process_config_every_time):
1654 don't overwrite existing bus context activation object
1655 until after we've checked that the new activation is
1659 (signal_handler), (handle_reload_watch):
1660 don't call exit() on failure, instead make do and keep
1662 (close_reload_pipe): new function to turn off
1663 hangup-causes-config-reload behavior if an unexpected
1666 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1668 * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
1669 correctness fix. - Patch from Christian Ehrlicher
1671 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1673 * dbus/dbus-internals.h: msvc also knows about __FUNCTION__,
1674 we should also use it. - Patch from Christian Ehrlicher
1676 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1678 * dbus-sysdeps-util.c: added win32 related tests
1680 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1682 * dbus/dbus-string.c (_dbus_string_pop_line),
1683 bus/desktop-file.c (parse_section_start,
1684 parse_comment_or_blank,parse_key_value,): uses
1685 _dbus_string_find_eol() to support platform independent eol style.
1687 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1689 * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function.
1690 * dbus/dbus-string-util.c (_dbus_string_test): added testcases for
1691 _dbus_string_find_eol().
1692 Approved by: Havoc Pennington.
1694 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1696 * configure.in: Added switch to disable user_database caching.
1698 * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
1699 be able disable user_dabase caching.
1701 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1703 * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext
1704 struct. It is unnecessary we have a global one already. Also remove
1705 bus_context_get_user_database function, it is no longer needed.
1706 Flush the global database on reload.
1708 * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups
1709 with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
1711 * dbus/dbus-userdb.c, dbus/dbus-userdb.h:
1712 Add _dbus_user_database_flush_system.
1713 Make more functions DBUS_USERDB_INCLUDES_PRIVATE.
1714 Small unrelated change in _dbus_is_a_number: change
1715 _dbus_string_parse_int to _dbus_string_parse_uint.
1717 * bus/connection.c: Change call to _dbus_user_database_get_groups to
1718 _dbus_groups_from_uid.
1720 * bus/policy.c, bus/policy.h: Change call to
1721 _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove
1722 DBusUserDatabase from bus_policy_allow_user prototype, it no longer
1725 2006-12-12 John (J5) Palmieri <johnp@redhat.com>
1727 * bus/signal.c: Fix match_rule_equal errata
1728 (CVE-2006-6107 - Patch from Kimmo Hämäläinen
1729 <kimmo.hamalainen@nokia.com>)
1731 2006-11-19 Thiago Macieira <thiago@kde.org>
1733 * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
1734 _dbus_pthread_condvar_wait,
1735 _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
1736 pthread_self() after coming back from a conditional variable
1737 wait as well as in one codepath where it was forgotten.
1738 Approved by: Havoc Pennington.
1740 2006-11-17 Havoc Pennington <hp@redhat.com>
1742 * update-dbus-docs.sh: allow setting fd.org username via env
1743 variable. Make it run autogen with --enable-xml-docs=yes
1744 --enable-doxygen-docs=yes so configure will fail if the required
1747 2006-11-17 Havoc Pennington <hp@redhat.com>
1749 * doc/dbus-faq.xml: minor FAQ tweaks
1751 2006-11-14 Havoc Pennington <hp@redhat.com>
1753 * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
1754 dbus_get_local_machine_id() to its own file, no substantive
1755 changes. There are a couple other things we might want to add that
1756 are "misc" so moving out of dbus-connection.[hc] which is big
1759 2006-11-14 Havoc Pennington <hp@redhat.com>
1761 * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
1762 UUID had the timestamp last, but the implementation had it first;
1763 move it to last since I think it's a tiny bit nicer (easier to
1764 compare at a glance, faster to sort, less code), and will not
1765 cause any practical compatibility problems. Also, always convert
1766 the timestamp to big endian.
1768 * doc/dbus-specification.xml: Clean up the docs on the UUID.
1770 * tools/dbus-uuidgen.1: more prominently say it is not suitable
1771 as a replacement for regular uuidgen/RFC4122.
1773 2006-11-14 John (J5) Palmieri <johnp@redhat.com>
1775 * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
1776 the correct value so we don't assert when initalizing recursive threads
1778 * test/name-test/test-thread-init.c: call dbus_threads_init_default
1779 instead of _dbus_threads_init_debug since it is more of a real world