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