From: Andrei Emeltchenko <andrei.emeltchenko.news@gmail.com>
To: Marcel Holtmann <marcel@holtmann.org>
Cc: linux-bluetooth@vger.kernel.org
Subject: Re: [PATCHv3 08/15] android: Add adapter and device struct for BlueZ daemon
Date: Thu, 10 Oct 2013 15:36:39 +0300 [thread overview]
Message-ID: <20131010123638.GL23879@aemeltch-MOBL1> (raw)
In-Reply-To: <02A1A12C-50FA-4B1E-A85F-979EE842C2D4@holtmann.org>
On Wed, Oct 09, 2013 at 09:39:34PM +0200, Marcel Holtmann wrote:
> Hi Andrei,
>
> > Adapter structure in BlueZ daemon keeps track of default adapter
> > and device structure keeps track about found devices.
> > ---
> > android/bt_adapter.c | 56 ++++++++++++++++++++++++++++++++++++++++++++++
> > android/bt_adapter.h | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++
> > 2 files changed, 116 insertions(+)
> > create mode 100644 android/bt_adapter.c
> > create mode 100644 android/bt_adapter.h
> >
> > diff --git a/android/bt_adapter.c b/android/bt_adapter.c
> > new file mode 100644
> > index 0000000..e21d50c
> > --- /dev/null
> > +++ b/android/bt_adapter.c
> > @@ -0,0 +1,56 @@
> > +/*
> > + *
> > + * BlueZ - Bluetooth protocol stack for Linux
> > + *
> > + * Copyright (C) 2013 Intel Corporation. All rights reserved.
> > + *
> > + *
> > + * This program is free software; you can redistribute it and/or modify
> > + * it under the terms of the GNU General Public License as published by
> > + * the Free Software Foundation; either version 2 of the License, or
> > + * (at your option) any later version.
> > + *
> > + * This program is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > + * GNU General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU General Public License
> > + * along with this program; if not, write to the Free Software
> > + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
> > + *
> > + */
> > +
> > +#include "bt_adapter.h"
>
> the include of its own header should always be the last one. Never the first one.
>
>
> > +#include "log.h"
> > +#include "src/shared/mgmt.h"
> > +
> > +struct bt_adapter *bt_adapter_new(uint16_t index, struct mgmt *mgmt_if)
> > +{
> > + struct bt_adapter *adapter;
> > +
> > + adapter = g_try_new0(struct bt_adapter, 1);
> > + if (!adapter)
> > + return NULL;
>
> Since this all brand new code, use g_new0 and we just exit on memory allocation failures for our own data structures.
>
Do you mean exit(1)?
> > +
> > + adapter->dev_id = index;
> > + adapter->mgmt = mgmt_ref(mgmt_if);
> > +
> > + return adapter;
> > +}
> > +
> > +void adapter_start(struct bt_adapter *adapter)
>
> Why does this now have no bt_ prefix?
>
> > +{
> > + DBG("enabled %u", adapter->dev_id);
> > +
> > + /* TODO: CB: report scan mode */
> > +
> > + /* TODO: SDP start here */
> > +
> > + /* TODO: CB: report state on */
> > +}
> > +
> > +void adapter_stop(struct bt_adapter *adapter)
> > +{
> > + DBG("disabled %u", adapter->dev_id);
> > +}
> > diff --git a/android/bt_adapter.h b/android/bt_adapter.h
> > new file mode 100644
> > index 0000000..6877cc7
> > --- /dev/null
> > +++ b/android/bt_adapter.h
> > @@ -0,0 +1,60 @@
> > +/*
> > + *
> > + * BlueZ - Bluetooth protocol stack for Linux
> > + *
> > + * Copyright (C) 2013 Intel Corporation. All rights reserved.
> > + *
> > + *
> > + * This program is free software; you can redistribute it and/or modify
> > + * it under the terms of the GNU General Public License as published by
> > + * the Free Software Foundation; either version 2 of the License, or
> > + * (at your option) any later version.
> > + *
> > + * This program is distributed in the hope that it will be useful,
> > + * but WITHOUT ANY WARRANTY; without even the implied warranty of
> > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> > + * GNU General Public License for more details.
> > + *
> > + * You should have received a copy of the GNU General Public License
> > + * along with this program; if not, write to the Free Software
> > + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
> > + *
> > + */
> > +
> > +#include <stdio.h>
> > +#include <stdlib.h>
> > +#include <unistd.h>
> > +#include <glib.h>
> > +
> > +#include "lib/bluetooth.h"
> > +
> > +struct bt_device {
> > + int refcnt;
> > +
> > + bdaddr_t bdaddr;
> > + uint8_t bdaddr_type;
> > + uint32_t cod;
> > + char *name;
> > +};
>
> Why is bt_device declared in bt_adapter.
> And why are these public in the first place. Please hide these details.
So do you want it to be added in main.c? Those structs are public also in
BlueZ.
Best regards
Andrei Emeltchenko
next prev parent reply other threads:[~2013-10-10 12:36 UTC|newest]
Thread overview: 91+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-07 7:38 [PATCHv1 00/15] Basic code for Android BlueZ Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 01/15] android: Supress missing initializers warnings Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 02/15] android: Add Adapter Bluetooth HAL template Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 03/15] android: Add Socket " Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 04/15] android: Enable Socket interface Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 05/15] android: Start Android Bluetooth daemon Andrei Emeltchenko
2013-10-07 12:09 ` Szymon Janc
2013-10-07 7:38 ` [PATCHv1 06/15] android: Add basic mgmt initialization sequence Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 07/15] android: Create HAL API header skeleton Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 08/15] android: Add adapter and device struct for BlueZ daemon Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 09/15] android: Add Android Makefile for libbluetooth Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 10/15] android: sdp: Reuse BlueZ SDP server in Android Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 11/15] android: Add cap to bind to port < 1024 Andrei Emeltchenko
2013-10-07 12:14 ` Szymon Janc
2013-10-07 7:38 ` [PATCHv1 12/15] android: Implement read_info_complete callback Andrei Emeltchenko
2013-10-07 12:26 ` Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 13/15] android: Handle mgmt changed events Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 14/15] android: Add makefile for hciconfig Andrei Emeltchenko
2013-10-07 7:38 ` [PATCHv1 15/15] android: Add makefile for hcitool Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 00/15] Basic code for Android BlueZ Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 01/15] android: Supress missing initializers warnings Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 02/15] android: Add Adapter Bluetooth HAL template Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 03/15] android: Add Socket " Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 04/15] android: Enable Socket interface Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 05/15] android: Start Android Bluetooth daemon Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 06/15] android: Add basic mgmt initialization sequence Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 07/15] android: Create HAL API header skeleton Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 08/15] android: Add adapter and device struct for BlueZ daemon Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 09/15] android: Add Android Makefile for libbluetooth Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 10/15] android: sdp: Reuse BlueZ SDP server in Android Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 11/15] android: Add cap to bind to port < 1024 Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 12/15] android: Implement read_info_complete callback Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 13/15] android: Handle mgmt changed events Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 14/15] android: Add makefile for hciconfig Andrei Emeltchenko
2013-10-08 10:33 ` [PATCHv2 15/15] android: Add makefile for hcitool Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 00/15] Basic code for Android BlueZ Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 01/15] android: Supress missing initializers warnings Andrei Emeltchenko
2013-10-09 19:11 ` Marcel Holtmann
2013-10-09 22:55 ` Lucas De Marchi
2013-10-10 6:58 ` Andrei Emeltchenko
2013-10-10 7:35 ` Marcel Holtmann
2013-10-10 8:07 ` Andrei Emeltchenko
2013-10-10 8:10 ` Marcel Holtmann
2013-10-10 8:16 ` Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 02/15] android: Add Adapter Bluetooth HAL template Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 03/15] android: Add Socket " Andrei Emeltchenko
2013-10-09 19:14 ` Marcel Holtmann
2013-10-10 6:56 ` Andrei Emeltchenko
2013-10-10 7:33 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 04/15] android: Enable Socket interface Andrei Emeltchenko
2013-10-09 19:15 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 05/15] android: Start Android Bluetooth daemon Andrei Emeltchenko
2013-10-09 19:19 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 06/15] android: Add basic mgmt initialization sequence Andrei Emeltchenko
2013-10-09 19:30 ` Marcel Holtmann
2013-10-10 9:59 ` Andrei Emeltchenko
2013-10-10 12:38 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 07/15] android: Create HAL API header skeleton Andrei Emeltchenko
2013-10-09 19:34 ` Marcel Holtmann
2013-10-10 12:29 ` Andrei Emeltchenko
2013-10-10 12:35 ` Marcel Holtmann
2013-10-10 12:48 ` Andrei Emeltchenko
2013-10-10 13:02 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 08/15] android: Add adapter and device struct for BlueZ daemon Andrei Emeltchenko
2013-10-09 19:39 ` Marcel Holtmann
2013-10-10 12:36 ` Andrei Emeltchenko [this message]
2013-10-10 12:40 ` Marcel Holtmann
2013-10-10 9:07 ` Marcin Kraglak
2013-10-10 12:30 ` Andrei Emeltchenko
2013-10-10 13:18 ` Marcin Kraglak
2013-10-10 13:27 ` Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 09/15] android: Add Android Makefile for libbluetooth Andrei Emeltchenko
2013-10-09 19:43 ` Marcel Holtmann
2013-10-10 12:43 ` Andrei Emeltchenko
2013-10-10 12:45 ` Marcel Holtmann
2013-10-10 12:52 ` Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 10/15] android: sdp: Reuse BlueZ SDP server in Android Andrei Emeltchenko
2013-10-09 19:45 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 11/15] android: Add cap to bind to port < 1024 Andrei Emeltchenko
2013-10-09 19:48 ` Marcel Holtmann
2013-10-10 13:01 ` Andrei Emeltchenko
2013-10-08 14:51 ` [PATCHv3 12/15] android: Implement read_info_complete callback Andrei Emeltchenko
2013-10-09 19:54 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 13/15] android: Handle mgmt changed events Andrei Emeltchenko
2013-10-09 19:58 ` Marcel Holtmann
2013-10-08 14:51 ` [PATCHv3 14/15] android: Add makefile for hciconfig Andrei Emeltchenko
2013-10-09 19:59 ` Marcel Holtmann
2013-10-14 11:51 ` Andrei Emeltchenko
2013-10-14 12:06 ` Marcel Holtmann
2013-10-14 13:39 ` Michal Labedzki
2013-10-08 14:51 ` [PATCHv3 15/15] android: Add makefile for hcitool Andrei Emeltchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20131010123638.GL23879@aemeltch-MOBL1 \
--to=andrei.emeltchenko.news@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=marcel@holtmann.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox