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