Commit Graph

29 Commits (9e68049cd8a0c526a69e9f62013baac9d1d5defc)

Author SHA1 Message Date
Bryan Biedenkapp 9e68049cd8 ensure first super-frame LDU1 after an HDU sets the encrypt flag;
1 year ago
Bryan Biedenkapp 1b4ea4d8c7 refactor status bit handling slightly;
1 year ago
Bryan Biedenkapp 0304b98fac backport a change from incall_ctrl to fix issue with the first LDU1 after an HDU being non-standard MFId causing illegal grant demands and/or grants;
1 year 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;
1 year ago
Bryan Biedenkapp a015c547d7 ensure TDU is transmitted at end of voice;
1 year ago
W3AXL 340400fab7 fixed wrong MI on start of enc calls
2 years ago
Bryan Biedenkapp 617c889d1a
Merge DFSI host changes into master (#63)
2 years ago
Bryan Biedenkapp dbe1f69071 if the control the beginning of a call has valid crypto data, use the MI for the HDU;
2 years ago
Bryan Biedenkapp 07d6d3c91f fix issue where next MI wouldn't be calculated from the HDU MI if we received a valid HDU; fix issue with first superframe LDU1 containing a non-standard MFID resulting in incorrect destination IDs (if this happens and we've received a valid HDU, attempt to use the HDUs destination ID);
2 years ago
Bryan Biedenkapp da2f6130a8 [NOTICE: this commit is *EXPERIMENTAL* and implements *very* early data support, it is expected to be buggy, incomplete or broken] implement VTUN interface (fne0) on the dvmfne (this requires dvmfne to be run as root on Linux system [untested on non-Linux] to create the tun interface); implement VIFace random MAC generation; implement P25 TIA-102.BAEB SCEP ARP (SCEP is always used for conventional data) on dvmfne; refactor P25 packet status bits (this may break things else where, beware!); properly implement P25 status bit flipping on inbound channel activity; implement functionality in the P25 and DMR DataHeader classes to calculate the proper raw PDU frame length; implement dvmfne ARP table creation and maintainence (this is buggy and requires more implementation and test); implement dvmfne VTUN -> PDU and PDU -> VTUN IP traffic forwarding (this is incomplete and requires more implementation and test); correct several issues on dvmhost p25::packet::Data with overlapped buffers;
2 years ago
Bryan Biedenkapp d467405a01 ensure TDU preamble is sent before voice for late entry;
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 f23d3931f4 add initial support to process SNDCP control PDU data;
2 years ago
Bryan Biedenkapp 9050ad7885 this should address the issues with #53, dvmhost and dvmdfsi *should* transparently pass unknown non-standard MFId LCs in the voice LDU1 frames; correct some logging irregularities in dvmdfsi;
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 f39e8de0e1 refactor PR#55's peer list implementation to utilize a lookup table; add support to peer list implementation, when in whitelist mode to support per peer passwords (techincally this works in blacklist mode but is ... well irrelevant as blacklist mode *rejects* connections from peers in the list file); correct a few issues regarding how NAKs are returned early in the authentication handshake; reformat log messages; fix issue in host voice when regular conventional traffic is sent to a DVRS-enabled channel and legacy group grant is disabled;
2 years ago
Bryan Biedenkapp 9b6fcdbdf7 fix incorrect assembly of DENY TSDUs for certain services; replace QUEUE TSDUs for grant TSDUs with DENY TSDUs;
2 years ago
Bryan Biedenkapp cbb0af42ba fix some minor DVRS/conventional weirdness;
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;
2 years ago
Bryan Biedenkapp 424c7fa35a fix missed nullptr checks for if networking is disabled;
2 years ago
Bryan Biedenkapp 7cc2b99000 pass VSELP1/2 frames (this is experimental, in my tests doesn't break anything else, but it could), this will also pass VSELP1/2 frames to the network core but the host doesn't currently carry code to retransmit network VSELP frames over the air [yet];
2 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;
2 years ago
Bryan Biedenkapp b4f9b2d201 fix some issues with the "unsupported no no mode" that people continue to abuse; correct issue with calculating list offsets when announcing RID lists to the host;
2 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);
2 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;
2 years ago
Bryan Biedenkapp 21a4a97ec3 ensure if the network changes the destination ID for P25 and NXDN in-flight the LC data is properly replaced; implement talkgroup mutation by peer on conference bridge FNE;
2 years ago
Bryan Biedenkapp bd3a947964 enhancement for better dealing with voice in unsupported modes;
2 years ago
Bryan Biedenkapp d8dec70665 fix missing foreground option on dvmfne; add extra CC halt cases; correct bad check for enable control for conventional grant demand; fix incorrect creation og control byte for grant demand; add clear log message that a grant demand is being generated;
2 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;
2 years ago

Powered by TurnKey Linux.