Instead of using a default value, list all values and call the functions
outside of the switch block.
---
 src/service.c | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/src/service.c b/src/service.c
index 294ceca..0108fab 100644
--- a/src/service.c
+++ b/src/service.c
@@ -5941,13 +5941,21 @@ int __connman_service_connect(struct connman_service 
*service,
        case CONNMAN_SERVICE_TYPE_GPS:
        case CONNMAN_SERVICE_TYPE_P2P:
                return -EINVAL;
-       default:
-               if (!is_ipconfig_usable(service))
-                       return -ENOLINK;
 
-               err = service_connect(service);
+       case CONNMAN_SERVICE_TYPE_ETHERNET:
+       case CONNMAN_SERVICE_TYPE_GADGET:
+       case CONNMAN_SERVICE_TYPE_BLUETOOTH:
+       case CONNMAN_SERVICE_TYPE_CELLULAR:
+       case CONNMAN_SERVICE_TYPE_VPN:
+       case CONNMAN_SERVICE_TYPE_WIFI:
+               break;
        }
 
+       if (!is_ipconfig_usable(service))
+               return -ENOLINK;
+
+       err = service_connect(service);
+
        service->connect_reason = reason;
        if (err >= 0) {
                set_error(service, CONNMAN_SERVICE_ERROR_UNKNOWN);
-- 
1.9.1

_______________________________________________
connman mailing list
[email protected]
https://lists.connman.net/mailman/listinfo/connman

Reply via email to