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