Skip to content

Commit ab0721d

Browse files
author
Scott Powell
committed
* fix: repeater and room server telemetry requests now return all telemetry for _READ & _WRITE ACL permissions.
1 parent b31d3e7 commit ab0721d

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

examples/simple_repeater/MyMesh.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,10 @@ int MyMesh::handleRequest(ClientInfo *sender, uint32_t sender_timestamp, uint8_t
170170
telemetry.reset();
171171
telemetry.addVoltage(TELEM_CHANNEL_SELF, (float)board.getBattMilliVolts() / 1000.0f);
172172
// query other sensors -- target specific
173-
sensors.querySensors((sender->isAdmin() ? 0xFF : 0x00) & perm_mask, telemetry);
173+
if ((sender->permissions & PERM_ACL_ROLE_MASK) == PERM_ACL_GUEST) {
174+
perm_mask = 0x00; // just base telemetry allowed
175+
}
176+
sensors.querySensors(perm_mask, telemetry);
174177

175178
uint8_t tlen = telemetry.getSize();
176179
memcpy(&reply_data[4], telemetry.getBuffer(), tlen);

examples/simple_room_server/MyMesh.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,10 @@ int MyMesh::handleRequest(ClientInfo *sender, uint32_t sender_timestamp, uint8_t
165165
telemetry.reset();
166166
telemetry.addVoltage(TELEM_CHANNEL_SELF, (float)board.getBattMilliVolts() / 1000.0f);
167167
// query other sensors -- target specific
168-
sensors.querySensors((sender->isAdmin() ? 0xFF : 0x00) & perm_mask, telemetry);
168+
if ((sender->permissions & PERM_ACL_ROLE_MASK) == PERM_ACL_GUEST) {
169+
perm_mask = 0x00; // just base telemetry allowed
170+
}
171+
sensors.querySensors(perm_mask, telemetry);
169172

170173
uint8_t tlen = telemetry.getSize();
171174
memcpy(&reply_data[4], telemetry.getBuffer(), tlen);

0 commit comments

Comments
 (0)