93 Commits

Author SHA1 Message Date
Matthias Ringwald
9572f83fe1 mesh: rename mesh_transport_key_aid_iterator to indicate AID filter 2019-07-20 08:50:27 +02:00
Matthias Ringwald
3f60e917b4 mesh: return status in mesh_upper_transport_setup_access_pdu_header 2019-07-20 08:50:27 +02:00
Matthias Ringwald
42f3f8dae0 mesh: remove unused fields from mesh_transport_key_and_virtual_address_iterator_t 2019-07-20 08:50:27 +02:00
Matthias Ringwald
0cdba057f6 mesh: appkey management - key and virtual address iterator also filters on netkey_index 2019-07-20 08:50:27 +02:00
Matthias Ringwald
fa5e639f2c mesh: index -> appkey_index in mesh_transport_key_t 2019-07-20 08:50:27 +02:00
Matthias Ringwald
bbc7a0af3e mesh: single mesh_upper_transport_setup_access_pdu_header instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
109de5eff3 mesh: single mesh_upper_transport_setup_access_pdu instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
d984d09471 mesh: single mesh_upper_transport_send_access_pdu instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
dd5179955b mesh: single mesh_upper_transport_setup_control_pdu instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
f804bd819f mesh: single mesh_upper_transport_send_control_pdu instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
9b1db5eacc mesh: fix mesh_upper_transport_message_processed_by_higher_layer 2019-07-20 08:50:27 +02:00
Matthias Ringwald
c4e43a88c2 mesh: single mesh_upper_transport_message_processed_by_higher_layer instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
9cee7f1f66 mesh: single mesh_upper_transport_register_control_message_handler instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
c9e8931a1a mesh: single mesh_upper_transport_register_access_message_handler instead of segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
2343b7d3c2 mesh: use mesh_lower_transport_send_pdu instead of send segmented/unsegmented 2019-07-20 08:50:27 +02:00
Matthias Ringwald
24c4300fb0 mesh: add mesh_upper_transport_register_control_message_handler 2019-07-20 08:50:27 +02:00
Matthias Ringwald
5ae3767212 mesh: rename callback registration for access messages 2019-07-20 08:50:26 +02:00
Matthias Ringwald
721964ccac mesh: add mesh_upper_transport_setup_unsegmented_access_pdu_header 2019-07-20 08:50:26 +02:00
Matthias Ringwald
4e37c452f7 mesh: add mesh_upper_[un]segmented_message_processed_by_higher_layer 2019-07-20 08:50:26 +02:00
Matthias Ringwald
f3309c1154 mesh: dump segmented access payload 2019-07-20 08:50:26 +02:00
Matthias Ringwald
8ffbe80d21 mesh: extract mesh_upper_transport_setup_segmented_access_pdu_header 2019-07-20 08:50:26 +02:00
Matthias Ringwald
6cb2bf0bc9 mesh: mesh_upper_transport notify upper layer on pdu sent 2019-07-20 08:50:26 +02:00
Matthias Ringwald
b2f661151c mesh: fix unit test 2019-07-20 08:50:26 +02:00
Matthias Ringwald
35d8c536f6 mesh: notify upper transport upon lower layer send result 2019-07-20 08:50:26 +02:00
Matthias Ringwald
8b5057468e mesh: introduce mesh_lower_transport_send_unsegmented_pdu 2019-07-20 08:50:26 +02:00
Matthias Ringwald
85244c5aac mesh: extract mesh_virtual_addresses 2019-07-20 08:50:26 +02:00
Matthias Ringwald
ded0e91f25 mesh: extract mesh_keys that handles application and device keys 2019-07-20 08:50:26 +02:00
Matthias Ringwald
af284ae735 mesh: fix mesh_transport_key_and_virtual_address_iterator for non-virtual addresses 2019-07-20 08:50:26 +02:00
Matthias Ringwald
2cde18b9e1 mesh: implement iterator for virtual adresses and for transport keys, implement iterator over cartesion product of keys x virtual addresses 2019-07-20 08:50:26 +02:00
Matthias Ringwald
1d36037326 mesh: add mesh_lower_transport_set_higher_layer_handler to avaoid calling upper transport directly 2019-07-20 08:50:26 +02:00
Matthias Ringwald
f33895f322 mesh: extract mesh_lower_transport 2019-07-20 08:50:26 +02:00
Matthias Ringwald
f4e1709172 mesh: complete split-off for lower transport 2019-07-20 08:50:26 +02:00
Matthias Ringwald
5a46508a34 mesh: single queue for received upper transport messages, new mesh_lower_transport_message_processed_by_higher_layer 2019-07-20 08:50:26 +02:00
Matthias Ringwald
f46b7bdedf mesh: add mesh_pdu_type_t to mesh_network_pdu_t and mesh_transport_pdu_t, use mesh_network/transport_get/free to set pdu type on alloc 2019-07-20 08:50:26 +02:00
Matthias Ringwald
2a8034828b mesh: sort mesh_transprot into lower and upper transport 2019-07-20 08:50:26 +02:00
Matthias Ringwald
f3f54aca9a mesh: reconstruct SeqAuth from network seq and seq_zero 2019-07-20 08:50:26 +02:00
Matthias Ringwald
257edf9b97 mesh: extract mesh_peer from mesh_transport 2019-07-20 08:50:26 +02:00
Matthias Ringwald
ac529a2ab2 mesh: use seq_zero to reconstruct SeqAuth for App / Device nonce 2019-07-20 08:50:26 +02:00
Matthias Ringwald
86409f1d2c mesh: set lsb of iv index for segmented access messsages 2019-07-20 08:50:26 +02:00
Matthias Ringwald
b1d149f5f6 mesh: fix transport setup 2019-07-20 08:50:25 +02:00
Matthias Ringwald
93a94cc802 mesh: inline seq and seq_zero validation 2019-07-20 08:50:25 +02:00
Matthias Ringwald
c88da99af5 mesh: replace test_transport_pdu by transport_pdu in peer info 2019-07-20 08:50:25 +02:00
Matthias Ringwald
707df8d95d mesh: reset test_transport_pdu when message is complete 2019-07-20 08:50:25 +02:00
Matthias Ringwald
8e385fa075 mesh: use block_ack from peer info for completed transport messages 2019-07-20 08:50:25 +02:00
Matthias Ringwald
6b0bede0ef mesh: store block_ack in peer info 2019-07-20 08:50:25 +02:00
Matthias Ringwald
2a0ab8c231 mesh: use replay protection list 2019-07-20 08:50:25 +02:00
Matthias Ringwald
16753ea2f9 mesh: handle network messages where IVI field indicates previous IV Index 2019-07-20 08:50:25 +02:00
Matthias Ringwald
f8e58086aa mesh: fix start/stop rx incomplete, only send ack for current/last message, discard message on rx timeout 2019-07-20 08:50:25 +02:00
Matthias Ringwald
d6ffd4d823 mesh: use seq_zero from transport_pdu 2019-07-20 08:50:25 +02:00
Matthias Ringwald
7ca1816e76 mesh: release current transport pdu when next one starts, send ack for current transport pdu 2019-07-20 08:50:25 +02:00