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