{
struct connman_service *service;
+ if (carrier == TRUE)
+ __connman_profile_add_device(device);
+ else
+ __connman_profile_remove_device(device);
+
service = __connman_service_lookup_from_device(device);
__connman_service_set_carrier(service, carrier);
case CONNMAN_DEVICE_MODE_NETWORK_MULTIPLE:
break;
case CONNMAN_DEVICE_MODE_TRANSPORT_IP:
- if (device->secondary == FALSE)
+ if (device->carrier == TRUE && device->secondary == FALSE)
__connman_profile_add_device(device);
break;
}
* Change secondary value of device
*/
void connman_device_set_secondary(struct connman_device *device,
- connman_bool_t secondary)
+ connman_bool_t secondary)
{
device->secondary = secondary;
}