You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: PKI_UNKNOWN_PUBKEY errors now correctly flag key mismatch
PKI_UNKNOWN_PUBKEY and PKI_SEND_FAIL_PUBLIC_KEY routing errors were
suppressed when the target node wasn't in the radio's device database.
The guard assumed this was only expected after factory reset/purge,
but it also suppressed legitimate key mismatch detection for nodes
the radio simply doesn't know about.
Removed the isNodeInDeviceDb() guard from both routing error paths
(request packets and message-tracked packets). The key mismatch flag
will now clear naturally via the resolution logic in PR #2365 when
keys are re-synced.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
? 'PKI encryption failed — your radio\'s stored key for this node may be outdated. Click "Exchange Node Info" to re-sync keys with the radio.'
5354
-
: 'Your radio does not have this node\'s public key (even though MeshMonitor does). Click "Exchange Node Info" to push the key to your radio, or purge the node to force a fresh key exchange.';
? 'PKI encryption failed — your radio\'s stored key for this node may be outdated. Click "Exchange Node Info" to re-sync keys with the radio.'
5349
+
: 'Your radio does not have this node\'s public key (even though MeshMonitor does). Click "Exchange Node Info" to push the key to your radio, or purge the node to force a fresh key exchange.';
5355
5350
5356
-
logger.warn(`🔐 PKI error on request for node ${toNodeId}: ${errorDescription}`);
5351
+
logger.warn(`🔐 PKI error on request for node ${toNodeId}: ${errorDescription}`);
? 'PKI encryption failed — your radio\'s stored key for this node may be outdated. Click "Exchange Node Info" to re-sync keys with the radio.'
5411
-
: 'Your radio does not have this node\'s public key (even though MeshMonitor does). Click "Exchange Node Info" to push the key to your radio, or purge the node to force a fresh key exchange.';
? 'PKI encryption failed — your radio\'s stored key for this node may be outdated. Click "Exchange Node Info" to re-sync keys with the radio.'
5399
+
: 'Your radio does not have this node\'s public key (even though MeshMonitor does). Click "Exchange Node Info" to push the key to your radio, or purge the node to force a fresh key exchange.';
5412
5400
5413
-
logger.warn(`🔐 PKI error detected for node ${targetNodeId}: ${errorDescription}`);
5414
-
5415
-
// Flag the node with the key security issue
5416
-
awaitdatabaseService.nodes.upsertNode({
5417
-
nodeNum: targetNodeNum,
5418
-
nodeId: targetNodeId,
5419
-
keyMismatchDetected: true,
5420
-
keySecurityIssueDetails: errorDescription
5421
-
});
5401
+
logger.warn(`🔐 PKI error detected for node ${targetNodeId}: ${errorDescription}`);
0 commit comments