platform/upstream/dbus.git
19 years ago2005-01-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 18 Jan 2005 00:20:39 +0000 (00:20 +0000)]
2005-01-17  Havoc Pennington  <hp@redhat.com>

* doc/dbus-specification.xml: partially update spec

19 years ago2005-01-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 17 Jan 2005 22:03:19 +0000 (22:03 +0000)]
2005-01-17  Havoc Pennington  <hp@redhat.com>

        * Throughout, align variant bodies according to the contained
type, rather than always to 8. Should save a fair bit of space in
message headers.

* dbus/dbus-marshal-validate.c (_dbus_validate_body_with_reason):
fix handling of case where p == end

* doc/TODO: remove the dbus_bool_t item and variant alignment items

19 years ago2005-01-17 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 17 Jan 2005 19:49:52 +0000 (19:49 +0000)]
2005-01-17  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-types.h: hardcode dbus_bool_t to 32 bits

* Throughout: modify DBUS_TYPE_BOOLEAN to be a 32-bit type instead
of an 8-bit type. Now dbus_bool_t is the type to use whenever you
are marshaling/unmarshaling a boolean.

19 years ago2005-01-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 17 Jan 2005 03:53:40 +0000 (03:53 +0000)]
2005-01-16  Havoc Pennington  <hp@redhat.com>

        This is about it on what can be disabled/deleted from libdbus
easily, back below 150K anyhow. Deeper cuts are more work than
just turning the code off as I've done here.

* dbus/dbus-marshal-basic.c (_dbus_pack_int32): we don't need the
signed int convenience funcs

* dbus/dbus-internals.c (_dbus_verbose_real): omit when not in
verbose mode

* dbus/dbus-string-util.c, dbus/dbus-string.c: more breaking
things out of libdbus

* dbus/dbus-sysdeps.c, dbus/dbus-sysdeps-util.c: same

* dbus/dbus-hash.c: purge the TWO_STRINGS crap (well, make it
tests-enabled-only, though it should probably be deleted)

* dbus/dbus-message-util.c: same stuff

* dbus/dbus-auth-util.c: same stuff

19 years ago2005-01-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 17 Jan 2005 01:20:02 +0000 (01:20 +0000)]
2005-01-16  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-userdb-util.c: split out part of dbus-userdb.c

* dbus/dbus-sysdeps.c (_dbus_uid_from_string): move here to pave
way for stripping down dbus-userdb.c stuff included in libdbus.
Rename _dbus_parse_uid for consistency.

19 years ago2005-01-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 17 Jan 2005 00:16:28 +0000 (00:16 +0000)]
2005-01-16  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-internals.c (_dbus_real_assert): print the function
name the assertion failed in

* dbus/dbus-internals.h (_dbus_return_if_fail)
(_dbus_return_val_if_fail): assert that the name of the function
containing the check doesn't start with '_', since we only want to
use checks on public functions

* dbus/dbus-connection.c (_dbus_connection_ref_unlocked): change
checks to assertions

* dbus/dbus-marshal-header.c (_dbus_header_set_field_basic):
change checks to asserts for private function

* dbus/dbus-message.c (_dbus_message_set_serial): checks
to asserts for private function

* dbus/dbus-marshal-recursive.c (skip_one_complete_type): remove
broken assertion that was breaking make check
(_dbus_type_reader_array_is_empty): remove this rather than fix
it, was only used in assertions

19 years ago2005-01-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 16 Jan 2005 22:13:35 +0000 (22:13 +0000)]
2005-01-16  Havoc Pennington  <hp@redhat.com>

* test/unused-code-gc.py: hacky script to find code that's used
only by the bus (not libdbus) or used only by tests or not used at
all. It has some false alarms, but looks like we can clean up a
lot of size from libdbus.

* dbus/dbus-sysdeps.c, dbus/dbus-sysdeps-utils.c,
dbus/Makefile.am: initially move 10K of binary size out of libdbus

19 years ago2005-01-16 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 16 Jan 2005 15:51:55 +0000 (15:51 +0000)]
2005-01-16  Havoc Pennington  <hp@redhat.com>

        * Add and fix docs according to Doxygen warnings throughout
source.

* dbus/dbus-marshal-recursive.c
(_dbus_type_reader_array_is_empty): change this to just call
array_reader_get_array_len() and make it static

