Re: [PATCH] gsupplicant: Check peer_mapping before removing items

2014-08-20 Thread Patrik Flykt
On Sun, 2014-08-17 at 23:23 -0400, Eduardo Abinader wrote:
> Added a check in order to avoid glib assert warnings
> during remove_interface call, when peer_mapping was
> already empty.

Patch applied, thanks!

Patrik

___
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman


Re: [PATCH 0/2] Solve issues in pending wifi data

2014-08-20 Thread Tomasz Bursztyka

Thanks Eduardo,

ACK on this patch-set

Tomasz
___
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman


[PATCH 2/2] wifi: Update pending wifi device list

2014-08-20 Thread Eduardo Abinader
Update p2p pending wifi device, if wifi is removed
as well. Such scenario occurs in a long delayed p2p
group negotiation.
---
 plugins/wifi.c | 14 ++
 1 file changed, 14 insertions(+)

diff --git a/plugins/wifi.c b/plugins/wifi.c
index bdb4c24..4424d95 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -196,6 +196,18 @@ static struct wifi_data *get_pending_wifi_data(const char 
*ifname)
return NULL;
 }
 
+static void remove_pending_wifi_device(struct wifi_data *wifi)
+{
+   GList *link;
+
+   link = g_list_find(pending_wifi_device, wifi);
+
+   if (!link)
+   return;
+
+   pending_wifi_device = g_list_delete_link(pending_wifi_device, link);
+}
+
 static void peer_cancel_timeout(struct wifi_data *wifi)
 {
if (wifi->p2p_connection_timeout > 0)
@@ -507,6 +519,8 @@ static void wifi_remove(struct connman_device *device)
 
check_p2p_technology();
 
+   remove_pending_wifi_device(wifi);
+
if (wifi->p2p_find_timeout) {
g_source_remove(wifi->p2p_find_timeout);
connman_device_unref(wifi->device);
-- 
1.9.1

___
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman


[PATCH 0/2] Solve issues in pending wifi data

2014-08-20 Thread Eduardo Abinader
The following patchset addresses other midst situation,
when a p2p group is being negotiated and, for some reason,
p2p interface is removed. Added an extra check and 
provided a proper cleanup of pending wifi device list, 
upon wifi remove.

Eduardo Abinader (2):
  wifi: Add an extra check for pending wifi data
  wifi: Update pending wifi device list

 plugins/wifi.c | 16 +++-
 1 file changed, 15 insertions(+), 1 deletion(-)

-- 
1.9.1

___
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman


[PATCH 1/2] wifi: Add an extra check for pending wifi data

2014-08-20 Thread Eduardo Abinader
Got another segmentation fault on chicken and egg issue. Now,
it is necessary to check device pointer.
---
 plugins/wifi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/plugins/wifi.c b/plugins/wifi.c
index f5af702..bdb4c24 100644
--- a/plugins/wifi.c
+++ b/plugins/wifi.c
@@ -182,7 +182,7 @@ static struct wifi_data *get_pending_wifi_data(const char 
*ifname)
const char *dev_name;
 
wifi = list->data;
-   if (!wifi)
+   if (!wifi || !wifi->device)
continue;
 
dev_name = connman_device_get_string(wifi->device, "Interface");
-- 
1.9.1

___
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman