Author: michael
Date: Mon Feb  1 03:30:46 2010
New Revision: 8434

URL: http://svn.slimdevices.com/jive?rev=8434&view=rev
Log:
Bug: 15522
Description: use squeezeos.kill() instead of os.execute() to stop Samba.

Modified:
    
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsApplet.lua
    
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsMeta.lua
    
7.5/trunk/squeezeplay/src/squeezeplay_squeezeos/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsApplet.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsApplet.lua?rev=8434&r1=8433&r2=8434&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsApplet.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsApplet.lua
 Mon Feb  1 03:30:46 2010
@@ -22,6 +22,7 @@
 local Textarea         = require("jive.ui.Textarea")
 local Textinput        = require("jive.ui.Textinput")
 local Window           = require("jive.ui.Window")
+local squeezeos        = require("squeezeos_bsp")
 
 local debug            = require("jive.utils.debug")
 
@@ -159,6 +160,36 @@
        log:info("Disabling Samba Access")
        os.execute("echo disabled > /etc/samba/status");
        os.execute("/etc/init.d/samba stop");
+end
+
+function stopFileSharing(self)
+       self:_killByPidFile("/var/run/nmbd.pid")
+       self:_killByPidFile("/var/run/smbd.pid")
+end
+
+function _killByPidFile(self, file)
+       local pid = _readPidFile(file)
+
+log:warn("got PiD " .. pid)
+       if pid then
+               squeezeos.kill(pid, 15)
+       end
+       os.remove(file)
+end
+
+function _readPidFile(file)
+       local fh = io.open(file, "r")
+
+       if fh == nil then
+               return
+       end
+
+       local pid = fh:read("*all")
+       fh:close()
+
+       log:debug("found pid " .. pid .. " reading " .. file)
+       
+       return pid
 end
 
 

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsMeta.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsMeta.lua?rev=8434&r1=8433&r2=8434&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsMeta.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay_fab4/share/applets/SBSSettings/SBSSettingsMeta.lua
 Mon Feb  1 03:30:46 2010
@@ -28,6 +28,7 @@
 
 function registerApplet(meta)
        jiveMain:addItem(meta:menuItem('sbs_settings', 'advancedSettings', 
"USB_SD_STORAGE", function(applet, ...) applet:SBSSettingsMenu() end))
+       meta:registerService("stopFileSharing")
 end
 
 

Modified: 
7.5/trunk/squeezeplay/src/squeezeplay_squeezeos/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
URL: 
http://svn.slimdevices.com/jive/7.5/trunk/squeezeplay/src/squeezeplay_squeezeos/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua?rev=8434&r1=8433&r2=8434&view=diff
==============================================================================
--- 
7.5/trunk/squeezeplay/src/squeezeplay_squeezeos/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
 (original)
+++ 
7.5/trunk/squeezeplay/src/squeezeplay_squeezeos/share/applets/SetupFirmwareUpgrade/SetupFirmwareUpgradeApplet.lua
 Mon Feb  1 03:30:46 2010
@@ -541,7 +541,7 @@
        if (System:getMachine() == "fab4") then
 
                appletManager:callService("stopSqueezeCenter")
-               os.execute("/etc/init.d/samba stop");
+               appletManager:callService("stopFileSharing")
 
                -- start the upgrade once SBS is shut down or timed out
                local timeout = 0

_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins

Reply via email to