blob: 1949ba49ac651eeb4a894256461f63155793836d [file] [log] [blame] [view] [edit]
# Implementation: debugd
[chromeos-dbus-bindings]: https://chromium.googlesource.com/aosp/platform/external/dbus-binding-generator/
The debug daemon uses [chromeos-dbus-bindings] to serve DBus clients.
The daemon is broken up into _tools_, which implement closely-related sets of
functions that can share significant code.
A tool is a set of closely related API functions that diagnoses one thing (for
example, ICMP connectivity). The debug daemon invokes the corresponding tool for
each of its API functions. Dividing the DBus interface from the implementations
of each tool keeps the DebugDaemon class from growing too large and makes it
easier to test the individual tools.