Commit Graph

68 Commits

Author SHA1 Message Date
sawka
e1eecae6d3 implement WriteAt, refactored and tested append, writeat still needs testing 2022-08-18 21:54:42 -07:00
sawka
38870f9c6e circular file buffer. metadata in header. uses flock to synchronize access. write metadata before and after writing file data. 2022-08-18 20:34:20 -07:00
sawka
77bd1fa7bc return uname 2022-08-17 12:55:12 -07:00
sawka
9542d14473 make mshell home directory during getremoteid 2022-08-16 16:26:06 -07:00
sawka
5a8ffa3544 more complicated compgen for directory vs file completion 2022-08-11 10:21:11 -07:00
sawka
f4515139a1 uniq completions 2022-08-10 18:33:58 -07:00
sawka
d4528d1c42 compgen hasmore 2022-08-10 16:07:41 -07:00
sawka
fbb523aed8 implement compgen and cd in mshell server 2022-08-09 14:23:59 -07:00
sawka
74b88185dc add cache for ensuresessiondir 2022-08-08 09:52:50 -07:00
sawka
554f8f1b31 input packet should use base64, add remoteid. allow untailing a full entry (when command is done) 2022-07-07 22:45:14 -07:00
sawka
4f4dd67d06 comment out tailer for now 2022-07-07 21:38:05 -07:00
sawka
463187221b update tailer to use filenamegenerator. allow ptyonly option for getcmd 2022-07-07 21:37:17 -07:00
sawka
eb880e024e add hostname to init packet 2022-07-07 13:25:42 -07:00
sawka
2652a3509b add rpc to combined packet parser 2022-07-06 22:46:59 -07:00
sawka
353605f815 bug fixes and updates for running server with scripthaus 2022-07-06 18:59:46 -07:00
sawka
1b69bb0ac8 fix mshell server to just blindly proxy mshell single command input/output, better simpler code 2022-07-06 17:16:45 -07:00
sawka
51df0479ff sendpacket with context, initialize rpcmap 2022-07-06 14:35:27 -07:00
sawka
56e1ddf8e6 run packet opt to set term type 2022-07-06 14:06:58 -07:00
sawka
a1b8234954 fix tty TERM for ssh connections when usepty is set. also ignore pty read errors 2022-07-06 12:16:37 -07:00
sawka
95f11fb418 checkpoint, getting tty output working in non-detached mode 2022-07-06 11:21:15 -07:00
sawka
9aa684882b don't send done packet when detached 2022-07-06 00:25:59 -07:00
sawka
0d585e5959 clean up --single detached mode 2022-07-06 00:21:44 -07:00
sawka
96123c8e1a checkpoint for tightened runtime semantics for calls -- always send response packets, make sure correct response ids are set, etc. 2022-07-05 23:14:14 -07:00
sawka
0c204e8b2b standardize error reporting, rpc gets resp, command get cmderr, other errors are just sent as messages 2022-07-05 17:45:46 -07:00
sawka
ef362e5ee9 tighten up packet interfaces, RpcPacketType, RpcResponsePacketType, and CommandPacketType 2022-07-05 16:53:31 -07:00
sawka
0a828b7184 tightening up server mode, fix bugs, refactor, etc. 2022-07-01 17:37:37 -07:00
sawka
b6711e7428 sanitize packets to be 7-bit ascii without control chars. dont send data/dataend when no rundata present. use os.Executable to locate mshell if running locally. more work on detached mode 2022-06-29 14:29:38 -07:00
sawka
4d8841a459 use RunPacketBuilder in server mode 2022-06-28 22:05:47 -07:00
sawka
c73691ac24 move static files from remotefd content to 'rundata'. send all rundata before command start. parse rundata before command start. compatible with detached commands 2022-06-28 21:57:30 -07:00
sawka
9054c3cdcc got basic mshell --server functionality working to dispatch multiple commands 2022-06-28 19:01:33 -07:00
sawka
1d44afc10e working on server mode. extract fdcontext as interface. create packet writer/reader for mpio. hook up to serverFdContext. 2022-06-28 17:20:01 -07:00
sawka
d7eb2526f0 refactor RunClientSSHCommandAndWait for server code 2022-06-28 15:04:08 -07:00
sawka
9377619e4c write auto-detect logic for arch from uname 2022-06-27 23:14:53 -07:00
sawka
afd3bdb315 implement install command 2022-06-27 22:39:16 -07:00
sawka
26479f59c0 pass uname back when mshell isn't found, parse, and give install command 2022-06-27 18:42:56 -07:00
sawka
ec4bd5eaa1 only send 1 line from pw file, explicitly close pw file descriptor before running command 2022-06-27 15:59:14 -07:00
sawka
0f5ee87a76 allow mshell to execute local commands 2022-06-27 15:10:17 -07:00
sawka
dafe2b5a57 simplify argument parsing, hard code common ssh options 2022-06-27 14:57:01 -07:00
sawka
6574402691 create packetparser type, refactor to use 2022-06-27 12:14:07 -07:00
sawka
2a6791bcd6 combine sessionid and cmdid into one field ck (commandkey) 2022-06-27 12:03:47 -07:00
sawka
1ea8393844 update docs with sudo example 2022-06-26 01:53:07 -07:00
sawka
222deff0db implement sudo dance allowing passing the sudo password on stdin with sudo -S, and passing a different stdin fd to the command 2022-06-26 01:41:58 -07:00
sawka
e8ae01efae check for input termination before init packet 2022-06-25 00:33:18 -07:00
sawka
fec7721e32 refuse to run with ssh -t or -tt, detect nil runPacket 2022-06-25 00:30:41 -07:00
sawka
935500f1f1 packet debugging with --debug 2022-06-25 00:22:03 -07:00
sawka
43ed95f8fc clean up combining stdout and stderr into packet parsers, combine the channels and close appropriately 2022-06-25 00:05:37 -07:00
sawka
e6776bd974 checkpoint. transfer binary data as base64. handle cwd. detect open fds. working to transfer data in non-error cases. 2022-06-24 23:42:00 -07:00
sawka
5223760a76 got basic mshell client working -- still need detectfds and extra files support 2022-06-24 13:25:09 -07:00
sawka
0267836376 move multiplexed IO to its own package independent of SHExecType (to use in mshell client) 2022-06-24 10:24:02 -07:00
sawka
4256ff5231 checkpoint -- cleanup and sync optimizations for remote client (basically working). beginning work on local client 2022-06-24 00:02:18 -07:00