Commit Graph

45 Commits

Author SHA1 Message Date
Iwasaki Yudai 678258ecf1 Log received hterm preferences in console 2015-08-30 06:51:05 +09:00
Iwasaki Yudai d3e48aa3ae Merge profile and config files and support custom index file 2015-08-29 13:23:00 +09:00
Iwasaki Yudai 25a5bc0b89 Fix default config file loading 2015-08-28 21:11:46 -07:00
Iwasaki Yudai 02e0b6fafd Use `WriteMessage` to simplify 2015-08-28 17:49:25 +09:00
Iwasaki Yudai c71cc21721 Send SIGHUP to process after closing PTY
POSIX doesn't grantee that a blocked Read() operation will be released
after closing the file. Moreover, the pty file left intact even after
closing the file and the process keeps running in this case.
2015-08-28 17:22:42 +09:00
Iwasaki Yudai 4b67e3059d Support config file 2015-08-27 17:59:49 +09:00
Iwasaki Yudai f60fd58f9b Replace "cert" to "crt" 2015-08-25 21:14:15 -07:00
Iwasaki Yudai 783e3fd925 Don't translate input
When `send-encoding` is `utf-8`, hterm translate input from the
clipboard from UTF-16 to UTF-8, even when the input is indeed UTF-8.
This translation messes up all non ASCII input.
2015-08-25 11:23:38 +09:00
Iwasaki Yudai d4475579ff Close listener after calling `StartRoutine()`
This change prevents the listener from closing itself before
establishing the websocket session with the client.
2015-08-24 12:15:24 -07:00
Iwasaki Yudai 470621f39e Add `--once` option that accepts only one client and exit 2015-08-24 19:35:49 +09:00
Iwasaki Yudai e613b29cc3 Shutdown server gracefully with Ctrl-C 2015-08-24 19:22:25 +09:00
Iwasaki Yudai 7b6911d7dd Support TLS/SSL encryption 2015-08-24 16:43:03 +09:00
Iwasaki Yudai c56e41b56b Extract function for loading profile files 2015-08-24 16:13:22 +09:00
Iwasaki Yudai acacba6f03 Support auto reconnection
A new option `--auto-reconnect` which takes seconds to reconnect is
added.
2015-08-24 07:14:24 +09:00
Iwasaki Yudai 4df9ac8059 Use `url.URL` for constructing URLs 2015-08-24 05:34:56 +09:00
Iwasaki Yudai ca14394ec8 Use `net.JoinHostPort` for better IPv6 handling 2015-08-24 05:22:47 +09:00
Iwasaki Yudai 5d2cdd2768 Show IPv6 addresses with `[` and `]`
So that users can open IPv6 URLs on web browsers.
2015-08-24 05:05:58 +09:00
Iwasaki Yudai ee45d8e145 Replace `user.Current()` with `os.Getenv("HOME")`
`os/user.Current()` is not available on Darwin when a binary is cross
compiled from another platform.
See also: https://github.com/golang/go/issues/6376
2015-08-24 04:48:49 +09:00
Iwasaki Yudai 39293933c5 Show error when failed to get current user 2015-08-23 23:28:56 +09:00
Iwasaki Yudai 45f65bfc29 Support profile files to customize hterm 2015-08-23 22:58:01 +09:00
Iwasaki Yudai ac0cb74f98 Log PermitWrite mode 2015-08-23 21:00:52 +09:00
Iwasaki Yudai a765d6c660 Set window title by control message 2015-08-23 20:54:46 +09:00
Iwasaki Yudai 67b54b7f20 Show command and hostname in windows title 2015-08-23 14:09:13 +09:00
Iwasaki Yudai b18d35f267 Show URLs on starting 2015-08-22 13:18:37 +09:00
Iwasaki Yudai 8923220528 Clean up `app.Run()` 2015-08-22 13:18:35 +09:00
Iwasaki Yudai beda1d7ab7 Close pty 2015-08-21 19:08:51 +09:00
Iwasaki Yudai b68e889762 Restructure handler function and move methods to clientContext 2015-08-21 19:01:09 +09:00
Iwasaki Yudai 25627da86f Restructure handler function 2015-08-21 19:01:09 +09:00
Iwasaki Yudai 5eea5067db Simplify structure of command messages
The first byte of a input message shows the type of that message.
0: normal keystrokes
1: resize window command
2015-08-21 19:01:06 +09:00
Iwasaki Yudai ce96943af2 Create App instance with struct of options 2015-08-21 18:30:44 +09:00
Shoji Ihara b15227c696 Random URL generation(Close #17) 2015-08-21 18:15:00 +09:00
Iwasaki Yudai 2aaa155a3e Call `Wait()` to prevent processes from being defunct 2015-08-21 12:36:26 +09:00
Iwasaki Yudai b4b9435b58 Don't send EOT
It was a bug that sending EOT when closing connection.
2015-08-21 12:34:15 +09:00
Iwasaki Yudai 10d0bd8a17 Log PID of processes for clients 2015-08-21 12:33:44 +09:00
Iwasaki Yudai 6a43836f0b Add `go fmt` to check format of code 2015-08-20 16:48:35 +09:00
mattn 791e1e22cb HTTP Basic Authentication support. Close #8 2015-08-20 15:40:38 +09:00
Iwasaki Yudai a09b060216 Show "Connection Closed" message as overlay
Closes #7.
2015-08-17 21:45:52 -07:00
Iwasaki Yudai 0718fbe7c4 Merge pull request #9 from shingt/fix-typo
Fix typo in starting message
2015-08-17 21:10:42 -07:00
David Horsley 8e5a277bb3 Only send EOF in writable sessions
Currently EOF is sent to the pty even when read-only mode is requested. This can cause trouble in attached tmux sessions, for example. Since the EOF typically used in shells as a shortcut exit, this can result in undesired disconnects.
2015-08-18 10:47:15 +10:00
shingt be0758777d Fix typo 2015-08-18 06:39:28 +09:00
Iwasaki Yudai 87f8409068 Replace UTF8 bounds check with utf8reader 2015-08-16 23:46:35 -07:00
Iwasaki Yudai 2050775288 Send EOT before exiting
The processes were left behind when clients closed their windows.
2015-08-16 22:24:24 -07:00
Iwasaki Yudai 6de9b0515f Set position of body element to absolute
Some terminal massages were shown at strange positions.
2015-08-16 19:07:06 -07:00
Iwasaki Yudai abe3f5c89f Don't send invalid UTF-8 string
When a rune stands over the buffer boundary, invalid UTF-8 bytes were
sent to the client. Now the logic checks if the tail of the buffer can
be decoded as a valid rune. When it's an invalid byte sequence, the logic
keeps it in the buffer and send it in the next loop with the following byte sequence.
2015-08-16 19:07:02 -07:00
Iwasaki Yudai cba86dd046 Initialize repository 2015-08-16 20:52:27 +09:00