Changes to update Tomato RAF.
[tomato.git] / release / src / router / dnsmasq / contrib / dbus-test / dbus-test.py
blob25d888191d0d6d1aca3b44f320326bbea9f514f7
1 #!/usr/bin/python
2 import dbus
4 bus = dbus.SystemBus()
5 p = bus.get_object("uk.org.thekelleys.dnsmasq", "/uk/org/thekelleys/dnsmasq")
6 l = dbus.Interface(p, dbus_interface="uk.org.thekelleys.dnsmasq")
8 # The new more flexible SetServersEx method
9 array = dbus.Array()
10 array.append(["1.2.3.5"])
11 array.append(["1.2.3.4#664", "foobar.com"])
12 array.append(["1003:1234:abcd::1%eth0", "eng.mycorp.com", "lab.mycorp.com"])
13 print l.SetServersEx(array)
15 # Must create a new object for dnsmasq as the introspection gives the wrong
16 # signature for SetServers (av) while the code only expects a bunch of arguments
17 # instead of an array of variants
18 p = bus.get_object("uk.org.thekelleys.dnsmasq", "/uk/org/thekelleys/dnsmasq", introspect=False)
19 l = dbus.Interface(p, dbus_interface="uk.org.thekelleys.dnsmasq")
21 # The previous method; all addresses in machine byte order
22 print l.SetServers(dbus.UInt32(16909060), # 1.2.3.5
23 dbus.UInt32(16909061), # 1.2.3.4
24 "foobar.com",
25 dbus.Byte(0x10), # 1003:1234:abcd::1
26 dbus.Byte(0x03),
27 dbus.Byte(0x12),
28 dbus.Byte(0x34),
29 dbus.Byte(0xab),
30 dbus.Byte(0xcd),
31 dbus.Byte(0x00),
32 dbus.Byte(0x00),
33 dbus.Byte(0x00),
34 dbus.Byte(0x00),
35 dbus.Byte(0x00),
36 dbus.Byte(0x00),
37 dbus.Byte(0x00),
38 dbus.Byte(0x00),
39 dbus.Byte(0x00),
40 dbus.Byte(0x01),
41 "eng.mycorp.com",
42 "lab.mycorp.com")