diff options
| author | Marcel Holtmann <marcel@holtmann.org> | 2008-06-03 12:54:26 +0000 |
|---|---|---|
| committer | Marcel Holtmann <marcel@holtmann.org> | 2008-06-03 12:54:26 +0000 |
| commit | 9162dfde2d6a7625849aa873fc5ef9220779e7a9 (patch) | |
| tree | c55f26324f76f01837f82b560615f139cffef34f /hcid | |
| parent | e0a54a416a5abc3bab139e5db6391c1926855ff6 (diff) | |
Move D-Bus config file and example clients back into hcid directory
Diffstat (limited to 'hcid')
| -rw-r--r-- | hcid/Makefile.am | 10 | ||||
| -rw-r--r-- | hcid/bluetooth.conf | 34 | ||||
| -rwxr-xr-x | hcid/simple-service | 119 | ||||
| -rwxr-xr-x | hcid/test-manager | 27 |
4 files changed, 187 insertions, 3 deletions
diff --git a/hcid/Makefile.am b/hcid/Makefile.am index 9ecd1f97..4cba3e03 100644 --- a/hcid/Makefile.am +++ b/hcid/Makefile.am @@ -1,5 +1,9 @@ if CONFIGFILES +dbusdir = $(sysconfdir)/dbus-1/system.d + +dbus_DATA = bluetooth.conf + confdir = $(sysconfdir)/bluetooth conf_DATA = hcid.conf @@ -52,9 +56,9 @@ AM_YFLAGS = -d CLEANFILES = lexer.c parser.c parser.h -EXTRA_DIST = hcid.8 hcid.conf.5 hcid.conf dbus-api.txt \ - list-devices test-discovery test-adapter test-device simple-agent \ - service-record.dtd \ +EXTRA_DIST = bluetooth.conf hcid.8 hcid.conf.5 hcid.conf dbus-api.txt \ + list-devices test-discovery itest-manager test-adapter test-device \ + simple-service simple-agent service-record.dtd \ service-did.xml service-spp.xml service-opp.xml service-ftp.xml MAINTAINERCLEANFILES = Makefile.in diff --git a/hcid/bluetooth.conf b/hcid/bluetooth.conf new file mode 100644 index 00000000..e2f4e923 --- /dev/null +++ b/hcid/bluetooth.conf @@ -0,0 +1,34 @@ +<!-- This configuration file specifies the required security policies + for Bluetooth core daemon to work. --> + +<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" + "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> +<busconfig> + + <!-- ../system.conf have denied everything, so we just punch some holes --> + + <policy user="root"> + <allow own="org.bluez"/> + </policy> + + <policy at_console="true"> + <allow send_destination="org.bluez.Manager"/> + <allow receive_sender="org.bluez.Manager"/> + + <allow send_path="/"/> + <allow send_path="/org/bluez"/> + + <allow send_destination="org.bluez.Adapter"/> + <allow receive_sender="org.bluez.Adapter"/> + + <allow send_destination="org.bluez.Service"/> + <allow receive_sender="org.bluez.Service"/> + + <allow send_destination="org.bluez.Database"/> + <allow receive_sender="org.bluez.Database"/> + + <allow send_destination="org.bluez.Security"/> + <allow receive_sender="org.bluez.Security"/> + </policy> + +</busconfig> diff --git a/hcid/simple-service b/hcid/simple-service new file mode 100755 index 00000000..4c2bce4e --- /dev/null +++ b/hcid/simple-service @@ -0,0 +1,119 @@ +#!/usr/bin/python + +import time +import dbus + +bus = dbus.SystemBus() + +xml = ' \ +<?xml version="1.0" encoding="UTF-8" ?> \ +<record> \ + <attribute id="0x0001"> \ + <sequence> \ + <uuid value="0x1101"/> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x0002"> \ + <uint32 value="0"/> \ + </attribute> \ + \ + <attribute id="0x0003"> \ + <uuid value="00001101-0000-1000-8000-00805f9b34fb"/> \ + </attribute> \ + \ + <attribute id="0x0004"> \ + <sequence> \ + <sequence> \ + <uuid value="0x0100"/> \ + </sequence> \ + <sequence> \ + <uuid value="0x0003"/> \ + <uint8 value="23"/> \ + </sequence> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x0005"> \ + <sequence> \ + <uuid value="0x1002"/> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x0006"> \ + <sequence> \ + <uint16 value="0x656e"/> \ + <uint16 value="0x006a"/> \ + <uint16 value="0x0100"/> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x0007"> \ + <uint32 value="0"/> \ + </attribute> \ + \ + <attribute id="0x0008"> \ + <uint8 value="0xff"/> \ + </attribute> \ + \ + <attribute id="0x0009"> \ + <sequence> \ + <sequence> \ + <uuid value="0x1101"/> \ + <uint16 value="0x0100"/> \ + </sequence> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x000a"> \ + <url value="http://www.bluez.org/"/> \ + </attribute> \ + \ + <attribute id="0x000b"> \ + <url value="http://www.bluez.org/"/> \ + </attribute> \ + \ + <attribute id="0x000c"> \ + <url value="http://www.bluez.org/"/> \ + </attribute> \ + \ + <attribute id="0x0100"> \ + <text value="Serial Port"/> \ + </attribute> \ + \ + <attribute id="0x0101"> \ + <text value="Serial Port Service"/> \ + </attribute> \ + \ + <attribute id="0x0102"> \ + <text value="BlueZ"/> \ + </attribute> \ + \ + <attribute id="0x0200"> \ + <sequence> \ + <uint16 value="0x0100"/> \ + </sequence> \ + </attribute> \ + \ + <attribute id="0x0201"> \ + <uint32 value="0"/> \ + </attribute> \ +</record> \ +' + +adapter = dbus.Interface(bus.get_object('org.bluez', '/'), + 'org.bluez.Adapter') + +handle = adapter.AddServiceRecord(xml) + +print "Service record with handle 0x%04x added" % (handle) + +print "Press CTRL-C to remove service record" + +try: + time.sleep(1000) + print "Terminating session" +except: + pass + +adapter.RemoveServiceRecord(dbus.UInt32(handle)) diff --git a/hcid/test-manager b/hcid/test-manager new file mode 100755 index 00000000..759b6a48 --- /dev/null +++ b/hcid/test-manager @@ -0,0 +1,27 @@ +#!/usr/bin/python + +import gobject + +import dbus +import dbus.mainloop.glib + +def adapter_added(path): + print "Adapter with path %s added" % (path) + +def adapter_removed(path): + print "Adapter with path %s removed" % (path) + +if __name__ == "__main__": + dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) + + bus = dbus.SystemBus() + + manager = dbus.Interface(bus.get_object('org.bluez', '/org/bluez'), + 'org.bluez.Manager') + + manager.connect_to_signal("AdapterAdded", adapter_added) + + manager.connect_to_signal("AdapterRemoved", adapter_removed) + + mainloop = gobject.MainLoop() + mainloop.run() |
