DBusMessageIter iter;
pan = g_hash_table_lookup(networks, path);
- if (!pan) {
+ if (!pan || !pan->network) {
DBG("network already removed");
return;
}
if (strcmp(dbus_error,
"org.bluez.Error.AlreadyConnected") != 0) {
+ connman_network_set_associating(pan->network, false);
connman_network_set_error(pan->network,
CONNMAN_NETWORK_ERROR_ASSOCIATE_FAIL);
return;
struct bluetooth_pan *pan;
pan = g_hash_table_lookup(networks, path);
- if (!pan) {
+ if (!pan || !pan->network) {
DBG("network already removed");
return;
}
{
struct connman_device *device;
const char* role;
+ const char *adapter;
role = proxy_get_role(pan->btdevice_proxy);
if (!role) {
return;
}
- device = g_hash_table_lookup(devices,
- proxy_get_string(pan->btdevice_proxy, "Adapter"));
+ adapter = proxy_get_string(pan->btdevice_proxy, "Adapter");
+
+ if (!adapter)
+ return;
+
+ device = g_hash_table_lookup(devices, adapter);
if (!device || !connman_device_get_powered(device))
return;
goto out;
}
+#if !defined TIZEN_EXT
enable_device(device, path);
+#endif
out:
g_free(path);
}
goto out;
}
+#if !defined TIZEN_EXT
disable_device(device, path);
+#endif
out:
g_free(path);
DBG("path %s bridge %s", path, bridge);
- if (!bridge)
- return -EINVAL;
+ if (!bridge) {
+ g_free(tethering);
+ return false;
+ }
proxy = g_dbus_proxy_new(client, path, "org.bluez.NetworkServer1");
- if (!proxy)
+ if (!proxy) {
+ g_free(tethering);
return false;
+ }
tethering->technology = technology;
tethering->bridge = g_strdup(bridge);
static int bluetooth_tech_set_tethering(struct connman_technology *technology,
const char *identifier, const char *passphrase,
- const char *bridge, bool enabled, bool hidden)
+ const char *bridge, bool enabled)
{
GHashTableIter hash_iter;
gpointer key, value;