* dbus/dbus-message.c (dbus_message_iter_get_element_type): rename
from get_array_type
(dbus_message_iter_init_append): rename from append_iter_init

* dbus/dbus-marshal-recursive.c
(_dbus_type_reader_get_element_type): rename from
_dbus_type_reader_get_array_type

19 years ago2005-01-15 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 16 Jan 2005 02:23:56 +0000 (02:23 +0000)]
2005-01-15  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c (with_bus_server_filter): fix crash

* dbus/dbus-marshal-basic.c (_dbus_unpack_uint32): inline as macro
when DBUS_DISABLE_ASSERT
(_dbus_marshal_set_basic): be sure we align for the string length

* dbus/dbus-marshal-recursive.c (skip_one_complete_type): make
this look faster

* dbus/dbus-string.c (_dbus_string_get_const_data_len): add an
inline macro version
(_dbus_string_set_byte): provide inline macro version

19 years ago2005-01-15 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 15 Jan 2005 07:15:38 +0000 (07:15 +0000)]
2005-01-15  Havoc Pennington  <hp@redhat.com>

* Land the new message args API and type system.

This patch is huge, but the public API change is not
really large. The set of D-BUS types has changed somewhat,
and the arg "getters" are more geared toward language bindings;
they don't make a copy, etc.

There are also some known issues. See these emails for details
on this huge patch:
http://lists.freedesktop.org/archives/dbus/2004-December/001836.html
        http://lists.freedesktop.org/archives/dbus/2005-January/001922.html

* dbus/dbus-marshal-*: all the new stuff

* dbus/dbus-message.c: basically rewritten

* dbus/dbus-memory.c (check_guards): with "guards" enabled, init
freed blocks to be all non-nul bytes so using freed memory is less
likely to work right

* dbus/dbus-internals.c (_dbus_test_oom_handling): add
DBUS_FAIL_MALLOC=N environment variable, so you can do
DBUS_FAIL_MALLOC=0 to skip the out-of-memory checking, or
DBUS_FAIL_MALLOC=10 to make it really, really, really slow and
thorough.

* qt/message.cpp: port to the new message args API
(operator<<): use str.utf8() rather than str.unicode()
(pretty sure this is right from the Qt docs?)

* glib/dbus-gvalue.c: port to the new message args API

* bus/dispatch.c, bus/driver.c: port to the new message args API

* dbus/dbus-string.c (_dbus_string_init_const_len): initialize the
"locked" flag to TRUE and align_offset to 0; I guess we never
looked at these anyhow, but seems cleaner.

* dbus/dbus-string.h (_DBUS_STRING_ALLOCATION_PADDING):
move allocation padding macro to this header; use it to implement
(_DBUS_STRING_STATIC): ability to declare a static string.

* dbus/dbus-message.c (_dbus_message_has_type_interface_member):
change to return TRUE if the interface is not set.

* dbus/dbus-string.[hc]: move the D-BUS specific validation stuff
to dbus-marshal-validate.[hc]

* dbus/dbus-marshal-basic.c (_dbus_type_to_string): move here from
dbus-internals.c

* dbus/Makefile.am: cut over from dbus-marshal.[hc]
to dbus-marshal-*.[hc]

* dbus/dbus-object-tree.c (_dbus_decompose_path): move this
function here from dbus-marshal.c

