1 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
3 * bus/bus.c (bus_context_check_security_policy): rewrite selinux error
4 handling to not abort due to a NULL read and to set the error only if
5 it is not already set (Based off of FDO Bug #12430)
7 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
9 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
11 * dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
12 _dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
14 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
16 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
18 * dbus/dbus-spawn.c (babysit, babysitter_iteration): add error
19 handling when polling (FDO Bug #12954)
21 2008-01-15 John (J5) Palmieri <johnp@redhat.com>
23 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
25 * bus/config-parser.c (locate_attributes): remove dead code which
26 always evaluated to TRUE
28 * dbus/dbus-shell.c (_dbus_shell_quote): remove unused code
30 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
32 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
34 * bus/connection.c (bus_connection_complete): plug a possible
35 BusClientPolicy leak (FDO Bug #13242)
37 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
39 * patch by Frederic Crozat <fcrozat at mandriva dot com> (FDO Bz#
44 * bus/Makefile.am: add inotify module to the build
46 * bus/dir-watch-inotify.c: inotify module based off the dnotify and
49 * configure.in: add checks and switch for inotify
50 also add a printout at the end of configure if inotify and kqueue
51 support is being built in (dnotify already had this)
53 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
55 * patch by Frederic Crozat <fcrozat at mandriva dot com>
57 * bus/dir-watch-dnotify.c (bus_watch_directory): watch for file
60 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
62 * patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
64 * dbus/dbus-transport-socket.c(do_reading): return message
65 loader buffer in case of OOM (FDO Bug#12666)
67 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
69 * configure.in: add warning to output when libxml is selected since
70 we don't have a libxml maintainer and expat works perfectly fine
71 for what we need an xml parser for
73 2008-01-14 John (J5) Palmieri <johnp@redhat.com>
75 * Patch by Andrea Luzzardi <scox at sig11 dot org>: creates a
76 _dbus_geteuid function to fix EXTERNAL authentication in setuid
79 * dbus/dbus-sysdeps-unix.c (_dbus_geteuid): used to get the effective
80 uid of the running program
81 (_dbus_credentials_add_from_current_process): use geteuid instead of
83 (_dbus_append_user_from_current_process): use geteuid instead of
86 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user): use
87 geteuid instead of getuid
88 (_dbus_unix_user_is_at_console): use geteuid instead of getuid
90 * dbus/dbus-sysdeps-win.c (_dbus_geteuid): add a windows equivilant
91 that returns DBUS_UID_UNSET
93 2007-12-18 Havoc Pennington <hp@redhat.com>
95 * dbus/dbus-connection.c (_dbus_connection_block_pending_call):
96 fix location of curly braces
98 2007-11-23 Sjoerd Simons <sjoerd@luon.net>
100 * tools/dbus-launch.c: let both a normal dbus-launch and an
101 autolaunched bus save their parameters in X11 if possible. This makes
102 the autolaunch and non-autolaunch behaviour more similar. With the
103 exception that on a normal launch there will always be a new session
104 bus and not being able to save parameters is not fatal. This also
105 enables to launch programs directly with autolaunch (not very usefull
108 2007-10-31 Havoc Pennington <hp@redhat.com>
110 * bus/selinux.c (log_audit_callback): rewrite to use
111 _dbus_string_copy_to_buffer_with_nul()
113 * dbus/dbus-string.c (_dbus_string_copy_to_buffer): change to NOT
114 nul-terminate the buffer; fail an assertion if there is not enough
115 space in the target buffer. This fixes two bugs where
116 copy_to_buffer was used to copy the binary bytes in a UUID, where
117 nul termination did not make sense. Bug reported by David Castelow.
118 (_dbus_string_copy_to_buffer_with_nul): new function that always
119 nul-terminates the buffer, and fails an assertion if there is not
120 enough space in the buffer.
122 2007-10-23 Havoc Pennington <hp@redhat.com>
124 * bus/bus.c (bus_context_new): use the new name here
126 * bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
127 to avoid possible libc conflict, and declare it in .h file to
130 2007-10-19 Havoc Pennington <hp@redhat.com>
132 * bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX
134 2007-10-19 Havoc Pennington <hp@redhat.com>
136 * bus/bus.c (bus_context_new): put the audit_init() in here
137 instead, which I believe ends up being the same as where it was
138 before, though I'm not sure I understand why it goes here.
140 * dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
141 remove audit_init() from here, this file can't depend on code in
144 2007-10-16 Simon McVittie <simon.mcvittie@collabora.co.uk>
146 * configure.in: *Actually* fix detection of i486 atomic ops -
147 my previous attempt at a fix would always enable them due to wrong
148 quoting. Patch from Colin Walters <walters@verbum.org>
150 2007-10-11 Simon McVittie <simon.mcvittie@collabora.co.uk>
152 * configure.in: enable Autoconf's AC_C_INLINE to avoid compilation
153 failure with gcc -ansi
154 * dbus/dbus-macros.h, dbus/dbus-arch-deps.h.in: Use new macro
155 _DBUS_GNUC_EXTENSION (the same as G_GNUC_EXTENSION) to avoid -ansi
156 warnings about use of "long long".
157 * dbus/dbus-server-socket.c: remove unused variable when assertions
159 * dbus/dbus-marshal-validate.c: avoid empty statements by removing
161 * tools/dbus-launch.c: convert C++-style comment to C-style, add {}
163 * .gitignore: ignore vi swapfiles
164 * dbus/dbus-errors.h, dbus/dbus-errors.c: Add DBUS_ERROR_INIT macro,
165 equivalent to calling dbus_error_init() on an uninitialized DBusError
166 * dbus/dbus-address.c, dbus/dbus-auth-script.c, dbus/dbus-auth-util.c,
167 dbus/dbus-connection.c, dbus/dbus-internals.c, dbus/dbus-keyring.c,
168 dbus/dbus-message-util.c, dbus/dbus-server.c, dbus/dbus-sha.c,
169 dbus/dbus-spawn-win.c, dbus/dbus-spawn.c,
170 dbus/dbus-sysdeps-util-win.c, dbus/dbus-transport-socket.c,
171 dbus/dbus-transport.c, dbus/dbus-userdb.c: use that macro instead of
172 calling dbus_error_init() where it's clearly equivalent
173 * configure.in, dbus/dbus-sysdeps.h, dbus/dbus-sysdeps-unix.c: Fix
174 detection of i486 atomic ops. Previously, the attempts to determine
175 support at compile-time on Darwin were causing the i486 atomic ops to
176 be used on *all* i386 or x86-64 GCC builds (AH_VERBATIM can't be
177 conditionalized like we were trying to).
179 2007-10-10 Simon McVittie <simon.mcvittie@collabora.co.uk>
181 * dbus/dbus-errors.c, dbus/dbus-protocol.h: Add new error
182 org.freedesktop.DBus.Error.ObjectPathInUse
183 * dbus/dbus-object-tree.h, dbus/dbus-object-tree.c,
184 dbus/dbus-connection.c, dbus/dbus-connection.h: add new functions
185 dbus_connection_try_register_object_path and
186 dbus_connection_try_register_fallback, which raise ObjectPathInUse
187 rather than asserting, to make object path registration less painful
189 * .gitignore: add various things that weren't in .cvsignore because
190 CVS implicitly ignored them; generally bring up to date
192 2007-10-09 John (J5) Palmieri <johnp@redhat.com>
194 * tools/run-with-tmp-session-bus.sh: Fix env exports for better
196 * tools/dbus-send.1: Document syntax for container types in dbus-send
197 man file (#9553) - patch from Jack Spaar <jspaar at
198 users.sourceforge.net>
200 [Both OK for MIT/X11 relicensing -smcv]
202 2007-10-09 Simon McVittie <simon.mcvittie@collabora.co.uk>
204 * doc/dbus-specification.xml: Specifically forbid empty structs (#7969)
205 * doc/dbus-specification.xml: Patches from Kristoffer Lundén to clarify
206 description of DBUS_COOKIE_SHA1 (#10184) and allowable contents of a
207 variant (#10185, amended as per Havoc's comments)
209 [All of the above are OK for MIT/X11 licensing]
211 2007-10-03 John (J5) Palmieri <johnp@redhat.com>
213 * dbus/dbus-internals.h: fd.o bug #11678 Don't error out if compiler
214 does not support vararg macros. _dbus_verbose is the only function
215 that does this so make it a noop if vararg macros are not supported
216 * bus/selinux.c, dbus/dbus-sysdeps-util-unix.c: fd.o bug #12429
217 Reverse check to setpcap and only init audit if we were root
218 (patch by Dan Walsh <dwalsh@redhat.com>,
219 https://bugs.freedesktop.org/show_bug.cgi?id=12429). Reverse
220 we_were_root check to setpcap if we were root. Also only init audit
221 if we were root. So error dbus message will not show up when policy
222 reload happens. dbus -session will no longer try to send audit
223 message, only system will.
224 * configure.in: fd.o bug #11872 improve linker test for --gc-sections.
225 Patch by Tim Mooney <enchanter at users.sourceforge.net>
226 * configure.in, dbus/dbus-sysdeps.c: fd.o bug #11872 fix clearenv for
227 systems that do not have it. Patch from Brian Cameron <brian.cameron
229 * tools/dbus-launch.c: fd.o bug #12547 remove superfluous if.
230 Also convert tabs to spaces
231 * configure.in, bus/Makefile.am, dbus/Makefile.am: Correctly implement
232 -fPIC and -fPIE. For security reasons we want possition independent
233 code for libraries and possition independent executable for
234 executables. Before we were just enabling -fPIC. Now we correctly
235 enable -fPIC and -PIE for libdbus and the bus respectively. Proper
236 LD_FLAGS are set for each also.
238 2007-09-20 Ryan Lortie <desrt@desrt.ca>
240 Add argument path matching support. Bug #11066.
242 * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
243 bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
244 match_rule_matches): Add support for parsing and matching on
245 arg0path='/some/path' type rules.
247 * dbus/signals.h (bus_match_rule_set_arg): change to take const
248 DBusString instead of const char * for the string to match against.
250 * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
251 documentation about the path matching.
253 * doc/dbus-specification.xml: add a more detailed description of the
256 2007-09-19 Ryan Lortie <desrt@desrt.ca>
258 Add support for compacting DBusStrings to release wasted memory.
260 * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
261 _dbus_string_lock): new compact function to free up allocated memory
262 that is no longer used.
264 * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
265 message loader buffer.
267 * dbus/dbus-transport-socket.c (do_reading, do_writing): call
268 _dbus_string_compact on the incoming/outgoing "encoded" buffers.
270 * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
273 2007-09-13 Ryan Lortie <desrt@desrt.ca>
275 * HACKING: add more explicit git branch/tag instructions
277 2007-09-13 Ryan Lortie <desrt@desrt.ca>
279 migrate from cvs to git (cvs2svn -> git-svnimport).
281 * HACKING: update release/branch/tag instructions
282 * */.cvsignore: rename to .gitignore
284 also, clean up tags and branch names to conform to HACKING
286 2007-08-17 William Jon McCann <mccann@jhu.edu>
288 * update-dbus-docs.sh: upload DTD to server
290 2007-08-17 Havoc Pennington <hp@redhat.com>
292 * tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
293 Lorenz to use long not int with XChangeProperty format 32
295 * dbus/dbus-sysdeps-util-unix.c
296 (_dbus_write_pid_to_file_and_pipe): factor this out, and use the
297 same code in _dbus_become_daemon (where the parent writes the pid
298 file and to the pid pipe) and in bus_context_new (where the daemon
299 writes its own pid file and to its own pid pipe)
301 * bus/bus.c (bus_context_new): close the pid pipe after we print
302 to it. Also, don't write the pid to the pipe twice when we fork,
303 someone reported this bug a long time ago.
305 2007-08-03 Havoc Pennington <hp@redhat.com>
307 * configure.in: add major/minor/micro version number AC_SUBST
309 * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
310 DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
311 DBUS_VERSION): collection of macros to get version of library we
312 are compiled against.
314 * dbus/dbus-misc.c (dbus_get_version): new function, to get
315 version of library we are linked against at runtime.
317 2007-07-30 Havoc Pennington <hp@redhat.com>
319 * bus/activation-helper.c (check_bus_name): don't use
320 _dbus_check_valid_bus_name() which is only around with
321 --enable-checks, instead use _dbus_validate_bus_name().
322 Bug #11766 from Diego <diego@pemas.net>
324 2007-07-27 Havoc Pennington <hp@redhat.com>
326 * configure.in: post-release version bump
328 2007-07-27 Havoc Pennington <hp@redhat.com>
332 2007-07-26 Havoc Pennington <hp@redhat.com>
334 * bus/config-parser-trivial.c (check_return_values): disable a
335 test that hardcoded the bus user's name
337 * bus/dispatch.c (bus_dispatch_test_conf): remove the "if
338 (!use_launcher)" around the tests, they were only failing because
339 we didn't pass through all the expected errors from the helper.
341 * bus/activation-exit-codes.h
342 (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
343 (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
344 failure code, so if a third party launch helper were written it
345 could just always return 1 on failure.
347 2007-07-24 Daniel P. Berrange <dan@berrange.com>
349 * bus/dbus-daemon.1: Add docs on new syntax options for the bus
352 * dbus/dbus-address.c: Allow * in addresses (for binding to all
355 * dbus/dbus-sysdeps.h:
356 * dbus/dbus-sysdeps-unix.c: Re-write to use getaddrinfo instead
357 of gethostbyname to enable protocol independant name lookup,
360 * dbus/dbus-server-socket.h:
361 * dbus/dbus-server-socket.c: Add support for 'family' in the
362 address string to specify ipv4 vs ipv6. Use a port string to
363 allow for service resolution. Allow for binding to multiple
364 sockets at once in case of dual IPv4 & IPv6 stacks.
366 * dbus/dbus-server-unix.c: Pass in an array of file descriptors
367 instead of a single one.
369 * dbus/dbus-transport-socket.h:
370 * dbus/dbus-transport-socket.c: Add support for 'family' in the
371 address string to specify ipv4 vs ipv6. Use a port string to
372 allow for service resolution.
374 2007-07-24 Havoc Pennington <hp@redhat.com>
376 * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
378 * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
379 TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
380 test shell_fail_service_auto_start when use_launcher==TRUE
382 * bus/activation-helper-bin.c (convert_error_to_exit_code): pass
383 through the INVALID_ARGS error so the test suite works
385 * bus/activation.c (handle_activation_exit_error): return
386 DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
388 * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
389 return only the exit code of the child, not the entire thingy from
390 waitpid(), and make the return value indicate whether the child
391 exited normally (with a status code)
393 * bus/bus.c (process_config_first_time_only): _dbus_strdup works
394 on NULL so no need to check
395 (process_config_every_time): move servicehelper init here, so we
396 reload it on HUP or config file change
398 * bus/Makefile.am (install-data-hook): remove comment because
399 Emacs make mode seems to be grumpy about it
401 2007-07-24 Richard Hughes <richard@hughsie.com>
404 * bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
405 (test_post_hook), (main):
406 Add back the test-system.c file - not sure now this got ignored in the
409 2007-07-24 Richard Hughes <richard@hughsie.com>
412 Use ustar to generate the tarball; this fixes the make distcheck
413 problem when the data files do not fit in the archive:
414 tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
415 TestSuiteShellEchoServiceFail.service.in: file name is too
416 long (max 99); not dumped
418 We have to have the 'long' names as the service helper matches by
419 filename rather than by the name in the service file.
421 2007-07-24 Richard Hughes <richard@hughsie.com>
425 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
426 uiteNoExec.service.in:
427 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
428 uiteNoService.service.in:
429 * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
430 uiteNoUser.service.in:
431 * test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
432 * test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
433 * test/data/valid-config-files/debug-allow-all-sha1.conf.in:
434 * test/data/valid-config-files/debug-allow-all.conf.in:
435 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
436 teEchoService.service.in:
437 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
438 teSegfaultService.service.in:
439 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
440 teShellEchoServiceFail.service.in:
441 * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
442 teShellEchoServiceSuccess.service.in:
443 * test/data/valid-service-files/debug-echo.service.in:
444 * test/data/valid-service-files/debug-segfault.service.in:
445 * test/data/valid-service-files/debug-shell-echo-fail.service.in:
446 * test/data/valid-service-files/debug-shell-echo-success.service.in:
447 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
449 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
450 ultService.service.in:
451 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
452 EchoServiceFail.service.in:
453 * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
454 EchoServiceSuccess.service.in:
455 Add the data files needed by the system activation unit checks.
457 2007-07-24 Richard Hughes <richard@hughsie.com>
459 * bus/dispatch.c: (check_segfault_service_no_auto_start),
460 (check_launch_service_file_missing),
461 (check_launch_service_user_missing),
462 (check_launch_service_exec_missing),
463 (check_launch_service_service_missing), (bus_dispatch_test_conf),
464 (bus_dispatch_test_conf_fail), (bus_dispatch_test):
465 Add unit tests for system activation. Most are copied from the
466 session activation tests, but some didn't apply when using a laucher.
468 2007-07-24 Richard Hughes <richard@hughsie.com>
470 * bus/activation.c: (bus_activation_activate_service):
471 If the bus uses a service-laucher, then use the setuid laucher.
473 2007-07-24 Richard Hughes <richard@hughsie.com>
476 Add the needed library exports for the new laucher.
478 2007-07-24 Richard Hughes <richard@hughsie.com>
481 Check for -Wl,--gc-sections so we can really reduce the size of the
484 2007-07-24 Richard Hughes <richard@hughsie.com>
486 * bus/activation.c: (handle_activation_exit_error),
487 (babysitter_watch_callback):
488 Map the child exit status integer to a proper dbus error.
490 2007-07-24 Richard Hughes <richard@hughsie.com>
492 * bus/bus.c: (process_config_first_time_only),
493 (process_config_every_time), (bus_context_unref),
494 (bus_context_get_servicehelper):
496 Add the concept of a service-helper and allow it's value to be read.
498 2007-07-24 Richard Hughes <richard@hughsie.com>
500 * bus/activation.c: (bus_activation_entry_unref),
501 (update_desktop_file_entry):
502 Add the concept of, and read the value of user from the desktop file.
503 The user string is not required unless we are using system activation.
505 2007-07-24 Richard Hughes <richard@hughsie.com>
508 * bus/desktop-file.h:
509 Move the defines into the header file, as we use these in the lauch
510 helper as well as the desktop file parsing.
512 2007-07-24 Richard Hughes <richard@hughsie.com>
515 Add the autogenerated binary files.
517 2007-07-24 Richard Hughes <richard@hughsie.com>
521 Add the build glue for the lauch helper, and also add the launch-helper
522 OOM checks into make check. I've probably broken the build, give me 2.
524 2007-07-24 Richard Hughes <richard@hughsie.com>
526 * bus/test-launch-helper.c: (die), (check_memleaks),
527 (test_post_hook), (bus_activation_helper_oom_test), (main):
528 Add a test wrapper to allow OOM checks on the launch helper.
530 2007-07-24 Richard Hughes <richard@hughsie.com>
532 * bus/activation-helper-bin.c: (convert_error_to_exit_code),
534 * bus/activation-helper.c: (desktop_file_for_name),
535 (clear_environment), (check_permissions), (check_service_name),
536 (get_parameters_for_service), (switch_user),
537 (exec_for_correct_user), (check_bus_name), (get_correct_parser),
538 (launch_bus_name), (check_dbus_user), (run_launch_helper):
539 * bus/activation-helper.h:
540 Add the initial launch-helper. This is split into a main section and a
541 binary loader that allows us to lauch the main section in another test
542 harness to do stuff like OOM testing. No build glue yet.
544 2007-07-24 Richard Hughes <richard@hughsie.com>
547 * bus/config-parser.c: (bus_config_parser_unref),
548 (start_busconfig_child), (bus_config_parser_end_element),
549 (servicehelper_path), (bus_config_parser_content),
550 (bus_config_parser_finished),
551 (bus_config_parser_get_servicehelper),
552 (test_default_session_servicedirs),
553 (test_default_system_servicedirs), (bus_config_parser_test):
554 * bus/config-parser.h:
555 Make the config-parser code use the common config code.
556 Also add the session and systemdirs stuff, and make the config parser
557 aware of the servicehelper field.
559 2007-07-24 Richard Hughes <richard@hughsie.com>
561 * bus/system.conf.in:
562 Add new servicehelper fields to the default system.conf file.
564 2007-07-24 Richard Hughes <richard@hughsie.com>
566 * bus/config-parser-trivial.c: (service_dirs_find_dir),
567 (service_dirs_append_link_unique_or_free), (bus_config_parser_new),
568 (bus_config_parser_unref), (bus_config_parser_start_element),
569 (bus_config_parser_end_element), (bus_config_parser_content),
570 (bus_config_parser_finished), (bus_config_parser_get_user),
571 (bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
572 (check_return_values), (do_load), (check_loader_oom_func),
573 (process_test_valid_subdir), (make_full_path), (check_file_valid),
574 (bus_config_parser_trivial_test):
575 * bus/config-parser-trivial.h:
576 Add a security sensitive stripped down config parser for the setuid
577 launcher. This file only reads what it needs, and doesn't try to do
578 anything remotely clever like including external files.
579 It is not intended to validate the config file; it is expected that
580 config-parser will do that before the setuid program tries to read it.
582 2007-07-24 Richard Hughes <richard@hughsie.com>
584 * bus/config-parser-common.c:
585 (bus_config_parser_element_name_to_type),
586 (bus_config_parser_element_type_to_name):
587 * bus/config-parser-common.h:
588 We don't want to run the whole config parser with all it's deps in the
589 setuid program. We need to implement a stripped down config parser just
590 for the launcher, and to do so I need some common functions and
591 defines; add them here.
593 2007-07-24 Richard Hughes <richard@hughsie.com>
595 * dbus/dbus-sysdeps-unix.c:
596 (_dbus_get_standard_system_servicedirs):
597 * dbus/dbus-sysdeps-win.c:
598 Provide a way to get the standard system servicedirs, just like we do
599 for the session service dirs. These should be seporate, as there may
600 be a security issue starting up some session stuff as root.
601 The use-case for the same binary starting up per-system _and_
602 per-session is also not valid.
604 2007-07-24 Richard Hughes <richard@hughsie.com>
606 * bus/dbus-daemon.1.in:
607 Add standard_system_servicedirs and servicehelper into the man file
608 and explain what each does.
610 2007-07-24 Richard Hughes <richard@hughsie.com>
613 Add servicehelper into the dtd, it will soon be a valid part of the
616 2007-07-24 Richard Hughes <richard@hughsie.com>
618 * dbus/dbus-spawn.c: (read_data),
619 (_dbus_babysitter_get_child_exit_status):
621 Add a function so we can get access to the exit status of the launch
623 By providing the return code and not the error we can leave the
624 'what does this mean?' to the bus launch code and not include it in the
627 2007-07-24 Richard Hughes <richard@hughsie.com>
629 * bus/activation-exit-codes.h:
630 Add defines which specify the output codes of the launch helper.
631 We have to use exit codes as this is the only way we can return failure
632 type without going grotty things like redirecting possibly-nonsecure
633 stderr into the error.
635 2007-07-24 Richard Hughes <richard@hughsie.com>
637 * dbus/dbus-protocol.h:
638 Add new error names needed for the launch helper.
640 2007-07-24 Richard Hughes <richard@hughsie.com>
642 * dbus/dbus-sysdeps.c: (_dbus_clearenv):
643 * dbus/dbus-sysdeps.h:
644 Add a wrapper for clearenv.
646 2007-07-24 Richard Hughes <richard@hughsie.com>
648 * doc/system-activation.txt:
649 Add design document for the system activation parts. I'll shortly be
650 committing many patches that add system activation using a setuid
651 launcher into CVS, so expect things to be broken for a few hours.
653 2007-07-19 Ralf Habacker <ralf.habacker@freenet.de>
655 * cmake/modules/FindKDEWIN.cmake: fixed comment
656 * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
658 2007-07-18 Havoc Pennington <hp@redhat.com>
660 * dbus/dbus-message.c (dbus_message_get_cached)
661 (dbus_message_cache_or_finalize): don't mess with message from
662 message cache outside of the cache lock. Bug #9164 from Jonathan
665 2007-07-13 Havoc Pennington <hp@redhat.com>
667 * Add indent-tabs-mode: nil to all file headers.
669 2007-07-12 Havoc Pennington <hp@redhat.com>
671 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
672 for parsing hex as double to be sure it fails to work
674 * dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
676 2007-07-10 Havoc Pennington <hp@redhat.com>
678 * dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
679 Hochreutiner to avoid trying to protect individual bits in a word
680 with different locks (make dispatch_acquired and io_path_acquired
681 dbus_bool_t rather than bitfields)
683 2007-07-09 Ralf Habacker <ralf.habacker@freenet.de>
685 * dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,
686 dbus-sysdeps-spawn-win.c: synced with windbus sources
688 2007-07-07 Ralf Habacker <ralf.habacker@freenet.de>
690 * dbus/dbus-sysdeps-win.c
691 (_dbus_getsid): remove unused jump label
692 (_dbus_read_credentials_socket): _dbus_string_init could fail,
694 (_dbus_get_working_dir, _dbus_init_working_dir): remove unused
697 2007-07-04 Ralf Habacker <ralf.habacker@freenet.de>
699 * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs
700 for windows supplementary packages too
702 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
704 * cmake/dbus/CMakeLists.txt: handle userdb as unix file
706 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
708 * dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate
711 2007-06-30 Ralf Habacker <ralf.habacker@freenet.de>
713 * dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
715 2007-06-23 Ralf Habacker <ralf.habacker@freenet.de>
717 * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and
718 WIN_ONLY commands for auth scripts
719 * test/data/auth/external-root.auth-script: limit execution to unix
721 2007-06-21 Havoc Pennington <hp@redhat.com>
723 * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
726 2007-06-21 Havoc Pennington <hp@redhat.com>
728 * dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
729 not be the same as before, the ABI has never been declared stable
730 on Windows and 2) do not commit to cross-platform files without
731 posting the exact patch to the mailing list
733 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
734 out before, either 0xff needs to work on both platforms, or none
735 of the dbus code can rely on it working. That means the options
736 are 1) audit the code for anywhere that relies on 0xff working, if
737 none found ideally add a test that it *doesn't* work and make unix
738 reject it explicitly, but in any case this test would go away or
739 2) make it work on Windows also, then we don't have to figure out
740 whether we rely on it.
742 And in either case, post the exact patch to the mailing list and
745 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
747 * cmake/CMakeLists.txt: added VERSION_PATCH to be able to
748 distinguish win32 binary release from dbus versioning
750 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
752 * dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
753 (_dbus_getsid): new function
754 (_dbus_read_credentials_socket): used correct function
755 (_dbus_append_user_from_current_process,
756 _dbus_credentials_add_from_current_process): added real
758 (_dbus_credentials_parse_and_add_desired,_dbus_parse_uid):
761 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
763 * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): don't check
764 0xff as floating point, this isn't supported on win32 math
767 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
769 * dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username,
770 _dbus_homedir_from_current_process, _dbus_append_desired_identity):
771 removed obsolate functions
773 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
775 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-util-win.c,
776 dbus/dbus-sysdeps-win.h: disabled uid/sid conversation stuff
777 implementation by Peter Kuemmel
779 2007-06-21 Ralf Habacker <ralf.habacker@freenet.de>
781 * dbus/dbus-watch.c (dbus_watch_get_fd): this function is
782 deprecated and its behavior should be as before until all
783 client code is migrated.
785 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
787 * dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c:
788 msvc7.1 fixes by Jaroslaw Staniek tested with mingw
790 2007-06-19 Ralf Habacker <ralf.habacker@freenet.de>
792 * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c,
793 dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation
796 2007-06-18 Ralf Habacker <ralf.habacker@freenet.de>
798 * dbus-win.patch: removed obsolate patches
800 2007-06-18 Havoc Pennington <hp@redhat.com>
802 * configure.in: bump version to 1.1.2 so CVS is higher than last
803 release (this is not the 1.1.2 release)
805 2007-06-18 Havoc Pennington <hp@redhat.com>
809 2007-06-18 Havoc Pennington <hp@redhat.com>
811 * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
813 * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
815 * bus/bus.c (bus_context_new): generate a unique ID for each bus context
817 * dbus/dbus-connection.c (dbus_connection_get_server_id): new function
819 * dbus/dbus-bus.c (dbus_bus_get_id): new function
821 * dbus/dbus-server.c (dbus_server_get_id): new function
823 2007-06-18 Havoc Pennington <hp@redhat.com>
825 * dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
826 this up a little bit, to try and understand why telnet'ing to a
827 server and sending a non-nul byte didn't disconnect immediately;
828 now it seems that it does disconnect immediately as it should,
829 though I don't understand what has changed.
831 2007-06-18 Havoc Pennington <hp@redhat.com>
833 * dbus/dbus-watch.c (dbus_watch_get_socket)
834 (dbus_watch_get_unix_fd): new API to match DBusConnection
835 (dbus_watch_get_fd): deprecate this
837 Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
838 now since all the transports use sockets anyway
840 2007-06-16 Ralf Habacker <ralf.habacker@freenet.de>
842 * dbus/dbus-macros.h, dbus/dbus-message.c,
843 dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED
844 to DBUS_DEPRECATED and extended to msvc compiler
846 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
848 * cmake/CMakeLists.txt: use local include header first
850 * dbus/dbus-sysdeps-win.c: mingw fix of DBusCredential struct
852 2007-06-15 Ralf Habacker <ralf.habacker@freenet.de>
854 * cmake/ConfigureChecks.cmake,cmake/config.h.cmake:
855 added check for HAVE_ERRNO_H
857 * cmake/dbus/CMakeLists.txt: added missing files
859 * dbus/dbus-transport-win.c/.h: new files
861 * dbus/dbus-sysdeps-win.c,.h: added required _unix functions
862 to make dbus compilable on win32
864 * dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to
867 * dbus-win.patch: removed applied or obsolate patches
869 Note: dbus-win32 is now compilable, no guarantee that it runs
872 2007-06-15 Havoc Pennington <hp@redhat.com>
874 * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
875 (_dbus_append_system_config_file): new functions
877 * bus/main.c (main): use _dbus_append_system_config_file() and
878 _dbus_append_session_config_file()
880 * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
881 DBUS_SESSION_CONFIG_FILE into this makefile
883 2007-06-15 Havoc Pennington <hp@redhat.com>
885 * dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
886 (_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
887 (_dbus_strerror_from_errno): family of functions to abstract
888 errno, though these are somewhat bogus (really we should make our
889 socket wrappers not use errno probably - the issue is that any
890 usage of errno that isn't socket-related probably is not
891 cross-platform, so should either be in a unix-only file that can
892 use errno directly, or is a bug - these general errno wrappers
893 hide issues of this nature in non-socket code, while
894 socket-specific API changes would not since sockets are allowed
897 2007-06-14 Havoc Pennington <hp@redhat.com>
899 * bus/dispatch.c (check_get_connection_unix_process_id): mop up
900 getpid() (noticed by Peter Kümmel) and adapt the test to
901 expect a "pid unknown" error when running on Windows.
903 2007-06-14 Havoc Pennington <hp@redhat.com>
905 * dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
906 delete this function since it was effectively the same as
907 _dbus_credentials_add_from_username()
909 2007-06-14 Havoc Pennington <hp@redhat.com>
911 * dbus/dbus-auth.c: adapt to keyring changes
913 * dbus/dbus-keyring.c: change to avoid using user ID and home
914 directory directly; instead use a
915 keyring-location-from-credentials function in dbus-sysdeps
917 * fix to use _dbus_append_user_from_current_process() instead of
918 _dbus_username_from_current_process() or _dbus_append_desired_identity().
920 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
922 * reverted global rename of function _dbus_username_from_current_process.
923 It needs too much tests to verify that the change does not break anything.
924 I had overseen that the signatures are different and requires non
926 This is one *major* disadvantage of emulating oop functionality with c.
927 You are responsible for cleaning every object on every function return point
928 which could be a nightmare if you are not working with dbus all the days.
930 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
932 * dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech):
933 fixed usage of _dbus_append_desired_identity()
935 * dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
937 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
939 * dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
941 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
943 * global rename of function _dbus_username_from_current_process
944 to _dbus_append_desired_identity.
945 Approved by Havoc Pennington
947 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
949 * dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
950 (_dbus_append_desired_identity, _dbus_windows_user_is_process_owner):
951 new win32 functions as counterpart of unix related
952 (_dbus_send_credentials_socket,_dbus_read_credentials_socket):
953 renamed from ..._unix_socket
954 (_dbus_send_credentials_unix_socket): removed obsolate function
956 * dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
957 (_dbus_verify_daemon_user,_dbus_change_to_daemon_user):
958 new win32 functions as counterpart of unix related
960 2007-06-14 Simon McVittie <simon.mcvittie@collabora.co.uk>
962 * doc/dbus-specification.xml: say the protocol version is 1 instead of
963 0 (patch from Kristoffer Lundén, fd.o#10033) and remove the FIXME
964 about removing protocol version from messages (as per Havoc's comment
967 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
969 * dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches):
970 new win32 functions as counterpart of unix related
972 2007-06-14 Ralf Habacker <ralf.habacker@freenet.de>
974 * cmake/modules/FindKDEWIN.cmake,
975 cmake/modules/FindKDEWIN_Packager.cmake,
976 cmake/modules/Win32Macros.cmake: new files from the
978 * cmake/CMakeLists.txt: cleaned support for kdewin installer and
979 win32 explorer wrapper
981 2007-06-13 Havoc Pennington <hp@redhat.com>
983 * dbus/dbus-message.c (dbus_message_iter_open_container): Fix
984 broken return_if_fail (kind of scary that test suite does not
987 2007-06-13 Havoc Pennington <hp@redhat.com>
989 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
990 all_interfaces=true|false for tcp servers
992 * dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
995 * bus/selinux.c: fix some missing includes
997 * dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
998 port to simply be omitted in addition to specifying 0
1000 2007-06-13 Havoc Pennington <hp@redhat.com>
1002 * configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
1003 libaudit support, no clue what this means really but now we have
1004 it. Patches from Fedora package.
1006 * bus/bus.c (bus_context_new): move selinux initialization after
1007 changing to daemon user, patch from Fedora package
1009 * dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
1011 2007-06-12 Havoc Pennington <hp@redhat.com>
1013 * dbus/dbus-message.c (dbus_message_iter_open_container): improve
1014 the checks/warnings for contained_signature a bit
1016 2007-06-12 Havoc Pennington <hp@redhat.com>
1018 * dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
1019 improve the warning a bit if you write extra data into a message
1021 2007-06-12 Havoc Pennington <hp@redhat.com>
1023 * dbus/dbus-auth.c (sha1_handle_second_client_response)
1024 (handle_server_data_anonymous_mech): add the process ID from
1025 socket credentials, if available, even if not using EXTERNAL
1027 * dbus/dbus-transport.c (auth_via_default_rules): support
1028 allow_anonymous flag
1030 * dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
1031 (dbus_connection_set_allow_anonymous): new API for controlling
1034 2007-06-09 Havoc Pennington <hp@redhat.com>
1036 * dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
1037 think an empty line is the end of the file.
1038 Also, fix some whitespace.
1040 * dbus/dbus-string-util.c: add more tests for
1041 _dbus_string_pop_line() revealing that it thinks an empty line is
1042 the end of the file, which broke dbus-auth-script.c so
1043 it didn't really run the scripts
1045 * dbus/dbus-auth.c: add ANONYMOUS mechanism
1047 * dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
1048 an empty/no-op auth script; add commands to check that we have or
1049 don't have the expected credentials
1051 2007-06-09 Havoc Pennington <hp@redhat.com>
1053 * bus/policy.c (bus_policy_create_client_policy): gracefully
1054 continue if the connection has no unix user - just don't apply
1055 any unix user dependent rules.
1057 * bus/config-parser.c: remove dbus-userdb.h usage
1059 * bus/bus.c: remove dbus-userdb.h usage
1061 * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
1062 support Windows user function; also, fix the logic for checking
1063 auth as root in the default auth code (broken in the previous
1066 * dbus/dbus-connection.c
1067 (dbus_connection_set_windows_user_function): new function
1068 (dbus_connection_get_windows_user): new function
1070 2007-06-09 Havoc Pennington <hp@redhat.com>
1072 * bus/dispatch.c (check_get_connection_unix_process_id): adapt
1073 since sysdeps-unix.h stuff isn't included anymore
1075 * bus/bus.c (bus_context_new): use more abstract functions to
1076 change user, so they can be no-ops on Windows
1078 * dbus/dbus-credentials.c, dbus/dbus-credentials.h,
1079 dbus/dbus-credentials-util.c: new files containing a fully opaque
1080 DBusCredentials data type to replace the old not opaque one.
1082 * configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
1085 * dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
1086 up the uses of it in bus/*.c and factor out the parts of
1087 cookie auth that depend on it
1089 2007-06-07 Havoc Pennington <hp@redhat.com>
1091 * dbus/dbus-message.c: improve some docs related to reading values
1094 2007-06-02 Ralf Habacker <ralf.habacker@freenet.de>
1096 * cmake: added cygwin compile support
1098 2007-06-01 Ralf Habacker <ralf.habacker@freenet.de>
1100 * tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
1102 * cmake/dbus-launch.bat.cmake: removed obsolate file
1104 2007-05-31 Ralf Habacker <ralf.habacker@freenet.de>
1106 * bus/main.c (main): uses _dbus_get_config_file_name() to detect
1107 session.conf location on win32.
1109 * dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists):
1110 new prototyp, undefined interface after including windows.h because
1111 it makes trouble when a paramater is named interface.
1113 * dbus-sysdeps-win.c (_dbus_get_install_root,
1114 _dbus_get_config_file_name,_dbus_file_exists): new functions.
1116 2007-05-27 Ralf Habacker <ralf.habacker@freenet.de>
1118 * bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings
1119 as reported by Peter Kümmel.
1121 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1125 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1127 * Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
1128 We forgot to do this during the 1.0 release and it makes sense
1129 now as we get ready to release the first 1.1.0 development tarball
1131 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1133 * create directory test/data/valid-config-files/session.d so that
1136 2007-05-25 John (J5) Palmieri <johnp@redhat.com>
1138 * INSTALL: remove dependancies for bindings since they no longer
1141 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1143 * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file
1144 with empty function _dbus_server_listen_platform_specific().
1146 * dbus/dbus-server.c (listen_funcs): uses
1147 _dbus_server_listen_platform_specific on any platform.
1149 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1151 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting
1152 user info from a domain controller isn't an error, the computer
1153 may run in a non domain context.
1155 2007-05-25 Ralf Habacker <ralf.habacker@freenet.de>
1157 * dbus/dbus-sysdeps-win.c (_dbus_full_duplex_pipe): fixed assertation.
1159 2007-05-24 Simon McVittie <simon.mcvittie@collabora.co.uk>
1161 * bus/config-parser.c (test_service_dir_matches): fixed ordering for unix.
1163 * bus/config-parser.c (test_default_session_servicedirs): made allocation
1164 of _progs platform independent.
1166 2007-05-23 Havoc Pennington <hp@redhat.com>
1168 * bus/Makefile.am (install-data-hook): create session.d
1170 * bus/session.conf.in: add session.d for the session bus, so
1171 security policy can be extended
1173 2007-05-22 Ralf.Habacker <ralf.habacker@freenet.de>
1175 * cmake/CMakeLists.txt: fixed creating of TEST_..._BINARY to make
1176 bus-test able to find the binaries.
1178 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1180 * acinclude.m4, configure.in: In recent autotools, ${datadir} is
1181 defined in terms of ${datarootdir}, so EXPANDED_DATADIR needs to be
1182 expanded recursively. Rather than fixing configure.in to do this, I
1183 grabbed the AS_AC_EXPAND macro from autostars.sf.net, which seems to be
1186 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1188 * update-dbus-docs.sh: Assorted improvements:
1189 - Default user if $FDUSER is not set is the ssh default
1190 (set in ~/.ssh/config or based on the local username), not a
1192 - Temporary checkout directory is created securely (preventing symlink
1193 attacks), if mktemp(1) is available
1194 - Use make -C rather than cd && make && cd ..
1196 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1198 * HACKING: Point to correct mailing list
1200 2007-05-21 Simon McVittie <simon.mcvittie@collabora.co.uk>
1202 * doc/dbus-specification.xml: explicitly specify that STRING cannot
1203 contain embedded NULs.
1205 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1207 * dbus/dbus-internal.c: fix inline problem on win32.
1209 2007-05-20 Ralf.Habacker <ralf.habacker@freenet.de>
1211 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not reaching
1212 domain controller isn't an error, converted error message to verbose
1215 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1217 * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): disabled
1218 tests not running on wince.
1220 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1222 * dbus/dbus-internals.c (_dbus_verbose_init): win32 requires 'varname='
1223 to unset a environment variable.
1225 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1227 * dbus/dbus-sysdeps.c (_dbus_setenv): win32 requires 'varname='
1228 to unset a environment variable.
1230 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1232 * bus/policy.c (bus_policy_create_client_policy):
1233 win32 temporary fix until the userdb stuff is ported completly.
1235 2007-05-19 Ralf.Habacker <ralf.habacker@freenet.de>
1237 * dbus/dbus-server.c (listen_funcs):
1238 _dbus_server_listen_platform_specific is empty on win32,
1239 limited to unix only.
1241 * dbus/dbus-server.c (valid_addresses): limit unix
1242 only addresses to unix.
1244 2007-05-18 Havoc Pennington <hp@redhat.com>
1246 * doc/dbus-specification.xml: add a GetAll to the Properties
1249 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1251 * bus\config-parser.c (test_default_session_servicedirs):
1254 2007-05-17 Ralf.Habacker <ralf.habacker@freenet.de>
1256 * configure.in: define constant DBUS_UNIX.
1258 2007-05-14 Ralf Habacker <ralf.habacker@freenet.de>
1260 * dbus/dbus-sysdeps-win.c (_dbus_printf_string_upper_bound):
1261 compile fix for MS Platform SDK 6
1262 patch from Michael Luschas <mluschas@gmail.com>
1264 2007-05-10 John (J5) Palmieri <johnp@redhat.com>
1266 * dbus-1.pc.in: add daemondir to pc file
1267 patch from Brian Cameron <brian.cameron at sun.com>
1269 2007-05-04 Simon McVittie <simon.mcvittie@collabora.co.uk>
1271 * doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local
1272 interface and the corresponding /o/fd/DBus/Local object path;
1273 describe them as reserved and forbid using them in a sent message,
1274 mentioning that in the reference implementation this will cause the
1275 connection to be dropped. Patch approved by Havoc.
1277 2007-04-28 Ralf Habacker <ralf.habacker@freenet.de>
1279 * cmake/: don't install test applications and service files,
1280 moved CMAKE_DEBUG_POSTFIX to top level CMakeLists.txt
1282 2007-04-27 Havoc Pennington <hp@redhat.com>
1284 * dbus/dbus-sysdeps-unix.c (_dbus_open_socket): fix #10781 from
1285 Tobias Nygren, checking pointer to fd vs. 0 rather than checking
1288 2007-04-26 Ralf Habacker <ralf.habacker@freenet.de>
1290 * cmake/: added debug postfixes to debug exe's for
1292 * dbus\dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1293 print error code in case no string message is available.
1295 2007-04-06 Simon McVittie <simon.mcvittie@collabora.co.uk>
1297 * dbus/dbus-message-util.c, dbus/dbus-message.c,
1298 dbus/dbus-message.h: Add API to convert a DBusMessage to/from a
1299 byte array. Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>,
1300 approved by Havoc Pennington.
1302 2007-04-03 Timo Hoenig <thoenig@suse.de>
1304 * dbus/dbus-address.c (dbus_parse_address): Do not accept zero-
1306 * dbus/dbus-address.c (_dbus_address_test): Add test for zero-
1309 2007-03-25 Ralf.Habacker <ralf.habacker@freenet.de>
1311 * cmake/dbus/CMakeLists.txt: debug postfix also for mingw.
1313 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1315 * cmake/modules/FindExpat.cmake: fix package detection on win32.
1317 * README.win: update install instructions.
1319 2007-03-16 Ralf.Habacker <ralf.habacker@freenet.de>
1321 * dbus/dbus-sysdeps.h (_dbus_split_paths_and_append):
1323 (_DBUS_PATH_SEPARATOR): new macro.
1325 * dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged
1326 from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c.
1328 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1330 * bus/config-parser.c, bus/policy.c,
1331 bus/policy.h, bus/dbus-daemon.1.in,
1332 bus/session.conf.in: added eavesdrop support
1333 for replies - patch by olli.salli at collabora.co.uk
1334 approved by Havoc Pennington.
1336 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1338 * dbus\dbus-sysdeps-win-thread.c: renamed to
1339 dbus-sysdeps-thread-win.c, it is a platform depending file
1340 similar to dbus-sysdeps-pthread.c.
1342 2007-03-15 Ralf.Habacker <ralf.habacker@freenet.de>
1344 * cmake\doc\CMakeLists.txt: added prelimary xml doc
1345 support, needs cmake Find script.
1347 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1349 * cmake: add doxygen support
1351 2007-03-14 Ralf.Habacker <ralf.habacker@freenet.de>
1353 * cmake/config.h.cmake: WINCE fixes, defined DBUS_UNIX.
1355 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1357 * dbus/dbus-sysdeps-util-win.c (dbus_become_daemon):
1360 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1362 * dbus-win.patch: removed obsolate patches.
1364 2007-03-13 Ralf.Habacker <ralf.habacker@freenet.de>
1366 * dbus/dbus-sysdeps-win.c: added zero byte sending
1367 and receiving after connection start up
1369 2007-03-11 Havoc Pennington <hp@redhat.com>
1371 * tools/dbus-launch.c (do_close_stderr): fix C89 problem and
1374 * Mostly fix the DBusPipe mess.
1375 - put line break after function return types
1376 - put space before parens
1377 - do not pass structs around by value
1378 - don't use dbus_strerror after calling supposedly cross-platform
1380 - don't name pipe variables "fd"
1381 - abstract special fd numbers like -1 and 1
1383 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1385 * dbus/dbus-sysdeps-win.h, dbus/dbus-sysdeps-win.c,
1386 dbus/dbus-sysdeps-util-win.c: renamed functions
1387 _dbus_xxx_file() to _dbus_file_xxx() to reflect
1388 struct name DBusFile.
1390 2007-03-12 Ralf Habacker <ralf.habacker@freenet.de>
1392 * dbus/dbus-sysdeps-util-unix.c (_dbus_become_daemon):
1393 fix _dbus_pid_fd check.
1395 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1397 * tools/dbus-print-message.c (print_message):
1398 added printing of the reply serial to method returns and
1399 errors, so you can actually figure out the message/reply
1400 pairs - patch by olli.salli at collabora.co.uk.
1402 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1404 * dbus-win.patch: removed committed patches.
1406 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1408 * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c,
1409 dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c,
1410 dbus/dbus-sysdeps-util-win.c, dbus/dbus-sysdeps-win.c,
1411 dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx,
1412 completed _dbus_pipe support.
1414 2007-03-10 Ralf Habacker <ralf.habacker@freenet.de>
1416 * dbus/dbus-sysdeps.h (_dbus_listen_tcp_socket):
1417 changed type or port to pointer, because the port is given back.
1419 * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
1420 implemented returning tcp port. Skipping port parameter
1421 and non integer port values in config <listen> statement
1424 * dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c
1425 (_dbus_listen_tcp_socket): return the real used tcp port.
1427 * bus/dbus-daemon.1.in: added <listen> tcp examples
1429 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1431 * cmake/config.h.cmake: win32 msvc bug fix
1433 2007-03-09 Ralf Habacker <ralf.habacker@freenet.de>
1435 * cmake/config.h.cmake: fixed DBUS_WINxx defines,
1436 using _WINCE does not work.
1438 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1440 * dbus-win.patch: removed _dbus_write_pipe() patch, it is now
1443 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1445 * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h:
1446 rename pipe related write() function calls to _dbus_write_pipe().
1448 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1450 * dbus-win.patch: added bus/config-loader-libexpat.c patch,
1451 uses DBUS_WIN for alls win32 related #ifdefs,
1454 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1456 * dbus-win.patch: updated patch for bus/dispatch.c.
1458 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1460 * dbus-win.patch: dbus-connection.c (dbus_connection_get_unix_user,
1461 dbus_connection_get_unix_process_id): Let return them valid user id's,
1462 otherwise bus-test fails. How to replace on win32 ?.
1464 * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir):
1467 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1469 * dbus/dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1470 use dbus friendly error name.
1471 (fill_win_user_info_homedir): print user name in error case too.
1473 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1475 * cmake/ConfigureChecks.cmake: fixed socketpair check
1477 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1479 * bus/dispatch.c: disabled segfault test on win32 for now
1481 2007-03-08 Ralf Habacker <ralf.habacker@freenet.de>
1483 * configure.in, cmake/ConfigureChecks.cmake: added check
1485 * test/test-segfault.c: only include setrlimit stuff only
1488 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1490 * test/test-segfault.c: unix compile fix.
1491 * dbus-win.patch: removed obsolate patches.
1493 2007-03-07 Ralf Habacker <ralf.habacker@freenet.de>
1495 * bus/activation.c: removed obsolate include header.
1496 * test/test-segfault.c: win32 compile fix, rlimit
1497 isn't available on win32.
1498 * dbus-win.patch: removed some more patches, they
1499 are applied or obsolate
1501 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1503 * bus-win.patch: fixes unix listen problems, dbus-test
1506 2007-03-06 Ralf Habacker <ralf.habacker@freenet.de>
1508 * cmake/dbus/CMakeLists.txt,cmake/bus/CMakeLists.txt,
1509 cmake/CMakeLists.txt: win32 compile fix
1511 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1513 * dbus-win.patch, README.win: added available win32
1514 patches from windbus project (http://sf.net/projects/windbus)
1516 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1518 * bus/activation.c: (bus_activation_activate_service):
1519 fixed call to _dbus_spawn_async_with_babysitter().
1521 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1523 * dbus/dbus-spawn.c,dbus/dbus-spawn.h (_dbus_spawn_async_with_babysitter):
1524 added environment pointer as function parameter, used on win32.
1526 * test/spawn-test.c: fixed call to above mentioned function.
1528 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1530 * configure.in,test/test-sleep-forever.c,test/test-names.c:
1531 added configure check for unistd.h.
1533 2007-03-04 Ralf Habacker <ralf.habacker@freenet.de>
1535 * test/Makefile.am: fixed test data copy problem in
1536 out of source build, when sources came from svn or cvs.
1538 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1540 * dbus/*-win.*,bus/*-win.*: added win32 platform related
1541 files. These files are only added to the cmake build system.
1542 The missing dbus-win.patch file will be added later.
1544 2007-03-03 Ralf Habacker <ralf.habacker@freenet.de>
1546 * cmake: new directory, contains cmake build support.
1547 See http://www.cmake.org for more informations.
1548 Currently only unix will be buildable because some
1549 win32 required files are still missing.
1551 2007-03-03 Thiago Macieira <thiago@kde.org>
1553 * dbus/dbus-sysdeps-unix.c: capture the dbus-launch stderr
1554 output and add it to the DBusError message we return.
1556 * tools/dbus-launch.1:
1557 * tools/dbus-launch.c: Add option --close-stderr to, well,
1558 close stderr before starting dbus-daemon.
1560 2007-01-31 Havoc Pennington <hp@redhat.com>
1562 * bus/dbus-daemon.1.in: write a section in the man page on running
1563 a test daemon for debugging purposes
1565 2007-01-26 Havoc Pennington <hp@redhat.com>
1567 * bus/session.conf.in: override all the default limits with much
1568 higher limits on the session bus, there is no reason the session
1569 bus should have low limits
1571 * bus/config-parser.c (bus_config_parser_new): increase default
1572 limits so they are less likely to be hit; in particular the max
1573 replies per connection was way too low
1575 2006-01-25 Simon McVittie <simon.mcvittie@collabora.co.uk>
1577 * doc/dbus-tutorial.xml: Replace Python section of tutorial with
1578 a pointer to the tutorial maintained as part of dbus-python
1580 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1582 * dbus/dbus-sysdeps-unix.c: unix compile fix, moved
1583 atomic_exchange_and_add() from dbus/dbus-sysdeps.c
1584 to here, it's used by _dbus_atomic_inc() and _dbus_atomic_dec().
1586 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1588 * tools/dbus-monitor.c: gettimeofday() is not available
1589 on windows so we have to provide our own. It's taken from
1590 lgpl'd kdewin32 package. - Patches from Christian Ehrlicher
1592 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1594 * dbus/dbus-sysdeps-unix.c: moved _dbus_atomic_inc/dec()
1595 from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec()
1596 is in dbus-sysdeps-win.c (not in this patch).
1598 * dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit
1599 with InterlockedInc/Decrement.
1600 - Patches from Christian Ehrlicher
1602 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1604 * tools/dbus-send.c, tools/dbus-monitor.c: win32 compile fix.
1606 2006-12-31 Ralf Habacker <ralf.habacker@freenet.de>
1608 * dbus/dbus-marshal-recursive.c (type DBusTypeReaderClass):
1609 fix mispaced const statement. - Patch from Peter Kümmel
1611 2006-12-19 Ray Strode <rstrode@redhat.com>
1613 * bus/bus.c (process_config_every_time):
1614 don't overwrite existing bus context activation object
1615 until after we've checked that the new activation is
1619 (signal_handler), (handle_reload_watch):
1620 don't call exit() on failure, instead make do and keep
1622 (close_reload_pipe): new function to turn off
1623 hangup-causes-config-reload behavior if an unexpected
1626 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1628 * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
1629 correctness fix. - Patch from Christian Ehrlicher
1631 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1633 * dbus/dbus-internals.h: msvc also knows about __FUNCTION__,
1634 we should also use it. - Patch from Christian Ehrlicher
1636 2006-12-13 Ralf Habacker <ralf.habacker@freenet.de>
1638 * dbus-sysdeps-util.c: added win32 related tests
1640 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1642 * dbus/dbus-string.c (_dbus_string_pop_line),
1643 bus/desktop-file.c (parse_section_start,
1644 parse_comment_or_blank,parse_key_value,): uses
1645 _dbus_string_find_eol() to support platform independent eol style.
1647 2006-12-12 Ralf Habacker <ralf.habacker@freenet.de>
1649 * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function.
1650 * dbus/dbus-string-util.c (_dbus_string_test): added testcases for
1651 _dbus_string_find_eol().
1652 Approved by: Havoc Pennington.
1654 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1656 * configure.in: Added switch to disable user_database caching.
1658 * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
1659 be able disable user_dabase caching.
1661 2006-12-12 Tim Dijkstra <tim@famdijkstra.org>
1663 * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext
1664 struct. It is unnecessary we have a global one already. Also remove
1665 bus_context_get_user_database function, it is no longer needed.
1666 Flush the global database on reload.
1668 * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups
1669 with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
1671 * dbus/dbus-userdb.c, dbus/dbus-userdb.h:
1672 Add _dbus_user_database_flush_system.
1673 Make more functions DBUS_USERDB_INCLUDES_PRIVATE.
1674 Small unrelated change in _dbus_is_a_number: change
1675 _dbus_string_parse_int to _dbus_string_parse_uint.
1677 * bus/connection.c: Change call to _dbus_user_database_get_groups to
1678 _dbus_groups_from_uid.
1680 * bus/policy.c, bus/policy.h: Change call to
1681 _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove
1682 DBusUserDatabase from bus_policy_allow_user prototype, it no longer
1685 2006-12-12 John (J5) Palmieri <johnp@redhat.com>
1687 * bus/signal.c: Fix match_rule_equal errata
1688 (CVE-2006-6107 - Patch from Kimmo Hämäläinen
1689 <kimmo.hamalainen@nokia.com>)
1691 2006-11-19 Thiago Macieira <thiago@kde.org>
1693 * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
1694 _dbus_pthread_condvar_wait,
1695 _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
1696 pthread_self() after coming back from a conditional variable
1697 wait as well as in one codepath where it was forgotten.
1698 Approved by: Havoc Pennington.
1700 2006-11-17 Havoc Pennington <hp@redhat.com>
1702 * update-dbus-docs.sh: allow setting fd.org username via env
1703 variable. Make it run autogen with --enable-xml-docs=yes
1704 --enable-doxygen-docs=yes so configure will fail if the required
1707 2006-11-17 Havoc Pennington <hp@redhat.com>
1709 * doc/dbus-faq.xml: minor FAQ tweaks
1711 2006-11-14 Havoc Pennington <hp@redhat.com>
1713 * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
1714 dbus_get_local_machine_id() to its own file, no substantive
1715 changes. There are a couple other things we might want to add that
1716 are "misc" so moving out of dbus-connection.[hc] which is big
1719 2006-11-14 Havoc Pennington <hp@redhat.com>
1721 * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
1722 UUID had the timestamp last, but the implementation had it first;
1723 move it to last since I think it's a tiny bit nicer (easier to
1724 compare at a glance, faster to sort, less code), and will not
1725 cause any practical compatibility problems. Also, always convert
1726 the timestamp to big endian.
1728 * doc/dbus-specification.xml: Clean up the docs on the UUID.
1730 * tools/dbus-uuidgen.1: more prominently say it is not suitable
1731 as a replacement for regular uuidgen/RFC4122.
1733 2006-11-14 John (J5) Palmieri <johnp@redhat.com>
1735 * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
1736 the correct value so we don't assert when initalizing recursive threads
1738 * test/name-test/test-thread-init.c: call dbus_threads_init_default
1739 instead of _dbus_threads_init_debug since it is more of a real world