aboutsummaryrefslogtreecommitdiff
path: root/lib/python/Components/Network.py
diff options
context:
space:
mode:
authorAndreas Oberritter <obi@saftware.de>2009-07-07 23:37:57 +0200
committerAndreas Oberritter <obi@saftware.de>2009-07-07 23:37:57 +0200
commit6be112ae10b8eb851ddac2f49412af766d611b25 (patch)
tree7aa2ffb998ed126c1782a5cd8ce581ff9165246d /lib/python/Components/Network.py
parent5ba7efe20b1770c5e080ee4aa1e75b161e10963a (diff)
downloadenigma2-6be112ae10b8eb851ddac2f49412af766d611b25.tar.gz
enigma2-6be112ae10b8eb851ddac2f49412af766d611b25.zip
don't touch network configuration on remote rootfs
Diffstat (limited to 'lib/python/Components/Network.py')
-rwxr-xr-xlib/python/Components/Network.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/python/Components/Network.py b/lib/python/Components/Network.py
index 5f7095c4..31a90282 100755
--- a/lib/python/Components/Network.py
+++ b/lib/python/Components/Network.py
@@ -27,6 +27,16 @@ class Network:
self.config_ready = None
self.getInterfaces()
+ def onRemoteRootFS(self):
+ fp = file('/proc/mounts', 'r')
+ mounts = fp.readlines()
+ fp.close()
+ for line in mounts:
+ parts = line.strip().split(' ')
+ if parts[1] == '/' and (parts[2] == 'nfs' or parts[2] == 'smbfs'):
+ return True
+ return False
+
def getInterfaces(self, callback = None):
devicesPattern = re_compile('[a-z]+[0-9]+')
self.configuredInterfaces = []
@@ -253,6 +263,10 @@ class Network:
print "nameservers:", self.nameservers
def deactivateNetworkConfig(self, callback = None):
+ if self.onRemoteRootFS():
+ if callback is not None:
+ callback(True)
+ return
self.deactivateConsole = Console()
self.commands = []
self.commands.append("/etc/init.d/avahi-daemon stop")
@@ -271,6 +285,10 @@ class Network:
callback(True)
def activateNetworkConfig(self, callback = None):
+ if self.onRemoteRootFS():
+ if callback is not None:
+ callback(True)
+ return
self.activateConsole = Console()
self.commands = []
self.commands.append("/etc/init.d/networking start")
@@ -344,6 +362,10 @@ class Network:
self.nameservers[i] = newnameserver
def resetNetworkConfig(self, mode='lan', callback = None):
+ if self.onRemoteRootFS():
+ if callback is not None:
+ callback(True)
+ return
self.resetNetworkConsole = Console()
self.commands = []
self.commands.append("/etc/init.d/avahi-daemon stop")
@@ -422,6 +444,10 @@ class Network:
statecallback(self.NetworkState)
def restartNetwork(self,callback = None):
+ if self.onRemoteRootFS():
+ if callback is not None:
+ callback(True)
+ return
self.restartConsole = Console()
self.config_ready = False
self.msgPlugins()
@@ -515,6 +541,10 @@ class Network:
statecallback(self.DnsState)
def deactivateInterface(self,iface,callback = None):
+ if self.onRemoteRootFS():
+ if callback is not None:
+ callback(True)
+ return
self.deactivateInterfaceConsole = Console()
self.commands = []
cmd1 = "ip addr flush " + iface