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