History log of /external/dbus/bus/bus.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
28c78cdf3df937d1cd72e3c358f7afa129a8cdab 21-Oct-2010 Jaikumar Ganesh <jaikumar@google.com> Upgrade to version 1.4.0 and make it compile on Android.

Change-Id: I63dd55d9284e3384635262f2dde3e686a815c3da
/external/dbus/bus/bus.c
3100d06aa6965f2eaa3f8f393817d0a4858c5329 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution

Change-Id: I0ab320d198c700993f361d7d3d5b46a33a708fc9
/external/dbus/bus/bus.c
401503681370c68c194a849f76f58b3a0b529bb0 10-Aug-2010 Ralf Habacker <ralf.habacker@freenet.de> Fixed wince build problem reported by aheinecke at intevation dot de.
/external/dbus/bus/bus.c
0e31935343644bb3eba77e2a1f4699ead3b33625 09-Aug-2010 Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Delete stale pid file on cygwin.
/external/dbus/bus/bus.c
b3ed8675a4eba35c6a7f43a86a89f706ffe07f84 02-Jun-2010 Lennart Poettering <lennart@poettering.net> activation: optionally, use systemd for system bus activation
/external/dbus/bus/bus.c
921bc585ca44b02684d368058a8df8300342dcd0 25-May-2010 Lennart Poettering <lennart@poettering.net> bus: add --address switch

This is allows overriding of the listening address on the command line,
which is particularly useful for systemd socket-based activation.
/external/dbus/bus/bus.c
df89cfeb3808acc213c9620db6988611a34207c5 22-Mar-2010 Colin Walters <walters@verbum.org> Merge branch 'dbus-1.2'

Conflicts:
bus/dispatch.c
configure.in
test/name-test/test-names.c
03bb3ce656e9b14fe643572dd0d39f82e955f1f5 22-Mar-2010 Colin Walters <walters@verbum.org> Add DBUS_GNUC_PRINTF checks to new formatting functions

Otherwise we don't get GCC warnings.
/external/dbus/bus/bus.c
c4371e4bc8a561cf91516d22f00c9512dc7e8e53 21-Mar-2010 Colin Walters <walters@verbum.org> [bus] While creating a syslog, correctly get pointer data from DBusString
/external/dbus/bus/bus.c
dbecdeabb20e0ce11121819c63373f0afba57c58 19-Mar-2010 Marcus Brinkmann <marcus.brinkmann@ruhr-uni-bochum.de> Consistently include <config.h> in all C source files and never in header files.
/external/dbus/bus/bus.c
ebfa7c02fd67777684d39389e25346819836dcca 16-Mar-2010 Colin Walters <walters@verbum.org> Merge branch 'dbus-1.2'

Conflicts:
bus/bus.c
configure.in
ce34415302af586ea6ca9b0da4b21a7025041ef7 15-Mar-2010 Colin Walters <walters@verbum.org> Make SELinux initialization failure fatal

https://bugzilla.redhat.com/show_bug.cgi?id=572769

Previously we'd just continue if AVC initialization failed, but
that didn't really work because then we'd later crash in
avc_has_perm.

Simply treat initialization failures as fatal, and hopefully we
can get data from the system log.
/external/dbus/bus/bus.c
f00c816c270ad5c01810231e1ed6bd54b1ab9652 16-Mar-2010 Colin Walters <walters@verbum.org> Add a prefix to our syslog messages

Previously we were simply logging as "dbus", and it was unclear
whether it was the system bus, or a session bus. And if the latter,
which user?

This patch adds a prefix to the log message with the bus type
and the userid.
/external/dbus/bus/bus.c
04cf3166002a86b9a22851be4e243c87b5b3048d 15-Mar-2010 Colin Walters <walters@verbum.org> Refactor _dbus_log_info, _dbus_log_security into _dbus_log_system

In preparation for a future patch which introduces a fatal logging level,
don't duplicate the API here.
/external/dbus/bus/bus.c
e1c31c73074513d96fa22b5c0355107c42720597 22-Feb-2010 Colin Walters <walters@verbum.org> Merge branch 'dbus-1.2'

Conflicts:
bus/bus.c
bus/selinux.c
configure.in
9c90fcd2dc4b1b7d818a35ef43d4686052902f59 18-Feb-2010 Colin Walters <walters@verbum.org> Monitor service directories for changes

It's not expected to have to manually SIGHUP the bus after installing
a new .service file. Since our directory monitoring is already set
up to queue a full reload which includes service activation, simply
monitor the servicedirs too.

https://bugs.freedesktop.org/show_bug.cgi?id=23846
/external/dbus/bus/bus.c
7bc27d1e844561ae8db065ae7e47d2a9e150d524 02-Feb-2010 Colin Walters <walters@verbum.org> Fix inotify shutdown

We were incorrectly passing NULL for a DBusList when the usage expected
is a pointer to a NULL DBusList pointer. Also during dbus_shutdown
we need to actually close the inotify fd, and remove our watch.

Move the shutdown handler out of bus.c and into inotify where we
can do all of this cleanly.
(cherry picked from commit 90fe96b1875350f86a4a773d4a0a22009950dd4d)
/external/dbus/bus/bus.c
90fe96b1875350f86a4a773d4a0a22009950dd4d 02-Feb-2010 Colin Walters <walters@verbum.org> Fix inotify shutdown

We were incorrectly passing NULL for a DBusList when the usage expected
is a pointer to a NULL DBusList pointer. Also during dbus_shutdown
we need to actually close the inotify fd, and remove our watch.

Move the shutdown handler out of bus.c and into inotify where we
can do all of this cleanly.
/external/dbus/bus/bus.c
6db588b8544e117241a3be2c595dfc8fdcdc8f59 01-Feb-2010 Colin Walters <walters@verbum.org> Merge branch 'my-dbus-1.2'
8a9880ffd2b81df38bb0e3492bda7a9636ac0280 28-Jan-2010 Colin Walters <walters@verbum.org> Clean up inotify watch handling

Substantially based on a patch by Matthias Clasen <mclasen@redhat.com>
kqueue implementation by Joe Marcus Clarke <marcus@freebsd.org>

Previously, when we detected a configuration change (which included
the set of config directories to monitor for changes), we would
simply drop all watches, then readd them.

The problem with this is that it introduced a race condition where
we might not be watching one of the config directories for changes.

Rather than dropping and readding, change the OS-dependent monitoring
API to simply take a new set of directories to monitor. Implicit
in this is that the OS-specific layer needs to keep track of the
previously monitored set.
/external/dbus/bus/bus.c
7a4cd46284dd634c165b5c4eb23606b7c0ff4ade 28-Jan-2010 Colin Walters <walters@verbum.org> Merge branch 'my-dbus-1.2'

Conflicts:
bus/Makefile.am
dbus/dbus-sysdeps-util-unix.c
dbus/dbus-transport.c
test/test-service.c
b93476ce07acce83ff3b396616bb8a0eaf719916 28-Jan-2010 Colin Walters <walters@verbum.org> Don't drop pending activations when reloading configuration

The reload handling for activation simply dropped all knowledge
of pending activations, which was clearly wrong. Refactor things
so that reload only reloads directories, server address etc.

Based on a patch originally from Matthias Clasen <mclasen@redhat.com>
/external/dbus/bus/bus.c
8343c971cdedfda6107b0f4f73210d88f64507c6 18-Dec-2009 Matthias Clasen <mclasen@redhat.com> Bug 25697 - Fix memory leak in policy reload

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
37019e9d271390fa8c62c1aae62d30bb9068adaa 16-Jul-2009 Thiago Macieira <thiago@kde.org> Merge branch 'fd-passing'

Conflicts:
dbus/dbus-connection.c
dbus/dbus-message-util.c
dbus/dbus-sysdeps-unix.c
dc33f4f7749ed303374ebdf00e48ea8a471afd25 11-Jul-2009 Tobias Mueller <fdo-bugs@cryptobitch.de> Bug 21161 - Update the FSF address

No comment.

Signed-off-by: Colin Walters <walters@verbum.org>
(cherry picked from commit 5baf2f856a9c6625993234855b07680da1c8916f)
/external/dbus/bus/bus.c
5baf2f856a9c6625993234855b07680da1c8916f 11-Jul-2009 Tobias Mueller <fdo-bugs@cryptobitch.de> Bug 21161 - Update the FSF address

No comment.

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
64ad8449679c53fefd20baea88fa593f226d59b0 20-May-2009 Lennart Poettering <lennart@poettering.net> bus: make use of new unix fd limits

Create configuration settings and enforce message unix fd limits the
same way we do for allocated message memory.
/external/dbus/bus/bus.c
1f3bcd241e5a54fa4ad8b515893783323eff6feb 01-Oct-2008 James Carter <jwcart2@tycho.nsa.gov> Initialize AVC earlier so we can look up service security contexts

* bus/bus.c: Initialize AVC earlier:
http://lists.freedesktop.org/archives/dbus/2008-October/010493.html

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
6663d1dd35f94717209cd6fca86045bca853ef79 10-Nov-2008 Matt McCutchen <matt@mattmccutchen.net> Bug 18446: Keep umask for session bus

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
788e592b32c71c3570fe9034cf3041acadc83f9d 18-Dec-2008 Colin Walters <walters@verbum.org> Add requested_reply to send denials, and connection loginfo to "would deny"

The requested_reply field is necessary in send denials too because
it's used in the policy language. The connection loginfo lack in
"would deny" was just an oversight.
/external/dbus/bus/bus.c
9a1657e8e1c0106bb5f1411fe9ea3c4ef6ec826f 17-Dec-2008 Colin Walters <walters@verbum.org> Add uid, pid, and command to security logs

Extend the current security logs with even more relevant
information than just the message content. This requires
some utility code to look up and cache (as a string)
the data such as the uid/pid/command when a connection is
authenticated.
/external/dbus/bus/bus.c
3af94cf25081502b6b55ff291e350f2685eef526 18-Dec-2008 Colin Walters <walters@verbum.org> Add requested_reply to send denials, and connection loginfo to "would deny"

