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