| # 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. |