Annotation of embedaddon/dnsmasq/contrib/dbus-test/dbus-test.py, revision 1.1
1.1 ! misho 1: #!/usr/bin/python
! 2: import dbus
! 3:
! 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")
! 7:
! 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)
! 14:
! 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")
! 20:
! 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")
! 43:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>