libnm: implement nm_client_get_logging()/nm_client_set_logging() by using GDBusConnection directly

This commit is contained in:
Thomas Haller
2019-10-04 16:18:51 +02:00
parent 9f8aacf62a
commit 2f21e96e84
3 changed files with 35 additions and 66 deletions

View File

@@ -622,8 +622,13 @@ nm_client_connectivity_check_get_uri (NMClient *client)
* Deprecated: 1.22, use nm_client_get_logging_async() or GDBusConnection
**/
gboolean
nm_client_get_logging (NMClient *client, char **level, char **domains, GError **error)
nm_client_get_logging (NMClient *client,
char **level,
char **domains,
GError **error)
{
gs_unref_variant GVariant *ret = NULL;
g_return_val_if_fail (NM_IS_CLIENT (client), FALSE);
g_return_val_if_fail (level == NULL || *level == NULL, FALSE);
g_return_val_if_fail (domains == NULL || *domains == NULL, FALSE);
@@ -631,11 +636,25 @@ nm_client_get_logging (NMClient *client, char **level, char **domains, GError **
/* FIXME(libnm-async-api): add nm_client_get_logging_async(). */
if (!_nm_client_check_nm_running (client, error))
ret = _nm_object_dbus_call_sync (client,
NULL,
NM_DBUS_PATH,
NM_DBUS_INTERFACE,
"GetLogging",
g_variant_new ("()"),
G_VARIANT_TYPE ("(ss)"),
G_DBUS_CALL_FLAGS_NONE,
NM_DBUS_DEFAULT_TIMEOUT_MSEC,
TRUE,
error);
if (!ret)
return FALSE;
return nm_manager_get_logging (NM_CLIENT_GET_PRIVATE (client)->manager,
level, domains, error);
g_variant_get (ret,
"(ss)",
level,
domains);
return TRUE;
}
/**
@@ -660,11 +679,18 @@ nm_client_set_logging (NMClient *client, const char *level, const char *domains,
/* FIXME(libnm-async-api): add nm_client_set_logging_async(). */
if (!_nm_client_check_nm_running (client, error))
return FALSE;
return nm_manager_set_logging (NM_CLIENT_GET_PRIVATE (client)->manager,
level, domains, error);
return _nm_object_dbus_call_sync_void (client,
NULL,
NM_DBUS_PATH,
NM_DBUS_INTERFACE,
"SetLogging",
g_variant_new ("(ss)",
level ?: "",
domains ?: ""),
G_DBUS_CALL_FLAGS_NONE,
NM_DBUS_DEFAULT_TIMEOUT_MSEC,
TRUE,
error);
}
/**

View File

@@ -609,51 +609,6 @@ nm_manager_connectivity_check_get_uri (NMManager *manager)
return nmdbus_manager_get_connectivity_check_uri (NM_MANAGER_GET_PRIVATE (manager)->proxy);
}
gboolean
nm_manager_get_logging (NMManager *manager, char **level, char **domains, GError **error)
{
gboolean ret;
g_return_val_if_fail (NM_IS_MANAGER (manager), FALSE);
g_return_val_if_fail (level == NULL || *level == NULL, FALSE);
g_return_val_if_fail (domains == NULL || *domains == NULL, FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
if (!level && !domains)
return TRUE;
ret = nmdbus_manager_call_get_logging_sync (NM_MANAGER_GET_PRIVATE (manager)->proxy,
level, domains,
NULL, error);
if (error && *error)
g_dbus_error_strip_remote_error (*error);
return ret;
}
gboolean
nm_manager_set_logging (NMManager *manager, const char *level, const char *domains, GError **error)
{
gboolean ret;
g_return_val_if_fail (NM_IS_MANAGER (manager), FALSE);
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
if (!level && !domains)
return TRUE;
if (!level)
level = "";
if (!domains)
domains = "";
ret = nmdbus_manager_call_set_logging_sync (NM_MANAGER_GET_PRIVATE (manager)->proxy,
level, domains,
NULL, error);
if (error && *error)
g_dbus_error_strip_remote_error (*error);
return ret;
}
NMClientPermissionResult
nm_manager_get_permission_result (NMManager *manager, NMClientPermission permission)
{

View File

@@ -113,18 +113,6 @@ void nm_manager_connectivity_check_set_enabled (NMManager *manager,
const char *nm_manager_connectivity_check_get_uri (NMManager *manager);
_NM_DEPRECATED_SYNC_METHOD_INTERNAL
gboolean nm_manager_get_logging (NMManager *manager,
char **level,
char **domains,
GError **error);
_NM_DEPRECATED_SYNC_METHOD_INTERNAL
gboolean nm_manager_set_logging (NMManager *manager,
const char *level,
const char *domains,
GError **error);
NMClientPermissionResult nm_manager_get_permission_result (NMManager *manager,
NMClientPermission permission);