19 years agoUpdate some paths in HACKING
Joe Shaw [Thu, 13 Jan 2005 01:22:04 +0000 (01:22 +0000)]
Update some paths in HACKING

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com> dbus-0.23
Joe Shaw [Wed, 12 Jan 2005 22:55:32 +0000 (22:55 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* NEWS: Update for 0.23.

* configure.in: Release 0.23.

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Wed, 12 Jan 2005 22:52:34 +0000 (22:52 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* mono/Makefile.am, mono/example/Makefile.am: Always build the
dbus DLL with --debug.  Clean up after the .mdb files this leaves
behind.

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Wed, 12 Jan 2005 22:48:20 +0000 (22:48 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* mono/Makefile.am, mono/example/Makefile.am: Always build the
dbus DLL with --debug.  Clean up after the .mdb files this leaves
behind.

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Wed, 12 Jan 2005 22:41:29 +0000 (22:41 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* mono/doc/Makefile.am: Need to uninstall the docs on "make
uninstall"

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Wed, 12 Jan 2005 22:34:28 +0000 (22:34 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* mono/Makefile.am, mono/example/Makefile.am: Always build the
dbus DLL with --debug.

19 years ago2005-01-12 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Wed, 12 Jan 2005 17:31:08 +0000 (17:31 +0000)]
2005-01-12  Joe Shaw  <joeshaw@novell.com>

* mono/Makefile.am: Always build the dbus DLL with --debug.

* mono/Arguments.cs (GetDBusTypeConstructor): If the type
is an enum, get the enum's underlying type.  Another mono
1.1.3 fix.

19 years agofix doh! in test for double parsing
Havoc Pennington [Tue, 11 Jan 2005 22:35:58 +0000 (22:35 +0000)]
fix doh! in test for double parsing

19 years ago2005-01-11 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Tue, 11 Jan 2005 22:09:16 +0000 (22:09 +0000)]
2005-01-11  Joe Shaw  <joeshaw@novell.com>

Patch from Sjoerd Simons <sjoerd@luon.net>

* mono/Makefile.am, mono/example/Makefile.am: Don't redefine
DESTDIR.  It breaks stuff.

19 years ago2005-01-11 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Tue, 11 Jan 2005 19:59:06 +0000 (19:59 +0000)]
2005-01-11  Joe Shaw  <joeshaw@novell.com>

Patch from Tambet Ingo <tambet@ximian.com>

* mono/DBusType/Array.cs (Get): Get the underlying element type by
calling type.GetElementType().  The code previously depended on
broken Mono behavior, which was fixed in Mono 1.1.3.

* mono/DBusType/Dict.cs (constructor): Fix the parameters for
Activator.CreateInstance() so that the class's constructor is
called with the right parameters.

19 years ago2005-01-11 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Tue, 11 Jan 2005 19:31:56 +0000 (19:31 +0000)]
2005-01-11  Joe Shaw  <joeshaw@novell.com>

Patch from Timo Teräs <ext-timo.teras@nokia.com>

* dbus/dbus-connection.c
(_dbus_connection_queue_received_message_link): Call
_dbus_connection_remove_timeout() instead of the _locked()
variant, since it's always called from
_dbus_connection_handle_watch(), which handles the locking.
Removed the _locked() variant since it's no longer used.

19 years ago2005-01-03 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 3 Jan 2005 17:18:11 +0000 (17:18 +0000)]
2005-01-03  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-internals.h: I'm an idiot, _dbus_assert certainly can
return

19 years ago2004-12-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 3 Jan 2005 17:06:35 +0000 (17:06 +0000)]
2004-12-26  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-internals.h: add _DBUS_GNUC_NORETURN to _dbus_assert

19 years agoadd a file to hold the validation routines
Havoc Pennington [Mon, 3 Jan 2005 17:05:26 +0000 (17:05 +0000)]
add a file to hold the validation routines

19 years ago2005-01-03 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 3 Jan 2005 07:16:12 +0000 (07:16 +0000)]
2005-01-03  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-sysdeps.c (_dbus_sysdeps_test): fix using == on
floating point

* dbus/dbus-string.c (_dbus_string_insert_alignment): new function

19 years agofinish off my TODO list for stuff needed to port dbus-message.c. Next
Havoc Pennington [Mon, 3 Jan 2005 07:15:38 +0000 (07:15 +0000)]
finish off my TODO list for stuff needed to port dbus-message.c. Next
step is to do so.

19 years agojust when the file was looking all beautiful, add horrible hacky code to
Havoc Pennington [Mon, 3 Jan 2005 04:25:32 +0000 (04:25 +0000)]
just when the file was looking all beautiful, add horrible hacky code to
fixup array lengths after setting a value somewhere within the array.

19 years agocleanup args to read func in test suite
Havoc Pennington [Mon, 3 Jan 2005 00:23:03 +0000 (00:23 +0000)]
cleanup args to read func in test suite

19 years agocheckpoint set_variable_length work
Havoc Pennington [Mon, 3 Jan 2005 00:01:59 +0000 (00:01 +0000)]
checkpoint set_variable_length work

19 years agovalues-only DBusTypeWriter
Havoc Pennington [Sun, 2 Jan 2005 22:13:26 +0000 (22:13 +0000)]
values-only DBusTypeWriter

19 years agominor cleanup
Havoc Pennington [Sun, 2 Jan 2005 20:15:01 +0000 (20:15 +0000)]
minor cleanup

