From: Jaehyun Kim Date: Tue, 12 Oct 2021 02:53:44 +0000 (+0900) Subject: Add support for container environment X-Git-Tag: submit/tizen/20211117.050637~2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f66d137e3f57a08c8fa8e45b85e96f85252b61a7;p=platform%2Fcore%2Fapi%2Fwifi-manager.git Add support for container environment Modified the container's wifi-manager to use the host's network daemons to allow the container and host to control the same wifi interface. Change-Id: Ifcdf4f1f722be9aeb4ae14dfc465e6c590f19ef8 Signed-off-by: Jaehyun Kim --- diff --git a/src/network_internal.c b/src/network_internal.c index b801b12..43da9a6 100644 --- a/src/network_internal.c +++ b/src/network_internal.c @@ -399,7 +399,14 @@ int _net_dbus_create_gdbus_call(network_info_s *network_info) return NET_ERR_APP_NOT_REGISTERED; } - network_info->connection = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error); + if (access(CONTAINER_FILE, F_OK) == 0) { + network_info->connection = g_dbus_connection_new_for_address_sync( + DBUS_HOST_SYSTEM_BUS_ADDRESS, + G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT | G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION, + NULL, NULL, &error); + } else + network_info->connection = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, &error); + if (network_info->connection == NULL) { if (error != NULL) { WIFI_LOG(WIFI_ERROR, diff --git a/src/network_internal.h b/src/network_internal.h index 386f147..5176b7a 100644 --- a/src/network_internal.h +++ b/src/network_internal.h @@ -122,7 +122,8 @@ extern "C" { #define NETCONFIG_SIGNAL_DPP_FAILED "DppFailed" #define NETCONFIG_SIGNAL_DPP_REMOVED "DppRemoved" - +#define CONTAINER_FILE "/run/systemd/container" +#define DBUS_HOST_SYSTEM_BUS_ADDRESS "unix:path=/run/host/dbus/system_bus_socket" #define __NETWORK_FUNC_ENTER__ /*WIFI_LOG(WIFI_INFO, "Enter (%s)", __func__);*/ #define __NETWORK_FUNC_EXIT__ /*WIFI_LOG(WIFI_INFO, "Quit (%s)", __func__);*/