/** * __connman_network_connect: * @network: network structure * * Connect network */ int __connman_network_connect(struct connman_network *network) { int err; DBG("network %p", network); if (network->connected == TRUE) return -EISCONN; if (network->connecting == TRUE || network->associating == TRUE) return -EALREADY; if (network->driver == NULL) return -EUNATCH; if (network->driver->connect == NULL) return -ENOSYS; if (network->device == NULL) return -ENODEV; network->connecting = TRUE; #if defined TIZEN_EXT if (network->type != CONNMAN_NETWORK_TYPE_CELLULAR) #endif __connman_device_disconnect(network->device); err = network->driver->connect(network); if (err < 0) { if (err == -EINPROGRESS) connman_network_set_associating(network, TRUE); else { network->connecting = FALSE; } return err; } network->connected = TRUE; set_connected(network); return err; }
/** * __connman_network_connect: * @network: network structure * * Connect network */ int __connman_network_connect(struct connman_network *network) { int err; _DBG_NETWORK("network %p", network); if (network->connected == TRUE) return -EISCONN; if (network->connecting == TRUE || network->associating == TRUE) return -EALREADY; if (network->driver == NULL) return -EUNATCH; if (network->driver->connect == NULL) return -ENOSYS; __connman_device_disconnect(network->device); network->connecting = TRUE; err = network->driver->connect(network); if (err < 0) { if (err == -EINPROGRESS) connman_network_set_associating(network, TRUE); else network->hidden = FALSE; return err; } network->connected = TRUE; set_connected(network); return err; }