#define BT_HPS_INTERFACE_NAME "org.projectx.httpproxy_service"
#endif
-#ifdef TIZEN_FEATURE_BT_OTP
-#define BT_OTP_SERVICE_NAME "org.projectx.otp"
-#define BT_OTP_OBJECT_PATH "/org/projectx/otp"
-#define BT_OTP_INTERFACE_NAME "org.projectx.otp_service"
-#endif
-
static GDBusConnection *service_gconn;
static GDBusProxy *service_gproxy;
#ifdef TIZEN_FEATURE_BT_HPS
static GDBusProxy *hps_gproxy;
#endif
-
-#ifdef TIZEN_FEATURE_BT_OTP
-static GDBusProxy *otp_gproxy;
-#endif
+static gboolean factory_test_mode;
void _bt_core_fill_garray_from_variant(GVariant *var, GArray *param)
{
}
#endif
-#ifdef TIZEN_FEATURE_BT_OTP
-static GDBusProxy *_bt_core_gdbus_init_otp_proxy(void)
-{
- GDBusProxy *proxy;
- GError *err = NULL;
- GDBusConnection *conn;
-
- BT_DBG(" ");
-
- conn = _bt_core_get_gdbus_connection();
- if (!conn)
- return NULL;
-
- proxy = g_dbus_proxy_new_sync(conn,
- G_DBUS_PROXY_FLAGS_NONE, NULL,
- BT_OTP_SERVICE_NAME,
- BT_OTP_OBJECT_PATH,
- BT_OTP_INTERFACE_NAME,
- NULL, &err);
- if (proxy == NULL) {
- if (err) {
- BT_ERR("Unable to create proxy: %s", err->message);
- g_clear_error(&err);
- }
- return NULL;
- }
-
- otp_gproxy = proxy;
-
- return proxy;
-}
-
-GDBusProxy *_bt_core_gdbus_get_otp_proxy(void)
-{
- return (otp_gproxy) ? otp_gproxy : _bt_core_gdbus_init_otp_proxy();
-}
-
-int _bt_core_stop_otp(void)
-{
- GVariant *variant = NULL;
- unsigned char enabled;
- GError *err = NULL;
- BT_DBG(" ");
-
- otp_gproxy = _bt_core_gdbus_get_otp_proxy();
- if (!otp_gproxy) {
- BT_DBG("Couldn't get service proxy");
- return -1;
- }
-
- variant = g_dbus_proxy_call_sync(otp_gproxy, "disable",
- NULL, G_DBUS_CALL_FLAGS_NONE, -1, NULL, &err);
- if (err) {
- BT_ERR("Error : %s" , err->message);
- g_clear_error(&err);
- }
- if (variant) {
- g_variant_get(variant, "(y)", &enabled);
- BT_ERR("OTP disabled status 0x%x", enabled);
- }
- return 0;
-}
-#endif
void _bt_core_gdbus_deinit_proxys(void)
{
BT_DBG("");
}
#endif
-#ifdef TIZEN_FEATURE_BT_OTP
- if (otp_gproxy) {
- g_object_unref(otp_gproxy);
- otp_gproxy = NULL;
- }
-#endif
-
if (service_gconn) {
g_object_unref(service_gconn);
service_gconn = NULL;
g_variant_get(parameters, "(&s&s)", &type, &arg);
ret = _bt_core_factory_test_mode(type, arg);
- g_dbus_method_invocation_return_value(invocation,
+ factory_test_mode = TRUE;
+
+ if (ret == TRUE)
+ g_dbus_method_invocation_return_value(invocation,
g_variant_new("(i)", ret));
+ else
+ _bt_core_terminate();
+
return;
} else {
ret = FALSE;
{
gboolean flight_mode_status;
- BT_DBG("");
-
flight_mode_status = _bt_core_is_flight_mode_enabled();
if (flight_mode_status == FALSE && _bt_is_flightmode_request() == TRUE) {
if ((g_strcmp0(name, "org.bluez") == 0) ||
(g_strcmp0(name, "org.projectx.bt") == 0)) {
BT_DBG("%s is terminated", name);
- if (_bt_check_terminating_condition() == TRUE) {
+ if (_bt_check_terminating_condition() == TRUE && factory_test_mode == FALSE) {
_bt_disable_adapter();
_bt_disable_adapter_le();
_bt_core_terminate();