19 years agoclean up the naming of dbus_marshal functions
Havoc Pennington [Sun, 2 Jan 2005 19:10:16 +0000 (19:10 +0000)]
clean up the naming of dbus_marshal functions

19 years agodelete some more noise, put args in consistent order (a big bug trap sadly),
Havoc Pennington [Sun, 2 Jan 2005 08:46:42 +0000 (08:46 +0000)]
delete some more noise, put args in consistent order (a big bug trap sadly),
and work on the set value stuff some

19 years agocleanups and fixes
Havoc Pennington [Sun, 2 Jan 2005 05:01:07 +0000 (05:01 +0000)]
cleanups and fixes

19 years agoimplement _dbus_type_writer_write_reader() (to copy a block of values)
Havoc Pennington [Sun, 2 Jan 2005 04:29:52 +0000 (04:29 +0000)]
implement _dbus_type_writer_write_reader() (to copy a block of values)
which is the first step toward a sane reimplementation of all that delete/modify
and realign nonsense in dbus-message.c

19 years agochange strings to be marshaled consistently with the other basic types (address of...
Havoc Pennington [Sun, 2 Jan 2005 02:47:51 +0000 (02:47 +0000)]
change strings to be marshaled consistently with the other basic types (address of the value passed in, so char**)

19 years agomake reader const-correct
Havoc Pennington [Sun, 2 Jan 2005 02:38:23 +0000 (02:38 +0000)]
make reader const-correct

19 years agoextend unit test to display progress and to verify that we are inserting not appendin...
Havoc Pennington [Sun, 2 Jan 2005 02:17:05 +0000 (02:17 +0000)]
extend unit test to display progress and to verify that we are inserting not appending in all cases

19 years agoadd DBusTypeMark
Havoc Pennington [Sun, 2 Jan 2005 00:37:24 +0000 (00:37 +0000)]
add DBusTypeMark

19 years ago2005-01-01 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 1 Jan 2005 23:32:45 +0000 (23:32 +0000)]
2005-01-01  Havoc Pennington  <hp@redhat.com>

* configure.in: add -Wfloat-equal

19 years agochop dbus-marshal-basic in half and move it to be insertion rather than append based
Havoc Pennington [Sat, 1 Jan 2005 21:05:48 +0000 (21:05 +0000)]
chop dbus-marshal-basic in half and move it to be insertion rather than append based

19 years agovoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 1 Jan 2005 20:53:42 +0000 (20:53 +0000)]
voc Pennington  <hp@redhat.com>

* dbus/dbus-sysdeps.h: add _DBUS_DOUBLES_BITWISE_EQUAL macro,
for a variety of reasons '==' doesn't do this.

19 years agoall types now unit tested and working.
Havoc Pennington [Sat, 1 Jan 2005 08:19:28 +0000 (08:19 +0000)]
all types now unit tested and working.

19 years agoadd more "subclassing" to the test node classes
Havoc Pennington [Sat, 1 Jan 2005 03:37:26 +0000 (03:37 +0000)]
add more "subclassing" to the test node classes

19 years agoyay, variant values working before the new year.
Havoc Pennington [Sat, 1 Jan 2005 03:28:08 +0000 (03:28 +0000)]
yay, variant values working before the new year.

19 years agominor tweaking
Havoc Pennington [Sat, 1 Jan 2005 02:47:13 +0000 (02:47 +0000)]
minor tweaking

19 years agoadd int64 to test suites, fix minor bug where marshaling assumed that DBusOctets8...
Havoc Pennington [Sat, 1 Jan 2005 02:35:09 +0000 (02:35 +0000)]
add int64 to test suites, fix minor bug where marshaling assumed that DBusOctets8 was aligned when passed in as a function argument

19 years agoremove old unit test code, and clean up whitespace
Havoc Pennington [Sat, 1 Jan 2005 02:03:50 +0000 (02:03 +0000)]
remove old unit test code, and clean up whitespace

19 years agotest framework extension
Havoc Pennington [Sat, 1 Jan 2005 02:02:32 +0000 (02:02 +0000)]
test framework extension

19 years agofurther extend tests
Havoc Pennington [Fri, 31 Dec 2004 22:04:27 +0000 (22:04 +0000)]
further extend tests

19 years agonew test framework in place
Havoc Pennington [Fri, 31 Dec 2004 21:08:06 +0000 (21:08 +0000)]
new test framework in place

