Commit Graph

1024 Commits

Author SHA1 Message Date
Michael Jumper
6d33be152c Fix prompt() handling of backspace/enter. Format name based on username and hostname. Add port parameter (not yet used). Determine parameter indices based on enum. 2013-05-25 23:15:55 -07:00
Michael Jumper
cf8ec8dbc2 Properly cleanup SSH sessions. 2013-05-25 23:05:58 -07:00
Michael Jumper
763ed37179 Add remaining keys, fix backspace. Add insert flag. 2013-05-25 22:45:26 -07:00
Michael Jumper
88ca59a5b3 Implement terminal reporting features. 2013-05-25 20:24:44 -07:00
Michael Jumper
3a14c864a6 Only send DA response if no private mode. 2013-05-25 18:20:35 -07:00
Michael Jumper
f2520ca91c Send 0x0D for return. 2013-05-25 16:09:28 -07:00
Michael Jumper
b823192f03 Ignore unhandled control codes. Implement ENQ. 2013-05-24 22:54:56 -07:00
Michael Jumper
8967afefb6 Only send response to ESC[0c. 2013-05-24 22:26:24 -07:00
Michael Jumper
43eddc14c0 Implement G0/G1 switching. 2013-05-24 21:28:14 -07:00
Michael Jumper
0f5b5d39b4 Initial support for G0/G1 character sets. 2013-05-24 21:18:47 -07:00
Michael Jumper
94ee3c87fc Implement ESC-Z identify and ESC-c reset. 2013-05-24 16:29:43 -07:00
Michael Jumper
7216f734b5 Add some Linux-specific missing codes, reorder SGR. Add explicit ignores for unapplicable features. 2013-05-24 15:00:54 -07:00
Michael Jumper
e0c46a41a2 Interpret ESC[3J as if ESC[2J 2013-05-24 13:44:51 -07:00
Michael Jumper
b513e4ba93 Add LF/NL mode. 2013-05-24 13:33:32 -07:00
Michael Jumper
e3f89052e5 Specify terminal type. 2013-05-23 23:43:35 -07:00
Michael Jumper
f4475b4f00 Move flags to generic function, add charset handler stubs. 2013-05-23 23:12:01 -07:00
James Muehlner
8f1b5ae769 Ticket #313: Fixed styling. 2013-05-23 00:02:42 -07:00
James Muehlner
fb74c87e23 Ticket #313: Return whatever is converted so far if EILSEQ detected. Furthermore, if NULL returned from convert(), just send an empty string. Finally, use //TRANSLIT as an option for iconv_open if the library version supports it. 2013-05-22 21:53:30 -07:00
Michael Jumper
ae7959c6a4 Clear screen after prompts. 2013-05-22 11:54:28 -07:00
Michael Jumper
88dfb1517d Preserve cursor attribute when cursor row is touched. 2013-05-22 11:51:01 -07:00
Michael Jumper
c2f507a00a Fix handling of CSI sequences. 2013-05-22 11:38:39 -07:00
Michael Jumper
b1622413a9 Implement mode set/reset. Implement DECCKM mode. 2013-05-22 11:08:38 -07:00
Michael Jumper
334d6cb08b Fix background filling algorithm. 2013-05-22 03:26:51 -07:00
Michael Jumper
b66d8f2e9a Implement CSI 'a' 2013-05-21 23:57:55 -07:00
Michael Jumper
266f4e8d1b Implement DECALGN (fill screen with E's) 2013-05-21 23:38:35 -07:00
Michael Jumper
dd936b4873 Implement CSI e and f. 2013-05-21 23:27:34 -07:00
Michael Jumper
af700542b0 Implement CSI E and F. 2013-05-21 23:20:13 -07:00
Michael Jumper
c62bba9e15 Fix scroll region set CSI (no parameters should reset region) 2013-05-21 22:37:53 -07:00
Michael Jumper
142b526a97 Move write_all convenience function to common. 2013-05-21 22:09:42 -07:00
Michael Jumper
5a0b8b2ea7 Move pipes to terminal scope. 2013-05-21 22:02:11 -07:00
Michael Jumper
225377f197 Fix VT/FF. Implement DEL and CSI. 2013-05-21 00:57:44 -07:00
Michael Jumper
438ac8e9bb VT and FF should behave exactly as LF. 2013-05-21 00:55:46 -07:00
Michael Jumper
4763f029a4 ACTUALLY alphabetize... 2013-05-21 00:47:55 -07:00
Michael Jumper
c1b0e3bb3b Alphabetize CSI handlers. 2013-05-21 00:35:18 -07:00
Michael Jumper
7894346285 Implement Index and Next Line. 2013-05-21 00:29:19 -07:00
Michael Jumper
b38412fd3d Implement save/restore cursor. 2013-05-21 00:19:53 -07:00
Michael Jumper
c220a4875c Properly close pipe file descriptors. Wait for input thread to close in SSH thread. 2013-05-20 10:52:47 -07:00
Michael Jumper
639389ced8 Fix error when no data received (read returns SSH_AGAIN). 2013-05-20 10:44:43 -07:00
Michael Jumper
5fd14b3b4d Handle resize when SSH not connected. Update visible cursor row in resize. 2013-05-20 10:27:53 -07:00
Michael Jumper
80825072fe Reinstate SSH client. 2013-05-20 01:23:21 -07:00
Michael Jumper
0f978393a6 Implement prompts, do not actually redirect real STDIN/STDOUT. 2013-05-20 00:33:17 -07:00
Michael Jumper
0057460c44 Add echo flag. 2013-05-18 22:24:09 -07:00
Michael Jumper
a53a5e2e1b Working input/output. 2013-05-17 22:53:13 -07:00
Michael Jumper
5009d1c280 Revert "Use input/output threads for SSH client."
Should actually have one main thread, which then spawns an input thread after connection successful.

This reverts commit 6a099b4176fb732b7281128100fe66bb0a72da1a.
2013-05-17 20:58:47 -07:00
Michael Jumper
8f0c2f3723 Use input/output threads for SSH client. 2013-05-17 20:53:16 -07:00
Michael Jumper
96edfad7c0 Add stub client thread. 2013-05-17 20:47:05 -07:00
Michael Jumper
0dbcdabe40 General naming cleanup. 2013-05-17 20:28:26 -07:00
Michael Jumper
ec845a812a Remove core SSH client code. Refactor message handler to handle pipe for STDOUT. Refactor key and clipboard handlers to handle pipe for STDIN. 2013-05-17 20:20:51 -07:00
Michael Jumper
791da3dc81 Properly update visible cursor row when terminal scrolled. 2013-05-15 13:55:40 -07:00
Michael Jumper
9b0a210c12 Improve cursor rendering, ensure display not affected if cursor does not move. Repurpose unused "selected" attribute for marking the cursor. 2013-05-15 12:46:26 -07:00