Commit Graph

988 Commits (ae3a03b521a48e824c52f9c5023b73bb844b6f93)
 

Author SHA1 Message Date
Bryan Biedenkapp a8adeeaad7 implement missing parrot delay timer; fix bad implementation where parrot frames were only played if network packets were received (this logic changed when threaded network Rx was implemented);
2 years ago
Bryan Biedenkapp 1ef806fef1 handle edge-case scenario of RTP packet sequence overrun;
2 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;
2 years ago
Bryan Biedenkapp 1632019650 port and implement /dmr/rid and /p25/rid REST APIs on the CFNE;
2 years ago
W3AXL 9675f42db5 added ability to save RID/TGID lookups from the FNE to local files
2 years ago
W3AXL b75389cd47 simple fix for RID list updates, verified on list sizes of 49, 50, 51, 99, 100, and 101
2 years ago
W3AXL 01bd534c8f fixed RID alias updates not working via REST
2 years ago
Bryan Biedenkapp 12c9e266cc update README.md;
2 years ago
Bryan Biedenkapp 86be53e2a3 update README.md;
2 years ago
Bryan Biedenkapp 5571a71e4e replace manual lock/unlock with lock_guard to ensure a lock is held in a scope, and released when a scope is closed;
2 years ago
Bryan Biedenkapp b7c6282767 fix for possible race condition (that shouldn't have happened in the first place), if writeMaster is being used in queueOnly = false, do an immediate network socket write without attempting to enqueue a message;
2 years ago
Bryan Biedenkapp 86d736b0bb revert change from 0ea6ee0 that changed the RingBuffer const char* to std::string to correct issue where the RingBuffer name is being copied incorrectly; change method for copying name std::string passed to AffiliationLookup; remove accidentally committed debug code;
2 years ago
Bryan Biedenkapp f000639c7f ensure m_forceHotspot is initialized to a sane default;
2 years ago
Bryan Biedenkapp e2514c1f8f mild include reorg;
2 years ago
Bryan Biedenkapp 977db52aac add libssl-dev to the GH build workflows;
2 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);
2 years ago
Bryan Biedenkapp cda6b5965f add support for optional TCP SSL/TLS sockets;
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 17d69cb950 add support to disable *ALL* passing of P25 ADJ_STS_BCAST from a CFNE instance; properly implement processing of TSDU messages from any peer; implement login flag from CFNEs to identify themselves as external when they are peering;
2 years ago
Bryan Biedenkapp ecdce85e8a clean up file;
2 years ago
Bryan Biedenkapp 9dadc06130 I was asked for ASCII art, and I deliver, thus, ASCII art;
2 years ago
Bryan Biedenkapp c3f9b69454 catch and log certain situations where a buffer in a buffer vector may be released (this is likely due to a non-tread safe network flush); expose size of inclusion, exclusion and rewrite lists so we don't need to copy them to know the size;
2 years ago
Bryan Biedenkapp ba785f3d91 hide debug here (m_debug/m_verbose should be adhered to in classes as they *optionally* enable debug trace for modules, allowing the LogLevel to be set to 1 and not spam the log/console with unintended debug statements); alter bad handling of a compiler constant string for the Server/User-Agent strings;
2 years ago
Bryan Biedenkapp 1e8a842a30 document functions in the Thread class; add a helper detach() method for future use;
2 years ago
Bryan Biedenkapp 4acb60aeff add more plumbing to the CFNE for future use;
2 years ago
Bryan Biedenkapp e7ce1d1f20 report errno errors from pthread_create;
2 years ago
Bryan Biedenkapp 92a5bbd580 treat threadedNetworkRx and threadedACLUpdate with pthread_detach and ensure they will not retain resources waiting for a pthread_join that'll never happen;
2 years ago
Bryan Biedenkapp d38e8d00da remove accidental debug code left in last commit;
2 years ago
Bryan Biedenkapp c4ca72581f for performance reasons on very noisy/busy setups that may have *lots* of peers, use of an alternate port to service diagnostic and activity log transfers helps ensure the traffic port doesn't become overloaded with data;
2 years ago
Bryan Biedenkapp 8ca4ed5a40 implement a few more CFNE NAK types to notify the peer of invalid conditions; take first steps towards FNE-side authoritative grants by implementing some logic plumbing;
2 years ago
Bryan Biedenkapp b7ebfa43e4 reorganize source code slightly, we shouldn't define logic in the CPP files for the talkgroup rules data classes, and instead we should define the logic in the header (since logic for these data classes shouldn't be anything complicated anyway);
2 years ago
Patrick W3AXL d8eff1f1f4
got tgid editing via REST mostly working (#49)
2 years ago
Bryan Biedenkapp 5d6c99da43 add missing mutex unlocks for the lookup tables (I'm not sure how this hasn't caused a problem); reorganize the code in FNENetwork and make threadedNetworkRx private; add some counting logic to ensure the voice tag classes flush voice frames every 5 peers to ensure timely delivery of packets;
2 years ago
Bryan Biedenkapp e348b15d7f for the purpose of performance handle incoming packets in their own threads (NOTE: this commit is *experimental* and may burn your house down and kick your dog, and it most certainly has a memory leak I'm working on somewhere);
2 years ago
Bryan Biedenkapp c6c1c72f79 institute a hard 250 peer cap on the CFNE for performance, stability and call quality reasons; implement support for the user to configure the connection limit on a CFNE; implement support to resolve a master NAK to a reason on the host;
2 years ago
Bryan Biedenkapp b28c685ee3 add missing documentation; properly annotate time value; add missing thread join wait;
2 years ago
W3AXL 4632bfb4b9 updated copyrights
2 years ago
W3AXL 18f5d69a36 implemented RID ACL file save
2 years ago
Bryan Biedenkapp b9c89aebf1 for sanity reasons -- huge RID lists make the log *VERY VERY* noisy, we'll silence this by not logging the toggle events;
2 years ago
Bryan Biedenkapp 86985a5ecc update peer ping time in RID ACL update; move core network process/read into its own thread;
2 years ago
Bryan Biedenkapp 49343917d6 add copyright lines for Patrick;
2 years ago
Bryan Biedenkapp 0ea6ee07ed fix missed change of const char* to std::string (GCC 11+ didn't catch this but 4.9 did? Isn't that something?);
2 years ago
Bryan Biedenkapp eb57f1b5d8 implement functionality to block traffic to specific peers from specific external peers; use std::string over const char* wherever possible to limit pointer passing; implement support in FrameQueue and RawFrameQueue to bypass the queue and directly send messages to specified peers (useful in some situations for packets to be immediately dispatched vs queuing and batching); chunk RID list transmissions to aid in increasing performance (this will likely also need to be done with the TGID lists in the future as well); refactor transmitting ACL lists to peers into its own spun off thread so we don't block the main network processing loop (and infact, this requires documentation; since at a certain peer size DVM network partitioning should be considered to reduce the number of concurrent peers serviced by any given FNE and to better load balance connections across a network, instead of relying on a singular central FNE); implement /peer/count REST API to simply return the known connected count of peers; disable the forced ACL list update functionality (for now);
2 years ago
W3AXL 26940f0187 updated rid_acl.example.dat for RID alias
2 years ago
Patrick W3AXL a279b33876
Add RID alias to RID ACL (#48)
2 years ago
Bryan Biedenkapp 987e944d4b add flag to denote traffic flow for external peers (that is a peer connection the CFNE makes to another CFNE);
2 years ago
Bryan Biedenkapp 7dc850669a reorganize messages for ADJ_STS_BCAST;
2 years ago
Bryan Biedenkapp 0ce9a374ee change source file to match configuration file change;
2 years ago
Bryan Biedenkapp a707106ea5 for sanity reasons, unless *specifically* required disallowing transmission of ADJ_STS_BCAST to external peers is enabled by default;
2 years ago
Bryan Biedenkapp af516f33fd report local and remote peer ID information for peer connection log messages;
2 years ago

Powered by TurnKey Linux.