hi,
when using ConnectService of Manager interface a segfault arises due to a null 
pointer. 

in __connman_service_create_and_connect:

        [...]
        service = lookup_by_identifier(name);

        if (service != NULL)
                goto done;

        network = create_hidden_wifi(device, ssid, mode, security);
        if (network != NULL) {
                connman_network_set_group(network, group);
                service->network_created = TRUE;
        }
        [...]
in this part "service" is null

please find a fix below
regards

---
 src/service.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/service.c b/src/service.c
index d442c16..1939832 100644
--- a/src/service.c
+++ b/src/service.c
@@ -4206,10 +4206,8 @@ int __connman_service_create_and_connect(DBusMessage 
*msg)
                goto done;
 
        network = create_hidden_wifi(device, ssid, mode, security);
-       if (network != NULL) {
+       if (network != NULL)
                connman_network_set_group(network, group);
-               service->network_created = TRUE;
-       }
 
        service = lookup_by_identifier(name);
 
@@ -4222,6 +4220,8 @@ done:
                goto failed;
        }
 
+       service->network_created = TRUE;
+
        if (is_connected(service) == TRUE) {
                err = -EISCONN;
                goto failed;
-- 
1.7.3.4




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

Reply via email to