The requested_reply field is necessary in send denials too because
it's used in the policy language. The connection loginfo lack in
"would deny" was just an oversight.
/external/dbus/bus/bus.c
e6bbcbd903f9989cf9fe69ca4efa807848a6c11c 17-Dec-2008 Colin Walters <walters@verbum.org> Add uid, pid, and command to security logs

Extend the current security logs with even more relevant
information than just the message content. This requires
some utility code to look up and cache (as a string)
the data such as the uid/pid/command when a connection is
authenticated.
/external/dbus/bus/bus.c
427ff01f9d656700b370bb905fe738e76602a842 16-Dec-2008 Colin Walters <walters@verbum.org> Add optional logging on allow rules

This lets us have a backwards compatibility allow rule but still easily
see when that rule is being used.
/external/dbus/bus/bus.c
6053d2208e85d1a685df385620eff45895211b0c 16-Dec-2008 Colin Walters <walters@verbum.org> Add optional logging on allow rules

This lets us have a backwards compatibility allow rule but still easily
see when that rule is being used.
/external/dbus/bus/bus.c
8cbe86da9089901c574387e4032f0858e8249c79 12-Dec-2008 Colin Walters <walters@verbum.org> Add message type to security syslog entries

It's part of the security check, we should have it in the log.
/external/dbus/bus/bus.c
b45440148a81d3efc0ed1a670f6e498de129bc62 12-Dec-2008 Colin Walters <walters@verbum.org> Add message type to security syslog entries

It's part of the security check, we should have it in the log.
/external/dbus/bus/bus.c
69ed32cbccbec9d613447cb64e9d7b1ffa11ce3c 10-Dec-2008 Colin Walters <walters@verbum.org> Add syslog of security denials and configuration file reloads

We need to start logging denials so that they become more easily trackable
and debuggable.
/external/dbus/bus/bus.c
bb2a464067c6843320f367b590b0e4cb00225e50 10-Dec-2008 Colin Walters <walters@verbum.org> Add syslog of security denials and configuration file reloads

We need to start logging denials so that they become more easily trackable
and debuggable.
/external/dbus/bus/bus.c
07a4ad4b04702fc384b324e5f902a5b2279b0c25 12-Nov-2008 Dennis Kaarsemaker <dennis@kaarsemaker.net> Bug 15393 - support allow_anonymous config variable

* bus/bus.c: Set allow_anonymous if specified from
parser.
* bus/config-parser.c: Parse it.
* bus/config-parser-common.h: Declare it.

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
0314e701c812565bd7bdac548cadfea5d310d66c 10-Nov-2008 Matt McCutchen <matt@mattmccutchen.net> Bug 18446: Keep umask for session bus
Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
0b17cee84d832b5df7c85a5e5b587fa5cd333964 01-Oct-2008 James Carter <jwcart2@tycho.nsa.gov> Initialize AVC earlier so we can look up service security contexts

* bus/bus.c: Initialize AVC earlier:
http://lists.freedesktop.org/archives/dbus/2008-October/010493.html

Signed-off-by: Colin Walters <walters@verbum.org>
/external/dbus/bus/bus.c
4cc2bfa10e1a840e0da34a588f719779cc284a79 15-Jan-2008 John (J5) Palmieri <johnp@redhat.com> check failed allocation (FDO Bug #12920)

2008-01-15 John (J5) Palmieri <johnp@redhat.com>

* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>

* bus/bus.c (setup_server): check failed allocation (FDO Bug #12920)
/external/dbus/bus/bus.c
9db435926fb82409caa2b5a7139781a95f105a63 15-Jan-2008 John (J5) Palmieri <johnp@redhat.com> rewrite selinux error handling to not abort due to a NULL read

2008-01-15 John (J5) Palmieri <johnp@redhat.com>

* bus/bus.c (bus_context_check_security_policy): rewrite selinux error
handling to not abort due to a NULL read and to set the error only if
it is not already set (Based off of FDO Bug #12430)
/external/dbus/bus/bus.c
5340b8de0b537380e0c445495300739d75abeb2f 23-Oct-2007 Havoc Pennington <hp@localhost.localdomain> audit_init() was not declared in header, causing warnings; fix this and namespace it

2007-10-23 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_new): use the new name here

* bus/selinux.c (bus_selinux_audit_init): rename from audit_init()
to avoid possible libc conflict, and declare it in .h file to
avoid a warning
/external/dbus/bus/bus.c
a8e32b6874cf4d6c2954d60e676562282bfce4ea 19-Oct-2007 Havoc Pennington <hp@localhost.localdomain> add HAVE_SELINUX around call to audit_init() so things build without selinux

2007-10-19 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_new): put audit_init() in HAVE_SELINUX
/external/dbus/bus/bus.c
53f6713976f4b82841f11c37e450c93bd700bde9 19-Oct-2007 Havoc Pennington <hp@localhost.localdomain> do not call audit_init() from bus/ directory from files in dbus/

2007-10-19 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_new): put the audit_init() in here
instead, which I believe ends up being the same as where it was
before, though I'm not sure I understand why it goes here.

* dbus/dbus-sysdeps-util-unix.c (_dbus_change_to_daemon_user):
remove audit_init() from here, this file can't depend on code in
bus/ directory
/external/dbus/bus/bus.c
163555c7ab56132ee27e3e7d9a26eb985682c1b5 17-Aug-2007 Havoc Pennington <hp@redhat.com> 2007-08-17 Havoc Pennington <hp@redhat.com>

* tools/dbus-launch-x11.c (set_address_in_x11): fix from Michael
Lorenz to use long not int with XChangeProperty format 32

* dbus/dbus-sysdeps-util-unix.c
(_dbus_write_pid_to_file_and_pipe): factor this out, and use the
same code in _dbus_become_daemon (where the parent writes the pid
file and to the pid pipe) and in bus_context_new (where the daemon
writes its own pid file and to its own pid pipe)

* bus/bus.c (bus_context_new): close the pid pipe after we print
to it. Also, don't write the pid to the pipe twice when we fork,
someone reported this bug a long time ago.
/external/dbus/bus/bus.c
79d3004e26f490ef37ae0298495ea66f322ce374 25-Jul-2007 Havoc Pennington <hp@redhat.com> 2007-07-24 Havoc Pennington <hp@redhat.com>

* configure.in: add AM_PROG_CC_C_O to allow per-target CPPFLAGS

* bus/dispatch.c (bus_dispatch_test_conf): Fix up setting
TEST_LAUNCH_HELPER_CONFIG to include the full path, and enable
test shell_fail_service_auto_start when use_launcher==TRUE

* bus/activation-helper-bin.c (convert_error_to_exit_code): pass
through the INVALID_ARGS error so the test suite works

* bus/activation.c (handle_activation_exit_error): return
DBUS_ERROR_NO_MEMORY if we get BUS_SPAWN_EXIT_CODE_NO_MEMORY

* dbus/dbus-spawn.c (_dbus_babysitter_get_child_exit_status):
return only the exit code of the child, not the entire thingy from
waitpid(), and make the return value indicate whether the child
exited normally (with a status code)

* bus/bus.c (process_config_first_time_only): _dbus_strdup works
on NULL so no need to check
(process_config_every_time): move servicehelper init here, so we
reload it on HUP or config file change

* bus/Makefile.am (install-data-hook): remove comment because
Emacs make mode seems to be grumpy about it
/external/dbus/bus/bus.c
6ceffb591878e3a806d340ab07fbb12a2f74e79f 24-Jul-2007 Richard Hughes <richard@hughsie.com> 2007-07-24 Richard Hughes <richard@hughsie.com>

* bus/bus.c: (process_config_first_time_only),
(process_config_every_time), (bus_context_unref),
(bus_context_get_servicehelper):
* bus/bus.h:
Add the concept of a service-helper and allow it's value to be read.
/external/dbus/bus/bus.c
d012387afef0ba02185ebe27bc6bb15551912e92 14-Jul-2007 Havoc Pennington <hp@redhat.com> 2007-07-13 Havoc Pennington <hp@redhat.com>

* Add indent-tabs-mode: nil to all file headers.
/external/dbus/bus/bus.c
54b943432c7c947db88066751dd36a372cc9a618 18-Jun-2007 Havoc Pennington <hp@redhat.com> 2007-06-18 Havoc Pennington <hp@redhat.com>

* doc/dbus-specification.xml: document org.freedesktop.DBus.GetId()

* bus/driver.c (bus_driver_handle_get_id): implement org.freedesktop.DBus.GetId()

* bus/bus.c (bus_context_new): generate a unique ID for each bus context

* dbus/dbus-connection.c (dbus_connection_get_server_id): new function

* dbus/dbus-bus.c (dbus_bus_get_id): new function

* dbus/dbus-server.c (dbus_server_get_id): new function
/external/dbus/bus/bus.c
e3d30a03225dd1d26012ecd39b09e4ccf91befb5 13-Jun-2007 Havoc Pennington <hp@redhat.com> 2007-06-13 Havoc Pennington <hp@redhat.com>

* configure.ac, bus/selinux.c, dbus/dbus-sysdeps-unix-util.c: add
libaudit support, no clue what this means really but now we have
it. Patches from Fedora package.

* bus/bus.c (bus_context_new): move selinux initialization after
changing to daemon user, patch from Fedora package

* dbus/dbus-transport.c (auth_via_unix_user_function): fix a typo
/external/dbus/bus/bus.c
7be5fd95cdccdca28937804f32ca8b1308887d09 10-Jun-2007 Havoc Pennington <hp@redhat.com> 2007-06-09 Havoc Pennington <hp@redhat.com>

* bus/policy.c (bus_policy_create_client_policy): gracefully
continue if the connection has no unix user - just don't apply
any unix user dependent rules.

* bus/config-parser.c: remove dbus-userdb.h usage

* bus/bus.c: remove dbus-userdb.h usage

* dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
support Windows user function; also, fix the logic for checking
auth as root in the default auth code (broken in the previous
commit)

* dbus/dbus-connection.c
(dbus_connection_set_windows_user_function): new function
(dbus_connection_get_windows_user): new function
/external/dbus/bus/bus.c
23832672266bb4ff23b66247c0cfa1a2ed0cc97b 09-Jun-2007 Havoc Pennington <hp@redhat.com> 2007-06-09 Havoc Pennington <hp@redhat.com>

