mirror of
https://github.com/meshtastic/firmware.git
synced 2025-06-14 00:52:05 +00:00
Deal with admin_key being repeated (#4558)
This commit is contained in:
parent
1fe80e0f30
commit
574124aee5
@ -292,10 +292,10 @@ void NodeDB::installDefaultConfig()
|
|||||||
config.lora.ignore_mqtt = false;
|
config.lora.ignore_mqtt = false;
|
||||||
#endif
|
#endif
|
||||||
#ifdef ADMIN_KEY_USERPREFS
|
#ifdef ADMIN_KEY_USERPREFS
|
||||||
memcpy(config.security.admin_key.bytes, admin_key_userprefs, 32);
|
memcpy(config.security.admin_key[0].bytes, admin_key_userprefs, 32);
|
||||||
config.security.admin_key.size = 32;
|
config.security.admin_key[0].size = 32;
|
||||||
#else
|
#else
|
||||||
config.security.admin_key.size = 0;
|
config.security.admin_key[0].size = 0;
|
||||||
#endif
|
#endif
|
||||||
config.security.public_key.size = 0;
|
config.security.public_key.size = 0;
|
||||||
config.security.private_key.size = 0;
|
config.security.private_key.size = 0;
|
||||||
|
@ -75,7 +75,7 @@ bool AdminModule::handleReceivedProtobuf(const meshtastic_MeshPacket &mp, meshta
|
|||||||
// and only allowing responses from that remote.
|
// and only allowing responses from that remote.
|
||||||
if (!((mp.from == 0 && !config.security.is_managed) || messageIsResponse(r) ||
|
if (!((mp.from == 0 && !config.security.is_managed) || messageIsResponse(r) ||
|
||||||
(strcasecmp(ch->settings.name, Channels::adminChannel) == 0 && config.security.admin_channel_enabled) ||
|
(strcasecmp(ch->settings.name, Channels::adminChannel) == 0 && config.security.admin_channel_enabled) ||
|
||||||
(mp.pki_encrypted && memcmp(mp.public_key.bytes, config.security.admin_key.bytes, 32) == 0))) {
|
(mp.pki_encrypted && memcmp(mp.public_key.bytes, config.security.admin_key[0].bytes, 32) == 0))) {
|
||||||
LOG_INFO("Ignoring admin payload %i\n", r->which_payload_variant);
|
LOG_INFO("Ignoring admin payload %i\n", r->which_payload_variant);
|
||||||
return handled;
|
return handled;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user