19 years ago2004-12-31 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 31 Dec 2004 21:01:56 +0000 (21:01 +0000)]
2004-12-31  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-string.c (_dbus_string_equal_substrings): new function
I keep wishing I had

19 years agouse vtable instead of flags for types only iterators
Havoc Pennington [Fri, 31 Dec 2004 00:24:24 +0000 (00:24 +0000)]
use vtable instead of flags for types only iterators

19 years agoadd "types only" TypeReader, will move to use a vtable instead of a flag in a minute
Havoc Pennington [Fri, 31 Dec 2004 00:06:34 +0000 (00:06 +0000)]
add "types only" TypeReader, will move to use a vtable instead of a flag in a minute

19 years ago- add variant reader
Havoc Pennington [Thu, 30 Dec 2004 23:34:23 +0000 (23:34 +0000)]
- add variant reader
- further squish the iterator structs

19 years agostore writer container_type in one byte to shrink iterator
Havoc Pennington [Thu, 30 Dec 2004 22:46:13 +0000 (22:46 +0000)]
store writer container_type in one byte to shrink iterator

19 years agoremove unused element_type_len field
Havoc Pennington [Thu, 30 Dec 2004 22:44:44 +0000 (22:44 +0000)]
remove unused element_type_len field

19 years ago- remove DICT type
Havoc Pennington [Thu, 30 Dec 2004 22:34:17 +0000 (22:34 +0000)]
- remove DICT type
- add SIGNATURE type
- fix max name len of 256, should be 255 so it fits in a byte if it's going to be a number
  near 256
- generalize some of the recursive type marshaling code to share between arrays and variants
- just started on implementing variant

19 years ago2004-12-30 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Thu, 30 Dec 2004 18:28:03 +0000 (18:28 +0000)]
2004-12-30  John (J5) Palmieri  <johnp@redhat.com>

* python/dbus.py: s/ACTIVATION_REPLY_ACTIVE/ACTIVATION_REPLY_ACTIVATED

19 years ago2004-12-30 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Thu, 30 Dec 2004 14:19:54 +0000 (14:19 +0000)]
2004-12-30  John (J5) Palmieri  <johnp@redhat.com>

        * python/dbus_bindings.pyx.in: Change DBUS_ACTIVATION_REPLY_ACTIVATED
        and DBUS_ACTIVATION_REPLY_ALREADY_ACTIVE to match the values in
        dbus-protocol.h.  Because they are defines and not enums they are not
        autogenerated.

19 years agoDBusTypeWriterClass isn't going to work well, so remove vestiges of it.
Havoc Pennington [Wed, 29 Dec 2004 22:31:01 +0000 (22:31 +0000)]
DBusTypeWriterClass isn't going to work well, so remove vestiges of it.

19 years agoswitch to a vtable approach for the reader
Havoc Pennington [Wed, 29 Dec 2004 22:22:41 +0000 (22:22 +0000)]
switch to a vtable approach for the reader

19 years agoput it in the test suite arrays (ok, I need to rewrite the unit tests here to be...
Havoc Pennington [Wed, 29 Dec 2004 06:39:32 +0000 (06:39 +0000)]
put it in the test suite arrays (ok, I need to rewrite the unit tests here to be more automated...)

19 years agostruct of array of struct and array of struct of array
Havoc Pennington [Wed, 29 Dec 2004 06:27:59 +0000 (06:27 +0000)]
struct of array of struct and array of struct of array

19 years agocheckpoint with array-of-struct working
Havoc Pennington [Wed, 29 Dec 2004 05:04:01 +0000 (05:04 +0000)]
checkpoint with array-of-struct working

19 years agoarrays are working, woot
Havoc Pennington [Tue, 28 Dec 2004 23:14:31 +0000 (23:14 +0000)]
arrays are working, woot

19 years agosync busted marshaling work in progress
Havoc Pennington [Tue, 28 Dec 2004 04:55:52 +0000 (04:55 +0000)]
sync busted marshaling work in progress

19 years ago2004-12-26 John (J5) Palmieri <johnp@redhat.com>
John (J5) Palmieri [Mon, 27 Dec 2004 16:01:13 +0000 (16:01 +0000)]
2004-12-26  John (J5) Palmieri  <johnp@redhat.com>

* python/dbus_bindings.pyx.in (bus_activate_service): Bind
dbus_bus_activate_service

* python/dbus.py (Bus.activate_service): activate a service on the
bus.

19 years ago2004-12-24 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 24 Dec 2004 17:54:01 +0000 (17:54 +0000)]
2004-12-24  Havoc Pennington  <hp@redhat.com>

