summaryrefslogtreecommitdiff
path: root/mesh/pb-adv.c
Commit message (Collapse)AuthorAgeFilesLines
* mesh: Add Remote ProvisioningBrian Gix2023-01-301-2/+2
| | | | | | | | Add Remote Provisioning Server Add Remote Provisioning Client Remove local scanning/provisioning Add delete-all dev key function Add NPPI procedures
* mesh: Improve PB-ADV timing for reliabilityBrian Gix2022-09-261-3/+6
| | | | | | Because provisioning is not speed dependent, Timing on outbound PB-ADV packets have been modified to be less likely missed by remote controlers with looser timing capabilities.
* mesh: Fix delivery of PB-ACK to acceptorsBrian Gix2021-05-191-1/+0
| | | | | Remove unneeded initialization that prevented the Acceptor roll of ever recognizing a valid PB-ACK.
* mesh: Add SPDX License IdentifierTedd Ho-Jeong An2020-09-211-10/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds SPDX License Identifier and removes the license text. ------------------------------------- License COUNT ------------------------------------- LGPL-2.1-or-later : 48 License: LGPL-2.1-or-later mesh/mesh-mgmt.h mesh/mesh-mgmt.c mesh/net-keys.c mesh/mesh-io-api.h mesh/mesh.h mesh/net-keys.h mesh/model.h mesh/util.h mesh/appkey.c mesh/cfgmod.h mesh/appkey.h mesh/prov.h mesh/prov-acceptor.c mesh/net.c mesh/dbus.h mesh/friend.h mesh/mesh-io-generic.c mesh/main.c mesh/util.c mesh/dbus.c mesh/error.h mesh/mesh-config-json.c mesh/agent.h mesh/pb-adv.c mesh/crypto.c mesh/crypto.h mesh/friend.c mesh/pb-adv.h mesh/provision.h mesh/mesh-config.h mesh/mesh-io-generic.h mesh/agent.c mesh/cfgmod-server.c mesh/mesh-io.h mesh/keyring.h mesh/net.h mesh/keyring.c mesh/mesh-defs.h mesh/mesh.c mesh/rpl.c mesh/manager.c mesh/model.c mesh/mesh-io.c mesh/node.c mesh/prov-initiator.c mesh/rpl.h mesh/node.h mesh/manager.h
* mesh: Debug output clean upInga Stotland2020-06-011-6/+1
| | | | | This changes l_info() to l_debug() for recurring cases and removes some excessive debug output.
* mesh: Destroy PB-ADV queue when provisioning doneBrian Gix2020-05-221-0/+5
|
* mesh: Handle close for AcceptorPrathyusha N2020-03-251-13/+1
| | | | | | | Provision complete callback is handled in provision failure case. If link closed received abruptly with reason success, triggered provision complete callback. Removed session timeout and session free as they are handled in pb_adv_unreg.
* mesh: Implement provisioning loop-backBrian Gix2020-01-131-33/+130
| | | | This allows one App using the mesh daemon to provision another.
* mesh: Start link establishment timer of 60 secPrathyusha N2019-12-271-0/+2
| | | | | | | | | | 5.3.2 of Mesh Profile Bluetooth specification: To open a link, the provisioner shall start the link establishment timer, set to 60 seconds, and then shall start sending Link Open messages. On timeout, close indication will be sent. Provisioner cancels the Link Establishment timer, when the link is open i.e. in pb_adv_tx().
* mesh: Rearrange PB-ACK for possible session closeBrian Gix2019-12-041-4/+4
| | | | | | | | | | In certain circumstances, reception of PB-ADV messages may trigger session close. This rearrange ACKs new verified messages before performing call-back to avoid situations where the session no longer exists after the message has been handled. This caused static analysis errors during provisioning, which are now addressed.
* mesh: Fix to send close indication on timeoutPrathyusha N2019-12-041-2/+0
| | | | | | If pb_session is freed in timeout, close indication will not be sent. pb_session is freed in pb_adv_unreg() and hence removed from tx_timeout. Added acceptor_free() in acp_prov_close() to ensure pb_session is freed.
* mesh: Fix invalid transaction number in PROV_INVITEPrathyusha N2019-12-031-0/+1
| | | | | | | For initiator, transaction number starts from 0x00 where as for acceptor transaction number starts from 0x80. Since transaction number is pre-incremented and sent in every packet, initialize it with 0xFF for initiator and 0x7F for acceptor.
* mesh: Convert provisioning pkts to packed structsBrian Gix2019-07-141-24/+55
| | | | | | Provisioning packets are defined in the specification as packed big endian structures. Instead of specifying an octet array, we now use struct matching the spec.
* mesh: Fix support for Provisioner InitiatorBrian Gix2019-07-141-55/+73
|
* mesh: Remove unnecessary includes from .c filesInga Stotland2019-05-171-16/+0
|
* mesh: Update copyright datesInga Stotland2019-05-171-1/+1
|
* mesh: Fix for file naming conventionBrian Gix2019-02-211-1/+1
|
* mesh: Add direction agnostic PB-ADV implementationBrian Gix2019-01-081-0/+444
Originally found in prov.c, this file implements the PB-ADV provisioning transport. It may be used by either the Acceptor or the Initiator side of the Provisioning procedure, but only one session may be active at a time.