Only gate PKC behind the simradio CLI flag (#7681)

* Only gate PKC behind the simradio CLI flag

* Hide router.cpp simradio check behind #if ARCH_PORTDUINO
This commit is contained in:
Jonathan Bennett
2025-08-19 14:15:05 -05:00
committed by GitHub
parent 1c1462e776
commit 5de61b1a3d
3 changed files with 7 additions and 5 deletions

View File

@@ -523,8 +523,10 @@ meshtastic_Routing_Error perhapsEncode(meshtastic_MeshPacket *p)
// is not in the local nodedb // is not in the local nodedb
// First, only PKC encrypt packets we are originating // First, only PKC encrypt packets we are originating
if (isFromUs(p) && if (isFromUs(p) &&
// Don't use PKC with simulator #if ARCH_PORTDUINO
radioType != SIM_RADIO && // Sim radio via the cli flag skips PKC
!portduino_config.force_simradio &&
#endif
// Don't use PKC with Ham mode // Don't use PKC with Ham mode
!owner.is_licensed && !owner.is_licensed &&
// Don't use PKC if it's not explicitly requested and a non-primary channel is requested // Don't use PKC if it's not explicitly requested and a non-primary channel is requested

View File

@@ -34,7 +34,6 @@ std::ofstream traceFile;
Ch341Hal *ch341Hal = nullptr; Ch341Hal *ch341Hal = nullptr;
char *configPath = nullptr; char *configPath = nullptr;
char *optionMac = nullptr; char *optionMac = nullptr;
bool forceSimulated = false;
bool verboseEnabled = false; bool verboseEnabled = false;
const char *argp_program_version = optstr(APP_VERSION); const char *argp_program_version = optstr(APP_VERSION);
@@ -67,7 +66,7 @@ static error_t parse_opt(int key, char *arg, struct argp_state *state)
configPath = arg; configPath = arg;
break; break;
case 's': case 's':
forceSimulated = true; portduino_config.force_simradio = true;
break; break;
case 'h': case 'h':
optionMac = arg; optionMac = arg;
@@ -190,7 +189,7 @@ void portduinoSetup()
YAML::Node yamlConfig; YAML::Node yamlConfig;
if (forceSimulated == true) { if (portduino_config.force_simradio == true) {
settingsMap[use_simradio] = true; settingsMap[use_simradio] = true;
} else if (configPath != nullptr) { } else if (configPath != nullptr) {
if (loadConfig(configPath)) { if (loadConfig(configPath)) {

View File

@@ -134,4 +134,5 @@ extern struct portduino_config_struct {
bool has_rfswitch_table = false; bool has_rfswitch_table = false;
uint32_t rfswitch_dio_pins[5] = {RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC}; uint32_t rfswitch_dio_pins[5] = {RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC};
Module::RfSwitchMode_t rfswitch_table[8]; Module::RfSwitchMode_t rfswitch_table[8];
bool force_simradio = false;
} portduino_config; } portduino_config;