Commit Graph

133 Commits

Author SHA1 Message Date
Mark Qvist
79eb170030 Implemented escape sequences and line-interactive mode 2023-09-18 20:39:24 +02:00
Mark Qvist
e0ba3d11ba Implemented an allowed_identities file for more convenient access management 2023-09-18 17:58:44 +02:00
Mark Qvist
3b71b197ae Removed log statement 2023-09-18 00:32:47 +02:00
Mark Qvist
14f9320860 Removed logging statement 2023-09-18 00:26:49 +02:00
Mark Qvist
aaf4dad420 Update version 2023-09-16 18:43:56 +02:00
Mark Qvist
a2a45a82af Implemented adaptive compression on stdin, stdout and stderr streams 2023-09-16 18:43:22 +02:00
Mark Qvist
e393857af8 Bumped RNS dependency to version 0.5.9 2023-09-16 18:41:32 +02:00
Mark Qvist
35910d3df1 Updated .gitignore 2023-09-16 17:11:05 +02:00
Aaron Heise
9ebf8147a0
Update documentation 2023-05-20 06:34:14 -05:00
Aaron Heise
2e9419f889
Updating RNS dependency
Candidate #20
2023-05-20 06:18:12 -05:00
Aaron Heise
26368c9d7c
Merge remote-tracking branch 'origin/main' 2023-05-12 09:08:02 -05:00
Aaron Heise
1b1f3eda01
Updating RNS dependency
Fixes #16
Fixes #11
2023-05-12 09:07:54 -05:00
acehoss
3dd98d7e9f
Merge pull request #19 from markqvist/python_compat
Missing version resolution
2023-05-11 13:55:49 -05:00
markqvist
84b1f0f035
Merge branch 'acehoss:main' into python_compat 2023-05-11 20:53:18 +02:00
Mark Qvist
4897cd0387 Fixed missing version resolution without pyproject.toml 2023-05-11 20:52:15 +02:00
acehoss
b7591aaa49
Merge pull request #18 from markqvist/python_compat
Remove unused importlib.metadata for Python 3.7+ compatibility
2023-05-11 13:28:27 -05:00
Mark Qvist
494ebb29fb Remove unused importlib.metadata for Python 3.7+ compatibility 2023-05-11 20:18:28 +02:00
Aaron Heise
e54ef5a675
Fix RNS dependency: should allow any version greater than 0.5.0, rather than only exact version. 2023-05-05 22:13:15 -04:00
Aaron Heise
f483444daa
Version bump 2023-03-08 16:58:03 -06:00
Aaron Heise
53332bf1ac
Use StreamDataMessage from RNS.Buffer
But don't use Buffer yet
2023-03-08 16:54:02 -06:00
Aaron Heise
5e97dc372e
Upgrade rns to 0.5.0 2023-03-08 16:42:29 -06:00
Aaron Heise
44dacb3eb3
Fix tests after switching to new Channel 2023-02-28 09:01:02 -06:00
Aaron Heise
5bca575a4b
Switch to RNS-provided Channel 2023-02-28 08:48:29 -06:00
Aaron Heise
b6a22cd2a7
Fix incorrect callback for loop signals 2023-02-25 05:20:48 -06:00
Aaron Heise
3a271c8cd5
Update some of the protocol details 2023-02-23 11:05:17 -06:00
Aaron Heise
a06d27ec15
Separate listener and initiator code into separate modules 2023-02-23 06:36:55 -06:00
Aaron Heise
458a2391df
Add tests for and fix #14 2023-02-22 21:16:41 -06:00
Aaron Heise
a07ce53bf9
Remove service name from aspects #12; minor tweaks
- Remove service name from RNS destination aspects. Service name
  now selects a suffix for the identity file and should only be
  supplied on the listener. The initiator only needs the destination
  hash of the listener to connect.
- Show a spinner during link establishment on tty sessions
- Attempt to catch and beautify exceptions on initiator
2023-02-22 19:58:03 -06:00
Aaron Heise
bd12efd7cf
Version bump 2023-02-19 06:51:01 -06:00
Aaron Heise
07cf0e3d05
Retry with Packet.resend() instead of Packet.send() for #8 2023-02-19 06:45:58 -06:00
Aaron Heise
b41bcbbc44
Event loop bursting
Pump event loops dry before sleeping. This has a noticeable positive effect on throughput.
2023-02-18 19:40:27 -06:00
Aaron Heise
ca836a60b2
Update README for v0.0.10 2023-02-18 18:40:44 -06:00
Aaron Heise
04b2660d41
Rate limit window change event.
Also added some scaling for pumping event loops to improve CPU usage.
Version bump for release
2023-02-18 18:31:59 -06:00
Aaron Heise
b72f9bbfdf Version bump 2023-02-18 13:12:47 -06:00
Aaron Heise
64fec6e012 Remove some stuff blocking older versions 2023-02-18 08:10:26 -06:00
Aaron Heise
acc217df90 Upgrade rns and remove hacks for previous version 2023-02-18 07:44:24 -06:00
Aaron Heise
1f31307307 Test improvements 2023-02-18 07:39:00 -06:00
Aaron Heise
2b3089ddd5 Try running process tests in build after daemon threads fix. 2023-02-18 07:15:52 -06:00
Aaron Heise
d4339ba224 Fix issue with high CPU on listener after initiator disconnect
#6
2023-02-18 07:14:15 -06:00
Aaron Heise
8edb4020b1 Got the new protocol working. 2023-02-18 00:09:28 -06:00
Aaron Heise
0ee305795f Added a new message-based, packet-ready protocol layer with test suite for #4 2023-02-17 10:48:16 -06:00
Aaron Heise
aa37e4e3da Added a polling tty function 2023-02-16 18:02:44 -06:00
Aaron Heise
3b3cee73bb Add some additional tests for #3 2023-02-16 07:03:57 -06:00
Aaron Heise
9a37a52601 Remove dependency on psutil for #5
The changes made for #3 allowed the removal of the dependency on `psutil`, the import of which was throwing a startup error on Android.
2023-02-16 00:34:38 -06:00
Aaron Heise
ebdcb50265 Support for pipes. #3
Connects pipes on the listener child process the same way they are connected on the initiator--any combination of stdin, stdout, and stderr could be connected to a pipe. Any one of those not connected to a pipe will be connected to a pty.
2023-02-16 00:18:34 -06:00
Aaron Heise
27664df0b3 Several test-driven fixes
- Improved test suite exposed several issues with the handling of
command line arguments which are now fixed
- Fixed a race condition that would cause remote characters to be
  lost intermittently when running remote commands that finish
  immediately.
- Added automated testing that actually spins up a random listener
  and initiator in a private Reticulum network and passes data
  between them, uncovering more issues which are now fixed.
- Fixed (hopefully) an issue where `rnsh` doesn't know what
  version it is.
2023-02-14 15:42:55 -06:00
Aaron Heise
d4cb31e220 Remote command append mode (-A) for listener 2023-02-14 06:18:22 -06:00
Aaron Heise
21b80819c6 Version bump 2023-02-14 05:31:11 -06:00
Aaron Heise
a3bd1f20fb Protocol version 2: do not base64 encode stream data 2023-02-14 04:28:31 -06:00
Aaron Heise
2c61fdf391 Allow retry timer callback to signal complete 2023-02-14 03:56:03 -06:00