From 860aca9335d529b0ef02328f0afacef8ef007724 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Mon, 30 Jan 2023 14:50:03 -0600 Subject: [PATCH 1/2] Set encryptedOk to false for local_only rebroadcast --- src/mesh/FloodingRouter.cpp | 5 ----- src/modules/RoutingModule.cpp | 8 +++++--- 2 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/mesh/FloodingRouter.cpp b/src/mesh/FloodingRouter.cpp index 1498bbeab..d0925d0a1 100644 --- a/src/mesh/FloodingRouter.cpp +++ b/src/mesh/FloodingRouter.cpp @@ -59,11 +59,6 @@ void FloodingRouter::sniffReceived(const meshtastic_MeshPacket *p, const meshtas LOG_DEBUG("Ignoring a simple (0 id) broadcast\n"); } } - - if (config.device.rebroadcast_mode == meshtastic_Config_DeviceConfig_RebroadcastMode_LOCAL_ONLY) { - LOG_DEBUG("Cancelling rebroadcast of message from node on a foreign mesh, due to local only rebroadcast mode\n"); - Router::cancelSending(p->to, p->decoded.request_id); - } // handle the packet as normal Router::sniffReceived(p, c); } diff --git a/src/modules/RoutingModule.cpp b/src/modules/RoutingModule.cpp index f91d32a20..c1862e4ee 100644 --- a/src/modules/RoutingModule.cpp +++ b/src/modules/RoutingModule.cpp @@ -14,7 +14,8 @@ bool RoutingModule::handleReceivedProtobuf(const meshtastic_MeshPacket &mp, mesh // FIXME - move this to a non promsicious PhoneAPI module? // Note: we are careful not to send back packets that started with the phone back to the phone - if ((mp.to == NODENUM_BROADCAST || mp.to == nodeDB.getNodeNum()) && (mp.from != 0)) { + if ((mp.to == NODENUM_BROADCAST || mp.to == nodeDB.getNodeNum()) && (mp.from != 0)) + { printPacket("Delivering rx packet", &mp); service.handleFromRadio(&mp); } @@ -29,7 +30,8 @@ meshtastic_MeshPacket *RoutingModule::allocReply() assert(currentRequest); // We only consider making replies if the request was a legit routing packet (not just something we were sniffing) - if (currentRequest->decoded.portnum == meshtastic_PortNum_ROUTING_APP) { + if (currentRequest->decoded.portnum == meshtastic_PortNum_ROUTING_APP) + { assert(0); // 1.2 refactoring fixme, Not sure if anything needs this yet? // return allocDataProtobuf(u); } @@ -46,5 +48,5 @@ void RoutingModule::sendAckNak(meshtastic_Routing_Error err, NodeNum to, PacketI RoutingModule::RoutingModule() : ProtobufModule("routing", meshtastic_PortNum_ROUTING_APP, &meshtastic_Routing_msg) { isPromiscuous = true; - encryptedOk = true; + encryptedOk = config.device.rebroadcast_mode != meshtastic_Config_DeviceConfig_RebroadcastMode_LOCAL_ONLY; } From 14079524103482d26a5e1cf20d75b0b6bdf5d309 Mon Sep 17 00:00:00 2001 From: Ben Meadors Date: Mon, 30 Jan 2023 14:50:57 -0600 Subject: [PATCH 2/2] Fmt --- src/modules/RoutingModule.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/modules/RoutingModule.cpp b/src/modules/RoutingModule.cpp index c1862e4ee..d81311481 100644 --- a/src/modules/RoutingModule.cpp +++ b/src/modules/RoutingModule.cpp @@ -14,8 +14,7 @@ bool RoutingModule::handleReceivedProtobuf(const meshtastic_MeshPacket &mp, mesh // FIXME - move this to a non promsicious PhoneAPI module? // Note: we are careful not to send back packets that started with the phone back to the phone - if ((mp.to == NODENUM_BROADCAST || mp.to == nodeDB.getNodeNum()) && (mp.from != 0)) - { + if ((mp.to == NODENUM_BROADCAST || mp.to == nodeDB.getNodeNum()) && (mp.from != 0)) { printPacket("Delivering rx packet", &mp); service.handleFromRadio(&mp); } @@ -30,8 +29,7 @@ meshtastic_MeshPacket *RoutingModule::allocReply() assert(currentRequest); // We only consider making replies if the request was a legit routing packet (not just something we were sniffing) - if (currentRequest->decoded.portnum == meshtastic_PortNum_ROUTING_APP) - { + if (currentRequest->decoded.portnum == meshtastic_PortNum_ROUTING_APP) { assert(0); // 1.2 refactoring fixme, Not sure if anything needs this yet? // return allocDataProtobuf(u); }