From a6faa8fb195b3080f9ca802c95ff85bf89563446 Mon Sep 17 00:00:00 2001 From: Dongxiao Xu Date: Wed, 29 Dec 2010 20:33:37 +0800 Subject: connman: upgrade to version 0.65 upgrade from 0.64 to 0.65 Signed-off-by: Dongxiao Xu --- .../connman/connman-0.65/connman | 62 ++++++++++++++++++++++ .../connman/connman-0.65/dbusperms.patch | 12 +++++ .../connman-0.65/fix-shutdown-ap-disconnect.patch | 42 +++++++++++++++ 3 files changed, 116 insertions(+) create mode 100644 meta/recipes-connectivity/connman/connman-0.65/connman create mode 100644 meta/recipes-connectivity/connman/connman-0.65/dbusperms.patch create mode 100644 meta/recipes-connectivity/connman/connman-0.65/fix-shutdown-ap-disconnect.patch (limited to 'meta/recipes-connectivity/connman/connman-0.65') diff --git a/meta/recipes-connectivity/connman/connman-0.65/connman b/meta/recipes-connectivity/connman/connman-0.65/connman new file mode 100644 index 000000000..f01bf371c --- /dev/null +++ b/meta/recipes-connectivity/connman/connman-0.65/connman @@ -0,0 +1,62 @@ +#!/bin/sh + +DAEMON=/usr/sbin/connmand +PIDFILE=/var/run/connmand.pid +DESC="Connection Manager" + +if [ -f /etc/default/connman ] ; then + . /etc/default/connman +fi + +set -e + +nfsroot=0 + +exec 9<&0 < /proc/mounts +while read dev mtpt fstype rest; do + if test $mtpt = "/" ; then + case $fstype in + nfs | nfs4) + nfsroot=1 + break + ;; + *) + ;; + esac + fi +done + +do_start() { + EXTRA_PARAM="" + if test $nfsroot -eq 1 ; then + EXTRA_PARAM="-P ethernet" + fi + $DAEMON $EXTRA_PARAM +} + +do_stop() { + start-stop-daemon --stop --name connmand --quiet +} + +case "$1" in + start) + echo "Starting $DESC" + do_start + ;; + stop) + echo "Stopping $DESC" + do_stop + ;; + restart|force-reload) + echo "Restarting $DESC" + do_stop + sleep 1 + do_start + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-connectivity/connman/connman-0.65/dbusperms.patch b/meta/recipes-connectivity/connman/connman-0.65/dbusperms.patch new file mode 100644 index 000000000..100af0367 --- /dev/null +++ b/meta/recipes-connectivity/connman/connman-0.65/dbusperms.patch @@ -0,0 +1,12 @@ +Index: git/src/connman-dbus.conf +=================================================================== +--- git.orig/src/connman-dbus.conf 2009-05-26 00:34:35.000000000 +0100 ++++ git/src/connman-dbus.conf 2009-05-26 00:34:48.000000000 +0100 +@@ -10,6 +10,6 @@ + + + +- ++ + + diff --git a/meta/recipes-connectivity/connman/connman-0.65/fix-shutdown-ap-disconnect.patch b/meta/recipes-connectivity/connman/connman-0.65/fix-shutdown-ap-disconnect.patch new file mode 100644 index 000000000..a0ad0991d --- /dev/null +++ b/meta/recipes-connectivity/connman/connman-0.65/fix-shutdown-ap-disconnect.patch @@ -0,0 +1,42 @@ +Schedule delayed scan when being disconnected from an AP + +When being disconnected from an AP, a delayed scan is scheduled to make +sure the AP is still there. wpa_supplicant removes a BSS from its bss list +when it disappears from the scan results twice in a row. + +Author: Samuel Ortiz +Ported by Dongxiao Xu + +diff -ruN connman-0.56-orig/plugins/supplicant.c connman-0.56/plugins/supplicant.c +--- connman-0.56-orig/plugins/supplicant.c 2010-09-25 15:08:21.242927383 +0800 ++++ connman-0.56/plugins/supplicant.c 2010-09-25 15:12:46.346136858 +0800 +@@ -2184,6 +2184,15 @@ + scanning == TRUE ? "started" : "finished"); + } + ++static gboolean delayed_scan(gpointer user_data) ++{ ++ struct supplicant_task *task = user_data; ++ ++ supplicant_scan(task->device); ++ ++ return FALSE; ++} ++ + static void state_change(struct supplicant_task *task, DBusMessage *msg) + { + DBusError error; +@@ -2277,7 +2286,13 @@ + task_connect(task); + } else + task->network = NULL; ++ } else { ++ if (task->state == WPA_DISCONNECTED) ++ g_timeout_add_seconds(10, delayed_scan, task); ++ ++ remove_network(task); + } ++ + break; + + default: -- cgit v1.2.3