Bryan Biedenkapp
3577544578
extend subscriber operation tracking for inbound DMR/P25 and P25 KMM requests, and expose recent operation history over REST and metadata;
1 day ago
W3AXL
9001b569f6
updated copyrights for W3AXL ( #136 )
...
Co-authored-by: W3AXL <29879554+W3AXL@users.noreply.github.com>
2 days ago
Bryan Biedenkapp
a1432509e7
correct crypto container loading issue;
2 days ago
Bryan Biedenkapp
50d5e01d9c
correct logging init order, because of async changes logging should be init after forking;
2 days ago
Bryan Biedenkapp
dd4d050cdb
time to piss everyone off, this commit changes logging to move things to a async queue when using file logging for performance; it also removes the .activity.log files, activity logging is still created however instead of being stored locally to conserve disk space on lower-end machines they are transmitted from peer to FNE and the FNE will either log them or store them to the metrics db;
2 days ago
Bryan Biedenkapp
a0536d2c34
harden TDULC call-end behavior;
2 days ago
Bryan Biedenkapp
3d50ae8907
bypass initial retry sequence and reset retry backoff for network connection startup;
2 days ago
Bryan Biedenkapp
ac926ab934
harden CWID behavior;
2 days ago
Bryan Biedenkapp
86c9c1d3dc
because LLMs are retarded, put commentary for raw TSBK handling because these intentionally fail open;
2 days ago
Bryan Biedenkapp
c523c50210
harden bridge UDP audio inactivity handling; reject incomplete PCM frames, use monotonic receive timing and prevent queued or active audio from being terminated by delayed watchdog checks;
2 days ago
Bryan Biedenkapp
ede64a4df5
fix modem null port versioning, it was outdated reporting v3 protocol;
2 days ago
David Andrzejewski
f6bcaed055
echo the subscriber's MFID in the conventional data registration response; an SU that registers with a manufacturer MFID rejects a response carrying the standard MFID as undeliverable; ( #135 )
...
Co-authored-by: David Andrzejewski <181952+dandrzejewski@users.noreply.github.com>
3 days ago
Bryan Biedenkapp
2de89d8088
add metadata network support for starting P25 and DMR subscriber operations, route protocol messages to the requested or registered peer and add operation start regression tests;
3 days ago
David Andrzejewski
50cf3b5e7e
SNDCPv1 Trunked Packet Data ( #134 )
...
* add SNDCP data page TSBKs, correct PDU disassembly with a header offset and clear autonomous access in the SNDCP channel announcement;
- add ISP_SNDCP_DATA_PAGE_RES ($13) and OSP_SNDCP_DATA_PAGE_REQ ($15)
- Assembler::disassemble no longer shifts the coded block stream by the
data header offset; the offset counts octets of reassembled user data
- OSP_SNDCP_CH_ANN no longer sets autonomous access; the announced
channel is the control channel, which receives no SN-Data
* echo data service options in SNDCP grants, handle SNDCP data pages and relay SNDCP grants to the FNE;
- the SNDCP data channel grant echoes the Data Service Options of the
request; an SU ignores a grant whose options differ
- transmit an SNDCP data page request received from the FNE and answer
a "proceed" page response with a data channel grant
- pass the first copy of each SNDCP grant to the network, so the FNE
knows the SU has been directed to a data channel
- read the SNDCP reconnect request as an ISP_SNDCP_REC_REQ, the class
the factory builds for it
* implement trunked SNDCP packet data in the FNE: activation ACK, SN-Data uplink and downlink, data paging and downlink retransmission;
- send the link-layer ACK for the SNDCP context activation request
- strip the SNDCP header from SN-Data received on the user data SAP and
handle the IPv4 datagram as packet data
- frame downlink datagrams as SN-Data for an SU with an SNDCP context
- raise the standby timer in the context accept from 1 minute to 4 hours
- page an SU that has left the data channel through the control channel
that last granted it one, and hold the PDU until the grant is reported
- retransmit a confirmed downlink the SU does not acknowledge, up to
twice, with the same N(S)
---------
Co-authored-by: David Andrzejewski <181952+dandrzejewski@users.noreply.github.com>
3 days ago
Bryan Biedenkapp
080d4d5714
implement time-limited FNE subscriber operations for P25 and DMR radio checks, P25 status queries, status updates and message updates, expose operation and status retrieval over REST and metadata networks, add dvmcmd queries, consume acknowledgements without peer fanout and add protocol, routing and store regression tests;
3 days ago
Bryan Biedenkapp
5e14b54b14
correct bad responses for unregistered units during group affiliation;
3 days ago
Bryan Biedenkapp
f83ba4862f
implement transaction scoped P25 MFId handling, retain manufacturer identity by source RID, destination RID and LCO, preserve last MFId as the DVRS compatible fallback, clear expired and completed transactions and add MFId isolation, cleanup, expiration and fallback regression tests;
3 days ago
Bryan Biedenkapp
b8db35ef30
implement FNE authoritative channel grant transactions for P25, DMR and NXDN, add U2U grant handling, local channel assignment, traffic channel permit and grant release cleanup, correct dedicated control channel traffic handling and P25 deny response decoding, remove supervisor configuration in favor of topology-driven traffic permits, document authoritative operating modes and add grant lifecycle regression tests;
3 days ago
Bryan Biedenkapp
93e38ee2c7
expand HTTP request framing tests, correct ServerConnectionManager lock scope during connection lifecycle callbacks;
3 days ago
Bryan Biedenkapp
5177685e48
implement FNE synchronized talkgroup RID admission rules, enforce group access during affiliation, RF ingress and channel grants for P25, DMR and NXDN while excluding U2U and telephone interconnect traffic, and add round-robin and protocol controller admission tests;
3 days ago
Bryan Biedenkapp
88cb85cc8f
update copyright;
3 days ago
Bryan Biedenkapp
6911c69170
correct P25 secondary control channel and adjacent site status broadcasts, preserve per-channel service classes, properly encode and decode advertised site data and retain multiple secondary control channels;
3 days ago
Bryan Biedenkapp
d2ac635b9d
correct P25 group affiliation query handling, correlate and retry affiliation queries, refresh WUID validity only for acknowledged valid transactions and complete group affiliation query support;
3 days ago
Bryan Biedenkapp
a14bb62b0b
correct P25 system service broadcast field packing, implement configurable WUID validity timing and properly encode blank Motorola BSI callsign characters;
3 days ago
Bryan Biedenkapp
a0a670937e
correct possible memory leak in OSP_TSBK_RAW;
3 days ago
Bryan Biedenkapp
a8d0242cf1
correct P25 message and status update field widths and properly encode and decode TDULC group voice channel updates;
3 days ago
Bryan Biedenkapp
830a356757
WHACKERS REJOICE! implement and route emergency alarm and call signaling for P25, DMR and NXDN, including P25 ISP emergency alarm, cancellation and acknowledgement procedures;
4 days ago
Bryan Biedenkapp
12fac00e43
because of certain individuals, refactor the BEExx checks to be clear in the source code with a clear warning that removing the checks is irresponsible, the protection is not for *YOU* the end user, its for people with poorly programmed subscribers that may roam incorrectly somewhere they should not be;
4 days ago
Bryan Biedenkapp
bef33b1ca4
prevent telephone interconnect from flooding everywhere and properly peer routing like U2U calls;
4 days ago
Bryan Biedenkapp
b6b9724cb4
silence excess log noise;
4 days ago
Bryan Biedenkapp
4c18326c44
silence excess log noise;
4 days ago
Bryan Biedenkapp
651fd2abba
ignore aff or unit reg for FNE source ID;
4 days ago
Bryan Biedenkapp
503ef4d836
add selective call handler debug enablement support;
4 days ago
Bryan Biedenkapp
51887fd883
add selective call handler debug enablement support;
4 days ago
Bryan Biedenkapp
f0dcad24b2
disable accidentally enabled ebug trace;
4 days ago
Bryan Biedenkapp
91c0a3b0b1
SYSVIEW peer connection class is treated like a neighbor for private call data;
4 days ago
Bryan Biedenkapp
718e434b75
update peered to support allow U2U option on peer ACL;
4 days ago
Bryan Biedenkapp
d68848872a
correct some issues handling U2U call routing;
4 days ago
Bryan Biedenkapp
479a0e90f3
add configurable private-call routing to the FNE; replace disallowAllUnitToUnit, dropUnitToUnit, and restrictPVCallToRegOnly with privateCallRouting and per-peer allowUnitToUnit policy; add a timestamped unit-route registry for explicit registrations and traffic-learned subscriber locations; route known DMR, P25, P25 Phase 2, and NXDN private calls only to the registered next-hop peer; reject or flood unknown destinations according to policy; enforce unit-to-unit authorization on ingress, egress, grants, and voice traffic; clean routes during registration replacement and peer teardown; correct private grant and unknown-destination flood handling; add comprehensive FNE routing and regression tests;
4 days ago
Bryan Biedenkapp
66751dd713
correct unit tests;
5 days ago
Bryan Biedenkapp
62e79752e2
when disallowUnitToUnit is enabled both inbound and outbound U2U is blocked;
5 days ago
Bryan Biedenkapp
d357736f24
add initial support to drop inbound network U2U calls at the host;
5 days ago
Bryan Biedenkapp
b72823cfd7
preserve ACK_RSP addressing across network;
5 days ago
Bryan Biedenkapp
1b1d508d6f
correct DMR and NXDN private-call setup and network routing; implement DMR Tier III OACSU availability checks with response correlation, collision handling, retries, cancellation, and timeout cleanup; validate conventional private-call destinations without disturbing group routing; correct NXDN individual-call request, response, assignment, duplicate assignment, disconnect, and transmission-release signaling; fix NXDN response-cause decoding and ten-bit traffic-channel encoding; route private calls to registered trunked or eligible conventional peers; add DMR, NXDN, host, codec, and FNE regression tests;
5 days ago
Bryan Biedenkapp
2ba4dbf97c
correct P25 unit-to-unit routing across FNE sites; use the explicit network U2U flag for private-call validation, routing, and late-entry voice when a private LCO is unavailable; restrict network answer requests to the control site serving the target subscriber; document conventional interoperability requirements; add FNE and host regression tests;
5 days ago
Bryan Biedenkapp
bcb8894154
correct P25 unit-to-unit call setup and message-trunked continuation; correlate UU answer responses with pending availability checks; track private grants and voice channel permits by subscriber pair; preserve grants across talkspurts, advertise the current requester as first-to-talk, and clean up U2U state on cancellation; add comprehensive U2U regression tests;
5 days ago
Bryan Biedenkapp
b555b2a4f0
add synthetic U2U call tests;
5 days ago
Bryan Biedenkapp
ab348543cf
do not start RF TG hangtimer for U2U calls;
6 days ago
Bryan Biedenkapp
7bbb6ade1b
do not check unit registration for U2U calls if unitToUnitAvail check is disabled;
6 days ago
Bryan Biedenkapp
df800c2998
add guard check to prevent null dereference;
6 days ago