Commit Graph

41 Commits (830a356757755b5205071acfff0e7d1f17d6f616)

Author SHA1 Message Date
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;
3 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;
4 days ago
Bryan Biedenkapp 536997ac10 add Tier III UDT and registration authentication;
1 month ago
Bryan Biedenkapp 33b9e25f55 recover Tier III grants for payload-channel re-key;
1 month ago
Bryan Biedenkapp 25dfc17d44 correct Tier III call teardown and slot allocation;
1 month ago
Bryan Biedenkapp 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);
5 months ago
Bryan Biedenkapp 07b0ebaf85 correct missing handling of MBC_DATA for DMR;
6 months ago
Bryan Biedenkapp 274a8f23fc
Merge R05A02 (r04k32_dev branch) into Master (#110)
11 months ago
Bryan Biedenkapp 7c2bfb3914
R04J32 Merge to Master (#95)
1 year ago
Bryan Biedenkapp fb0e51f36a make Win32 compiles work again; correct incorrect behavior handling try_lock_for;
2 years ago
Bryan Biedenkapp 63c85f3781 implement proper blocking operations for RPC; don't allow a RPC instance to call itself (i.e. you can't listen on port 127.0.0.1:9890 and then use req() to send an RPC to the listening instance); fix issue with RPC_PERMIT_XXX_TG not being a blocking operation; fix issue with RPC_DMR_TSCC_PAYLOAD_ACT not being a blocking operation;
2 years ago
Bryan Biedenkapp 3da4eb2d40
REST -> RPC Migration (#84)
2 years ago
Bryan Biedenkapp 172f0f2eb0 missed commit when this was manually merged;
2 years ago
Bryan Biedenkapp 151275ce6f implement initial DMR remote grant demand logic (this is mostly untested);
2 years ago
Bryan Biedenkapp b419c56405 reject U2U voice channel grant for P25, DMR and NXDN if the unit being called isn't registered;
2 years ago
Bryan Biedenkapp cc274ba78e add support to selectively revert to previous logic ignoring affiliation checks;
2 years ago
Bryan Biedenkapp 7736e03aef add ability to disable NON-AUTHORITATIVE log warnings (functionality is made optional as it makes diagnostics easier); remove redundant error message from grant demands;
2 years ago
Bryan Biedenkapp 84a3d859b9 remove debug trace;
2 years ago
Bryan Biedenkapp 7b27eadbd7 correct issue where DMR would round-robin assign slots for TGs, instead ensure available channel resources for the request slot exist and grant or queue accordingly; add some experimental support to generate a CSBK grant from network traffic if the destination ID hasn't already been granted;
2 years ago
Bryan Biedenkapp 0fda70654c fix incorrect log messaging;
2 years ago
Bryan Biedenkapp c435256726 ignore plea's for SU registration on DMR when trying to register with power saving options;
2 years ago
Bryan Biedenkapp f49b6ce257 document why the response data is set to 0;
2 years ago
Bryan Biedenkapp dc29208e70 refactor DMR PDU processing to be more in-line with how P25 PDU processing is done; implement support on the FNE to inspect and dispatch DMR PDUs properly;
2 years ago
Bryan Biedenkapp 197ce833ac correct Trellis symbol skipping logic for DMR for 3/4 Trellis; enhance DMR short LC bits; correctly identify short LC for data and CSBK; correct buffered PDU repeat logic (when header has no blocks following);
2 years ago
Bryan Biedenkapp 882c2564ca correct double spaced formatting of CPP files in common; convert dvmhost to Doxygen documentation format; convert dvmfne to Doxygen documentation format; convert dvmcmd to Doxygen documentation format;
2 years ago
Bryan Biedenkapp cb0500b2e7 treewide: refactor constant variables into proper enumerations where appropriate (this applies to DMR, P25 and NXDN, and may introduce gremlins);
2 years ago
Bryan Biedenkapp 1de86458a6 fix DVRS unit deregistration issue (units weren't registered properly during GRP_AFF because DVRS doesn't do the typical U_REG); implement 12-hour timeout for unit registrations (this is only applied if the SU in question has *NOT* had *ANY* activity within 12 hours);
2 years ago
Bryan Biedenkapp e0b6da51fb make the network presence announcment (VC -> CC and CC -> FNE) timing configurable (this value is in seconds); refactor RF channel enumeration, RF channels are now enumerated in their own class ChannelLookup instead of being integrated into AffiliationLookup, this allows the flexibility to update and change channel information at runtime; add support for VC -> CC presence/registration to tell the CC what the REST information is for that VC, this makes the restAddress and restPort entries for the voiceChNo list in the config.yml optional, the only mandatory fields are channelId, channelNo and restPassword;
3 years ago
Bryan Biedenkapp 424c7fa35a fix missed nullptr checks for if networking is disabled;
3 years ago
Bryan Biedenkapp 4d776f6314 add support for DMR T3 adjacent site broadcast;
3 years ago
Bryan Biedenkapp 690bac453d remove clearBeforeWrite function argument for a lot of control singalling (and some data) cases, this was an old method of clearing the Tx packet queue before creating a frame to ensure it went out really fast, but shouldn't be done anymore, so I'm removing this so no one gets any bright ideas;
3 years ago
Bryan Biedenkapp 856fa98357 make the REST response wait time variable; use a quick response time of 150ms when using REST API during real-time OTA packet processing; add extra logging messages for UDP;
3 years ago
Bryan Biedenkapp 31ca17449d *BEWARE* this commit alters the RPI_ARM cross-compiler and may break things *BEWARE*; implement support for HTTPS SSL REST API configuration; add contrib binary overlay for the RPI_ARM compiler (to add libssl-dev dependences);
3 years ago
Bryan Biedenkapp 4acb60aeff add more plumbing to the CFNE for future use;
3 years ago
Bryan Biedenkapp 5b5efcbe9d add support for network announcement of unit registration, deregistration and group affiliation so the FNE can collate the data more accurately; implement REST API on dvmfne to support retreiving the list of known affiliations; correct a bug in enumeration of RID and TGID lists that could cause weirdness; remote unnecessary "control" RTP payload type and just use a singluar payload type;
3 years ago
Bryan Biedenkapp 5a5104ba2f treewide: perform general refactor of file headers, I've modified the file headers to follow rules from: https://www.kernel.org/doc/html/next/process/license-rules.html, this trims/compresses the file header section a bit reducing the number of lines at the top of every file quite a bit, going forward all new files should follow this new format (if its good enough for the Linux kernel, its good enough for me);
3 years ago
Bryan Biedenkapp bad8129d7d file header updates;
3 years ago
Bryan Biedenkapp d9e2458722 implement support for low-level TCP sockets; deprecate and remove new_unique macro and use appropriate std::make_unique; apply various clang linting;
3 years ago
Bryan Biedenkapp eba4db6104 refactor RTP code slightly to better handle tracking the RTP timestamp properly;
3 years ago
Bryan Biedenkapp 73e32df310 ensure DMR doesn't try to perform supervisory control for the opposing slot on a CC instance; correct TSBK ToString();
3 years ago
Bryan Biedenkapp 1379482fcc reorganize entire codebase structure; move common classes, files into a compile time static library; reorganize CMake files to make use of common static library to reduce compile time;
3 years ago

Powered by TurnKey Linux.