* test/decode-gcov.c: change to use .gcno and .gcda files, but the
file format has also changed and I haven't adapted to that yet

* Makefile.am: load .gcno files from latest gcc

19 years ago* Forgot to add ChangeLog on last commit
John (J5) Palmieri [Thu, 23 Dec 2004 17:22:29 +0000 (17:22 +0000)]
* Forgot to add ChangeLog on last commit

19 years ago* patch from Rob Taylor <robtaylor@fastmail.fm>
John (J5) Palmieri [Thu, 23 Dec 2004 00:50:37 +0000 (00:50 +0000)]
* patch from Rob Taylor <robtaylor@fastmail.fm>
- wrap bus_get_unix_user method in low level bindings
- add get_unix_user method to the Bus class
- fix extract.py so it can handle unsigned long return types

19 years ago* dbus/make-dbus-glib-error-enum.sh: omit the function keyword for
Olivier Andrieu [Tue, 21 Dec 2004 10:51:46 +0000 (10:51 +0000)]
* dbus/make-dbus-glib-error-enum.sh: omit the function keyword for
  better POSIX compliance.

19 years ago2004-12-19 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 19 Dec 2004 16:23:09 +0000 (16:23 +0000)]
2004-12-19  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-string.c (_dbus_string_insert_4_aligned)
(_dbus_string_insert_8_aligned): new functions

* dbus/dbus-string.c (_dbus_string_alloc_space): new function

19 years agoback up some files I'm working on that don't do anything yet
Havoc Pennington [Sun, 19 Dec 2004 00:11:49 +0000 (00:11 +0000)]
back up some files I'm working on that don't do anything yet

19 years ago2004-12-18 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sun, 19 Dec 2004 00:11:20 +0000 (00:11 +0000)]
2004-12-18  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-string.c (_dbus_string_validate_ascii): use ISASCII
macro

* dbus/dbus-message.c: fix a comment, and add a still-unused
not-implemented function

* dbus/dbus-marshal.h: fix comment

* dbus/dbus-internals.h (_DBUS_ISASCII): new macro

19 years ago2004-12-17 Joe Shaw <joeshaw@novell.com>
Joe Shaw [Fri, 17 Dec 2004 22:21:16 +0000 (22:21 +0000)]
2004-12-17  Joe Shaw  <joeshaw@novell.com>

* mono/DBusType/Byte.cs, mono/DBusType/Int32.cs,
mono/DBusType/Int64.cs, mono/DBusType/UInt32.cs,
mono/DBusType/UInt64.cs: Use Enum.GetUnderlyingType() instead of
Type.UnderlyingSystemType to get the actual system type
underneath.  This code previously depended on the broken Mono
behavior, which was fixed in 1.1.3.

19 years ago2004-11-27 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 27 Nov 2004 07:30:22 +0000 (07:30 +0000)]
2004-11-27  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-string.h (_dbus_string_get_byte): inline when asserts
are disabled
(_dbus_string_get_const_data): inline when asserts are disabled

* dbus/dbus-message.c: record the _dbus_current_generation of
creation so we can complain if dbus_shutdown() is used improperly.
Do this only if checks are enabled.

