diff options
author | Nathan Williams <njw@chromium.org> | 2011-06-23 17:33:30 -0400 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2011-06-30 12:25:02 -0500 |
commit | 1b73fa154160a51634633a4bfd886aa1d27e72b3 (patch) | |
tree | 625fe5c11cc0ba19a7f5dc98cd74daea2a71eea3 /src/mm-manager.c | |
parent | b7820cf6e15eb245d4726f8cfbe20ce24466188b (diff) |
Add a DBus interface for setting the log level.
Lifted almost entirely from similar code in NetworkManager.
BUG=chromium-os:15197
TEST='dbus-send --print-reply --system --dest=org.freedesktop.ModemManager /org/freedesktop/ModemManager org.freedesktop.ModemManager.SetLogging string:DEBUG'
Also try valid log levels 'ERR', 'WARN', 'INFO', and an invalid log level, such as 'ABCDE'.
Change-Id: I2bddcd0319f4966dd293b119f68e7cc1697949b7
Reviewed-on: http://gerrit.chromium.org/gerrit/3134
Tested-by: Nathan J. Williams <njw@chromium.org>
Reviewed-by: Eric Shienbrood <ers@chromium.org>
Diffstat (limited to 'src/mm-manager.c')
-rw-r--r-- | src/mm-manager.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/mm-manager.c b/src/mm-manager.c index 52c74202..3bf042eb 100644 --- a/src/mm-manager.c +++ b/src/mm-manager.c @@ -34,6 +34,10 @@ static gboolean impl_manager_enumerate_devices (MMManager *manager, static void impl_manager_scan_devices (MMManager *manager, DBusGMethodInvocation *context); +static gboolean impl_manager_set_logging (MMManager *manager, + const char *level, + GError **error); + #include "mm-manager-glue.h" G_DEFINE_TYPE (MMManager, mm_manager, G_TYPE_OBJECT) @@ -1001,6 +1005,19 @@ impl_manager_scan_devices (MMManager *manager, } } +static gboolean +impl_manager_set_logging (MMManager *manager, + const char *level, + GError **error) +{ + if (mm_log_set_level (level, error)) { + mm_info ("logging: level '%s'", level); + return TRUE; + } + return FALSE; +} + + void mm_manager_start (MMManager *manager) { |