All of lore.kernel.org
 help / color / mirror / Atom feed
* mesh: Missing API for delivering provisioning public key via OOB?
@ 2020-02-06 17:16 Michał Lowas-Rzechonek
  2020-02-06 17:25 ` Gix, Brian
  0 siblings, 1 reply; 4+ messages in thread
From: Michał Lowas-Rzechonek @ 2020-02-06 17:16 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: brian.gix, inga.stotland

Hi,

I have been playing with mesh-cfgclient, and I've noticed that
provisioning procedure gets stuck when node reports Public Key OOB
information available' in 'Public Key Type' field of Provisioning
Capabilities PDU.

While digging into the code and API, I think we have a missing feature
in the API between provisioner application and the daemon - while there
is an API to deliver OOB keys to the daemon when *the application* is
being provisioned, there doesn't seem to be a way to deliver provisioned
device's public key when is the application who does the provisioning.

Is my understanding correct, or is there something I've missed?

regards
-- 
Michał Lowas-Rzechonek <michal.lowas-rzechonek@silvair.com>
Silvair http://silvair.com
Jasnogórska 44, 31-358 Krakow, POLAND

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mesh: Missing API for delivering provisioning public key via OOB?
  2020-02-06 17:16 mesh: Missing API for delivering provisioning public key via OOB? Michał Lowas-Rzechonek
@ 2020-02-06 17:25 ` Gix, Brian
  2020-02-06 17:29   ` Gix, Brian
  2020-02-06 17:53   ` michal.lowas-rzechonek
  0 siblings, 2 replies; 4+ messages in thread
From: Gix, Brian @ 2020-02-06 17:25 UTC (permalink / raw)
  To: michal.lowas-rzechonek, linux-bluetooth; +Cc: Stotland, Inga

Hi Michał,

On Thu, 2020-02-06 at 18:16 +0100, Michał Lowas-Rzechonek wrote:
> Hi,
> 
> I have been playing with mesh-cfgclient, and I've noticed that
> provisioning procedure gets stuck when node reports Public Key OOB
> information available' in 'Public Key Type' field of Provisioning
> Capabilities PDU.
> 
> While digging into the code and API, I think we have a missing feature
> in the API between provisioner application and the daemon - while there
> is an API to deliver OOB keys to the daemon when *the application* is
> being provisioned, there doesn't seem to be a way to deliver provisioned
> device's public key when is the application who does the provisioning.
> 
> Is my understanding correct, or is there something I've missed?

Yes... It looks like tools/mesh-cfgclient.c needs to implement the:

	array{byte} PublicKey()

method.

This is a good catch, and needs to be added.  

> 
> regards

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mesh: Missing API for delivering provisioning public key via OOB?
  2020-02-06 17:25 ` Gix, Brian
@ 2020-02-06 17:29   ` Gix, Brian
  2020-02-06 17:53   ` michal.lowas-rzechonek
  1 sibling, 0 replies; 4+ messages in thread
From: Gix, Brian @ 2020-02-06 17:29 UTC (permalink / raw)
  To: michal.lowas-rzechonek, linux-bluetooth; +Cc: Stotland, Inga

On Thu, 2020-02-06 at 17:25 +0000, Gix, Brian wrote:
> Hi Michał,
> 
> On Thu, 2020-02-06 at 18:16 +0100, Michał Lowas-Rzechonek wrote:
> > Hi,
> > 
> > I have been playing with mesh-cfgclient, and I've noticed that
> > provisioning procedure gets stuck when node reports Public Key OOB
> > information available' in 'Public Key Type' field of Provisioning
> > Capabilities PDU.
> > 
> > While digging into the code and API, I think we have a missing feature
> > in the API between provisioner application and the daemon - while there
> > is an API to deliver OOB keys to the daemon when *the application* is
> > being provisioned, there doesn't seem to be a way to deliver provisioned
> > device's public key when is the application who does the provisioning.
> > 
> > Is my understanding correct, or is there something I've missed?
> 
> Yes... It looks like tools/mesh-cfgclient.c needs to implement the:
> 
> 	array{byte} PublicKey()
> 
> method.
> 
> This is a good catch, and needs to be added.

And before you respond, yes it also needs to be added to mesh/agent.c


>   
> 
> > regards

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: mesh: Missing API for delivering provisioning public key via OOB?
  2020-02-06 17:25 ` Gix, Brian
  2020-02-06 17:29   ` Gix, Brian
@ 2020-02-06 17:53   ` michal.lowas-rzechonek
  1 sibling, 0 replies; 4+ messages in thread
From: michal.lowas-rzechonek @ 2020-02-06 17:53 UTC (permalink / raw)
  To: Gix, Brian; +Cc: linux-bluetooth, Stotland, Inga

Brian,

On 02/06, Gix, Brian wrote:
> > Is my understanding correct, or is there something I've missed?
> Yes... It looks like tools/mesh-cfgclient.c needs to implement the:
> 
> 	array{byte} PublicKey()
> 
> method.
> 
> This is a good catch, and needs to be added.  

Ok, thanks. I'll give it a shot, if time permits.

What puzzled me is that the provisioning gets stuck instead of failing,
so it seems it's not only that cfgclient doesn't implement the method,
but also the daemon doesn't seem to check for errors?

-- 
Michał Lowas-Rzechonek <michal.lowas-rzechonek@silvair.com>
Silvair http://silvair.com
Jasnogórska 44, 31-358 Krakow, POLAND

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-02-06 17:53 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-06 17:16 mesh: Missing API for delivering provisioning public key via OOB? Michał Lowas-Rzechonek
2020-02-06 17:25 ` Gix, Brian
2020-02-06 17:29   ` Gix, Brian
2020-02-06 17:53   ` michal.lowas-rzechonek

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.