From: "Gix, Brian" <brian.gix@intel.com>
To: "michal.lowas-rzechonek@silvair.com"
<michal.lowas-rzechonek@silvair.com>
Cc: "marcel@holtmann.org" <marcel@holtmann.org>,
"johan.hedberg@gmail.com" <johan.hedberg@gmail.com>,
"linux-bluetooth@vger.kernel.org"
<linux-bluetooth@vger.kernel.org>,
"Stotland, Inga" <inga.stotland@intel.com>
Subject: Re: [PATCH BlueZ v5 1/1] mesh: Add APIs for Provisioner and Config Client
Date: Thu, 18 Apr 2019 21:44:24 +0000 [thread overview]
Message-ID: <1555623863.31619.4.camel@intel.com> (raw)
In-Reply-To: <20190418092738.wdohlkvcej5ffw5x@scytale>
Hi Michal,
On Thu, 2019-04-18 at 11:27 +0200, Michal Lowas-Rzechonek wrote:
> Hi Brian,
>
> On 04/17, Gix, Brian wrote:
> > The messages where keys are explicitly sent over-the-air are the only
> > messages we anticipate providing specific D-Bus methods for to
> > minimize D-Bus API bloat.
> > (...)
> > The external Config Client App is responsible for:
> > * deciding *when* to send App and Net key adds and updates
> > * sending all pub/sub/binding/feature settings
> >
> > so in this case, the controlling Config Client App will be composing
> > all Config Client messages (except for OTA key messages)
>
> So if I understand correctly, to add a new application key one would
> need to either:
> - call CreateAppKey to have the daemon generate a new application key
> internally.
> - manually create access layer payload for Config Client App Key Add
> message, then send it to the local node via loopack
Actually no. The Config Client loopback to the local node is intended to just add keys to the local node Config
Server. Since it seems reasonable to add externally generated App and Net keys to the local nades key ring, I
will also add imports for those two key types.
>
> After one of these operations, the key can be sent to remote nodes using
> AddAppKey API.
>
> This seems a bit assymetric: the application that would like to act as a
> Config Client would need to use a mixture of manually constructed
> access payloads (e.g. to configure binds and subscriptions) and a
> higher-level APIs used to add keys.
>
> I think it would be cleaner to have the application use just the API,
> and relieve it of requirement to implement Config Client messages,
> especially given the fact the daemon implements Config Server internally.
>
> This would indeed make the API surface larger, which certainly is a
> drawback, but I think it would make it easier to implement actual
> applications, because foundation (and *only* foundation) models (both
> servers and clients) would be provided by the daemon.
>
>
> Another point would be adding explicit ImportNetKey and ImportAppKey
> operations, so that an application using external provisioning database
> would be able to inject keys into the daemon's database without sending
> raw Config Client messages. This is similar to Import*Node operations we
> discussed before.
>
Yes, This ^^^^
regards,
Brian
next prev parent reply other threads:[~2019-04-18 21:44 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-15 19:49 [PATCH BlueZ v5 0/1] mesh: Add APIs for Provisioner and Config Client Brian Gix
2019-04-15 19:49 ` [PATCH BlueZ v5 1/1] " Brian Gix
2019-04-17 5:51 ` Michał Lowas-Rzechonek
2019-04-17 17:58 ` Gix, Brian
2019-04-18 9:27 ` Michal Lowas-Rzechonek
2019-04-18 21:44 ` Gix, Brian [this message]
2019-04-22 7:37 ` michal.lowas-rzechonek
2019-04-18 15:28 ` Johan Hedberg
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=1555623863.31619.4.camel@intel.com \
--to=brian.gix@intel.com \
--cc=inga.stotland@intel.com \
--cc=johan.hedberg@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
--cc=marcel@holtmann.org \
--cc=michal.lowas-rzechonek@silvair.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.