* dbus/dbus-connection.c: ditto

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 27 Nov 2004 02:18:36 +0000 (02:18 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c: add with_bus mode to profile echoes
that go through the bus.

* test/glib/run-test.sh: add ability to run test-profile

* bus/dbus-daemon-1.1.in: fix to say that SIGHUP causes partial
config file reload.

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 27 Nov 2004 00:19:49 +0000 (00:19 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c: clean up how the fake_malloc_overhead
thing was implemented

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 07:42:24 +0000 (07:42 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c: tweak a bit, add support for some
made-up minimal malloc overhead with plain sockets, since in
real life some sort of buffers are unavoidable thus we could
count them in the theoretical best case

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 07:03:05 +0000 (07:03 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c (dbus_message_cache_or_finalize): fix bug
where I was trying to cache one too many messages

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 06:52:15 +0000 (06:52 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c: reimplement message cache as an array which
makes the cache about twice as fast and saves maybe 1.5% overall

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 06:30:38 +0000 (06:30 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-threads.c (init_global_locks): forgot to put the
message cache lock here

19 years ago2004-11-26 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 06:22:53 +0000 (06:22 +0000)]
2004-11-26  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-message.c (struct DBusMessage): put the locked bit and
the "char byte_order" next to each other to save 4 bytes
(dbus_message_new_empty_header): reduce preallocation, since the
message cache should achieve a similar effect
(dbus_message_cache_or_finalize, dbus_message_get_cached): add a
message cache that keeps a few DBusMessage around in a pool,
another 8% speedup or so.

* dbus/dbus-dataslot.c (_dbus_data_slot_list_clear): new function

19 years ago2004-11-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 02:29:00 +0000 (02:29 +0000)]
2004-11-25  Havoc Pennington  <hp@redhat.com>

* dbus/dbus-transport-unix.c (unix_do_iteration): if we're going
to write, without reading or blocking, try it before the poll()
and skip the poll() if nothing remains to write. This is about a
3% speedup in the echo client/server

19 years ago2004-11-25 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Fri, 26 Nov 2004 01:53:13 +0000 (01:53 +0000)]
2004-11-25  Havoc Pennington  <hp@redhat.com>

        The primary change here is to always write() once before adding
the write watch, which gives us about a 10% performance increase.

* dbus/dbus-transport-unix.c: a number of modifications to cope
with removing messages_pending
(check_write_watch): properly handle
DBUS_AUTH_STATE_WAITING_FOR_MEMORY; adapt to removal of
messages_pending stuff
(check_read_watch): properly handle WAITING_FOR_MEMORY and
AUTHENTICATED cases
(unix_handle_watch): after writing, see if the write watch can be
removed
(unix_do_iteration): assert that write_watch/read_watch are
non-NULL rather than testing that they aren't, since they
aren't allowed to be NULL. check_write_watch() at the end so
we add the watch if we did not finish writing (e.g. got EAGAIN)

* dbus/dbus-transport-protected.h: remove messages_pending call,
since it resulted in too much inefficient watch adding/removing;
instead we now require that the transport user does an iteration
after queueing outgoing messages, and after trying the first
write() we add a write watch if we got EAGAIN or exceeded our
max bytes to write per iteration setting

* dbus/dbus-string.c (_dbus_string_validate_signature): add this
function

* dbus/dbus-server-unix.c (unix_finalize): the socket name was
freed and then accessed, valgrind flagged this bug, fix it

* dbus/dbus-message.c: fix several bugs where HEADER_FIELD_LAST was taken
as the last valid field plus 1, where really it is equal to the
last valid field. Corrects some message corruption issues.

* dbus/dbus-mainloop.c: verbosity changes

* dbus/dbus-keyring.c (_dbus_keyring_new_homedir): handle OOM
instead of aborting in one of the test codepaths

* dbus/dbus-internals.c (_dbus_verbose_real): fix a bug that
caused not printing the pid ever again if a verbose was missing
the newline at the end
(_dbus_header_field_to_string): add HEADER_FIELD_SIGNATURE

* dbus/dbus-connection.c: verbosity changes;
(dbus_connection_has_messages_to_send): new function
(_dbus_connection_message_sent): no longer call transport->messages_pending
(_dbus_connection_send_preallocated_unlocked): do one iteration to
try to write() immediately, so we can avoid the write watch. This
is the core purpose of this patchset
(_dbus_connection_get_dispatch_status_unlocked): if disconnected,
dump the outgoing message queue, so nobody will get confused
trying to send them or thinking stuff is pending to be sent

* bus/test.c: verbosity changes

* bus/driver.c: verbosity/assertion changes

* bus/dispatch.c: a bunch of little tweaks to get it working again
because this patchset changes when/where you need to block.

19 years ago2004-11-23 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Tue, 23 Nov 2004 06:21:12 +0000 (06:21 +0000)]
2004-11-23  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c: modify to accept a plain_sockets
argument in which case it will bench plain sockets instead of
libdbus, for comparison purposes.

19 years ago2004-11-22 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Mon, 22 Nov 2004 19:20:29 +0000 (19:20 +0000)]
2004-11-22  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c (N_CLIENT_THREADS): run multiple
threads for more time, so sysprof can get a grip on it.

* dbus/dbus-string.c (_dbus_string_validate_utf8): remove
pointless variable

19 years ago2004-11-13 Havoc Pennington <hp@redhat.com>
Havoc Pennington [Sat, 13 Nov 2004 07:07:47 +0000 (07:07 +0000)]
2004-11-13  Havoc Pennington  <hp@redhat.com>

* test/glib/test-profile.c: fix this thing up a bit

* dbus/dbus-message.c (dbus_message_new_empty_header): increase
preallocation sizes by a fair bit; not sure if this will be an
overall performance win or not, but it does reduce reallocs.

* dbus/dbus-string.c (set_length, reallocate_for_length): ignore
the test hack that forced constant realloc if asserts are
disabled, so we can profile sanely. Sprinkle in some
_DBUS_UNLIKELY() which are probably pointless, but before I
noticed the real performance problem I put them in.
(_dbus_string_validate_utf8): micro-optimize this thing a little
bit, though callgrind says it didn't help; then special-case
ascii, which did help a lot; then be sure we detect nul bytes as
invalid, which is a bugfix.
(align_length_then_lengthen): add some more _DBUS_UNLIKELY
superstition; use memset to nul the padding instead of a manual
loop.
(_dbus_string_get_length): inline this as a
macro; it showed up in the profile because it's used for loop
tests and so forth

19 years agoadd a little comment about WNOHANG/EINTR
Havoc Pennington [Wed, 10 Nov 2004 20:12:15 +0000 (20:12 +0000)]
add a little comment about WNOHANG/EINTR

19 years ago2004-11-10 Colin Walters <walters@verbum.org>
Colin Walters [Wed, 10 Nov 2004 06:53:10 +0000 (06:53 +0000)]
2004-11-10  Colin Walters  <walters@verbum.org>

* dbus/dbus-spawn.c (check_babysit_events): Handle EINTR,
for extra paranoia.

19 years ago2004-11-09 Colin Walters <walters@verbum.org>
Colin Walters [Tue, 9 Nov 2004 06:11:33 +0000 (06:11 +0000)]
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.

20 years ago2004-11-07 Colin Walters <walters@verbum.org>
Colin Walters [Sun, 7 Nov 2004 17:06:34 +0000 (17:06 +0000)]
2004-11-07  Colin Walters  <walters@verbum.org>

* dbus/dbus-transport-unix.c (do_authentication): Always
initialize auth_completed.

20 years ago2004-11-07 Colin Walters <walters@verbum.org>
Colin Walters [Sun, 7 Nov 2004 17:05:19 +0000 (17:05 +0000)]
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.

20 years ago*** empty log message ***
Colin Walters [Thu, 4 Nov 2004 04:10:18 +0000 (04:10 +0000)]
*** empty log message ***

20 years ago2004-11-03 Colin Walters <walters@verbum.org>
Colin Walters [Thu, 4 Nov 2004 04:09:31 +0000 (04:09 +0000)]
2004-11-03  Colin Walters  <walters@verbum.org>

* bus/selinux.c (bus_selinux_pre_init): Kill some unused
variables.

20 years ago2004-11-03 Colin Walters <walters@verbum.org>
Colin Walters [Wed, 3 Nov 2004 16:38:35 +0000 (16:38 +0000)]
2004-11-03  Colin Walters  <walters@verbum.org>

* bus/test-main.c (test_pre_hook): Fix test logic,
thanks Joerg Barfurth <Joerg.Barfurth@Sun.COM>.

20 years ago*** empty log message ***
Colin Walters [Tue, 2 Nov 2004 20:28:00 +0000 (20:28 +0000)]
*** empty log message ***

20 years ago2004-11-02 Colin Walters <walters@verbum.org>
Colin Walters [Tue, 2 Nov 2004 20:27:48 +0000 (20:27 +0000)]
2004-11-02  Colin Walters  <walters@verbum.org>

* bus/selinux.c (bus_selinux_init): Split into two functions,
bus_selinux_pre_init and bus_selinux_post_init.
(bus_selinux_pre_init): Just determine whether SELinux is
enabled.
(bus_selinux_post_init): Do everything else.

* bus/main.c (main): Call bus_selinux_pre_init before parsing
config file, and bus_selinux_post_init after.  This ensures that
we don't lose the policyreload notification thread that
bus_selinux_init created before forking previously.

* bus/test-main.c (test_pre_hook): Update for split.

20 years agoPatch from Johan Fischer to make mono doc install create the doc dir.
Owen Fraser-Green [Tue, 2 Nov 2004 10:19:20 +0000 (10:19 +0000)]
Patch from Johan Fischer to make mono doc install create the doc dir.