summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/connman/connman-0.64
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-connectivity/connman/connman-0.64')
-rw-r--r--meta/recipes-connectivity/connman/connman-0.64/connman62
-rw-r--r--meta/recipes-connectivity/connman/connman-0.64/dbusperms.patch12
-rw-r--r--meta/recipes-connectivity/connman/connman-0.64/fix-shutdown-ap-disconnect.patch42
3 files changed, 116 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/connman/connman-0.64/connman b/meta/recipes-connectivity/connman/connman-0.64/connman
new file mode 100644
index 0000000000..f01bf371c2
--- /dev/null
+++ b/meta/recipes-connectivity/connman/connman-0.64/connman
@@ -0,0 +1,62 @@
1#!/bin/sh
2
3DAEMON=/usr/sbin/connmand
4PIDFILE=/var/run/connmand.pid
5DESC="Connection Manager"
6
7if [ -f /etc/default/connman ] ; then
8 . /etc/default/connman
9fi
10
11set -e
12
13nfsroot=0
14
15exec 9<&0 < /proc/mounts
16while read dev mtpt fstype rest; do
17 if test $mtpt = "/" ; then
18 case $fstype in
19 nfs | nfs4)
20 nfsroot=1
21 break
22 ;;
23 *)
24 ;;
25 esac
26 fi
27done
28
29do_start() {
30 EXTRA_PARAM=""
31 if test $nfsroot -eq 1 ; then
32 EXTRA_PARAM="-P ethernet"
33 fi
34 $DAEMON $EXTRA_PARAM
35}
36
37do_stop() {
38 start-stop-daemon --stop --name connmand --quiet
39}
40
41case "$1" in
42 start)
43 echo "Starting $DESC"
44 do_start
45 ;;
46 stop)
47 echo "Stopping $DESC"
48 do_stop
49 ;;
50 restart|force-reload)
51 echo "Restarting $DESC"
52 do_stop
53 sleep 1
54 do_start
55 ;;
56 *)
57 echo "Usage: $0 {start|stop|restart|force-reload}" >&2
58 exit 1
59 ;;
60esac
61
62exit 0
diff --git a/meta/recipes-connectivity/connman/connman-0.64/dbusperms.patch b/meta/recipes-connectivity/connman/connman-0.64/dbusperms.patch
new file mode 100644
index 0000000000..100af0367b
--- /dev/null
+++ b/meta/recipes-connectivity/connman/connman-0.64/dbusperms.patch
@@ -0,0 +1,12 @@
1Index: git/src/connman-dbus.conf
2===================================================================
3--- git.orig/src/connman-dbus.conf 2009-05-26 00:34:35.000000000 +0100
4+++ git/src/connman-dbus.conf 2009-05-26 00:34:48.000000000 +0100
5@@ -10,6 +10,6 @@
6 <allow send_destination="org.moblin.connman"/>
7 </policy>
8 <policy context="default">
9- <deny send_destination="org.moblin.connman"/>
10+ <allow send_destination="org.moblin.connman"/>
11 </policy>
12 </busconfig>
diff --git a/meta/recipes-connectivity/connman/connman-0.64/fix-shutdown-ap-disconnect.patch b/meta/recipes-connectivity/connman/connman-0.64/fix-shutdown-ap-disconnect.patch
new file mode 100644
index 0000000000..a0ad0991df
--- /dev/null
+++ b/meta/recipes-connectivity/connman/connman-0.64/fix-shutdown-ap-disconnect.patch
@@ -0,0 +1,42 @@
1Schedule delayed scan when being disconnected from an AP
2
3When being disconnected from an AP, a delayed scan is scheduled to make
4sure the AP is still there. wpa_supplicant removes a BSS from its bss list
5when it disappears from the scan results twice in a row.
6
7Author: Samuel Ortiz <sameo@linux.intel.com>
8Ported by Dongxiao Xu <dongxiao.xu@intel.com>
9
10diff -ruN connman-0.56-orig/plugins/supplicant.c connman-0.56/plugins/supplicant.c
11--- connman-0.56-orig/plugins/supplicant.c 2010-09-25 15:08:21.242927383 +0800
12+++ connman-0.56/plugins/supplicant.c 2010-09-25 15:12:46.346136858 +0800
13@@ -2184,6 +2184,15 @@
14 scanning == TRUE ? "started" : "finished");
15 }
16
17+static gboolean delayed_scan(gpointer user_data)
18+{
19+ struct supplicant_task *task = user_data;
20+
21+ supplicant_scan(task->device);
22+
23+ return FALSE;
24+}
25+
26 static void state_change(struct supplicant_task *task, DBusMessage *msg)
27 {
28 DBusError error;
29@@ -2277,7 +2286,13 @@
30 task_connect(task);
31 } else
32 task->network = NULL;
33+ } else {
34+ if (task->state == WPA_DISCONNECTED)
35+ g_timeout_add_seconds(10, delayed_scan, task);
36+
37+ remove_network(task);
38 }
39+
40 break;
41
42 default: