New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Various Mesh fixes #958
Various Mesh fixes #958
Conversation
f3b498d
to
4c3d42c
Compare
7bf2030
to
ae27214
Compare
Results of Mesh tests with these patches: 1/227 MESH MESH/NODE/PBADV/BV-01-C PASS 64.082 Summary: Status CountINCONC 1
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commit titles should start with mesh:
or bttester:
and then capital letter. See commit history in nimble.
nimble/host/mesh/src/heartbeat.h
Outdated
@@ -38,3 +38,4 @@ void bt_mesh_hb_feature_changed(uint16_t features); | |||
|
|||
uint8_t bt_mesh_hb_pub_set(struct bt_mesh_hb_pub *hb_pub); | |||
uint8_t bt_mesh_hb_sub_set(uint16_t src, uint16_t dst, uint32_t period); | |||
void bt_mesh_hb_sub_reset_count(void); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing new line at the end of the file.
|
||
uint8_t bt_mesh_va_del(uint8_t uuid[16], uint16_t *addr); | ||
uint8_t bt_mesh_va_del(const uint8_t uuid[16], uint16_t *addr); | ||
|
||
uint8_t *bt_mesh_va_label_get(uint16_t addr); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Newline at the end of the file
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ping.
nimble/host/mesh/src/transport.c
Outdated
@@ -1413,8 +1413,9 @@ static int trans_seg(struct os_mbuf *buf, struct bt_mesh_net_rx *net_rx, | |||
/* Reset the Incomplete Timer */ | |||
rx->last = k_uptime_get_32(); | |||
|
|||
if (!k_delayed_work_remaining_get(&rx->ack) && | |||
!bt_mesh_lpn_established()) { | |||
if (!k_delayed_work_pending(&rx->ack) || |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this change is specific to mynewt right? That would at least require an inline comment. I'm not sure this change is needed here, we will have to look into it. Maybe this should be in a separate PR.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved this commit to #978
This commit sets `net_idx` to `BT_MESH_KEY_UNUSED` when deleting app key in cdb. this is port of d593af30db1c9164db35ccc28862b06718440cad
MESH/NODE/CFG/HBS/BV-01-C expects the MinHops to be 0x7f after disabling subscription, but 0x00 for subsequent Get requests. MESH/NODE/CFG/HBS/BV-02-C expects us to return previous count value and then reset it to 0. this is port of 419d2aa85b3e2656ac8bdd99875313e9f4b4720c
Adds an opcode handler for the network transmit status opcode. this is port of 66699b81708a257f41a3a4572cd67b904b511d01
The Configuration Client doesn't check the address in a received response. This means that a response from any device will be accepted. This change ensures that the correct response will be accepted. this is port of 8bcc85b38cccf1f36e769e907f43137f68305aa7
As network_decode needs a target buffer for decoding, the max PDU length must be checked to prevent overflow on the target buffer. When receiving a proxy configuration message with excessive length, there's no previous check for this. Also pulls the NET PDU length defines out into net.h, so they can be used when defining the target buffers. this is port of 2bd5b63dfd1cba183f2c20af5ff497346827087f
Set app_idx and net_idx in the msg_ctx before calling bt_mesh_keys_resolve when re-encrypting friend messages, as they'll be referenced inside the function. this is port of 48526b6925a11bb979b657912dda012303e9050e
Sets the sequence number when re-encrypting messages from the friend to the lpn. this is port of 512444d863f0e4de69ea600dda37b11f032e9707
Removes the 3 byte padding at the end of each proxy connection's rx buffer. this is port of 135af766664f1fd1d9eacd2ffc78aa6d240663db
Correct format errors, such as oob action 2-octers should use 0x%04x, and action in prov capalilities pdu big-ending. When every call `bt_mesh_auth_method_set<*>` should also clear auth value, otherwise will case confirm failed. Provisioner role expect peer public key should be sent immediately, instead of requiring ACK. After all, ACK may be lost, and the other device’s public key will be sent over, and provisioning procedure will be failed.. this is port of 0841ee69f2376f40befa938caacf97172be6fecd
Fixed some undesired or incorrect macros, which can cause build error. this is port of 71fd8e1d0141096238aadb9ce20a14781cf50b7c
Check that the assigned subnet hasn't been removed in heartbeat_send to avoid potential NULL defererence in transport's ctl_send. this is port of 8309353b7f556d7457f75b2777a2561a31a85a78
Moves the if !(pub) check to happen before it gets used in the initialization of the message context in bt_mesh_model_publish. this is port of bba2d7b84b82ac7322898776b46727580bc39ae0
If CONFIG_BT_MESH_SEQ_STORE_RATE is 1, the check in store_seq can be reduced to a simple if (false), and the modulo code does not need to be included in the build. this is port of aef354c6bc3264de9f2a38b8c56ff5253b35912a
The error code from gatt_service_register is being ignored to ensure that repeated actions still complete. Do this explicitly by adding (void) casts, resolving coverity warnings on accidental error code ignores. this is port of f9d41595a3a168d982e95c1f46ef9fb8b989c55b
Removes U-suffix from signed return codes in heartbeat.c. this is port of dc6e880eab8526bd6ba9ab8bca3f6e2a299ff98e
Moves the debug log printing the transport packet metadata to after the keys are resolved, so that the subnet pointer is valid. this is port of 9b4266b5914da021ba40372eeb390bd1d3d9df7f
Adds the const qualifier to the internal api for adding and removing virtual addresses, to allow them to accept const hardcoded values in tests. this is port of 20ce680d790a4c0b8232f5aeadce864c1fc537af
The Health Fast Period Divisor is stored within the model publish parameters on the access layer. The opposite part for divisor restoring has been missed. this is port of 73e1c6a77d71f8b51746946f78f0b3525101e1c0
Instead of silently closing the link we should send a Link Close message three times before resetting provisioning state. From Mesh Profile Specification v1.0.1.: ``` 5.3.1.4.3 Link Close message The Link Close message is used to close a link. ``` ``` 5.3.2 Link Establishment procedure The device shall start the link timer, set to 60 seconds, when the link is open. When the link timer expires, then the device shall close the link. ``` ``` 5.3.3 Generic Provisioning behavior If the sender does not receive a Transaction Acknowledgment message within 30 seconds after sending the first message in a transaction, the sender shall cancel the transaction, cancel the provisioning process and close the link. ``` From Mesh Profile Test Specification p6: ``` MESH/PVNR/PBADV/BV-01-C Test Procedure: [...] 6. The IUT is induced to send a Link Close message with the Reason field set to 0x02 to terminate the link. The message is sent at least three times to ensure the message is received by the Lower Tester. ``` this is port of 497d9df96acde1d28f7cd83c786e496e8ea0db67
Tests require CID to have valid value, listed in BT SIG Assigned Numbers/Company Identifiers. Let's set it to Intel Corp. (0x0002) This affects MESH/NODE/CFG/CFGF/BV-01-C
this is affecting MESH/NODE/TNPT/BV-04-C
Preprocessor directives using defined() in mesh should use identifiers defined in glue.h
Add support of lpn_cb (established and terminated). It's required for MESH/NODE/HBP-BV-05-C Allow to acces bt_mesh by apllications (required to fill btp response with valid data)
This improves stability of transport tests
baa8c7f
to
6f460f4
Compare
@michal-narajowski Fixed commit messages and missing newlines at the end of files |
Style check fail: Payload was too large |
No description provided.