Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
338 commits
Select commit Hold shift + click to select a range
5b3433a
whoops, add missing files, this time really add P25P2 MAC scrambling …
gatekeep Jul 1, 2026
e983b1a
correct OTAR UDP encrypted detect (was looking at the wrong field); f…
gatekeep Jul 1, 2026
5e3524d
updates to various PDU handling functionality;
gatekeep Jul 1, 2026
1a13d73
report IP and port for oversized packet warning;
gatekeep Jul 1, 2026
4883e78
report IP and port for oversized packet warning;
gatekeep Jul 1, 2026
082dbcd
make oversized packet warning verbose;
gatekeep Jul 1, 2026
36ab54e
make oversized packet warning verbose;
gatekeep Jul 1, 2026
ae93c4c
throw errors about writing buffers >8192;
gatekeep Jul 1, 2026
efedd6a
disable accidentally enabled debug trace;
gatekeep Jul 1, 2026
54b2a41
increase the base network buffer size from 8192 -> 16384, this is dou…
gatekeep Jul 1, 2026
d29ce3c
source code commenting cleanup;
gatekeep Jul 2, 2026
8784e06
EXPERIMENTAL: implement new stream rejection logic when a call collis…
gatekeep Jul 2, 2026
0463ae9
update README.md to notify user about port assignments for dvmfne;
gatekeep Jul 2, 2026
2d5e307
disable frameQueue debug;
gatekeep Jul 3, 2026
689243e
source code organization and cleanup;
gatekeep Jul 6, 2026
c76b417
correct some minor NXDN issues;
gatekeep Jul 8, 2026
3d22282
add CAC/RCCH/UDCH rudimentary round-trip tests;
gatekeep Jul 8, 2026
e16685f
add rudimentary experimental support for NXDN to dvmbridge; correct a…
gatekeep Jul 8, 2026
f72fc5a
corrections for failing NXDN tests;
gatekeep Jul 8, 2026
e90cc29
update TN.1000 to match reality;
gatekeep Jul 8, 2026
8b80477
TN.1000 update network topo diagram was ... off and bothering my OCD;
gatekeep Jul 8, 2026
b47e6b0
TN.1000 update network topo diagram was ... off and bothering my OCD;
gatekeep Jul 8, 2026
a7c7c3f
correct possible null reference during disconnectPeer callback;
gatekeep Jul 14, 2026
7c5df8a
add possible protective controls around RPTL/RPTK/RPTC/RPT_DISC to mi…
gatekeep Jul 14, 2026
7342f69
whoops we were not clamping the jitter buffer size or max wait for pe…
gatekeep Jul 15, 2026
1588666
undocument forceAllowTG0 option, this option is undocumented now and …
gatekeep Jul 15, 2026
c299d81
add support for call start/end WebSocket events;
gatekeep Jul 15, 2026
0db63a6
fix missing stream ID for call events; add call duration on call end …
gatekeep Jul 15, 2026
f3698cb
encode the raw CSBK/TSBK/RCCH data in the control net event data; dec…
gatekeep Jul 15, 2026
562fb3c
internally generate a GRP_VCH grant demand message for a net event wh…
gatekeep Jul 15, 2026
82f0c0c
implement support to encrypt any TEK data with a preshared key;
gatekeep Jul 17, 2026
6691e2a
p25: fix extended-address PDU CRC-32 scope and outbound status bits (…
scottmogul Jul 21, 2026
b4fae1f
do not allow non-call RF terminators to be silent, be noisy about the…
gatekeep Jul 22, 2026
191153d
code cleanup;
gatekeep Jul 22, 2026
03068fe
code cleanup;
gatekeep Jul 22, 2026
8fcd066
correct 3-bit error handling for Golay(24,12,8); add tests against ne…
gatekeep Jul 23, 2026
8b96163
cleanup call states better when receiving illegal terminators (this s…
gatekeep Jul 23, 2026
e810d0a
continue implementing catch2 tests;
gatekeep Jul 23, 2026
63e197f
more catch2 tests for base functions;
gatekeep Jul 23, 2026
aea826f
minor jitter buffer alteration to properly drop the oldest frame vs t…
gatekeep Jul 23, 2026
8b7f5ce
add catch2 tests for Thread and ThreadPool;
gatekeep Jul 23, 2026
0d45869
cherrypick changes from tsawyer/dvmhost/p25-consolidation into ModemV24;
gatekeep Jul 24, 2026
d05088d
corrections from cherrypicked code;
gatekeep Jul 24, 2026
9508ce9
expand on and better handle frame sequencing from a V.24 source;
gatekeep Jul 24, 2026
26f9f30
after review, because of how higher-level call handling works, and ho…
gatekeep Jul 26, 2026
399992f
correct possible edge case causing the Rx P25 stream ID to become stu…
gatekeep Aug 1, 2026
32c483a
enhance new host control tests for network loopback testing to test n…
gatekeep Aug 2, 2026
7cc073b
disabling rfTalkgroupHang (setting to 0) can cause a situation where …
gatekeep Aug 4, 2026
d72b604
implement the same fix for DMR and NXDN;
gatekeep Aug 4, 2026
39a7730
extra parity alignment with P25 for frame loss handling;
gatekeep Aug 5, 2026
5321821
fix incorrect assumptions by some HostControl tests; correct HostCont…
gatekeep Aug 5, 2026
0dc6e2b
during active RF collision defer stale stream reset;
gatekeep Aug 5, 2026
7bc01ec
duplicate applicable tests across to DMR and NXDN;
gatekeep Aug 5, 2026
2cff88b
add rfTGHang and rfLossWatchdog tests;
gatekeep Aug 5, 2026
f0f35b5
refactor how MetadataNetwork handles the packet buffer maps, this sho…
gatekeep Aug 6, 2026
66aa15e
continue adding code tests;
gatekeep Aug 6, 2026
0d896f6
code cleanup;
gatekeep Aug 6, 2026
a08d2bd
add core network loopback tests for sanity;
gatekeep Aug 6, 2026
c731b91
implement more complete network loopback tests;
gatekeep Aug 6, 2026
a5bebe8
refactor how TrafficNetwork and MetadataNetwork handle packet NET_FUN…
gatekeep Aug 6, 2026
4e7a08e
refactor base Network class to follow same packet processing refactor…
gatekeep Aug 7, 2026
3324b67
properly log a TOT state;
gatekeep Aug 7, 2026
c3f3374
always reset states regardless of RS_NET_IDLE when performing a netTG…
gatekeep Aug 7, 2026
6c0db3d
remove networkWatchdog stop from resetNet(); properly start network w…
gatekeep Aug 7, 2026
94ad2de
implement support to send logging and metrics to an SQLite DB; refact…
gatekeep Aug 7, 2026
6bfbb03
relabel some define constants;
gatekeep Aug 7, 2026
dea6d40
implement SQLite metrics DB table pruning; cleanup code;
gatekeep Aug 7, 2026
5e75b6b
replace mutex locking with lock-free atomics instead;
gatekeep Aug 8, 2026
268e5b6
increment total call processed counters when a data call starts;
gatekeep Aug 8, 2026
9ef9ba3
implement support to log collision events to the metrics DB;
gatekeep Aug 8, 2026
c9bb239
begin metric counting call switch events;
gatekeep Aug 8, 2026
805df02
report call switches in stats API;
gatekeep Aug 8, 2026
bcb37cc
remove mutex locking infavor of atomics which should prevent deadlock…
gatekeep Aug 8, 2026
07116a3
remove remaining mutex locking, this is dangerous but necessary so me…
gatekeep Aug 8, 2026
ead4323
add some logging around queue depth size;
gatekeep Aug 8, 2026
b609bcc
properly label sqlite thread;
gatekeep Aug 8, 2026
0dc2c37
thread must die if g_killed set;
gatekeep Aug 8, 2026
fdaaff2
sqlite3 writer should check g_killed to keep loop alive;
gatekeep Aug 8, 2026
74f23f7
bring calls processed numeric metric in lock-step with a call_event l…
gatekeep Aug 8, 2026
2657edc
for backcompat reasons support announce frames on the traffic port (t…
gatekeep Aug 9, 2026
2f07048
add example SQLite queries for use with Grafana to plot data from SQL…
gatekeep Aug 9, 2026
4840c2d
log an error when we try to push an event and there is no more room b…
gatekeep Aug 9, 2026
f309a78
= Update Influx metrics config field names
DevRanger Aug 10, 2026
ac9eaa9
Dev_Ranger was slightly overzealous in his match and replace;
gatekeep Aug 10, 2026
794e8b7
replace UDPSockets preshared AES-ECB implementation with a AES-CBC im…
gatekeep Aug 11, 2026
105e77d
add more tests;
gatekeep Aug 12, 2026
cf026d8
add techincal doc;
gatekeep Aug 12, 2026
c2a59ef
bump major version number;
gatekeep Aug 12, 2026
3c3dc87
correct double free;
gatekeep Aug 12, 2026
a4f8829
R05a06 dev (#126)
tsawyer Aug 12, 2026
b13f127
expand previous PR to cover all RS decode functions; implement fecErr…
gatekeep Aug 12, 2026
18a4a9b
correct condition where multiple Key Updates could clobber each other…
gatekeep Aug 12, 2026
56bff04
correct EKC container loading while file is being changes;
gatekeep Aug 12, 2026
e9dc058
baseline implementation of host-only P25 Phase 2 implementation (this…
gatekeep Aug 14, 2026
2b3276f
add FNE support to transmit P25 Phase 2 traffic; ensure critical Phas…
gatekeep Aug 14, 2026
5e15e26
correct a out-of-bounds read error in the HTTP server;
gatekeep Aug 14, 2026
6cbcd42
perform packet length validations;
gatekeep Aug 14, 2026
47fff42
add support for FNE tests via dvmtests harness;
gatekeep Aug 14, 2026
f3652d3
correct a regression with HTTP GET due to previous HTTP hardening;
gatekeep Aug 14, 2026
cf50ebd
file cleanup;
gatekeep Aug 15, 2026
6b29648
add missing comments/documentation somehow this got clobbered between…
gatekeep Aug 15, 2026
f5f86ef
add separate radio alias lookup for the purposes of serving non-ACL c…
gatekeep Aug 17, 2026
1930553
handle replicating radio aliases from FNE to FNE; implement RADIO_ALI…
gatekeep Aug 17, 2026
cb5429d
add example .dat file for radio aliases;
gatekeep Aug 17, 2026
fb6a808
start plumbing for Harris RF OTA User Alias (this is not wired yet...);
gatekeep Aug 19, 2026
b90cfb8
log corrected MI bytes in V.24/TIA DFSI LDU2 FEC-correction warning (…
tsawyer Aug 19, 2026
d736e7b
implement FNE REST API tests;
gatekeep Aug 21, 2026
69aaced
implement build system support for non-static linking;
gatekeep Aug 21, 2026
0e1d457
correct shared DLL compilation on Win32;
gatekeep Aug 21, 2026
5e68422
add APIs for managing the separate RID alias data; add Catch2 tests;
gatekeep Aug 21, 2026
c701b8e
correct use-after-free crash for Replication, NetworkTree and KeysUpd…
gatekeep Sep 5, 2026
5e23561
correct some infinte loop conditions due to bad loop variable sizes; …
gatekeep Sep 10, 2026
e47524a
correct heap use-after-free in ServerConnectionManager during stopAll();
gatekeep Sep 10, 2026
0776f91
correct issue where GROUP_UPDT would incorrectly override the current…
gatekeep Sep 11, 2026
93876e6
enhance LDU1 logs to include the current LCO;
gatekeep Sep 11, 2026
fc23017
P25 OTAR unit tests;
gatekeep Sep 14, 2026
cb390aa
correct packetbuffer issues;
gatekeep Sep 14, 2026
ccad147
correct issue where FNE might be a replica and the radio alias sync c…
gatekeep Sep 15, 2026
a4f1460
Fix analog and NXDN parrot playback intervals (#129)
RdWing Sep 19, 2026
5bd770a
update submodules;
gatekeep Sep 24, 2026
e9815ea
correct FNE transport for NXDN to handle 48-byte CAI frames (as inten…
gatekeep Sep 24, 2026
9f2949a
add missing network frame test;
gatekeep Sep 24, 2026
2662dbc
correct some DMR OTA late entry issues; correct missing NXDN packet l…
gatekeep Sep 24, 2026
28dd3ce
correct DMR and NXDN low-level network loopback tests; add missing an…
gatekeep Sep 24, 2026
a27e87e
correct FACCH buffer overflow;
gatekeep Sep 24, 2026
5091225
correct DMR PDU handling;
gatekeep Sep 24, 2026
9662385
correct various P25P2 issues; correct bad P25P1 bit additions from ne…
gatekeep Sep 24, 2026
e4bc909
correct bad LICH handling for RCCH type packets; correct some bad Pac…
gatekeep Sep 25, 2026
1040ba3
Add FNE console patch status registry service (#121)
lorenzolrom Sep 25, 2026
4774bb9
minor source cleanup and annotation;
gatekeep Sep 25, 2026
a2dea3c
add PatchRegistry sanity tests;
gatekeep Sep 25, 2026
44b5042
begin some corrective work for bridge NXDN support;
gatekeep Sep 25, 2026
5c5016b
implement NXDN crypto support; code cleanup;
gatekeep Sep 26, 2026
72b7ba4
EXPERIMENTAL: add support to bridge to duplicate traffic to analog wh…
gatekeep Oct 2, 2026
d098001
correct bad logging information;
gatekeep Oct 2, 2026
ce8b7a7
add similar support from TSBK to CSBK to treat CRC errors as warnings;
gatekeep Oct 4, 2026
adefbeb
correct P25 ACK_RSP ISP decode;
gatekeep Oct 4, 2026
99038b0
EXPERIMENTAL: add experimental support for NXDN encrypt/decrypt on br…
gatekeep Oct 6, 2026
e7fdaed
correct issue handling HA IP rotation;
gatekeep Oct 7, 2026
808aa8b
correct bad KMM authentication and replay protection; correctly negot…
gatekeep Oct 7, 2026
05b6200
whoops placed tests in wrong files;
gatekeep Oct 7, 2026
0bdac24
correct KMM NACK responses where necessary;
gatekeep Oct 7, 2026
10e681d
harden OTAR KMM handling and add bearer integration tests;
gatekeep Oct 7, 2026
b0e2903
perform refactor for how convential CAI P25 Data and SCEP is handled;
gatekeep Oct 8, 2026
3060769
add better handling for ARP and data packet routing;
gatekeep Oct 8, 2026
4d13008
reorganize source files; add mirror functionality for data router and…
gatekeep Oct 8, 2026
ce57f48
corrected short/long modem frame serialization without mutating sourc…
gatekeep Oct 8, 2026
c59e931
fix up ModemV24 to handle PDUs better;
gatekeep Oct 8, 2026
1cb1281
harden PDU delivery and batch OTAR rekey commands;
gatekeep Oct 8, 2026
cd4496b
correct OTAR response encryption and ACK ordering;
gatekeep Oct 8, 2026
aba9c33
pace complete PDU transactions for air and hotspot modems; correct TI…
gatekeep Oct 8, 2026
87b347b
send complete KMM key request and response frames, use fullLength() w…
gatekeep Oct 8, 2026
5d32e6f
implement support to send the KMM changeover;
gatekeep Oct 9, 2026
35a2716
add AACA Warm-Start Command encoding, CBC-MAC authentication, and tem…
gatekeep Oct 9, 2026
25dfc17
correct Tier III call teardown and slot allocation;
gatekeep Oct 10, 2026
33b9e25
recover Tier III grants for payload-channel re-key;
gatekeep Oct 10, 2026
b533ea1
file cleanup;
gatekeep Oct 10, 2026
dbc30e9
correct DMR ACK_RSP dstId truncation;
gatekeep Oct 10, 2026
536997a
add Tier III UDT and registration authentication;
gatekeep Oct 10, 2026
97208ef
implement some PacketBuffer bounds and order fixes;
gatekeep Oct 12, 2026
6c8becc
correct some STP edge case failures; implement STP unit tests proper;
gatekeep Oct 12, 2026
30e7099
implement GET /health FNE API that can be used to fetch a snapshot of…
gatekeep Oct 12, 2026
6e0f7c7
unify strings;
gatekeep Oct 12, 2026
a1315ee
remove the STP from health it has no good use;
gatekeep Oct 12, 2026
d07deb8
correct formatting;
gatekeep Oct 13, 2026
fd04268
correct crash condition that can be caused by retrieving KMF keys;
gatekeep Oct 13, 2026
b7ec27d
correct issue where P25 OTAR KMF RSI is fixed to 16777212 and not con…
gatekeep Oct 13, 2026
fb9db6b
correct KMM tests after correction for maximum KMF RSI;
gatekeep Oct 13, 2026
042c698
enhance PacketBuffer to support extended PacketBuffer delivery;
gatekeep Oct 13, 2026
04d12f1
reorganize and cleanup FNE configuration (this was overdue sorry ever…
gatekeep Oct 14, 2026
f68bc9f
allow disabling KMF UDP DLI by setting otarPort to 0;
gatekeep Oct 14, 2026
4c30d3f
comment out vtun qdisc args;
gatekeep Oct 14, 2026
55b7570
implement Change-RSI KMM encoding/decoding; recover from authenticate…
gatekeep Oct 14, 2026
3b1d249
support standard unconfirmed P25 MBT packets; implement TELE_INT_DIAL…
gatekeep Oct 14, 2026
b68fadb
correct file formatting and style;
gatekeep Oct 14, 2026
7367a5f
for the AI generation, lets ensure we have a proper AGENTS.md to dict…
gatekeep Oct 16, 2026
32b8e62
add RF talkgroup steering and preemption coverage for P25 enhanced co…
gatekeep Oct 17, 2026
9c66e6b
correct possible replication-based metadata worker deadlock;
gatekeep Oct 17, 2026
b231a2f
prevent peer replication traffic worker deadlocks; replace raw peer p…
gatekeep Oct 17, 2026
067b622
aggregate peer affiliations and unit registrations upstream;
gatekeep Oct 17, 2026
56c35c2
refactor P25 RF grant steering when in enhanced conventional; add opt…
gatekeep Oct 18, 2026
9e25bb8
remove DMR disable network grant demand options (it made no sense);
gatekeep Oct 18, 2026
cfc036c
add support for C++ peers to trigger a radio alias sync request;
gatekeep Oct 29, 2026
c0f4b89
P25 telephone interconnect (TIA-102 PSTN calls) for trunked systems v…
majmongoose Oct 31, 2026
ffaf2ff
correct issue with direct literal assignment to the JSON structure (y…
gatekeep Oct 31, 2026
a67733c
add some lifecycle tests for telephone interconnect;
gatekeep Oct 31, 2026
7ecb66a
whoops forgot to add source file;
gatekeep Oct 31, 2026
15e18e3
file cleanup;
gatekeep Oct 31, 2026
7fa3c16
better handle logging grant failures on the host for network traffic …
gatekeep Nov 1, 2026
944a434
add better handling for parrot playback to do typical eligibility che…
gatekeep Nov 1, 2026
a5e0f0f
parrot playback should also properly adhere to inclusion peer list ru…
gatekeep Nov 1, 2026
54cee44
fixes for REST API handling, correct bad condition where TLS handshak…
gatekeep Nov 5, 2026
3ba67a1
= Fix Bridge vocoder integration, framing, and buffer bounds
DevRanger Nov 7, 2026
c681494
= Fix NXDN receive ordering in FNE
DevRanger Nov 7, 2026
048de3a
add per-stream ordered FNE traffic dispatching; route DMR, P25P1, P25…
gatekeep Nov 7, 2026
fc59f50
file cleanup;
gatekeep Nov 7, 2026
38604c3
correct runtime issue grabbing talkgroups that could cause a crash;
gatekeep Nov 7, 2026
b08629a
support Linux versions of the AMBE library as well;
gatekeep Nov 7, 2026
df800c2
add guard check to prevent null dereference;
gatekeep Nov 8, 2026
7bbb6ad
do not check unit registration for U2U calls if unitToUnitAvail check…
gatekeep Nov 8, 2026
ab34854
do not start RF TG hangtimer for U2U calls;
gatekeep Nov 8, 2026
b555b2a
add synthetic U2U call tests;
gatekeep Nov 8, 2026
bcb8894
correct P25 unit-to-unit call setup and message-trunked continuation;…
gatekeep Nov 8, 2026
2ba4dbf
correct P25 unit-to-unit routing across FNE sites; use the explicit n…
gatekeep Nov 8, 2026
1b1d508
correct DMR and NXDN private-call setup and network routing; implemen…
gatekeep Nov 8, 2026
b72823c
preserve ACK_RSP addressing across network;
gatekeep Nov 9, 2026
d357736
add initial support to drop inbound network U2U calls at the host;
gatekeep Nov 9, 2026
62e7975
when disallowUnitToUnit is enabled both inbound and outbound U2U is b…
gatekeep Nov 9, 2026
5162e54
add unit test for disallowUnitToUnit on dvmhost;
gatekeep Nov 9, 2026
66751dd
correct unit tests;
gatekeep Nov 9, 2026
479a0e9
add configurable private-call routing to the FNE; replace disallowAll…
gatekeep Nov 9, 2026
d688488
correct some issues handling U2U call routing;
gatekeep Nov 9, 2026
718e434
update peered to support allow U2U option on peer ACL;
gatekeep Nov 9, 2026
91c0a3b
SYSVIEW peer connection class is treated like a neighbor for private …
gatekeep Nov 9, 2026
f0dcad2
disable accidentally enabled ebug trace;
gatekeep Nov 9, 2026
51887fd
add selective call handler debug enablement support;
gatekeep Nov 9, 2026
503ef4d
add selective call handler debug enablement support;
gatekeep Nov 9, 2026
651fd2a
ignore aff or unit reg for FNE source ID;
gatekeep Nov 9, 2026
4c18326
silence excess log noise;
gatekeep Nov 9, 2026
b6b9724
silence excess log noise;
gatekeep Nov 9, 2026
bef33b1
prevent telephone interconnect from flooding everywhere and properly …
gatekeep Nov 10, 2026
12fac00
because of certain individuals, refactor the BEExx checks to be clear…
gatekeep Nov 10, 2026
830a356
WHACKERS REJOICE! implement and route emergency alarm and call signal…
gatekeep Nov 10, 2026
a8d0242
correct P25 message and status update field widths and properly encod…
gatekeep Nov 10, 2026
a0a6709
correct possible memory leak in OSP_TSBK_RAW;
gatekeep Nov 10, 2026
a14bb62
correct P25 system service broadcast field packing, implement configu…
gatekeep Nov 10, 2026
d2ac635
correct P25 group affiliation query handling, correlate and retry aff…
gatekeep Nov 10, 2026
6911c69
correct P25 secondary control channel and adjacent site status broadc…
gatekeep Nov 10, 2026
88cb85c
update copyright;
gatekeep Nov 10, 2026
5177685
implement FNE synchronized talkgroup RID admission rules, enforce gro…
gatekeep Nov 10, 2026
59ecf16
whoops add missing test file;
gatekeep Nov 10, 2026
93e38ee
expand HTTP request framing tests, correct ServerConnectionManager lo…
gatekeep Nov 10, 2026
b8db35e
implement FNE authoritative channel grant transactions for P25, DMR a…
gatekeep Nov 10, 2026
f83ba48
implement transaction scoped P25 MFId handling, retain manufacturer i…
gatekeep Nov 10, 2026
5e14b54
correct bad responses for unregistered units during group affiliation;
gatekeep Nov 10, 2026
080d4d5
implement time-limited FNE subscriber operations for P25 and DMR radi…
gatekeep Nov 11, 2026
50cf3b5
SNDCPv1 Trunked Packet Data (#134)
dandrzejewski Nov 11, 2026
2de89d8
add metadata network support for starting P25 and DMR subscriber oper…
gatekeep Nov 11, 2026
f6bcaed
echo the subscriber's MFID in the conventional data registration resp…
dandrzejewski Nov 11, 2026
ede64a4
fix modem null port versioning, it was outdated reporting v3 protocol;
gatekeep Nov 11, 2026
c523c50
harden bridge UDP audio inactivity handling; reject incomplete PCM fr…
gatekeep Nov 11, 2026
509674f
add proper attribution and AUTHORS.md;
gatekeep Nov 11, 2026
93d2cfd
simplify;
gatekeep Nov 11, 2026
3c5ec5e
link to and mention dvmconsole in main project README.md;
gatekeep Nov 11, 2026
76128e5
add cliff notes for the modem firmware and hardware projects;
gatekeep Nov 11, 2026
9f8a336
add missing header;
gatekeep Nov 11, 2026
86c9c1d
because LLMs are retarded, put commentary for raw TSBK handling becau…
gatekeep Nov 11, 2026
ac926ab
harden CWID behavior;
gatekeep Nov 11, 2026
3d50ae8
bypass initial retry sequence and reset retry backoff for network con…
gatekeep Nov 11, 2026
a0536d2
harden TDULC call-end behavior;
gatekeep Nov 11, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
122 changes: 122 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
---
# dvmhost project-owned C and C++ style.
#
# This is intentionally conservative. The repository contains hand-formatted
# protocol code plus third-party, generated, and platform SDK sources. Do not
# run clang-format recursively over those trees; see AGENTS.md.
BasedOnStyle: LLVM
Language: Cpp
Standard: c++14

UseTab: Never
TabWidth: 4
IndentWidth: 4
ContinuationIndentWidth: 4
ConstructorInitializerIndentWidth: 4
AccessModifierOffset: -4
IndentAccessModifiers: false
NamespaceIndentation: All
IndentCaseLabels: false
IndentCaseBlocks: false
IndentGotoLabels: false
IndentPPDirectives: None

# Preserve the project's mixed brace convention: namespaces and function
# definitions use Allman braces; records and control statements use attached
# braces; case-local scopes put the brace on the following line.
BreakBeforeBraces: Custom
BraceWrapping:
AfterCaseLabel: true
AfterClass: false
AfterControlStatement: Never
AfterEnum: false
AfterFunction: true
AfterNamespace: true
AfterStruct: false
AfterUnion: false
AfterExternBlock: false
BeforeCatch: true
BeforeElse: false
BeforeLambdaBody: false
BeforeWhile: false
IndentBraces: false
SplitEmptyFunction: true
SplitEmptyRecord: true
SplitEmptyNamespace: true

SpaceBeforeParens: ControlStatements
SpaceBeforeAssignmentOperators: true
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeRangeBasedForLoopColon: true
SpaceBeforeCpp11BracedList: true
SpaceAfterTemplateKeyword: false
SpaceAfterCStyleCast: false
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
SpacesInAngles: Never
PointerAlignment: Left
ReferenceAlignment: Pointer
DerivePointerAlignment: false

AlignAfterOpenBracket: DontAlign
AlignOperands: DontAlign
AlignEscapedNewlines: Right
AlignTrailingComments: true
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignConsecutiveMacros: false

AllowShortBlocksOnASingleLine: Never
AllowShortCaseLabelsOnASingleLine: false
AllowShortEnumsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AllowShortLambdasOnASingleLine: Empty

BinPackArguments: true
BinPackParameters: true
ExperimentalAutoDetectBinPacking: false
BreakConstructorInitializers: AfterColon
PackConstructorInitializers: BinPack
AlwaysBreakAfterReturnType: None
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakTemplateDeclarations: MultiLine
BreakBeforeBinaryOperators: None
BreakBeforeTernaryOperators: true

# Existing files intentionally contain long log strings, protocol expressions,
# and manually selected wrapping. A zero limit prevents clang-format from
# reflowing them merely to satisfy an arbitrary width.
ColumnLimit: 0
MaxEmptyLinesToKeep: 1
KeepEmptyLinesAtTheStartOfBlocks: true
ReflowComments: false
CommentPragmas: '^ IWYU pragma:'

# Include and using order carries local grouping meaning in this repository.
SortIncludes: false
IncludeBlocks: Preserve
SortUsingDeclarations: false
FixNamespaceComments: false

# Catch2 and project assertion/logging macros should remain statement-like. This
# reduces clang-format's tendency to treat their following braces as functions.
StatementMacros:
- TEST_CASE
- TEST_CASE_METHOD
- SCENARIO
- SECTION
- REQUIRE
- REQUIRE_FALSE
- CHECK
- CHECK_FALSE

Cpp11BracedListStyle: false
CompactNamespaces: false
DeriveLineEnding: true
UseCRLF: false
DisableFormat: false
...
Loading
Loading