Hi list,<br>&nbsp;&nbsp;&nbsp;&nbsp; I&#39;ve added SDP support on the bluetooth engine on a branch[1] from kdebase/runtime/solid.<br>This addition involves:<br><br>- A new class to hold the information about services available in a remote device. This class is declared in Solid::Control namespace, is called ServiceRecord and is defined in [2]. (Maybe it should be renamed to BluetoothServiceRecord...)
<br><br>- A public slot, findServices(), to [2] to start the service search. This slot accepts an optional filter to reduce search results.<br><br>- Three public signals to [2] to notify service discovery start, each service found and discovery end.
<br><br>- Public == operator (this is not strictly neede, but...)<br><br>- On [3] introduced the SOLID_CALL for the findServices() slot, and connected the new signals to the backend object.<br><br>- As a consequence of that additions, modified [4] and [5]
<br><br>- Finally, created an implementation for that SDP interface on the bluez backend. For this, I created a new threaded queued dispatcher that handles sdp requests one by one, as most hardware seems to not support simultaneous sdp requests. The dispatcher is defined at the newly introduced files [7] &amp; [8], and used from [9] and [10].
<br><br>If everybody is ok with this changes, I&#39;ll take them to trunk myself.<br><br>Regards<br><br>[1]: svn://anonsvn.kde.org/home/kde/branches/work/soc_kdebluetooth4/solid_sdp<br>[2]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/bluetoothremotedevice.h?r1=676035&amp;r2=680245">
http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/bluetoothremotedevice.h?r1=676035&amp;r2=680245</a><br>[3]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/bluetoothremotedevice.cpp?r1=676035&amp;r2=680245">
http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/bluetoothremotedevice.cpp?r1=676035&amp;r2=680245</a><br>[4]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/ifaces/bluetoothremotedevice.h?r1=676035&amp;r2=680245">
http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/solid/control/ifaces/bluetoothremotedevice.h?r1=676035&amp;r2=680245</a><br>[5]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/backends/fakebluetooth/fakebluetoothremotedevice.h?r1=676035&amp;r2=680245">
http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/control/backends/fakebluetooth/fakebluetoothremotedevice.h?r1=676035&amp;r2=680245</a><br>[6]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/">
http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/</a><br>[7]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-serviceparser.cpp?revision=682185&amp;view=markup">http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-serviceparser.cpp?revision=682185&amp;view=markup
</a><br>[8]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-serviceparser.h?revision=682185&amp;view=markup">http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-serviceparser.h?revision=682185&amp;view=markup
</a><br>[9]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-bluetoothremotedevice.h?r1=676035&amp;r2=682098">http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-bluetoothremotedevice.h?r1=676035&amp;r2=682098
</a><br>[10]: <a href="http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-bluetoothremotedevice.cpp?r1=676035&amp;r2=682098">http://websvn.kde.org/branches/work/soc_kdebluetooth4/solid_sdp/bluez/bluez-bluetoothremotedevice.cpp?r1=676035&amp;r2=682098
</a><br>-- <br>Indifference will be the downfall of mankind, but who cares?...<br><a href="http://blog.opsiland.info/">http://blog.opsiland.info/</a>