bluez: fix bluez5 init with procd
authorDirk Neukirchen <dirkneukirchen@web.de>
Wed, 1 Apr 2015 23:30:45 +0000 (01:30 +0200)
committerDirk Neukirchen <dirkneukirchen@web.de>
Thu, 2 Apr 2015 07:48:24 +0000 (09:48 +0200)
- remove deprecated daemons
- bluetoothd is managed via /etc/bluetooth/*.conf files and dbus

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>
utils/bluez/files/bluetoothd.init [new file with mode: 0644]
utils/bluez/files/bluez-utils.init [deleted file]

diff --git a/utils/bluez/files/bluetoothd.init b/utils/bluez/files/bluetoothd.init
new file mode 100644 (file)
index 0000000..75f4d96
--- /dev/null
@@ -0,0 +1,13 @@
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2007 OpenWrt.org
+
+#start after dbus (60)
+START=62
+USE_PROCD=1
+PROG=/usr/bin/bluetoothd
+
+start_service() {
+       procd_open_instance
+       procd_set_param command "$PROG" -n
+       procd_close_instance
+}
diff --git a/utils/bluez/files/bluez-utils.init b/utils/bluez/files/bluez-utils.init
deleted file mode 100644 (file)
index e9320ae..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2007 OpenWrt.org
-
-#start after dbus (60)
-START=62
-
-append_bool() {
-       local section="$1"
-       local option="$2"
-       local value="$3"
-       local _val
-       config_get_bool _val "$section" "$option" '0'
-       [ $_val -gt 0 ] && append args "$3"
-}
-
-append_string() {
-       local section="$1"
-       local option="$2"
-       local value="$3"
-       local default="$4"
-       local _val
-       config_get _val "$section" "$option" "$default"
-       [ -n "$_val" ] && append args "$3 $_val"
-}
-
-hcid_config() {
-       local cfg="$1"
-       config_get_bool enabled "$cfg" "enabled" '1'
-       [ $enabled -gt 0 ] || return 1
-       args=""
-       append_bool "$cfg" nodaemon "-n"
-       append_string "$cfg" config "-f"
-       service_start /usr/sbin/hcid $args
-}
-
-hciattach_config() {
-       local cfg="$1"
-       config_get_bool enabled "$cfg" "enabled" '1'
-       [ $enabled -gt 0 ] || return 1
-       args=""
-       append_string "$cfg" initspeed "-s" "115200"
-       append_string "$cfg" tty " " "ttyS1"
-       append_string "$cfg" type " " "csr"
-       append_string "$cfg" speed " " "115200"
-       append_string "$cfg" flow " " "noflow"
-       service_start /usr/sbin/hciattach $args
-}
-
-rfcomm_config() {
-       local cfg="$1"
-       config_get_bool enabled "$cfg" "enabled" '1'
-       [ $enabled -gt 0 ] || return 1
-       args=""
-       append_string "$cfg" config "-f"
-       /usr/bin/rfcomm $args bind all
-}
-
-dund_config() {
-       local cfg="$1"
-       config_get_bool enabled "$cfg" "enabled" '1'
-       [ $enabled -gt 0 ] || return 1
-       args=""
-       append_bool "$cfg" listen "--listen"
-       append_string "$cfg" connect "--connect"
-       append_string "$cfg" mrouter "--mrouter"
-       append_bool "$cfg" search "--search"
-       append_string "$cfg" channel "--channel"
-       append_string "$cfg" device "--device"
-       append_bool "$cfg" nosdp "--nosdp"
-       append_bool "$cfg" auth "--auth"
-       append_bool "$cfg" encrypt "--encrypt"
-       append_bool "$cfg" secure "--secure"
-       append_bool "$cfg" master "--master"
-       append_bool "$cfg" nodetach "--nodetach"
-       append_bool "$cfg" persist "--persist"
-       append_string "$cfg" pppd "--pppd"
-       append_bool "$cfg" msdun "--msdun"
-       append_bool "$cfg" activesync "--activesync"
-       append_bool "$cfg" cache "--cache"
-
-       append_string "$cfg" pppdopts ""
-       config_get ifn "$cfg" interface
-       if [ -n "$ifn" ]; then
-               config_get unit "$cfg" unit
-               [ -z "$unit" ] || append args "unit $unit ipparam $ifn linkname $ifn"
-       fi
-
-       service_start /usr/bin/dund $args
-}
-
-pand_config() {
-       local cfg="$1"
-       config_get_bool enabled "$cfg" "enabled" '1'
-       [ $enabled -gt 0 ] || return 1
-       args=""
-       append_bool "$cfg" listen "--listen"
-       append_string "$cfg" connect "--connect"
-       append_bool "$cfg" autozap "--autozap"
-       append_bool "$cfg" search "--search"
-       append_string "$cfg" role "--role"
-       append_string "$cfg" service "--service"
-       append_string "$cfg" ethernet "--ethernet"
-       append_string "$cfg" device "--device"
-       append_bool "$cfg" nosdp "-D"
-       append_bool "$cfg" auth "-A"
-       append_bool "$cfg" encrypt "-E"
-       append_bool "$cfg" secure "-S"
-       append_bool "$cfg" master "-M"
-       append_bool "$cfg" nodetach "-n"
-       append_bool "$cfg" persist "--persist"
-       append_bool "$cfg" cache "--cache"
-       append_string "$cfg" pidfile "--pidfile"
-       service_start /usr/bin/pand $args
-}
-
-start() {
-       config_load bluetooth
-       config_foreach hcid_config hcid
-       config_foreach hciattach_config hciattach
-       config_foreach rfcomm_config rfcomm
-       config_foreach dund_config dund
-       config_foreach pand_config pand
-}
-
-stop() {
-       service_stop /usr/bin/dund
-       service_stop /usr/bin/pand
-       /usr/bin/rfcomm release all
-       service_stop /usr/sbin/hciattach
-       service_stop /usr/sbin/hcid
-}