mesh: generate new public key for each connection in provisioning_provisioner

This commit is contained in:
Matthias Ringwald 2018-10-25 15:09:50 +02:00
parent 0f9e9e3d36
commit 7dc13593a6

View File

@ -712,9 +712,6 @@ static void prov_key_generated(void * arg){
void provisioning_provisioner_init(void){
pb_adv_init(NULL);
pb_adv_register_packet_handler(&provisioning_handle_pdu);
// generate public key
btstack_crypto_ecc_p256_generate_key(&prov_ecc_p256_request, prov_ec_q, &prov_key_generated, NULL);
}
void provisioning_provisioner_register_packet_handler(btstack_packet_handler_t packet_handler){
@ -722,6 +719,9 @@ void provisioning_provisioner_register_packet_handler(btstack_packet_handler_t p
}
uint16_t provisioning_provisioner_start_provisioning(const uint8_t * device_uuid){
// generate new public key
btstack_crypto_ecc_p256_generate_key(&prov_ecc_p256_request, prov_ec_q, &prov_key_generated, NULL);
if (pb_adv_cid == 0) {
pb_adv_cid = pb_adv_create_link(device_uuid);
}