platform/upstream/dbus.git
20 years ago2003-08-10 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 11 Aug 2003 02:11:58 +0000 (02:11 +0000)]
2003-08-10  Havoc Pennington  <hp@pobox.com>

* tools/dbus-send.c (main): add --type argument, for now
supporting only method_call and signal types.

* tools/dbus-print-message.c: print message type

* dbus/dbus-connection.c (_dbus_connection_new_for_transport):
init connection->objects

* doc/dbus-specification.sgml: fix sgml

* bus/*.c: port over to object-instance API changes

* test/test-service.c: ditto

* dbus/dbus-message.c (dbus_message_create_header): allow #NULL
name, we will have to fix up the rest of the code to also handle
this
(dbus_message_new): generic message-creation call
(set_string_field): allow appending name field

20 years ago2003-08-06 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Thu, 7 Aug 2003 02:18:54 +0000 (02:18 +0000)]
2003-08-06  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object-registry.c: implement signal connection
and dispatch

* dbus/dbus-connection.c (_dbus_connection_unref_unlocked): new

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

20 years ago2003-08-02 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 2 Aug 2003 14:58:33 +0000 (14:58 +0000)]
2003-08-02  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-message.c (dbus_message_get_no_reply)
(dbus_message_set_no_reply): add these and remove
set_is_error/get_is_error

* dbus/dbus-protocol.h, doc/dbus-specification.sgml:
remove the ERROR flag, since there's now an ERROR type

20 years ago2003-08-01 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 2 Aug 2003 03:39:35 +0000 (03:39 +0000)]
2003-08-01  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object-registry.c (_dbus_object_registry_handle_and_unlock):
implement

* dbus/dbus-message.c (dbus_message_get_type): new function

* doc/dbus-specification.sgml: add "type" byte to messages

20 years ago2003-08-01 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 2 Aug 2003 01:59:14 +0000 (01:59 +0000)]
2003-08-01  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-protocol.h (DBUS_MESSAGE_TYPE_*): introduce
a message type enum to distinguish kinds of message
(DBUS_HEADER_FLAG_NO_REPLY_EXPECTED): flag for a message
that need not be replied to

2003-08-01  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-marshal.c: adapt to DBusObjectID changes
(unpack_8_octets): fix no-64-bit-int bug

* dbus/dbus-object-registry.c (validate_id): validate the
connection ID bits, not just the instance ID.

* dbus/dbus-connection.c (_dbus_connection_init_id): initialize
the connection-global 33 bits of the object ID

* dbus/dbus-object-registry.c (info_from_entry): fill in
object ID in the new way

* dbus/dbus-objectid.h: rather than high/low bits, specifically
define server/client/instance bits.

20 years ago2003-07-13 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Thu, 17 Jul 2003 01:10:57 +0000 (01:10 +0000)]
2003-07-13  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object.h (struct DBusObjectVTable): add padding
fields to DBusObjectVTable and DBusObjectInfo

20 years ago2003-07-12 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 12 Jul 2003 19:32:35 +0000 (19:32 +0000)]
2003-07-12  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object-registry.c: implement unit test,
fix bugs discovered in process

* dbus/dbus-connection.c: remove handler_table and
register_handler(), add DBusObjectRegistry usage

* dbus/dbus-objectid.c (dbus_object_id_is_null)
(dbus_object_id_set_null): new functions

20 years ago2003-07-08 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Wed, 9 Jul 2003 03:41:00 +0000 (03:41 +0000)]
2003-07-08  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object.c: implement some of this

* dbus/dbus-object-registry.c
(_dbus_object_registry_add_and_unlock): fill in the object_id out
param
(_dbus_object_registry_new): handle OOM

20 years ago2003-07-08 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Tue, 8 Jul 2003 05:07:32 +0000 (05:07 +0000)]
2003-07-08  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-object.h: sketch out an API for registering objects
with a connection, that allows us to use as little as 24 bytes
per object and lets application code represent an object in
any conceivable way.

* dbus/dbus-object-registry.c: implement the hard bits of the
DBusConnection aspect of object API. Not yet wired up.

20 years ago2003-07-06 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 7 Jul 2003 00:47:01 +0000 (00:47 +0000)]
2003-07-06  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-marshal.c (_dbus_marshal_set_object_id): new function
(_dbus_marshal_object_id): new
(_dbus_demarshal_object_id): new
(_dbus_marshal_get_arg_end_pos): support object ID type, and
consolidate identical switch cases. Don't conditionalize handling
of DBUS_TYPE_UINT64, need to handle the type always.
(_dbus_marshal_validate_arg): consolidate identical cases, and
handle DBUS_TYPE_OBJECT_ID

* dbus/dbus-objectid.c: new file with DBusObjectID data type.

* dbus/dbus-protocol.h: add DBUS_TYPE_OBJECT_ID

20 years agoThis commit was manufactured by cvs2svn to create branch
Ryan Lortie [Thu, 3 Jul 2003 01:48:31 +0000 (01:48 +0000)]
This commit was manufactured by cvs2svn to create branch
'dbus-object-names'.

20 years ago2003-06-29 Havoc Pennington <hp@pobox.com> dbus-object-names-branchpoint
Havoc Pennington [Thu, 3 Jul 2003 01:48:31 +0000 (01:48 +0000)]
2003-06-29  Havoc Pennington  <hp@pobox.com>

* mono/Test.cs (class Test): fire up a main loop and run it

* mono/DBus.cs (DBus): don't g_thread_init since it can only be
done once, the app has to do it

2003-06-26  Havoc Pennington  <hp@pobox.com>

* mono/Connection.cs: set up connection with the glib main loop

20 years ago2003-07-01 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 1 Jul 2003 20:21:35 +0000 (20:21 +0000)]
2003-07-01  Havoc Pennington  <hp@redhat.com>

* doc/dbus-specification.sgml: clarify the format of a type code,
change suggested by Jim Blandy

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sun, 29 Jun 2003 15:35:06 +0000 (15:35 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* doc/Makefile.am:
* tools/Makefile.am: Don't assume srcdir == builddir.

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sat, 28 Jun 2003 23:12:11 +0000 (23:12 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* dbus/dbus-memory.c (dbus_realloc): Don't check guards after shrinking
the allocated block.
(_dbus_memory_test): New function.
* dbus/dbus-test.h: Add _dbus_memory_test ().
* dbus/dbus-test.c (dbus_internal_do_not_use_run_tests): Call it.

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sat, 28 Jun 2003 23:08:14 +0000 (23:08 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* dbus/dbus-message.c (decode_header_data): Use %.4s instead
of %c%c%c%c.
(dbus_message_new): Remove obsolete @todo.

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sat, 28 Jun 2003 23:03:26 +0000 (23:03 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* dbus/dbus-marshal.c (_dbus_marshal_set_int64)
(_dbus_marshal_set_uint64): Fix comment.

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sat, 28 Jun 2003 23:00:58 +0000 (23:00 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* dbus/dbus-message.c (append_int_field, append_uint_field): Don't
hardcode FIELD_REPLY_SERIAL.

20 years ago2003-06-29 Miloslav Trmac <mitr@volny.cz>
Miloslav Trmac [Sat, 28 Jun 2003 22:56:27 +0000 (22:56 +0000)]
2003-06-29  Miloslav Trmac  <mitr@volny.cz>

* dbus/dbus-mainloop.c (_dbus_loop_remove_watch)
(_dbus_loop_remove_timeout): Cast function pointers to (void *) for %p

* configure.in: Add -D_POSIX_C_SOURCE=199309L -DBSD_SOURCE to CFLAGS
and disable DBUS_USE_ATOMIC_INT_486 when --enable-ansi is used

21 years ago2003-06-24 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Wed, 25 Jun 2003 01:05:46 +0000 (01:05 +0000)]
2003-06-24  Havoc Pennington  <hp@pobox.com>

* mono/*.cs: Use IntPtr.Zero instead of ((IntPtr) 0)

21 years ago2003-06-23 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Mon, 23 Jun 2003 17:39:48 +0000 (17:39 +0000)]
2003-06-23  Anders Carlsson  <andersca@codefactory.se>

* configure.in:
* gcj/.cvsignore:
* gcj/Hello.java:
* gcj/Makefile.am:
* gcj/TestMessage.java: (TestMessage), (TestMessage.main):
* gcj/org/.cvsignore:
* gcj/org/Makefile.am:
* gcj/org/freedesktop/.cvsignore:
* gcj/org/freedesktop/Makefile.am:
* gcj/org/freedesktop/dbus/.cvsignore:
* gcj/org/freedesktop/dbus/Makefile.am:
* gcj/org/freedesktop/dbus/Message.java: (Message),
(Message.Message):
* gcj/org/freedesktop/dbus/natMessage.cc:
Fix the build system.

21 years ago2003-06-22 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 23 Jun 2003 02:12:19 +0000 (02:12 +0000)]
2003-06-22  Havoc Pennington  <hp@pobox.com>

* mono/Connection.cs: add more bindings

* dbus/dbus-threads.c (dbus_threads_init): allow calling this
more than once.

21 years ago2003-06-22 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 22 Jun 2003 22:59:31 +0000 (22:59 +0000)]
2003-06-22  Havoc Pennington  <hp@pobox.com>

* mono/Connection.cs, mono/DBus.cs, mono/Error.cs:
Start wrapping more stuff.

21 years ago2003-06-22 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 22 Jun 2003 20:46:17 +0000 (20:46 +0000)]
2003-06-22  Havoc Pennington  <hp@pobox.com>

* mono/Message.cs: implement Message.Wrap() that ensures we only
have a single C# wrapper per DBusMessage, assuming it works which
it probably doesn't.

* dbus/dbus-message.c (dbus_message_allocate_data_slot): new
(dbus_message_free_data_slot): new
(dbus_message_set_data): new
(dbus_message_get_data): new

21 years ago2003-06-22 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 22 Jun 2003 19:39:47 +0000 (19:39 +0000)]
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

21 years ago2003-06-22 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Sun, 22 Jun 2003 15:24:16 +0000 (15:24 +0000)]
2003-06-22  Anders Carlsson  <andersca@codefactory.se>

* configure.in: Add AM_PROG_GCJ and move AM_PROG_LIBTOOL
after the gcj checks so that the correct configuration tags
will be added to libtool.

21 years ago2003-06-22 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Sun, 22 Jun 2003 06:53:42 +0000 (06:53 +0000)]
2003-06-22  Anders Carlsson  <andersca@codefactory.se>

* dbus-glib-1.pc.in: No need to specify any includes since
dbus-1.pc.in has those.

21 years ago2003-06-22 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 22 Jun 2003 05:53:06 +0000 (05:53 +0000)]
2003-06-22  Havoc Pennington  <hp@pobox.com>

* mono/*, gcj/*, configure.in, Makefile.am:
Check in makefiles and subdirs for mono and gcj bindings.
Neither binding actually exists, just trying to get through
all the build and other boring bits.

21 years ago2003-06-21 Philip Blundell <philb@gnu.org>
Philip Blundell [Sat, 21 Jun 2003 22:20:30 +0000 (22:20 +0000)]
2003-06-21  Philip Blundell  <philb@gnu.org>

* tools/dbus-monitor.1: Updated.

* tools/dbus-send.1: Likewise.

21 years ago2003-06-20 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Sat, 21 Jun 2003 07:51:39 +0000 (07:51 +0000)]
2003-06-20  Anders Carlsson  <andersca@codefactory.se>

* dbus/dbus-transport-unix.c (unix_handle_watch): Check
for hangup and error after checking read so we won't discard
pending data if both hangup and read are set.

21 years ago2003-06-19 Philip Blundell <philb@gnu.org>
Anders Carlsson [Thu, 19 Jun 2003 22:22:37 +0000 (22:22 +0000)]
2003-06-19  Philip Blundell  <philb@gnu.org>

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

* tools/dbus-send.c: Accept both --system and --session.

* tools/dbus-monitor.c: Same here.

21 years ago2003-06-19 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Thu, 19 Jun 2003 22:19:56 +0000 (22:19 +0000)]
2003-06-19  Anders Carlsson  <andersca@codefactory.se>

* glib/dbus-glib.h: Fix so that dbus-glib.h can be used
from C++ (Patch by Miloslav Trmac).

21 years agoAdd .dbus-keyrings
Anders Carlsson [Wed, 18 Jun 2003 10:56:34 +0000 (10:56 +0000)]
Add .dbus-keyrings

21 years agoAdd .cvsignore files
Anders Carlsson [Wed, 18 Jun 2003 10:48:08 +0000 (10:48 +0000)]
Add .cvsignore files

21 years ago2003-06-15 Joe Shaw <joe@assbarn.com>
Joe Shaw [Sun, 15 Jun 2003 10:45:07 +0000 (10:45 +0000)]
2003-06-15  Joe Shaw  <joe@assbarn.com>

* configure.in: Check for socklen_t.

* dbus/dbus-sysdeps.c: Define socklen_t if it's not defined.

* test/test-segfault.c: Add #include <sys/time.h>

* tools/Makefile.am: Add DBUS_X_CFLAGS to the INCLUDES since
dbus-launch needs it.

21 years ago2003-06-09 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 9 Jun 2003 22:09:34 +0000 (22:09 +0000)]
2003-06-09  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-sysdeps.c (_dbus_listen_unix_socket): don't use
SUN_LEN, it breaks abstract socket usage

* dbus/dbus-internals.c (_dbus_verbose_real): only print PID at
starts of lines.

21 years ago2003-06-04 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Wed, 4 Jun 2003 05:20:20 +0000 (05:20 +0000)]
2003-06-04  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-server.c (dbus_server_listen): allow abstract sockets
using unix:abstract=/foo, and when listening in a tmpdir
i.e. unix:tmpdir=/tmp, always use abstract sockets if we can.

* dbus/dbus-transport.c (_dbus_transport_open): support
unix:abstract=/foo

* dbus/dbus-server-unix.c (_dbus_server_new_for_domain_socket):
support abstract sockets

* dbus/dbus-transport-unix.c
(_dbus_transport_new_for_domain_socket): support abstract sockets

* dbus/dbus-sysdeps.c (_dbus_connect_unix_socket): add "abstract"
toggle as an argument, implement abstract namespace support
(_dbus_listen_unix_socket): ditto

* configure.in: add --enable-abstract-sockets and implement
a configure check for autodetection of the right value.

21 years ago2003-06-01 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 1 Jun 2003 07:33:59 +0000 (07:33 +0000)]
2003-06-01  Havoc Pennington  <hp@pobox.com>

* tools/dbus-cleanup-sockets.c: add utility to clean up sockets
in /tmp (though on Linux this will end up being useless,
when we add abstract namespace support)

* configure.in: define DBUS_SESSION_SOCKET_DIR in addition to
subst'ing it

21 years ago2003-05-28 Colin Walters <walters@verbum.org>
Colin Walters [Wed, 28 May 2003 21:26:03 +0000 (21:26 +0000)]
2003-05-28  Colin Walters  <walters@verbum.org>

* tools/dbus-monitor.c (main): Fix silly typo (s/--session/--system/).

21 years ago2003-05-18 Anders Carlsson <andersca@codefactory.se>
Anders Carlsson [Sun, 18 May 2003 11:18:11 +0000 (11:18 +0000)]
2003-05-18  Anders Carlsson  <andersca@codefactory.se>

* dbus/dbus-message.c (dbus_message_new): Remove @todo.

21 years ago2003-05-17 Colin Walters <walters@gnu.org>
Colin Walters [Sun, 18 May 2003 02:39:47 +0000 (02:39 +0000)]
2003-05-17  Colin Walters  <walters@gnu.org>

* tools/dbus-send.c: Don't exit with an error code if --help was
passed.  Default to using the session bus instead of the system
one.

* tools/dbus-launch.c: Ditto.

* tools/dbus-monitor.c: Ditto.

* tools/dbus-send.1: Update with new arguments.

* tools/dbus-launch.c: Emit code to export variables.  New
arguments -s and -c to specify shell syntax, and a bit of code to
autodetect syntax.  Also, allow specifying a program to run.

* tools/dbus-launch.1: Update with new arguments.

* tools/dbus-send.1: Ditto.

* tools/dbus-monitor.1: Ditto.

21 years ago2003-05-17 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 17 May 2003 17:53:17 +0000 (17:53 +0000)]
2003-05-17  Havoc Pennington  <hp@pobox.com>

* bus/config-parser.c (merge_included): merge in policies from
child configuration file.

* bus/policy.c (bus_policy_merge): function to merge two policies
together

21 years ago2003-05-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 16 May 2003 20:09:25 +0000 (20:09 +0000)]
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

21 years ago2003-05-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 16 May 2003 16:48:07 +0000 (16:48 +0000)]
2003-05-16  Havoc Pennington  <hp@redhat.com>

* bus/policy.c (free_rule_list_func): avoid a crash when passed
NULL as DBusHashTable is annoyingly likely to do.

21 years ago2003-05-16 Colin Walters <walters@verbum.org>
Colin Walters [Fri, 16 May 2003 16:01:56 +0000 (16:01 +0000)]
2003-05-16  Colin Walters  <walters@verbum.org>

* tools/dbus-monitor.c: Add --session argument and usage()
function.

* tools/dbus-monitor.1: Update with new --session arg.

* bus/Makefile.am (install-data-hook): Create
$(libdir)/dbus-1.0/services so that the session bus is happy.

21 years ago2003-05-15 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 15 May 2003 20:11:34 +0000 (20:11 +0000)]
2003-05-15  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-sysdeps.c (_dbus_atomic_dec, _dbus_atomic_inc): work
on non-x86. ifdef's are evil.

21 years ago2003-05-15 Havoc Pennington <hp@redhat.com> dbus-0.11
Havoc Pennington [Thu, 15 May 2003 19:59:19 +0000 (19:59 +0000)]
2003-05-15  Havoc Pennington  <hp@redhat.com>

* configure.in: 0.11

* NEWS: update

* bus/Makefile.am (initddir): apparently we are supposed to put
init scripts in /etc/rc.d/init.d not /etc/init.d

* bus/Makefile.am: remove the "you must --enable-tests to make
check" as it broke distcheck

* bus/Makefile.am (install-data-hook): create /etc/dbus-1/system.d

21 years ago2003-05-13 James Willcox <jwillcox@gnome.org>
James Willcox [Wed, 14 May 2003 02:40:41 +0000 (02:40 +0000)]
2003-05-13  James Willcox  <jwillcox@gnome.org>

* configure.in:
* bus/activation.c: (bus_activation_service_created),
(bus_activation_activate_service):
* bus/driver.c: (bus_driver_send_service_deleted),
(bus_driver_send_service_created), (bus_driver_send_service_lost),
(bus_driver_send_service_acquired),
(bus_driver_send_welcome_message),
(bus_driver_handle_list_services):
* bus/session.conf.in:
* dbus/dbus-bus.c: (dbus_bus_acquire_service),
(dbus_bus_service_exists), (dbus_bus_activate_service):
* dbus/dbus-bus.h:

Add some convenience API which lets you activate a service, and did a
bunch of s/0/DBUS_TYPE_INVALID/ in calls to dbus_message_append_args()
and dbus_message_get_args()

21 years ago2003-05-11 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 12 May 2003 02:44:45 +0000 (02:44 +0000)]
2003-05-11  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-marshal.c (_dbus_marshal_validate_arg): fix to avoid
calling _dbus_marshal_validate_arg() for every byte in a byte
array, etc.

* dbus/dbus-message-handler.c: use atomic reference counting to
reduce number of locks slightly; the global lock in here sucks

* dbus/dbus-connection.c
(_dbus_connection_update_dispatch_status_and_unlock): variant of
update_dispatch_status that can be called with lock held; then use
in a couple places to reduce locking/unlocking
(dbus_connection_send): hold the lock over the whole function
instead of acquiring it twice.

* dbus/dbus-timeout.c (_dbus_timeout_new): handle OOM

* bus/connection.c (bus_connections_setup_connection): fix access
to already-freed memory.

* dbus/dbus-connection.c: keep a little cache of linked list
nodes, to avoid using the global linked list alloc lock in the
normal send-message case. Instead we just use the connection lock
that we already have to take.

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

* dbus/dbus-sysdeps.c (_dbus_atomic_inc, _dbus_atomic_dec):
change to use a struct for the atomic type; fix docs,
they return value before increment, not after increment.

* dbus/dbus-string.c (_dbus_string_append_4_aligned)
(_dbus_string_append_8_aligned): new functions to try to
microoptimize this operation.
(reallocate_for_length): break this out of set_length(), to
improve profile info, and also so we can consider inlining the
set_length() part.

* dbus/dbus-message.c (dbus_message_new_empty_header): init data
strings with some preallocation, cuts down on our calls to realloc
a fair bit. Though if we can get the "move entire string to empty
string" optimization below to kick in here, it would be better.

* dbus/dbus-string.c (_dbus_string_move): just call
_dbus_string_move_len
(_dbus_string_move_len): add a special case for moving
an entire string into an empty string; we can just
swap the string data instead of doing any reallocs.
(_dbus_string_init_preallocated): new function

21 years ago2003-05-11 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 11 May 2003 07:59:08 +0000 (07:59 +0000)]
2003-05-11  Havoc Pennington  <hp@pobox.com>

Write a "test-profile" that does echo client-server with threads;
profile reveals lock contention, memcpy/realloc of buffers, and
UTF-8 validation as hot spots. 20% of lock contention eliminated
with dbus_atomic_inc/dec implementation on x86.  Much remaining
contention is global mempool locks for GList and DBusList.

* dbus/dbus-sysdeps.c (_dbus_atomic_inc, _dbus_atomic_dec): add
x86 implementation

* dbus/dbus-connection.c (struct DBusConnection): use
dbus_atomic_t for the reference count

* dbus/dbus-message.c (struct DBusMessage): declare
dbus_atomic_t values as volatile

* configure.in: code to detect ability to use atomic integer
operations in assembly, from GLib patch

* dbus/dbus-internals.c (_dbus_verbose_real): call getpid every
time, tired of it being wrong in threads and forked processes

* glib/test-profile.c: a little program to bounce messages back
and forth between threads and eat CPU

* dbus/dbus-connection.c: add debug spew macros for debugging
thread locks; include config.h at top; fix deadlock in
dbus_connection_flush()

21 years ago2003-05-08 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Fri, 9 May 2003 04:15:56 +0000 (04:15 +0000)]
2003-05-08  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-spawn.c: s/_exit/exit/ because it was keeping gcov
data from getting written, and there wasn't a good reason to
use _exit really.

* test/decode-gcov.c (mark_inside_dbus_build_tests): don't count
dbus_verbose lines in test coverage
(main): add list of functions sorted by # of untested blocks
to the coverage report

* dbus/dbus-mempool.c: put some test-only code in DBUS_BUILD_TESTS

* dbus/dbus-marshal.c (_dbus_marshal_test): extend test coverage

* dbus/dbus-message-handler.c (_dbus_message_handler_test):
extend test coverage

* test/data/auth/cancel.auth-script: test canceling an
authentication

* dbus/Makefile.am: remove dbus-server-debug.[hc] for now, as they
aren't used. in CVS history if we end up needing them.

21 years agoadd note to TODO about serial numbers
Havoc Pennington [Mon, 5 May 2003 19:12:58 +0000 (19:12 +0000)]
add note to TODO about serial numbers

21 years ago2003-05-04 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 5 May 2003 03:13:35 +0000 (03:13 +0000)]
2003-05-04  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-message-handler.c (_dbus_message_handler_test): add
unit test

* dbus/dbus-marshal.c (_dbus_demarshal_string_array): fix this
function, which assumed length was in # of strings, not bytes

* dbus/dbus-message.c (_dbus_message_test): add tests for some
missing coverage

* dbus/dbus-connection.c
(_dbus_connection_queue_received_message): disable function for
now, we are only using it in test mode

* dbus/dbus-message.c (_dbus_message_loader_queue_messages):
remove a mistaken FIXME

21 years ago2003-05-04 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 4 May 2003 23:55:06 +0000 (23:55 +0000)]
2003-05-04  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-connection.c (dbus_connection_preallocate_send):
unlock mutex on successful return, patch from Anders Gustafsson

21 years ago2003-05-04 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 4 May 2003 20:33:15 +0000 (20:33 +0000)]
2003-05-04  Havoc Pennington  <hp@pobox.com>

* dbus-glib-1.pc.in (Requires): fix dependencies, from
Anders Gustafsson

21 years ago2003-05-04 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 4 May 2003 08:54:24 +0000 (08:54 +0000)]
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

21 years ago2003-05-03 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 4 May 2003 03:22:46 +0000 (03:22 +0000)]
2003-05-03  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-watch.c (dbus_watch_handle): warn and return if a
watch is invalid when handled

* tools/Makefile.am, tools/dbus-launch.c, tools/dbus-launch.1: add
dbus-launch utility to launch the bus from a shell script.  Didn't
actually implement dbus-launch yet, it's just a placeholder still.

21 years ago2003-05-03 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 3 May 2003 23:20:34 +0000 (23:20 +0000)]
2003-05-03  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-address.c (dbus_parse_address): fix bug when a key in
the address had no value, and add to test suite. Fix and
regression test from Miloslav Trmac

21 years ago2003-05-03 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 3 May 2003 23:07:19 +0000 (23:07 +0000)]
2003-05-03  Havoc Pennington  <hp@pobox.com>

* bus/Makefile.am, bus/dbus-daemon-1.1.in: man page for the
daemon; also documents daemon config file, so replaces
doc/config-file.txt. Corrected some stuff from config-file.txt in
the process of moving it.

21 years ago2003-05-03 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 3 May 2003 22:03:16 +0000 (22:03 +0000)]
2003-05-03  Havoc Pennington  <hp@pobox.com>

* tools/Makefile.am, tools/dbus-send.1, tools/dbus-monitor.1:
add some man pages

21 years ago2003-05-03 Colin Walters <walters@verbum.org>
Colin Walters [Sat, 3 May 2003 20:53:40 +0000 (20:53 +0000)]
2003-05-03  Colin Walters  <walters@verbum.org>

* dbus/dbus-sysdeps.c (fill_user_info): Test against
DBUS_UID_UNSET to determine whether to do a uid lookup or not.

* Makefile.am: Update to use new .pc versioning scheme.

21 years ago2003-05-02 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 2 May 2003 22:24:32 +0000 (22:24 +0000)]
2003-05-02  Havoc Pennington  <hp@redhat.com>

* bus/system.conf.in: allow send/receive to/from message bus
service

21 years ago2003-04-30 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Wed, 30 Apr 2003 21:24:41 +0000 (21:24 +0000)]
2003-04-30  Havoc Pennington  <hp@redhat.com>

* configure.in: print a note when building with unit tests and
without assertions

21 years ago2003-04-30 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Wed, 30 Apr 2003 21:15:44 +0000 (21:15 +0000)]
2003-04-30  Havoc Pennington  <hp@redhat.com>

* Makefile.am: add a check-local that complains if you didn't
configure with --enable-tests

21 years ago2003-04-29 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 29 Apr 2003 22:57:13 +0000 (22:57 +0000)]
2003-04-29  Havoc Pennington  <hp@redhat.com>

* glib/dbus-gmain.c: docs cleanups

* dbus/dbus-types.h: add docs on int64 types

* dbus/dbus-memory.c: fix docs to avoid putting private API in
public API docs section

21 years ago2003-04-29 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 29 Apr 2003 21:56:37 +0000 (21:56 +0000)]
2003-04-29  Havoc Pennington  <hp@redhat.com>

* dbus-1.pc.in, dbus-glib-1.pc.in: rename these from
dbus-1.0.pc.in, dbus-glib-1.0.pc.in. As these change with the
parallel install API version, not with the D-BUS package version.

* HACKING: move some of README over here

* README: updates, and document API/ABI policy

* configure.in: reindentation

21 years ago2003-04-29 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 29 Apr 2003 21:27:59 +0000 (21:27 +0000)]
2003-04-29  Havoc Pennington  <hp@redhat.com>

* dbus/dbus.h: add "you have to define DBUS_API_SUBJECT_TO_CHANGE
to use this library" to be sure people have the right
expectations.

21 years ago2003-04-28 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 28 Apr 2003 23:40:17 +0000 (23:40 +0000)]
2003-04-28  Havoc Pennington  <hp@redhat.com>

        * configure.in: add --enable-docs which by default is auto yes if
        doxygen and db2html found, no otherwise; but can be forced on/off

        * doc/Makefile.am: conditionalize whether to build docs on
        --enable-docs

21 years ago2003-04-28 Havoc Pennington <hp@redhat.com> dbus-0.10
Havoc Pennington [Mon, 28 Apr 2003 19:29:42 +0000 (19:29 +0000)]
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.

21 years ago2003-04-27 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 27 Apr 2003 06:25:42 +0000 (06:25 +0000)]
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

21 years ago2003-04-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 25 Apr 2003 23:50:34 +0000 (23:50 +0000)]
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

21 years ago2003-04-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 25 Apr 2003 20:48:45 +0000 (20:48 +0000)]
2003-04-25  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-transport.c (_dbus_transport_get_unix_user): fix bug
where we used >= 0 instead of != DBUS_UID_UNSET.

21 years ago2003-04-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 25 Apr 2003 20:41:49 +0000 (20:41 +0000)]
2003-04-25  Havoc Pennington  <hp@redhat.com>

* glib/dbus-gmain.c (remove_watch): fix for a crash when watches
were toggled without add/remove, fix from Anders Gustafsson

21 years ago2003-04-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 24 Apr 2003 22:30:38 +0000 (22:30 +0000)]
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.

21 years ago2003-04-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 24 Apr 2003 21:26:25 +0000 (21:26 +0000)]
2003-04-24  Havoc Pennington  <hp@redhat.com>

* bus/dispatch.c: somehow missed some name_is

* dbus/dbus-timeout.c (_dbus_timeout_set_enabled)
(_dbus_timeout_set_interval): new

* bus/connection.c (bus_connections_setup_connection): record time
when each connection is first set up, and expire them after the
auth timeout passes.

21 years agoremove TODO item for the name_is rename
Havoc Pennington [Thu, 24 Apr 2003 19:36:04 +0000 (19:36 +0000)]
remove TODO item for the name_is rename

21 years ago2003-04-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 24 Apr 2003 19:35:11 +0000 (19:35 +0000)]
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

21 years ago2003-04-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 24 Apr 2003 19:18:23 +0000 (19:18 +0000)]
2003-04-24  Havoc Pennington  <hp@redhat.com>

* configure.in: add --enable-checks

* dbus/dbus-message.c (dbus_message_new): reverse name/service arguments

* dbus/dbus-connection.c (dbus_connection_preallocate_send): fix
to use thread locks.
(_dbus_connection_handler_destroyed_locked): move some private
functions into proper docs group

* dbus/dbus-internals.h: add _dbus_return_if_fail,
_dbus_return_val_if_fail

Throughout: use dbus_return_if_fail

21 years ago2003-04-23 James Willcox <jwillcox@gnome.org>
James Willcox [Thu, 24 Apr 2003 02:22:49 +0000 (02:22 +0000)]
2003-04-23  James Willcox  <jwillcox@gnome.org>

* glib/dbus-glib.h:
* glib/dbus-gmain.c: (add_timeout), (wakeup_main), (create_source),
(dbus_connection_setup_with_g_main),
(dbus_server_setup_with_g_main):
* glib/test-dbus-glib.c: (main):
* glib/test-thread-client.c: (main):
* glib/test-thread-server.c: (new_connection_callback), (main):
* tools/dbus-monitor.c: (main):

Added a GMainContext argument to dbus_connection_setup_with_g_main()
and dbus_server_setup_with_g_main().

21 years ago2003-04-20 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Wed, 23 Apr 2003 03:36:12 +0000 (03:36 +0000)]
2003-04-20  Havoc Pennington  <hp@pobox.com>

* doc/dbus-specification.sgml: document the restrictions on
message and service names

21 years ago2003-04-22 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Wed, 23 Apr 2003 03:33:52 +0000 (03:33 +0000)]
2003-04-22  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c, dbus/dbus-marshal.c: add 64-bit integer
support, and do some code cleanups to share more code and
speed up array marshal/demarshal.

* dbus-1.0.pc.in (Cflags): put libdir include file in cflags

* configure.in: generate dbus-arch-deps.h

* dbus/dbus-protocol.h (DBUS_TYPE_INT64, DBUS_TYPE_UINT64): add
64-bit typecodes

21 years ago2003-04-22 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 22 Apr 2003 19:34:33 +0000 (19:34 +0000)]
2003-04-22  Havoc Pennington  <hp@redhat.com>

* test/data/valid-messages/opposite-endian.message: fix test
to use proper type for rply field

        * test/data/invalid-messages: add tests for below validation

* dbus/dbus-message.c (decode_header_data): validate field types,
and validate that named fields are valid names
(decode_name_field): consider messages in the
org.freedesktop.Local. namespace to be invalid.

* dbus/dbus-string.c (_dbus_string_validate_name): new

21 years ago2003-04-19 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 19 Apr 2003 16:16:24 +0000 (16:16 +0000)]
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

21 years ago2003-04-18 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Fri, 18 Apr 2003 17:45:34 +0000 (17:45 +0000)]
2003-04-18  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-auth.c (record_mechanisms): memleak fixes

* dbus/dbus-sysdeps.c (_dbus_string_save_to_file): fix some
memleaks

* dbus/dbus-keyring.c (add_new_key): fix a memleak, and
on realloc be sure to update the pointer in the keyring

* dbus/dbus-string.c (_dbus_string_zero): compensate for align
offset to avoid writing to unallocated memory

* dbus/dbus-auth.c (process_rejected): return FALSE if we fail to
try the next mechanism, so we properly handle OOM

* dbus/dbus-keyring.c (_dbus_keyring_new_homedir): fix double-free
on OOM.
(_dbus_keyring_new): fix OOM bug
(_dbus_keyring_new_homedir): always set error; impose a maximum
number of keys we'll load from the file, mostly to speed up the
test suite and make its OOM checks more useful, but also for
general sanity.

* dbus/dbus-auth.c (process_error_server): reject authentication
if we get an error from the client
(process_cancel): on cancel, send REJECTED, per the spec
(process_error_client): send CANCEL if we get an error from the
server.

21 years ago2003-04-18 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Fri, 18 Apr 2003 05:52:11 +0000 (05:52 +0000)]
2003-04-18  Havoc Pennington  <hp@pobox.com>

* dbus/dbus-mainloop.c (_dbus_loop_iterate): fix UMR in verbose
debug spew

* dbus/dbus-auth.c (handle_client_data_cookie_sha1_mech): fix OOM
handling problem

* dbus/dbus-keyring.c (_dbus_keyring_new_homedir): only whine
about DBUS_TEST_HOMEDIR once

* bus/Makefile.am (TESTS_ENVIRONMENT): put DBUS_TEST_HOMEDIR in
the environment

* bus/dispatch.c (bus_dispatch_sha1_test): actually load sha1
config file so we test the right thing

Throughout: assorted docs improvements

21 years ago2003-04-18 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Fri, 18 Apr 2003 04:18:57 +0000 (04:18 +0000)]
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.

21 years ago2003-04-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 17 Apr 2003 23:17:04 +0000 (23:17 +0000)]
2003-04-17  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-userdb.c, dbus/dbus-sysdeps.c: redo all the passwd
database usage so it all goes via the DBusUserDatabase cache.

21 years ago2003-04-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Thu, 17 Apr 2003 20:25:33 +0000 (20:25 +0000)]
2003-04-17  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-mainloop.c (_dbus_loop_iterate): fix logic so that if
there was an OOM watch we skipped, we always return TRUE so we
iterate again to have a look at it again. Fixes test suite hang.
Code rearrangement also lets us lose some memset and only iterate
over callbacks once.

* bus/driver.c (bus_driver_handle_message): sense of test for
reply was backward

21 years ago2003-04-16 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Thu, 17 Apr 2003 04:25:45 +0000 (04:25 +0000)]
2003-04-16  Havoc Pennington  <hp@pobox.com>

* doc/dbus-specification.sgml: make spec say serials are unsigned

* dbus/dbus-message.h: change message serials to unsigned

* dbus/dbus-connection.c: adapt to message serials being unsigned

21 years ago2003-04-15 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Thu, 17 Apr 2003 00:46:36 +0000 (00:46 +0000)]
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.

21 years ago2003-04-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Wed, 16 Apr 2003 23:01:33 +0000 (23:01 +0000)]
2003-04-16  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c (_dbus_message_add_size_counter): keep a
list of size counters
(_dbus_message_loader_putback_message_link): put back a popped link

* dbus/dbus-connection.c
(dbus_connection_set_max_live_messages_size): rename
max_received_size
(dbus_connection_get_outgoing_size): get size of outgoing
queue
(_dbus_connection_set_connection_counter): remove this cruft

21 years ago2003-04-14 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 14 Apr 2003 23:52:40 +0000 (23:52 +0000)]
2003-04-14  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-userdb.c: user database abstraction, mostly to get
caching, but at some point we might want to be able to use a
different database.

* bus/dispatch.c (bus_dispatch_sha1_test): add a test that uses
SHA1 conf file to test the sha1 auth mechanism, since the regular
test always uses EXTERNAL when available.

* configure.in,
test/data/valid-config-files/debug-allow-all-sha1.conf.in:
add conf file that requires use of sha1 auth

21 years ago2003-04-13 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 14 Apr 2003 03:25:19 +0000 (03:25 +0000)]
2003-04-13  Havoc Pennington  <hp@pobox.com>

        * tools/dbus-send.c, tools/dbus-monitor.c: two utility programs
from Philip Blundell to send messages and monitor them.

21 years ago2003-04-13 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Mon, 14 Apr 2003 02:29:21 +0000 (02:29 +0000)]
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

21 years ago2003-04-13 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 13 Apr 2003 08:33:10 +0000 (08:33 +0000)]
2003-04-13  Havoc Pennington  <hp@pobox.com>

* bus/config-parser.c: Load up the BusPolicy and BusPolicyRules

* dbus/dbus-sysdeps.c (_dbus_get_user_id): new function

* bus/policy.c (bus_policy_append_mandatory_rule)
(bus_policy_append_default_rule, bus_policy_append_user_rule)
(bus_policy_append_group_rule): new functions

21 years ago2003-04-12 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sun, 13 Apr 2003 00:10:53 +0000 (00:10 +0000)]
2003-04-12  Havoc Pennington  <hp@pobox.com>

* bus/config-parser.c (bus_config_parser_new): fix a memleak

* dbus/dbus-sysdeps.c: change DBusCredentials to use longs for
the pid/gid/uid, just for paranoia.

* test/break-loader.c (randomly_do_n_things): find a byte
containing a type code, and randomly change it to a different
type code.

21 years ago2003-04-12 Havoc Pennington <hp@pobox.com>
Havoc Pennington [Sat, 12 Apr 2003 18:32:11 +0000 (18:32 +0000)]
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))__

21 years ago2003-04-11 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 11 Apr 2003 21:21:21 +0000 (21:21 +0000)]
2003-04-11  Havoc Pennington  <hp@redhat.com>

* configure.in: add another directory to look for qt in.

21 years ago2003-04-11 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 11 Apr 2003 20:31:10 +0000 (20:31 +0000)]
2003-04-11  Havoc Pennington  <hp@redhat.com>

* AUTHORS: add Colin Walters

21 years ago2003-04-11 Havoc Pennington <hp@redhat.com> dbus-0.9
Havoc Pennington [Fri, 11 Apr 2003 20:25:34 +0000 (20:25 +0000)]
2003-04-11  Havoc Pennington  <hp@redhat.com>

* NEWS: update

* configure.in: 0.9