* [PATCH v2 01/15] android: Remove not needed local variable in connect_hal
From: Szymon Janc @ 2013-10-25 10:49 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
err variable was set but never read.
---
android/main.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/android/main.c b/android/main.c
index 50b5901..18dc9f7 100644
--- a/android/main.c
+++ b/android/main.c
@@ -239,12 +239,12 @@ static GIOChannel *connect_hal(GIOFunc connect_cb)
struct sockaddr_un addr;
GIOCondition cond;
GIOChannel *io;
- int err, sk;
+ int sk;
sk = socket(PF_LOCAL, SOCK_SEQPACKET, 0);
if (sk < 0) {
- err = errno;
- error("Failed to create socket: %d (%s)", err, strerror(err));
+ error("Failed to create socket: %d (%s)", errno,
+ strerror(errno));
return NULL;
}
@@ -258,9 +258,7 @@ static GIOChannel *connect_hal(GIOFunc connect_cb)
memcpy(addr.sun_path, BLUEZ_HAL_SK_PATH, sizeof(BLUEZ_HAL_SK_PATH));
- err = connect(sk, (struct sockaddr *) &addr, sizeof(addr));
- if (err < 0) {
- err = -errno;
+ if (connect(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
error("Failed to connect HAL socket: %d (%s)", errno,
strerror(errno));
g_io_channel_unref(io);
--
1.8.4.1
^ permalink raw reply related
* Re: [PATCH 1/2] android/client: Add source command to haltest
From: Luiz Augusto von Dentz @ 2013-10-25 10:36 UTC (permalink / raw)
To: Jerzy Kasenberg; +Cc: linux-bluetooth@vger.kernel.org
In-Reply-To: <1382618807-14605-2-git-send-email-jerzy.kasenberg@tieto.com>
Hi Jerzy,
On Thu, Oct 24, 2013 at 3:46 PM, Jerzy Kasenberg
<jerzy.kasenberg@tieto.com> wrote:
> New command allows to read script file into tool and
> execute its contents as if it was typed.
> ---
> android/client/haltest.c | 50 +++++++++++++++++++++++++++++++++++++++++++++-
> 1 file changed, 49 insertions(+), 1 deletion(-)
>
> diff --git a/android/client/haltest.c b/android/client/haltest.c
> index 189af0b..efed16e 100644
> --- a/android/client/haltest.c
> +++ b/android/client/haltest.c
> @@ -157,11 +157,47 @@ static void quit_p(int argc, const char **argv)
> exit(0);
> }
>
> +static int fd_stack[10];
> +static int fd_stack_pointer = 0;
> +
> +static void stdin_handler(struct pollfd *pollfd);
> +
> +static void process_file(const char *name)
> +{
> + int fd = open(name, O_RDONLY);
> +
> + if (fd == -1) {
> + haltest_error("Can't open file: %s for reading\n", name);
> + return;
> + }
Usually for int returns we check errors with < 0, so please change the
code above to follow this practice.
--
Luiz Augusto von Dentz
^ permalink raw reply
* Re: [PATCH] android/client: Fix incorrect casts of addresses
From: Luiz Augusto von Dentz @ 2013-10-25 10:34 UTC (permalink / raw)
To: Andrei Emeltchenko, Jerzy Kasenberg,
linux-bluetooth@vger.kernel.org
In-Reply-To: <20131025100821.GD6113@aemeltch-MOBL1>
Hi Jerzy,
On Fri, Oct 25, 2013 at 1:08 PM, Andrei Emeltchenko
<andrei.emeltchenko.news@gmail.com> wrote:
> Hi Jerzy,
>
> On Fri, Oct 25, 2013 at 11:50:22AM +0200, Jerzy Kasenberg wrote:
>> Hi Andrei,
>>
>> On 25 October 2013 11:32, Andrei Emeltchenko
>> <andrei.emeltchenko.news@gmail.com> wrote:
>> > Hi Jerzy,
>> >
>> > On Fri, Oct 25, 2013 at 10:51:10AM +0200, Jerzy Kasenberg wrote:
>> >> This fixes printing of addresses.
>> >> If char is set to be signed (as it should) some addresses were
>> >> printed with leading FFFFFF.
>> >> ---
>> >> This issue did not showed up before due to unsigned char for Android build
>> >> on Qualcomm platform.
>> >>
>> >> android/client/textconv.c | 4 ++--
>> >> 1 file changed, 2 insertions(+), 2 deletions(-)
>> >>
>> >> diff --git a/android/client/textconv.c b/android/client/textconv.c
>> >> index 1188477..bcdf4d9 100644
>> >> --- a/android/client/textconv.c
>> >> +++ b/android/client/textconv.c
>> >> @@ -137,7 +137,7 @@ int int2str_findstr(const char *str, const struct int2str m[])
>> >> */
>> >> char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
>> >> {
>> >> - const char *p = (const char *) bd_addr;
>> >> + const uint8_t *p = bd_addr->address;
>> >>
>> >> snprintf(buf, MAX_ADDR_STR_LEN, "%02x:%02x:%02x:%02x:%02x:%02x",
>> >> p[0], p[1], p[2], p[3], p[4], p[5]);
>> >
>> > is this correct order btw?
>>
>> Tool print same address for my mouse as I see printed on the mouse so
>> I guess it's correct.
>
> OK, those are addresses sent through HAL, they are in different format.
>
> Best regards
> Andrei Emeltchenko
>
>>
>> >
>> > Best regards
>> > Andrei Emeltchenko
>> >
>> >> @@ -148,7 +148,7 @@ char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
>> >> /* converts string to bt_bdaddr_t */
>> >> void str2bt_bdaddr_t(const char *str, bt_bdaddr_t *bd_addr)
>> >> {
>> >> - char *p = (char *) bd_addr;
>> >> + uint8_t *p = bd_addr->address;
>> >>
>> >> sscanf(str, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",
>> >> &p[0], &p[1], &p[2], &p[3], &p[4], &p[5]);
>> >> --
>> >> 1.7.9.5
>> >>
>> >> --
>> >> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
>> >> the body of a message to majordomo@vger.kernel.org
>> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>> --
>> Best regards
>> Jerzy
> --
Applied, please rebase since I had done a code style fix since
str2bt_bdaddr_t was mixing spaces with tabs.
--
Luiz Augusto von Dentz
^ permalink raw reply
* Re: [PATCH 06/15] android/hal: Add support for sending create bond command
From: Luiz Augusto von Dentz @ 2013-10-25 10:15 UTC (permalink / raw)
To: Andrei Emeltchenko, Szymon Janc, linux-bluetooth@vger.kernel.org
In-Reply-To: <20131025093616.GC6113@aemeltch-MOBL1>
Hi,
On Fri, Oct 25, 2013 at 12:36 PM, Andrei Emeltchenko
<andrei.emeltchenko.news@gmail.com> wrote:
> Hi Szymon,
>
> On Fri, Oct 25, 2013 at 10:56:09AM +0200, Szymon Janc wrote:
>> This allows HAL to start bonding.
>> ---
>> android/hal-bluetooth.c | 8 +++++---
>> 1 file changed, 5 insertions(+), 3 deletions(-)
>>
>> diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
>> index b81f8dd..6f7ef45 100644
>> --- a/android/hal-bluetooth.c
>> +++ b/android/hal-bluetooth.c
>> @@ -275,15 +275,17 @@ static int cancel_discovery(void)
>>
>> static int create_bond(const bt_bdaddr_t *bd_addr)
>> {
>> + struct hal_cmd_create_bond cmd;
>> +
>> DBG("");
>>
>> if (!interface_ready())
>> return BT_STATUS_NOT_READY;
>>
>> - if (!bd_addr)
>> - return BT_STATUS_PARM_INVALID;
>
> I think we can leave check here
If we are sure it will never be NULL then yes we can remove, otherwise leave it.
--
Luiz Augusto von Dentz
^ permalink raw reply
* Re: [PATCH] android: Cleanup error handling
From: Andrei Emeltchenko @ 2013-10-25 10:09 UTC (permalink / raw)
To: Luiz Augusto von Dentz; +Cc: linux-bluetooth@vger.kernel.org
In-Reply-To: <CABBYNZK4B5_3wP3Og=XWgohDV0UmdqZnBro-1Onv5gtJViNgKw@mail.gmail.com>
Hi Luiz,
On Fri, Oct 25, 2013 at 12:26:12PM +0300, Luiz Augusto von Dentz wrote:
> Hi Andrei,
>
> On Fri, Oct 25, 2013 at 11:43 AM, Andrei Emeltchenko
> <Andrei.Emeltchenko.news@gmail.com> wrote:
> > From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> >
> > Remove unneeded assignment err=errno and instead use errno directly.
> > ---
> > android/hal-ipc.c | 26 ++++++++++----------------
> > 1 file changed, 10 insertions(+), 16 deletions(-)
> >
> > diff --git a/android/hal-ipc.c b/android/hal-ipc.c
> > index 6566ebb..20421db 100644
> > --- a/android/hal-ipc.c
> > +++ b/android/hal-ipc.c
> > @@ -150,9 +150,8 @@ static int accept_connection(int sk)
> >
> > err = poll(&pfd, 1, CONNECT_TIMEOUT);
> > if (err < 0) {
> > - err = errno;
> > - error("Failed to poll: %d (%s)", err, strerror(err));
> > - return -1;
> > + error("Failed to poll: %d (%s)", errno, strerror(errno));
> > + return err;
> > }
> >
> > if (err == 0) {
> > @@ -161,11 +160,9 @@ static int accept_connection(int sk)
> > }
> >
> > new_sk = accept(sk, NULL, NULL);
> > - if (new_sk < 0) {
> > - err = errno;
> > - error("Failed to accept socket: %d (%s)", err, strerror(err));
> > - return -1;
> > - }
> > + if (new_sk < 0)
> > + error("Failed to accept socket: %d (%s)", errno,
> > + strerror(errno));
> >
> > return new_sk;
> > }
> > @@ -178,9 +175,8 @@ bool hal_ipc_init(void)
> >
> > sk = socket(AF_LOCAL, SOCK_SEQPACKET, 0);
> > if (sk < 0) {
> > - err = errno;
> > - error("Failed to create socket: %d (%s)", err,
> > - strerror(err));
> > + error("Failed to create socket: %d (%s)", errno,
> > + strerror(errno));
> > return false;
> > }
> >
> > @@ -190,16 +186,14 @@ bool hal_ipc_init(void)
> > memcpy(addr.sun_path, BLUEZ_HAL_SK_PATH, sizeof(BLUEZ_HAL_SK_PATH));
> >
> > if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
> > - err = errno;
> > - error("Failed to bind socket: %d (%s)", err, strerror(err));
> > + error("Failed to bind socket: %d (%s)", errno, strerror(errno));
> > close(sk);
> > return false;
> > }
> >
> > if (listen(sk, 2) < 0) {
> > - err = errno;
> > - error("Failed to listen on socket: %d (%s)", err,
> > - strerror(err));
> > + error("Failed to listen on socket: %d (%s)", errno,
> > + strerror(errno));
> > close(sk);
> > return false;
> > }
> > --
> > 1.7.10.4
>
> Since the HAL is running multiple threads Im afraid errno can be
> overwritten and at least strerror_r should be used instead or use %m
> that afaik should be thread safe.
I will check does bionic supports %m %d and send the path
Best regards
Andrei Emeltchenko
^ permalink raw reply
* Re: [PATCH] android/client: Fix incorrect casts of addresses
From: Andrei Emeltchenko @ 2013-10-25 10:08 UTC (permalink / raw)
To: Jerzy Kasenberg; +Cc: linux-bluetooth
In-Reply-To: <CAHCYCozKG2K+QOvX_2eYSD96DGikc-v9dK1VNtX81tLdFzXvXg@mail.gmail.com>
Hi Jerzy,
On Fri, Oct 25, 2013 at 11:50:22AM +0200, Jerzy Kasenberg wrote:
> Hi Andrei,
>
> On 25 October 2013 11:32, Andrei Emeltchenko
> <andrei.emeltchenko.news@gmail.com> wrote:
> > Hi Jerzy,
> >
> > On Fri, Oct 25, 2013 at 10:51:10AM +0200, Jerzy Kasenberg wrote:
> >> This fixes printing of addresses.
> >> If char is set to be signed (as it should) some addresses were
> >> printed with leading FFFFFF.
> >> ---
> >> This issue did not showed up before due to unsigned char for Android build
> >> on Qualcomm platform.
> >>
> >> android/client/textconv.c | 4 ++--
> >> 1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/android/client/textconv.c b/android/client/textconv.c
> >> index 1188477..bcdf4d9 100644
> >> --- a/android/client/textconv.c
> >> +++ b/android/client/textconv.c
> >> @@ -137,7 +137,7 @@ int int2str_findstr(const char *str, const struct int2str m[])
> >> */
> >> char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
> >> {
> >> - const char *p = (const char *) bd_addr;
> >> + const uint8_t *p = bd_addr->address;
> >>
> >> snprintf(buf, MAX_ADDR_STR_LEN, "%02x:%02x:%02x:%02x:%02x:%02x",
> >> p[0], p[1], p[2], p[3], p[4], p[5]);
> >
> > is this correct order btw?
>
> Tool print same address for my mouse as I see printed on the mouse so
> I guess it's correct.
OK, those are addresses sent through HAL, they are in different format.
Best regards
Andrei Emeltchenko
>
> >
> > Best regards
> > Andrei Emeltchenko
> >
> >> @@ -148,7 +148,7 @@ char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
> >> /* converts string to bt_bdaddr_t */
> >> void str2bt_bdaddr_t(const char *str, bt_bdaddr_t *bd_addr)
> >> {
> >> - char *p = (char *) bd_addr;
> >> + uint8_t *p = bd_addr->address;
> >>
> >> sscanf(str, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",
> >> &p[0], &p[1], &p[2], &p[3], &p[4], &p[5]);
> >> --
> >> 1.7.9.5
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
> --
> Best regards
> Jerzy
^ permalink raw reply
* Re: [PATCH] android/client: Fix incorrect casts of addresses
From: Jerzy Kasenberg @ 2013-10-25 9:50 UTC (permalink / raw)
To: Andrei Emeltchenko, Jerzy Kasenberg, linux-bluetooth
In-Reply-To: <20131025093227.GB6113@aemeltch-MOBL1>
Hi Andrei,
On 25 October 2013 11:32, Andrei Emeltchenko
<andrei.emeltchenko.news@gmail.com> wrote:
> Hi Jerzy,
>
> On Fri, Oct 25, 2013 at 10:51:10AM +0200, Jerzy Kasenberg wrote:
>> This fixes printing of addresses.
>> If char is set to be signed (as it should) some addresses were
>> printed with leading FFFFFF.
>> ---
>> This issue did not showed up before due to unsigned char for Android build
>> on Qualcomm platform.
>>
>> android/client/textconv.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/android/client/textconv.c b/android/client/textconv.c
>> index 1188477..bcdf4d9 100644
>> --- a/android/client/textconv.c
>> +++ b/android/client/textconv.c
>> @@ -137,7 +137,7 @@ int int2str_findstr(const char *str, const struct int2str m[])
>> */
>> char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
>> {
>> - const char *p = (const char *) bd_addr;
>> + const uint8_t *p = bd_addr->address;
>>
>> snprintf(buf, MAX_ADDR_STR_LEN, "%02x:%02x:%02x:%02x:%02x:%02x",
>> p[0], p[1], p[2], p[3], p[4], p[5]);
>
> is this correct order btw?
Tool print same address for my mouse as I see printed on the mouse so
I guess it's correct.
>
> Best regards
> Andrei Emeltchenko
>
>> @@ -148,7 +148,7 @@ char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
>> /* converts string to bt_bdaddr_t */
>> void str2bt_bdaddr_t(const char *str, bt_bdaddr_t *bd_addr)
>> {
>> - char *p = (char *) bd_addr;
>> + uint8_t *p = bd_addr->address;
>>
>> sscanf(str, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",
>> &p[0], &p[1], &p[2], &p[3], &p[4], &p[5]);
>> --
>> 1.7.9.5
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Best regards
Jerzy
^ permalink raw reply
* Re: [PATCH 06/15] android/hal: Add support for sending create bond command
From: Andrei Emeltchenko @ 2013-10-25 9:36 UTC (permalink / raw)
To: Szymon Janc; +Cc: linux-bluetooth
In-Reply-To: <1382691378-31940-6-git-send-email-szymon.janc@tieto.com>
Hi Szymon,
On Fri, Oct 25, 2013 at 10:56:09AM +0200, Szymon Janc wrote:
> This allows HAL to start bonding.
> ---
> android/hal-bluetooth.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
> index b81f8dd..6f7ef45 100644
> --- a/android/hal-bluetooth.c
> +++ b/android/hal-bluetooth.c
> @@ -275,15 +275,17 @@ static int cancel_discovery(void)
>
> static int create_bond(const bt_bdaddr_t *bd_addr)
> {
> + struct hal_cmd_create_bond cmd;
> +
> DBG("");
>
> if (!interface_ready())
> return BT_STATUS_NOT_READY;
>
> - if (!bd_addr)
> - return BT_STATUS_PARM_INVALID;
I think we can leave check here
Best regards
Andrei Emeltchenko
> + memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
>
> - return BT_STATUS_UNSUPPORTED;
> + return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_CREATE_BOND,
> + sizeof(cmd), &cmd, 0, NULL, NULL);
> }
>
> static int cancel_bond(const bt_bdaddr_t *bd_addr)
> --
> 1.8.4.1
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply
* Re: [PATCH] android/client: Fix incorrect casts of addresses
From: Andrei Emeltchenko @ 2013-10-25 9:32 UTC (permalink / raw)
To: Jerzy Kasenberg; +Cc: linux-bluetooth
In-Reply-To: <1382691070-24358-1-git-send-email-jerzy.kasenberg@tieto.com>
Hi Jerzy,
On Fri, Oct 25, 2013 at 10:51:10AM +0200, Jerzy Kasenberg wrote:
> This fixes printing of addresses.
> If char is set to be signed (as it should) some addresses were
> printed with leading FFFFFF.
> ---
> This issue did not showed up before due to unsigned char for Android build
> on Qualcomm platform.
>
> android/client/textconv.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/android/client/textconv.c b/android/client/textconv.c
> index 1188477..bcdf4d9 100644
> --- a/android/client/textconv.c
> +++ b/android/client/textconv.c
> @@ -137,7 +137,7 @@ int int2str_findstr(const char *str, const struct int2str m[])
> */
> char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
> {
> - const char *p = (const char *) bd_addr;
> + const uint8_t *p = bd_addr->address;
>
> snprintf(buf, MAX_ADDR_STR_LEN, "%02x:%02x:%02x:%02x:%02x:%02x",
> p[0], p[1], p[2], p[3], p[4], p[5]);
is this correct order btw?
Best regards
Andrei Emeltchenko
> @@ -148,7 +148,7 @@ char *bt_bdaddr_t2str(const bt_bdaddr_t *bd_addr, char *buf)
> /* converts string to bt_bdaddr_t */
> void str2bt_bdaddr_t(const char *str, bt_bdaddr_t *bd_addr)
> {
> - char *p = (char *) bd_addr;
> + uint8_t *p = bd_addr->address;
>
> sscanf(str, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",
> &p[0], &p[1], &p[2], &p[3], &p[4], &p[5]);
> --
> 1.7.9.5
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply
* Re: [PATCH] android: Cleanup error handling
From: Luiz Augusto von Dentz @ 2013-10-25 9:26 UTC (permalink / raw)
To: Andrei Emeltchenko; +Cc: linux-bluetooth@vger.kernel.org
In-Reply-To: <1382690606-20721-1-git-send-email-Andrei.Emeltchenko.news@gmail.com>
Hi Andrei,
On Fri, Oct 25, 2013 at 11:43 AM, Andrei Emeltchenko
<Andrei.Emeltchenko.news@gmail.com> wrote:
> From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
>
> Remove unneeded assignment err=errno and instead use errno directly.
> ---
> android/hal-ipc.c | 26 ++++++++++----------------
> 1 file changed, 10 insertions(+), 16 deletions(-)
>
> diff --git a/android/hal-ipc.c b/android/hal-ipc.c
> index 6566ebb..20421db 100644
> --- a/android/hal-ipc.c
> +++ b/android/hal-ipc.c
> @@ -150,9 +150,8 @@ static int accept_connection(int sk)
>
> err = poll(&pfd, 1, CONNECT_TIMEOUT);
> if (err < 0) {
> - err = errno;
> - error("Failed to poll: %d (%s)", err, strerror(err));
> - return -1;
> + error("Failed to poll: %d (%s)", errno, strerror(errno));
> + return err;
> }
>
> if (err == 0) {
> @@ -161,11 +160,9 @@ static int accept_connection(int sk)
> }
>
> new_sk = accept(sk, NULL, NULL);
> - if (new_sk < 0) {
> - err = errno;
> - error("Failed to accept socket: %d (%s)", err, strerror(err));
> - return -1;
> - }
> + if (new_sk < 0)
> + error("Failed to accept socket: %d (%s)", errno,
> + strerror(errno));
>
> return new_sk;
> }
> @@ -178,9 +175,8 @@ bool hal_ipc_init(void)
>
> sk = socket(AF_LOCAL, SOCK_SEQPACKET, 0);
> if (sk < 0) {
> - err = errno;
> - error("Failed to create socket: %d (%s)", err,
> - strerror(err));
> + error("Failed to create socket: %d (%s)", errno,
> + strerror(errno));
> return false;
> }
>
> @@ -190,16 +186,14 @@ bool hal_ipc_init(void)
> memcpy(addr.sun_path, BLUEZ_HAL_SK_PATH, sizeof(BLUEZ_HAL_SK_PATH));
>
> if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
> - err = errno;
> - error("Failed to bind socket: %d (%s)", err, strerror(err));
> + error("Failed to bind socket: %d (%s)", errno, strerror(errno));
> close(sk);
> return false;
> }
>
> if (listen(sk, 2) < 0) {
> - err = errno;
> - error("Failed to listen on socket: %d (%s)", err,
> - strerror(err));
> + error("Failed to listen on socket: %d (%s)", errno,
> + strerror(errno));
> close(sk);
> return false;
> }
> --
> 1.7.10.4
Since the HAL is running multiple threads Im afraid errno can be
overwritten and at least strerror_r should be used instead or use %m
that afaik should be thread safe.
--
Luiz Augusto von Dentz
^ permalink raw reply
* [PATCH] android/client: Fix crash in tab completion
From: Jerzy Kasenberg @ 2013-10-25 9:15 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Jerzy Kasenberg
When user pressed tab on third or later argument when
first two did not make sense tool crashed.
Now method is checked for NULL before accessing help field.
---
android/client/tabcompletion.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/android/client/tabcompletion.c b/android/client/tabcompletion.c
index 69af609..20d1e65 100644
--- a/android/client/tabcompletion.c
+++ b/android/client/tabcompletion.c
@@ -314,7 +314,8 @@ static void param_completion(int argc, const split_arg_t *arg,
const split_arg_t *tmp = arg;
struct command_completion_args args = {
.arg = arg,
- .func = return_null
+ .func = return_null,
+ .user_help = NULL
};
/* prepare standard argv from arg */
@@ -326,13 +327,13 @@ static void param_completion(int argc, const split_arg_t *arg,
if (method != NULL && method->complete != NULL) {
/* ask method for completion function */
method->complete(argc, argv, &args.func, &args.user);
+ args.user_help = (void *) method->help;
}
/* If method provided enumeration function call try to complete */
if (args.func != NULL) {
args.typed = argv[argc - 1];
args.help = method_help;
- args.user_help = (void *) method->help;
tab_completion(&args);
}
--
1.7.9.5
^ permalink raw reply related
* [PATCH 15/15] android: Add initial support for handling adapter get property command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
Support for HAL_BT_PROP_BDADDR property only.
---
android/adapter.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 50 insertions(+)
diff --git a/android/adapter.c b/android/adapter.c
index 5837e99..e6791e7 100644
--- a/android/adapter.c
+++ b/android/adapter.c
@@ -322,6 +322,49 @@ static bool set_mode(uint16_t opcode, uint8_t mode)
return false;
}
+static void send_adapter_name(void)
+{
+ struct hal_ev_adapter_props_changed *ev;
+ int len;
+
+ len = sizeof(*ev) + sizeof(struct hal_property) + sizeof(bdaddr_t);
+
+ ev = g_malloc(len);
+
+ ev->num_props = 1;
+ ev->status = HAL_ERROR_SUCCESS;
+
+ ev->props[0].type = HAL_BT_PROP_BDADDR;
+ ev->props[0].len = sizeof(bdaddr_t);
+ baswap((bdaddr_t *) ev->props[0].val, &adapter->bdaddr);
+
+ ipc_send(notification_io, HAL_SERVICE_ID_BLUETOOTH,
+ HAL_EV_ADAPTER_PROPS_CHANGED, len, ev, -1);
+
+ g_free(ev);
+}
+
+static bool get_property(void *buf, uint16_t len)
+{
+ struct hal_cmd_get_adapter_prop *cmd = buf;
+
+ switch (cmd->type) {
+ case HAL_BT_PROP_BDADDR:
+ send_adapter_name();
+ return true;
+ case HAL_BT_PROP_BDNAME:
+ case HAL_BT_PROP_UUIDS:
+ case HAL_BT_PROP_CLASS_OF_DEVICE:
+ case HAL_BT_PROP_TYPE_OF_DEVICE:
+ case HAL_BT_PROP_SERVICE_RECORD:
+ case HAL_BT_PROP_ADP_SCAN_MODE:
+ case HAL_BT_PROP_ADP_BONDED_DEVICES:
+ case HAL_BT_PROP_ADP_DISC_TIMEOUT:
+ default:
+ return false;
+ }
+}
+
void bt_adapter_handle_cmd(GIOChannel *io, uint8_t opcode, void *buf,
uint16_t len)
{
@@ -352,6 +395,13 @@ void bt_adapter_handle_cmd(GIOChannel *io, uint8_t opcode, void *buf,
return;
}
break;
+ case HAL_OP_GET_ADAPTER_PROP:
+ if (get_property(buf, len)) {
+ ipc_send(io, HAL_SERVICE_ID_BLUETOOTH, opcode, 0, NULL,
+ -1);
+ return;
+ }
+ break;
default:
DBG("Unhandled command, opcode 0x%x", opcode);
break;
--
1.8.4.1
^ permalink raw reply related
* [PATCH 14/15] android: Add missing success status definition to IPC header
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This is used in HAL callbacks to indicate success.
---
android/hal-msg.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/android/hal-msg.h b/android/hal-msg.h
index f6c9e22..089f1d6 100644
--- a/android/hal-msg.h
+++ b/android/hal-msg.h
@@ -49,6 +49,7 @@ struct hal_hdr {
/* Core Service */
+#define HAL_ERROR_SUCCESS 0x00
#define HAL_ERROR_FAILED 0x01
#define HAL_ERROR_NOT_READY 0x02
#define HAL_ERROR_NOMEM 0x03
--
1.8.4.1
^ permalink raw reply related
* [PATCH 13/15] android/hal: Add support for handling adapter properties change event
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
---
android/hal-bluetooth.c | 34 ++++++++++++++++++++++++++++++++++
1 file changed, 34 insertions(+)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index eb400ee..9c7fbea 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -35,6 +35,37 @@ static void handle_adapter_state_changed(void *buf)
bt_hal_cbacks->adapter_state_changed_cb(ev->state);
}
+static void handle_adapter_props_changed(void *buf, uint16_t len)
+{
+ struct hal_ev_adapter_props_changed *ev = buf;
+ bt_property_t props[ev->num_props];
+ struct hal_property *hal_prop;
+ void *p;
+ int i;
+
+ if (!bt_hal_cbacks->adapter_properties_cb)
+ return;
+
+ hal_prop = ev->props;
+ p = ev->props;
+
+ for (i = 0; i < ev->num_props; i++) {
+ if (p + sizeof(*hal_prop) + hal_prop->len > buf + len) {
+ error("invalid adapter properties event, aborting");
+ exit(EXIT_FAILURE);
+ }
+
+ props[i].type = hal_prop->type;
+ props[i].len = hal_prop->len;
+ props[i].val = hal_prop->val;
+
+ p += sizeof(*hal_prop) + hal_prop->len;
+ hal_prop = p;
+ }
+
+ bt_hal_cbacks->adapter_properties_cb(ev->status, ev->num_props, props);
+}
+
/* will be called from notification thread context */
void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
{
@@ -45,6 +76,9 @@ void bt_notify_adapter(uint16_t opcode, void *buf, uint16_t len)
case HAL_EV_ADAPTER_STATE_CHANGED:
handle_adapter_state_changed(buf);
break;
+ case HAL_EV_ADAPTER_PROPS_CHANGED:
+ handle_adapter_props_changed(buf, len);
+ break;
default:
DBG("Unhandled callback opcode=0x%x", opcode);
break;
--
1.8.4.1
^ permalink raw reply related
* [PATCH 12/15] android/hal: Add support for sending adapter SSP reply command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to reply to SSP request.
---
android/hal-bluetooth.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 6835db3..eb400ee 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -340,15 +340,21 @@ static int pin_reply(const bt_bdaddr_t *bd_addr, uint8_t accept,
static int ssp_reply(const bt_bdaddr_t *bd_addr, bt_ssp_variant_t variant,
uint8_t accept, uint32_t passkey)
{
+ struct hal_cmd_ssp_reply cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- if (!bd_addr)
- return BT_STATUS_PARM_INVALID;
+ memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
+ /* type match IPC type */
+ cmd.ssp_variant = variant;
+ cmd.accept = accept;
+ cmd.passkey = passkey;
- return BT_STATUS_UNSUPPORTED;
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_SSP_REPLY,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static const void *get_profile_interface(const char *profile_id)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 11/15] android: Add missing SSP variant definitions to IPC header
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
---
android/hal-msg.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/android/hal-msg.h b/android/hal-msg.h
index 7689f38..f6c9e22 100644
--- a/android/hal-msg.h
+++ b/android/hal-msg.h
@@ -169,6 +169,11 @@ struct hal_cmd_pin_reply {
uint8_t pin_code[16];
} __attribute__((packed));
+#define HAL_BT_SSP_VARIANT_CONFIRM 0x00
+#define HAL_BT_SSP_VARIANT_ENTRY 0x01
+#define HAL_BT_SSP_VARIANT_CONSENT 0x02
+#define HAL_BT_SSP_VARIANT_NOTIF 0x03
+
#define HAL_OP_SSP_REPLY 0x11
struct hal_cmd_ssp_reply {
uint8_t bdaddr[6];
--
1.8.4.1
^ permalink raw reply related
* [PATCH 10/15] android: Add missing SSP Variant definitions to IPC document
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
Those are used to specify SSP association model.
---
android/hal-ipc-api.txt | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/android/hal-ipc-api.txt b/android/hal-ipc-api.txt
index a5437c1..0c2fd25 100644
--- a/android/hal-ipc-api.txt
+++ b/android/hal-ipc-api.txt
@@ -281,6 +281,11 @@ Commands and responses:
Passkey (4 octets)
Response parameters: <none>
+ Valid SSP variant values: 0x00 = Passkey Confirmation
+ 0x01 = Passkey Entry
+ 0x02 = Consent (for Just Works)
+ 0x03 = Passkey Notification
+
In case of an error, the error response will be returned.
Opcode 0x12 - DUT Mode Configure command/response
--
1.8.4.1
^ permalink raw reply related
* [PATCH 09/15] android/hal: Add support for sending adapter PIN reply command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to reply to PIN code request.
---
android/hal-bluetooth.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index ca443a6..6835db3 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -321,12 +321,20 @@ static int remove_bond(const bt_bdaddr_t *bd_addr)
static int pin_reply(const bt_bdaddr_t *bd_addr, uint8_t accept,
uint8_t pin_len, bt_pin_code_t *pin_code)
{
+ struct hal_cmd_pin_reply cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- return BT_STATUS_UNSUPPORTED;
+ memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
+ cmd.accept = accept;
+ cmd.pin_len = pin_len;
+ memcpy(cmd.pin_code, pin_code, sizeof(cmd.pin_code));
+
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_PIN_REPLY,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static int ssp_reply(const bt_bdaddr_t *bd_addr, bt_ssp_variant_t variant,
--
1.8.4.1
^ permalink raw reply related
* [PATCH 08/15] android/hal: Add support for sending adapter remove bond command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to remove bonding.
---
android/hal-bluetooth.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index ebaa877..ca443a6 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -305,12 +305,17 @@ static int cancel_bond(const bt_bdaddr_t *bd_addr)
static int remove_bond(const bt_bdaddr_t *bd_addr)
{
+ struct hal_cmd_remove_bond cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- return BT_STATUS_UNSUPPORTED;
+ memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
+
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_REMOVE_BOND,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static int pin_reply(const bt_bdaddr_t *bd_addr, uint8_t accept,
--
1.8.4.1
^ permalink raw reply related
* [PATCH 07/15] android/hal: Add support for sending cancel bond command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to cancel pending bonding.
---
android/hal-bluetooth.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 6f7ef45..ebaa877 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -290,12 +290,17 @@ static int create_bond(const bt_bdaddr_t *bd_addr)
static int cancel_bond(const bt_bdaddr_t *bd_addr)
{
+ struct hal_cmd_cancel_bond cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- return BT_STATUS_UNSUPPORTED;
+ memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
+
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_CANCEL_BOND,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static int remove_bond(const bt_bdaddr_t *bd_addr)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 06/15] android/hal: Add support for sending create bond command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to start bonding.
---
android/hal-bluetooth.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index b81f8dd..6f7ef45 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -275,15 +275,17 @@ static int cancel_discovery(void)
static int create_bond(const bt_bdaddr_t *bd_addr)
{
+ struct hal_cmd_create_bond cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- if (!bd_addr)
- return BT_STATUS_PARM_INVALID;
+ memcpy(cmd.bdaddr, bd_addr, sizeof(cmd.bdaddr));
- return BT_STATUS_UNSUPPORTED;
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_CREATE_BOND,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static int cancel_bond(const bt_bdaddr_t *bd_addr)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 05/15] android/hal: Add support for sending adapter get properties command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to get all adapter properties.
---
android/hal-bluetooth.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index a71de83..b81f8dd 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -138,7 +138,8 @@ static int get_adapter_properties(void)
if (!interface_ready())
return BT_STATUS_NOT_READY;
- return BT_STATUS_UNSUPPORTED;
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_GET_ADAPTER_PROPS,
+ 0, NULL, 0, NULL, NULL);
}
static int get_adapter_property(bt_property_type_t type)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 04/15] android/hal: Add support for sending adapter get property command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to get adapter property.
---
android/hal-bluetooth.c | 23 ++++++++++++++++++++++-
1 file changed, 22 insertions(+), 1 deletion(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index aae6078..a71de83 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -143,12 +143,33 @@ static int get_adapter_properties(void)
static int get_adapter_property(bt_property_type_t type)
{
+ struct hal_cmd_get_adapter_prop cmd;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- return BT_STATUS_UNSUPPORTED;
+ switch (type) {
+ case BT_PROPERTY_BDNAME:
+ case BT_PROPERTY_BDADDR:
+ case BT_PROPERTY_UUIDS:
+ case BT_PROPERTY_CLASS_OF_DEVICE:
+ case BT_PROPERTY_TYPE_OF_DEVICE:
+ case BT_PROPERTY_SERVICE_RECORD:
+ case BT_PROPERTY_ADAPTER_SCAN_MODE:
+ case BT_PROPERTY_ADAPTER_BONDED_DEVICES:
+ case BT_PROPERTY_ADAPTER_DISCOVERY_TIMEOUT:
+ break;
+ default:
+ return BT_STATUS_PARM_INVALID;
+ }
+
+ /* type match IPC type */
+ cmd.type = type;
+
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_GET_ADAPTER_PROP,
+ sizeof(cmd), &cmd, 0, NULL, NULL);
}
static int set_adapter_property(const bt_property_t *property)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 03/15] android/hal: Add support for sending adapter set property command
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
This allows HAL to set adapter property.
---
android/hal-bluetooth.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/android/hal-bluetooth.c b/android/hal-bluetooth.c
index 6e28c91..aae6078 100644
--- a/android/hal-bluetooth.c
+++ b/android/hal-bluetooth.c
@@ -153,15 +153,30 @@ static int get_adapter_property(bt_property_type_t type)
static int set_adapter_property(const bt_property_t *property)
{
+ char buf[sizeof(struct hal_cmd_set_adapter_prop) + property->len];
+ struct hal_cmd_set_adapter_prop *cmd = (void *) buf;
+
DBG("");
if (!interface_ready())
return BT_STATUS_NOT_READY;
- if (property == NULL)
+ switch (property->type) {
+ case BT_PROPERTY_BDNAME:
+ case BT_PROPERTY_ADAPTER_SCAN_MODE:
+ case BT_PROPERTY_ADAPTER_DISCOVERY_TIMEOUT:
+ break;
+ default:
return BT_STATUS_PARM_INVALID;
+ }
- return BT_STATUS_UNSUPPORTED;
+ /* type match IPC type */
+ cmd->type = property->type;
+ cmd->len = property->len;
+ memcpy(cmd->val, property->val, property->len);
+
+ return hal_ipc_cmd(HAL_SERVICE_ID_BLUETOOTH, HAL_OP_SET_ADAPTER_PROP,
+ sizeof(buf), cmd, 0, NULL, NULL);
}
static int get_remote_device_properties(bt_bdaddr_t *remote_addr)
--
1.8.4.1
^ permalink raw reply related
* [PATCH 02/15] android: Add properties defines to hal-msg.h
From: Szymon Janc @ 2013-10-25 8:56 UTC (permalink / raw)
To: linux-bluetooth; +Cc: Szymon Janc
In-Reply-To: <1382691378-31940-1-git-send-email-szymon.janc@tieto.com>
HAL_BT_PROP_ADP_* are specific to adapter. HAL_BT_PROP_REM_* are
specific to remote device. Rest is common.
---
android/hal-msg.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/android/hal-msg.h b/android/hal-msg.h
index 854e9b8..7689f38 100644
--- a/android/hal-msg.h
+++ b/android/hal-msg.h
@@ -91,6 +91,20 @@ struct hal_cmd_get_adapter_prop {
uint8_t type;
} __attribute__((packed));
+#define HAL_BT_PROP_BDNAME 0x01
+#define HAL_BT_PROP_BDADDR 0x02
+#define HAL_BT_PROP_UUIDS 0x03
+#define HAL_BT_PROP_CLASS_OF_DEVICE 0x04
+#define HAL_BT_PROP_TYPE_OF_DEVICE 0x05
+#define HAL_BT_PROP_SERVICE_RECORD 0x06
+#define HAL_BT_PROP_ADP_SCAN_MODE 0x07
+#define HAL_BT_PROP_ADP_BONDED_DEVICES 0x08
+#define HAL_BT_PROP_ADP_DISC_TIMEOUT 0x09
+#define HAL_BT_PROP_REM_FRIENDLY_NAME 0x0a
+#define HAL_BT_PROP_REM_RSSI 0x0b
+#define HAL_BT_PROP_REM_VERSION_INFO 0x0c
+#define HAL_BT_PROP_REM_DEV_TIMESTAMP 0xFF
+
#define HAL_OP_SET_ADAPTER_PROP 0x05
struct hal_cmd_set_adapter_prop {
uint8_t type;
--
1.8.4.1
^ permalink raw reply related
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox