Return-Path: MIME-Version: 1.0 In-Reply-To: <1428098532-5257-1-git-send-email-jamuraa@chromium.org> References: <1428098532-5257-1-git-send-email-jamuraa@chromium.org> Date: Tue, 7 Apr 2015 18:07:23 +0300 Message-ID: Subject: Re: [BlueZ v10 00/12] Implement LE Advertisement D-Bus API From: Luiz Augusto von Dentz To: Michael Janssen Cc: "linux-bluetooth@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-bluetooth-owner@vger.kernel.org List-ID: Hi Michael, On Sat, Apr 4, 2015 at 1:02 AM, Michael Janssen wrote: > Implementation of the LE Advertisement D-Bus API. > > Things that are missing still: > * Semantics for multiple Advertisements (currently any more than one will fail) > * TX Power property parsing / interface > * Setting other Flags in the advertisement. > > v1 -> v2: > * Cleanup based on comments from Arman > * Add g_dbus_proxy_set_read_watch function to avoid ObjectManager dependency > * Consolidate script updates into single test script > > v2 -> v3: > * Change "ManufacturerSpecificData" to "ManufacturerData" > * Add advertisement-api.txt to EXTRA_DIST > * Add Release() callback to org.bluez.LEAdvertisement1 > * Remove IncludePower from the LEAdvertisement1 API > > v3 -> v4: > * Rename "g_dbus_proxy_set_read_watch" to "g_dbus_proxy_set_ready_watch" > > v4 -> v5: > * Rebase > * Use g_dbus_client_set_proxy_handlers instead of g_dbus_proxy_set_ready_watch > * Add MGMT interface calls to actually advertise. > > v5 -> v6: > * Minor patch cruft cleanup > * Rename btd_advertising_manager to btd_advertising and fix filename change. > > v6 -> v7: > * Rebase for included patches > * Rename ad structure to bt_ad > * Fixes for bt_ad_generate bugs > * Correctly error for invalid length > * Improvements so advertisement-example works out of the box > > v7 -> v8: > * Rebase > * Use eir.h constants instead of local constants > * Rename internal structures for brevity > * Add null checks > * Check for queue_* failures > * Address misc other comments > > v8 -> v9: > * Rebase > * Rephrase example-advertisement patch message > * Don't try to start LEAdvertisingManager when not in experimental > * Set MGMT flags correctly for peripheral vs. broadcast > * Fix memory leaks in refresh_advertisement > > v9 -> v10: > * Rebase > * Add length checks to bt_ad_add_service_data and bt_ad_add_manufacturer_data > * Use size_t where appropriate to avoid overflows > > Michael Janssen (12): > shared: add bt_ad structure > core/advertising: use bt_ad > core/advertising: Parse ServiceUUIDs > core/advertising: Parse SolicitUUIDs > core/advertising: Parse ManufacturerSpecificData > core/advertising: Parse ServiceData > Update TODO for LE Advertising > shared/ad: implement bt_ad_generate > core/advertising: Add and Remove AD using MGMT > test: improvements to example-advertisement > gdbus: Add g_dbus_get_flags function > core: Only start Advertising Manager when experimental > > Makefile.am | 1 + > TODO | 20 +- > gdbus/gdbus.h | 1 + > gdbus/object.c | 5 + > src/adapter.c | 18 +- > src/advertising.c | 325 ++++++++++++++++++++++++- > src/eir.h | 12 + > src/shared/ad.c | 589 +++++++++++++++++++++++++++++++++++++++++++++ > src/shared/ad.h | 60 +++++ > test/example-advertisement | 12 +- > 10 files changed, 1006 insertions(+), 37 deletions(-) > create mode 100644 src/shared/ad.c > create mode 100644 src/shared/ad.h > > -- > 2.2.0.rc0.207.ga3a616c Applied, thanks. Note that I did have to do some small fixup, remember to run git rebase --exec make next time to avoid breaking the build between patches. -- Luiz Augusto von Dentz