Commit Graph

  • 6691e2aa77
    p25: fix extended-address PDU CRC-32 scope and outbound status bits (#125) r05a06_dev developer 2026-07-20 22:40:26 -0400
  • be5d9c033d p25: fix extended-address PDU CRC-32 scope and outbound status bits #125 scottmogul 2026-07-20 21:23:14 -0400
  • cb850e72da
    Merge 9c62b82222 into 82f0c0c375 #121 Lorenzo L. Romero 2026-07-19 07:52:40 +1200
  • 82f0c0c375 implement support to encrypt any TEK data with a preshared key; Bryan Biedenkapp 2026-07-17 13:42:22 -0400
  • 562fb3cc67 internally generate a GRP_VCH grant demand message for a net event when encountering a grant demand TDU; Bryan Biedenkapp 2026-07-15 17:08:27 -0400
  • f3698cbe86 encode the raw CSBK/TSBK/RCCH data in the control net event data; decode and send net_event for NXDN RCCH data; Bryan Biedenkapp 2026-07-15 15:48:32 -0400
  • 0db63a6534 fix missing stream ID for call events; add call duration on call end event; Bryan Biedenkapp 2026-07-15 10:03:58 -0400
  • c299d812e9 add support for call start/end WebSocket events; Bryan Biedenkapp 2026-07-15 09:17:00 -0400
  • 15886661bd undocument forceAllowTG0 option, this option is undocumented now and is really only intended for debugging purposes; Bryan Biedenkapp 2026-07-15 09:01:51 -0400
  • 7342f69fb9 whoops we were not clamping the jitter buffer size or max wait for peers to internal minimums/maximums; Bryan Biedenkapp 2026-07-15 08:57:17 -0400
  • 7c5df8abed add possible protective controls around RPTL/RPTK/RPTC/RPT_DISC to mitigate multi-threaded race condition from rapid disconnect/connection scenarios; Bryan Biedenkapp 2026-07-14 11:58:04 -0400
  • a7c7c3f330 correct possible null reference during disconnectPeer callback; Bryan Biedenkapp 2026-07-14 11:31:27 -0400
  • b47e6b0003 TN.1000 update network topo diagram was ... off and bothering my OCD; Bryan Biedenkapp 2026-07-08 12:21:57 -0400
  • 8b80477247 TN.1000 update network topo diagram was ... off and bothering my OCD; Bryan Biedenkapp 2026-07-08 12:19:34 -0400
  • e90cc29bc1 update TN.1000 to match reality; Bryan Biedenkapp 2026-07-08 12:16:07 -0400
  • f72fc5a1b3 corrections for failing NXDN tests; Bryan Biedenkapp 2026-07-08 09:39:41 -0400
  • e16685fc4a add rudimentary experimental support for NXDN to dvmbridge; correct a few issues with trunked voice handling for NXDN, when a VC is a trunked participant the outgoing voice frames are RTCH vs RDCH; Bryan Biedenkapp 2026-07-08 09:25:23 -0400
  • 3d22282606 add CAC/RCCH/UDCH rudimentary round-trip tests; Bryan Biedenkapp 2026-07-08 08:29:42 -0400
  • c76b417082 correct some minor NXDN issues; Bryan Biedenkapp 2026-07-08 08:03:09 -0400
  • 689243e099 source code organization and cleanup; Bryan Biedenkapp 2026-07-06 08:42:13 -0400
  • 2d5e307fd8 disable frameQueue debug; Bryan Biedenkapp 2026-07-02 23:49:07 -0400
  • 0463ae9c20 update README.md to notify user about port assignments for dvmfne; Bryan Biedenkapp 2026-07-02 11:14:10 -0400
  • 8784e06e3b EXPERIMENTAL: implement new stream rejection logic when a call collision occurs, this is smarter then the existing logic in that a stream will fail processing validation and be rejected once identified as a collider; Bryan Biedenkapp 2026-07-02 09:13:16 -0400
  • d29ce3c74f source code commenting cleanup; Bryan Biedenkapp 2026-07-02 08:10:19 -0400
  • 54b2a41ec0 increase the base network buffer size from 8192 -> 16384, this is doubly as large, some transfer frames to sysview can reach the 8k boundary and become truncated, this increase in buffer size should allievate that issue; Bryan Biedenkapp 2026-07-01 17:18:38 -0400
  • efedd6a53c disable accidentally enabled debug trace; Bryan Biedenkapp 2026-07-01 17:13:40 -0400
  • ae93c4cb27 throw errors about writing buffers >8192; Bryan Biedenkapp 2026-07-01 17:08:04 -0400
  • 36ab54e120 make oversized packet warning verbose; Bryan Biedenkapp 2026-07-01 17:02:27 -0400
  • 082dbcde81 make oversized packet warning verbose; Bryan Biedenkapp 2026-07-01 16:41:40 -0400
  • 4883e78065 report IP and port for oversized packet warning; Bryan Biedenkapp 2026-07-01 16:35:49 -0400
  • 1a13d736f2 report IP and port for oversized packet warning; Bryan Biedenkapp 2026-07-01 16:30:45 -0400
  • 5e3524dfef updates to various PDU handling functionality; Bryan Biedenkapp 2026-07-01 15:31:27 -0400
  • e983b1a812 correct OTAR UDP encrypted detect (was looking at the wrong field); fix DLD ACK to post-valiation; Bryan Biedenkapp 2026-07-01 13:16:38 -0400
  • 5b3433a3f3 whoops, add missing files, this time really add P25P2 MAC scrambling support; Bryan Biedenkapp 2026-07-01 12:44:58 -0400
  • 391e0068af add proper support for P25 P2 MAC scrambling; fix and enhance message number following for KMM frames; correct and fix CMAC rekey calculations; Bryan Biedenkapp 2026-07-01 11:18:29 -0400
  • 9c62b82222 Route patch status replication over metadata network #121 Lorenzo L. Romero 2026-06-26 21:03:02 -0400
  • 0a799ee2e9 Merge remote-tracking branch 'upstream/r05a06_dev' into fix/patch-status-metadata Lorenzo L. Romero 2026-06-26 20:38:52 -0400
  • f4154c462e store the grant elapsed time; update peer status with grant elapsed time; Bryan Biedenkapp 2026-06-25 23:26:14 -0400
  • 04ecac8e79 cleanup a couple of warnings; Bryan Biedenkapp 2026-06-25 20:57:29 -0400
  • 1d09439d06 document logging disabled level; Bryan Biedenkapp 2026-06-25 20:53:10 -0400
  • 075f0dbda2 use the last HDU for the encryption flag; Bryan Biedenkapp 2026-06-25 17:21:06 -0400
  • 6284f05386 make strapping check ICCs system requests so they are always actively sent; remove debug text; refactor how P25 call handler handles verifying TG strapping; Bryan Biedenkapp 2026-06-25 17:01:36 -0400
  • 24a573fec3 fix typo for clear bit setting on the FNE; properly annotate if a TG is selectable/secure/clear strapped; Bryan Biedenkapp 2026-06-25 15:44:03 -0400
  • 27ed5fc15f remove m_peers lock around peer update in erasePeer(); add hacky fuzzy matching logic to allow up to 3 bit errors for a CRC-CCITT162 (this better helps some P25 conditions where a TSBK may fault with a CRC-CCITT error, usually while enc enabled); implement support for selectively setting talkgroup encryption modes, selectable, strapped or clear (note due to how both DVMs implementation and how the protocols work there are some limitations, for example in DMR the FNE cannot reliably prevent calls from flowing to the network based on the selective talkgroup encryption modes, NXDN cannot reliably prevent a call grant because the encryption state isn't known at grant time, dvmhost provides no network-sourced traffic protection for clear or strapped as the assumption is the FNE will not allow a call to flow to begin with); Bryan Biedenkapp 2026-06-25 11:44:00 -0400
  • 895f5c8df7 when updating peers from erasePeer() lock the map before mutating; Bryan Biedenkapp 2026-06-23 14:14:02 -0400
  • 55bef73a5b tighten up how the shared maps and vectors lock themselves during certain operations; implement some critical changes to the REST API to help prevent and log on stuck REST API calls; correct some lock order issues within the FNE REST API; Bryan Biedenkapp 2026-06-20 10:38:53 -0400
  • 45c0661723 for control channel dvmhost peers, report the known peerId of voice channels via the TRANSFER_SUBFUNC_STATUS; update sysview to properly expire peers from the peer status list after 10 seconds of no updates from the FNE about that peer; Bryan Biedenkapp 2026-06-19 18:46:31 -0400
  • 6d15d94379 ensure stale peer status entries are erased after a period of inactivity; Bryan Biedenkapp 2026-06-19 18:11:32 -0400
  • 6c9883a084 return a internal server error when a exception is thrown during the read() operation for REST API calls; Bryan Biedenkapp 2026-06-19 16:06:34 -0400
  • 3c85caa482 surprising news to me the V.24 modem FW does not actually set byte 5 of the GET_STATUS opcode, so will never properly flag transmit status, as such I have implemented some faux handling in the host itself to emulate the behavior, this is done by flagging Tx once we start successfully writing data over V.24 (this can be misleading if the data is sent to our V.24 modem but the V.24 modem never sends it to a Quantar); Bryan Biedenkapp 2026-06-19 12:38:15 -0400
  • e550b46c4b fix issue with SysView in WebSocket mode dieing and not starting network services; Bryan Biedenkapp 2026-06-19 12:20:13 -0400
  • 86db348956 when the Network rotates HA IP, log the new connect IP for clarity; Bryan Biedenkapp 2026-06-17 11:37:45 -0400
  • 2df9a36522 file cleanup; Bryan Biedenkapp 2026-06-13 13:36:04 -0400
  • da4669659a now that we have proper UKEK and LLA FNE-side in the crypto container, implement proper per RID LLA support; Bryan Biedenkapp 2026-06-13 13:25:59 -0400
  • 7885ecc151 implement some grant demand hardening; implement network watchdog hardening for NXDN; Bryan Biedenkapp 2026-06-13 11:56:29 -0400
  • d8a65dc766 perform network watchdog handling in a more centralized manner in Voice::processNetwork(); fix condition where remote grant demands may happen even though TG hangtimers are running; Bryan Biedenkapp 2026-06-13 11:46:03 -0400
  • 9449de77d4 more hardening, when a net talkgroup hand releases if the state is non idle reset the state; Bryan Biedenkapp 2026-06-13 11:20:28 -0400
  • 6cd4b36446 add more netState handling hardening to ensure the state is returned to a default idle state; Bryan Biedenkapp 2026-06-13 11:11:25 -0400
  • cf96c35758 apply network watchdog logic to data packets as well as voice; Bryan Biedenkapp 2026-06-13 10:49:07 -0400
  • 05d939027b during network P25 voice calls, instead of dvmhost resetting the network watchdog every network frame only reset it when valid LDUs are processed, this should have the appropriate affect of applying the network watchdog and preventing a netState hang in a non-RS_NET_IDLE state if we never receive a network TDU to properly end a call; Bryan Biedenkapp 2026-06-13 10:46:47 -0400
  • 35de68b7c7 minor HA logging enhancement and fix (we were counting the HA IP count wrong); Bryan Biedenkapp 2026-06-13 10:21:40 -0400
  • 4641040d45 neighbor FNEs are always allowed to request keys with RID 0; Bryan Biedenkapp 2026-06-05 21:05:48 -0400
  • 7a9f7a0ef8 bridge should send the srcId in the KEY_REQ; Bryan Biedenkapp 2026-06-05 20:46:35 -0400
  • b83a2f2d9b allow RID 0 KEY_REQ override optionally (this maintains older behavior where KEY_REQs are gated by PEER ID); Bryan Biedenkapp 2026-06-05 20:45:02 -0400
  • 61638ad740 simplify how LDU voice vectors are recovered from network packed DFSI frames (this reduces code duplication across the project; correct bad length being used for P25 causing PDU data to be unintentionally truncated; Bryan Biedenkapp 2026-06-03 10:01:34 -0400
  • 054f157096 fix some issues with double-length DVM frames ($FD) where sometimes the serial port would still be buffering data and would return 0 bytes when the packet length was attempted to be read; Bryan Biedenkapp 2026-06-02 22:09:16 -0400
  • 5d7de897f3 initial support for adding KID ACLs per RID, this change allows the RID ACL list to contain whether or not a RID can request keys from the FNE KMF and wwhether it can request a OTAR rekey (future), it additionally adds a pipe delimited list of KIDs the RID is allowed to request; Bryan Biedenkapp 2026-06-01 16:02:40 -0400
  • 7326f42c2a + Add AI/LLM Notice in example configs & readme Dev_Ranger 2026-05-31 19:09:35 -0700
  • d46326c630 bump dvmcfggen version for R05A06; Bryan Biedenkapp 2026-05-31 14:44:43 -0400
  • 92bea91a5b several dvmcfggen fixes: correct HEX vs DEC issues reported by digilink/TAC-10; correct indentation issue for voiceChNo reported by digilink/TAC-10; fix missing configuration parameter; Bryan Biedenkapp 2026-05-31 14:43:30 -0400
  • 493ef2a728 process UKEKs and LLA keys from EKC file; Bryan Biedenkapp 2026-05-29 17:13:42 -0400
  • ec91c0fcad allow EKC container remote access to be disabled; add some extra documentation around dvmhost voice channels in the config stanza; Bryan Biedenkapp 2026-05-29 16:36:43 -0400
  • 1d8b31f6ea correct issue with PacketBuffer that could cause a potential crash when data alignment is incorrect; Bryan Biedenkapp 2026-05-29 15:28:08 -0400
  • e9597e336e use the metadata socket to report key inventory otherwise fnecore gets big sad; Bryan Biedenkapp 2026-05-29 15:16:18 -0400
  • 67ec2b5f6d fix KEYS_UPDATE to properly be two-phased so the packet buffer works properly; Bryan Biedenkapp 2026-05-29 13:42:35 -0400
  • 7d5db97449 add support for handling remote EKC management via new metadata traffic opcodes; Bryan Biedenkapp 2026-05-29 13:39:04 -0400
  • 74473bb6ad bump default nakFallOver count from 10 to 50 to decrease NAK fallover sensitivity; Bryan Biedenkapp 2026-05-29 07:56:29 -0400
  • 5a0ae176c3 do not reset nakFallOverCount ever, this is a fatal accumulation, if we accumulate NAKs then are suddenly fine, this can cause a situation where the NAK fallover logic never activates; Bryan Biedenkapp 2026-05-29 07:53:47 -0400
  • 6fca7c8d99 minor code cleanup to fix initialization order; Bryan Biedenkapp 2026-05-28 09:17:21 -0400
  • 55cb814a16 fix table lookup crash condition; Bryan Biedenkapp 2026-05-27 21:24:30 -0400
  • 48d3a07a1c correct potential heap corruption issue within Socket, which could cause strange failure behavior; Bryan Biedenkapp 2026-05-27 08:09:04 -0400
  • 608a7a5b48 move metadata updates into their own thread pool to prevent traffic thread pool exhaustion from failed metadata updates; add better logic around checking in-flight and pending metadata announcements to peers; add checking to drop an update entirely if the peer disappears; Bryan Biedenkapp 2026-05-26 13:20:59 -0400
  • 739c8bbf85 allow configuration of the logging for RID ACL list, TGID ACL list, and FNE peer list; Bryan Biedenkapp 2026-05-26 11:56:25 -0400
  • a5bd449761 prevent ICC self-deadlock; Bryan Biedenkapp 2026-05-25 16:55:21 -0400
  • 2c7ddb5285 correct possible infinite lock during replication updates; Bryan Biedenkapp 2026-05-25 16:35:46 -0400
  • 03eb962d6c remove extra pointer writes that should not be necessary; Bryan Biedenkapp 2026-05-25 15:19:55 -0400
  • cbc4a6848a during RPTL of a peer that is already connected, use disconnectPeer instead of trying to directly delete the connection, although this may cause problems of its own...; Bryan Biedenkapp 2026-05-25 14:48:09 -0400
  • 616b6c730a fix the shared_from_this lifetime in for ServerConnection and SecureServerConnection; Bryan Biedenkapp 2026-05-25 14:01:09 -0400
  • 90ca8f1a6a still not prime-time ready for anyone to use -- but I am over here implementing some fixes because my testcases are blowing up; Bryan Biedenkapp 2026-05-24 21:22:08 -0400
  • fe0350473b make metadata unknown opcodes for transfer and announce non-fatal and do not NAK; Bryan Biedenkapp 2026-05-23 09:50:58 -0400
  • 06df86e713 add support for group affiliation timeout similar to unit registration timeout (should handle #122); add support for bulk announcement of peer unit registration data to the FNE; move announcement handling from main traffic port to metadata port (for now there is a code redirect on the traffic port that will be maintained for a few versions before being deprecated; Bryan Biedenkapp 2026-05-22 15:33:30 -0400
  • 3d6a196ea8 correct serious issue with affiliation REST API lockup, in some cases the way locking was being done on the REST API could cause it to become deadlocked when querying affils; correct issue with auth token length in REST API; Bryan Biedenkapp 2026-05-17 12:03:46 -0400
  • 03a5e6a1db unless specifically set, if a TG is granted, we should *always* be doing the source ID check and denying the grant to a source RID that is different from the originator, the purpose behind this logic is to allow the source RID that is currently holding the grant to grant retry; Bryan Biedenkapp 2026-05-17 11:17:13 -0400
  • 8bf2bf16d3 EXPERIMENTAL: this is a fundamental change to the function of ChannelLookup, instead of maintaining a list in which we add or remove elements as they are available or in use, we will maintain a mapped channel ID to index bit array, where each bit index within the array of bits represents the availability state of the channel, this should make it far more stable to mark a channel as free or allocated instead of manipulating an array everytime; Bryan Biedenkapp 2026-05-17 11:02:34 -0400
  • 9c3601462f FNE patch status registry replication. Add docs to new patch registry functions. Replace unordered map with mutex guarded map. Lorenzo L. Romero 2026-05-17 10:47:20 -0400
  • 436bbf634e slight adjustments to cal and setup for dvmbbsdr support; Bryan Biedenkapp 2026-05-15 13:15:41 -0400
  • 12d8d5f313 add support for DMR reverse-channel data in the EMB field; Bryan Biedenkapp 2026-05-14 13:08:16 -0400
  • 07b0ebaf85 correct missing handling of MBC_DATA for DMR; Bryan Biedenkapp 2026-05-14 12:38:00 -0400
  • 64529052ff refactor how the P25 voice handler gets the currently active TGs, this is in effort to hopefully remove the crash condition by the use of the old at() code in the m_activeTG vector; Bryan Biedenkapp 2026-05-14 09:01:59 -0400
  • 60ecade84b update submodules; Bryan Biedenkapp 2026-05-13 09:51:20 -0400

Powered by TurnKey Linux.