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 * Deprecated: 1.22, use nm_client_get_logging_async() or GDBusConnection
**/ **/
gboolean 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 (NM_IS_CLIENT (client), FALSE);
g_return_val_if_fail (level == NULL || *level == NULL, 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 (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(). */ /* 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 FALSE;
return nm_manager_get_logging (NM_CLIENT_GET_PRIVATE (client)->manager, g_variant_get (ret,
level, domains, error); "(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(). */ /* FIXME(libnm-async-api): add nm_client_set_logging_async(). */
if (!_nm_client_check_nm_running (client, error)) return _nm_object_dbus_call_sync_void (client,
return FALSE; NULL,
NM_DBUS_PATH,
return nm_manager_set_logging (NM_CLIENT_GET_PRIVATE (client)->manager, NM_DBUS_INTERFACE,
level, domains, error); "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); 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 NMClientPermissionResult
nm_manager_get_permission_result (NMManager *manager, NMClientPermission permission) 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); 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, NMClientPermissionResult nm_manager_get_permission_result (NMManager *manager,
NMClientPermission permission); NMClientPermission permission);