service: Do not reconnect to an already connected service
authorSamuel Ortiz <sameo@linux.intel.com>
Thu, 13 Jan 2011 14:36:23 +0000 (15:36 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Thu, 13 Jan 2011 14:37:30 +0000 (15:37 +0100)
Fixes BMC#11879

src/service.c

index 74493dc..40fd87d 100644 (file)
@@ -3658,6 +3658,16 @@ done:
                goto failed;
        }
 
+       if (is_connected(service) == TRUE) {
+               err = -EISCONN;
+               goto failed;
+       }
+
+       if (is_connecting(service) == TRUE) {
+               err = -EALREADY;
+               goto failed;
+       }
+
        set_reconnect_state(service, FALSE);
 
        __connman_device_disconnect(device);