Commit graph

1011 commits

Author SHA1 Message Date
John (J5) Palmieri
29c49bce41 * python/__init__.py: Python bindings deserve a minor version
update.  Upped to (0, 40, 2)
2005-05-24 16:34:38 +00:00
John (J5) Palmieri
982e34a1ec * python/decorators.py: add explicitly_pass_message decorator
for passing in the dbus message as keyword for edge case signal
  handling

* python/matchrules.py (SignalMatchRule.__repr__): fix output
  to conform with what dbus expects for match rules
  (SignalMatchRule.execute): add the dbus message as a keyword
  if the signal handler has requested it

* python/examples/example/signal-recipient.py: added some more
  examples on how to hook up to signals

* python/proxies.py: minor formatting changes
2005-05-24 16:30:51 +00:00
John (J5) Palmieri
e43a353d27 * python/decorators.py: import dbus_bindings
* python/matchrules.py (SignalMatchRule, SignalMatchTree,
  SignalMatchNode): new classes that implement wildcard signal
  callback matching using a tree lookup. Heavily modified from a
  patch sent by Celso Pinto (fd.o bug #3241)

* _dbus.py (add_signal_receiver, remove_signal_receiver, _signal_func):
  use new match classes to handle signals.
2005-05-24 00:21:07 +00:00
John (J5) Palmieri
8af9f11e54 - s/TYPE_PATH/TYPE_OBJECT_PATH 2005-05-19 20:27:19 +00:00
Havoc Pennington
7befbf5270 2005-05-18 Havoc Pennington <hp@redhat.com>
* configure.in: use GLIB_GNU_GETTEXT to get INTLLIBS and require
	gettext. Not really worth requiring yet perhaps, but any
	production quality 1.0 would require it so we should go ahead and
	get things set up. We do have a couple token calls to
	bindtextdomain in the code already.
2005-05-18 15:44:50 +00:00
John (J5) Palmieri
63ac302bab * glib/dbus-gmain.c (io_handler_dispatch): fix deadlock
when using recursive g_main_loops

* python/_dbus.py (class Bus): add the ProxyObjectClass
  alias for ProxyObject to make it easier for the Twisted
  networking framework to integrate dbus.

* python/proxies.py (class ProxyObject): add the ProxyMethodClass
  alias for ProxyMethod to make it easier for the Twisted
  networking framework to integrate dbus.
2005-05-16 21:27:04 +00:00
Colin Walters
ad5bafed04 2005-05-11 Ross Burton <ross@burtonini.com>
* glib/dbus-glib-tool.c: Add --prefix argument.
	* glib/dbus-binding-tool-glib.h: Add prefix argument.
	* glib/dbus-binding-tool-glib.c (compute_marshaller_name):
	Add prefix argument.
	(generate_glue): Pass prefix argument down.
	(dbus_binding_tool_output_glib_server): Pass prefix to
	glib-genmarshal.
2005-05-11 19:02:31 +00:00
Colin Walters
3fa4c2f404 2005-05-11 Colin Walters <walters@verbum.org>
* tools/dbus-send.c (append_array): New function.
	(append_arg): Broken out from main.
	(main): Add cheesy hack to send arrays and variants.
	(usage): Update.
	* tools/dbus-print-message.c (print_iter): Broken out
	from main.
2005-05-11 18:48:24 +00:00
Colin Walters
61411a061c 2005-05-11 Colin Walters <walters@verbum.org>
* dbus/dbus-signature.c (dbus_signature_iter_get_signature):
	New function, returns signature string for signature iter.
	* dbus/dbus-signature.h: Prototype it.
	* dbus/dbus-message.c (dbus_message_iter_get_signature):
	New function, returns signature string for message iter.
	(dbus_message_iter_get_array_len): New function, returns
	length of array.
	(dbus_message_iter_get_fixed_array): Fix assertion; this
	function should be used when the iter is pointing to the
	contents of an array
	* dbus/dbus-message.h: Prototypes.
	* dbus/dbus-marshal-recursive.c (_dbus_type_reader_get_array_length):
	New function; returns length of an array.
	* dbus/dbus-marshal-recursive.h: Prototype it.
2005-05-11 18:07:22 +00:00
Colin Walters
ca01b21112 2005-05-11 Colin Walters <walters@verbum.org>
* dbus/dbus-sysdeps-util.c <!HAVE_POSIX_GETPWNAM_R>: Fix
	compilation error.
2005-05-11 17:59:46 +00:00
Havoc Pennington
0e0b8c197d 2005-05-08 Havoc Pennington <hp@redhat.com>
* dbus/dbus-sysdeps-util.c (_dbus_become_daemon): write the
	daemon's pid, not the parent's pid, to the file descriptor.
	Reported by Taj Morton.
2005-05-08 15:41:39 +00:00
Havoc Pennington
4db285c800 2005-05-05 Havoc Pennington <hp@redhat.com>
* configure.in (LT_*): add notes on how the libtool versioning
	works to save thinking. Increment soname to indicate protocol
	breakage (though really the library interface hasn't changed I
	guess)

	* dbus/dbus-transport.c (_dbus_transport_get_is_authenticated):
	verify the GUID received from server matches what we were
	expecting, if we had an expectation

	* dbus/dbus-auth.c (send_ok): send GUID along with the OK command
	(_dbus_auth_get_guid_from_server): new function
	(send_begin): parse the OK args

	* doc/dbus-specification.xml: add GUID to the auth protocol
2005-05-05 22:02:11 +00:00
John (J5) Palmieri
b4b85685f1 * Fix my name in previous changelog ;)
* python/proxies.py (ProxyObject.__getattr__): add further patch
  from Anthony Baxter to throw an AttributeError when python
  __special__ functions are called instead of marshling them over
  the bus (Bug#1685 comment 3).
2005-05-05 18:27:34 +00:00
John (J5) Palmieri
425257ddf9 * python/Makefile.am: changed to use pyexecdir for the binding
shared libraries (Bug#2494)

* python/exceptions.py: bring exceptions over from the bindings
  so they can be used in applications (Bug#2036)
  Make all exceptions derive from DBusException

* python/_dbus.py, python/proxies.py: implement __repr__ in a couple
  of classes so that print obj doesn't throw an exception (Bug #1685)
2005-05-05 18:01:45 +00:00
Colin Walters
18ada3395f 2005-05-03 Ross Burton <ross@burtonini.com>
* glib/dbus-gobject.c (dbus_g_connection_register_g_object):
	Return if we get an error during registration.  Set up a
	weak reference on object to unregister if object is destroyed.
	(unregister_gobject): New function.
2005-05-03 17:45:30 +00:00
John (J5) Palmieri
ac3b8d0a70 * python/dbus_bindings.pyx.in:
- added new type classes for hinting to the marashaler what type
to send over the wire
- added int16 and uint16 marshalers
- Fixed a bug in the type constants that caused int32 to go out
as uint16 over the wire
* python/dbus.py: split up into different files and renamed _dbus.py
* python/__init__.py, python/_util.py, python/decorators.py,
python/exceptions.py, python/proxies.py, python/services.py,
python/types.py: new files split off from dbus.py
* python/Makefile.am: Add new files, remove dbus.py and
install all python files to <python module dir>/dbus
* python/examples/*: Added #!/usr/bin/env python to the top of
every example.  Patch provided by Tatavarty Kalyan
2005-05-01 19:34:58 +00:00
John (J5) Palmieri
eb8bfeb8f2 * update configure.in to next version 2005-04-26 00:56:26 +00:00
John (J5) Palmieri
d06c0d47f3 * Update to 0.33 2005-04-26 00:54:52 +00:00
John (J5) Palmieri
8d40569d8a * python/dbus_bindings.pyx.in (send_with_reply_handlers): New send
method for doing async calls
(_pending_call_notification): New C function for handling pendning call
callbacks
(set_notify): New method for setting pending call notification

* python/dbus.py: new version tuple "version" is set at (0, 40, 0)
Async capabilities added to remote method calls
(Sender): class removed
(RemoteService): class removed
(ObjectTree): class removed for now
(RemoteObject): Renamed to ProxyObject
(RemoteMethod): Renamed to ProxyMethod
(method): Decorator added for decorating python methods as dbus methods
(signal): Decorator added for decorating python methods as signal emitters
(ObjectType): Metaclass added for generating introspection data and the
method callback vtable
(Interface): Wrapper class added to wrap objects in a dbus interface
(Object): Uses ObjectType as its metaclass and exports Introspect
of the org.freedesktop.DBus.Introspectable interface
(ValidationException, UnknownMethodException): new exceptions

* python/examples/*: Modified to fit with the new bindings
2005-04-25 22:54:28 +00:00
Havoc Pennington
64f3d8f67d 2005-04-23 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message.c (dbus_message_append_args): fix doc comment,
	reported by Tony Houghton

	* test/test-service.c (main): test
	dbus_connection_get_object_path_data()

	* dbus/dbus-object-tree.c (find_handler): be sure we always init
	the exact_match
	(_dbus_object_tree_get_user_data_unlocked): new function used by
	dbus_connection_get_object_path_data()
	(do_register): add assertion test for get_user_data_unlocked
	(object_tree_test_iteration): more tests

	* dbus/dbus-connection.c (dbus_connection_get_object_path_data):
	new function from Dan Reed to let you get the user data from
	dbus_connection_register_object_path()
2005-04-24 14:04:16 +00:00
John (J5) Palmieri
52fce19fab * dbus/dbus-marshal-recursive-util.c: Fixed buffer overflow
in numerous places that did not account for the NULL terminator
  (signature_from_seed): changed the manual string copy loop to
  just use strcpy instead
  make check should now pass
2005-04-23 22:34:48 +00:00
John (J5) Palmieri
83ce7b267c * dbus/dbus-marshal-header.c (_dbus_header_create): Fix assert
so that it allows messages that are not signals to pass in
  NULL as the interface.
2005-04-19 13:14:55 +00:00
David Zeuthen
087140dfc4 2005-04-18 David Zeuthen <davidz@redhat.com>
* glib/dbus-gmain.c (io_handler_destroy_source):
	(timeout_handler_destroy_source, connection_setup_free):
	Also unref the source to avoid memory leaks.
2005-04-19 03:35:26 +00:00
David Zeuthen
ded3a8efb1 2005-04-13 David Zeuthen <davidz@redhat.com>
* bus/config-parser.c (bus_config_parser_new): Bump this to a
        more reasonable, yet still totally arbitrary, value :-).
2005-04-14 15:10:22 +00:00
David Zeuthen
a43b6f86d1 2005-04-13 David Zeuthen <davidz@redhat.com>
* doc/TODO: Added an "important for 1.0" item about selinux
        allow/deny messages
2005-04-13 16:13:42 +00:00
David Zeuthen
44656f538f 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()
2005-04-13 14:27:11 +00:00
Havoc Pennington
893f5b7bf5 2005-04-13 Havoc Pennington <hp@redhat.com>
* glib/dbus-gmain.c (message_queue_dispatch): only dispatch one
	message at a time to avoid monopolizing the main loop, bug
	#2953 from Benjamin Otte
2005-04-13 14:10:21 +00:00
Havoc Pennington
6606169cbc 2005-04-09 Havoc Pennington <hp@redhat.com>
* dbus/dbus-string.c (copy): change a memcpy to memmove due to
	possible overlap, fix from Daniel Reed
	(fixup_alignment): fix signedness warnings
	(_dbus_string_append_unichar): ditto
2005-04-10 03:36:46 +00:00
Havoc Pennington
8475b3a848 2005-04-09 Havoc Pennington <hp@redhat.com>
* dbus/dbus-message-util.c (_dbus_message_test): fix signedness warning

	* glib/dbus-glib-tool.c (main): fix warning

	* glib/dbus-binding-tool-glib.c (generate_glue): fix warning

	* dbus/dbus-connection.c (dbus_connection_read_write_dispatch):
	add a new function that can be used in simple applications that
	don't have a main loop and are willing to block
2005-04-09 23:50:58 +00:00
David Zeuthen
9f13881562 2005-04-05 David Zeuthen <davidz@redhat.com>
Fix https://bugs.freedesktop.org/show_bug.cgi?id=2889

	* glib/dbus-gmain.c:
	(io_handler_destroy_source): Remove from list of IO handlers
	of the ConnectionSetup object
	(timeout_handler_destroy_source): -do- for timeout handlers
	(io_handler_source_finalized): Don't remove from list since
	we now do that in io_handler_destroy_source(). Renamed from
	io_handler_source_destroyed
	(timeout_handler_source_destroyed): -do- for timeout handlers
	(connection_setup_free): It is now safe to iterate over all
	IO and timeout handlers as the _destroy_source removes them
	from the list synchronously
2005-04-06 17:36:47 +00:00
Havoc Pennington
6cd7cb575d 2005-03-30 Havoc Pennington <hp@redhat.com>
* configure.in: change check to gtk 2.4

	* tools/dbus-viewer.c (name_combo_changed_callback): remove
	gtk_combo_box_get_active_text() usage to decrement GTK requirement
	to 2.4
2005-03-31 02:24:12 +00:00
John (J5) Palmieri
8e0bd8c06c - bump to next release 2005-03-29 18:33:27 +00:00
John (J5) Palmieri
99127825e2 * News: Update 0.32
* HACKING: Fixed realease instructions.  configure.in should be updated to
  the next release by the person who made the last release.
2005-03-29 18:27:35 +00:00
John (J5) Palmieri
8f5a88e1e2 * python/lvalue_cast_post_process.py - removed. Patch has been
submitted to Pyrex maintainers that fixes gcc4.0 error

* python/Makefile.am: removed refrences to lvalue_cast_post_process.py
2005-03-29 17:01:43 +00:00
Colin Walters
c3492190e7 2005-03-24 Daniel Reed <n@ml.org>
* tools/Makefile.am: Make print-introspect and
	dbus-bus-introspect.xml building conditional on HAVE_GLIB.
2005-03-24 15:44:43 +00:00
Havoc Pennington
4bbafebfdb add colin to patch approver list (the list is really wonky/out-of-date in more ways than this) 2005-03-24 14:23:08 +00:00
John (J5) Palmieri
6eab514119 * tools/Makefile.am: Patch by Colin Walters that fixes distcheck
* dbus/dbus-userdb.c, dbus/dbus-userdb-util.c: Add patch we have
  had in Red Hat packages for a while but for some reason never
  got merged upstream
  (_dbus_is_a_number): New checks if a string
  can be converted to a number and does the conversion if it can
  (_dbus_user_database_lookup): Add check to see if the given username
  is a udi.  This allows udi's to be used instead of usernames in the
  config file.
  (_dbus_user_database_lookup_group): Add check to see if the given groupname
  is a gdi.  This allows gdi's to be used instead of groupnames in the
  config file.
2005-03-22 17:57:27 +00:00
John (J5) Palmieri
11519c46c4 * python/lvalue_cast_post_process.py - added post processor to fix Pyrex
code so that it compiles with gcc4.0

* python/Makefile.am: Added lvalue_cast_post_process.py to EXTRA_DIST
  run dbus_bindings.c through lvalue_cast_post_process.py and copy the
  results back to dbus_binding.c
2005-03-21 21:13:56 +00:00
Colin Walters
5edf809963 2005-03-20 Colin Walters <walters@verbum.org>
Patch suggested by Inguva Rajasekhar <ringuva@novell.com>.

	* configure.in: Require GTK+ 2.6.
2005-03-21 03:03:57 +00:00
Colin Walters
254f4d8592 2005-03-20 Colin Walters <walters@verbum.org>
* Makefile.am (SUBDIRS, DIST_SUBDIRS): Build tools before test.
2005-03-21 02:31:09 +00:00
Colin Walters
49c64e69de 2005-03-17 Tom Parker <palfrey@tevp.net>
* dbus/dbus-userdb.c (_dbus_user_database_lookup): Don't
	print DBUS_UID_UNSET; instead print passed username.  Also
	be sure to actually use gid looked up in cache.

	* dbus/dbus-userdb-util.c (_dbus_user_database_lookup_group): Ditto
	for DBUS_GID_UNSET and groupname.
2005-03-17 23:13:38 +00:00
Colin Walters
b651df5510 2005-03-17 Tom Parker <palfrey@tevp.net>
* dbus/dbus-userdb.c (_dbus_user_database_lookup): Don't
	print DBUS_UID_UNSET; instead print passed username.

	* dbus/dbus-userdb-util.c (_dbus_user_database_lookup_group): Ditto
	for DBUS_GID_UNSET and groupname.
2005-03-17 23:10:44 +00:00
Colin Walters
20427aff29 *** empty log message *** 2005-03-17 17:53:31 +00:00
Colin Walters
a65587676f 2005-03-17 Colin Walters <walters@verbum.org>
* bus/print-introspect.c: Move to tools/.
	* bus/run-with-tmp-session-bus.sh: Ditto.

	* glib/Makefile.am (dbus-glib-bindings.h): Move
	generation to tools/Makefile.am.

	* test/glib/run-test.sh: Update to handle move
	of run-with-tmp-session-bus.sh.

	* test/glib/test-service-glib.c: Update to handle
	move of dbus-glib-bindings.h.

	* tools/print-introspect.c: Moved here
	from bus/, and ported to GLib bindings.

	* tools/run-with-tmp-session-bus.sh: Moved here
	from bus/.

	* tools/Makefile.am: Generate dbus-glib-bindings.h
	and dbus-bus-introspect.xml here.

	* tools/.cvsignore, glib/.cvsignore, bus/.cvsignore:
	Update.
2005-03-17 17:48:29 +00:00
Colin Walters
6180ae6941 2005-03-14 Colin Walters <walters@verbum.org>
* bus/driver.c (write_args_for_direction): Use
	_dbus_string_get_const_data to retrieve string;
	_dbus_string_get_const_data_len doesn't actually return
	a NULL-terminated substring.

	* test/glib/test-service-glib.c: Include dbus-glib-bindings.h.
	(main): Change to use org_freedesktop_DBus_request_name
	instead of using g_proxy_begin_call/end_call.
2005-03-17 17:11:59 +00:00
Joe Shaw
bcdd185483 2005-03-15 Joe Shaw <joeshaw@novell.com>
* mono/ProxyBuilder.cs (BuildFinalizer): Fix some invalid IL when
	generating the finalizer.  Fixes from Ben Maurer.
2005-03-15 23:30:55 +00:00
Joe Shaw
42287b94d1 2005-03-13 Joe Shaw <joeshaw@novell.com>
* mono/ProxyBuilder.cs (BuildConstructor): Decalre a local
	variable for storing our callback in.  Update the allocation
	comments.
2005-03-13 05:07:35 +00:00
Joe Shaw
dfa00f175b 2005-03-12 Joe Shaw <joeshaw@novell.com>
* mono/BusDriver.cs: Update method names: ListServices
	becomes ListNames; GetOwner becomes GetNameOwner.
2005-03-13 02:15:09 +00:00
Joe Shaw
2452ac5cdf 2005-03-12 Joe Shaw <joeshaw@novell.com>
* mono/ProxyBuilder.cs (BuildFinalizer): Need to load arg 0
	onto the eval stack when removing the delegate.
2005-03-13 02:05:56 +00:00
Joe Shaw
727073e691 2005-03-12 Joe Shaw <joeshaw@novell.com>
* mono/dbus-sharp.dll.config.in: Don't hardcode 0 for
	LT_CURRENT.  Set it to the autoconf variable.
2005-03-13 01:56:29 +00:00