* bus/dispatch.c (check_get_connection_unix_process_id): adapt
since sysdeps-unix.h stuff isn't included anymore

* bus/bus.c (bus_context_new): use more abstract functions to
change user, so they can be no-ops on Windows

* dbus/dbus-credentials.c, dbus/dbus-credentials.h,
dbus/dbus-credentials-util.c: new files containing a fully opaque
DBusCredentials data type to replace the old not opaque one.

* configure.in (DBUS_UNIX): define DBUS_UNIX to match DBUS_WIN on
windows

* dbus/dbus-userdb.h: prohibit on Windows, next step is to clean
up the uses of it in bus/*.c and factor out the parts of
cookie auth that depend on it
/external/dbus/bus/bus.c
9362aac398e3f2ec680e30c61ebfcb1e407eff72 12-Mar-2007 Havoc Pennington <hp@redhat.com> 2007-03-11 Havoc Pennington <hp@redhat.com>

* tools/dbus-launch.c (do_close_stderr): fix C89 problem and
formatting problem

* Mostly fix the DBusPipe mess.
- put line break after function return types
- put space before parens
- do not pass structs around by value
- don't use dbus_strerror after calling supposedly cross-platform
api
- don't name pipe variables "fd"
- abstract special fd numbers like -1 and 1
/external/dbus/bus/bus.c
47e318a6e1893069e1326945ce1af25ddf8201d1 10-Mar-2007 Ralf Habacker <ralf.habacker@freenet.de> * bus/bus.c, bus/bus.h, bus/main.c, bus/test.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps-util-unix.c, dbus/dbus-sysdeps-util-win.c, bus/dbus-sysdeps-win.c,dbus/dbus-sysdeps.h: renamed _dbus_xxx_pipe to _dbus_pipe_xxx, completed _dbus_pipe support.
/external/dbus/bus/bus.c
ee51364bd71b0867f708950332b2f0fd3bf77088 08-Mar-2007 Ralf Habacker <ralf.habacker@freenet.de> * bus/bus.c, dbus/dbus-sysdeps-unix.c, dbus/dbus-sysdeps.h: rename pipe related write() function calls to _dbus_write_pipe().
/external/dbus/bus/bus.c
5d77d1503e61339a971b099b8a4d24ffc502045b 20-Dec-2006 Ray Strode <rstrode@redhat.com> 2006-12-19 Ray Strode <rstrode@redhat.com>

* bus/bus.c (process_config_every_time):
don't overwrite existing bus context activation object
until after we've checked that the new activation is
valid.

* bus/main.c
(signal_handler), (handle_reload_watch):
don't call exit() on failure, instead make do and keep
going.
(close_reload_pipe): new function to turn off
hangup-causes-config-reload behavior if an unexpected
error occurs
/external/dbus/bus/bus.c
145fb99b6e0351d92ffd2f85be77b426c89df59b 12-Dec-2006 Tim Dijkstra <tim@famdijkstra.org> commit.msg
/external/dbus/bus/bus.c
4c31ea9ee25282cf329e4b46eaa0454fd8a8256d 06-Nov-2006 John (J5) Palmieri <johnp@redhat.com> * bus/bus.c: Missed patch - pass in the context to the directory watch
/external/dbus/bus/bus.c
08079a5bdedd6ec91cda413983e4bd3b6ee0252d 16-Sep-2006 Havoc Pennington <hp@redhat.com> 2006-09-16 Havoc Pennington <hp@redhat.com>

* dbus/dbus-sysdeps-unix.h: small change to Peter's patch to make
dbus-sysdeps-unix-util.c build, add unix-specific sysdeps header.

* dbus/dbus-sysdeps.h, dbus-sysdeps-unix.c: patch from Peter
Kümmel bug #8249 to make the sysdeps.h read/write/open/close
functions specifically for sockets only, and move generic
read/write/open/close into unix-specific code.
/external/dbus/bus/bus.c
79b1e9966434bc3ca4b6009c19c77b91e7588180 18-Aug-2006 John (J5) Palmieri <johnp@redhat.com> * Released 0.92

* dbus/dbus-threads.c (dbus_threads_init): change the documentation
to reflect the init late change

* bus/bus.c (bus_context_new): Check user before we fork so we can
print out an error message a user will be able to see
/external/dbus/bus/bus.c
10b79991cc13b8b9347c19db840e50d6f5ede4fb 09-Aug-2006 John (J5) Palmieri <johnp@redhat.com> * missing semicolon
/external/dbus/bus/bus.c
9a3145b9f3cb0d7d570230aaa6193f87e3bea604 09-Aug-2006 John (J5) Palmieri <johnp@redhat.com> These are all patches from Kjartan Maraas <kmaraas at gnome dot org>
with cleanups of bugs found from Coverity reports:

* dbus/dbus-sysdeps-util.c (_dbus_write_pid_file):
close the file on error to avoid a leak

* bus/expirelist.c (bus_expire_list_test):
Check for NULL on dbus_new0

* bus/activation.c (update_directory):
remove dead code

* bus/config-parser.c (merge_service_context_hash, start_selinux_child):
Fix some leaks

* bus/bus.c (process_config_every_time):
Fixed a leak

* bus/desktop-file.c (parse_key_value):
Fixed leak

* bus/selinux.c (bus_selinux_id_table_insert):
Fixed leak
/external/dbus/bus/bus.c
d062db4c27d7937ca0fb5367cb5a467554d47ee8 07-Jun-2006 John (J5) Palmieri <johnp@redhat.com> * bus/bus.c: Fix eavesdropping on method calls
/external/dbus/bus/bus.c
caf220015ba1afd9dfca2a93cfa5208058041610 06-Mar-2006 Sjoerd Simons <sjoerd@luon.net> * bus/bus.c: (bus_context_reload_config): Flush the user database cache on
config reload.
* bus/dbus-daemon.1.in: Also note that SIGHUP flushes the user/group
information caches
* dbus/dbus-hash.c: (_dbus_hash_table_remove_all):
* dbus/dbus-hash.h: Add function to remove all entries from a hash table
* dbus/dbus-userdb.c: (_dbus_user_database_flush):
* dbus/dbus-userdb.h: Add function to flush all user/group information
caches.
/external/dbus/bus/bus.c
5e948ff7cdc7e3023d53d06ad35c85be304f36c9 14-Nov-2005 David Zeuthen <davidz@redhat.com> 2005-11-14 David Zeuthen <davidz@redhat.com>

Patch from Timo Hoenig <thoenig@suse.de>.

* bus/bus.c: I've recently investigated why the automatic reload
of configuration files does not work as expected.

Currently, reloading configuration files does only work when
running dbus-daemon with --nodaemon. If we are running as daemon
we're hitting a dnotify bug once we fork the process.

We're initializing the dnotify fds before calling fork(). Once
the child process forked it does still have the fds (and they
still show up in /proc/`pidof dbus-daemon`/fd/) but we're not
getting SIGIO as changes are made to the configuration files.

The attached patch moves the initialization of the dnotify fds to
process_config_postinit(). This is safe for all current code
paths and solves the dnotify disfunction. If we're running
dbus-daemon as daemon the fds for dnotify are now being
initialized after fork() for the child process.

* configure.in: The current configure.in check for dnotify probes
'x$target_os' for being 'xlinux-gnu'. I've changed the check to
match for 'xlinux', too. Additionally I have adapted the configure
option's style to match with the others.
/external/dbus/bus/bus.c
6b2af67ae1c675eda69bd0995f5e694591160ec5 16-Jun-2005 Colin Walters <walters@verbum.org> 2005-06-16 Colin Walters <walters@verbum.org>

* bus/bus.c (bus_context_new): Set parser to NULL
after we unref it (Patch from Chris Boscolo, #2174).
/external/dbus/bus/bus.c
1d19fc62e9034cc5700c0903f68787a84f485315 15-Jun-2005 David Zeuthen <davidz@redhat.com> 2005-06-14 David Zeuthen <davidz@redhat.com>

* bus/bus.c (process_config_every_time): Drop existing conf-dir
watches (if applicable) and add new watches

* bus/main.c (signal_handler): Handle SIGIO if using D_NOTIFY
(main): Setup SIGIO signal handler if using D_NOTIFY

* bus/config-parser.h: Add prototype bus_config_parser_get_conf_dirs

* bus/config-parser.c (struct BusConfigParser): Add conf_dirs list
(merge_included): Also merge conf_dirs list
(bus_config_parser_unref): Clear conf_dirs list
(include_dir): Add directory to conf_dirs list
(bus_config_parser_get_conf_dirs): New function

* bus/dir-watch.[ch]: New files

* bus/Makefile.am (BUS_SOURCES): Add dir-watch.[ch]

* configure.in: Add checks for D_NOTIFY on Linux
/external/dbus/bus/bus.c
11fd3b965f9c8dc062913d82d6a2cf73b6ba0bda 02-Jun-2005 John (J5) Palmieri <johnp@redhat.com> * dbus/dbus-connection.c, dbus/dbus-connection.h
(dbus_connection_disconnect): renamed to dbus_connection_close
for API symmetry with dbus_connection_open
(_dbus_connection_open_internal):
s/dbus_connection_disconnect/dbus_connection_close

* dbus/dbus-bus.c (dbus_bus_get):
s/dbus_connection_disconnect/dbus_connection_close

* bus/connection.c (bus_connections_unref,
bus_connections_setup_connection, bus_connections_expire_incomplete):
s/dbus_connection_disconnect/dbus_connection_close

* bus/dispatch.c (bus_dispatch, kill_client_connection,
kill_client_connection_unchecked, check_hello_connection):
s/dbus_connection_disconnect/dbus_connection_close

* bus/bus.c (new_connection_callback):
s/dbus_connection_disconnect/dbus_connection_close
/external/dbus/bus/bus.c
44656f538f69e8f8709ddb6ab285db29f65f62dd 13-Apr-2005 David Zeuthen <davidz@redhat.com> 2005-04-13 David Zeuthen <davidz@redhat.com>

* bus/selinux.c: Add c-file-style to top of file
(log_audit_callback): Don't free the data here anymore
(bus_selinux_check): Don't take spid and tpid since appending
that to auxdata may OOM.
(bus_selinux_allows_acquire_service): Handle OOM and signal back
to the caller if we are OOM by taking an error object.
(bus_selinux_allows_send): -do-

* bus/selinux.h: Fix prototypes for bus_selinux_allows_acquire_service
and bus_selinux_allows_send

* bus/bus.c (bus_context_check_security_policy): Pass error and
pass on OOM thrown by bus_selinux_allows_send()

* bus/services.c (bus_registry_acquire_service): Pass error and
pass on OOM thrown by bus_selinux_allows_acquire_service()
/external/dbus/bus/bus.c
248895207dc15914ac7970a6d1431308075dca1d 17-Feb-2005 Colin Walters <walters@verbum.org> 2005-02-17 Colin Walters <walters@verbum.org>

* dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_DBUS):
Rename to DBUS_SERVICE_DBUS.
(DBUS_PATH_ORG_FREEDESKTOP_DBUS): Rename to DBUS_PATH_DBUS.
(DBUS_PATH_ORG_FREEDESKTOP_LOCAL): Rename to DBUS_PATH_LOCAL.
(DBUS_INTERFACE_ORG_FREEDESKTOP_DBUS): Rename to DBUS_INTERFACE_DBUS.
(DBUS_INTERFACE_ORG_FREEDESKTOP_INTROSPECTABLE): Rename to
DBUS_INTERFACE_INTROSPECTABLE.
(DBUS_INTERFACE_ORG_FREEDESKTOP_PROPERTIES): Rename to
DBUS_INTERFACE_PROPERTIES.
(DBUS_INTERFACE_ORG_FREEDESKTOP_PEER): Rename to
DBUS_INTERFACE_PEER.
(DBUS_INTERFACE_ORG_FREEDESKTOP_LOCAL):
DBUS_INTERFACE_LOCAL.

All other users of those constants have been changed.

* bus/driver.c (bus_driver_handle_introspect): Use constants.

* glib/dbus-gobject.c (handle_introspect): Use constants.

* doc/dbus-faq.xml, doc/dbus-specification.xml: Update for rename.
/external/dbus/bus/bus.c
935a41a04c3f638134fa905503fc41ddbd18902f 09-Nov-2004 Colin Walters <walters@verbum.org> 2004-11-09 Colin Walters <walters@verbum.org>

* dbus/dbus-string.c (_dbus_string_get_length): New
function, writes DBusString to C buffer.

* dbus/dbus-string.h: Prototype it.

* dbus/dbus-message.c (dbus_message_type_to_string): New
function, converts message type into C string.

* dbus/dbus-message.h: Prototype it.

* bus/selinux.c (bus_selinux_check): Take source pid,
target pid, and audit data. Pass audit data to
avc_has_perm.
(log_audit_callback): New function, appends extra
audit information.
(bus_selinux_allows_acquire_service): Also take
service name, add it to audit data.
(bus_selinux_allows_send): Also take message
type, interface, method member, error name,
and destination, and add them to audit data.
(log_cb): Initialize func_audit.

* bus/selinux.h (bus_selinux_allows_acquire_service)
(bus_selinux_allows_send): Update prototypes

* bus/services.c (bus_registry_acquire_service): Pass
service name to bus_selinux_allows_acquire_service.

* bus/bus.c (bus_context_check_security_policy): Pass
additional audit data. Move assignment of dest
to its own line.
/external/dbus/bus/bus.c
cdac3e058b922431f387351fd8ebf60a764485d1 07-Nov-2004 Colin Walters <walters@verbum.org> 2004-11-07 Colin Walters <walters@verbum.org>

* bus/bus.c (load_config): Break into three
separate functions: process_config_first_time_only,
process_config_every_time, and process_config_postinit.
(process_config_every_time): Move call of
bus_registry_set_service_context_table into
process_config_postinit.
(process_config_postinit): New function, does
any processing that needs to happen late
in initialization (and also on reload).
(bus_context_new): Instead of calling load_config,
open config parser here and call process_config_first_time_only
and process_config_every_time directly. Later, after
we have forked but before changing UID,
invoke bus_selinux_full_init, and then call
process_config_postinit.
(bus_context_reload_config): As in bus_context_new,
load parse file inside here, and call process_config_every_time
and process_config_postinit.

* bus/services.h, bus/services.c
(bus_registry_set_service_context_table): Rename
from bus_registry_set_sid_table. Take string hash from config
parser, and convert them here into SIDs.

* bus/config-parser.c (struct BusConfigParser): Have
config parser only store a mapping of service->context
string.
(merge_service_context_hash): New function.
(merge_included): Merge context string hashes instead
of using bus_selinux_id_table_union.
(bus_config_parser_new): Don't use bus_selinux_id_table_new;
simply create a new string hash.
(bus_config_parser_unref): Unref it.
(start_selinux_child): Simply insert strings into hash,
don't call bus_selinux_id_table_copy_over.

* bus/selinux.h, bus/selinux.c (bus_selinux_id_table_union)
(bus_selinux_id_table_copy_over): Delete.
/external/dbus/bus/bus.c
e430788a6bfb50c628825cdf6e09476e41dc1a78 29-Oct-2004 Colin Walters <walters@verbum.org> 2004-10-29 Colin Walters <walters@redhat.com>

* dbus/dbus-sysdeps.h (_dbus_become_daemon): Also take
parameter for fd to write pid to.

* dbus/dbus-sysdeps.c (_dbus_become_daemon): Implement it.

* bus/bus.c (bus_context_new): Pass print_pid_fd
to _dbus_become_daemon (bug #1720)
/external/dbus/bus/bus.c
a24270a451c4ac7f8018bdd909a8f762e6abe80c 12-Sep-2004 David Zeuthen <davidz@redhat.com> 2004-09-12 David Zeuthen <david@fubar.dk>

Patch from Kay Sievers <kay.sievers@vrfy.org>

* bus/bus.c (bus_context_new):
* bus/bus.h:
* bus/main.c (usage)
(main):
Add commandline option --nofork to override configuration file
setting.
/external/dbus/bus/bus.c
eb37885909180e7e4c25e5337bec385082174dbd 10-Aug-2004 Olivier Andrieu <oliv__a@users.sourceforge.net> * bus/bus.c (process_config_first_time_only): get rid of an unused
DBusError that was causing a memoy leak (bug #989).

* dbus/dbus-keyring.c, dbus/dbus-message.c: fix compilation on
Solaris/Forte C (bug #974)

* bus/main.c (main): plug two minuscule memleaks.
/external/dbus/bus/bus.c
43605a6f4e78a8c28afb4b1e924dff0301e0e95c 10-Aug-2004 Havoc Pennington <hp@redhat.com> 2004-08-09 Havoc Pennington <hp@redhat.com>

* COPYING: switch to Academic Free License version 2.1 instead of
2.0, to resolve complaints about patent termination clause.
/external/dbus/bus/bus.c
1e9b185b0c274ef0d684b1e43418388225321e72 30-Jul-2004 Havoc Pennington <hp@redhat.com> 2004-07-24 Havoc Pennington <hp@redhat.com>

SELinux support from Matthew Rickard <mjricka@epoch.ncsc.mil>

* bus/selinux.c, bus/selinux.h: new file encapsulating selinux
functionality

* configure.in: add --enable-selinux

* bus/policy.c (bus_policy_merge): add FIXME to a comment

* bus/main.c (main): initialize and shut down selinux

* bus/connection.c: store SELinux ID on each connection, to avoid
repeated getting of the string context and converting it into
an ID

* bus/bus.c (bus_context_get_policy): new accessor, though it
isn't used
(bus_context_check_security_policy): check whether the security
context of sender connection can send to the security context of
recipient connection

* bus/config-parser.c: add parsing for <selinux> and <associate>

* dbus/dbus-transport.c (_dbus_transport_get_unix_fd): to
implement dbus_connection_get_unix_fd()

* dbus/dbus-connection.c (dbus_connection_get_unix_fd): new
function, used by the selinux stuff
/external/dbus/bus/bus.c
7c77664c5a38d44b14044286e7e5aa7def858889 29-May-2004 Havoc Pennington <hp@redhat.com> 2004-05-29 Havoc Pennington <hp@redhat.com>

* bus/config-parser.c (process_test_valid_subdir): temporarily
stop testing config parser OOM handling, since expat has issues
http://freedesktop.org/pipermail/dbus/2004-May/001153.html

* bus/dbus-daemon-1.1.in: change requested_reply to
send_requested_reply/receive_requested_reply so we can send the
replies, not just receive them.

* bus/config-parser.c: parse the new
send_requested_reply/receive_requested_reply

* bus/policy.c (bus_client_policy_check_can_send): add
requested_reply argument and use it

* bus/bus.c (bus_context_check_security_policy): pass through
requested_reply status to message send check

* bus/system.conf.in: adapt to requested_reply change
/external/dbus/bus/bus.c
dd8b1b1d654c983ccc040b59143a11f239de0726 21-Apr-2004 Olivier Andrieu <oliv__a@users.sourceforge.net> * dbus/dbus-message.c (decode_header_data, decode_string_field):
fix incorrect setting of .name_offset in the HeaderField (it was
off by two bytes, positioned right after the name and typecode)

* bus/bus.c (bus_context_new, bus_context_unref): test before
calling dbus_server_free_data_slot and _dbus_user_database_unref
in case of an error.

* tools/Makefile.am: add $(DBUS_GLIB_TOOL_LIBS), xml libs needed
by libdbus-gtool.
/external/dbus/bus/bus.c
600e411f25082bcf82d610a4c71b0dc3435b5a42 16-Apr-2004 Jon Trowbridge <trow@ximian.com> 2004-04-15 Jon Trowbridge <trow@ximian.com>

* bus/main.c (signal_handler): Reload the configuration files
on SIGHUP.
(main): Set up our SIGHUP handler.

* bus/bus.c (struct BusContext): Store the config file, user and
fork flag in the BusContext.
(process_config_first_time_only): Added. Contains the code
(previously in bus_context_new) for setting up the BusContext from
the BusConfigParser that should only be run the first time the
config files are read.
(process_config_every_time): Added. Contains the code (previously
in bus_context_new) for setting up the BusContext from the
BusConfigParser that should be run every time the config files are
read.
(load_config): Added. Builds a BusConfigParser from the config
files and passes the resulting structure off to
process_config_first_time_only (assuming this is the first time)
and process_config_every_time.
(bus_context_new): All of the config-related code has been moved
to process_config_first_time_only and process_config_every_time.
Now this function just does the non-config-related initializations
and calls load_config.
(bus_context_reload_config): Added.
/external/dbus/bus/bus.c
e039be5838a6befdb4a378fcdc1fc2e7606d4222 09-Apr-2004 Jon Trowbridge <trow@ximian.com> 2004-04-09 Jon Trowbridge <trow@ximian.com>

* bus/config-parser.c (bus_config_parser_new): Added a 'parent'
argument. If non-null, the newly-constructed BusConfigParser will
be initialized with the parent's BusLimits instead of the default
values.
(include_file): When including a config file, pass in
the current parser as the parent and then copy the BusLimits
from the included BusConfigParser pack to the current parser.
(process_test_valid_subdir): Renamed from process_test_subdir.
(process_test_equiv_subdir): Added. Walks through a directory,
descending into each subdirectory and loading the config files
it finds there. If any subdirectory contains two config files
that don't produce identical BusConfigParser structs, fail.
For now, the BusConfigParser's BusPolicies are not compared.
(bus_config_parser_test): Call both process_test_valid_subdir and
process_test_equiv_subdir.

* bus/config-loader-libxml.c (bus_config_load): Take a parent
argument and pass it along to the call to bus_config_parser_new.
Also made a few small changes to allow this code to compile.

* bus/config-loader-expat.c (bus_config_load): Take a parent
argument and pass it along to the call to bus_config_parser_new.

* bus/bus.c (bus_context_new): Load the config file
with a NULL parent argument.
/external/dbus/bus/bus.c
a1df3040f29223eddaa3ace0fe018fcb28cddcd9 02-Dec-2003 Richard Hult <richard@imendio.com> 2003-12-02 Richard Hult <richard@imendio.com>

* Update AFL version to 2.0 throughout the source files to reflect
the update that was done a while ago.
/external/dbus/bus/bus.c
9f1a60dbba69844c0a04b3dd86280352736187ce 27-Nov-2003 Mikael Hallendal <micke@imendio.com> 2003-11-26 Mikael Hallendal <micke@imendio.com>

* bus/*.[ch]:
* dbus/*.[ch]:
* glib/*.[ch]: Made ref functions return the pointer
/external/dbus/bus/bus.c
eb9aa9da9564f2df788580394e67ae6105e517fb 22-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-22 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_check_security_policy): fix up assertion

* bus/connection.c (bus_transaction_send_from_driver): set the
destination to the connection's base service
/external/dbus/bus/bus.c
75742242000e782719bc1656f0a7da72b059e88e 21-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-20 Havoc Pennington <hp@redhat.com>

hmm, make check is currently not passing.

* doc/dbus-specification.xml: add requirement that custom type
names follow the same rules as interface names.

* dbus/dbus-protocol.h: change some of the byte codes, to avoid
duplication and allow 'c' to be 'custom'; dict is now 'm' for
'map'

* doc/dbus-specification.xml: update type codes to match
dbus-protocol.h, using the ASCII byte values. Rename type NAMED to
CUSTOM. Add type OBJECT_PATH to the spec.

2003-10-17 Havoc Pennington <hp@redhat.com>

* bus/driver.c (create_unique_client_name): use "." as separator
in base service names instead of '-'

* dbus/dbus-string.c (_dbus_string_get_byte): allow getting nul
byte at the end of the string

* dbus/dbus-internals.h (_DBUS_LIKELY, _DBUS_UNLIKELY): add
optimization macros since string validation seems to be a slow
point.

* doc/dbus-specification.xml: restrict valid
service/interface/member/error names. Add test suite code for the
name validation.

* dbus/dbus-string.c: limit service/interface/member/error names
to [0-9][A-Z][a-z]_

* dbus/dbus-connection.c (dbus_connection_dispatch): add missing
format arg to verbose spew

* glib/dbus-gproxy.c (dbus_gproxy_call_no_reply): if not out of
memory, return instead of g_error

* test/test-service.c (path_message_func): support emitting a
signal on request

* dbus/dbus-bus.c (init_connections_unlocked): only fill in
activation bus type if DBUS_BUS_ACTIVATION was set; default to
assuming the activation bus was the session bus so that services
started manually will still register.
(init_connections_unlocked): fix so that in OOM situation we get
the same semantics when retrying the function

* test/test-service.c (main): change to use path registration, to
test those codepaths; register with DBUS_BUS_ACTIVATION rather
than DBUS_BUS_SESSION
/external/dbus/bus/bus.c
c20c4181f275f24413eeff2ea85d2a0d539c9a91 16-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-16 Havoc Pennington <hp@redhat.com>

* bus/bus.c (struct BusContext): remove struct field I didn't mean
to put there
/external/dbus/bus/bus.c
d6e1b2adb3d8e51ce1bb47295cef12d9fe1a15a8 16-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-16 Havoc Pennington <hp@redhat.com>

* bus/connection.c (bus_pending_reply_expired): either cancel or
execute, not both
(bus_connections_check_reply): use unlink, not remove_link, as we
don't want to free the link; fixes double free mess

* dbus/dbus-pending-call.c (dbus_pending_call_block): fix in case
where no reply was received

* dbus/dbus-connection.c (_dbus_pending_call_complete_and_unlock):
fix a refcount leak

* bus/signals.c (match_rule_matches): add special cases for the
bus driver, so you can match on sender/destination for it.

* dbus/dbus-sysdeps.c (_dbus_abort): print backtrace if
DBUS_PRINT_BACKTRACE is set

* dbus/dbus-internals.c: add pid to assertion failure messages

* dbus/dbus-connection.c: add message type code to the debug spew

* glib/dbus-gproxy.c (gproxy_get_match_rule): match rules want
sender=foo not service=foo

* dbus/dbus-bus.c (dbus_bus_get): if the activation bus is the
session bus but DBUS_SESSION_BUS_ADDRESS isn't set, use
DBUS_ACTIVATION_ADDRESS instead

* bus/activation.c: set DBUS_SESSION_BUS_ADDRESS,
DBUS_SYSTEM_BUS_ADDRESS if appropriate

* bus/bus.c (bus_context_new): handle OOM copying bus type into
context struct

* dbus/dbus-message.c (dbus_message_iter_get_object_path): new function
(dbus_message_iter_get_object_path_array): new function (half
finished, disabled for the moment)

* glib/dbus-gproxy.c (dbus_gproxy_end_call): properly handle
DBUS_MESSAGE_TYPE_ERROR

* tools/dbus-launch.c (babysit): support DBUS_DEBUG_OUTPUT to
avoid redirecting stderr to /dev/null
(babysit): close stdin if not doing the "exit_with_session" thing

* dbus/dbus-sysdeps.c (_dbus_become_daemon): delete some leftover
debug code; change DBUS_DEBUG_OUTPUT to only enable stderr, not
stdout/stdin, so things don't get confused

* bus/system.conf.in: fix to allow replies, I modified .conf
instead of .conf.in again.
/external/dbus/bus/bus.c
3251264ac483680b4a5fe808729f7e3b34f41fd4 15-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-14 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_check_security_policy): revamp this to
work more sanely with new policy-based requested reply setup

* bus/connection.c (bus_transaction_send_from_driver): set bus
driver messages as no reply

* bus/policy.c (bus_client_policy_check_can_receive): handle a
requested_reply attribute on allow/deny rules

* bus/system.conf: add <allow requested_reply="true"/>

* bus/driver.c (bus_driver_handle_message): fix check for replies
sent to the bus driver, which was backward. How did this ever work
at all though? I think I'm missing something.

* dbus/dbus-message.c (decode_header_data): require error and
method return messages to have a reply serial field to be valid
(_dbus_message_loader_queue_messages): break up this function;
validate that reply serial and plain serial are nonzero;
clean up the OOM/error handling.
(get_uint_field): don't return -1 from this
(dbus_message_create_header): fix signed/unsigned bug

* bus/connection.c (bus_connections_expect_reply): save serial of
the incoming message, not reply serial
/external/dbus/bus/bus.c
64f5ae1a79a8cd86a3aae55e485729da438d84d0 14-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-14 Havoc Pennington <hp@redhat.com>

* bus/connection.c: implement pending reply tracking using
BusExpireList

* bus/bus.c (bus_context_check_security_policy): verify that a
reply is pending in order to allow a reply to be sent. Deny
messages of unknown type.

* bus/dbus-daemon-1.1.in: update to mention new resource limits

* bus/bus.c (bus_context_get_max_replies_per_connection): new
(bus_context_get_reply_timeout): new
/external/dbus/bus/bus.c
6a65f4802e95ba442c520f8e225da837e0a9f73b 10-Oct-2003 Havoc Pennington <hp@redhat.com> 2003-10-09 Havoc Pennington <hp@redhat.com>

Make matching rules theoretically work (add parser).

* bus/bus.c (bus_context_check_security_policy): fix up to handle
the case where destination is explicitly specified as bus driver
and someone else is eavesdropping.

* bus/policy.c (bus_client_policy_check_can_receive): fix up
definition of eavesdropping and assertion

* tools/dbus-send.c (main): use dbus_message_type_from_string

* bus/signals.c (bus_match_rule_parse): implement

* dbus/dbus-message.c (dbus_message_type_from_string): new

* dbus/dbus-errors.h (DBUS_ERROR_MATCH_RULE_INVALID): add
/external/dbus/bus/bus.c
a683a80c409cc4f2e57ba6a3e60d52f91b8657d0 21-Sep-2003 Havoc Pennington <hp@redhat.com> 2003-09-21 Havoc Pennington <hp@pobox.com>

Get matching rules mostly working in the bus; only actually
parsing the rule text remains. However, the client side of
"signal connections" hasn't been started, this patch is only the
bus side.

* dbus/dispatch.c: fix for the matching rules changes

* bus/driver.c (bus_driver_handle_remove_match)
(bus_driver_handle_add_match): send an ack reply from these
method calls

* glib/dbus-gproxy.c (dbus_gproxy_begin_call): fix order of
arguments, reported by Seth Nickell

* bus/config-parser.c (append_rule_from_element): support
eavesdrop=true|false attribute on policies so match rules
can be prevented from snooping on the system bus.

* bus/dbus-daemon-1.1.in: consistently use terminology "sender"
and "destination" in attribute names; fix some docs bugs;
add eavesdrop=true|false attribute

* bus/driver.c (bus_driver_handle_add_match)
(bus_driver_handle_remove_match): handle AddMatch, RemoveMatch
messages

* dbus/dbus-protocol.h (DBUS_SERVICE_ORG_FREEDESKTOP_BROADCAST): get
rid of broadcast service concept, signals are just always broadcast

* bus/signals.c, bus/dispatch.c, bus/connection.c, bus/bus.c:
mostly implement matching rules stuff (currently only exposed as signal
connections)
/external/dbus/bus/bus.c
68a3c593b9e77b33614726363c7b6fd85d113021 19-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-18 Havoc Pennington <hp@redhat.com>

* dbus/dbus-hash.c (_dbus_hash_table_insert_two_strings): fix

* dbus/dbus-message.c (_dbus_message_loader_queue_messages): fix
dumb bug created earlier (wrong order of args to
decode_header_data())

* tools/dbus-send.c: port

* tools/dbus-print-message.c (print_message): port

* test/data/*messages: port all messages over

* dbus/dbus-message-builder.c: support including
message type

* bus/driver.c: port over

* bus/dispatch.c: port over to new stuff

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
rename disconnect signal to "Disconnected"
/external/dbus/bus/bus.c
95717a938b237d12211935f6a7467ef610288fe5 18-Aug-2003 Havoc Pennington <hp@redhat.com> 2003-08-17 Havoc Pennington <hp@pobox.com>

This doesn't compile yet, but syncing up so I can hack on it from
work. What are branches for if not broken code? ;-)

* dbus/dbus-protocol.h: remove DBUS_HEADER_FIELD_NAME, add
DBUS_HEADER_FIELD_INTERFACE, DBUS_HEADER_FIELD_MEMBER,
DBUS_HEADER_FIELD_ERROR_NAME

* dbus/dbus-hash.c: Introduce DBUS_HASH_TWO_STRINGS as hack to use
for the interface+member pairs
(string_hash): change to use g_str_hash algorithm
(find_direct_function, find_string_function): refactor these to
share most code.

* dbus/dbus-message.c: port all of this over to support
interface/member fields instead of name field

* dbus/dbus-object-registry.c: port over

* dbus/dbus-string.c (_dbus_string_validate_interface): rename
from _dbus_string_validate_name

* bus/dbus-daemon-1.1: change file format for the
<deny>/<allow> stuff to match new message naming scheme

* bus/policy.c: port over

* bus/config-parser.c: parse new format
/external/dbus/bus/bus.c
6843ad31769c088ca259020fd9ea8dfb3a51f68e 22-Jun-2003 Havoc Pennington <hp@redhat.com> 2003-06-22 Havoc Pennington <hp@pobox.com>

* dbus/dbus-dataslot.c (_dbus_data_slot_allocator_unref)
(_dbus_data_slot_allocator_alloc): rework these to keep a
reference count on each slot and automatically manage a global
slot ID variable passed in by address

* bus/bus.c: convert to new dataslot API

* dbus/dbus-bus.c: convert to new dataslot API

* dbus/dbus-connection.c: convert to new dataslot API

* dbus/dbus-server.c: convert to new dataslot API

* glib/dbus-gmain.c: ditto

* bus/test.c: ditto

* bus/connection.c: ditto
/external/dbus/bus/bus.c
306eab3e3d998472ad111146a12b7697ea96c9b9 16-May-2003 Havoc Pennington <hp@redhat.com> 2003-05-16 Havoc Pennington <hp@redhat.com>

* dbus/dbus-connection.c: disable verbose lock spew

* tools/dbus-send.c: add --print-reply command line option

* tools/dbus-print-message.h (print_message): new util function
shared by dbus-send and dbus-monitor

* tools/dbus-monitor.c (handler_func): exit on disconnect

* dbus/dbus-transport-unix.c (do_reading): if the transport is
disconnected, don't try to use the read_watch

* dbus/dbus-watch.c (dbus_watch_get_enabled): assert watch != NULL
so we can find this bug more easily
/external/dbus/bus/bus.c
df01c98cc7e83f3336e501fcf2eeee52c95464fb 04-May-2003 Havoc Pennington <hp@redhat.com> 2003-05-04 Havoc Pennington <hp@pobox.com>

* tools/dbus-launch.c: implement

* bus/main.c (main), bus/bus.c (bus_context_new):
implement --print-pid and --fork
/external/dbus/bus/bus.c
893d859ed4ab785f46485fad28779f026fa166a1 28-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-28 Havoc Pennington <hp@redhat.com>

* configure.in: 0.10

* NEWS: update

* bus/system.conf.in: add <includedir>system.d</includedir>

* dbus/dbus-userdb.c (_dbus_user_database_lookup): fix bug when
username was provided but not uid

* bus/config-parser.c (struct BusConfigParser): keep track of
whether the parser is toplevel or was included; change some
of the error handling if it's included.
/external/dbus/bus/bus.c
e8d396efef695b9868b0112c4a6266c97678fa8a 27-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-27 Havoc Pennington <hp@pobox.com>

Unbreak my code...

* dbus/dbus-transport.c (_dbus_transport_get_dispatch_status):
report correct status if we finish processing authentication
inside this function.

* bus/activation.c (try_send_activation_failure): use
bus_transaction_send_error_reply

* bus/connection.c (bus_connection_get_groups): return an error
explaining the problem

* bus/bus.c (bus_context_check_security_policy): implement
restriction here that inactive connections can only send the
hello message. Also, allow bus driver to send anything to
any recipient.

* bus/connection.c (bus_connection_complete): create the
BusClientPolicy here instead of on-demand.
(bus_connection_get_policy): don't return an error

* dbus/dbus-message.c (dbus_message_new_error_reply): allow NULL
sender field in message being replied to

* bus/bus.c (bus_context_check_security_policy): fix silly typo
causing it to return FALSE always

* bus/policy.c (bus_client_policy_check_can_send): fix bug where
we checked sender rather than destination
/external/dbus/bus/bus.c
b3bd48edfc1aab0a9dc64bfa4c380d845d218e73 26-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-25 Havoc Pennington <hp@redhat.com>

test suite is slightly hosed at the moment, will fix soon

* bus/connection.c (bus_connections_expire_incomplete): fix to
properly disable the timeout when required
(bus_connection_set_name): check whether we can remove incomplete
connections timeout after we complete each connection.

* dbus/dbus-mainloop.c (check_timeout): fix this up a bit,
probably still broken.

* bus/services.c (bus_registry_acquire_service): implement max
number of services owned, and honor allow/deny rules on which
services a connection can own.

* bus/connection.c (bus_connection_get_policy): report errors here

* bus/activation.c: implement limit on number of pending
activations
/external/dbus/bus/bus.c
3185d7edde8ffc7672aa7d771966b0f1e0158aea 25-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-24 Havoc Pennington <hp@redhat.com>

* test/data/valid-config-files/basic.conf: add <limit> tags to
this test

* bus/config-parser.h, bus/config-parser.c, bus/bus.c: Implement
<limit> tag in configuration file.
/external/dbus/bus/bus.c
e8bf15b23a2a9c5b19ef25fb553006a41379bf7c 24-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-24 Havoc Pennington <hp@redhat.com>

* dbus/dbus-message.c (dbus_message_name_is): rename
(dbus_message_service_is): rename
(dbus_message_sender_is): rename
(dbus_message_get_service): rename
/external/dbus/bus/bus.c
983200f912f41ba75a873c011bfbcd3b0285bf4c 19-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-19 Havoc Pennington <hp@pobox.com>

* bus/driver.c (bus_driver_handle_hello): check limits and
return an error if they are exceeded.

* bus/connection.c: maintain separate lists of active and inactive
connections, and a count of each. Maintain count of completed
connections per user. Implement code to check connection limits.

* dbus/dbus-list.c (_dbus_list_unlink): export

* bus/bus.c (bus_context_check_security_policy): enforce a maximum
number of bytes in the message queue for a connection
/external/dbus/bus/bus.c
3df260c07102745c5606c313af862558f105f83e 18-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-18 Havoc Pennington <hp@pobox.com>

* glib/dbus-gmain.c: adapt to watch changes

* bus/bus.c, bus/activation.c, etc.: adjust to watch changes

* dbus/dbus-server.h: remove dbus_server_handle_watch

* dbus/dbus-connection.h: remove dbus_connection_handle_watch

* dbus/dbus-watch.c (dbus_watch_handle): change DBusWatch to work
like DBusTimeout, so we don't need dbus_connection_handle_watch
etc.
/external/dbus/bus/bus.c
7c022a80c9b8c5b085514ea49f983c0489e945ab 17-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-15 Havoc Pennington <hp@pobox.com>

* bus/bus.c: create and keep around a shared DBusUserDatabase
object.

* bus/connection.c (bus_connection_get_groups): don't cache
groups for user in the connection object, since user database
object now does that.
/external/dbus/bus/bus.c
777707ed8dff6958972a93894a87ec1945c65c14 14-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-13 Havoc Pennington <hp@pobox.com>

* dbus/dbus-mainloop.c: fix some reentrancy issues by refcounting
callbacks

* test/data/valid-config-files/debug-allow-all.conf.in: allow all
users

* dbus/dbus-transport.c (_dbus_transport_get_dispatch_status):
fix to only recover unused bytes if we're already authenticated
(_dbus_transport_get_is_authenticated): fix to still mark us
authenticated if there are unused bytes.

* bus/dispatch.c: implement security policy checking

* bus/connection.c (bus_transaction_send_from_driver): new

* bus/bus.c (bus_context_check_security_policy): new

* bus/dispatch.c (send_service_nonexistent_error): delete this,
now we just set the DBusError and it gets converted to an error
reply.

* bus/connection.c (allow_user_function): enable code using actual
data from the config file

* bus/policy.c (list_allows_user): handle wildcard rules for
user/group connection perms
/external/dbus/bus/bus.c
bc983ecf15455f49e7a92d038c93e181ae2cb438 12-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-12 Havoc Pennington <hp@pobox.com>

* bus/policy.h: change BusPolicy to be the thing from the config
file, and rename old BusPolicy to BusClientPolicy

* bus/bus.c, bus/connection.c, bus/config-parser.c: change to
match change in how policy works

* dbus/dbus-internals.h: mark assert_not_reached as
__attribute((noreturn))__
/external/dbus/bus/bus.c
fff4709be676718a54e280fd3b4ac4b742554982 11-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-11 Havoc Pennington <hp@redhat.com>

* bus/bus.c (bus_context_new): move credentials change after
creating pidfile
/external/dbus/bus/bus.c
0e1945b3889f8be8e31e39ad2b982c8a192be41d 09-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-08 Colin Walters <walters@gnu.org>

* bus/bus.c (struct BusContext) [pidfile]: New member, to store
the pid file.
(bus_context_new): Set it.
(bus_context_unref): Use it to delete the pid file.
/external/dbus/bus/bus.c
df008ef97deacd5bb00ac335e5d8671798fa09dd 07-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-06 Havoc Pennington <hp@pobox.com>

* dbus/Makefile.am: split lists of sources into stuff that goes in
the library, util functions that go in the lib and are also used
elsewhere, and util functions that are used in tests/daemon but
don't go in the lib.

* dbus/dbus-mainloop.h, dbus/dbus-mainloop.c: move bus/loop.[hc]
here so it can be used in test binaries also
/external/dbus/bus/bus.c
856361ff5b8ce701cdb447085931d3076ee52008 07-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-06 Havoc Pennington <hp@pobox.com>

* dbus/dbus-sysdeps.c (_dbus_become_daemon): write the pidfile
here in the parent process, so we can return an error if it
fails. Also, move some of the code into the child so the parent
is less hosed if we fail midway through.

* bus/bus.c (bus_context_new): move pidfile detection further up
in the function, before we start overwriting sockets and such.

* bus/messagebus.in: adjust this a bit, not sure if it will work.

* configure.in: add --with-system-pid-file and --with-system-socket

2003-04-06 Colin Walters <walters@verbum.org>

* configure.in (DBUS_SYSTEM_PID_FILE): New variable.

* bus/system.conf.in: Declare a pidfile.

* bus/bus.c (bus_context_new): Test for an existing pid file, and
create one (if appropriate).

* bus/config-parser.c (enum ElementType) [ELEMENT_PIDFILE]: New.
(struct BusConfigParser) [pidfile]: New.
(element_type_to_name, merge_included, start_busconfig_child)
(bus_config_parser_end_element, bus_config_parser_content): Handle it.
(bus_config_parser_unref): Free it.
(bus_config_parser_get_pidfile): New function.

* bus/config-parser.h (_dbus_write_pid_file): Prototype.

* dbus/dbus-errors.h (DBUS_ERROR_PIDFILE_EXISTS): New error.

* dbus/dbus-sysdeps.c (_dbus_write_pid_file): New function.

* dbus/dbus-sysdeps.h: Prototype it.
/external/dbus/bus/bus.c
c8991b0f95a3b53bc98de9e029780bbe0a0b3114 06-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-06 Havoc Pennington <hp@pobox.com>

* bus/bus.c (bus_context_new): print the address in here, rather
than in main(), because we need to do it before forking the daemon

* bus/dispatch.c (send_service_nonexistent_error): set the sender
on the service nonexistent error

* bus/driver.c (bus_driver_handle_acquire_service): set the
sender on the AcquireService reply

* test/data/valid-config-files/debug-allow-all.conf.in: Make test
server also listen on a UNIX socket so services can connect to it.
/external/dbus/bus/bus.c
e45e4382274149ca60c11f068ccca719f3598074 06-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-06 Havoc Pennington <hp@pobox.com>

* bus/bus.c (bus_context_new): fix wrong handling of
server_data_slot_unref() in the error case.

* dbus/dbus-internals.h (_dbus_assert): change so it passes
"(condition) != 0" to _dbus_real_assert so that
"_dbus_assert (pointer)" doesn't cause a warning

* bus/main.c (main): accept --print-address option to print out
the message bus address

* dbus/dbus-sysdeps.c (_dbus_generate_random_ascii): export this

* dbus/dbus-transport.c (_dbus_transport_open): special error for
"tmpdir" option to unix: address on client side

* dbus/dbus-server.c (dbus_server_listen): handle "tmpdir" option
to unix: address

* configure.in (TEST_SOCKET_DIR): locate a temporary directory
we can use to create sockets in the test suite.

* bus/main.c (signal_handler): on SIGTERM, exit the daemon
cleanly. To be used for testing.

* dbus/dbus-spawn.c (babysit): use _dbus_set_signal_handler()

* dbus/dbus-sysdeps.c (_dbus_set_signal_handler): new

* dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
handle trying to call this when there's no servers active
/external/dbus/bus/bus.c
07e3f76f8e65af8d9de063c62af38c5b7495bc76 06-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-05 Havoc Pennington <hp@pobox.com>

* bus/bus.c (setup_server): fix this so dbus-daemon-1 doesn't
crash on startup. Need to get "try starting the daemon"
in the test suite I guess. ;-)

* dbus/dbus-server.h, dbus/dbus-server.c: remove the stuff that
tracked the number of open connections; it's better done in
application-specific code as you want it to span all servers etc.
/external/dbus/bus/bus.c
2250539aeee0569f8861841d1f5ff16f1539715e 05-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-05 Havoc Pennington <hp@pobox.com>

* bus/loop.c (bus_loop_iterate): fix the timeout code, using
magic from GLib

* dbus/dbus-spawn.c (_dbus_babysitter_unref): set sitter_pid
to -1 once we've reaped the babysitter
(_dbus_babysitter_handle_watch): do as much work as we can, not
just one go of it

* bus/activation.c: add code using DBusBabysitter so that we
handle it when a service fails to start up properly.
(bus_activation_service_created): don't remove the activation
entries as we go, just let them get removed when we free the pending
activation. Unref reply messages after sending them.
/external/dbus/bus/bus.c
1b08036103a70159e7a67b2349306710edcd6654 04-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-03 Havoc Pennington <hp@redhat.com>

* bus/loop.h, bus/loop.c: make the mainloop an object so we can
have multiple ones

* bus/*.[hc]: adapt to mainloop change
/external/dbus/bus/bus.c
eeb88949d8d2ca84d9cbe54c07e73b9907d3163e 03-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-03 Havoc Pennington <hp@pobox.com>

* bus/config-parser.c (bus_config_parser_unref): free
list of mechanisms, bug discovered by test suite enhancements
(putting system.conf and session.conf into suite)

* test/Makefile.am, test/test-service.c: add placeholder for a
test service that we'll activate as part of test suite. Doesn't
do anything yet.

* dbus/dbus-sysdeps.c (_dbus_setenv): support unsetenv by
setting NULL value, and use system malloc not dbus_malloc()
when we have unavoidable memleakage.

* dbus/dbus-bus.c (dbus_bus_get): fix bug where bus type of 0
didn't work, and support DBUS_BUS_ACTIVATION.

* bus/activation.c (child_setup): pass our well-known bus type to
the child

* bus/config-parser.c: support <type> to specify well-known type

* doc/dbus-specification.sgml: document the env variables to
locate well-known buses and find service activator
/external/dbus/bus/bus.c
cfa261b49dd9cafb172deae3db22dba0c2e54bf9 02-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-01 Havoc Pennington <hp@redhat.com>

* bus/config-parser.c, bus/bus.c: implement <servicedir> and
<includedir> (at least mostly)

* dbus/dbus-sysdeps.c (_dbus_change_identity): set the group ID
first, then the user ID
/external/dbus/bus/bus.c
44ed933284589134603913b05f55ca55e8c5a566 01-Apr-2003 Havoc Pennington <hp@redhat.com> 2003-04-01 Havoc Pennington <hp@pobox.com>

* dbus/dbus-server.c (dbus_server_set_auth_mechanisms): new
function

* dbus/dbus-auth.c (_dbus_auth_set_mechanisms): new

* dbus/dbus-internals.c (_dbus_dup_string_array): new function

* dbus/dbus-sysdeps.c (_dbus_listen_unix_socket): chmod the
socket 0777, and unlink any existing socket.

* bus/bus.c (bus_context_new): change our UID/GID and fork if
the configuration file so specifies; set up auth mechanism
restrictions

* bus/config-parser.c (bus_config_parser_content): add support
for <fork> option and fill in code for <auth>

* bus/system.conf.in: add <fork/> to default configuration,
and limit auth mechanisms to EXTERNAL

* doc/config-file.txt (Elements): add <fork>

* dbus/dbus-sysdeps.c (_dbus_become_daemon): new function
(_dbus_change_identity): new function
/external/dbus/bus/bus.c
fa05de9230d62e7c427b5313796fc6ccd4d0ff60 31-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-31 Havoc Pennington <hp@redhat.com>

Fix some annoying DBusString API and fix all affected code.

* dbus/dbus-string.c (_dbus_string_init): get rid of annoying
max_length argument
(_dbus_string_get_data): change to return string instead of using
an out param
(_dbus_string_get_const_data): ditto
(_dbus_string_get_data_len): ditto
(_dbus_string_get_const_data_len): ditto
/external/dbus/bus/bus.c
29c71168cd17b11eed65023c97aff401d5305b01 31-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-31 Havoc Pennington <hp@pobox.com>

* dbus/dbus-transport-unix.c (_dbus_transport_new_for_domain_socket)
(_dbus_transport_new_for_tcp_socket): these didn't need the "server"
argument since they are always client side

* dbus/dbus-server.c (dbus_server_get_address): new function

* bus/main.c (main): take the configuration file as an argument.

* test/data/valid-config-files/debug-allow-all.conf: new file to
use with dispatch.c tests for example

* bus/test-main.c (main): require test data dir

* bus/bus.c (bus_context_new): change this to take a
configuration file name as argument

* doc/config-file.txt (Elements): add <servicedir>

* bus/system.conf, bus/session.conf: new files

* dbus/dbus-bus.c (dbus_bus_get): look for system bus on
well-known socket if none set

* configure.in: create system.conf and session.conf
/external/dbus/bus/bus.c
90ed1d84588a84697051e643175452c50d682ece 26-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-25 Havoc Pennington <hp@redhat.com>

* throughout - add more _DBUS_ASSERT_ERROR_IS_CLEAR

* configure.in: add --with-xml option to specify XML library,
right now only libxml is supported.

* bus/config-loader-libxml.c, config-parser.c: sync some minor
nonworking code between home and work, still just stubs
/external/dbus/bus/bus.c
ce4fd314c6be9bfee16a172d5ca34e5097d309fc 25-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-24 Havoc Pennington <hp@redhat.com>

* dbus/dbus-sysdeps.c (_dbus_set_fd_nonblocking): move to this
file

* dbus/dbus-errors.c (dbus_set_error, dbus_set_error_const): allow
NULL argument for "message" if the error is a well-known one,
fill in a generic message in this case.

* dbus/dbus-errors.h (DBusResultCode): Kill DBusResultCode in
favor of DBusError

* bus/test.c (bus_test_flush_bus): add

* bus/policy.c (bus_policy_test): test code stub
/external/dbus/bus/bus.c
a26607ab68bf0878f23d2dbddec781b4b760d034 23-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-23 Havoc Pennington <hp@pobox.com>

* bus/policy.c, bus/bus.c, bus/connection.c: implement allow/deny
policies code

* dbus/dbus-hash.h: add ULONG hash keys

* dbus/dbus-sysdeps.c (_dbus_get_groups): new
(_dbus_get_group_id): new function
/external/dbus/bus/bus.c
b6ffea177fccb6cc4e65992da7d8b390054277f7 21-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-20 Havoc Pennington <hp@redhat.com>

* dbus/dbus-connection.c (dbus_connection_set_unix_user_function):
new function
(dbus_connection_get_unix_user): new function
/external/dbus/bus/bus.c
b4a1100f4f81534e2aac0141afda750f318223d4 17-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-16 Havoc Pennington <hp@pobox.com>

* dbus/dbus-watch.c (_dbus_watch_new): handle failure to malloc
the watch

* dbus/dbus-server-debug-pipe.c (_dbus_transport_debug_pipe_new):
add some missing dbus_set_result

* bus/dispatch.c (bus_dispatch_add_connection): handle failure to
alloc the DBusMessageHandler

* dbus/dbus-transport.c (_dbus_transport_disconnect): don't ref
the transport here, since we call this from the finalizer; it
resulted in a double-finalize.

* dbus/dbus-transport.c (_dbus_transport_disconnect): fix a bug
where we tried to use transport->connection that was NULL,
happened when transport was disconnected early on due to OOM

* bus/*.c: adapt to handle OOM for watches/timeouts

* dbus/dbus-transport-unix.c: port to handle OOM during
watch handling

* dbus/dbus-auth.c (_dbus_auth_get_unused_bytes): return a
reference to unused bytes instead of a copy

* dbus/dbus-server.c (dbus_server_handle_watch): return FALSE for
out of memory

* dbus/dbus-connection.c (dbus_connection_handle_watch): return
FALSE on OOM

* dbus/dbus-timeout.c (dbus_timeout_handle): return FALSE for out
of memory
/external/dbus/bus/bus.c
3f4086f0fdd1cc7fc03585ec9f750897fb3c1d55 16-Mar-2003 Anders Carlsson <andersca@codefactory.se> 2003-03-16 Anders Carlsson <andersca@codefactory.se>

* bus/activation.c: (bus_pending_activation_entry_free),
(bus_pending_activation_free), (bus_activation_new),
(bus_activation_unref), (bus_activation_service_created),
(bus_activation_activate_service):
* bus/activation.h:
* bus/bus.c: (bus_context_new):
* bus/desktop-file.c: (new_section):
* bus/driver.c: (bus_driver_send_service_deleted),
(bus_driver_handle_activate_service):
* bus/services.c: (bus_registry_new), (bus_registry_ensure):
* bus/services.h:
* dbus/dbus-connection.c:
(dbus_connection_send_with_reply_and_block):
* dbus/dbus-message.c: (dbus_message_append_args_valist):
* dbus/dbus-protocol.h:
Make activation work better. Now pending activations will be queued
and the daemon won't try to activate services that are already registered.
/external/dbus/bus/bus.c
ce173b29fc1e9432cb5956952afdbe775da12415 16-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-16 Havoc Pennington <hp@pobox.com>

Oops - test code was only testing failure of around 30 of the
mallocs in the test path, but it turns out there are 500+
mallocs. I believe this was due to misguided linking setup such
that there was one copy of dbus_malloc etc. in the daemon and one
in the shared lib, and only daemon mallocs were tested. In any
case, the test case now tests all 500+ mallocs, and doesn't pass
yet, though there are lots of fixes in this patch.

* dbus/dbus-connection.c (dbus_connection_dispatch_message): fix
this so that it doesn't need to allocate memory, since it
has no way of indicating failure due to OOM (and would be
annoying if it did).

* dbus/dbus-list.c (_dbus_list_pop_first_link): new function

* bus/Makefile.am: rearrange to create two self-contained
libraries, to avoid having libraries with overlapping symbols.
that was resulting in weirdness, e.g. I'm pretty sure there
were two copies of global static variables.

* dbus/dbus-internals.c: move the malloc debug stuff to
dbus-memory.c

* dbus/dbus-list.c (free_link): free list mempool if it becomes
empty.

* dbus/dbus-memory.c (_dbus_disable_mem_pools): new function

* dbus/dbus-address.c (dbus_parse_address): free list nodes
on failure.

* bus/dispatch.c (bus_dispatch_add_connection): free
message_handler_slot when no longer using it, so
memory leak checkers are happy for the test suite.

* dbus/dbus-server-debug-pipe.c (debug_finalize): free server name

* bus/bus.c (new_connection_callback): disconnect in here if
bus_connections_setup_connection fails.

* bus/connection.c (bus_connections_unref): fix to free the
connections
(bus_connections_setup_connection): if this fails, don't
disconnect the connection, just be sure there are no side
effects.

* dbus/dbus-string.c (undo_alignment): unbreak this

* dbus/dbus-auth.c (_dbus_auth_unref): free some stuff we were
leaking
(_dbus_auth_new): fix the order in which we free strings
on OOM failure

* bus/connection.c (bus_connection_disconnected): fix to
not send ServiceDeleted multiple times in case of memory
allocation failure

* dbus/dbus-bus.c (dbus_bus_get_base_service): new function to
get the base service name
(dbus_bus_register_client): don't return base service name,
instead store it on the DBusConnection and have an accessor
function for it.
(dbus_bus_register_client): rename dbus_bus_register()

* bus/dispatch.c (check_hello_message): verify that other
connections on the bus also got the correct results, not
just the one sending hello
/external/dbus/bus/bus.c
f587ce7845edb0eb01451368d01b5bc86b5904cd 15-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-15 Havoc Pennington <hp@pobox.com>

Make it pass the Hello handling test including all OOM codepaths.
Now to do other messages...

* bus/services.c (bus_service_remove_owner): fix crash when
removing owner from an empty list of owners
(bus_registry_ensure): don't leave service in the list of
a connection's owned services if we fail to put the service
in the hash table.

* bus/connection.c (bus_connection_preallocate_oom_error): set
error flag on the OOM error.

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
handle _dbus_transport_set_connection failure

* dbus/dbus-transport-unix.c (_dbus_transport_new_for_fd): modify
to create watches up front and simply enable/disable them as
needed.
(unix_connection_set): this can now fail on OOM

* dbus/dbus-timeout.c, dbus/dbus-watch.c: add concept
of enabling/disabling a watch or timeout.

* bus/loop.c (bus_loop_iterate): don't touch disabled
watches/timeouts

* glib/dbus-gmain.c: adapt to enable/disable watches and timeouts
/external/dbus/bus/bus.c
4c95a9782c65f88e2904c44abeb734a1b00f6353 15-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-14 Havoc Pennington <hp@redhat.com>

* dbus/dbus-memory.c: add a "detect buffer overwrites on free"
cheesy hack

* dbus/dbus-transport-debug.c: rework this a good bit to be
less complicated. hopefully still works.

* dbus/dbus-server-debug.c (handle_new_client): remove timeout
manually

* glib/dbus-gmain.c (timeout_handler): don't remove timeout
after running it

* dbus/dbus-message.c (dbus_message_copy): rename from
dbus_message_new_from_message, fix it up to copy
all the message fields, add test case

* bus/dispatch.c (bus_dispatch_test): add some more test code,
not quite passing yet
/external/dbus/bus/bus.c
3bea935316ff048e68dea6a26c2e8e9fd314477f 14-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-13 Havoc Pennington <hp@redhat.com>

* dbus/dbus-timeout.c (_dbus_timeout_list_set_functions): handle
out of memory

* dbus/dbus-watch.c (_dbus_watch_list_set_functions): handle out
of memory

* dbus/dbus-connection.h: Make AddWatchFunction and
AddTimeoutFunction return a bool so they can fail on out-of-memory

* bus/bus.c (bus_context_new): set up timeout handlers

* bus/connection.c (bus_connections_setup_connection): set up
timeout handlers

* glib/dbus-gmain.c: adapt to the fact that set_functions stuff
can fail

* bus/bus.c (bus_context_new): adapt to changes

* bus/connection.c: adapt to changes

* test/watch.c: adapt to DBusWatch changes

* bus/dispatch.c (bus_dispatch_test): started adding this but
didn't finish
/external/dbus/bus/bus.c
6ecc14ffabcffb69aa938a67940db48272e05046 13-Mar-2003 Havoc Pennington <hp@redhat.com> 2003-03-12 Havoc Pennington <hp@pobox.com>

Throughout: purge global variables, introduce BusActivation,
BusConnections, BusRegistry, etc. objects instead.

* bus/bus.h, bus/bus.c: introduce BusContext as a global
message bus object

* test/Makefile.am (TEST_BINARIES): disable bus-test for now,
going to redo this a bit differently I think
/external/dbus/bus/bus.c