AdminModule: don't return the device private key to remote config reads (#11030)
A SECURITY_CONFIG get_config response copied config.security verbatim, so a remote request was answered with the device identity private_key and sent over the air. Only the local owner needs it, for backup. Zero private_key in the SECURITY_CONFIG response when the request is remote (from != 0); the local BLE/USB/TCP path (from == 0) still receives it. public_key and admin_key are public and stay as they were.
This commit is contained in:
co-authored by
GitHub
parent
f18a8b0552
commit
d3d02af817
@@ -8,11 +8,15 @@ class AdminModuleTestShim : public AdminModule
|
||||
{
|
||||
public:
|
||||
using AdminModule::checkPassKey; // session-key gate seam (see test_admin_session_repro)
|
||||
using AdminModule::handleGetConfig;
|
||||
using AdminModule::handleReceivedProtobuf;
|
||||
using AdminModule::handleSetConfig;
|
||||
using AdminModule::handleSetModuleConfig;
|
||||
using AdminModule::setPassKey;
|
||||
|
||||
// Peek at the reply a handler queued, before drainReply() releases it.
|
||||
meshtastic_MeshPacket *reply() { return myReply; }
|
||||
|
||||
// With an "open edit transaction" saveChanges() is a pure no-op: no reloadConfig/saveToDisk/reboot.
|
||||
void deferSaves() { hasOpenEditTransaction = true; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user