aboutsummaryrefslogtreecommitdiff
path: root/src/Mesh.cpp
AgeCommit message (Collapse)Author
2026-02-21* refactor of Contact/Client out_path_len (stored in files), from signed to ↵Scott Powell
unsigned byte (+2 squashed commits) Squashed commits: [f326e25] * misc [fa5152e] * new 'path mode' parsing in Dispatcher
2025-12-27* check for 'early receive' ACKScott Powell
2025-11-21* proposal for 'Extended Trace' packets. Using 'flags' byte, lower 2 bits, ↵Scott Powell
for path hash size.
2025-11-06* new PAYLOAD_TYPE_CONTROL (11)Scott Powell
* repeater: onControlDataRecv(), now responds to new CTL_TYPE_NODE_DISCOVER_REQ (zero hop only) * node prefs: new discovery_mod_timestamp (will be set to affect when node should respond to DISCOVERY_REQ's )
2025-11-05* RegionMap: inverted 'flags' to _deny_ bitsScott Powell
* Mesh: new filterRecvFloodPacket() for overriding * repeater CLI: 'allow' -> 'allowf' or 'denyf'
2025-11-04* Mesh: new sendFlood() overload with transport codes.Scott Powell
* BaseChatMesh: sendFloodScoped(), for overriding with some outbound 'scope' / TransportKey * companion: new 'send_scope' variable.
2025-10-31* Companion: Now using transport codes { 0, 0 } when Share contact zero hop.Scott Powell
* Repeater: onAdvertRecv(), adverts via Share now NOT added to neighbours table
2025-10-31* Upping max channel hash conflicts to 4 (was 2)Scott Powell
2025-07-16* CommonCLI: new "multi.acks" config settingScott Powell
2025-07-09Merge branch 'dev' into double-acksScott Powell
2025-07-08* Mesh::onAnonDataRecv() slight optimisation, so that shared-secret calc ↵Scott Powell
doesn't need to be repeated * SensporMesh: req_type now optionally encoded in anon_req payload (so can send various requests without a prior login)
2025-07-08Merge branch 'dev' into double-acksScott Powell
2025-06-30* PAYLOAD_TYPE_PATH: reserving upper 4 bits if 'extra_type' field, for ↵Scott Powell
future use
2025-06-23* new PAYLOAD_TYPE_MULTIPARTScott Powell
* experimental double ACK's (at each hop), sent 300ms apart (direct mode only)
2025-06-03* Mesh: reciprocal path send now with slightly less priority and 500ms delayScott Powell
2025-05-18* possible bug when forwarding direct mode packetsScott Powell
2025-04-11* added Packet::getRawLength() helperScott Powell
2025-03-19* verify() fix moved to Identity classScott Powell
2025-03-19* workaround for Identity::verify() bug.Scott Powell
2025-03-19* experimental workaround for sig verify() bugScott Powell
2025-03-17* redesigned TRACE packet structureScott Powell
2025-03-07Merge branch 'dev' into traceScott Powell
# Conflicts: # src/Dispatcher.cpp # src/Mesh.cpp # src/helpers/BaseChatMesh.cpp
2025-02-27* new Dispatcher::getCADFailRetryDelay()Scott Powell
2025-02-24* repeater and room server: login password now using strcmp(), new 'set ↵Scott Powell
direct.txdelay ..' config
2025-02-23* new PAYLOAD_TYPE_RAW_CUSTOMScott Powell
2025-02-20* MESH_DEBUG_PRINTLN fixesScott Powell
2025-02-20* Mesh/Dispatcher: MESH_DEBUG_ and MESH_PACKET_LOGGING now output date-time. ↵Scott Powell
(new getLogDateTime() virtual) * MESH_PACKET_LOGGING now parity with dynamic/file logging (src/dest hashes)
2025-02-17* new Packet type: PAYLOAD_TYPE_TRACEScott Powell
2025-02-01* Terminal Chat: new commands "card" and "import"Scott Powell
2025-01-22* Mesh.cpp: optimisation to not retransmit packets handled by this nodeScott Powell
* simple_repeater: now supports a remote CLI
2025-01-21* onPeerPathRecv() refactored: 'reciprocal path' now handled in Mesh class, ↵Scott Powell
not in application layer
2025-01-15* Refactor: Mesh::onPeer ... methods added 'secret' param. (is whatever ↵Scott Powell
getPeerSharedSecret() returned)
2025-01-14* removed unused Destination classScott Powell
2025-01-14* refactored the hasSeen(Packet) stuff.Scott Powell
2025-01-13* added getTransmitDelay(), applied to Flood mode retransmissions.Scott Powell
2025-01-13* simple_secure_chat: bug fixesScott Powell
2025-01-13* zeroing of path_len now in sendFlood()Scott Powell
2025-01-13* separated PAYLOAD_TYPE_ANON_REQ, to new createAnonDatagram(), with extra ↵Scott Powell
'sender' param. So, caller can use 'self_id' or ephemeral key
2025-01-13Initial commitScott Powell