mirror of git://git.sysmocom.de/ofono
Add first version of script for applying GPRS settings
This commit is contained in:
parent
231aca4a69
commit
df0c6b07a8
|
@ -241,7 +241,8 @@ test_files = test/test-manager test/test-modem test/test-voicecall \
|
||||||
test/list-operators test/dial-number test/hangup-all \
|
test/list-operators test/dial-number test/hangup-all \
|
||||||
test/receive-sms test/send-sms \
|
test/receive-sms test/send-sms \
|
||||||
test/list-contexts test/create-context \
|
test/list-contexts test/create-context \
|
||||||
test/activate-context test/deactivate-context
|
test/activate-context test/deactivate-context \
|
||||||
|
test/process-context-settings
|
||||||
|
|
||||||
conf_files = src/ofono.conf plugins/modem.conf
|
conf_files = src/ofono.conf plugins/modem.conf
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,60 @@
|
||||||
|
#!/usr/bin/python
|
||||||
|
|
||||||
|
import os
|
||||||
|
import dbus
|
||||||
|
|
||||||
|
bus = dbus.SystemBus()
|
||||||
|
|
||||||
|
manager = dbus.Interface(bus.get_object('org.ofono', '/'),
|
||||||
|
'org.ofono.Manager')
|
||||||
|
|
||||||
|
properties = manager.GetProperties()
|
||||||
|
|
||||||
|
for path in properties["Modems"]:
|
||||||
|
modem = dbus.Interface(bus.get_object('org.ofono', path),
|
||||||
|
'org.ofono.Modem')
|
||||||
|
|
||||||
|
properties = modem.GetProperties()
|
||||||
|
|
||||||
|
if "org.ofono.DataConnectionManager" not in properties["Interfaces"]:
|
||||||
|
continue
|
||||||
|
|
||||||
|
connmgr = dbus.Interface(bus.get_object('org.ofono', path),
|
||||||
|
'org.ofono.DataConnectionManager')
|
||||||
|
|
||||||
|
properties = connmgr.GetProperties()
|
||||||
|
|
||||||
|
for path in properties["PrimaryContexts"]:
|
||||||
|
context = dbus.Interface(bus.get_object('org.ofono', path),
|
||||||
|
'org.ofono.PrimaryDataContext')
|
||||||
|
|
||||||
|
properties = context.GetProperties()
|
||||||
|
|
||||||
|
if properties["Active"] == dbus.Boolean(0):
|
||||||
|
continue
|
||||||
|
|
||||||
|
print "Configuring %s" % (path)
|
||||||
|
|
||||||
|
settings = properties["Settings"]
|
||||||
|
|
||||||
|
interface = settings["Interface"]
|
||||||
|
address = settings["Address"]
|
||||||
|
gateway = settings["Gateway"]
|
||||||
|
|
||||||
|
if settings["Method"] == "dhcp":
|
||||||
|
print " Run DHCP on interface %s" % (interface)
|
||||||
|
else:
|
||||||
|
print " IP address is %s" % (address)
|
||||||
|
print " Gateway is %s" % (gateway)
|
||||||
|
|
||||||
|
cmd = "ifconfig " + interface + " " + address
|
||||||
|
cmd += " netmask 255.255.255.255"
|
||||||
|
os.system(cmd);
|
||||||
|
|
||||||
|
for i in settings["DomainNameServers"]:
|
||||||
|
print " Nameserver is %s" % (i)
|
||||||
|
|
||||||
|
cmd = "route add -host " + i
|
||||||
|
cmd +=" dev " + interface
|
||||||
|
os.system(cmd);
|
||||||
|
print
|
Loading…
Reference in New Issue