* how to advertise a GATT service only for LE or BR/EDR? @ 2017-09-28 16:43 Hermida, Isaac 2017-09-28 18:21 ` Luiz Augusto von Dentz 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-09-28 16:43 UTC (permalink / raw) To: linux-bluetooth@vger.kernel.org SGkgZ3JvdXAsDQoNCkFzIHBhcnQgb2YgdGhlIGJsdWV0b290aCBTSUcgY2VydGlmaWNhdGlvbiB0 aGVyZSBhcmUgdHdvIHRlc3QgY2FzZXMgDQovVFAvR0FSL0NML0JJLTM0LUMgYW5kIC9UUC9HQVIv Q0wvQkktMzUtQyAoeW91IGNhbiBzZWUgdGhleSBkZWZpbmVkIGluIA0KdW5pdC90ZXN0LWdhdHQu YykuDQpDdXJyZW50bHkgSSBhbSBhYmxlIHRvIHJ1biB0aGUgInRlc3QvZXhhbXBsZS1nYXR0LXNl cnZlciIgYW5kIHNlZSBteSANCmN1c3RvbSBzZXJ2aWNlcyBhbmQgY2hhcmFjdGVyaXN0aWNzLCBi dXQgSSBuZWVkIHRvIGRlZmluZSBhbiBzcGVjaWZpYyANCnNlcnZpY2UvY2hhcmFjdGVyaXN0aWMg dG8gYmUgb25seSBhY2Nlc3NpYmxlIHRyb3VnaCBMRSBvciBCUi9FRFIgDQp0cmFuc3BvcnQgcGFy YW1ldGVyLiBJIHdhcyBkaWdnaW5nIGludG8gdGhlIGNvZGUgYnV0IEkgd2FzIHVuYWJsZSB0byAN CmZpbmQgaG93IHRvIHNldCBpdCBmb3IgdGhlIEdBVFQgc2VydmVyLg0KDQpJbiBvdGhlciB3b3Jk cywgd2hhdCBJIHdhbnQgdG8gZG8gaXMgbGF1bmNoIHRoZSBnYXR0LXNlcnZlciBhbmQgdGhlbiwg DQp3aGVuIGluc3BlY3RpbmcgdGhlIHNlcnZpY2VzL2NoYXJhY3RlcmlzdGljIHdpdGggZ2F0dHRv b2wsIHRoZSByZXR1cm5lZCANCmxpc3Qgc2hvdWxkIGJlIGRpZmZlcmVudCBpZiBJIHJ1biBnYXR0 dG9vbCB3aXRoICItcCAzMSIgb3Igbm90IChub3RpY2UgDQpob3cgdGhlIGdhdHR0b29sIHByb21w dCBpcyBzZXQgdG8gTEUgb3IgQlIpLg0KDQojIGdhdHR0b29sIC1JIC1iIDAwOjQwOjlEOjk4Ojk5 OkJEIC1wIDANClswMDo0MDo5RDo5ODo5OTpCRF1bTEVdPiBjb25uZWN0DQpBdHRlbXB0aW5nIHRv IGNvbm5lY3QgdG8gMDA6NDA6OUQ6OTg6OTk6QkQNCkNvbm5lY3Rpb24gc3VjY2Vzc2Z1bA0KWzAw OjQwOjlEOjk4Ojk5OkJEXVtMRV0+IHByaW1hcnkNCmF0dHIgaGFuZGxlOiAweDAwMDEsIGVuZCBn cnAgaGFuZGxlOiAweDAwMDUgdXVpZDogDQowMDAwMTgwMC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5 YjM0ZmINCmF0dHIgaGFuZGxlOiAweDAwMDYsIGVuZCBncnAgaGFuZGxlOiAweDAwMDkgdXVpZDog DQowMDAwMTgwMS0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCmF0dHIgaGFuZGxlOiAweDAw MGEsIGVuZCBncnAgaGFuZGxlOiAweDAwMGQgdXVpZDogDQowMDAwMTgwZi0wMDAwLTEwMDAtODAw MC0wMDgwNWY5YjM0ZmINCmF0dHIgaGFuZGxlOiAweDAwMGUsIGVuZCBncnAgaGFuZGxlOiAweDAw MWQgdXVpZDogDQoxMjM0NTY3OC0xMjM0LTU2NzgtMTIzNC01Njc4OWFiY2RlZjANCmF0dHIgaGFu ZGxlOiAweDAwMWUsIGVuZCBncnAgaGFuZGxlOiAweDAwMjUgdXVpZDogDQowMDAwMTgwZC0wMDAw LTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCg0KDQojIC90bXAvZ2F0dHRvb2wgLUkgLWIgMDA6NDA6 OUQ6OTg6OTk6QkQgLXAgMzENClswMDo0MDo5RDo5ODo5OTpCRF1bQlJdPiBjb25uZWN0DQpBdHRl bXB0aW5nIHRvIGNvbm5lY3QgdG8gMDA6NDA6OUQ6OTg6OTk6QkQNCkNvbm5lY3Rpb24gc3VjY2Vz c2Z1bA0KWzAwOjQwOjlEOjk4Ojk5OkJEXVtCUl0+IHByaW1hcnkNCmF0dHIgaGFuZGxlOiAweDAw MDEsIGVuZCBncnAgaGFuZGxlOiAweDAwMDUgdXVpZDogDQowMDAwMTgwMC0wMDAwLTEwMDAtODAw MC0wMDgwNWY5YjM0ZmINCmF0dHIgaGFuZGxlOiAweDAwMDYsIGVuZCBncnAgaGFuZGxlOiAweDAw MDkgdXVpZDogDQowMDAwMTgwMS0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCmF0dHIgaGFu ZGxlOiAweDAwMGEsIGVuZCBncnAgaGFuZGxlOiAweDAwMTkgdXVpZDogDQoxMjM0NTY3OC0xMjM0 LTU2NzgtMTIzNC01Njc4OWFiY2RlZjANCmF0dHIgaGFuZGxlOiAweDAwMWEsIGVuZCBncnAgaGFu ZGxlOiAweDAwMWQgdXVpZDogDQowMDAwMTgwZi0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmIN CmF0dHIgaGFuZGxlOiAweDAwMWUsIGVuZCBncnAgaGFuZGxlOiAweDAwMjUgdXVpZDogDQowMDAw MTgwZC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCg0KDQoNCkkgYW0gdXNpbmcgYmx1ZXog NS40MS4gSXMgcG9zc2libGUgdG8gYWR2ZXJ0aXNlIGEgc2VydmljZSBvbmx5IGZvciBMRSBvciAN CkJSPyBJIGd1ZXNzIGl0IHNob3VsZCBiZWNhdXNlIGlzIHBhcnQgb2YgdGhlIFNJRyBjZXJ0aWZp Y2F0aW9uIGFuZCBpcyANCnBhcnQgb2YgdGhlIHVuaXQvdGVzdC1nYXR0Lg== ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-09-28 16:43 how to advertise a GATT service only for LE or BR/EDR? Hermida, Isaac @ 2017-09-28 18:21 ` Luiz Augusto von Dentz 2017-09-29 6:44 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Luiz Augusto von Dentz @ 2017-09-28 18:21 UTC (permalink / raw) To: Hermida, Isaac; +Cc: linux-bluetooth@vger.kernel.org Hi Isaac, On Thu, Sep 28, 2017 at 7:43 PM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: > Hi group, > > As part of the bluetooth SIG certification there are two test cases > /TP/GAR/CL/BI-34-C and /TP/GAR/CL/BI-35-C (you can see they defined in > unit/test-gatt.c). > Currently I am able to run the "test/example-gatt-server" and see my > custom services and characteristics, but I need to define an specific > service/characteristic to be only accessible trough LE or BR/EDR > transport parameter. I was digging into the code but I was unable to > find how to set it for the GATT server. > > In other words, what I want to do is launch the gatt-server and then, > when inspecting the services/characteristic with gatttool, the returned > list should be different if I run gatttool with "-p 31" or not (notice > how the gatttool prompt is set to LE or BR). > > # gatttool -I -b 00:40:9D:98:99:BD -p 0 > [00:40:9D:98:99:BD][LE]> connect > Attempting to connect to 00:40:9D:98:99:BD > Connection successful > [00:40:9D:98:99:BD][LE]> primary > attr handle: 0x0001, end grp handle: 0x0005 uuid: > 00001800-0000-1000-8000-00805f9b34fb > attr handle: 0x0006, end grp handle: 0x0009 uuid: > 00001801-0000-1000-8000-00805f9b34fb > attr handle: 0x000a, end grp handle: 0x000d uuid: > 0000180f-0000-1000-8000-00805f9b34fb > attr handle: 0x000e, end grp handle: 0x001d uuid: > 12345678-1234-5678-1234-56789abcdef0 > attr handle: 0x001e, end grp handle: 0x0025 uuid: > 0000180d-0000-1000-8000-00805f9b34fb > > > # /tmp/gatttool -I -b 00:40:9D:98:99:BD -p 31 > [00:40:9D:98:99:BD][BR]> connect > Attempting to connect to 00:40:9D:98:99:BD > Connection successful > [00:40:9D:98:99:BD][BR]> primary > attr handle: 0x0001, end grp handle: 0x0005 uuid: > 00001800-0000-1000-8000-00805f9b34fb > attr handle: 0x0006, end grp handle: 0x0009 uuid: > 00001801-0000-1000-8000-00805f9b34fb > attr handle: 0x000a, end grp handle: 0x0019 uuid: > 12345678-1234-5678-1234-56789abcdef0 > attr handle: 0x001a, end grp handle: 0x001d uuid: > 0000180f-0000-1000-8000-00805f9b34fb > attr handle: 0x001e, end grp handle: 0x0025 uuid: > 0000180d-0000-1000-8000-00805f9b34fb > > > > I am using bluez 5.41. Is possible to advertise a service only for LE or > BR? I guess it should because is part of the SIG certification and is > part of the unit/test-gatt. This might be because the spec was no clear about the database being bearer specific, which in my opinion this is a oversight since then we can't represent attributes of dual mode devices with a unified object, and I really wonder if this has to be forced up into the API, if it does then we would have to encode bearer information into the object path (argh!) for client and for server would probably need a property telling which bearer this would be available and encode this into to the database which may leave gaps in the handles or just duplicate everything, for server Id probably just hide the services based on the bearer, but we still need to store the CCC configuration in a bearer specific manner. -- Luiz Augusto von Dentz ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-09-28 18:21 ` Luiz Augusto von Dentz @ 2017-09-29 6:44 ` Hermida, Isaac 2017-10-02 7:03 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-09-29 6:44 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiwNCg0KT24gMDkvMjgvMjAxNyAwODoyMSBQTSwgTHVpeiBBdWd1c3RvIHZvbiBEZW50 eiB3cm90ZToNCj4gSGkgSXNhYWMsDQo+DQo+IE9uIFRodSwgU2VwIDI4LCAyMDE3IGF0IDc6NDMg UE0sIEhlcm1pZGEsIElzYWFjIDxJc2FhYy5IZXJtaWRhQGRpZ2kuY29tPiB3cm90ZToNCj4+IEhp IGdyb3VwLA0KPj4NCj4+IEFzIHBhcnQgb2YgdGhlIGJsdWV0b290aCBTSUcgY2VydGlmaWNhdGlv biB0aGVyZSBhcmUgdHdvIHRlc3QgY2FzZXMNCj4+IC9UUC9HQVIvQ0wvQkktMzQtQyBhbmQgL1RQ L0dBUi9DTC9CSS0zNS1DICh5b3UgY2FuIHNlZSB0aGV5IGRlZmluZWQgaW4NCj4+IHVuaXQvdGVz dC1nYXR0LmMpLg0KPj4gQ3VycmVudGx5IEkgYW0gYWJsZSB0byBydW4gdGhlICJ0ZXN0L2V4YW1w bGUtZ2F0dC1zZXJ2ZXIiIGFuZCBzZWUgbXkNCj4+IGN1c3RvbSBzZXJ2aWNlcyBhbmQgY2hhcmFj dGVyaXN0aWNzLCBidXQgSSBuZWVkIHRvIGRlZmluZSBhbiBzcGVjaWZpYw0KPj4gc2VydmljZS9j aGFyYWN0ZXJpc3RpYyB0byBiZSBvbmx5IGFjY2Vzc2libGUgdHJvdWdoIExFIG9yIEJSL0VEUg0K Pj4gdHJhbnNwb3J0IHBhcmFtZXRlci4gSSB3YXMgZGlnZ2luZyBpbnRvIHRoZSBjb2RlIGJ1dCBJ IHdhcyB1bmFibGUgdG8NCj4+IGZpbmQgaG93IHRvIHNldCBpdCBmb3IgdGhlIEdBVFQgc2VydmVy Lg0KPj4NCj4+IEluIG90aGVyIHdvcmRzLCB3aGF0IEkgd2FudCB0byBkbyBpcyBsYXVuY2ggdGhl IGdhdHQtc2VydmVyIGFuZCB0aGVuLA0KPj4gd2hlbiBpbnNwZWN0aW5nIHRoZSBzZXJ2aWNlcy9j aGFyYWN0ZXJpc3RpYyB3aXRoIGdhdHR0b29sLCB0aGUgcmV0dXJuZWQNCj4+IGxpc3Qgc2hvdWxk IGJlIGRpZmZlcmVudCBpZiBJIHJ1biBnYXR0dG9vbCB3aXRoICItcCAzMSIgb3Igbm90IChub3Rp Y2UNCj4+IGhvdyB0aGUgZ2F0dHRvb2wgcHJvbXB0IGlzIHNldCB0byBMRSBvciBCUikuDQo+Pg0K Pj4gIyBnYXR0dG9vbCAtSSAtYiAwMDo0MDo5RDo5ODo5OTpCRCAtcCAwDQo+PiBbMDA6NDA6OUQ6 OTg6OTk6QkRdW0xFXT4gY29ubmVjdA0KPj4gQXR0ZW1wdGluZyB0byBjb25uZWN0IHRvIDAwOjQw OjlEOjk4Ojk5OkJEDQo+PiBDb25uZWN0aW9uIHN1Y2Nlc3NmdWwNCj4+IFswMDo0MDo5RDo5ODo5 OTpCRF1bTEVdPiBwcmltYXJ5DQo+PiBhdHRyIGhhbmRsZTogMHgwMDAxLCBlbmQgZ3JwIGhhbmRs ZTogMHgwMDA1IHV1aWQ6DQo+PiAwMDAwMTgwMC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmIN Cj4+IGF0dHIgaGFuZGxlOiAweDAwMDYsIGVuZCBncnAgaGFuZGxlOiAweDAwMDkgdXVpZDoNCj4+ IDAwMDAxODAxLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4gYXR0ciBoYW5kbGU6IDB4 MDAwYSwgZW5kIGdycCBoYW5kbGU6IDB4MDAwZCB1dWlkOg0KPj4gMDAwMDE4MGYtMDAwMC0xMDAw LTgwMDAtMDA4MDVmOWIzNGZiDQo+PiBhdHRyIGhhbmRsZTogMHgwMDBlLCBlbmQgZ3JwIGhhbmRs ZTogMHgwMDFkIHV1aWQ6DQo+PiAxMjM0NTY3OC0xMjM0LTU2NzgtMTIzNC01Njc4OWFiY2RlZjAN Cj4+IGF0dHIgaGFuZGxlOiAweDAwMWUsIGVuZCBncnAgaGFuZGxlOiAweDAwMjUgdXVpZDoNCj4+ IDAwMDAxODBkLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4NCj4+DQo+PiAjIC90bXAv Z2F0dHRvb2wgLUkgLWIgMDA6NDA6OUQ6OTg6OTk6QkQgLXAgMzENCj4+IFswMDo0MDo5RDo5ODo5 OTpCRF1bQlJdPiBjb25uZWN0DQo+PiBBdHRlbXB0aW5nIHRvIGNvbm5lY3QgdG8gMDA6NDA6OUQ6 OTg6OTk6QkQNCj4+IENvbm5lY3Rpb24gc3VjY2Vzc2Z1bA0KPj4gWzAwOjQwOjlEOjk4Ojk5OkJE XVtCUl0+IHByaW1hcnkNCj4+IGF0dHIgaGFuZGxlOiAweDAwMDEsIGVuZCBncnAgaGFuZGxlOiAw eDAwMDUgdXVpZDoNCj4+IDAwMDAxODAwLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4g YXR0ciBoYW5kbGU6IDB4MDAwNiwgZW5kIGdycCBoYW5kbGU6IDB4MDAwOSB1dWlkOg0KPj4gMDAw MDE4MDEtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+PiBhdHRyIGhhbmRsZTogMHgwMDBh LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDE5IHV1aWQ6DQo+PiAxMjM0NTY3OC0xMjM0LTU2NzgtMTIz NC01Njc4OWFiY2RlZjANCj4+IGF0dHIgaGFuZGxlOiAweDAwMWEsIGVuZCBncnAgaGFuZGxlOiAw eDAwMWQgdXVpZDoNCj4+IDAwMDAxODBmLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4g YXR0ciBoYW5kbGU6IDB4MDAxZSwgZW5kIGdycCBoYW5kbGU6IDB4MDAyNSB1dWlkOg0KPj4gMDAw MDE4MGQtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pg0KPj4NCj4+DQo+PiBJIGFtIHVz aW5nIGJsdWV6IDUuNDEuIElzIHBvc3NpYmxlIHRvIGFkdmVydGlzZSBhIHNlcnZpY2Ugb25seSBm b3IgTEUgb3INCj4+IEJSPyBJIGd1ZXNzIGl0IHNob3VsZCBiZWNhdXNlIGlzIHBhcnQgb2YgdGhl IFNJRyBjZXJ0aWZpY2F0aW9uIGFuZCBpcw0KPj4gcGFydCBvZiB0aGUgdW5pdC90ZXN0LWdhdHQu DQo+IFRoaXMgbWlnaHQgYmUgYmVjYXVzZSB0aGUgc3BlYyB3YXMgbm8gY2xlYXIgYWJvdXQgdGhl IGRhdGFiYXNlIGJlaW5nDQo+IGJlYXJlciBzcGVjaWZpYywgd2hpY2ggaW4gbXkgb3BpbmlvbiB0 aGlzIGlzIGEgb3ZlcnNpZ2h0IHNpbmNlIHRoZW4gd2UNCj4gY2FuJ3QgcmVwcmVzZW50IGF0dHJp YnV0ZXMgb2YgZHVhbCBtb2RlIGRldmljZXMgd2l0aCBhIHVuaWZpZWQgb2JqZWN0LA0KPiBhbmQg SSByZWFsbHkgd29uZGVyIGlmIHRoaXMgaGFzIHRvIGJlIGZvcmNlZCB1cCBpbnRvIHRoZSBBUEks IGlmIGl0DQo+IGRvZXMgdGhlbiB3ZSB3b3VsZCBoYXZlIHRvIGVuY29kZSBiZWFyZXIgaW5mb3Jt YXRpb24gaW50byB0aGUgb2JqZWN0DQo+IHBhdGggKGFyZ2ghKSBmb3IgY2xpZW50IGFuZCBmb3Ig c2VydmVyIHdvdWxkIHByb2JhYmx5IG5lZWQgYSBwcm9wZXJ0eQ0KPiB0ZWxsaW5nIHdoaWNoIGJl YXJlciB0aGlzIHdvdWxkIGJlIGF2YWlsYWJsZSBhbmQgZW5jb2RlIHRoaXMgaW50byB0bw0KPiB0 aGUgZGF0YWJhc2Ugd2hpY2ggbWF5IGxlYXZlIGdhcHMgaW4gdGhlIGhhbmRsZXMgb3IganVzdCBk dXBsaWNhdGUNCj4gZXZlcnl0aGluZywgZm9yIHNlcnZlciBJZCBwcm9iYWJseSBqdXN0IGhpZGUg dGhlIHNlcnZpY2VzIGJhc2VkIG9uIHRoZQ0KPiBiZWFyZXIsIGJ1dCB3ZSBzdGlsbCBuZWVkIHRv IHN0b3JlIHRoZSBDQ0MgY29uZmlndXJhdGlvbiBpbiBhIGJlYXJlcg0KPiBzcGVjaWZpYyBtYW5u ZXIuDQo+DQoNClNvLCB3aGF0IGNhbiBJIGRvIGluIG9yZGVyIHRvIHBhc3MgdGhhdCBzcGVjaWZp YyBibHVldG9vdGggU0lHIHRlc3RzPyANClRoYXQgdGVzdCBjYXNlcyBuZWVkIHRvIGVuc3VyZSB0 aGF0IGFuIHNwZWNpZmljIHNlcnZpY2UvY2hhciBpbiBvbmx5IA0KYWNjZXNzaWJsZSBvbiBMRSBv ciBCUiwgc28gdGhleSBoYWQgdG8gYmUgZGlmZmVyZW50Lg0KRG8geW91IGhhdmUgYW55IGlkZWEg b3Igc3VnZ2VzdGlvbj8gSXQgd291bGQgYmUgcmVhbGx5IHdlbGNvbWUsIGlmIG5vdCBJIA0KaGF2 ZSBubyBpZGVhIGhvdyB0byBwcm9jZWVkIHRvIGNvbXBsZXRlIHRoZSBTSUcgdmFsaWRhdGlvbiB3 aXRoIGJsdWV6IHN0dWZmLg0KSSB3YXMgZXZlbiB0cnlpbmcgdG8gbW9kaWZ5IHNvbWUgZmlsZXMg aW50byB0aGUgY29kZSwgYnV0IEkgYW0gbm90IA0KZmFtaWxpYXIgd2l0aCB0aGF0IGFuZCBpdCBv YnZpb3VzbHkgZGlkIG5vdCB3b3JrLg== ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-09-29 6:44 ` Hermida, Isaac @ 2017-10-02 7:03 ` Hermida, Isaac 2017-10-02 16:00 ` Luiz Augusto von Dentz 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-10-02 7:03 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiBldCBhbGwsDQoNCk9uIDA5LzI5LzIwMTcgMDg6NDQgQU0sIEhlcm1pZGEsIElzYWFj IHdyb3RlOg0KPiBIaSBMdWl6LA0KPg0KPiBPbiAwOS8yOC8yMDE3IDA4OjIxIFBNLCBMdWl6IEF1 Z3VzdG8gdm9uIERlbnR6IHdyb3RlOg0KPj4gSGkgSXNhYWMsDQo+Pg0KPj4gT24gVGh1LCBTZXAg MjgsIDIwMTcgYXQgNzo0MyBQTSwgSGVybWlkYSwgSXNhYWMgPElzYWFjLkhlcm1pZGFAZGlnaS5j b20+IHdyb3RlOg0KPj4+IEhpIGdyb3VwLA0KPj4+DQo+Pj4gQXMgcGFydCBvZiB0aGUgYmx1ZXRv b3RoIFNJRyBjZXJ0aWZpY2F0aW9uIHRoZXJlIGFyZSB0d28gdGVzdCBjYXNlcw0KPj4+IC9UUC9H QVIvQ0wvQkktMzQtQyBhbmQgL1RQL0dBUi9DTC9CSS0zNS1DICh5b3UgY2FuIHNlZSB0aGV5IGRl ZmluZWQgaW4NCj4+PiB1bml0L3Rlc3QtZ2F0dC5jKS4NCj4+PiBDdXJyZW50bHkgSSBhbSBhYmxl IHRvIHJ1biB0aGUgInRlc3QvZXhhbXBsZS1nYXR0LXNlcnZlciIgYW5kIHNlZSBteQ0KPj4+IGN1 c3RvbSBzZXJ2aWNlcyBhbmQgY2hhcmFjdGVyaXN0aWNzLCBidXQgSSBuZWVkIHRvIGRlZmluZSBh biBzcGVjaWZpYw0KPj4+IHNlcnZpY2UvY2hhcmFjdGVyaXN0aWMgdG8gYmUgb25seSBhY2Nlc3Np YmxlIHRyb3VnaCBMRSBvciBCUi9FRFINCj4+PiB0cmFuc3BvcnQgcGFyYW1ldGVyLiBJIHdhcyBk aWdnaW5nIGludG8gdGhlIGNvZGUgYnV0IEkgd2FzIHVuYWJsZSB0bw0KPj4+IGZpbmQgaG93IHRv IHNldCBpdCBmb3IgdGhlIEdBVFQgc2VydmVyLg0KPj4+DQo+Pj4gSW4gb3RoZXIgd29yZHMsIHdo YXQgSSB3YW50IHRvIGRvIGlzIGxhdW5jaCB0aGUgZ2F0dC1zZXJ2ZXIgYW5kIHRoZW4sDQo+Pj4g d2hlbiBpbnNwZWN0aW5nIHRoZSBzZXJ2aWNlcy9jaGFyYWN0ZXJpc3RpYyB3aXRoIGdhdHR0b29s LCB0aGUgcmV0dXJuZWQNCj4+PiBsaXN0IHNob3VsZCBiZSBkaWZmZXJlbnQgaWYgSSBydW4gZ2F0 dHRvb2wgd2l0aCAiLXAgMzEiIG9yIG5vdCAobm90aWNlDQo+Pj4gaG93IHRoZSBnYXR0dG9vbCBw cm9tcHQgaXMgc2V0IHRvIExFIG9yIEJSKS4NCj4+Pg0KPj4+ICMgZ2F0dHRvb2wgLUkgLWIgMDA6 NDA6OUQ6OTg6OTk6QkQgLXAgMA0KPj4+IFswMDo0MDo5RDo5ODo5OTpCRF1bTEVdPiBjb25uZWN0 DQo+Pj4gQXR0ZW1wdGluZyB0byBjb25uZWN0IHRvIDAwOjQwOjlEOjk4Ojk5OkJEDQo+Pj4gQ29u bmVjdGlvbiBzdWNjZXNzZnVsDQo+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtMRV0+IHByaW1hcnkN Cj4+PiBhdHRyIGhhbmRsZTogMHgwMDAxLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA1IHV1aWQ6DQo+ Pj4gMDAwMDE4MDAtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4gYXR0ciBoYW5kbGU6 IDB4MDAwNiwgZW5kIGdycCBoYW5kbGU6IDB4MDAwOSB1dWlkOg0KPj4+IDAwMDAxODAxLTAwMDAt MTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+IGF0dHIgaGFuZGxlOiAweDAwMGEsIGVuZCBncnAg aGFuZGxlOiAweDAwMGQgdXVpZDoNCj4+PiAwMDAwMTgwZi0wMDAwLTEwMDAtODAwMC0wMDgwNWY5 YjM0ZmINCj4+PiBhdHRyIGhhbmRsZTogMHgwMDBlLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDFkIHV1 aWQ6DQo+Pj4gMTIzNDU2NzgtMTIzNC01Njc4LTEyMzQtNTY3ODlhYmNkZWYwDQo+Pj4gYXR0ciBo YW5kbGU6IDB4MDAxZSwgZW5kIGdycCBoYW5kbGU6IDB4MDAyNSB1dWlkOg0KPj4+IDAwMDAxODBk LTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+DQo+Pj4NCj4+PiAjIC90bXAvZ2F0dHRv b2wgLUkgLWIgMDA6NDA6OUQ6OTg6OTk6QkQgLXAgMzENCj4+PiBbMDA6NDA6OUQ6OTg6OTk6QkRd W0JSXT4gY29ubmVjdA0KPj4+IEF0dGVtcHRpbmcgdG8gY29ubmVjdCB0byAwMDo0MDo5RDo5ODo5 OTpCRA0KPj4+IENvbm5lY3Rpb24gc3VjY2Vzc2Z1bA0KPj4+IFswMDo0MDo5RDo5ODo5OTpCRF1b QlJdPiBwcmltYXJ5DQo+Pj4gYXR0ciBoYW5kbGU6IDB4MDAwMSwgZW5kIGdycCBoYW5kbGU6IDB4 MDAwNSB1dWlkOg0KPj4+IDAwMDAxODAwLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+ IGF0dHIgaGFuZGxlOiAweDAwMDYsIGVuZCBncnAgaGFuZGxlOiAweDAwMDkgdXVpZDoNCj4+PiAw MDAwMTgwMS0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+PiBhdHRyIGhhbmRsZTogMHgw MDBhLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDE5IHV1aWQ6DQo+Pj4gMTIzNDU2NzgtMTIzNC01Njc4 LTEyMzQtNTY3ODlhYmNkZWYwDQo+Pj4gYXR0ciBoYW5kbGU6IDB4MDAxYSwgZW5kIGdycCBoYW5k bGU6IDB4MDAxZCB1dWlkOg0KPj4+IDAwMDAxODBmLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRm Yg0KPj4+IGF0dHIgaGFuZGxlOiAweDAwMWUsIGVuZCBncnAgaGFuZGxlOiAweDAwMjUgdXVpZDoN Cj4+PiAwMDAwMTgwZC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pg0KPj4+DQo+Pj4N Cj4+PiBJIGFtIHVzaW5nIGJsdWV6IDUuNDEuIElzIHBvc3NpYmxlIHRvIGFkdmVydGlzZSBhIHNl cnZpY2Ugb25seSBmb3IgTEUgb3INCj4+PiBCUj8gSSBndWVzcyBpdCBzaG91bGQgYmVjYXVzZSBp cyBwYXJ0IG9mIHRoZSBTSUcgY2VydGlmaWNhdGlvbiBhbmQgaXMNCj4+PiBwYXJ0IG9mIHRoZSB1 bml0L3Rlc3QtZ2F0dC4NCj4+IFRoaXMgbWlnaHQgYmUgYmVjYXVzZSB0aGUgc3BlYyB3YXMgbm8g Y2xlYXIgYWJvdXQgdGhlIGRhdGFiYXNlIGJlaW5nDQo+PiBiZWFyZXIgc3BlY2lmaWMsIHdoaWNo IGluIG15IG9waW5pb24gdGhpcyBpcyBhIG92ZXJzaWdodCBzaW5jZSB0aGVuIHdlDQo+PiBjYW4n dCByZXByZXNlbnQgYXR0cmlidXRlcyBvZiBkdWFsIG1vZGUgZGV2aWNlcyB3aXRoIGEgdW5pZmll ZCBvYmplY3QsDQo+PiBhbmQgSSByZWFsbHkgd29uZGVyIGlmIHRoaXMgaGFzIHRvIGJlIGZvcmNl ZCB1cCBpbnRvIHRoZSBBUEksIGlmIGl0DQo+PiBkb2VzIHRoZW4gd2Ugd291bGQgaGF2ZSB0byBl bmNvZGUgYmVhcmVyIGluZm9ybWF0aW9uIGludG8gdGhlIG9iamVjdA0KPj4gcGF0aCAoYXJnaCEp IGZvciBjbGllbnQgYW5kIGZvciBzZXJ2ZXIgd291bGQgcHJvYmFibHkgbmVlZCBhIHByb3BlcnR5 DQo+PiB0ZWxsaW5nIHdoaWNoIGJlYXJlciB0aGlzIHdvdWxkIGJlIGF2YWlsYWJsZSBhbmQgZW5j b2RlIHRoaXMgaW50byB0bw0KPj4gdGhlIGRhdGFiYXNlIHdoaWNoIG1heSBsZWF2ZSBnYXBzIGlu IHRoZSBoYW5kbGVzIG9yIGp1c3QgZHVwbGljYXRlDQo+PiBldmVyeXRoaW5nLCBmb3Igc2VydmVy IElkIHByb2JhYmx5IGp1c3QgaGlkZSB0aGUgc2VydmljZXMgYmFzZWQgb24gdGhlDQo+PiBiZWFy ZXIsIGJ1dCB3ZSBzdGlsbCBuZWVkIHRvIHN0b3JlIHRoZSBDQ0MgY29uZmlndXJhdGlvbiBpbiBh IGJlYXJlcg0KPj4gc3BlY2lmaWMgbWFubmVyLg0KPj4NCj4NCj4gU28sIHdoYXQgY2FuIEkgZG8g aW4gb3JkZXIgdG8gcGFzcyB0aGF0IHNwZWNpZmljIGJsdWV0b290aCBTSUcgdGVzdHM/DQo+IFRo YXQgdGVzdCBjYXNlcyBuZWVkIHRvIGVuc3VyZSB0aGF0IGFuIHNwZWNpZmljIHNlcnZpY2UvY2hh ciBpbiBvbmx5DQo+IGFjY2Vzc2libGUgb24gTEUgb3IgQlIsIHNvIHRoZXkgaGFkIHRvIGJlIGRp ZmZlcmVudC4NCj4gRG8geW91IGhhdmUgYW55IGlkZWEgb3Igc3VnZ2VzdGlvbj8gSXQgd291bGQg YmUgcmVhbGx5IHdlbGNvbWUsIGlmIG5vdCBJDQo+IGhhdmUgbm8gaWRlYSBob3cgdG8gcHJvY2Vl ZCB0byBjb21wbGV0ZSB0aGUgU0lHIHZhbGlkYXRpb24gd2l0aCBibHVleiBzdHVmZi4NCj4gSSB3 YXMgZXZlbiB0cnlpbmcgdG8gbW9kaWZ5IHNvbWUgZmlsZXMgaW50byB0aGUgY29kZSwgYnV0IEkg YW0gbm90DQo+IGZhbWlsaWFyIHdpdGggdGhhdCBhbmQgaXQgb2J2aW91c2x5IGRpZCBub3Qgd29y ay4EDQoNCkkgdW5kZXJzdGFuZCB0aGUgc2lsZW50IHRvIHRoaXMgbGFzdCBxdWVzdGlvbiBhcyBh IG5vLiBTbyBJIGFzc3VtZSB0aGF0IA0KYW55IHVzZXIgdHJ5aW5nIHRvIHBhc3MgdGhpcyB0ZXN0 IHdpbGwgZmFpbCAoYXQgbGVhc3QgaWYgdXNpbmcgYmx1ZXopLiANClNvIHNob3VsZCB0aGUgc3Bl Y2lmaWNhdGlvbiBiZSBjaGFuZ2VkPyBTaG91bGQgYmx1ZXogYWRhcHQgdG8gaXQ/IEluIHRoZSAN CmN1cnJlbnQgc3RhdGUgdGhhdCBTSUcgY2VydGlmaWNhdGlvbiBjYW4gbm90IGJlIHBhc3NlZC4= ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-02 7:03 ` Hermida, Isaac @ 2017-10-02 16:00 ` Luiz Augusto von Dentz 2017-10-03 6:54 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Luiz Augusto von Dentz @ 2017-10-02 16:00 UTC (permalink / raw) To: Hermida, Isaac; +Cc: linux-bluetooth@vger.kernel.org Hi Isaac, On Mon, Oct 2, 2017 at 10:03 AM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: > Hi Luiz et all, > > On 09/29/2017 08:44 AM, Hermida, Isaac wrote: >> Hi Luiz, >> >> On 09/28/2017 08:21 PM, Luiz Augusto von Dentz wrote: >>> Hi Isaac, >>> >>> On Thu, Sep 28, 2017 at 7:43 PM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: >>>> Hi group, >>>> >>>> As part of the bluetooth SIG certification there are two test cases >>>> /TP/GAR/CL/BI-34-C and /TP/GAR/CL/BI-35-C (you can see they defined in >>>> unit/test-gatt.c). >>>> Currently I am able to run the "test/example-gatt-server" and see my >>>> custom services and characteristics, but I need to define an specific >>>> service/characteristic to be only accessible trough LE or BR/EDR >>>> transport parameter. I was digging into the code but I was unable to >>>> find how to set it for the GATT server. >>>> >>>> In other words, what I want to do is launch the gatt-server and then, >>>> when inspecting the services/characteristic with gatttool, the returned >>>> list should be different if I run gatttool with "-p 31" or not (notice >>>> how the gatttool prompt is set to LE or BR). >>>> >>>> # gatttool -I -b 00:40:9D:98:99:BD -p 0 >>>> [00:40:9D:98:99:BD][LE]> connect >>>> Attempting to connect to 00:40:9D:98:99:BD >>>> Connection successful >>>> [00:40:9D:98:99:BD][LE]> primary >>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>> 00001800-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>> 00001801-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x000a, end grp handle: 0x000d uuid: >>>> 0000180f-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x000e, end grp handle: 0x001d uuid: >>>> 12345678-1234-5678-1234-56789abcdef0 >>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>> 0000180d-0000-1000-8000-00805f9b34fb >>>> >>>> >>>> # /tmp/gatttool -I -b 00:40:9D:98:99:BD -p 31 >>>> [00:40:9D:98:99:BD][BR]> connect >>>> Attempting to connect to 00:40:9D:98:99:BD >>>> Connection successful >>>> [00:40:9D:98:99:BD][BR]> primary >>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>> 00001800-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>> 00001801-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x000a, end grp handle: 0x0019 uuid: >>>> 12345678-1234-5678-1234-56789abcdef0 >>>> attr handle: 0x001a, end grp handle: 0x001d uuid: >>>> 0000180f-0000-1000-8000-00805f9b34fb >>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>> 0000180d-0000-1000-8000-00805f9b34fb >>>> >>>> >>>> >>>> I am using bluez 5.41. Is possible to advertise a service only for LE or >>>> BR? I guess it should because is part of the SIG certification and is >>>> part of the unit/test-gatt. >>> This might be because the spec was no clear about the database being >>> bearer specific, which in my opinion this is a oversight since then we >>> can't represent attributes of dual mode devices with a unified object, >>> and I really wonder if this has to be forced up into the API, if it >>> does then we would have to encode bearer information into the object >>> path (argh!) for client and for server would probably need a property >>> telling which bearer this would be available and encode this into to >>> the database which may leave gaps in the handles or just duplicate >>> everything, for server Id probably just hide the services based on the >>> bearer, but we still need to store the CCC configuration in a bearer >>> specific manner. >>> >> >> So, what can I do in order to pass that specific bluetooth SIG tests? >> That test cases need to ensure that an specific service/char in only >> accessible on LE or BR, so they had to be different. >> Do you have any idea or suggestion? It would be really welcome, if not I >> have no idea how to proceed to complete the SIG validation with bluez stuff. >> I was even trying to modify some files into the code, but I am not >> familiar with that and it obviously did not work. > > I understand the silent to this last question as a no. So I assume that > any user trying to pass this test will fail (at least if using bluez). > So should the specification be changed? Should bluez adapt to it? In the > current state that SIG certification can not be passed. That if you want to qualify with GATT over BR/EDR, something that we may actually have an option to disable in the future, or perhaps just remove it entirely given this tests would possible affect that GATT database layout, either by creating handle gaps or duplication. So perhaps you could give some feedback if you do intend to use GATT over BR/EDR or not? If it turn out no one benefit from it Id just remove it. -- Luiz Augusto von Dentz ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-02 16:00 ` Luiz Augusto von Dentz @ 2017-10-03 6:54 ` Hermida, Isaac 2017-10-04 15:43 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-10-03 6:54 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiwNCg0KT24gMTAvMDIvMjAxNyAwNjowMCBQTSwgTHVpeiBBdWd1c3RvIHZvbiBEZW50 eiB3cm90ZToNCj4gSGkgSXNhYWMsDQo+DQo+IE9uIE1vbiwgT2N0IDIsIDIwMTcgYXQgMTA6MDMg QU0sIEhlcm1pZGEsIElzYWFjIDxJc2FhYy5IZXJtaWRhQGRpZ2kuY29tPiB3cm90ZToNCj4+IEhp IEx1aXogZXQgYWxsLA0KPj4NCj4+IE9uIDA5LzI5LzIwMTcgMDg6NDQgQU0sIEhlcm1pZGEsIElz YWFjIHdyb3RlOg0KPj4+IEhpIEx1aXosDQo+Pj4NCj4+PiBPbiAwOS8yOC8yMDE3IDA4OjIxIFBN LCBMdWl6IEF1Z3VzdG8gdm9uIERlbnR6IHdyb3RlOg0KPj4+PiBIaSBJc2FhYywNCj4+Pj4NCj4+ Pj4gT24gVGh1LCBTZXAgMjgsIDIwMTcgYXQgNzo0MyBQTSwgSGVybWlkYSwgSXNhYWMgPElzYWFj Lkhlcm1pZGFAZGlnaS5jb20+IHdyb3RlOg0KPj4+Pj4gSGkgZ3JvdXAsDQo+Pj4+Pg0KPj4+Pj4g QXMgcGFydCBvZiB0aGUgYmx1ZXRvb3RoIFNJRyBjZXJ0aWZpY2F0aW9uIHRoZXJlIGFyZSB0d28g dGVzdCBjYXNlcw0KPj4+Pj4gL1RQL0dBUi9DTC9CSS0zNC1DIGFuZCAvVFAvR0FSL0NML0JJLTM1 LUMgKHlvdSBjYW4gc2VlIHRoZXkgZGVmaW5lZCBpbg0KPj4+Pj4gdW5pdC90ZXN0LWdhdHQuYyku DQo+Pj4+PiBDdXJyZW50bHkgSSBhbSBhYmxlIHRvIHJ1biB0aGUgInRlc3QvZXhhbXBsZS1nYXR0 LXNlcnZlciIgYW5kIHNlZSBteQ0KPj4+Pj4gY3VzdG9tIHNlcnZpY2VzIGFuZCBjaGFyYWN0ZXJp c3RpY3MsIGJ1dCBJIG5lZWQgdG8gZGVmaW5lIGFuIHNwZWNpZmljDQo+Pj4+PiBzZXJ2aWNlL2No YXJhY3RlcmlzdGljIHRvIGJlIG9ubHkgYWNjZXNzaWJsZSB0cm91Z2ggTEUgb3IgQlIvRURSDQo+ Pj4+PiB0cmFuc3BvcnQgcGFyYW1ldGVyLiBJIHdhcyBkaWdnaW5nIGludG8gdGhlIGNvZGUgYnV0 IEkgd2FzIHVuYWJsZSB0bw0KPj4+Pj4gZmluZCBob3cgdG8gc2V0IGl0IGZvciB0aGUgR0FUVCBz ZXJ2ZXIuDQo+Pj4+Pg0KPj4+Pj4gSW4gb3RoZXIgd29yZHMsIHdoYXQgSSB3YW50IHRvIGRvIGlz IGxhdW5jaCB0aGUgZ2F0dC1zZXJ2ZXIgYW5kIHRoZW4sDQo+Pj4+PiB3aGVuIGluc3BlY3Rpbmcg dGhlIHNlcnZpY2VzL2NoYXJhY3RlcmlzdGljIHdpdGggZ2F0dHRvb2wsIHRoZSByZXR1cm5lZA0K Pj4+Pj4gbGlzdCBzaG91bGQgYmUgZGlmZmVyZW50IGlmIEkgcnVuIGdhdHR0b29sIHdpdGggIi1w IDMxIiBvciBub3QgKG5vdGljZQ0KPj4+Pj4gaG93IHRoZSBnYXR0dG9vbCBwcm9tcHQgaXMgc2V0 IHRvIExFIG9yIEJSKS4NCj4+Pj4+DQo+Pj4+PiAjIGdhdHR0b29sIC1JIC1iIDAwOjQwOjlEOjk4 Ojk5OkJEIC1wIDANCj4+Pj4+IFswMDo0MDo5RDo5ODo5OTpCRF1bTEVdPiBjb25uZWN0DQo+Pj4+ PiBBdHRlbXB0aW5nIHRvIGNvbm5lY3QgdG8gMDA6NDA6OUQ6OTg6OTk6QkQNCj4+Pj4+IENvbm5l Y3Rpb24gc3VjY2Vzc2Z1bA0KPj4+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtMRV0+IHByaW1hcnkN Cj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMDEsIGVuZCBncnAgaGFuZGxlOiAweDAwMDUgdXVpZDoN Cj4+Pj4+IDAwMDAxODAwLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4gYXR0ciBo YW5kbGU6IDB4MDAwNiwgZW5kIGdycCBoYW5kbGU6IDB4MDAwOSB1dWlkOg0KPj4+Pj4gMDAwMDE4 MDEtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDBh LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDBkIHV1aWQ6DQo+Pj4+PiAwMDAwMTgwZi0wMDAwLTEwMDAt ODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMGUsIGVuZCBncnAgaGFu ZGxlOiAweDAwMWQgdXVpZDoNCj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3OC0xMjM0LTU2Nzg5YWJj ZGVmMA0KPj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAxZSwgZW5kIGdycCBoYW5kbGU6IDB4MDAyNSB1 dWlkOg0KPj4+Pj4gMDAwMDE4MGQtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pg0K Pj4+Pj4NCj4+Pj4+ICMgL3RtcC9nYXR0dG9vbCAtSSAtYiAwMDo0MDo5RDo5ODo5OTpCRCAtcCAz MQ0KPj4+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtCUl0+IGNvbm5lY3QNCj4+Pj4+IEF0dGVtcHRp bmcgdG8gY29ubmVjdCB0byAwMDo0MDo5RDo5ODo5OTpCRA0KPj4+Pj4gQ29ubmVjdGlvbiBzdWNj ZXNzZnVsDQo+Pj4+PiBbMDA6NDA6OUQ6OTg6OTk6QkRdW0JSXT4gcHJpbWFyeQ0KPj4+Pj4gYXR0 ciBoYW5kbGU6IDB4MDAwMSwgZW5kIGdycCBoYW5kbGU6IDB4MDAwNSB1dWlkOg0KPj4+Pj4gMDAw MDE4MDAtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+PiBhdHRyIGhhbmRsZTogMHgw MDA2LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA5IHV1aWQ6DQo+Pj4+PiAwMDAwMTgwMS0wMDAwLTEw MDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMGEsIGVuZCBncnAg aGFuZGxlOiAweDAwMTkgdXVpZDoNCj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3OC0xMjM0LTU2Nzg5 YWJjZGVmMA0KPj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAxYSwgZW5kIGdycCBoYW5kbGU6IDB4MDAx ZCB1dWlkOg0KPj4+Pj4gMDAwMDE4MGYtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+ PiBhdHRyIGhhbmRsZTogMHgwMDFlLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDI1IHV1aWQ6DQo+Pj4+ PiAwMDAwMTgwZC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+DQo+Pj4+Pg0KPj4+ Pj4NCj4+Pj4+IEkgYW0gdXNpbmcgYmx1ZXogNS40MS4gSXMgcG9zc2libGUgdG8gYWR2ZXJ0aXNl IGEgc2VydmljZSBvbmx5IGZvciBMRSBvcg0KPj4+Pj4gQlI/IEkgZ3Vlc3MgaXQgc2hvdWxkIGJl Y2F1c2UgaXMgcGFydCBvZiB0aGUgU0lHIGNlcnRpZmljYXRpb24gYW5kIGlzDQo+Pj4+PiBwYXJ0 IG9mIHRoZSB1bml0L3Rlc3QtZ2F0dC4NCj4+Pj4gVGhpcyBtaWdodCBiZSBiZWNhdXNlIHRoZSBz cGVjIHdhcyBubyBjbGVhciBhYm91dCB0aGUgZGF0YWJhc2UgYmVpbmcNCj4+Pj4gYmVhcmVyIHNw ZWNpZmljLCB3aGljaCBpbiBteSBvcGluaW9uIHRoaXMgaXMgYSBvdmVyc2lnaHQgc2luY2UgdGhl biB3ZQ0KPj4+PiBjYW4ndCByZXByZXNlbnQgYXR0cmlidXRlcyBvZiBkdWFsIG1vZGUgZGV2aWNl cyB3aXRoIGEgdW5pZmllZCBvYmplY3QsDQo+Pj4+IGFuZCBJIHJlYWxseSB3b25kZXIgaWYgdGhp cyBoYXMgdG8gYmUgZm9yY2VkIHVwIGludG8gdGhlIEFQSSwgaWYgaXQNCj4+Pj4gZG9lcyB0aGVu IHdlIHdvdWxkIGhhdmUgdG8gZW5jb2RlIGJlYXJlciBpbmZvcm1hdGlvbiBpbnRvIHRoZSBvYmpl Y3QNCj4+Pj4gcGF0aCAoYXJnaCEpIGZvciBjbGllbnQgYW5kIGZvciBzZXJ2ZXIgd291bGQgcHJv YmFibHkgbmVlZCBhIHByb3BlcnR5DQo+Pj4+IHRlbGxpbmcgd2hpY2ggYmVhcmVyIHRoaXMgd291 bGQgYmUgYXZhaWxhYmxlIGFuZCBlbmNvZGUgdGhpcyBpbnRvIHRvDQo+Pj4+IHRoZSBkYXRhYmFz ZSB3aGljaCBtYXkgbGVhdmUgZ2FwcyBpbiB0aGUgaGFuZGxlcyBvciBqdXN0IGR1cGxpY2F0ZQ0K Pj4+PiBldmVyeXRoaW5nLCBmb3Igc2VydmVyIElkIHByb2JhYmx5IGp1c3QgaGlkZSB0aGUgc2Vy dmljZXMgYmFzZWQgb24gdGhlDQo+Pj4+IGJlYXJlciwgYnV0IHdlIHN0aWxsIG5lZWQgdG8gc3Rv cmUgdGhlIENDQyBjb25maWd1cmF0aW9uIGluIGEgYmVhcmVyDQo+Pj4+IHNwZWNpZmljIG1hbm5l ci4NCj4+Pj4NCj4+Pg0KPj4+IFNvLCB3aGF0IGNhbiBJIGRvIGluIG9yZGVyIHRvIHBhc3MgdGhh dCBzcGVjaWZpYyBibHVldG9vdGggU0lHIHRlc3RzPw0KPj4+IFRoYXQgdGVzdCBjYXNlcyBuZWVk IHRvIGVuc3VyZSB0aGF0IGFuIHNwZWNpZmljIHNlcnZpY2UvY2hhciBpbiBvbmx5DQo+Pj4gYWNj ZXNzaWJsZSBvbiBMRSBvciBCUiwgc28gdGhleSBoYWQgdG8gYmUgZGlmZmVyZW50Lg0KPj4+IERv IHlvdSBoYXZlIGFueSBpZGVhIG9yIHN1Z2dlc3Rpb24/IEl0IHdvdWxkIGJlIHJlYWxseSB3ZWxj b21lLCBpZiBub3QgSQ0KPj4+IGhhdmUgbm8gaWRlYSBob3cgdG8gcHJvY2VlZCB0byBjb21wbGV0 ZSB0aGUgU0lHIHZhbGlkYXRpb24gd2l0aCBibHVleiBzdHVmZi4NCj4+PiBJIHdhcyBldmVuIHRy eWluZyB0byBtb2RpZnkgc29tZSBmaWxlcyBpbnRvIHRoZSBjb2RlLCBidXQgSSBhbSBub3QNCj4+ PiBmYW1pbGlhciB3aXRoIHRoYXQgYW5kIGl0IG9idmlvdXNseSBkaWQgbm90IHdvcmsuDQo+Pg0K Pj4gSSB1bmRlcnN0YW5kIHRoZSBzaWxlbnQgdG8gdGhpcyBsYXN0IHF1ZXN0aW9uIGFzIGEgbm8u IFNvIEkgYXNzdW1lIHRoYXQNCj4+IGFueSB1c2VyIHRyeWluZyB0byBwYXNzIHRoaXMgdGVzdCB3 aWxsIGZhaWwgKGF0IGxlYXN0IGlmIHVzaW5nIGJsdWV6KS4NCj4+IFNvIHNob3VsZCB0aGUgc3Bl Y2lmaWNhdGlvbiBiZSBjaGFuZ2VkPyBTaG91bGQgYmx1ZXogYWRhcHQgdG8gaXQ/IEluIHRoZQ0K Pj4gY3VycmVudCBzdGF0ZSB0aGF0IFNJRyBjZXJ0aWZpY2F0aW9uIGNhbiBub3QgYmUgcGFzc2Vk Lg0KPg0KPiBUaGF0IGlmIHlvdSB3YW50IHRvIHF1YWxpZnkgd2l0aCBHQVRUIG92ZXIgQlIvRURS LCBzb21ldGhpbmcgdGhhdCB3ZQ0KPiBtYXkgYWN0dWFsbHkgaGF2ZSBhbiBvcHRpb24gdG8gZGlz YWJsZSBpbiB0aGUgZnV0dXJlLCBvciBwZXJoYXBzIGp1c3QNCj4gcmVtb3ZlIGl0IGVudGlyZWx5 IGdpdmVuIHRoaXMgdGVzdHMgd291bGQgcG9zc2libGUgYWZmZWN0IHRoYXQgR0FUVA0KPiBkYXRh YmFzZSBsYXlvdXQsIGVpdGhlciBieSBjcmVhdGluZyBoYW5kbGUgZ2FwcyBvciBkdXBsaWNhdGlv bi4gU28NCj4gcGVyaGFwcyB5b3UgY291bGQgZ2l2ZSBzb21lIGZlZWRiYWNrIGlmIHlvdSBkbyBp bnRlbmQgdG8gdXNlIEdBVFQgb3Zlcg0KPiBCUi9FRFIgb3Igbm90PyBJZiBpdCB0dXJuIG91dCBu byBvbmUgYmVuZWZpdCBmcm9tIGl0IElkIGp1c3QgcmVtb3ZlDQo+IGl0Lg0KPg0KDQpUaGFua3Mg Zm9yIHRoZSBxdWljayByZXBseS4gSSBkbyBub3Qga25vdyBob3cgYW55IG90aGVyIHBlb3BsZSB3 YXMgYWJsZSANCnRvIHBhc3MgdGhlc2UgU0lHIGxhYiB0ZXN0cyAoQkktMzQtQyBhbmQgQkktMzUt QykuDQpJIGRvIG5vdCBwbGFuIHRvIHVzZSBHQVRUIG92ZXIgQlIvRURSLiBGb3IgbWUganVzdCBy ZW1vdmluZyBpdCB3b3VsZCBiZSANCmVub3VnaC4gSWYgeW91IGNhbiBwb2ludCBtZSB3aGVyZS9o b3cgdG8gZG8gdGhhdCBpdCB3b3VsZCBiZSBncmVhdCBzbyBJIA0KY2FuIGRpZyBpbiB0aGUgY29k ZSAoSSBhbSBub3QgZmFtaWxpYXIgd2l0aCB0aGF0IGNvZGUpLg0KDQpUaHgsDQogICAgSXNhYWM= ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-03 6:54 ` Hermida, Isaac @ 2017-10-04 15:43 ` Hermida, Isaac 2017-10-05 9:40 ` Luiz Augusto von Dentz 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-10-04 15:43 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiwNCg0KT24gMTAvMDMvMjAxNyAwODo1NCBBTSwgSGVybWlkYSwgSXNhYWMgd3JvdGU6 DQo+IEhpIEx1aXosDQo+DQo+IE9uIDEwLzAyLzIwMTcgMDY6MDAgUE0sIEx1aXogQXVndXN0byB2 b24gRGVudHogd3JvdGU6DQo+PiBIaSBJc2FhYywNCj4+DQo+PiBPbiBNb24sIE9jdCAyLCAyMDE3 IGF0IDEwOjAzIEFNLCBIZXJtaWRhLCBJc2FhYyA8SXNhYWMuSGVybWlkYUBkaWdpLmNvbT4gd3Jv dGU6DQo+Pj4gSGkgTHVpeiBldCBhbGwsDQo+Pj4NCj4+PiBPbiAwOS8yOS8yMDE3IDA4OjQ0IEFN LCBIZXJtaWRhLCBJc2FhYyB3cm90ZToNCj4+Pj4gSGkgTHVpeiwNCj4+Pj4NCj4+Pj4gT24gMDkv MjgvMjAxNyAwODoyMSBQTSwgTHVpeiBBdWd1c3RvIHZvbiBEZW50eiB3cm90ZToNCj4+Pj4+IEhp IElzYWFjLA0KPj4+Pj4NCj4+Pj4+IE9uIFRodSwgU2VwIDI4LCAyMDE3IGF0IDc6NDMgUE0sIEhl cm1pZGEsIElzYWFjIDxJc2FhYy5IZXJtaWRhQGRpZ2kuY29tPiB3cm90ZToNCj4+Pj4+PiBIaSBn cm91cCwNCj4+Pj4+Pg0KPj4+Pj4+IEFzIHBhcnQgb2YgdGhlIGJsdWV0b290aCBTSUcgY2VydGlm aWNhdGlvbiB0aGVyZSBhcmUgdHdvIHRlc3QgY2FzZXMNCj4+Pj4+PiAvVFAvR0FSL0NML0JJLTM0 LUMgYW5kIC9UUC9HQVIvQ0wvQkktMzUtQyAoeW91IGNhbiBzZWUgdGhleSBkZWZpbmVkIGluDQo+ Pj4+Pj4gdW5pdC90ZXN0LWdhdHQuYykuDQo+Pj4+Pj4gQ3VycmVudGx5IEkgYW0gYWJsZSB0byBy dW4gdGhlICJ0ZXN0L2V4YW1wbGUtZ2F0dC1zZXJ2ZXIiIGFuZCBzZWUgbXkNCj4+Pj4+PiBjdXN0 b20gc2VydmljZXMgYW5kIGNoYXJhY3RlcmlzdGljcywgYnV0IEkgbmVlZCB0byBkZWZpbmUgYW4g c3BlY2lmaWMNCj4+Pj4+PiBzZXJ2aWNlL2NoYXJhY3RlcmlzdGljIHRvIGJlIG9ubHkgYWNjZXNz aWJsZSB0cm91Z2ggTEUgb3IgQlIvRURSDQo+Pj4+Pj4gdHJhbnNwb3J0IHBhcmFtZXRlci4gSSB3 YXMgZGlnZ2luZyBpbnRvIHRoZSBjb2RlIGJ1dCBJIHdhcyB1bmFibGUgdG8NCj4+Pj4+PiBmaW5k IGhvdyB0byBzZXQgaXQgZm9yIHRoZSBHQVRUIHNlcnZlci4NCj4+Pj4+Pg0KPj4+Pj4+IEluIG90 aGVyIHdvcmRzLCB3aGF0IEkgd2FudCB0byBkbyBpcyBsYXVuY2ggdGhlIGdhdHQtc2VydmVyIGFu ZCB0aGVuLA0KPj4+Pj4+IHdoZW4gaW5zcGVjdGluZyB0aGUgc2VydmljZXMvY2hhcmFjdGVyaXN0 aWMgd2l0aCBnYXR0dG9vbCwgdGhlIHJldHVybmVkDQo+Pj4+Pj4gbGlzdCBzaG91bGQgYmUgZGlm ZmVyZW50IGlmIEkgcnVuIGdhdHR0b29sIHdpdGggIi1wIDMxIiBvciBub3QgKG5vdGljZQ0KPj4+ Pj4+IGhvdyB0aGUgZ2F0dHRvb2wgcHJvbXB0IGlzIHNldCB0byBMRSBvciBCUikuDQo+Pj4+Pj4N Cj4+Pj4+PiAjIGdhdHR0b29sIC1JIC1iIDAwOjQwOjlEOjk4Ojk5OkJEIC1wIDANCj4+Pj4+PiBb MDA6NDA6OUQ6OTg6OTk6QkRdW0xFXT4gY29ubmVjdA0KPj4+Pj4+IEF0dGVtcHRpbmcgdG8gY29u bmVjdCB0byAwMDo0MDo5RDo5ODo5OTpCRA0KPj4+Pj4+IENvbm5lY3Rpb24gc3VjY2Vzc2Z1bA0K Pj4+Pj4+IFswMDo0MDo5RDo5ODo5OTpCRF1bTEVdPiBwcmltYXJ5DQo+Pj4+Pj4gYXR0ciBoYW5k bGU6IDB4MDAwMSwgZW5kIGdycCBoYW5kbGU6IDB4MDAwNSB1dWlkOg0KPj4+Pj4+IDAwMDAxODAw LTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMDYs IGVuZCBncnAgaGFuZGxlOiAweDAwMDkgdXVpZDoNCj4+Pj4+PiAwMDAwMTgwMS0wMDAwLTEwMDAt ODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDBhLCBlbmQgZ3JwIGhh bmRsZTogMHgwMDBkIHV1aWQ6DQo+Pj4+Pj4gMDAwMDE4MGYtMDAwMC0xMDAwLTgwMDAtMDA4MDVm OWIzNGZiDQo+Pj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAwZSwgZW5kIGdycCBoYW5kbGU6IDB4MDAx ZCB1dWlkOg0KPj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3OC0xMjM0LTU2Nzg5YWJjZGVmMA0KPj4+ Pj4+IGF0dHIgaGFuZGxlOiAweDAwMWUsIGVuZCBncnAgaGFuZGxlOiAweDAwMjUgdXVpZDoNCj4+ Pj4+PiAwMDAwMTgwZC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+Pg0KPj4+Pj4+ DQo+Pj4+Pj4gIyAvdG1wL2dhdHR0b29sIC1JIC1iIDAwOjQwOjlEOjk4Ojk5OkJEIC1wIDMxDQo+ Pj4+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtCUl0+IGNvbm5lY3QNCj4+Pj4+PiBBdHRlbXB0aW5n IHRvIGNvbm5lY3QgdG8gMDA6NDA6OUQ6OTg6OTk6QkQNCj4+Pj4+PiBDb25uZWN0aW9uIHN1Y2Nl c3NmdWwNCj4+Pj4+PiBbMDA6NDA6OUQ6OTg6OTk6QkRdW0JSXT4gcHJpbWFyeQ0KPj4+Pj4+IGF0 dHIgaGFuZGxlOiAweDAwMDEsIGVuZCBncnAgaGFuZGxlOiAweDAwMDUgdXVpZDoNCj4+Pj4+PiAw MDAwMTgwMC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+PiBhdHRyIGhhbmRsZTog MHgwMDA2LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA5IHV1aWQ6DQo+Pj4+Pj4gMDAwMDE4MDEtMDAw MC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAwYSwgZW5k IGdycCBoYW5kbGU6IDB4MDAxOSB1dWlkOg0KPj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3OC0xMjM0 LTU2Nzg5YWJjZGVmMA0KPj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMWEsIGVuZCBncnAgaGFuZGxl OiAweDAwMWQgdXVpZDoNCj4+Pj4+PiAwMDAwMTgwZi0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0 ZmINCj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDFlLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDI1IHV1 aWQ6DQo+Pj4+Pj4gMDAwMDE4MGQtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pj4N Cj4+Pj4+Pg0KPj4+Pj4+DQo+Pj4+Pj4gSSBhbSB1c2luZyBibHVleiA1LjQxLiBJcyBwb3NzaWJs ZSB0byBhZHZlcnRpc2UgYSBzZXJ2aWNlIG9ubHkgZm9yIExFIG9yDQo+Pj4+Pj4gQlI/IEkgZ3Vl c3MgaXQgc2hvdWxkIGJlY2F1c2UgaXMgcGFydCBvZiB0aGUgU0lHIGNlcnRpZmljYXRpb24gYW5k IGlzDQo+Pj4+Pj4gcGFydCBvZiB0aGUgdW5pdC90ZXN0LWdhdHQuDQo+Pj4+PiBUaGlzIG1pZ2h0 IGJlIGJlY2F1c2UgdGhlIHNwZWMgd2FzIG5vIGNsZWFyIGFib3V0IHRoZSBkYXRhYmFzZSBiZWlu Zw0KPj4+Pj4gYmVhcmVyIHNwZWNpZmljLCB3aGljaCBpbiBteSBvcGluaW9uIHRoaXMgaXMgYSBv dmVyc2lnaHQgc2luY2UgdGhlbiB3ZQ0KPj4+Pj4gY2FuJ3QgcmVwcmVzZW50IGF0dHJpYnV0ZXMg b2YgZHVhbCBtb2RlIGRldmljZXMgd2l0aCBhIHVuaWZpZWQgb2JqZWN0LA0KPj4+Pj4gYW5kIEkg cmVhbGx5IHdvbmRlciBpZiB0aGlzIGhhcyB0byBiZSBmb3JjZWQgdXAgaW50byB0aGUgQVBJLCBp ZiBpdA0KPj4+Pj4gZG9lcyB0aGVuIHdlIHdvdWxkIGhhdmUgdG8gZW5jb2RlIGJlYXJlciBpbmZv cm1hdGlvbiBpbnRvIHRoZSBvYmplY3QNCj4+Pj4+IHBhdGggKGFyZ2ghKSBmb3IgY2xpZW50IGFu ZCBmb3Igc2VydmVyIHdvdWxkIHByb2JhYmx5IG5lZWQgYSBwcm9wZXJ0eQ0KPj4+Pj4gdGVsbGlu ZyB3aGljaCBiZWFyZXIgdGhpcyB3b3VsZCBiZSBhdmFpbGFibGUgYW5kIGVuY29kZSB0aGlzIGlu dG8gdG8NCj4+Pj4+IHRoZSBkYXRhYmFzZSB3aGljaCBtYXkgbGVhdmUgZ2FwcyBpbiB0aGUgaGFu ZGxlcyBvciBqdXN0IGR1cGxpY2F0ZQ0KPj4+Pj4gZXZlcnl0aGluZywgZm9yIHNlcnZlciBJZCBw cm9iYWJseSBqdXN0IGhpZGUgdGhlIHNlcnZpY2VzIGJhc2VkIG9uIHRoZQ0KPj4+Pj4gYmVhcmVy LCBidXQgd2Ugc3RpbGwgbmVlZCB0byBzdG9yZSB0aGUgQ0NDIGNvbmZpZ3VyYXRpb24gaW4gYSBi ZWFyZXINCj4+Pj4+IHNwZWNpZmljIG1hbm5lci4NCj4+Pj4+DQo+Pj4+DQo+Pj4+IFNvLCB3aGF0 IGNhbiBJIGRvIGluIG9yZGVyIHRvIHBhc3MgdGhhdCBzcGVjaWZpYyBibHVldG9vdGggU0lHIHRl c3RzPw0KPj4+PiBUaGF0IHRlc3QgY2FzZXMgbmVlZCB0byBlbnN1cmUgdGhhdCBhbiBzcGVjaWZp YyBzZXJ2aWNlL2NoYXIgaW4gb25seQ0KPj4+PiBhY2Nlc3NpYmxlIG9uIExFIG9yIEJSLCBzbyB0 aGV5IGhhZCB0byBiZSBkaWZmZXJlbnQuDQo+Pj4+IERvIHlvdSBoYXZlIGFueSBpZGVhIG9yIHN1 Z2dlc3Rpb24/IEl0IHdvdWxkIGJlIHJlYWxseSB3ZWxjb21lLCBpZiBub3QgSQ0KPj4+PiBoYXZl IG5vIGlkZWEgaG93IHRvIHByb2NlZWQgdG8gY29tcGxldGUgdGhlIFNJRyB2YWxpZGF0aW9uIHdp dGggYmx1ZXogc3R1ZmYuDQo+Pj4+IEkgd2FzIGV2ZW4gdHJ5aW5nIHRvIG1vZGlmeSBzb21lIGZp bGVzIGludG8gdGhlIGNvZGUsIGJ1dCBJIGFtIG5vdA0KPj4+PiBmYW1pbGlhciB3aXRoIHRoYXQg YW5kIGl0IG9idmlvdXNseSBkaWQgbm90IHdvcmsuDQo+Pj4NCj4+PiBJIHVuZGVyc3RhbmQgdGhl IHNpbGVudCB0byB0aGlzIGxhc3QgcXVlc3Rpb24gYXMgYSBuby4gU28gSSBhc3N1bWUgdGhhdA0K Pj4+IGFueSB1c2VyIHRyeWluZyB0byBwYXNzIHRoaXMgdGVzdCB3aWxsIGZhaWwgKGF0IGxlYXN0 IGlmIHVzaW5nIGJsdWV6KS4NCj4+PiBTbyBzaG91bGQgdGhlIHNwZWNpZmljYXRpb24gYmUgY2hh bmdlZD8gU2hvdWxkIGJsdWV6IGFkYXB0IHRvIGl0PyBJbiB0aGUNCj4+PiBjdXJyZW50IHN0YXRl IHRoYXQgU0lHIGNlcnRpZmljYXRpb24gY2FuIG5vdCBiZSBwYXNzZWQuDQo+Pg0KPj4gVGhhdCBp ZiB5b3Ugd2FudCB0byBxdWFsaWZ5IHdpdGggR0FUVCBvdmVyIEJSL0VEUiwgc29tZXRoaW5nIHRo YXQgd2UNCj4+IG1heSBhY3R1YWxseSBoYXZlIGFuIG9wdGlvbiB0byBkaXNhYmxlIGluIHRoZSBm dXR1cmUsIG9yIHBlcmhhcHMganVzdA0KPj4gcmVtb3ZlIGl0IGVudGlyZWx5IGdpdmVuIHRoaXMg dGVzdHMgd291bGQgcG9zc2libGUgYWZmZWN0IHRoYXQgR0FUVA0KPj4gZGF0YWJhc2UgbGF5b3V0 LCBlaXRoZXIgYnkgY3JlYXRpbmcgaGFuZGxlIGdhcHMgb3IgZHVwbGljYXRpb24uIFNvDQo+PiBw ZXJoYXBzIHlvdSBjb3VsZCBnaXZlIHNvbWUgZmVlZGJhY2sgaWYgeW91IGRvIGludGVuZCB0byB1 c2UgR0FUVCBvdmVyDQo+PiBCUi9FRFIgb3Igbm90PyBJZiBpdCB0dXJuIG91dCBubyBvbmUgYmVu ZWZpdCBmcm9tIGl0IElkIGp1c3QgcmVtb3ZlDQo+PiBpdC4NCj4+DQo+DQo+IFRoYW5rcyBmb3Ig dGhlIHF1aWNrIHJlcGx5LiBJIGRvIG5vdCBrbm93IGhvdyBhbnkgb3RoZXIgcGVvcGxlIHdhcyBh YmxlDQo+IHRvIHBhc3MgdGhlc2UgU0lHIGxhYiB0ZXN0cyAoQkktMzQtQyBhbmQgQkktMzUtQyku DQo+IEkgZG8gbm90IHBsYW4gdG8gdXNlIEdBVFQgb3ZlciBCUi9FRFIuIEZvciBtZSBqdXN0IHJl bW92aW5nIGl0IHdvdWxkIGJlDQo+IGVub3VnaC4gSWYgeW91IGNhbiBwb2ludCBtZSB3aGVyZS9o b3cgdG8gZG8gdGhhdCBpdCB3b3VsZCBiZSBncmVhdCBzbyBJDQo+IGNhbiBkaWcgaW4gdGhlIGNv ZGUgKEkgYW0gbm90IGZhbWlsaWFyIHdpdGggdGhhdCBjb2RlKS4NCj4NCj4gVGh4LA0KPiAgICAg IElzYWFjDQoNCg0KWWVzdGVyZGF5IEkgZGlkIGFwcGx5IHRoZSBwYXRjaCAoZ2F0dDogUmVtb3Zl IHN1cHBvcnQgb2YgQVRUIG92ZXIgDQpCUi9FRFIpIG9uIGJsdWV6LTUuNDEgKG15IGN1cnJlbnQg dmVyc2lvbikgYW5kIHBhc3NlZCBpdCB0byB0aGUgbGFiLiBJIA0Kd2FzIHdhaXRpbmcgZm9yIHRo ZWlyIGZlZWRiYWNrIGJ1dCBJIGRpZCBub3QgZ2V0IGEgcmVwbHkgeWV0LCBzbyBqdXN0IHRvIA0K bGV0IHlvdSBrbm93IHRoYXQgSSBnZXQgdGhlIHBhdGNoIGFuZCBhcHBsaWVkIGl0Lg0KQXMgSSBz ZWUgaXQsIHRoYXQgcGF0Y2ggcmVtb3ZlZCB0aGUgc3VwcG9ydCBmb3IgQVRUIG92ZXIgQlIvRURS LCBzbyBJIA0KZ3Vlc3MgdGhhdCBhbm90aGVyIHdheSB0byBwYXNzIHRoYXQgdGVzdCBpcyBtb2Rp ZnlpbmcgdGhlIGZpcm13YXJlIG9mIA0KdGhlIGJsdWV0b290aCBjaGlwIHRvIGRpc2FibGUgaXQg YXQgYSBodyBsZXZlbC4NCkFuZCwgaW4gb3JkZXIgdG8gcGFzcyB0aGUgb3RoZXIgdGVzdCBjYXNl IChCSS0zNS1DKSwgSSB3aWxsIG5lZWQgdG8gZG8gDQpub3QgYXBwbHkgdGhlIG1lbnRpb25lZCBw YXRjaCBhbmQgY3JlYXRlIGEgc2ltaWxhciBvbmUgZm9yIEFUVCBvdmVyIExFLCANCm9yIGlzIHRo ZXJlIGFub3RoZXIgd2F5IHRvIGFjY29tcGxpc2ggL1RQL0dBUi9DTC9CSS0zNS1DPw0KDQotLSA= ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-04 15:43 ` Hermida, Isaac @ 2017-10-05 9:40 ` Luiz Augusto von Dentz 2017-10-09 10:21 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Luiz Augusto von Dentz @ 2017-10-05 9:40 UTC (permalink / raw) To: Hermida, Isaac; +Cc: linux-bluetooth@vger.kernel.org Hi Isaac, On Wed, Oct 4, 2017 at 6:43 PM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: > Hi Luiz, > > On 10/03/2017 08:54 AM, Hermida, Isaac wrote: >> Hi Luiz, >> >> On 10/02/2017 06:00 PM, Luiz Augusto von Dentz wrote: >>> Hi Isaac, >>> >>> On Mon, Oct 2, 2017 at 10:03 AM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: >>>> Hi Luiz et all, >>>> >>>> On 09/29/2017 08:44 AM, Hermida, Isaac wrote: >>>>> Hi Luiz, >>>>> >>>>> On 09/28/2017 08:21 PM, Luiz Augusto von Dentz wrote: >>>>>> Hi Isaac, >>>>>> >>>>>> On Thu, Sep 28, 2017 at 7:43 PM, Hermida, Isaac <Isaac.Hermida@digi.com> wrote: >>>>>>> Hi group, >>>>>>> >>>>>>> As part of the bluetooth SIG certification there are two test cases >>>>>>> /TP/GAR/CL/BI-34-C and /TP/GAR/CL/BI-35-C (you can see they defined in >>>>>>> unit/test-gatt.c). >>>>>>> Currently I am able to run the "test/example-gatt-server" and see my >>>>>>> custom services and characteristics, but I need to define an specific >>>>>>> service/characteristic to be only accessible trough LE or BR/EDR >>>>>>> transport parameter. I was digging into the code but I was unable to >>>>>>> find how to set it for the GATT server. >>>>>>> >>>>>>> In other words, what I want to do is launch the gatt-server and then, >>>>>>> when inspecting the services/characteristic with gatttool, the returned >>>>>>> list should be different if I run gatttool with "-p 31" or not (notice >>>>>>> how the gatttool prompt is set to LE or BR). >>>>>>> >>>>>>> # gatttool -I -b 00:40:9D:98:99:BD -p 0 >>>>>>> [00:40:9D:98:99:BD][LE]> connect >>>>>>> Attempting to connect to 00:40:9D:98:99:BD >>>>>>> Connection successful >>>>>>> [00:40:9D:98:99:BD][LE]> primary >>>>>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>>>>> 00001800-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>>>>> 00001801-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x000a, end grp handle: 0x000d uuid: >>>>>>> 0000180f-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x000e, end grp handle: 0x001d uuid: >>>>>>> 12345678-1234-5678-1234-56789abcdef0 >>>>>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>>>>> 0000180d-0000-1000-8000-00805f9b34fb >>>>>>> >>>>>>> >>>>>>> # /tmp/gatttool -I -b 00:40:9D:98:99:BD -p 31 >>>>>>> [00:40:9D:98:99:BD][BR]> connect >>>>>>> Attempting to connect to 00:40:9D:98:99:BD >>>>>>> Connection successful >>>>>>> [00:40:9D:98:99:BD][BR]> primary >>>>>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>>>>> 00001800-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>>>>> 00001801-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x000a, end grp handle: 0x0019 uuid: >>>>>>> 12345678-1234-5678-1234-56789abcdef0 >>>>>>> attr handle: 0x001a, end grp handle: 0x001d uuid: >>>>>>> 0000180f-0000-1000-8000-00805f9b34fb >>>>>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>>>>> 0000180d-0000-1000-8000-00805f9b34fb >>>>>>> >>>>>>> >>>>>>> >>>>>>> I am using bluez 5.41. Is possible to advertise a service only for LE or >>>>>>> BR? I guess it should because is part of the SIG certification and is >>>>>>> part of the unit/test-gatt. >>>>>> This might be because the spec was no clear about the database being >>>>>> bearer specific, which in my opinion this is a oversight since then we >>>>>> can't represent attributes of dual mode devices with a unified object, >>>>>> and I really wonder if this has to be forced up into the API, if it >>>>>> does then we would have to encode bearer information into the object >>>>>> path (argh!) for client and for server would probably need a property >>>>>> telling which bearer this would be available and encode this into to >>>>>> the database which may leave gaps in the handles or just duplicate >>>>>> everything, for server Id probably just hide the services based on the >>>>>> bearer, but we still need to store the CCC configuration in a bearer >>>>>> specific manner. >>>>>> >>>>> >>>>> So, what can I do in order to pass that specific bluetooth SIG tests? >>>>> That test cases need to ensure that an specific service/char in only >>>>> accessible on LE or BR, so they had to be different. >>>>> Do you have any idea or suggestion? It would be really welcome, if not I >>>>> have no idea how to proceed to complete the SIG validation with bluez stuff. >>>>> I was even trying to modify some files into the code, but I am not >>>>> familiar with that and it obviously did not work. >>>> >>>> I understand the silent to this last question as a no. So I assume that >>>> any user trying to pass this test will fail (at least if using bluez). >>>> So should the specification be changed? Should bluez adapt to it? In the >>>> current state that SIG certification can not be passed. >>> >>> That if you want to qualify with GATT over BR/EDR, something that we >>> may actually have an option to disable in the future, or perhaps just >>> remove it entirely given this tests would possible affect that GATT >>> database layout, either by creating handle gaps or duplication. So >>> perhaps you could give some feedback if you do intend to use GATT over >>> BR/EDR or not? If it turn out no one benefit from it Id just remove >>> it. >>> >> >> Thanks for the quick reply. I do not know how any other people was able >> to pass these SIG lab tests (BI-34-C and BI-35-C). >> I do not plan to use GATT over BR/EDR. For me just removing it would be >> enough. If you can point me where/how to do that it would be great so I >> can dig in the code (I am not familiar with that code). >> >> Thx, >> Isaac > > > Yesterday I did apply the patch (gatt: Remove support of ATT over > BR/EDR) on bluez-5.41 (my current version) and passed it to the lab. I > was waiting for their feedback but I did not get a reply yet, so just to > let you know that I get the patch and applied it. > As I see it, that patch removed the support for ATT over BR/EDR, so I > guess that another way to pass that test is modifying the firmware of > the bluetooth chip to disable it at a hw level. > And, in order to pass the other test case (BI-35-C), I will need to do > not apply the mentioned patch and create a similar one for ATT over LE, > or is there another way to accomplish /TP/GAR/CL/BI-35-C? Id assume you would not have to run those tests if ATT over BR/EDR is not supported: 4.5.72 TP/GAR/CL/BI-35-C [Read Characteristic Value \u2013 Invalid Transport Access over LE] Verify Generic Attribute Profile client behavior when an attempt to use LE transport to execute the Read Characteristic Value procedure on a characteristic contained within a service defined for use only over BR/EDR transport. Without BR/EDR there is no reason to run this test as all the attributes should be valid. -- Luiz Augusto von Dentz ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-05 9:40 ` Luiz Augusto von Dentz @ 2017-10-09 10:21 ` Hermida, Isaac 2017-10-09 11:30 ` Luiz Augusto von Dentz 0 siblings, 1 reply; 11+ messages in thread From: Hermida, Isaac @ 2017-10-09 10:21 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiwNCg0KT24gMTAvMDUvMjAxNyAxMTo0MCBBTSwgTHVpeiBBdWd1c3RvIHZvbiBEZW50 eiB3cm90ZToNCj4gSGkgSXNhYWMsDQo+DQo+IE9uIFdlZCwgT2N0IDQsIDIwMTcgYXQgNjo0MyBQ TSwgSGVybWlkYSwgSXNhYWMgPElzYWFjLkhlcm1pZGFAZGlnaS5jb20+IHdyb3RlOg0KPj4gSGkg THVpeiwNCj4+DQo+PiBPbiAxMC8wMy8yMDE3IDA4OjU0IEFNLCBIZXJtaWRhLCBJc2FhYyB3cm90 ZToNCj4+PiBIaSBMdWl6LA0KPj4+DQo+Pj4gT24gMTAvMDIvMjAxNyAwNjowMCBQTSwgTHVpeiBB dWd1c3RvIHZvbiBEZW50eiB3cm90ZToNCj4+Pj4gSGkgSXNhYWMsDQo+Pj4+DQo+Pj4+IE9uIE1v biwgT2N0IDIsIDIwMTcgYXQgMTA6MDMgQU0sIEhlcm1pZGEsIElzYWFjIDxJc2FhYy5IZXJtaWRh QGRpZ2kuY29tPiB3cm90ZToNCj4+Pj4+IEhpIEx1aXogZXQgYWxsLA0KPj4+Pj4NCj4+Pj4+IE9u IDA5LzI5LzIwMTcgMDg6NDQgQU0sIEhlcm1pZGEsIElzYWFjIHdyb3RlOg0KPj4+Pj4+IEhpIEx1 aXosDQo+Pj4+Pj4NCj4+Pj4+PiBPbiAwOS8yOC8yMDE3IDA4OjIxIFBNLCBMdWl6IEF1Z3VzdG8g dm9uIERlbnR6IHdyb3RlOg0KPj4+Pj4+PiBIaSBJc2FhYywNCj4+Pj4+Pj4NCj4+Pj4+Pj4gT24g VGh1LCBTZXAgMjgsIDIwMTcgYXQgNzo0MyBQTSwgSGVybWlkYSwgSXNhYWMgPElzYWFjLkhlcm1p ZGFAZGlnaS5jb20+IHdyb3RlOg0KPj4+Pj4+Pj4gSGkgZ3JvdXAsDQo+Pj4+Pj4+Pg0KPj4+Pj4+ Pj4gQXMgcGFydCBvZiB0aGUgYmx1ZXRvb3RoIFNJRyBjZXJ0aWZpY2F0aW9uIHRoZXJlIGFyZSB0 d28gdGVzdCBjYXNlcw0KPj4+Pj4+Pj4gL1RQL0dBUi9DTC9CSS0zNC1DIGFuZCAvVFAvR0FSL0NM L0JJLTM1LUMgKHlvdSBjYW4gc2VlIHRoZXkgZGVmaW5lZCBpbg0KPj4+Pj4+Pj4gdW5pdC90ZXN0 LWdhdHQuYykuDQo+Pj4+Pj4+PiBDdXJyZW50bHkgSSBhbSBhYmxlIHRvIHJ1biB0aGUgInRlc3Qv ZXhhbXBsZS1nYXR0LXNlcnZlciIgYW5kIHNlZSBteQ0KPj4+Pj4+Pj4gY3VzdG9tIHNlcnZpY2Vz IGFuZCBjaGFyYWN0ZXJpc3RpY3MsIGJ1dCBJIG5lZWQgdG8gZGVmaW5lIGFuIHNwZWNpZmljDQo+ Pj4+Pj4+PiBzZXJ2aWNlL2NoYXJhY3RlcmlzdGljIHRvIGJlIG9ubHkgYWNjZXNzaWJsZSB0cm91 Z2ggTEUgb3IgQlIvRURSDQo+Pj4+Pj4+PiB0cmFuc3BvcnQgcGFyYW1ldGVyLiBJIHdhcyBkaWdn aW5nIGludG8gdGhlIGNvZGUgYnV0IEkgd2FzIHVuYWJsZSB0bw0KPj4+Pj4+Pj4gZmluZCBob3cg dG8gc2V0IGl0IGZvciB0aGUgR0FUVCBzZXJ2ZXIuDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4gSW4gb3Ro ZXIgd29yZHMsIHdoYXQgSSB3YW50IHRvIGRvIGlzIGxhdW5jaCB0aGUgZ2F0dC1zZXJ2ZXIgYW5k IHRoZW4sDQo+Pj4+Pj4+PiB3aGVuIGluc3BlY3RpbmcgdGhlIHNlcnZpY2VzL2NoYXJhY3Rlcmlz dGljIHdpdGggZ2F0dHRvb2wsIHRoZSByZXR1cm5lZA0KPj4+Pj4+Pj4gbGlzdCBzaG91bGQgYmUg ZGlmZmVyZW50IGlmIEkgcnVuIGdhdHR0b29sIHdpdGggIi1wIDMxIiBvciBub3QgKG5vdGljZQ0K Pj4+Pj4+Pj4gaG93IHRoZSBnYXR0dG9vbCBwcm9tcHQgaXMgc2V0IHRvIExFIG9yIEJSKS4NCj4+ Pj4+Pj4+DQo+Pj4+Pj4+PiAjIGdhdHR0b29sIC1JIC1iIDAwOjQwOjlEOjk4Ojk5OkJEIC1wIDAN Cj4+Pj4+Pj4+IFswMDo0MDo5RDo5ODo5OTpCRF1bTEVdPiBjb25uZWN0DQo+Pj4+Pj4+PiBBdHRl bXB0aW5nIHRvIGNvbm5lY3QgdG8gMDA6NDA6OUQ6OTg6OTk6QkQNCj4+Pj4+Pj4+IENvbm5lY3Rp b24gc3VjY2Vzc2Z1bA0KPj4+Pj4+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtMRV0+IHByaW1hcnkN Cj4+Pj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMDEsIGVuZCBncnAgaGFuZGxlOiAweDAwMDUgdXVp ZDoNCj4+Pj4+Pj4+IDAwMDAxODAwLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+ Pj4gYXR0ciBoYW5kbGU6IDB4MDAwNiwgZW5kIGdycCBoYW5kbGU6IDB4MDAwOSB1dWlkOg0KPj4+ Pj4+Pj4gMDAwMDE4MDEtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pj4+PiBhdHRy IGhhbmRsZTogMHgwMDBhLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDBkIHV1aWQ6DQo+Pj4+Pj4+PiAw MDAwMTgwZi0wMDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+Pj4+IGF0dHIgaGFuZGxl OiAweDAwMGUsIGVuZCBncnAgaGFuZGxlOiAweDAwMWQgdXVpZDoNCj4+Pj4+Pj4+IDEyMzQ1Njc4 LTEyMzQtNTY3OC0xMjM0LTU2Nzg5YWJjZGVmMA0KPj4+Pj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAx ZSwgZW5kIGdycCBoYW5kbGU6IDB4MDAyNSB1dWlkOg0KPj4+Pj4+Pj4gMDAwMDE4MGQtMDAwMC0x MDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+ICMgL3Rt cC9nYXR0dG9vbCAtSSAtYiAwMDo0MDo5RDo5ODo5OTpCRCAtcCAzMQ0KPj4+Pj4+Pj4gWzAwOjQw OjlEOjk4Ojk5OkJEXVtCUl0+IGNvbm5lY3QNCj4+Pj4+Pj4+IEF0dGVtcHRpbmcgdG8gY29ubmVj dCB0byAwMDo0MDo5RDo5ODo5OTpCRA0KPj4+Pj4+Pj4gQ29ubmVjdGlvbiBzdWNjZXNzZnVsDQo+ Pj4+Pj4+PiBbMDA6NDA6OUQ6OTg6OTk6QkRdW0JSXT4gcHJpbWFyeQ0KPj4+Pj4+Pj4gYXR0ciBo YW5kbGU6IDB4MDAwMSwgZW5kIGdycCBoYW5kbGU6IDB4MDAwNSB1dWlkOg0KPj4+Pj4+Pj4gMDAw MDE4MDAtMDAwMC0xMDAwLTgwMDAtMDA4MDVmOWIzNGZiDQo+Pj4+Pj4+PiBhdHRyIGhhbmRsZTog MHgwMDA2LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA5IHV1aWQ6DQo+Pj4+Pj4+PiAwMDAwMTgwMS0w MDAwLTEwMDAtODAwMC0wMDgwNWY5YjM0ZmINCj4+Pj4+Pj4+IGF0dHIgaGFuZGxlOiAweDAwMGEs IGVuZCBncnAgaGFuZGxlOiAweDAwMTkgdXVpZDoNCj4+Pj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3 OC0xMjM0LTU2Nzg5YWJjZGVmMA0KPj4+Pj4+Pj4gYXR0ciBoYW5kbGU6IDB4MDAxYSwgZW5kIGdy cCBoYW5kbGU6IDB4MDAxZCB1dWlkOg0KPj4+Pj4+Pj4gMDAwMDE4MGYtMDAwMC0xMDAwLTgwMDAt MDA4MDVmOWIzNGZiDQo+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDFlLCBlbmQgZ3JwIGhhbmRs ZTogMHgwMDI1IHV1aWQ6DQo+Pj4+Pj4+PiAwMDAwMTgwZC0wMDAwLTEwMDAtODAwMC0wMDgwNWY5 YjM0ZmINCj4+Pj4+Pj4+DQo+Pj4+Pj4+Pg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+IEkgYW0gdXNpbmcg Ymx1ZXogNS40MS4gSXMgcG9zc2libGUgdG8gYWR2ZXJ0aXNlIGEgc2VydmljZSBvbmx5IGZvciBM RSBvcg0KPj4+Pj4+Pj4gQlI/IEkgZ3Vlc3MgaXQgc2hvdWxkIGJlY2F1c2UgaXMgcGFydCBvZiB0 aGUgU0lHIGNlcnRpZmljYXRpb24gYW5kIGlzDQo+Pj4+Pj4+PiBwYXJ0IG9mIHRoZSB1bml0L3Rl c3QtZ2F0dC4NCj4+Pj4+Pj4gVGhpcyBtaWdodCBiZSBiZWNhdXNlIHRoZSBzcGVjIHdhcyBubyBj bGVhciBhYm91dCB0aGUgZGF0YWJhc2UgYmVpbmcNCj4+Pj4+Pj4gYmVhcmVyIHNwZWNpZmljLCB3 aGljaCBpbiBteSBvcGluaW9uIHRoaXMgaXMgYSBvdmVyc2lnaHQgc2luY2UgdGhlbiB3ZQ0KPj4+ Pj4+PiBjYW4ndCByZXByZXNlbnQgYXR0cmlidXRlcyBvZiBkdWFsIG1vZGUgZGV2aWNlcyB3aXRo IGEgdW5pZmllZCBvYmplY3QsDQo+Pj4+Pj4+IGFuZCBJIHJlYWxseSB3b25kZXIgaWYgdGhpcyBo YXMgdG8gYmUgZm9yY2VkIHVwIGludG8gdGhlIEFQSSwgaWYgaXQNCj4+Pj4+Pj4gZG9lcyB0aGVu IHdlIHdvdWxkIGhhdmUgdG8gZW5jb2RlIGJlYXJlciBpbmZvcm1hdGlvbiBpbnRvIHRoZSBvYmpl Y3QNCj4+Pj4+Pj4gcGF0aCAoYXJnaCEpIGZvciBjbGllbnQgYW5kIGZvciBzZXJ2ZXIgd291bGQg cHJvYmFibHkgbmVlZCBhIHByb3BlcnR5DQo+Pj4+Pj4+IHRlbGxpbmcgd2hpY2ggYmVhcmVyIHRo aXMgd291bGQgYmUgYXZhaWxhYmxlIGFuZCBlbmNvZGUgdGhpcyBpbnRvIHRvDQo+Pj4+Pj4+IHRo ZSBkYXRhYmFzZSB3aGljaCBtYXkgbGVhdmUgZ2FwcyBpbiB0aGUgaGFuZGxlcyBvciBqdXN0IGR1 cGxpY2F0ZQ0KPj4+Pj4+PiBldmVyeXRoaW5nLCBmb3Igc2VydmVyIElkIHByb2JhYmx5IGp1c3Qg aGlkZSB0aGUgc2VydmljZXMgYmFzZWQgb24gdGhlDQo+Pj4+Pj4+IGJlYXJlciwgYnV0IHdlIHN0 aWxsIG5lZWQgdG8gc3RvcmUgdGhlIENDQyBjb25maWd1cmF0aW9uIGluIGEgYmVhcmVyDQo+Pj4+ Pj4+IHNwZWNpZmljIG1hbm5lci4NCj4+Pj4+Pj4NCj4+Pj4+Pg0KPj4+Pj4+IFNvLCB3aGF0IGNh biBJIGRvIGluIG9yZGVyIHRvIHBhc3MgdGhhdCBzcGVjaWZpYyBibHVldG9vdGggU0lHIHRlc3Rz Pw0KPj4+Pj4+IFRoYXQgdGVzdCBjYXNlcyBuZWVkIHRvIGVuc3VyZSB0aGF0IGFuIHNwZWNpZmlj IHNlcnZpY2UvY2hhciBpbiBvbmx5DQo+Pj4+Pj4gYWNjZXNzaWJsZSBvbiBMRSBvciBCUiwgc28g dGhleSBoYWQgdG8gYmUgZGlmZmVyZW50Lg0KPj4+Pj4+IERvIHlvdSBoYXZlIGFueSBpZGVhIG9y IHN1Z2dlc3Rpb24/IEl0IHdvdWxkIGJlIHJlYWxseSB3ZWxjb21lLCBpZiBub3QgSQ0KPj4+Pj4+ IGhhdmUgbm8gaWRlYSBob3cgdG8gcHJvY2VlZCB0byBjb21wbGV0ZSB0aGUgU0lHIHZhbGlkYXRp b24gd2l0aCBibHVleiBzdHVmZi4NCj4+Pj4+PiBJIHdhcyBldmVuIHRyeWluZyB0byBtb2RpZnkg c29tZSBmaWxlcyBpbnRvIHRoZSBjb2RlLCBidXQgSSBhbSBub3QNCj4+Pj4+PiBmYW1pbGlhciB3 aXRoIHRoYXQgYW5kIGl0IG9idmlvdXNseSBkaWQgbm90IHdvcmsuDQo+Pj4+Pg0KPj4+Pj4gSSB1 bmRlcnN0YW5kIHRoZSBzaWxlbnQgdG8gdGhpcyBsYXN0IHF1ZXN0aW9uIGFzIGEgbm8uIFNvIEkg YXNzdW1lIHRoYXQNCj4+Pj4+IGFueSB1c2VyIHRyeWluZyB0byBwYXNzIHRoaXMgdGVzdCB3aWxs IGZhaWwgKGF0IGxlYXN0IGlmIHVzaW5nIGJsdWV6KS4NCj4+Pj4+IFNvIHNob3VsZCB0aGUgc3Bl Y2lmaWNhdGlvbiBiZSBjaGFuZ2VkPyBTaG91bGQgYmx1ZXogYWRhcHQgdG8gaXQ/IEluIHRoZQ0K Pj4+Pj4gY3VycmVudCBzdGF0ZSB0aGF0IFNJRyBjZXJ0aWZpY2F0aW9uIGNhbiBub3QgYmUgcGFz c2VkLg0KPj4+Pg0KPj4+PiBUaGF0IGlmIHlvdSB3YW50IHRvIHF1YWxpZnkgd2l0aCBHQVRUIG92 ZXIgQlIvRURSLCBzb21ldGhpbmcgdGhhdCB3ZQ0KPj4+PiBtYXkgYWN0dWFsbHkgaGF2ZSBhbiBv cHRpb24gdG8gZGlzYWJsZSBpbiB0aGUgZnV0dXJlLCBvciBwZXJoYXBzIGp1c3QNCj4+Pj4gcmVt b3ZlIGl0IGVudGlyZWx5IGdpdmVuIHRoaXMgdGVzdHMgd291bGQgcG9zc2libGUgYWZmZWN0IHRo YXQgR0FUVA0KPj4+PiBkYXRhYmFzZSBsYXlvdXQsIGVpdGhlciBieSBjcmVhdGluZyBoYW5kbGUg Z2FwcyBvciBkdXBsaWNhdGlvbi4gU28NCj4+Pj4gcGVyaGFwcyB5b3UgY291bGQgZ2l2ZSBzb21l IGZlZWRiYWNrIGlmIHlvdSBkbyBpbnRlbmQgdG8gdXNlIEdBVFQgb3Zlcg0KPj4+PiBCUi9FRFIg b3Igbm90PyBJZiBpdCB0dXJuIG91dCBubyBvbmUgYmVuZWZpdCBmcm9tIGl0IElkIGp1c3QgcmVt b3ZlDQo+Pj4+IGl0Lg0KPj4+Pg0KPj4+DQo+Pj4gVGhhbmtzIGZvciB0aGUgcXVpY2sgcmVwbHku IEkgZG8gbm90IGtub3cgaG93IGFueSBvdGhlciBwZW9wbGUgd2FzIGFibGUNCj4+PiB0byBwYXNz IHRoZXNlIFNJRyBsYWIgdGVzdHMgKEJJLTM0LUMgYW5kIEJJLTM1LUMpLg0KPj4+IEkgZG8gbm90 IHBsYW4gdG8gdXNlIEdBVFQgb3ZlciBCUi9FRFIuIEZvciBtZSBqdXN0IHJlbW92aW5nIGl0IHdv dWxkIGJlDQo+Pj4gZW5vdWdoLiBJZiB5b3UgY2FuIHBvaW50IG1lIHdoZXJlL2hvdyB0byBkbyB0 aGF0IGl0IHdvdWxkIGJlIGdyZWF0IHNvIEkNCj4+PiBjYW4gZGlnIGluIHRoZSBjb2RlIChJIGFt IG5vdCBmYW1pbGlhciB3aXRoIHRoYXQgY29kZSkuDQo+Pj4NCj4+PiBUaHgsDQo+Pj4gICAgICAg SXNhYWMNCj4+DQo+Pg0KPj4gWWVzdGVyZGF5IEkgZGlkIGFwcGx5IHRoZSBwYXRjaCAoZ2F0dDog UmVtb3ZlIHN1cHBvcnQgb2YgQVRUIG92ZXINCj4+IEJSL0VEUikgb24gYmx1ZXotNS40MSAobXkg Y3VycmVudCB2ZXJzaW9uKSBhbmQgcGFzc2VkIGl0IHRvIHRoZSBsYWIuIEkNCj4+IHdhcyB3YWl0 aW5nIGZvciB0aGVpciBmZWVkYmFjayBidXQgSSBkaWQgbm90IGdldCBhIHJlcGx5IHlldCwgc28g anVzdCB0bw0KPj4gbGV0IHlvdSBrbm93IHRoYXQgSSBnZXQgdGhlIHBhdGNoIGFuZCBhcHBsaWVk IGl0Lg0KPj4gQXMgSSBzZWUgaXQsIHRoYXQgcGF0Y2ggcmVtb3ZlZCB0aGUgc3VwcG9ydCBmb3Ig QVRUIG92ZXIgQlIvRURSLCBzbyBJDQo+PiBndWVzcyB0aGF0IGFub3RoZXIgd2F5IHRvIHBhc3Mg dGhhdCB0ZXN0IGlzIG1vZGlmeWluZyB0aGUgZmlybXdhcmUgb2YNCj4+IHRoZSBibHVldG9vdGgg Y2hpcCB0byBkaXNhYmxlIGl0IGF0IGEgaHcgbGV2ZWwuDQo+PiBBbmQsIGluIG9yZGVyIHRvIHBh c3MgdGhlIG90aGVyIHRlc3QgY2FzZSAoQkktMzUtQyksIEkgd2lsbCBuZWVkIHRvIGRvDQo+PiBu b3QgYXBwbHkgdGhlIG1lbnRpb25lZCBwYXRjaCBhbmQgY3JlYXRlIGEgc2ltaWxhciBvbmUgZm9y IEFUVCBvdmVyIExFLA0KPj4gb3IgaXMgdGhlcmUgYW5vdGhlciB3YXkgdG8gYWNjb21wbGlzaCAv VFAvR0FSL0NML0JJLTM1LUM/DQo+DQo+IElkIGFzc3VtZSB5b3Ugd291bGQgbm90IGhhdmUgdG8g cnVuIHRob3NlIHRlc3RzIGlmIEFUVCBvdmVyIEJSL0VEUiBpcw0KPiBub3Qgc3VwcG9ydGVkOg0K Pg0KPiA0LjUuNzIgVFAvR0FSL0NML0JJLTM1LUMgW1JlYWQgQ2hhcmFjdGVyaXN0aWMgVmFsdWUg XHUyMDEzIEludmFsaWQNCj4gVHJhbnNwb3J0IEFjY2VzcyBvdmVyDQo+IExFXQ0KPiBWZXJpZnkg R2VuZXJpYyBBdHRyaWJ1dGUgUHJvZmlsZSBjbGllbnQgYmVoYXZpb3Igd2hlbiBhbiBhdHRlbXB0 IHRvDQo+IHVzZSBMRSB0cmFuc3BvcnQgdG8gZXhlY3V0ZQ0KPiB0aGUgUmVhZCBDaGFyYWN0ZXJp c3RpYyBWYWx1ZSBwcm9jZWR1cmUgb24gYSBjaGFyYWN0ZXJpc3RpYyBjb250YWluZWQNCj4gd2l0 aGluIGEgc2VydmljZSBkZWZpbmVkDQo+IGZvciB1c2Ugb25seSBvdmVyIEJSL0VEUiB0cmFuc3Bv cnQuDQo+DQo+IFdpdGhvdXQgQlIvRURSIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBydW4gdGhpcyB0 ZXN0IGFzIGFsbCB0aGUNCj4gYXR0cmlidXRlcyBzaG91bGQgYmUgdmFsaWQuDQo+DQoNCg0KT3Vy IHByb2R1Y3QgaXMgZHVhbCBzbyB0aG9zZSB0ZXN0cyBhcmUgbWFuZGF0b3J5LiBBZGRpdGlvbmFs bHksIG91ciANCnByb2R1Y3QgaXMgNC4yLCBubyA0LjAuDQpUaGUgcGF0Y2ggeW91IHByb3Bvc2Vk IChnYXR0OiBSZW1vdmUgc3VwcG9ydCBvZiBBVFQgb3ZlciBCUi9FRFIpIGlzIG5vdCANCnZhbGlk IGFuZCB3aWxsIG5vdCB3b3JrIChpZiB5b3Ugd2FudCBJIGNhbiBhZGQgZGV0YWlscyB0byB0aGUg b3RoZXIgDQp0aHJlYWQpIGFuZCBpdCB3aWxsIGJyZWFrIG90aGVyIHRlc3RzIG5lZWRlZCBmb3Ig dGhlIGNlcnRpZmljYXRpb24uIEkgDQp3b3VsZCBzdWdnZXN0IHRvIHJlamVjdCBpdC4NClRvIHB1 dCBzb21lIGxpZ2h0IGluIHRlc3RzIEJJLTM0LUMgYW5kIEJJLTM1LUMsIGl0IGNvbnNpc3RzIGlu IGRlZmluZSBhIA0KY2hhcmFjdGVyaXN0aWMgb25seSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgdHJh bnNwb3J0IGxheWVyIExFIG9yIEJSL0VEUiwgDQpzbyBpbiBvbmUgY2FzZSB0aGUgdmFsdWUgY2Fu IGJlIHJlYWQsIGFuZCBpbiB0aGUgb3RoZXIgY2FzZSBpdCBpcyANCnJlamVjdGVkLiBJIGNhbiBh ZGQgbW9yZSBkZXRhaWxzIGlmIG5lZWRlZC4NCkN1cnJlbnRseSB0aGUgd29ya2Fyb3VuZCB0aGF0 IEkgYW0gZG9pbmcgaXMgcmVjb3JkIHRoZSB0eXBlIG9mIA0KY29ubmVjdGlvbiAoTEUgb3IgQlIv RURSKSBhbmQgcmV0dXJuIHRoZSBlcnJvciBjb2RlIGZvciBvbmUgc3BlY2lmaWMgDQpjaGFyYWN0 ZXJpc3RpYyAodGhhdCBJIHJlZ2lzdGVyIGluIG15IGdhdHQgc2VydmVyIGFwcGxpY2F0aW9uKSwg c28gSSANCmN1c3RvbWl6ZSBteSBhcHBsaWNhdGlvbi4gVGhlIGxhYiBkaWQgbm90IGNvbmZpcm0v ZGlzbWlzcyBpdCB5ZXQsIGJ1dCANCmhvcGVmdWxseSBpdCBpcyB3aGF0IHRoZXkgbmVlZC4NClRo YW5rcyBmb3IgdGhlIHN1cHBvcnQgb24gdGhpcyBpc3N1ZS4gTGV0IG1lIGtub3cgaWYgSSBjYW4g aGVscCBpbiANCmFueXRoaW5nLCBpZiBJIG5lZWQgdG8gcHJvdmlkZSBtb3JlIGRldGFpbHMsIGlm IHlvdSB3YW50IGEgcmVwbHkgaW4gdGhlIA0KcGF0Y2ggdGhyZWFkIG9yIGFueSBvdGhlciBzdHVm Zi4NClJlZ2FyZHMsDQogICBJc2FhYw== ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-09 10:21 ` Hermida, Isaac @ 2017-10-09 11:30 ` Luiz Augusto von Dentz 2017-10-09 12:00 ` Hermida, Isaac 0 siblings, 1 reply; 11+ messages in thread From: Luiz Augusto von Dentz @ 2017-10-09 11:30 UTC (permalink / raw) To: Hermida, Isaac; +Cc: linux-bluetooth@vger.kernel.org Hi Isaac, On Mon, Oct 9, 2017 at 1:21 PM, Hermida, Isaac <Isaac.Hermida@digi.com> wro= te: > Hi Luiz, > > On 10/05/2017 11:40 AM, Luiz Augusto von Dentz wrote: >> Hi Isaac, >> >> On Wed, Oct 4, 2017 at 6:43 PM, Hermida, Isaac <Isaac.Hermida@digi.com> = wrote: >>> Hi Luiz, >>> >>> On 10/03/2017 08:54 AM, Hermida, Isaac wrote: >>>> Hi Luiz, >>>> >>>> On 10/02/2017 06:00 PM, Luiz Augusto von Dentz wrote: >>>>> Hi Isaac, >>>>> >>>>> On Mon, Oct 2, 2017 at 10:03 AM, Hermida, Isaac <Isaac.Hermida@digi.c= om> wrote: >>>>>> Hi Luiz et all, >>>>>> >>>>>> On 09/29/2017 08:44 AM, Hermida, Isaac wrote: >>>>>>> Hi Luiz, >>>>>>> >>>>>>> On 09/28/2017 08:21 PM, Luiz Augusto von Dentz wrote: >>>>>>>> Hi Isaac, >>>>>>>> >>>>>>>> On Thu, Sep 28, 2017 at 7:43 PM, Hermida, Isaac <Isaac.Hermida@dig= i.com> wrote: >>>>>>>>> Hi group, >>>>>>>>> >>>>>>>>> As part of the bluetooth SIG certification there are two test cas= es >>>>>>>>> /TP/GAR/CL/BI-34-C and /TP/GAR/CL/BI-35-C (you can see they defin= ed in >>>>>>>>> unit/test-gatt.c). >>>>>>>>> Currently I am able to run the "test/example-gatt-server" and see= my >>>>>>>>> custom services and characteristics, but I need to define an spec= ific >>>>>>>>> service/characteristic to be only accessible trough LE or BR/EDR >>>>>>>>> transport parameter. I was digging into the code but I was unable= to >>>>>>>>> find how to set it for the GATT server. >>>>>>>>> >>>>>>>>> In other words, what I want to do is launch the gatt-server and t= hen, >>>>>>>>> when inspecting the services/characteristic with gatttool, the re= turned >>>>>>>>> list should be different if I run gatttool with "-p 31" or not (n= otice >>>>>>>>> how the gatttool prompt is set to LE or BR). >>>>>>>>> >>>>>>>>> # gatttool -I -b 00:40:9D:98:99:BD -p 0 >>>>>>>>> [00:40:9D:98:99:BD][LE]> connect >>>>>>>>> Attempting to connect to 00:40:9D:98:99:BD >>>>>>>>> Connection successful >>>>>>>>> [00:40:9D:98:99:BD][LE]> primary >>>>>>>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>>>>>>> 00001800-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>>>>>>> 00001801-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x000a, end grp handle: 0x000d uuid: >>>>>>>>> 0000180f-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x000e, end grp handle: 0x001d uuid: >>>>>>>>> 12345678-1234-5678-1234-56789abcdef0 >>>>>>>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>>>>>>> 0000180d-0000-1000-8000-00805f9b34fb >>>>>>>>> >>>>>>>>> >>>>>>>>> # /tmp/gatttool -I -b 00:40:9D:98:99:BD -p 31 >>>>>>>>> [00:40:9D:98:99:BD][BR]> connect >>>>>>>>> Attempting to connect to 00:40:9D:98:99:BD >>>>>>>>> Connection successful >>>>>>>>> [00:40:9D:98:99:BD][BR]> primary >>>>>>>>> attr handle: 0x0001, end grp handle: 0x0005 uuid: >>>>>>>>> 00001800-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x0006, end grp handle: 0x0009 uuid: >>>>>>>>> 00001801-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x000a, end grp handle: 0x0019 uuid: >>>>>>>>> 12345678-1234-5678-1234-56789abcdef0 >>>>>>>>> attr handle: 0x001a, end grp handle: 0x001d uuid: >>>>>>>>> 0000180f-0000-1000-8000-00805f9b34fb >>>>>>>>> attr handle: 0x001e, end grp handle: 0x0025 uuid: >>>>>>>>> 0000180d-0000-1000-8000-00805f9b34fb >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> I am using bluez 5.41. Is possible to advertise a service only fo= r LE or >>>>>>>>> BR? I guess it should because is part of the SIG certification an= d is >>>>>>>>> part of the unit/test-gatt. >>>>>>>> This might be because the spec was no clear about the database bei= ng >>>>>>>> bearer specific, which in my opinion this is a oversight since the= n we >>>>>>>> can't represent attributes of dual mode devices with a unified obj= ect, >>>>>>>> and I really wonder if this has to be forced up into the API, if i= t >>>>>>>> does then we would have to encode bearer information into the obje= ct >>>>>>>> path (argh!) for client and for server would probably need a prope= rty >>>>>>>> telling which bearer this would be available and encode this into = to >>>>>>>> the database which may leave gaps in the handles or just duplicate >>>>>>>> everything, for server Id probably just hide the services based on= the >>>>>>>> bearer, but we still need to store the CCC configuration in a bear= er >>>>>>>> specific manner. >>>>>>>> >>>>>>> >>>>>>> So, what can I do in order to pass that specific bluetooth SIG test= s? >>>>>>> That test cases need to ensure that an specific service/char in onl= y >>>>>>> accessible on LE or BR, so they had to be different. >>>>>>> Do you have any idea or suggestion? It would be really welcome, if = not I >>>>>>> have no idea how to proceed to complete the SIG validation with blu= ez stuff. >>>>>>> I was even trying to modify some files into the code, but I am not >>>>>>> familiar with that and it obviously did not work. >>>>>> >>>>>> I understand the silent to this last question as a no. So I assume t= hat >>>>>> any user trying to pass this test will fail (at least if using bluez= ). >>>>>> So should the specification be changed? Should bluez adapt to it? In= the >>>>>> current state that SIG certification can not be passed. >>>>> >>>>> That if you want to qualify with GATT over BR/EDR, something that we >>>>> may actually have an option to disable in the future, or perhaps just >>>>> remove it entirely given this tests would possible affect that GATT >>>>> database layout, either by creating handle gaps or duplication. So >>>>> perhaps you could give some feedback if you do intend to use GATT ove= r >>>>> BR/EDR or not? If it turn out no one benefit from it Id just remove >>>>> it. >>>>> >>>> >>>> Thanks for the quick reply. I do not know how any other people was abl= e >>>> to pass these SIG lab tests (BI-34-C and BI-35-C). >>>> I do not plan to use GATT over BR/EDR. For me just removing it would b= e >>>> enough. If you can point me where/how to do that it would be great so = I >>>> can dig in the code (I am not familiar with that code). >>>> >>>> Thx, >>>> Isaac >>> >>> >>> Yesterday I did apply the patch (gatt: Remove support of ATT over >>> BR/EDR) on bluez-5.41 (my current version) and passed it to the lab. I >>> was waiting for their feedback but I did not get a reply yet, so just t= o >>> let you know that I get the patch and applied it. >>> As I see it, that patch removed the support for ATT over BR/EDR, so I >>> guess that another way to pass that test is modifying the firmware of >>> the bluetooth chip to disable it at a hw level. >>> And, in order to pass the other test case (BI-35-C), I will need to do >>> not apply the mentioned patch and create a similar one for ATT over LE, >>> or is there another way to accomplish /TP/GAR/CL/BI-35-C? >> >> Id assume you would not have to run those tests if ATT over BR/EDR is >> not supported: >> >> 4.5.72 TP/GAR/CL/BI-35-C [Read Characteristic Value \u2013 Invalid >> Transport Access over >> LE] >> Verify Generic Attribute Profile client behavior when an attempt to >> use LE transport to execute >> the Read Characteristic Value procedure on a characteristic contained >> within a service defined >> for use only over BR/EDR transport. >> >> Without BR/EDR there is no reason to run this test as all the >> attributes should be valid. >> > > > Our product is dual so those tests are mandatory. Additionally, our > product is 4.2, no 4.0. > The patch you proposed (gatt: Remove support of ATT over BR/EDR) is not > valid and will not work (if you want I can add details to the other > thread) and it will break other tests needed for the certification. I > would suggest to reject it. > To put some light in tests BI-34-C and BI-35-C, it consists in define a > characteristic only available through the transport layer LE or BR/EDR, > so in one case the value can be read, and in the other case it is > rejected. I can add more details if needed. Im pretty sure it is possible since chrome OS has done it: https://www.bluetooth.org/tpg/QLI_viewQDL.cfm?qid=3D22333 Though I can see the ATT over BR/EDR is in fact mandatory, the ICS says: C.1: Mandatory IF (SUM ICS 12/2 =E2=80=9CBluetooth Basic Rate Core Host Configuration=E2=80=9D OR SUM ICS 12/9 =E2=80=9CBluetooth Basic Rate and Low Energy Combined Core Host Configuration=E2=80=9D) is supported, otherwise Excluded. > Currently the workaround that I am doing is record the type of > connection (LE or BR/EDR) and return the error code for one specific > characteristic (that I register in my gatt server application), so I > customize my application. The lab did not confirm/dismiss it yet, but > hopefully it is what they need. Afaik any service not registered over SDP should not be available over BR/EDR, which is perhaps why the current code only does expose GATT and GAP service, nothing else. Now I haven't found anything prohibiting GATT discovery to happen over BR/EDR, just exchange MTU, but the SDP service already carries the handles which I assume is what PTS uses given there are tests like: 4.4.15 TP/GAD/SR/BV-07-C [Discover Primary Services using SDP - from Server= ] Anyway, the end result is that we cannot completely disable ATT over BR/EDR, and might have to push the bearer details up to the application. Note that exposing the connected bearer is not enough in case a device connects over both bearers the application will have no means to distinguish in which bearer the command is coming from, this appears to be a problem to Android HAL as well: https://android.googlesource.com/platform/hardware/libhardware/+/master/inc= lude/hardware/bt_gatt_server.h#71 So probably everyone is passing with a custom application which detects, or asks the user input, when to return an error. > Thanks for the support on this issue. Let me know if I can help in > anything, if I need to provide more details, if you want a reply in the > patch thread or any other stuff. > Regards, > Isaac --=20 Luiz Augusto von Dentz ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: how to advertise a GATT service only for LE or BR/EDR? 2017-10-09 11:30 ` Luiz Augusto von Dentz @ 2017-10-09 12:00 ` Hermida, Isaac 0 siblings, 0 replies; 11+ messages in thread From: Hermida, Isaac @ 2017-10-09 12:00 UTC (permalink / raw) To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org SGkgTHVpeiwNCg0KT24gMTAvMDkvMjAxNyAwMTozMCBQTSwgTHVpeiBBdWd1c3RvIHZvbiBEZW50 eiB3cm90ZToNCj4gSGkgSXNhYWMsDQo+DQo+IE9uIE1vbiwgT2N0IDksIDIwMTcgYXQgMToyMSBQ TSwgSGVybWlkYSwgSXNhYWMgPElzYWFjLkhlcm1pZGFAZGlnaS5jb20+IHdyb3RlOg0KPj4gSGkg THVpeiwNCj4+DQo+PiBPbiAxMC8wNS8yMDE3IDExOjQwIEFNLCBMdWl6IEF1Z3VzdG8gdm9uIERl bnR6IHdyb3RlOg0KPj4+IEhpIElzYWFjLA0KPj4+DQo+Pj4gT24gV2VkLCBPY3QgNCwgMjAxNyBh dCA2OjQzIFBNLCBIZXJtaWRhLCBJc2FhYyA8SXNhYWMuSGVybWlkYUBkaWdpLmNvbT4gd3JvdGU6 DQo+Pj4+IEhpIEx1aXosDQo+Pj4+DQo+Pj4+IE9uIDEwLzAzLzIwMTcgMDg6NTQgQU0sIEhlcm1p ZGEsIElzYWFjIHdyb3RlOg0KPj4+Pj4gSGkgTHVpeiwNCj4+Pj4+DQo+Pj4+PiBPbiAxMC8wMi8y MDE3IDA2OjAwIFBNLCBMdWl6IEF1Z3VzdG8gdm9uIERlbnR6IHdyb3RlOg0KPj4+Pj4+IEhpIElz YWFjLA0KPj4+Pj4+DQo+Pj4+Pj4gT24gTW9uLCBPY3QgMiwgMjAxNyBhdCAxMDowMyBBTSwgSGVy bWlkYSwgSXNhYWMgPElzYWFjLkhlcm1pZGFAZGlnaS5jb20+IHdyb3RlOg0KPj4+Pj4+PiBIaSBM dWl6IGV0IGFsbCwNCj4+Pj4+Pj4NCj4+Pj4+Pj4gT24gMDkvMjkvMjAxNyAwODo0NCBBTSwgSGVy bWlkYSwgSXNhYWMgd3JvdGU6DQo+Pj4+Pj4+PiBIaSBMdWl6LA0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+ IE9uIDA5LzI4LzIwMTcgMDg6MjEgUE0sIEx1aXogQXVndXN0byB2b24gRGVudHogd3JvdGU6DQo+ Pj4+Pj4+Pj4gSGkgSXNhYWMsDQo+Pj4+Pj4+Pj4NCj4+Pj4+Pj4+PiBPbiBUaHUsIFNlcCAyOCwg MjAxNyBhdCA3OjQzIFBNLCBIZXJtaWRhLCBJc2FhYyA8SXNhYWMuSGVybWlkYUBkaWdpLmNvbT4g d3JvdGU6DQo+Pj4+Pj4+Pj4+IEhpIGdyb3VwLA0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiBBcyBw YXJ0IG9mIHRoZSBibHVldG9vdGggU0lHIGNlcnRpZmljYXRpb24gdGhlcmUgYXJlIHR3byB0ZXN0 IGNhc2VzDQo+Pj4+Pj4+Pj4+IC9UUC9HQVIvQ0wvQkktMzQtQyBhbmQgL1RQL0dBUi9DTC9CSS0z NS1DICh5b3UgY2FuIHNlZSB0aGV5IGRlZmluZWQgaW4NCj4+Pj4+Pj4+Pj4gdW5pdC90ZXN0LWdh dHQuYykuDQo+Pj4+Pj4+Pj4+IEN1cnJlbnRseSBJIGFtIGFibGUgdG8gcnVuIHRoZSAidGVzdC9l eGFtcGxlLWdhdHQtc2VydmVyIiBhbmQgc2VlIG15DQo+Pj4+Pj4+Pj4+IGN1c3RvbSBzZXJ2aWNl cyBhbmQgY2hhcmFjdGVyaXN0aWNzLCBidXQgSSBuZWVkIHRvIGRlZmluZSBhbiBzcGVjaWZpYw0K Pj4+Pj4+Pj4+PiBzZXJ2aWNlL2NoYXJhY3RlcmlzdGljIHRvIGJlIG9ubHkgYWNjZXNzaWJsZSB0 cm91Z2ggTEUgb3IgQlIvRURSDQo+Pj4+Pj4+Pj4+IHRyYW5zcG9ydCBwYXJhbWV0ZXIuIEkgd2Fz IGRpZ2dpbmcgaW50byB0aGUgY29kZSBidXQgSSB3YXMgdW5hYmxlIHRvDQo+Pj4+Pj4+Pj4+IGZp bmQgaG93IHRvIHNldCBpdCBmb3IgdGhlIEdBVFQgc2VydmVyLg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+ Pj4+PiBJbiBvdGhlciB3b3Jkcywgd2hhdCBJIHdhbnQgdG8gZG8gaXMgbGF1bmNoIHRoZSBnYXR0 LXNlcnZlciBhbmQgdGhlbiwNCj4+Pj4+Pj4+Pj4gd2hlbiBpbnNwZWN0aW5nIHRoZSBzZXJ2aWNl cy9jaGFyYWN0ZXJpc3RpYyB3aXRoIGdhdHR0b29sLCB0aGUgcmV0dXJuZWQNCj4+Pj4+Pj4+Pj4g bGlzdCBzaG91bGQgYmUgZGlmZmVyZW50IGlmIEkgcnVuIGdhdHR0b29sIHdpdGggIi1wIDMxIiBv ciBub3QgKG5vdGljZQ0KPj4+Pj4+Pj4+PiBob3cgdGhlIGdhdHR0b29sIHByb21wdCBpcyBzZXQg dG8gTEUgb3IgQlIpLg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiAjIGdhdHR0b29sIC1JIC1iIDAw OjQwOjlEOjk4Ojk5OkJEIC1wIDANCj4+Pj4+Pj4+Pj4gWzAwOjQwOjlEOjk4Ojk5OkJEXVtMRV0+ IGNvbm5lY3QNCj4+Pj4+Pj4+Pj4gQXR0ZW1wdGluZyB0byBjb25uZWN0IHRvIDAwOjQwOjlEOjk4 Ojk5OkJEDQo+Pj4+Pj4+Pj4+IENvbm5lY3Rpb24gc3VjY2Vzc2Z1bA0KPj4+Pj4+Pj4+PiBbMDA6 NDA6OUQ6OTg6OTk6QkRdW0xFXT4gcHJpbWFyeQ0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgw MDAxLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA1IHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAwMDAxODAwLTAw MDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDA2 LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA5IHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAwMDAxODAxLTAwMDAt MTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDBhLCBl bmQgZ3JwIGhhbmRsZTogMHgwMDBkIHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAwMDAxODBmLTAwMDAtMTAw MC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDBlLCBlbmQg Z3JwIGhhbmRsZTogMHgwMDFkIHV1aWQ6DQo+Pj4+Pj4+Pj4+IDEyMzQ1Njc4LTEyMzQtNTY3OC0x MjM0LTU2Nzg5YWJjZGVmMA0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRsZTogMHgwMDFlLCBlbmQgZ3Jw IGhhbmRsZTogMHgwMDI1IHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAwMDAxODBkLTAwMDAtMTAwMC04MDAw LTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiAjIC90bXAv Z2F0dHRvb2wgLUkgLWIgMDA6NDA6OUQ6OTg6OTk6QkQgLXAgMzENCj4+Pj4+Pj4+Pj4gWzAwOjQw OjlEOjk4Ojk5OkJEXVtCUl0+IGNvbm5lY3QNCj4+Pj4+Pj4+Pj4gQXR0ZW1wdGluZyB0byBjb25u ZWN0IHRvIDAwOjQwOjlEOjk4Ojk5OkJEDQo+Pj4+Pj4+Pj4+IENvbm5lY3Rpb24gc3VjY2Vzc2Z1 bA0KPj4+Pj4+Pj4+PiBbMDA6NDA6OUQ6OTg6OTk6QkRdW0JSXT4gcHJpbWFyeQ0KPj4+Pj4+Pj4+ PiBhdHRyIGhhbmRsZTogMHgwMDAxLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA1IHV1aWQ6DQo+Pj4+ Pj4+Pj4+IDAwMDAxODAwLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBh dHRyIGhhbmRsZTogMHgwMDA2LCBlbmQgZ3JwIGhhbmRsZTogMHgwMDA5IHV1aWQ6DQo+Pj4+Pj4+ Pj4+IDAwMDAxODAxLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBhdHRy IGhhbmRsZTogMHgwMDBhLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDE5IHV1aWQ6DQo+Pj4+Pj4+Pj4+ IDEyMzQ1Njc4LTEyMzQtNTY3OC0xMjM0LTU2Nzg5YWJjZGVmMA0KPj4+Pj4+Pj4+PiBhdHRyIGhh bmRsZTogMHgwMDFhLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDFkIHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAw MDAxODBmLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+PiBhdHRyIGhhbmRs ZTogMHgwMDFlLCBlbmQgZ3JwIGhhbmRsZTogMHgwMDI1IHV1aWQ6DQo+Pj4+Pj4+Pj4+IDAwMDAx ODBkLTAwMDAtMTAwMC04MDAwLTAwODA1ZjliMzRmYg0KPj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+Pg0K Pj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4+PiBJIGFtIHVzaW5nIGJsdWV6IDUuNDEuIElzIHBvc3NpYmxl IHRvIGFkdmVydGlzZSBhIHNlcnZpY2Ugb25seSBmb3IgTEUgb3INCj4+Pj4+Pj4+Pj4gQlI/IEkg Z3Vlc3MgaXQgc2hvdWxkIGJlY2F1c2UgaXMgcGFydCBvZiB0aGUgU0lHIGNlcnRpZmljYXRpb24g YW5kIGlzDQo+Pj4+Pj4+Pj4+IHBhcnQgb2YgdGhlIHVuaXQvdGVzdC1nYXR0Lg0KPj4+Pj4+Pj4+ IFRoaXMgbWlnaHQgYmUgYmVjYXVzZSB0aGUgc3BlYyB3YXMgbm8gY2xlYXIgYWJvdXQgdGhlIGRh dGFiYXNlIGJlaW5nDQo+Pj4+Pj4+Pj4gYmVhcmVyIHNwZWNpZmljLCB3aGljaCBpbiBteSBvcGlu aW9uIHRoaXMgaXMgYSBvdmVyc2lnaHQgc2luY2UgdGhlbiB3ZQ0KPj4+Pj4+Pj4+IGNhbid0IHJl cHJlc2VudCBhdHRyaWJ1dGVzIG9mIGR1YWwgbW9kZSBkZXZpY2VzIHdpdGggYSB1bmlmaWVkIG9i amVjdCwNCj4+Pj4+Pj4+PiBhbmQgSSByZWFsbHkgd29uZGVyIGlmIHRoaXMgaGFzIHRvIGJlIGZv cmNlZCB1cCBpbnRvIHRoZSBBUEksIGlmIGl0DQo+Pj4+Pj4+Pj4gZG9lcyB0aGVuIHdlIHdvdWxk IGhhdmUgdG8gZW5jb2RlIGJlYXJlciBpbmZvcm1hdGlvbiBpbnRvIHRoZSBvYmplY3QNCj4+Pj4+ Pj4+PiBwYXRoIChhcmdoISkgZm9yIGNsaWVudCBhbmQgZm9yIHNlcnZlciB3b3VsZCBwcm9iYWJs eSBuZWVkIGEgcHJvcGVydHkNCj4+Pj4+Pj4+PiB0ZWxsaW5nIHdoaWNoIGJlYXJlciB0aGlzIHdv dWxkIGJlIGF2YWlsYWJsZSBhbmQgZW5jb2RlIHRoaXMgaW50byB0bw0KPj4+Pj4+Pj4+IHRoZSBk YXRhYmFzZSB3aGljaCBtYXkgbGVhdmUgZ2FwcyBpbiB0aGUgaGFuZGxlcyBvciBqdXN0IGR1cGxp Y2F0ZQ0KPj4+Pj4+Pj4+IGV2ZXJ5dGhpbmcsIGZvciBzZXJ2ZXIgSWQgcHJvYmFibHkganVzdCBo aWRlIHRoZSBzZXJ2aWNlcyBiYXNlZCBvbiB0aGUNCj4+Pj4+Pj4+PiBiZWFyZXIsIGJ1dCB3ZSBz dGlsbCBuZWVkIHRvIHN0b3JlIHRoZSBDQ0MgY29uZmlndXJhdGlvbiBpbiBhIGJlYXJlcg0KPj4+ Pj4+Pj4+IHNwZWNpZmljIG1hbm5lci4NCj4+Pj4+Pj4+Pg0KPj4+Pj4+Pj4NCj4+Pj4+Pj4+IFNv LCB3aGF0IGNhbiBJIGRvIGluIG9yZGVyIHRvIHBhc3MgdGhhdCBzcGVjaWZpYyBibHVldG9vdGgg U0lHIHRlc3RzPw0KPj4+Pj4+Pj4gVGhhdCB0ZXN0IGNhc2VzIG5lZWQgdG8gZW5zdXJlIHRoYXQg YW4gc3BlY2lmaWMgc2VydmljZS9jaGFyIGluIG9ubHkNCj4+Pj4+Pj4+IGFjY2Vzc2libGUgb24g TEUgb3IgQlIsIHNvIHRoZXkgaGFkIHRvIGJlIGRpZmZlcmVudC4NCj4+Pj4+Pj4+IERvIHlvdSBo YXZlIGFueSBpZGVhIG9yIHN1Z2dlc3Rpb24/IEl0IHdvdWxkIGJlIHJlYWxseSB3ZWxjb21lLCBp ZiBub3QgSQ0KPj4+Pj4+Pj4gaGF2ZSBubyBpZGVhIGhvdyB0byBwcm9jZWVkIHRvIGNvbXBsZXRl IHRoZSBTSUcgdmFsaWRhdGlvbiB3aXRoIGJsdWV6IHN0dWZmLg0KPj4+Pj4+Pj4gSSB3YXMgZXZl biB0cnlpbmcgdG8gbW9kaWZ5IHNvbWUgZmlsZXMgaW50byB0aGUgY29kZSwgYnV0IEkgYW0gbm90 DQo+Pj4+Pj4+PiBmYW1pbGlhciB3aXRoIHRoYXQgYW5kIGl0IG9idmlvdXNseSBkaWQgbm90IHdv cmsuDQo+Pj4+Pj4+DQo+Pj4+Pj4+IEkgdW5kZXJzdGFuZCB0aGUgc2lsZW50IHRvIHRoaXMgbGFz dCBxdWVzdGlvbiBhcyBhIG5vLiBTbyBJIGFzc3VtZSB0aGF0DQo+Pj4+Pj4+IGFueSB1c2VyIHRy eWluZyB0byBwYXNzIHRoaXMgdGVzdCB3aWxsIGZhaWwgKGF0IGxlYXN0IGlmIHVzaW5nIGJsdWV6 KS4NCj4+Pj4+Pj4gU28gc2hvdWxkIHRoZSBzcGVjaWZpY2F0aW9uIGJlIGNoYW5nZWQ/IFNob3Vs ZCBibHVleiBhZGFwdCB0byBpdD8gSW4gdGhlDQo+Pj4+Pj4+IGN1cnJlbnQgc3RhdGUgdGhhdCBT SUcgY2VydGlmaWNhdGlvbiBjYW4gbm90IGJlIHBhc3NlZC4NCj4+Pj4+Pg0KPj4+Pj4+IFRoYXQg aWYgeW91IHdhbnQgdG8gcXVhbGlmeSB3aXRoIEdBVFQgb3ZlciBCUi9FRFIsIHNvbWV0aGluZyB0 aGF0IHdlDQo+Pj4+Pj4gbWF5IGFjdHVhbGx5IGhhdmUgYW4gb3B0aW9uIHRvIGRpc2FibGUgaW4g dGhlIGZ1dHVyZSwgb3IgcGVyaGFwcyBqdXN0DQo+Pj4+Pj4gcmVtb3ZlIGl0IGVudGlyZWx5IGdp dmVuIHRoaXMgdGVzdHMgd291bGQgcG9zc2libGUgYWZmZWN0IHRoYXQgR0FUVA0KPj4+Pj4+IGRh dGFiYXNlIGxheW91dCwgZWl0aGVyIGJ5IGNyZWF0aW5nIGhhbmRsZSBnYXBzIG9yIGR1cGxpY2F0 aW9uLiBTbw0KPj4+Pj4+IHBlcmhhcHMgeW91IGNvdWxkIGdpdmUgc29tZSBmZWVkYmFjayBpZiB5 b3UgZG8gaW50ZW5kIHRvIHVzZSBHQVRUIG92ZXINCj4+Pj4+PiBCUi9FRFIgb3Igbm90PyBJZiBp dCB0dXJuIG91dCBubyBvbmUgYmVuZWZpdCBmcm9tIGl0IElkIGp1c3QgcmVtb3ZlDQo+Pj4+Pj4g aXQuDQo+Pj4+Pj4NCj4+Pj4+DQo+Pj4+PiBUaGFua3MgZm9yIHRoZSBxdWljayByZXBseS4gSSBk byBub3Qga25vdyBob3cgYW55IG90aGVyIHBlb3BsZSB3YXMgYWJsZQ0KPj4+Pj4gdG8gcGFzcyB0 aGVzZSBTSUcgbGFiIHRlc3RzIChCSS0zNC1DIGFuZCBCSS0zNS1DKS4NCj4+Pj4+IEkgZG8gbm90 IHBsYW4gdG8gdXNlIEdBVFQgb3ZlciBCUi9FRFIuIEZvciBtZSBqdXN0IHJlbW92aW5nIGl0IHdv dWxkIGJlDQo+Pj4+PiBlbm91Z2guIElmIHlvdSBjYW4gcG9pbnQgbWUgd2hlcmUvaG93IHRvIGRv IHRoYXQgaXQgd291bGQgYmUgZ3JlYXQgc28gSQ0KPj4+Pj4gY2FuIGRpZyBpbiB0aGUgY29kZSAo SSBhbSBub3QgZmFtaWxpYXIgd2l0aCB0aGF0IGNvZGUpLg0KPj4+Pj4NCj4+Pj4+IFRoeCwNCj4+ Pj4+ICAgICAgICBJc2FhYw0KPj4+Pg0KPj4+Pg0KPj4+PiBZZXN0ZXJkYXkgSSBkaWQgYXBwbHkg dGhlIHBhdGNoIChnYXR0OiBSZW1vdmUgc3VwcG9ydCBvZiBBVFQgb3Zlcg0KPj4+PiBCUi9FRFIp IG9uIGJsdWV6LTUuNDEgKG15IGN1cnJlbnQgdmVyc2lvbikgYW5kIHBhc3NlZCBpdCB0byB0aGUg bGFiLiBJDQo+Pj4+IHdhcyB3YWl0aW5nIGZvciB0aGVpciBmZWVkYmFjayBidXQgSSBkaWQgbm90 IGdldCBhIHJlcGx5IHlldCwgc28ganVzdCB0bw0KPj4+PiBsZXQgeW91IGtub3cgdGhhdCBJIGdl dCB0aGUgcGF0Y2ggYW5kIGFwcGxpZWQgaXQuDQo+Pj4+IEFzIEkgc2VlIGl0LCB0aGF0IHBhdGNo IHJlbW92ZWQgdGhlIHN1cHBvcnQgZm9yIEFUVCBvdmVyIEJSL0VEUiwgc28gSQ0KPj4+PiBndWVz cyB0aGF0IGFub3RoZXIgd2F5IHRvIHBhc3MgdGhhdCB0ZXN0IGlzIG1vZGlmeWluZyB0aGUgZmly bXdhcmUgb2YNCj4+Pj4gdGhlIGJsdWV0b290aCBjaGlwIHRvIGRpc2FibGUgaXQgYXQgYSBodyBs ZXZlbC4NCj4+Pj4gQW5kLCBpbiBvcmRlciB0byBwYXNzIHRoZSBvdGhlciB0ZXN0IGNhc2UgKEJJ LTM1LUMpLCBJIHdpbGwgbmVlZCB0byBkbw0KPj4+PiBub3QgYXBwbHkgdGhlIG1lbnRpb25lZCBw YXRjaCBhbmQgY3JlYXRlIGEgc2ltaWxhciBvbmUgZm9yIEFUVCBvdmVyIExFLA0KPj4+PiBvciBp cyB0aGVyZSBhbm90aGVyIHdheSB0byBhY2NvbXBsaXNoIC9UUC9HQVIvQ0wvQkktMzUtQz8NCj4+ Pg0KPj4+IElkIGFzc3VtZSB5b3Ugd291bGQgbm90IGhhdmUgdG8gcnVuIHRob3NlIHRlc3RzIGlm IEFUVCBvdmVyIEJSL0VEUiBpcw0KPj4+IG5vdCBzdXBwb3J0ZWQ6DQo+Pj4NCj4+PiA0LjUuNzIg VFAvR0FSL0NML0JJLTM1LUMgW1JlYWQgQ2hhcmFjdGVyaXN0aWMgVmFsdWUgXHUyMDEzIEludmFs aWQNCj4+PiBUcmFuc3BvcnQgQWNjZXNzIG92ZXINCj4+PiBMRV0NCj4+PiBWZXJpZnkgR2VuZXJp YyBBdHRyaWJ1dGUgUHJvZmlsZSBjbGllbnQgYmVoYXZpb3Igd2hlbiBhbiBhdHRlbXB0IHRvDQo+ Pj4gdXNlIExFIHRyYW5zcG9ydCB0byBleGVjdXRlDQo+Pj4gdGhlIFJlYWQgQ2hhcmFjdGVyaXN0 aWMgVmFsdWUgcHJvY2VkdXJlIG9uIGEgY2hhcmFjdGVyaXN0aWMgY29udGFpbmVkDQo+Pj4gd2l0 aGluIGEgc2VydmljZSBkZWZpbmVkDQo+Pj4gZm9yIHVzZSBvbmx5IG92ZXIgQlIvRURSIHRyYW5z cG9ydC4NCj4+Pg0KPj4+IFdpdGhvdXQgQlIvRURSIHRoZXJlIGlzIG5vIHJlYXNvbiB0byBydW4g dGhpcyB0ZXN0IGFzIGFsbCB0aGUNCj4+PiBhdHRyaWJ1dGVzIHNob3VsZCBiZSB2YWxpZC4NCj4+ Pg0KPj4NCj4+DQo+PiBPdXIgcHJvZHVjdCBpcyBkdWFsIHNvIHRob3NlIHRlc3RzIGFyZSBtYW5k YXRvcnkuIEFkZGl0aW9uYWxseSwgb3VyDQo+PiBwcm9kdWN0IGlzIDQuMiwgbm8gNC4wLg0KPj4g VGhlIHBhdGNoIHlvdSBwcm9wb3NlZCAoZ2F0dDogUmVtb3ZlIHN1cHBvcnQgb2YgQVRUIG92ZXIg QlIvRURSKSBpcyBub3QNCj4+IHZhbGlkIGFuZCB3aWxsIG5vdCB3b3JrIChpZiB5b3Ugd2FudCBJ IGNhbiBhZGQgZGV0YWlscyB0byB0aGUgb3RoZXINCj4+IHRocmVhZCkgYW5kIGl0IHdpbGwgYnJl YWsgb3RoZXIgdGVzdHMgbmVlZGVkIGZvciB0aGUgY2VydGlmaWNhdGlvbi4gSQ0KPj4gd291bGQg c3VnZ2VzdCB0byByZWplY3QgaXQuDQo+PiBUbyBwdXQgc29tZSBsaWdodCBpbiB0ZXN0cyBCSS0z NC1DIGFuZCBCSS0zNS1DLCBpdCBjb25zaXN0cyBpbiBkZWZpbmUgYQ0KPj4gY2hhcmFjdGVyaXN0 aWMgb25seSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgdHJhbnNwb3J0IGxheWVyIExFIG9yIEJSL0VE UiwNCj4+IHNvIGluIG9uZSBjYXNlIHRoZSB2YWx1ZSBjYW4gYmUgcmVhZCwgYW5kIGluIHRoZSBv dGhlciBjYXNlIGl0IGlzDQo+PiByZWplY3RlZC4gSSBjYW4gYWRkIG1vcmUgZGV0YWlscyBpZiBu ZWVkZWQuDQo+DQo+IEltIHByZXR0eSBzdXJlIGl0IGlzIHBvc3NpYmxlIHNpbmNlIGNocm9tZSBP UyBoYXMgZG9uZSBpdDoNCj4NCj4gaHR0cHM6Ly93d3cuYmx1ZXRvb3RoLm9yZy90cGcvUUxJX3Zp ZXdRREwuY2ZtP3FpZD0yMjMzMw0KPg0KPiBUaG91Z2ggSSBjYW4gc2VlIHRoZSBBVFQgb3ZlciBC Ui9FRFIgaXMgaW4gZmFjdCBtYW5kYXRvcnksIHRoZSBJQ1Mgc2F5czoNCj4NCj4gQy4xOiBNYW5k YXRvcnkgSUYgKFNVTSBJQ1MgMTIvMiDigJxCbHVldG9vdGggQmFzaWMgUmF0ZSBDb3JlIEhvc3QN Cj4gQ29uZmlndXJhdGlvbuKAnSBPUiBTVU0gSUNTIDEyLzkNCj4g4oCcQmx1ZXRvb3RoIEJhc2lj IFJhdGUgYW5kIExvdyBFbmVyZ3kgQ29tYmluZWQgQ29yZSBIb3N0DQo+IENvbmZpZ3VyYXRpb27i gJ0pIGlzIHN1cHBvcnRlZCwNCj4gb3RoZXJ3aXNlIEV4Y2x1ZGVkLg0KPg0KDQpJIGFtIHJlYWxs eSBsaWtlIGEgbmV3YmllIG9uIHRoaXMgc28gSSBoYXZlIHJlYWxseSBub3RoaW5nIHRvIGhlbHAg b24gDQp0aGF0IGFuZCBJIGNhbiBiZSBjb21wbGV0ZWx5IHdyb25nIHdpdGggbXkgY29tbWVudHMu IFRoYXQgbGluayB5b3Ugc2VuZCANCmlzIGFib3V0IDIwMTQsIGFuZCB0aGUgc3BlY2lmaWNhdGlv biB0YWxrcyBhYm91dCA0LjAuIFByb2JhYmx5IHRoZSANCmNlcnRpZmljYXRpb24gaGFzIGJlZW4g dXBkYXRlZCBmb3IgNC4yLiBJIHRoaW5rKD8pIHRoYXQgaWYgd2Ugd2VyZSA0LjAsIA0KdGhlbiB3 ZSBzaG91bGQgbm90IGJlIGFjY29tcGxpc2ggdGhhdCB0ZXN0IGNhc2UuDQoNCj4+IEN1cnJlbnRs eSB0aGUgd29ya2Fyb3VuZCB0aGF0IEkgYW0gZG9pbmcgaXMgcmVjb3JkIHRoZSB0eXBlIG9mDQo+ PiBjb25uZWN0aW9uIChMRSBvciBCUi9FRFIpIGFuZCByZXR1cm4gdGhlIGVycm9yIGNvZGUgZm9y IG9uZSBzcGVjaWZpYw0KPj4gY2hhcmFjdGVyaXN0aWMgKHRoYXQgSSByZWdpc3RlciBpbiBteSBn YXR0IHNlcnZlciBhcHBsaWNhdGlvbiksIHNvIEkNCj4+IGN1c3RvbWl6ZSBteSBhcHBsaWNhdGlv bi4gVGhlIGxhYiBkaWQgbm90IGNvbmZpcm0vZGlzbWlzcyBpdCB5ZXQsIGJ1dA0KPj4gaG9wZWZ1 bGx5IGl0IGlzIHdoYXQgdGhleSBuZWVkLg0KPg0KPiBBZmFpayBhbnkgc2VydmljZSBub3QgcmVn aXN0ZXJlZCBvdmVyIFNEUCBzaG91bGQgbm90IGJlIGF2YWlsYWJsZSBvdmVyDQo+IEJSL0VEUiwg d2hpY2ggaXMgcGVyaGFwcyB3aHkgdGhlIGN1cnJlbnQgY29kZSBvbmx5IGRvZXMgZXhwb3NlIEdB VFQNCj4gYW5kIEdBUCBzZXJ2aWNlLCBub3RoaW5nIGVsc2UuIE5vdyBJIGhhdmVuJ3QgZm91bmQg YW55dGhpbmcNCj4gcHJvaGliaXRpbmcgR0FUVCBkaXNjb3ZlcnkgdG8gaGFwcGVuIG92ZXIgQlIv RURSLCBqdXN0IGV4Y2hhbmdlIE1UVSwNCj4gYnV0IHRoZSBTRFAgc2VydmljZSBhbHJlYWR5IGNh cnJpZXMgdGhlIGhhbmRsZXMgd2hpY2ggSSBhc3N1bWUgaXMgd2hhdA0KPiBQVFMgdXNlcyBnaXZl biB0aGVyZSBhcmUgdGVzdHMgbGlrZToNCj4NCj4gNC40LjE1IFRQL0dBRC9TUi9CVi0wNy1DIFtE aXNjb3ZlciBQcmltYXJ5IFNlcnZpY2VzIHVzaW5nIFNEUCAtIGZyb20gU2VydmVyXQ0KPg0KDQpU aGF0IHdhcyB0aGUgcG9pbnQgdGhhdCBpbml0aWFsbHkgY29uZnVzZWQgbWUgYW5kIEkgZGlkIG5v dCB1bmRlcnN0YW5kIA0KdGhlIGNlcnQgbGFiLiBJIHRob3VnaCB0aGF0IEdBVFQvQVRUIHdhcyBv bmx5IExFLg0KDQpEZXRhaWxlZCBHQVRUL0FUVCBpbmZvcm1hdGlvbjogQmx1ZXRvb3RoIENvcmUg U3BlY2lmaWNhdGlvbiB2NS4wIA0KaHR0cHM6Ly93d3cuYmx1ZXRvb3RoLmNvbS9zcGVjaWZpY2F0 aW9ucy9ibHVldG9vdGgtY29yZS1zcGVjaWZpY2F0aW9uDQoNCkFjY29yZGluZyB0byB0aGlzIGRv Y3VtZW50IChwYWdlIDI1NCksIOKAmEdBVFQgYW5kIEFUVCBhcmUgbm90IHRyYW5zcG9ydCANCnNw ZWNpZmljIGFuZCBjYW4gYmUgdXNlZCBpbiBib3RoIEJSL0VEUiBhbmQgTEUuIEhvd2V2ZXIsIEdB VFQgYW5kIEFUVCANCmFyZSBtYW5kYXRvcnkgdG8gaW1wbGVtZW50IGluIExFIHNpbmNlIGl0IGlz IHVzZWQgZm9yIGRpc2NvdmVyaW5nIHNlcnZpY2VzLuKAmQ0KDQoNCj4gQW55d2F5LCB0aGUgZW5k IHJlc3VsdCBpcyB0aGF0IHdlIGNhbm5vdCBjb21wbGV0ZWx5IGRpc2FibGUgQVRUIG92ZXINCj4g QlIvRURSLCBhbmQgbWlnaHQgaGF2ZSB0byBwdXNoIHRoZSBiZWFyZXIgZGV0YWlscyB1cCB0byB0 aGUNCj4gYXBwbGljYXRpb24uDQo+DQoNCkluIGZhY3QsIEkgdGhpbmsgd2Ugc2hvdWxkIG5vdC4N Cg0KPiBOb3RlIHRoYXQgZXhwb3NpbmcgdGhlIGNvbm5lY3RlZCBiZWFyZXIgaXMgbm90IGVub3Vn aCBpbiBjYXNlIGEgZGV2aWNlDQo+IGNvbm5lY3RzIG92ZXIgYm90aCBiZWFyZXJzIHRoZSBhcHBs aWNhdGlvbiB3aWxsIGhhdmUgbm8gbWVhbnMgdG8NCj4gZGlzdGluZ3Vpc2ggaW4gd2hpY2ggYmVh cmVyIHRoZSBjb21tYW5kIGlzIGNvbWluZyBmcm9tLCB0aGlzIGFwcGVhcnMNCj4gdG8gYmUgYSBw cm9ibGVtIHRvIEFuZHJvaWQgSEFMIGFzIHdlbGw6DQo+DQo+IGh0dHBzOi8vYW5kcm9pZC5nb29n bGVzb3VyY2UuY29tL3BsYXRmb3JtL2hhcmR3YXJlL2xpYmhhcmR3YXJlLysvbWFzdGVyL2luY2x1 ZGUvaGFyZHdhcmUvYnRfZ2F0dF9zZXJ2ZXIuaCM3MQ0KPg0KPiBTbyBwcm9iYWJseSBldmVyeW9u ZSBpcyBwYXNzaW5nIHdpdGggYSBjdXN0b20gYXBwbGljYXRpb24gd2hpY2gNCj4gZGV0ZWN0cywg b3IgYXNrcyB0aGUgdXNlciBpbnB1dCwgd2hlbiB0byByZXR1cm4gYW4gZXJyb3IuDQo+DQoNClRo YXQgd2FzLCBpbiBmYWN0LCBvdXIgcHJvYmxlbSB0byBwYXNzIHRoaXMgY2VydGlmaWNhdGlvbiB0 ZXN0IGNhc2VzLiANCkFuZCBiYXNlZCB0aGF0IEkgZGlkIG5vdCBmaW5kIG90aGVyIHVzZXIgY29t cGxhaW5pbmcgYWJvdXQgdGhhdCwgSSANCmFzc3VtZSBpdCBpcyBzb21ldGhpbmcgIm5ldyIgb3Ig d2VsbCB0aGV5IHBhc3MgdGhlIHRlc3QgYnkgZG9pbmcgc29tZSANCmN1c3RvbSBhZGp1c3RtZW50 cy4NCg0KPj4gVGhhbmtzIGZvciB0aGUgc3VwcG9ydCBvbiB0aGlzIGlzc3VlLiBMZXQgbWUga25v dyBpZiBJIGNhbiBoZWxwIGluDQo+PiBhbnl0aGluZywgaWYgSSBuZWVkIHRvIHByb3ZpZGUgbW9y ZSBkZXRhaWxzLCBpZiB5b3Ugd2FudCBhIHJlcGx5IGluIHRoZQ0KPj4gcGF0Y2ggdGhyZWFkIG9y IGFueSBvdGhlciBzdHVmZi4NCj4+IFJlZ2FyZHMsDQo+PiAgICAgSXNhYWMNCj4= ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2017-10-09 12:00 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2017-09-28 16:43 how to advertise a GATT service only for LE or BR/EDR? Hermida, Isaac 2017-09-28 18:21 ` Luiz Augusto von Dentz 2017-09-29 6:44 ` Hermida, Isaac 2017-10-02 7:03 ` Hermida, Isaac 2017-10-02 16:00 ` Luiz Augusto von Dentz 2017-10-03 6:54 ` Hermida, Isaac 2017-10-04 15:43 ` Hermida, Isaac 2017-10-05 9:40 ` Luiz Augusto von Dentz 2017-10-09 10:21 ` Hermida, Isaac 2017-10-09 11:30 ` Luiz Augusto von Dentz 2017-10-09 12:00 ` Hermida, Isaac
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).