1603 Commits

Author SHA1 Message Date
Matthias Ringwald
a7b9793fd7 mesh: send status messages to sender of access message 2019-07-20 08:50:26 +02:00
Matthias Ringwald
151c959ebe mesh: use template engine for access messages 2019-07-20 08:50:26 +02:00
Matthias Ringwald
0c187fc6dc mesh: handle foundation relay get/set messages 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
272abd2bfe mesh: handle foundation gatt proxy get/set 2019-07-20 08:50:26 +02:00
Matthias Ringwald
209c6904ac mesh: handle foundation beacon get/set 2019-07-20 08:50:26 +02:00
Matthias Ringwald
32dda8247e mesh: handle foundation network retranmit get/set 2019-07-20 08:50:26 +02:00
Matthias Ringwald
4d015c9b14 mesh: use PTS_DEFAULT_TTL for PTS tests and mesh_foundation_default_ttl_get for configuration server messages 2019-07-20 08:50:26 +02:00
Matthias Ringwald
19e2fc873c mesh: handle config server default ttl message 2019-07-20 08:50:26 +02:00
Matthias Ringwald
668b49bfd4 mesh: add access message builder for segmented (transport) messsages 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
c2cb6fe265 mesh: use operations table for dispatch and verify minimum packet length 2019-07-20 08:50:26 +02:00
Matthias Ringwald
5d8a229f63 mesh: dispatch based on access opcode 2019-07-20 08:50:26 +02:00
Matthias Ringwald
bb48ee9427 mesh: no heartbeat for dest = unsassigned 2019-07-20 08:50:26 +02:00
Matthias Ringwald
decffc850a mesh: send periodic Heartbeat transport messages 2019-07-20 08:50:26 +02:00
Matthias Ringwald
3c43c8e992 mesh: minimal processing of config heartbeat publication get/set 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
553e128c6f mesh: set primary element address in lower transport 2019-07-20 08:50:26 +02:00
Matthias Ringwald
2e3a410f6f mesh: fix format of Config Model Publication Status 2019-07-20 08:50:26 +02:00
Matthias Ringwald
796f25b442 mesh: respond to config_model_publication_virtual_address_add 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
bdcf830af3 mesh: init mesh_lower_transport in mesh_message_test 2019-07-20 08:50:26 +02:00
Matthias Ringwald
ee9fbd2509 mesh: remove unused prototypes from mesh_transport.h 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
14476d0514 mesh: handle config_model_subscription_virtual_address_add 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
ddf5aebd1d mesh: send config model app status on config model app bind 2019-07-20 08:50:25 +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
1d1c93c5a3 mesh: provide CMakeLists.txt for test/mesh 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