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