| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To prevent Shill Service DBus ObjectProxy instances from accumulating,
remove them when the service becomes inactive.
Hopefully includes ASAN fixes.
BUG=223483
TBR=hashimoto@chromium.org
Review URL: https://codereview.chromium.org/26289002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227371 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By exposing TaskRunners,
we'll be able to use utility functions like base::PostTaskAndReplyWithResult
BUG=None
TEST=git cl try
R=satorux@chromium.org
Review URL: https://codereview.chromium.org/24554002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@225324 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We've seen some cases in tests where a Chromium process winds up in a
temporarily unkillable state, causing the dbus-daemon to believe that
it still actively owns org.chromium.LibCrosService. This makes
attempts to restart the UI fail, as the browser dies when it cannot
take ownership of this service name. The reason it can't is because
Chromium currently doesn't allow other processes to steal ownership --
and the unkillable process is holding onto the token.
This can be remedied by providing certain options when ownership of
the service name is taken, options that allow other processes to seize
ownership if they so choose. The ramifications of this are discussed
further in the bug.
BUG=chromium:261381
TEST=new unit test in dbus_unittest
TEST=run the following as chronos on a device: "gdbus call --system --dest org.freedesktop.DBus --object-path /org/freedesktop/DBus --method org.freedesktop.DBus.RequestName org.chromium.LibCrosService 7"
TEST=This should return (uint32 1,)
Review URL: https://chromiumcodereview.appspot.com/20555003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@214589 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
extensions/, google_apis/, gpu/, ipc/, jingle/.
BUG=260807
TEST=none
TBR=ben@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19607005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@212157 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
google_apis/, gpu/, ipc/, jingle/.
BUG=254986
TEST=none
TBR=ben@chromium.org
Review URL: https://codereview.chromium.org/18156002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209149 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=247723
TEST=everything compiles OK
TBR=ben@chromium.org
Review URL: https://codereview.chromium.org/17390010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@207507 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
write dbus:: everywhere. Remove some other dbus:: usages in the dbus namespace.
Review URL: https://chromiumcodereview.appspot.com/16012018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@206010 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the new service owner.
The mtpd dbus service may not start right away. Any attempts to use it may be racy due to the lack of a service owner. Listening for service owner changes fixes this race.
BUG=241302
TEST=Manual, see bug for repro case.
Review URL: https://chromiumcodereview.appspot.com/15741025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205331 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
This keeps the forwarding header, just updates all current callers.
BUG=
R=avi@chromium.org
Review URL: https://codereview.chromium.org/16514006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@205306 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Linux fixes
BUG=110610
TBR=darin
Review URL: https://chromiumcodereview.appspot.com/15939006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203634 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=181064
Review URL: https://chromiumcodereview.appspot.com/14660017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198987 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL only adds a util method.
BUG=172821
TEST=unittests
R=satorux@chromium.org
Review URL: https://codereview.chromium.org/14985008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198876 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=181064
Review URL: https://chromiumcodereview.appspot.com/14568005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198328 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=236029
R=keybuk@chromium.org
Review URL: https://chromiumcodereview.appspot.com/14386016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197629 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Object Manager is a new standard D-Bus interface, closely related to
the Properties interface. It is used by BlueZ 5.x thus the need to
implement it now.
The intended use is that Chrome D-Bus Client singletons set up a link
to an object manager in their constructor and register themselves to
handle their particular interface.
BUG=220951
TEST=dbus_unittests
Review URL: https://codereview.chromium.org/12491014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@190440 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: https://chromiumcodereview.appspot.com/12255043
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@183362 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the connection with dbus-daemon is closed, callback function set with
SetDisconnectedCallback will be called.
BUG=None
TEST=ran dbus_unittests
Review URL: https://chromiumcodereview.appspot.com/12224139
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182736 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ShutdownAndBlock function can be called multiple times safely.
So checking |shutdown_completed_| in OnDisonnected function is not necessary.
BUG=174431
TEST=Checked no crash at sing out.
Review URL: https://chromiumcodereview.appspot.com/12212133
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182161 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turns out that dbus_connection_get_dispatch_status should be called even if
the connection is lost, otherwise we miss "Disconnected" signal.
BUG=174431
TEST=Manually done on alex and ran dbus_unittests.
Review URL: https://chromiumcodereview.appspot.com/12211022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181479 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fix counts the number of times the same rule is added to a dbus::Bus
and removes the rule from the real DBus connection when all the copies of
the same match rule have been removed.
BUG=chromium:173054
TEST=BusTest.DoubleAddAndRemoveMatch passes.
Review URL: https://chromiumcodereview.appspot.com/12088068
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179809 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This implements a remove function for an ObjectProxy owned by a bus
object. Although the Bus object removes all the objects at shutdown,
this functions permits to reduce the memory usage for objects no
longer needed and reduce the number of dbus matching rules used in
the bus connection.
BUG=chromium:170182
TEST=BusTest.RemoveObjectProxy (run out/Debug/dbus_unittests)
Review URL: https://chromiumcodereview.appspot.com/12022004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@179400 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to dbus specification in "Message Bus Messages" section (http://dbus.freedesktop.org/doc/dbus-specification.html),
"Before an application is able to send messages to other applications it must send the org.freedesktop.DBus.Hello message to the message bus to obtain a unique name. "
To meets this specification, we should call dbus_bus_register function which call org.freedesktop.DBus.Hello. For the dbus session or system bus, this function is called in dbus_bus_get function.
BUG=159088
TEST=ran dbus_unittests
Review URL: https://chromiumcodereview.appspot.com/11312036
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165641 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
R=satorux@chromium.org
TEST=dbus_unittests
Review URL: https://codereview.chromium.org/11266020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164651 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=115047
TBR=satorux@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10900041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@154116 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
R=groby
TBR=keybuk
Review URL: http://codereview.chromium.org/10241003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134332 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
TBR=brettw
Review URL: https://chromiumcodereview.appspot.com/10198034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134132 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To connect ibus-daemon, needs to extend dbus module to accept user specified addresses.
The ibus provides text inputting features and it is already used in Chrome OS.
The ibus uses dbus protocol but using the ibus-daemon instead of the dbus-daemon.
BUG=chromium-os:26334
TEST=ran dbus_unittests
Review URL: http://codereview.chromium.org/10021044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@132933 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not all objects are permanent, some are transient and if we ever
re-use the object path, we want a new instance of the exported object
to be created rather than re-use an existing one.
BUG=chromium-os:21320
TEST=dbus_unittests and included change to agent service provider
Change-Id: I09882bbe2f70356182ac301c4260473051333424
Review URL: http://codereview.chromium.org/9691025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126527 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
R=satorux@chromium.org
BUG=108171
Review URL: http://codereview.chromium.org/9582044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126055 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Well-known names in D-Bus are merely aliases to unique connection ids
maintained by the bus, they have no purpose in qualifying object paths
or interfaces and it's perfectly legimiate for a client to make
requests to the unique connection id (e.g. in response to a signal,
which does not reference the well-known name of the origin connection).
Remove the service_name member from dbus::ExportedObject, from its
constructor and from dbus::Bus::GetExportedObject and require code to
call dbus::Bus::RequestOwnership if a well-known name is desired. This
requires making that function callable from the origin thread with
a callback for the return value.
BUG=chromium-os:27101
TEST=dbus_unittests
Change-Id: Ib91de8b68ad9c3b432e224a2c715f0c2ca1af463
Review URL: http://codereview.chromium.org/9668018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125970 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than use std::string for object paths, add a dbus::ObjectPath type
that wraps one while allowing more type-safety. This solves all sorts of
issues with confusing object paths for strings, and allows us to do
Properties code using templates disambiguating them from strings.
BUG=chromium:109194
TEST=built and run tests
Change-Id: Icaf6f19daea4af23a9d2ec0ed76d2cbd379d680e
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=121920
Review URL: https://chromiumcodereview.appspot.com/9378039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121941 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than use std::string for object paths, add a dbus::ObjectPath type
that wraps one while allowing more type-safety. This solves all sorts of
issues with confusing object paths for strings, and allows us to do
Properties code using templates disambiguating them from strings.
BUG=chromium:109194
TEST=built and run tests
Change-Id: Icaf6f19daea4af23a9d2ec0ed76d2cbd379d680e
Review URL: http://codereview.chromium.org/9378039
TBR=keybuk@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9363045
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121923 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than use std::string for object paths, add a dbus::ObjectPath type
that wraps one while allowing more type-safety. This solves all sorts of
issues with confusing object paths for strings, and allows us to do
Properties code using templates disambiguating them from strings.
BUG=chromium:109194
TEST=built and run tests
Change-Id: Icaf6f19daea4af23a9d2ec0ed76d2cbd379d680e
Review URL: http://codereview.chromium.org/9378039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121920 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=109696
Review URL: https://chromiumcodereview.appspot.com/9373039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121544 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The tests run fine without this check, and we've filed a bug to investigate further.
BUG=chromium-os:23416
TEST=browser_tests
Review URL: http://codereview.chromium.org/8682028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111498 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
They should own Bus as scoped_refptr, rather than raw pointer.
Otherwise, they may reference |bus_| after Bus is deleted.
I know this is convoluted. I'm planning to minimize use of
scoped_refptr from dbus/* but this change is necessary until then.
TEST=run dbus_unittest under valgrind and confirm no memory leaks
BUG=chromium-os:21379
Review URL: http://codereview.chromium.org/8201023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105222 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clients of the library cannot tell if a match rule has been already added or
not (we could expose such a function but not so useful). Hence LOG(ERROR)
is irrelevant here. Also update the comment in bus.h.
TEST=dbus_unittests
BUG=none
Review URL: http://codereview.chromium.org/8223021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105205 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previouslly, we blocked in D-Bus thread until the method call is handled
in the UI thread. Turned out this was a bad idea, and caused a crash when
the UI thread is hanging (crosbug.com/21341).
This patch will eliminate the timed wait and incoming methods will be handled
completely asynchronously.
BUG=chromium-os:21341
TEST=run dbus_unittests under valgrind
Review URL: http://codereview.chromium.org/8175009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104497 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
We should not reject the same function if it's associated with different data.
BUG=99258
TEST=adde a unit test and confirmed it passed.
Review URL: http://codereview.chromium.org/8161005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@104208 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inspired by mdm's patch to use the message loop proxy for the D-Bus thread.
Using MessageLoopProxy is a great way to make shutdown safer.
We should use this for the origin message loop as well.
BUG=chromium:90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7847013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100279 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- DBus.SyncMethodCallTime: time spent to perform synchronos method calls
- DBus.AsyncMethodCallTime: time spent to perform asynchronos method calls
- DBus.SyncMethodCallSuccess: success ratio of synchronous method calls
- DBus.AsyncMethodCallSuccess: success ratio of asynchronous method calls
- DBus.ExportedMethodHandleTime: time spent to handle calls to export methods
- DBus.ExportedMethodHandleSuccess: success ratio of the exported method calls
- DBus.SignalHandleTime: time spent to handle signals
- DBus.SignalSendTime: time spent to send signals
BUG=chromium:90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7824054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99811 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
This allows us to use BrowserThread::GetMessageLoopProxyForThread() to specify the DBus thread.
Also do a little bit of unrelated comment cleanup.
BUG=90036
Review URL: http://codereview.chromium.org/7800023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99794 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This function is intended to use at the the very end of the browser shutdown,
where it it makes more sense to shut down the bus synchronously, than trying
to make it asynchronous.
Remove Bus::Shutdown() as we are unlikely to need it for the production code.
BUG=chromium:90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7830009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99331 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Just wanted to remove the blank line in bus.h, but
fixed typos along the way.
BUG=chromium:90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7792049
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99006 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add mock_export_object.{cc,h} to dbus.gyp, which were missing.
- Add a comment about shutdown of Bus in bus.h.
- Update mock_unittest.cc to call ShutdownAndBlock().
- Replace DCHECKs with LOG(ERROR)s followed by early exit.
- Add virtual to SetUp() and TearDown() in tests.
- Renamed a member variable to make it clearer.
BUG=chromium:90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7745044
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98560 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Bus object shouldn't return new objects if the bus object already owns
the requested object proxies, or the exported objects.
BUG=90036
TEST=dbus_unittests
Review URL: http://codereview.chromium.org/7702001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97898 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ObjectProxy is used to receive signals from the remote object.
ExportedObject is used to send signals from the exported object.
Note that signals are asynchronos so we don't have a test in
end_to_end_sync_unittest.cc
BUG=90036
TEST=run unit tests
Review URL: http://codereview.chromium.org/7655033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97831 0039d316-1c4b-4281-b951-d872f2087c98
|
|
ObjectProxy is used to access remote objects.
ExportedObject is used to export objects to other D-Bus
BUG=90036
TEST=run unit tests. The code is not yet used in Chrome.
Review URL: http://codereview.chromium.org/7491029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97204 0039d316-1c4b-4281-b951-d872f2087c98
|