Commit Graph

67 Commits

Author SHA1 Message Date
Iwasaki Yudai 589ec6b50a Handle hterm preferences with better care 2015-10-12 10:57:21 +09:00
Iwasaki Yudai f72b18052a Simplify title format output procedure 2015-10-08 14:45:10 +09:00
Iwasaki Yudai 46e33887c4 Ensure only one client can connect when `--once` is given
Using a mutex
2015-10-08 14:32:49 +09:00
Iwasaki Yudai e1de07bce2 Release v0.0.11
* Bug fixes
* SSL/TLS client certificate authentication support by @freakhill and @uovobw
* New option `--permit-argument` to allow client to provide command line arguments by @QuentinPerez
2015-10-07 13:05:05 +09:00
Iwasaki Yudai 9e392334a7 Update resource file 2015-10-07 13:03:53 +09:00
Quentin Perez a4e77b2b76 Added handling of —permit-arguments option 2015-10-05 09:50:48 +02:00
Iwasaki Yudai 7715f93517 Merge pull request #69 from uovobw:add-tls-client-certificate-authentication 2015-10-05 16:30:06 +09:00
Iwasaki Yudai 57923e98c4 Merge pull request #67 from freakhill/master
support for client certificate
2015-10-04 20:43:55 -07:00
Manfred Touron f75cc9771a
Add 'Server' HTTP header with current GoTTY version
$ curl -I http://gotty.server/
    HTTP/1.1 200 OK
    Accept-Ranges: bytes
    Content-Length: 407
    Content-Type: text/html; charset=utf-8
    Last-Modified: Fri, 02 Oct 2015 08:04:28 GMT
    Server: GoTTY/0.0.10
    Date: Fri, 02 Oct 2015 08:04:28 GMT
2015-10-02 10:14:01 +02:00
Iwasaki Yudai 096f77c780 Merge pull request #68 from QuentinPerez/mutex
Added mutex to avoid concurrent writes
2015-09-30 12:32:50 -07:00
Andrea Lusuardi - uovobw 7321b43f67 Add client certificate fields to the configuration struct
Add relevant logic
2015-09-30 19:06:55 +02:00
Quentin Perez 6500449916 Added mutex to avoid concurrent writes 2015-09-30 16:59:38 +02:00
Johan Gall 7e11f664d9 support for client certificate
run go fmt
2015-09-29 00:42:34 +09:00
Iwasaki Yudai c88cf7a52d Show RemoteAddr and HTTP status code in log 2015-09-20 13:41:24 +09:00
Iwasaki Yudai 4f75000256 Send data in base64 format
Raw data sometimes include invalid UTF-8 bytes and that brings errors to
WebSocket clients. To avoid the errors, encode data into base64 before
sending it.
2015-09-02 20:16:35 -07:00
Iwasaki Yudai 83923b6f39 Check config file syntax 2015-09-01 20:42:52 -07:00
Iwasaki Yudai 05d9267f20 Show message for force exit 2015-09-01 15:11:05 +09:00
Iwasaki Yudai ff92777011 Use credential for auth_token 2015-09-01 15:11:02 +09:00
Iwasaki Yudai 00ddf781de Send ping/pong 2015-08-31 21:34:54 -07:00
Iwasaki Yudai 0e81c484a9 Authenticate WS connection using token
Safari doesn't support basic authentication for websocket sessions.
This commit introduces a token-based authentication only for websocket
connection.
The token is shared by all clients and that might be not secure. However,
basic authentication itself is insecure and the credential is already
shared by clients, so don't mind.
2015-08-31 15:54:34 +09:00
Iwasaki Yudai e7e607b3d7 Fix TLS crt/key file loading 2015-08-31 07:16:34 +09:00
Iwasaki Yudai ee77ec1b3a Add favicon 2015-08-30 16:44:18 +09:00
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