Use the kill command instead of killall
[platform/core/connectivity/bluetooth-tools.git] / scripts / mobile / bt-stack-down.sh
old mode 100755 (executable)
new mode 100644 (file)
index 4771cd3..4a673d4
@@ -1,5 +1,6 @@
 #!/bin/sh
 PATH=/bin:/usr/bin:/sbin:/usr/sbin
+PGREP=/usr/bin/pgrep
 
 #
 # Script for stopping Bluetooth stack
@@ -8,15 +9,55 @@ PATH=/bin:/usr/bin:/sbin:/usr/sbin
 # Remove BT device
 /usr/etc/bluetooth/bt-dev-end.sh
 
+# Stop HCI logging
+/usr/bin/touch /run/.hci_logger_stop
+
 # Kill BlueZ bluetooth stack
-killall obexd obex-client
-killall bt-syspopup
-killall bluetooth-pb-agent
-killall bluetooth-map-agent
-killall bluetooth-hfp-agent
-killall bluetooth-ag-agent
-killall bluetoothd
-killall bluetooth-share
+
+OBEXD_PID=$($PGREP obexd)
+if [ "$OBEXD_PID" != "" ]; then
+       kill $OBEXD_PID
+fi
+
+OBEXDCLIENT_PID=$($PGREP obexd-client)
+if [ "$OBEXDCLIENT_PID" != "" ]; then
+       kill $OBEXDCLIENT_PID
+fi
+
+BTSYSPOPUP_PID=$($PGREP bt-syspopup)
+if [ "BTSYSPOPUP_PID" != "" ]; then
+       kill BTSYSPOPUP_PID
+fi
+
+BTSHARE_PID=$($PGREP bluetooth-share)
+if [ "$BTSHARE_PID" != "" ]; then
+       kill $BTSHARE_PID
+fi
+
+BTPB_AGENT_PID=$($PGREP bluetooth-pb-agent)
+if [ "$BTPB_AGENT_PID" != "" ]; then
+       kill $BTPB_AGENT_PID
+fi
+
+BTMAP_AGENT_PID=$($PGREP bluetooth-map-agent)
+if [ "$BTMAP_AGENT_PID" != "" ]; then
+       kill $BTMAP_AGENT_PID
+fi
+
+BTHFP_AGENT_PID=$($PGREP bluetooth-hfp-agent)
+if [ "$BTHFP_AGENT_PID" != "" ]; then
+       kill $BTHFP_AGENT_PID
+fi
+
+BTAG_AGENT_PID=$($PGREP bluetooth-ag-agent)
+if [ "$BTAG_AGENT_PID" != "" ]; then
+       kill $BTAG_AGENT_PID
+fi
+
+BLUETOOTHD_PID=$($PGREP bluetoothd)
+if [ "$BLUETOOTHD_PID" != "" ]; then
+       kill $BLUETOOTHD_PID
+fi
 
 # result
 exit 0