Merge branch 'atomic'
[platform/upstream/dbus.git] / ChangeLog
1 2007-10-11  Simon McVittie  <simon.mcvittie@collabora.co.uk>
2
3         * dbus/dbus-macros.h, dbus/dbus-arch-deps.h.in: Use new macro
4         _DBUS_GNUC_EXTENSION (the same as G_GNUC_EXTENSION) to avoid -ansi
5         warnings about use of "long long".
6         * dbus/dbus-server-socket.c: remove unused variable when assertions
7         are disabled
8         * dbus/dbus-marshal-validate.c: avoid empty statements by removing
9         stray semicolons
10         * tools/dbus-launch.c: convert C++-style comment to C-style, add {}
11         for clarity
12         * .gitignore: ignore vi swapfiles
13         * dbus/dbus-errors.h, dbus/dbus-errors.c: Add DBUS_ERROR_INIT macro
14         for the benefit of libdbus users whose coding style allows initialized
15         variables (although dbus core coding style doesn't)
16         * configure.in, dbus/dbus-sysdeps.h, dbus/dbus-sysdeps-unix.c: Fix
17         detection of i486 atomic ops. Previously, the attempts to determine
18         support at compile-time on Darwin were causing the i486 atomic ops to
19         be used on *all* i386 or x86-64 GCC builds (AH_VERBATIM can't be
20         conditionalized like we were trying to).
21
22 2007-10-10  Simon McVittie  <simon.mcvittie@collabora.co.uk>
23
24         * dbus/dbus-errors.c, dbus/dbus-protocol.h: Add new error
25         org.freedesktop.DBus.Error.ObjectPathInUse
26         * dbus/dbus-object-tree.h, dbus/dbus-object-tree.c,
27         dbus/dbus-connection.c, dbus/dbus-connection.h: add new functions
28         dbus_connection_try_register_object_path and
29         dbus_connection_try_register_fallback, which raise ObjectPathInUse
30         rather than asserting, to make object path registration less painful
31         for bindings
32         * .gitignore: add various things that weren't in .cvsignore because
33         CVS implicitly ignored them; generally bring up to date
34
35 2007-10-09  John (J5) Palmieri  <johnp@redhat.com>
36
37         * tools/run-with-tmp-session-bus.sh: Fix env exports for better
38         portability (#9280)
39         * tools/dbus-send.1: Document syntax for container types in dbus-send
40         man file (#9553) - patch from Jack Spaar <jspaar at
41         users.sourceforge.net>
42
43         [Both OK for MIT/X11 relicensing -smcv]
44
45 2007-10-09  Simon McVittie  <simon.mcvittie@collabora.co.uk>
46
47         * doc/dbus-specification.xml: Specifically forbid empty structs (#7969)
48         * doc/dbus-specification.xml: Patches from Kristoffer Lundén to clarify
49         description of DBUS_COOKIE_SHA1 (#10184) and allowable contents of a
50         variant (#10185, amended as per Havoc's comments)
51
52         [All of the above are OK for MIT/X11 licensing]
53
54 2007-10-03  John (J5) Palmieri  <johnp@redhat.com>
55
56         * dbus/dbus-internals.h: fd.o bug #11678 Don't error out if compiler
57         does not support vararg macros. _dbus_verbose is the only function
58         that does this so make it a noop if vararg macros are not supported
59         * bus/selinux.c, dbus/dbus-sysdeps-util-unix.c: fd.o bug #12429
60         Reverse check to setpcap and only init audit if we were root
61         (patch by Dan Walsh <dwalsh@redhat.com>,
62         https://bugs.freedesktop.org/show_bug.cgi?id=12429). Reverse
63         we_were_root check to setpcap if we were root.  Also only init audit
64         if we were root.  So error dbus message will not show up when policy
65         reload happens.  dbus -session will no longer try to send audit
66         message, only system will.
67         * configure.in: fd.o bug #11872 improve linker test for --gc-sections.
68         Patch by Tim Mooney <enchanter at users.sourceforge.net>
69         * configure.in, dbus/dbus-sysdeps.c: fd.o bug #11872 fix clearenv for
70         systems that do not have it. Patch from Brian Cameron <brian.cameron
71         at sun.com>
72         * tools/dbus-launch.c: fd.o bug #12547 remove superfluous if.
73         Also convert tabs to spaces
74         * configure.in, bus/Makefile.am, dbus/Makefile.am: Correctly implement
75         -fPIC and -fPIE. For security reasons we want possition independent
76         code for libraries and possition independent executable for
77         executables. Before we were just enabling -fPIC. Now we correctly
78         enable -fPIC and -PIE for libdbus and the bus respectively. Proper
79         LD_FLAGS are set for each also.
80
81 2007-09-20  Ryan Lortie  <desrt@desrt.ca>
82
83         Add argument path matching support.  Bug #11066.
84
85         * dbus/signals.c (struct DBusMatchRule, bus_match_rule_new,
86         bus_match_rule_set_arg, bus_match_rule_parse_arg_match,
87         match_rule_matches): Add support for parsing and matching on
88         arg0path='/some/path' type rules.
89
90         * dbus/signals.h (bus_match_rule_set_arg): change to take const
91         DBusString instead of const char * for the string to match against.
92
93         * dbus/dbus-bus.c: add a quick note to dbus_bus_add_match
94         documentation about the path matching.
95
96         * doc/dbus-specification.xml: add a more detailed description of the
97         changes here.
98
99 2007-09-19  Ryan Lortie  <desrt@desrt.ca>
100
101         Add support for compacting DBusStrings to release wasted memory.
102
103         * dbus/dbus-string.[ch] (compact, _dbus_string_compact,
104         _dbus_string_lock): new compact function to free up allocated memory
105         that is no longer used.
106
107         * dbus/dbus-message.c (load_message): call _dbus_string_compact on the
108         message loader buffer.
109
110         * dbus/dbus-transport-socket.c (do_reading, do_writing): call
111         _dbus_string_compact on the incoming/outgoing "encoded" buffers.
112
113         * dbus/dbus-string-util.c (_dbus_string_test): add a few tests for
114         string compacting.
115
116 2007-09-13  Ryan Lortie  <desrt@desrt.ca>
117
118         * HACKING: add more explicit git branch/tag instructions
119
120 2007-09-13  Ryan Lortie  <desrt@desrt.ca>
121
122         migrate from cvs to git (cvs2svn -> git-svnimport).
123
124         * HACKING: update release/branch/tag instructions
125         * */.cvsignore: rename to .gitignore
126
127         also, clean up tags and branch names to conform to HACKING
128
129 2007-08-17  William Jon McCann  <mccann@jhu.edu>
130
131         * update-dbus-docs.sh: upload DTD to server
132
133 2007-08-17  Havoc Pennington  <hp@redhat.com>
134
135         * tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
136         Lorenz to use long not int with XChangeProperty format 32
137
138         * dbus/dbus-sysdeps-util-unix.c
139         (_dbus_write_pid_to_file_and_pipe): factor this out, and use the
140         same code in _dbus_become_daemon (where the parent writes the pid
141         file and to the pid pipe) and in bus_context_new (where the daemon
142         writes its own pid file and to its own pid pipe)
143
144         * bus/bus.c (bus_context_new): close the pid pipe after we print
145         to it. Also, don't write the pid to the pipe twice when we fork,
146         someone reported this bug a long time ago.
147
148 2007-08-03  Havoc Pennington  <hp@redhat.com>
149
150         * configure.in: add major/minor/micro version number AC_SUBST
151
152         * dbus/dbus-arch-deps.h.in (DBUS_MAJOR_VERSION,
153         DBUS_MINOR_VERSION, DBUS_MICRO_VERSION, DBUS_VERSION_STRING,
154         DBUS_VERSION): collection of macros to get version of library we
155         are compiled against.
156
157         * dbus/dbus-misc.c (dbus_get_version): new function, to get
158         version of library we are linked against at runtime.
159
160 2007-07-30  Havoc Pennington  <hp@redhat.com>
161
162         * bus/activation-helper.c (check_bus_name): don't use
163         _dbus_check_valid_bus_name() which is only around with
164         --enable-checks, instead use _dbus_validate_bus_name().
165         Bug #11766 from Diego <diego@pemas.net>
166
167 2007-07-27  Havoc Pennington  <hp@redhat.com>
168
169         * configure.in: post-release version bump
170
171 2007-07-27  Havoc Pennington  <hp@redhat.com>
172
173         * release 1.1.2
174
175 2007-07-26  Havoc Pennington  <hp@redhat.com>
176
177         * bus/config-parser-trivial.c (check_return_values): disable a
178         test that hardcoded the bus user's name
179
180         * bus/dispatch.c (bus_dispatch_test_conf): remove the "if
181         (!use_launcher)" around the tests, they were only failing because
182         we didn't pass through all the expected errors from the helper.
183
184         * bus/activation-exit-codes.h
185         (BUS_SPAWN_EXIT_CODE_CHILD_SIGNALED): add a code for child segfaulting
186         (BUS_SPAWN_EXIT_CODE_GENERIC_FAILURE): make "1" be a generic
187         failure code, so if a third party launch helper were written it
188         could just always return 1 on failure.
189         
190 2007-07-24  Daniel P. Berrange <dan@berrange.com>
191
192         * bus/dbus-daemon.1: Add docs on new syntax options for the bus
193         address strings
194
195         * dbus/dbus-address.c: Allow * in addresses (for binding to all
196         addresses).
197
198         * dbus/dbus-sysdeps.h:
199         * dbus/dbus-sysdeps-unix.c: Re-write to use getaddrinfo instead
200         of gethostbyname to enable protocol independant name lookup,
201         making IPv6 work
202
203         * dbus/dbus-server-socket.h:
204         * dbus/dbus-server-socket.c: Add support for 'family' in the
205         address string to specify ipv4 vs ipv6. Use a port string to
206         allow for service resolution. Allow for binding to multiple
207         sockets at once in case of dual IPv4 & IPv6 stacks.
208
209         * dbus/dbus-server-unix.c: Pass in an array of file descriptors
210         instead of a single one.
211
212         * dbus/dbus-transport-socket.h:
213         * dbus/dbus-transport-socket.c: Add support for 'family' in the
214         address string to specify ipv4 vs ipv6. Use a port string to
215         allow for service resolution.
216
217 2007-07-24  Havoc Pennington  <hp@redhat.com>
218
219         * configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS
220
221         * bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
222         TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
223         test shell_fail_service_auto_start when use_launcher==TRUE
224
225         * bus/activation-helper-bin.c (convert_error_to_exit_code): pass
226         through the INVALID_ARGS error so the test suite works
227
228         * bus/activation.c (handle_activation_exit_error): return
229         DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY
230
231         * dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
232         return only the exit code of the child, not the entire thingy from 
233         waitpid(), and make the return value indicate whether the child 
234         exited normally (with a status code)
235
236         * bus/bus.c (process_config_first_time_only): _dbus_strdup works
237         on NULL so no need to check
238         (process_config_every_time): move servicehelper init here, so we
239         reload it on HUP or config file change
240
241         * bus/Makefile.am (install-data-hook): remove comment because
242         Emacs make mode seems to be grumpy about it
243
244 2007-07-24  Richard Hughes  <richard@hughsie.com>
245
246         * bus/Makefile.am:
247         * bus/test-system.c: (die), (check_memleaks), (test_pre_hook),
248         (test_post_hook), (main):
249         Add back the test-system.c file - not sure now this got ignored in the
250         diff. I blame git.
251
252 2007-07-24  Richard Hughes  <richard@hughsie.com>
253
254         * configure.in:
255         Use ustar to generate the tarball; this fixes the make distcheck
256         problem when the data files do not fit in the archive:
257         tar: dbus-1.1.2/test/data/valid-service-files/org.freedesktop.DBus.
258         TestSuiteShellEchoServiceFail.service.in: file name is too
259         long (max 99); not dumped
260
261         We have to have the 'long' names as the service helper matches by
262         filename rather than by the name in the service file.
263
264 2007-07-24  Richard Hughes  <richard@hughsie.com>
265
266         * configure.in:
267         * test/Makefile.am:
268         * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
269         uiteNoExec.service.in:
270         * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
271         uiteNoService.service.in:
272         * test/data/invalid-service-files-system/org.freedesktop.DBus.TestS
273         uiteNoUser.service.in:
274         * test/data/valid-config-files-system/debug-allow-all-fail.conf.in:
275         * test/data/valid-config-files-system/debug-allow-all-pass.conf.in:
276         * test/data/valid-config-files/debug-allow-all-sha1.conf.in:
277         * test/data/valid-config-files/debug-allow-all.conf.in:
278         * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
279         teEchoService.service.in:
280         * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
281         teSegfaultService.service.in:
282         * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
283         teShellEchoServiceFail.service.in:
284         * test/data/valid-service-files-system/org.freedesktop.DBus.TestSui
285         teShellEchoServiceSuccess.service.in:
286         * test/data/valid-service-files/debug-echo.service.in:
287         * test/data/valid-service-files/debug-segfault.service.in:
288         * test/data/valid-service-files/debug-shell-echo-fail.service.in:
289         * test/data/valid-service-files/debug-shell-echo-success.service.in:
290         * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteEchoS
291         ervice.service.in:
292         * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteSegfa
293         ultService.service.in:
294         * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
295         EchoServiceFail.service.in:
296         * test/data/valid-service-files/org.freedesktop.DBus.TestSuiteShell
297         EchoServiceSuccess.service.in:
298         Add the data files needed by the system activation unit checks.
299
300 2007-07-24  Richard Hughes  <richard@hughsie.com>
301
302         * bus/dispatch.c: (check_segfault_service_no_auto_start),
303         (check_launch_service_file_missing),
304         (check_launch_service_user_missing),
305         (check_launch_service_exec_missing),
306         (check_launch_service_service_missing), (bus_dispatch_test_conf),
307         (bus_dispatch_test_conf_fail), (bus_dispatch_test):
308         Add unit tests for system activation. Most are copied from the
309         session activation tests, but some didn't apply when using a laucher.
310
311 2007-07-24  Richard Hughes  <richard@hughsie.com>
312
313         * bus/activation.c: (bus_activation_activate_service):
314         If the bus uses a service-laucher, then use the setuid laucher.
315
316 2007-07-24  Richard Hughes  <richard@hughsie.com>
317
318         * configure.in:
319         Add the needed library exports for the new laucher.
320
321 2007-07-24  Richard Hughes  <richard@hughsie.com>
322
323         * configure.in:
324         Check for -Wl,--gc-sections so we can really reduce the size of the
325         setuid binary.
326
327 2007-07-24  Richard Hughes  <richard@hughsie.com>
328
329         * bus/activation.c: (handle_activation_exit_error),
330         (babysitter_watch_callback):
331         Map the child exit status integer to a proper dbus error.
332
333 2007-07-24  Richard Hughes  <richard@hughsie.com>
334
335         * bus/bus.c: (process_config_first_time_only),
336         (process_config_every_time), (bus_context_unref),
337         (bus_context_get_servicehelper):
338         * bus/bus.h:
339         Add the concept of a service-helper and allow it's value to be read.
340
341 2007-07-24  Richard Hughes  <richard@hughsie.com>
342
343         * bus/activation.c: (bus_activation_entry_unref),
344         (update_desktop_file_entry):
345         Add the concept of, and read the value of user from the desktop file.
346         The user string is not required unless we are using system activation.
347
348 2007-07-24  Richard Hughes  <richard@hughsie.com>
349
350         * bus/activation.c:
351         * bus/desktop-file.h:
352         Move the defines into the header file, as we use these in the lauch
353         helper as well as the desktop file parsing.
354
355 2007-07-24  Richard Hughes  <richard@hughsie.com>
356
357         * bus/.cvsignore:
358         Add the autogenerated binary files.
359
360 2007-07-24  Richard Hughes  <richard@hughsie.com>
361
362         * bus/Makefile.am:
363         * bus/test.h:
364         Add the build glue for the lauch helper, and also add the launch-helper
365         OOM checks into make check. I've probably broken the build, give me 2.
366
367 2007-07-24  Richard Hughes  <richard@hughsie.com>
368
369         * bus/test-launch-helper.c: (die), (check_memleaks),
370         (test_post_hook), (bus_activation_helper_oom_test), (main):
371         Add a test wrapper to allow OOM checks on the launch helper.
372
373 2007-07-24  Richard Hughes  <richard@hughsie.com>
374
375         * bus/activation-helper-bin.c: (convert_error_to_exit_code),
376         (main):
377         * bus/activation-helper.c: (desktop_file_for_name),
378         (clear_environment), (check_permissions), (check_service_name),
379         (get_parameters_for_service), (switch_user),
380         (exec_for_correct_user), (check_bus_name), (get_correct_parser),
381         (launch_bus_name), (check_dbus_user), (run_launch_helper):
382         * bus/activation-helper.h:
383         Add the initial launch-helper. This is split into a main section and a
384         binary loader that allows us to lauch the main section in another test
385         harness to do stuff like OOM testing. No build glue yet.
386
387 2007-07-24  Richard Hughes  <richard@hughsie.com>
388
389         * bus/Makefile.am:
390         * bus/config-parser.c: (bus_config_parser_unref),
391         (start_busconfig_child), (bus_config_parser_end_element),
392         (servicehelper_path), (bus_config_parser_content),
393         (bus_config_parser_finished),
394         (bus_config_parser_get_servicehelper),
395         (test_default_session_servicedirs),
396         (test_default_system_servicedirs), (bus_config_parser_test):
397         * bus/config-parser.h:
398         Make the config-parser code use the common config code.
399         Also add the session and systemdirs stuff, and make the config parser
400         aware of the servicehelper field.
401
402 2007-07-24  Richard Hughes  <richard@hughsie.com>
403
404         * bus/system.conf.in:
405         Add new servicehelper fields to the default system.conf file.
406
407 2007-07-24  Richard Hughes  <richard@hughsie.com>
408
409         * bus/config-parser-trivial.c: (service_dirs_find_dir),
410         (service_dirs_append_link_unique_or_free), (bus_config_parser_new),
411         (bus_config_parser_unref), (bus_config_parser_start_element),
412         (bus_config_parser_end_element), (bus_config_parser_content),
413         (bus_config_parser_finished), (bus_config_parser_get_user),
414         (bus_config_parser_get_type), (bus_config_parser_get_service_dirs),
415         (check_return_values), (do_load), (check_loader_oom_func),
416         (process_test_valid_subdir), (make_full_path), (check_file_valid),
417         (bus_config_parser_trivial_test):
418         * bus/config-parser-trivial.h:
419         Add a security sensitive stripped down config parser for the setuid
420         launcher. This file only reads what it needs, and doesn't try to do
421         anything remotely clever like including external files.
422         It is not intended to validate the config file; it is expected that
423         config-parser will do that before the setuid program tries to read it.
424
425 2007-07-24  Richard Hughes  <richard@hughsie.com>
426
427         * bus/config-parser-common.c:
428         (bus_config_parser_element_name_to_type),
429         (bus_config_parser_element_type_to_name):
430         * bus/config-parser-common.h:
431         We don't want to run the whole config parser with all it's deps in the
432         setuid program. We need to implement a stripped down config parser just
433         for the launcher, and to do so I need some common functions and
434         defines; add them here.
435
436 2007-07-24  Richard Hughes  <richard@hughsie.com>
437
438         * dbus/dbus-sysdeps-unix.c:
439         (_dbus_get_standard_system_servicedirs):
440         * dbus/dbus-sysdeps-win.c:
441         Provide a way to get the standard system servicedirs, just like we do
442         for the session service dirs. These should be seporate, as there may
443         be a security issue starting up some session stuff as root.
444         The use-case for the same binary starting up per-system _and_
445         per-session is also not valid.
446
447 2007-07-24  Richard Hughes  <richard@hughsie.com>
448
449         * bus/dbus-daemon.1.in:
450         Add standard_system_servicedirs and servicehelper into the man file
451         and explain what each does.
452
453 2007-07-24  Richard Hughes  <richard@hughsie.com>
454
455         * doc/busconfig.dtd:
456         Add servicehelper into the dtd, it will soon be a valid part of the
457         config file.
458
459 2007-07-24  Richard Hughes  <richard@hughsie.com>
460
461         * dbus/dbus-spawn.c: (read_data),
462         (_dbus_babysitter_get_child_exit_status):
463         * dbus/dbus-spawn.h:
464         Add a function so we can get access to the exit status of the launch
465         helper.
466         By providing the return code and not the error we can leave the
467         'what does this mean?' to the bus launch code and not include it in the
468         dbus directory.
469
470 2007-07-24  Richard Hughes  <richard@hughsie.com>
471
472         * bus/activation-exit-codes.h:
473         Add defines which specify the output codes of the launch helper.
474         We have to use exit codes as this is the only way we can return failure
475         type without going grotty things like redirecting possibly-nonsecure
476         stderr into the error.
477
478 2007-07-24  Richard Hughes  <richard@hughsie.com>
479
480         * dbus/dbus-protocol.h:
481         Add new error names needed for the launch helper.
482
483 2007-07-24  Richard Hughes  <richard@hughsie.com>
484
485         * dbus/dbus-sysdeps.c: (_dbus_clearenv):
486         * dbus/dbus-sysdeps.h:
487         Add a wrapper for clearenv.
488
489 2007-07-24  Richard Hughes  <richard@hughsie.com>
490
491         * doc/system-activation.txt:
492         Add design document for the system activation parts. I'll shortly be
493         committing many patches that add system activation using a setuid
494         launcher into CVS, so expect things to be broken for a few hours.
495
496 2007-07-19  Ralf Habacker  <ralf.habacker@freenet.de>
497
498         * cmake/modules/FindKDEWIN.cmake: fixed comment
499         * cmake/modules/FindKDEWIN32.cmake: removed obsolate cmake module
500
501 2007-07-18  Havoc Pennington  <hp@redhat.com>
502
503         * dbus/dbus-message.c (dbus_message_get_cached)
504         (dbus_message_cache_or_finalize): don't mess with message from
505         message cache outside of the cache lock. Bug #9164 from Jonathan
506         Matthew.
507
508 2007-07-13  Havoc Pennington  <hp@redhat.com>
509
510         * Add indent-tabs-mode: nil to all file headers.
511
512 2007-07-12  Havoc Pennington  <hp@redhat.com>
513
514         * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): invert the test
515         for parsing hex as double to be sure it fails to work
516
517         * dbus/dbus-sysdeps.c (_dbus_string_parse_double): don't allow hex numbers.
518
519 2007-07-10  Havoc Pennington  <hp@redhat.com>
520
521         * dbus/dbus-connection.c (struct DBusConnection): Fix from Olivier
522         Hochreutiner to avoid trying to protect individual bits in a word
523         with different locks (make dispatch_acquired and io_path_acquired
524         dbus_bool_t rather than bitfields)
525
526 2007-07-09  Ralf Habacker  <ralf.habacker@freenet.de>
527
528         * dbus/dbus-sysdeps-win.c,dbus-sysdeps-win.h,dbus-sysdeps-win-util.c,
529         dbus-sysdeps-spawn-win.c: synced with windbus sources 
530
531 2007-07-07  Ralf Habacker  <ralf.habacker@freenet.de>
532
533         * dbus/dbus-sysdeps-win.c 
534                 (_dbus_getsid): remove unused jump label
535                 (_dbus_read_credentials_socket): _dbus_string_init could fail, 
536                 check initialisation
537                 (_dbus_get_working_dir, _dbus_init_working_dir): remove unused 
538                         functions
539
540 2007-07-04  Ralf Habacker  <ralf.habacker@freenet.de>
541
542         * cmake/modules/FindKDEWIN.cmake: search in <program files dir>\win32libs 
543         for windows supplementary packages too
544
545 2007-06-30  Ralf Habacker  <ralf.habacker@freenet.de>
546
547         * cmake/dbus/CMakeLists.txt: handle userdb as unix file
548
549 2007-06-30  Ralf Habacker  <ralf.habacker@freenet.de>
550
551         * dbus/dbus-sysdeps-win.c,dbus/dbus-sysdeps-win.h: removed obsolate 
552         DBusUserInfo code
553
554 2007-06-30  Ralf Habacker  <ralf.habacker@freenet.de>
555
556         * dbus/dbus-sysdeps-win.c (_dbus_daemon_init): reduced compiler warnings
557
558 2007-06-23  Ralf Habacker  <ralf.habacker@freenet.de>
559
560         * dbus/dbus-auth-script.c (_dbus_auth_script_run): added UNIX_ONLY and 
561         WIN_ONLY commands for auth scripts
562         * test/data/auth/external-root.auth-script: limit execution to unix
563
564 2007-06-21  Havoc Pennington  <hp@redhat.com>
565
566         * dbus/dbus-tranport.c (auth_via_default_rules): made the verbose spam
567         cross-platform
568
569 2007-06-21  Havoc Pennington  <hp@redhat.com>
570
571         * dbus/dbus-watch.c (dbus_watch_get_fd): 1) its behavior should
572         not be the same as before, the ABI has never been declared stable
573         on Windows and 2) do not commit to cross-platform files without
574         posting the exact patch to the mailing list
575         
576         * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): as I have pointed
577         out before, either 0xff needs to work on both platforms, or none
578         of the dbus code can rely on it working. That means the options
579         are 1) audit the code for anywhere that relies on 0xff working, if
580         none found ideally add a test that it *doesn't* work and make unix
581         reject it explicitly, but in any case this test would go away or
582         2) make it work on Windows also, then we don't have to figure out 
583         whether we rely on it.
584
585         And in either case, post the exact patch to the mailing list and
586         don't just commit.
587
588 2007-06-21 Ralf Habacker  <ralf.habacker@freenet.de>
589
590         * cmake/CMakeLists.txt: added VERSION_PATCH to be able to 
591         distinguish win32 binary release from dbus versioning
592
593 2007-06-21 Ralf Habacker  <ralf.habacker@freenet.de>
594
595         * dbus/dbus-sysdeps-win.c: deleted local DBusCredentials structure
596             (_dbus_getsid): new function
597             (_dbus_read_credentials_socket): used correct function
598             (_dbus_append_user_from_current_process, 
599                 _dbus_credentials_add_from_current_process): added real 
600                     sid reading
601             (_dbus_credentials_parse_and_add_desired,_dbus_parse_uid): 
602                 deleted
603
604 2007-06-21 Ralf Habacker  <ralf.habacker@freenet.de>
605
606         * dbus/dbus-sysdeps-util.c (_dbus_sysdeps_test): don't check 
607         0xff as floating point, this isn't supported on win32 math 
608         implementation
609
610 2007-06-21 Ralf Habacker  <ralf.habacker@freenet.de>
611
612         * dbus/dbus-sysdeps-win.c (_dbus_homedir_from_username, 
613         _dbus_homedir_from_current_process, _dbus_append_desired_identity): 
614         removed obsolate functions
615
616 2007-06-21 Ralf Habacker  <ralf.habacker@freenet.de>
617
618         * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-util-win.c, 
619         dbus/dbus-sysdeps-win.h: disabled uid/sid conversation stuff
620         implementation by Peter Kuemmel 
621
622 2007-06-21  Ralf Habacker  <ralf.habacker@freenet.de>
623
624         * dbus/dbus-watch.c (dbus_watch_get_fd): this function is 
625         deprecated and its behavior should be as before until all 
626         client code is migrated. 
627
628 2007-06-19  Ralf Habacker  <ralf.habacker@freenet.de>
629
630         * dbus/dbus-sysdeps-util-win.c, tools/dbus-launch-win.c: 
631         msvc7.1 fixes by Jaroslaw Staniek tested with mingw 
632
633 2007-06-19  Ralf Habacker  <ralf.habacker@freenet.de>
634
635         * dbus/dbus-sysdeps-win.c, dbus/dbus-sysdeps-spawn-win.c, 
636         dbus/dbus-sysdeps-win.h: disabled DBusSocket implementation
637         by Peter Kuemmel 
638
639 2007-06-18  Ralf Habacker  <ralf.habacker@freenet.de>
640
641         * dbus-win.patch: removed obsolate patches
642
643 2007-06-18  Havoc Pennington  <hp@redhat.com>
644
645         * configure.in: bump version to 1.1.2 so CVS is higher than last
646         release (this is not the 1.1.2 release)
647
648 2007-06-18  Havoc Pennington  <hp@redhat.com>
649
650         * Release 1.1.1
651
652 2007-06-18  Havoc Pennington  <hp@redhat.com>
653
654         * doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()
655
656         * bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()
657
658         * bus/bus.c (bus_context_new): generate a unique ID for each bus context
659
660         * dbus/dbus-connection.c (dbus_connection_get_server_id): new function
661
662         * dbus/dbus-bus.c (dbus_bus_get_id): new function
663
664         * dbus/dbus-server.c (dbus_server_get_id): new function
665
666 2007-06-18  Havoc Pennington  <hp@redhat.com>
667
668         * dbus/dbus-sysdeps-unix.c (_dbus_read_credentials_socket): clean
669         this up a little bit, to try and understand why telnet'ing to a
670         server and sending a non-nul byte didn't disconnect immediately;
671         now it seems that it does disconnect immediately as it should,
672         though I don't understand what has changed.
673
674 2007-06-18  Havoc Pennington  <hp@redhat.com>
675
676         * dbus/dbus-watch.c (dbus_watch_get_socket)
677         (dbus_watch_get_unix_fd): new API to match DBusConnection
678         (dbus_watch_get_fd): deprecate this
679
680         Throughout: just s/dbus_watch_get_fd/dbus_watch_get_socket/g for
681         now since all the transports use sockets anyway
682         
683 2007-06-16  Ralf Habacker  <ralf.habacker@freenet.de>
684
685         * dbus/dbus-macros.h, dbus/dbus-message.c, 
686         dbus/dbus-message.h: renamed DBUS_GNUC_DEPRECATED 
687         to DBUS_DEPRECATED and extended to msvc compiler
688
689 2007-06-15  Ralf Habacker  <ralf.habacker@freenet.de>
690
691         * cmake/CMakeLists.txt: use local include header first
692
693         * dbus/dbus-sysdeps-win.c: mingw fix of DBusCredential struct
694
695 2007-06-15  Ralf Habacker  <ralf.habacker@freenet.de>
696
697         * cmake/ConfigureChecks.cmake,cmake/config.h.cmake: 
698         added check for HAVE_ERRNO_H
699
700         * cmake/dbus/CMakeLists.txt: added missing files 
701         
702         * dbus/dbus-transport-win.c/.h: new files
703
704         * dbus/dbus-sysdeps-win.c,.h: added required _unix functions 
705         to make dbus compilable on win32 
706         
707         * dbus/dbus-sysdeps-win-utils.c,.h: moved some functions to 
708         dbus-sysdeps-win.c
709         
710         * dbus-win.patch: removed applied or obsolate patches
711         
712         Note: dbus-win32 is now compilable, no guarantee that it runs 
713         without any problems 
714
715 2007-06-15  Havoc Pennington  <hp@redhat.com>
716
717         * dbus/dbus-sysdeps-unix.c (_dbus_append_session_config_file)
718         (_dbus_append_system_config_file): new functions
719
720         * bus/main.c (main): use _dbus_append_system_config_file() and 
721         _dbus_append_session_config_file()
722
723         * dbus/Makefile.am (INCLUDES): move DBUS_SYSTEM_CONFIG_FILE and
724         DBUS_SESSION_CONFIG_FILE into this makefile
725
726 2007-06-15  Havoc Pennington  <hp@redhat.com>
727
728         * dbus/dbus-sysdeps.c (_dbus_set_errno_to_zero)
729         (_dbus_get_is_errno_nonzero, _dbus_get_is_errno_eintr)
730         (_dbus_strerror_from_errno): family of functions to abstract
731         errno, though these are somewhat bogus (really we should make our
732         socket wrappers not use errno probably - the issue is that any
733         usage of errno that isn't socket-related probably is not
734         cross-platform, so should either be in a unix-only file that can
735         use errno directly, or is a bug - these general errno wrappers
736         hide issues of this nature in non-socket code, while
737         socket-specific API changes would not since sockets are allowed
738         cross-platform)
739
740 2007-06-14  Havoc Pennington  <hp@redhat.com>
741
742         * bus/dispatch.c (check_get_connection_unix_process_id): mop up
743         getpid() (noticed by Peter Kümmel) and adapt the test to 
744         expect a "pid unknown" error when running on Windows.
745
746 2007-06-14  Havoc Pennington  <hp@redhat.com>
747
748         * dbus/dbus-sysdeps-unix.c (_dbus_credentials_parse_and_add_user):
749         delete this function since it was effectively the same as
750         _dbus_credentials_add_from_username()
751
752 2007-06-14  Havoc Pennington  <hp@redhat.com>
753
754         * dbus/dbus-auth.c: adapt to keyring changes
755
756         * dbus/dbus-keyring.c: change to avoid using user ID and home
757         directory directly; instead use a
758         keyring-location-from-credentials function in dbus-sysdeps
759
760         * fix to use _dbus_append_user_from_current_process() instead of 
761         _dbus_username_from_current_process() or _dbus_append_desired_identity().
762         
763 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
764
765         * reverted global rename of function _dbus_username_from_current_process. 
766         It needs too much tests to verify that the change does not break anything. 
767         I had overseen that the signatures are different and requires non
768         trivial changes. 
769         This is one *major* disadvantage of emulating oop functionality with c. 
770         You are responsible for cleaning every object on every function return point
771         which could be a nightmare if you are not working with dbus all the days.
772
773 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
774     
775         * dbus/dbus-auth.c (handle_client_initial_response_cookie_sha1_mech): 
776         fixed usage of _dbus_append_desired_identity()
777
778         * dbus/dbus-sysdeps.h (_dbus_username_from_current_process): removed prototype
779
780 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
781     
782         * dbus/dbus-sysdeps.c: moved global lock system_users from dbus-userdb.c
783
784 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
785     
786         * global rename of function _dbus_username_from_current_process
787         to _dbus_append_desired_identity. 
788         Approved by Havoc Pennington
789
790 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
791
792         * dbus/dbus-sysdeps-win.c: disabled DBusUserInfo related code
793                 (_dbus_append_desired_identity, _dbus_windows_user_is_process_owner):
794                 new win32 functions as counterpart of unix related 
795                 (_dbus_send_credentials_socket,_dbus_read_credentials_socket): 
796                 renamed from ..._unix_socket
797                 (_dbus_send_credentials_unix_socket): removed obsolate function
798         
799         * dbus/dbus-sysdeps-win-util.c: disabled DBusGroupInfo related code
800                 (_dbus_verify_daemon_user,_dbus_change_to_daemon_user): 
801                     new win32 functions as counterpart of unix related
802         
803 2007-06-14  Simon McVittie  <simon.mcvittie@collabora.co.uk>
804
805         * doc/dbus-specification.xml: say the protocol version is 1 instead of
806         0 (patch from Kristoffer Lundén, fd.o#10033) and remove the FIXME
807         about removing protocol version from messages (as per Havoc's comment
808         on that bug)
809
810 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
811
812         * dbus/dbus-sysdeps-win.c (_dbus_pid_for_log,_dbus_flush_caches): 
813         new win32 functions as counterpart of unix related
814
815 2007-06-14  Ralf Habacker  <ralf.habacker@freenet.de>
816         
817         * cmake/modules/FindKDEWIN.cmake,
818           cmake/modules/FindKDEWIN_Packager.cmake, 
819           cmake/modules/Win32Macros.cmake: new files from the 
820           kdewin32 project
821         * cmake/CMakeLists.txt: cleaned support for kdewin installer and 
822           win32 explorer wrapper
823
824 2007-06-13  Havoc Pennington  <hp@redhat.com>
825         
826         * dbus/dbus-message.c (dbus_message_iter_open_container): Fix
827         broken return_if_fail (kind of scary that test suite does not
828         cover this)
829
830 2007-06-13  Havoc Pennington  <hp@redhat.com>
831
832         * dbus/dbus-server-socket.c (_dbus_server_listen_socket): support
833         all_interfaces=true|false for tcp servers
834
835         * dbus/dbus-sysdeps-unix.c (_dbus_listen_tcp_socket): support
836         inaddr_any flag
837
838         * bus/selinux.c: fix some missing includes
839
840         * dbus/dbus-server-socket.c (_dbus_server_listen_socket): allow
841         port to simply be omitted in addition to specifying 0
842
843 2007-06-13  Havoc Pennington  <hp@redhat.com>
844
845         * configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
846         libaudit support, no clue what this means really but now we have
847         it. Patches from Fedora package.
848
849         * bus/bus.c (bus_context_new): move selinux initialization after
850         changing to daemon user, patch from Fedora package
851
852         * dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
853
854 2007-06-12  Havoc Pennington  <hp@redhat.com>
855
856         * dbus/dbus-message.c (dbus_message_iter_open_container): improve
857         the checks/warnings for contained_signature a bit
858
859 2007-06-12  Havoc Pennington  <hp@redhat.com>
860         
861         * dbus/dbus-marshal-recursive.c (write_or_verify_typecode):
862         improve the warning a bit if you write extra data into a message
863
864 2007-06-12  Havoc Pennington  <hp@redhat.com>
865
866         * dbus/dbus-auth.c (sha1_handle_second_client_response)
867         (handle_server_data_anonymous_mech): add the process ID from
868         socket credentials, if available, even if not using EXTERNAL
869
870         * dbus/dbus-transport.c (auth_via_default_rules): support
871         allow_anonymous flag
872
873         * dbus/dbus-connection.c (dbus_connection_get_is_anonymous)
874         (dbus_connection_set_allow_anonymous): new API for controlling
875         anonymous access
876
877 2007-06-09  Havoc Pennington  <hp@redhat.com>
878
879         * dbus/dbus-string.c (_dbus_string_pop_line): fix this not to
880         think an empty line is the end of the file.
881         Also, fix some whitespace.
882
883         * dbus/dbus-string-util.c: add more tests for
884         _dbus_string_pop_line() revealing that it thinks an empty line is
885         the end of the file, which broke dbus-auth-script.c so 
886         it didn't really run the scripts
887
888         * dbus/dbus-auth.c: add ANONYMOUS mechanism
889
890         * dbus/dbus-auth-script.c (_dbus_auth_script_run): fix to detect
891         an empty/no-op auth script; add commands to check that we have or
892         don't have the expected credentials     
893
894 2007-06-09  Havoc Pennington  <hp@redhat.com>
895
896         * bus/policy.c (bus_policy_create_client_policy): gracefully
897         continue if the connection has no unix user - just don't apply 
898         any unix user dependent rules.
899
900         * bus/config-parser.c: remove dbus-userdb.h usage
901
902         * bus/bus.c: remove dbus-userdb.h usage
903
904         * dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
905         support Windows user function; also, fix the logic for checking
906         auth as root in the default auth code (broken in the previous
907         commit)
908
909         * dbus/dbus-connection.c
910         (dbus_connection_set_windows_user_function): new function
911         (dbus_connection_get_windows_user): new function
912
913 2007-06-09  Havoc Pennington  <hp@redhat.com>
914
915         * bus/dispatch.c (check_get_connection_unix_process_id): adapt
916         since sysdeps-unix.h stuff isn't included anymore
917
918         * bus/bus.c (bus_context_new): use more abstract functions to
919         change user, so they can be no-ops on Windows
920
921         * dbus/dbus-credentials.c, dbus/dbus-credentials.h,
922         dbus/dbus-credentials-util.c: new files containing a fully opaque
923         DBusCredentials data type to replace the old not opaque one.
924
925         * configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
926         windows
927
928         * dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
929         up the uses of it in bus/*.c and factor out the parts of 
930         cookie auth that depend on it
931         
932 2007-06-07  Havoc Pennington  <hp@redhat.com>
933
934         * dbus/dbus-message.c: improve some docs related to reading values
935         from a message iter
936
937 2007-06-02  Ralf Habacker  <ralf.habacker@freenet.de>
938
939         * cmake: added cygwin compile support
940
941 2007-06-01  Ralf Habacker  <ralf.habacker@freenet.de>
942
943         * tools/dbus-launch-win.c: new file, replaces script wrapper on win32.
944
945         * cmake/dbus-launch.bat.cmake: removed obsolate file
946
947 2007-05-31  Ralf Habacker  <ralf.habacker@freenet.de>
948
949         * bus/main.c (main): uses _dbus_get_config_file_name() to detect 
950         session.conf location on win32. 
951
952         * dbus-sysdeps-win.h (_dbus_get_config_file_name,_dbus_file_exists): 
953         new prototyp, undefined interface after including windows.h because 
954         it makes trouble when a paramater is named interface.
955
956         * dbus-sysdeps-win.c (_dbus_get_install_root,
957         _dbus_get_config_file_name,_dbus_file_exists):  new functions.
958
959 2007-05-27  Ralf Habacker  <ralf.habacker@freenet.de>
960
961         * bus/policy.c,dbus/dbus-internals.c: fixed inconsistant line endings 
962         as reported by Peter Kümmel.
963
964 2007-05-25  John (J5) Palmieri  <johnp@redhat.com>
965
966         * Released 1.1.0
967
968 2007-05-25  John (J5) Palmieri  <johnp@redhat.com>
969
970         * Split NEWS and ChangeLog into a .pre-1-0 file as per HACKING
971         We forgot to do this during the 1.0 release and it makes sense
972         now as we get ready to release the first 1.1.0 development tarball
973
974 2007-05-25  John (J5) Palmieri  <johnp@redhat.com>
975
976         * create directory test/data/valid-config-files/session.d so that
977         make check passes
978
979 2007-05-25  John (J5) Palmieri  <johnp@redhat.com>
980
981         * INSTALL: remove dependancies for bindings since they no longer
982         are a part of core
983
984 2007-05-25  Ralf Habacker  <ralf.habacker@freenet.de>
985
986         * dbus/dbus-server-win.c,dbus/dbus-server-win.h: new file 
987         with empty function _dbus_server_listen_platform_specific(). 
988
989         * dbus/dbus-server.c (listen_funcs): uses 
990         _dbus_server_listen_platform_specific on any platform.
991
992 2007-05-25  Ralf Habacker  <ralf.habacker@freenet.de>
993
994         * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not getting 
995         user info from a domain controller isn't an error, the computer 
996         may run in a non domain context. 
997
998 2007-05-25  Ralf Habacker  <ralf.habacker@freenet.de>
999
1000         * dbus/dbus-sysdeps-win.c (_dbus_full_duplex_pipe): fixed assertation.
1001
1002 2007-05-24  Simon McVittie  <simon.mcvittie@collabora.co.uk>
1003
1004         * bus/config-parser.c (test_service_dir_matches): fixed ordering for unix.
1005
1006         * bus/config-parser.c (test_default_session_servicedirs): made allocation 
1007         of _progs platform independent.
1008
1009 2007-05-23  Havoc Pennington  <hp@redhat.com>
1010
1011         * bus/Makefile.am (install-data-hook): create session.d
1012
1013         * bus/session.conf.in: add session.d for the session bus, so
1014         security policy can be extended
1015
1016 2007-05-22 Ralf.Habacker <ralf.habacker@freenet.de>
1017
1018         * cmake/CMakeLists.txt: fixed creating of TEST_..._BINARY to make 
1019         bus-test able to find the binaries.
1020
1021 2007-05-21 Simon McVittie  <simon.mcvittie@collabora.co.uk>
1022
1023         * acinclude.m4, configure.in: In recent autotools, ${datadir} is
1024         defined in terms of ${datarootdir}, so EXPANDED_DATADIR needs to be
1025         expanded recursively. Rather than fixing configure.in to do this, I
1026         grabbed the AS_AC_EXPAND macro from autostars.sf.net, which seems to be
1027         commonly used.
1028
1029 2007-05-21 Simon McVittie  <simon.mcvittie@collabora.co.uk>
1030
1031         * update-dbus-docs.sh: Assorted improvements:
1032         - Default user if $FDUSER is not set is the ssh default
1033           (set in ~/.ssh/config or based on the local username), not a
1034           hard-coded "johnp"
1035         - Temporary checkout directory is created securely (preventing symlink
1036           attacks), if mktemp(1) is available
1037         - Use make -C rather than cd && make && cd ..
1038
1039 2007-05-21 Simon McVittie  <simon.mcvittie@collabora.co.uk>
1040
1041         * HACKING: Point to correct mailing list
1042
1043 2007-05-21 Simon McVittie  <simon.mcvittie@collabora.co.uk>
1044
1045         * doc/dbus-specification.xml: explicitly specify that STRING cannot
1046         contain embedded NULs.
1047
1048 2007-05-20 Ralf.Habacker  <ralf.habacker@freenet.de>
1049
1050         * dbus/dbus-internal.c: fix inline problem on win32.
1051
1052 2007-05-20 Ralf.Habacker  <ralf.habacker@freenet.de>
1053
1054         * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir): not reaching 
1055         domain controller isn't an error, converted error message to verbose 
1056         message.
1057
1058 2007-05-19 Ralf.Habacker  <ralf.habacker@freenet.de>
1059
1060         * dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): disabled 
1061         tests not running on wince.
1062
1063 2007-05-19 Ralf.Habacker  <ralf.habacker@freenet.de>
1064
1065         * dbus/dbus-internals.c (_dbus_verbose_init): win32 requires 'varname=' 
1066         to unset a environment variable. 
1067
1068 2007-05-19 Ralf.Habacker  <ralf.habacker@freenet.de>
1069
1070         * dbus/dbus-sysdeps.c (_dbus_setenv): win32 requires 'varname=' 
1071         to unset a environment variable. 
1072
1073 2007-05-19 Ralf.Habacker  <ralf.habacker@freenet.de>
1074
1075         * bus/policy.c (bus_policy_create_client_policy): 
1076         win32 temporary fix until the userdb stuff is ported completly.
1077
1078 2007-05-19  Ralf.Habacker  <ralf.habacker@freenet.de>
1079
1080         * dbus/dbus-server.c (listen_funcs): 
1081         _dbus_server_listen_platform_specific is empty on win32, 
1082         limited to unix only.
1083
1084         * dbus/dbus-server.c (valid_addresses): limit unix 
1085         only addresses to unix. 
1086
1087 2007-05-18  Havoc Pennington  <hp@redhat.com>
1088
1089         * doc/dbus-specification.xml: add a GetAll to the Properties
1090         interface.
1091
1092 2007-05-17 Ralf.Habacker  <ralf.habacker@freenet.de>
1093  
1094         * bus\config-parser.c (test_default_session_servicedirs):
1095         win32 fix.
1096
1097 2007-05-17 Ralf.Habacker  <ralf.habacker@freenet.de>
1098  
1099         * configure.in: define constant DBUS_UNIX.
1100
1101 2007-05-14  Ralf Habacker <ralf.habacker@freenet.de>
1102
1103         * dbus/dbus-sysdeps-win.c (_dbus_printf_string_upper_bound):
1104         compile fix for MS Platform SDK 6 
1105         patch from Michael Luschas <mluschas@gmail.com>
1106
1107 2007-05-10  John (J5) Palmieri <johnp@redhat.com>
1108
1109         * dbus-1.pc.in: add daemondir to pc file
1110         patch from Brian Cameron <brian.cameron at sun.com>
1111
1112 2007-05-04  Simon McVittie <simon.mcvittie@collabora.co.uk>
1113
1114         * doc/dbus-specification.xml: mention the reserved o.fd.DBus.Local
1115         interface and the corresponding /o/fd/DBus/Local object path;
1116         describe them as reserved and forbid using them in a sent message,
1117         mentioning that in the reference implementation this will cause the
1118         connection to be dropped. Patch approved by Havoc.
1119
1120 2007-04-28  Ralf Habacker <ralf.habacker@freenet.de>
1121
1122         * cmake/: don't install test applications and service files,
1123         moved CMAKE_DEBUG_POSTFIX to top level CMakeLists.txt
1124
1125 2007-04-27  Havoc Pennington  <hp@redhat.com>
1126
1127         * dbus/dbus-sysdeps-unix.c (_dbus_open_socket): fix #10781 from
1128         Tobias Nygren, checking pointer to fd vs. 0 rather than checking
1129         the fd itself
1130
1131 2007-04-26 Ralf Habacker  <ralf.habacker@freenet.de>
1132
1133         * cmake/: added debug postfixes to debug exe's for 
1134         easier debugging.
1135         * dbus\dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error): 
1136         print error code in case no string message is available.
1137
1138 2007-04-06 Simon McVittie <simon.mcvittie@collabora.co.uk>
1139
1140         * dbus/dbus-message-util.c, dbus/dbus-message.c,
1141         dbus/dbus-message.h: Add API to convert a DBusMessage to/from a
1142         byte array. Patch from Dafydd Harries <dafydd.harries@collabora.co.uk>,
1143         approved by Havoc Pennington.
1144
1145 2007-04-03  Timo Hoenig  <thoenig@suse.de>
1146
1147         * dbus/dbus-address.c (dbus_parse_address): Do not accept zero-
1148           length address.
1149         * dbus/dbus-address.c (_dbus_address_test): Add test for zero-
1150           length address.
1151
1152 2007-03-25 Ralf.Habacker  <ralf.habacker@freenet.de>
1153
1154         * cmake/dbus/CMakeLists.txt: debug postfix also for mingw.
1155
1156 2007-03-16 Ralf.Habacker  <ralf.habacker@freenet.de>
1157
1158         * cmake/modules/FindExpat.cmake: fix package detection on win32.
1159
1160         * README.win: update install instructions. 
1161
1162 2007-03-16 Ralf.Habacker  <ralf.habacker@freenet.de>
1163
1164         * dbus/dbus-sysdeps.h (_dbus_split_paths_and_append):
1165         new prototyp
1166         (_DBUS_PATH_SEPARATOR): new macro. 
1167
1168         * dbus/dbus-sysdeps.c (_dbus_split_paths_and_append): merged 
1169         from dbus/dbus-sysdeps-unix.c and dbus/dbus-sysdeps-win.c. 
1170
1171 2007-03-15 Ralf.Habacker  <ralf.habacker@freenet.de>
1172
1173         * bus/config-parser.c, bus/policy.c,  
1174         bus/policy.h, bus/dbus-daemon.1.in,
1175         bus/session.conf.in: added eavesdrop support 
1176         for replies - patch by olli.salli at collabora.co.uk
1177         approved by Havoc Pennington. 
1178
1179 2007-03-15 Ralf.Habacker  <ralf.habacker@freenet.de>
1180
1181         * dbus\dbus-sysdeps-win-thread.c: renamed to 
1182         dbus-sysdeps-thread-win.c, it is a platform depending file 
1183         similar to dbus-sysdeps-pthread.c.
1184
1185 2007-03-15 Ralf.Habacker  <ralf.habacker@freenet.de>
1186
1187         * cmake\doc\CMakeLists.txt: added prelimary xml doc 
1188         support, needs cmake Find script.
1189
1190 2007-03-14 Ralf.Habacker  <ralf.habacker@freenet.de>
1191
1192         * cmake: add doxygen support
1193
1194 2007-03-14  Ralf.Habacker  <ralf.habacker@freenet.de>
1195
1196         * cmake/config.h.cmake: WINCE fixes, defined DBUS_UNIX.
1197
1198 2007-03-13  Ralf.Habacker  <ralf.habacker@freenet.de>
1199
1200         * dbus/dbus-sysdeps-util-win.c (dbus_become_daemon): 
1201         win32 compile fix. 
1202
1203 2007-03-13  Ralf.Habacker  <ralf.habacker@freenet.de>
1204
1205         * dbus-win.patch: removed obsolate patches. 
1206
1207 2007-03-13  Ralf.Habacker  <ralf.habacker@freenet.de>
1208
1209         * dbus/dbus-sysdeps-win.c: added zero byte sending 
1210         and receiving after connection start up
1211
1212 2007-03-11  Havoc Pennington  <hp@redhat.com>
1213
1214         * tools/dbus-launch.c (do_close_stderr): fix C89 problem and
1215         formatting problem
1216
1217         * Mostly fix the DBusPipe mess.
1218         - put line break after function return types
1219         - put space before parens
1220         - do not pass structs around by value
1221         - don't use dbus_strerror after calling supposedly cross-platform
1222         api
1223         - don't name pipe variables "fd"
1224         - abstract special fd numbers like -1 and 1
1225
1226 2007-03-12  Ralf Habacker  <ralf.habacker@freenet.de>
1227
1228         * dbus/dbus-sysdeps-win.h, dbus/dbus-sysdeps-win.c, 
1229         dbus/dbus-sysdeps-util-win.c: renamed functions 
1230         _dbus_xxx_file() to _dbus_file_xxx() to reflect 
1231         struct name DBusFile. 
1232
1233 2007-03-12  Ralf Habacker  <ralf.habacker@freenet.de>
1234
1235         * dbus/dbus-sysdeps-util-unix.c (_dbus_become_daemon):
1236         fix _dbus_pid_fd check. 
1237
1238 2007-03-10  Ralf Habacker  <ralf.habacker@freenet.de>
1239
1240         * tools/dbus-print-message.c (print_message):
1241         added printing of the reply serial to method returns and 
1242         errors, so you can actually figure out the message/reply 
1243         pairs - patch by olli.salli at collabora.co.uk.
1244
1245 2007-03-10  Ralf Habacker  <ralf.habacker@freenet.de>
1246
1247         * dbus-win.patch: removed committed patches. 
1248
1249 2007-03-10  Ralf Habacker  <ralf.habacker@freenet.de>
1250
1251         * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c,
1252         dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c,
1253         dbus/dbus-sysdeps-util-win.c, dbus/dbus-sysdeps-win.c,
1254         dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx,
1255         completed _dbus_pipe support. 
1256
1257 2007-03-10  Ralf Habacker  <ralf.habacker@freenet.de>
1258
1259         * dbus/dbus-sysdeps.h (_dbus_listen_tcp_socket):
1260         changed type or port to pointer, because the port is given back.
1261
1262         * dbus/dbus-server-socket.c (_dbus_server_new_for_tcp_socket):
1263         implemented returning tcp port. Skipping port parameter
1264         and non integer port values in config <listen> statement
1265         needs more effort.
1266
1267         * dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-win.c
1268         (_dbus_listen_tcp_socket): return the real used tcp port.
1269
1270         * bus/dbus-daemon.1.in: added <listen> tcp examples
1271
1272 2007-03-09  Ralf Habacker  <ralf.habacker@freenet.de>
1273
1274         * cmake/config.h.cmake: win32 msvc bug fix
1275
1276 2007-03-09  Ralf Habacker  <ralf.habacker@freenet.de>
1277
1278         * cmake/config.h.cmake: fixed DBUS_WINxx defines,
1279         using _WINCE does not work.
1280
1281 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1282
1283         * dbus-win.patch: removed _dbus_write_pipe() patch, it is now 
1284         committed.
1285
1286 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1287
1288         * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h:
1289         rename pipe related write() function calls to _dbus_write_pipe().
1290
1291 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1292
1293         * dbus-win.patch: added bus/config-loader-libexpat.c patch, 
1294         uses DBUS_WIN for alls win32 related #ifdefs, 
1295         some minor cleanups
1296
1297 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1298
1299         * dbus-win.patch: updated patch for bus/dispatch.c.
1300
1301 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1302
1303         * dbus-win.patch: dbus-connection.c (dbus_connection_get_unix_user,
1304         dbus_connection_get_unix_process_id): Let return them valid user id's, 
1305         otherwise bus-test fails. How to replace on win32 ?.
1306         
1307         * dbus/dbus-sysdeps-win.c (fill_win_user_info_homedir):
1308         fix memory leak.
1309
1310 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1311
1312         * dbus/dbus-sysdeps-win.c (_dbus_win_set_error_from_win_error):
1313         use dbus friendly error name.
1314         (fill_win_user_info_homedir): print user name in error case too.
1315
1316 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1317
1318         * cmake/ConfigureChecks.cmake: fixed socketpair check
1319
1320 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1321
1322         * bus/dispatch.c: disabled segfault test on win32 for now
1323
1324 2007-03-08  Ralf Habacker  <ralf.habacker@freenet.de>
1325
1326         * configure.in, cmake/ConfigureChecks.cmake: added check 
1327         for setrlimit. 
1328         * test/test-segfault.c: only include setrlimit stuff only 
1329         when available.  
1330
1331 2007-03-07  Ralf Habacker  <ralf.habacker@freenet.de>
1332
1333         * test/test-segfault.c: unix compile fix.
1334         * dbus-win.patch: removed obsolate patches.
1335
1336 2007-03-07  Ralf Habacker  <ralf.habacker@freenet.de>
1337
1338         * bus/activation.c: removed obsolate include header.
1339         * test/test-segfault.c: win32 compile fix, rlimit 
1340         isn't available on win32.
1341         * dbus-win.patch: removed some more patches, they
1342         are applied or obsolate 
1343
1344 2007-03-06  Ralf Habacker  <ralf.habacker@freenet.de>
1345
1346         * bus-win.patch: fixes unix listen problems, dbus-test 
1347         now runs.
1348
1349 2007-03-06  Ralf Habacker  <ralf.habacker@freenet.de>
1350
1351         * cmake/dbus/CMakeLists.txt,cmake/bus/CMakeLists.txt,
1352         cmake/CMakeLists.txt: win32 compile fix
1353
1354 2007-03-04  Ralf Habacker  <ralf.habacker@freenet.de>
1355
1356         * dbus-win.patch, README.win: added available win32 
1357         patches from windbus project (http://sf.net/projects/windbus)
1358
1359 2007-03-04  Ralf Habacker  <ralf.habacker@freenet.de>
1360
1361         * bus/activation.c: (bus_activation_activate_service):
1362         fixed call to _dbus_spawn_async_with_babysitter().
1363
1364 2007-03-04  Ralf Habacker  <ralf.habacker@freenet.de>
1365
1366         * dbus/dbus-spawn.c,dbus/dbus-spawn.h (_dbus_spawn_async_with_babysitter):
1367         added environment pointer as function parameter, used on win32.
1368
1369         * test/spawn-test.c: fixed call to above mentioned function.
1370
1371 2007-03-04  Ralf Habacker  <ralf.habacker@freenet.de>
1372
1373         * configure.in,test/test-sleep-forever.c,test/test-names.c: 
1374         added configure check for unistd.h.
1375
1376 2007-03-04  Ralf Habacker  <ralf.habacker@freenet.de>
1377
1378         * test/Makefile.am: fixed test data copy problem in 
1379         out of source build, when sources came from svn or cvs. 
1380
1381 2007-03-03  Ralf Habacker  <ralf.habacker@freenet.de>
1382
1383         * dbus/*-win.*,bus/*-win.*: added win32 platform related
1384         files. These files are only added to the cmake build system.  
1385         The missing dbus-win.patch file will be added later. 
1386
1387 2007-03-03  Ralf Habacker  <ralf.habacker@freenet.de>
1388
1389         * cmake: new directory, contains cmake build support.
1390         See http://www.cmake.org for more informations.
1391         Currently only unix will be buildable because some 
1392         win32 required files are still missing. 
1393
1394 2007-03-03  Thiago Macieira  <thiago@kde.org>
1395
1396         * dbus/dbus-sysdeps-unix.c: capture the dbus-launch stderr
1397         output and add it to the DBusError message we return.
1398
1399         * tools/dbus-launch.1:
1400         * tools/dbus-launch.c: Add option --close-stderr to, well,
1401         close stderr before starting dbus-daemon.
1402
1403 2007-01-31  Havoc Pennington  <hp@redhat.com>
1404
1405         * bus/dbus-daemon.1.in: write a section in the man page on running
1406         a test daemon for debugging purposes
1407
1408 2007-01-26  Havoc Pennington  <hp@redhat.com>
1409
1410         * bus/session.conf.in: override all the default limits with much
1411         higher limits on the session bus, there is no reason the session
1412         bus should have low limits
1413
1414         * bus/config-parser.c (bus_config_parser_new): increase default
1415         limits so they are less likely to be hit; in particular the max
1416         replies per connection was way too low
1417
1418 2006-01-25  Simon McVittie  <simon.mcvittie@collabora.co.uk>
1419
1420         * doc/dbus-tutorial.xml: Replace Python section of tutorial with
1421         a pointer to the tutorial maintained as part of dbus-python
1422
1423 2006-12-31  Ralf Habacker  <ralf.habacker@freenet.de>
1424
1425         * dbus/dbus-sysdeps-unix.c: unix compile fix, moved 
1426         atomic_exchange_and_add() from dbus/dbus-sysdeps.c 
1427         to here, it's used by _dbus_atomic_inc() and _dbus_atomic_dec().
1428
1429 2006-12-31  Ralf Habacker  <ralf.habacker@freenet.de>
1430
1431         * tools/dbus-monitor.c: gettimeofday() is not available 
1432         on windows so we have to provide our own. It's taken from 
1433         lgpl'd kdewin32 package. - Patches from Christian Ehrlicher
1434
1435 2006-12-31  Ralf Habacker  <ralf.habacker@freenet.de>
1436
1437         * dbus/dbus-sysdeps-unix.c: moved _dbus_atomic_inc/dec() 
1438         from dbus/dbus-sysdeps.c, windows version of _dbus_atomic_inc/dec() 
1439         is in dbus-sysdeps-win.c (not in this patch).
1440
1441         * dbus/dbus-sysdeps.h: DBusAtomic::value is long on windows to fit 
1442         with InterlockedInc/Decrement. 
1443         - Patches from Christian Ehrlicher
1444         
1445 2006-12-31  Ralf Habacker  <ralf.habacker@freenet.de>
1446
1447         * tools/dbus-send.c, tools/dbus-monitor.c: win32 compile fix.
1448
1449 2006-12-31  Ralf Habacker  <ralf.habacker@freenet.de>
1450
1451         * dbus/dbus-marshal-recursive.c (type DBusTypeReaderClass):
1452         fix mispaced const statement. - Patch from Peter Kümmel
1453
1454 2006-12-19  Ray Strode  <rstrode@redhat.com>
1455
1456         * bus/bus.c (process_config_every_time):
1457         don't overwrite existing bus context activation object
1458         until after we've checked that the new activation is
1459         valid.
1460
1461         * bus/main.c 
1462         (signal_handler), (handle_reload_watch):
1463         don't call exit() on failure, instead make do and keep
1464         going.
1465         (close_reload_pipe): new function to turn off
1466         hangup-causes-config-reload behavior if an unexpected
1467         error occurs
1468
1469 2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
1470
1471         * dbus/dbus-sysdeps-win-thread.c (_dbus_condvar_wait_win32):
1472         correctness fix. - Patch from Christian Ehrlicher
1473
1474 2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
1475
1476         * dbus/dbus-internals.h: msvc also knows about __FUNCTION__, 
1477         we should also use it. - Patch from Christian Ehrlicher
1478
1479 2006-12-13  Ralf Habacker  <ralf.habacker@freenet.de>
1480   
1481         * dbus-sysdeps-util.c: added win32 related tests
1482
1483 2006-12-12  Ralf Habacker  <ralf.habacker@freenet.de>
1484
1485         * dbus/dbus-string.c (_dbus_string_pop_line),
1486         bus/desktop-file.c (parse_section_start,
1487         parse_comment_or_blank,parse_key_value,): uses
1488         _dbus_string_find_eol() to support platform independent eol style.
1489
1490 2006-12-12  Ralf Habacker  <ralf.habacker@freenet.de>
1491
1492         * dbus/dbus-string.[ch] (_dbus_string_find_eol): new function. 
1493         * dbus/dbus-string-util.c (_dbus_string_test): added testcases for 
1494               _dbus_string_find_eol().
1495         Approved by: Havoc Pennington.
1496
1497 2006-12-12  Tim Dijkstra <tim@famdijkstra.org>
1498
1499         * configure.in: Added switch to disable user_database caching.
1500
1501         * dbus/dbus-userdb-util.c, dbus/dbus-userdb.c: Add ifdefs to
1502         be able disable user_dabase caching.
1503
1504 2006-12-12  Tim Dijkstra <tim@famdijkstra.org>
1505
1506         * bus/bus.c, bus/bus.h: Remove DBusUserDatabase from the BusContext 
1507         struct. It is unnecessary we have a global one already. Also remove 
1508         bus_context_get_user_database function, it is no longer needed.
1509         Flush the global database on reload.
1510
1511         * dbus/dbus-userdb-util.c: Replace _dbus_user_database_get_groups 
1512         with _dbus_groups_from_uid. It no longer needs a DBusUserDatabase.
1513
1514         * dbus/dbus-userdb.c, dbus/dbus-userdb.h: 
1515         Add _dbus_user_database_flush_system. 
1516         Make more functions DBUS_USERDB_INCLUDES_PRIVATE. 
1517         Small unrelated change in _dbus_is_a_number: change 
1518         _dbus_string_parse_int to _dbus_string_parse_uint. 
1519
1520         * bus/connection.c: Change call to _dbus_user_database_get_groups to 
1521         _dbus_groups_from_uid.
1522
1523         * bus/policy.c, bus/policy.h: Change call to 
1524         _dbus_user_database_get_groups to _dbus_groups_from_uid. Remove 
1525         DBusUserDatabase from bus_policy_allow_user prototype, it no longer 
1526         needs it.
1527
1528 2006-12-12  John (J5) Palmieri  <johnp@redhat.com>
1529
1530         * bus/signal.c: Fix match_rule_equal errata
1531         (CVE-2006-6107 - Patch from Kimmo Hämäläinen 
1532         <kimmo.hamalainen@nokia.com>)
1533
1534 2006-11-19  Thiago Macieira  <thiago@kde.org>
1535
1536         * dbus/dbus-sysdeps-pthread.c (_dbus_pthread_mutex_lock,
1537         _dbus_pthread_condvar_wait,
1538         _dbus_pthread_condvar_wait_timeout): set pmutex->holder to
1539         pthread_self() after coming back from a conditional variable
1540         wait as well as in one codepath where it was forgotten.
1541         Approved by: Havoc Pennington.
1542
1543 2006-11-17  Havoc Pennington  <hp@redhat.com>
1544
1545         * update-dbus-docs.sh: allow setting fd.org username via env
1546         variable. Make it run autogen with --enable-xml-docs=yes
1547         --enable-doxygen-docs=yes so configure will fail if the required
1548         tools are missing.
1549
1550 2006-11-17  Havoc Pennington  <hp@redhat.com>
1551
1552         * doc/dbus-faq.xml: minor FAQ tweaks
1553
1554 2006-11-14  Havoc Pennington  <hp@redhat.com>
1555         
1556         * dbus/dbus-misc.c, dbus/dbus-misc.h: Move
1557         dbus_get_local_machine_id() to its own file, no substantive
1558         changes. There are a couple other things we might want to add that
1559         are "misc" so moving out of dbus-connection.[hc] which is big
1560         enough already.
1561         
1562 2006-11-14  Havoc Pennington  <hp@redhat.com>
1563
1564         * dbus/dbus-internals.c (_dbus_generate_uuid): The spec said the
1565         UUID had the timestamp last, but the implementation had it first;
1566         move it to last since I think it's a tiny bit nicer (easier to
1567         compare at a glance, faster to sort, less code), and will not
1568         cause any practical compatibility problems. Also, always convert
1569         the timestamp to big endian.
1570
1571         * doc/dbus-specification.xml: Clean up the docs on the UUID.
1572
1573         * tools/dbus-uuidgen.1: more prominently say it is not suitable
1574         as a replacement for regular uuidgen/RFC4122.
1575
1576 2006-11-14  John (J5) Palmieri  <johnp@redhat.com>
1577
1578         * dbus/dbus-threads.h: fix DBUS_THREAD_FUNCTIONS_ALL_MASK to have
1579         the correct value so we don't assert when initalizing recursive threads
1580
1581         * test/name-test/test-thread-init.c: call dbus_threads_init_default
1582         instead of _dbus_threads_init_debug since it is more of a real world
1583         test
1584