Commit Graph

263 Commits (187b2bd8b5338ab26ff3583410578fb75fb50b70)

Author SHA1 Message Date
Sheng f9b640c745 Made it compatible with tornado 6 2019-03-12 21:52:17 +08:00
Sheng 3f1e53eaad Use cpu_count from tornado.process 2019-02-21 23:41:45 +08:00
Sheng e7bacb7d39 Updated minor version 2019-02-21 18:18:18 +08:00
Sheng d0533848f6 Pass max_workers to ThreadPoolExecutor 2019-02-21 18:11:18 +08:00
Sheng d22b0cdfd8 Use ThreadPoolExecutor instead of Thread 2019-02-21 17:45:38 +08:00
Sheng b25fbd7b57 Changed exception error message 2019-02-21 16:12:48 +08:00
Sheng 4b27da5f38 Refactored handler.py 2019-02-21 16:03:23 +08:00
Sheng a82565bf2d Updated version to 1.0 2019-02-14 13:29:02 +08:00
Sheng 5a52b20feb Updated static files 2019-02-14 13:25:51 +08:00
Sheng d74c097471 Updated main.js 2019-02-14 13:00:43 +08:00
Sheng a1c9378048 Support CORS 2019-01-23 21:48:03 +08:00
Sheng a6663c408e Updated version 2019-01-19 19:47:14 +08:00
Sheng 713ae1e8f1 Support cross origin connect 2019-01-19 19:19:45 +08:00
Sheng b4ca604518 Changed "|" to "or" 2019-01-19 16:57:03 +08:00
Sheng c35f801235 Support custom origin configuration 2019-01-19 16:46:25 +08:00
Sheng 8a8d741230 Refactored method is_forbidden 2019-01-16 22:58:49 +08:00
Sheng 682ddbf65f Removed function for detecting whether the http(s) server is open to public 2019-01-15 23:02:14 +08:00
Sheng 2e0f06e650 Fixed is_same_primary_domain 2019-01-11 15:02:30 +08:00
Sheng 28f45bd9a6 Changed formatting 2019-01-10 22:54:11 +08:00
Sheng 5c8bd84b95 Added an option for configuring cross-origin websocket level 2019-01-10 22:09:32 +08:00
Sheng b51e823973 Updated version 2018-12-29 16:25:16 +08:00
Sheng 2653a3e35a Added function for limiting connections for every client(ip) 2018-12-29 16:16:06 +08:00
Sheng 47fb789a7e Updated version 2018-11-16 11:47:09 +08:00
Sheng d6d5f74f2a Added check_request method to MixinHandler 2018-11-15 21:40:59 +08:00
Sheng 32f303474e Updated test_app.py 2018-11-15 20:23:42 +08:00
tuxhamb f9af3ee1c9
Remove password from fields 2018-11-11 16:30:39 +00:00
Sheng 4525f50b11 Added test_main.py to tests 2018-10-23 22:56:18 +08:00
Sheng 430c785feb Updated minor version 2018-10-21 18:30:46 +08:00
Sheng 8e4039a24a Support redirecting http to https 2018-10-21 14:07:44 +08:00
Sheng 40cf1095ff Use open_to_public to store the status of the http(s) server 2018-10-20 17:54:12 +08:00
Sheng e31e9be433 Updated get_trusted_downstream 2018-10-20 15:30:11 +08:00
Sheng 1f835f5a70 Refactored handler.py 2018-10-19 18:18:55 +08:00
Sheng fbb3e466b2 Updated minor version 2018-10-18 20:38:27 +08:00
Sheng 68468585ee Added a command line option xheaders 2018-10-18 20:25:30 +08:00
Sheng a8a444d7ed Always reset fbidhttp to False if not open to public 2018-10-18 18:17:42 +08:00
Sheng d3da7ec5cb Fixed boundary port number typo 2018-10-18 15:20:27 +08:00
Sheng 5d6f92e529 Move some config variables to handler.py 2018-10-18 15:07:45 +08:00
Sheng 383f61d4cc Updated version 2018-10-17 23:03:30 +08:00
Sheng c06bf5311a Added an option for blocking public non-https requests 2018-10-17 22:39:53 +08:00
Sheng 746982b001 Use method format instead of % 2018-10-17 19:34:09 +08:00
Sheng c2c81aaeae Use method initialize to deny forbidden acesss 2018-10-17 19:22:51 +08:00
Sheng 7e5a170383 Added head method IndexHandler 2018-10-16 16:15:39 +08:00
Sheng a68eff592f Added attribute custom_headers to MixinHandler 2018-10-16 15:14:34 +08:00
Sheng af60cd1cd5 Tested app with 403 and 404 requests 2018-10-16 14:51:15 +08:00
Sheng e94c846379 Added default handler NotFoundHandler 2018-10-16 13:56:44 +08:00
Sheng 499f3b6dcd Lowercase all option names 2018-10-15 22:06:02 +08:00
Sheng 021a3a627f Use is_private instead of is_global 2018-10-15 20:34:17 +08:00
Sheng 77b6fbfd85 Block requests not come from trusted_downstream and public non-https requests 2018-10-15 20:14:53 +08:00
Sheng db3ee2b784 Added proxies option for trusted downstream 2018-10-15 17:49:02 +08:00
Sheng a51918d2ac Added to_ip_address to utils 2018-10-15 17:20:30 +08:00
Sheng 1e51d690bc Changed help text 2018-10-14 16:55:11 +08:00
Sheng 827a0d8a9d Support https server 2018-10-14 16:15:39 +08:00
Sheng deef92fe66 Move get_client_addr to MixinHandler 2018-10-13 22:16:16 +08:00
Sheng e66e5f2045 Added set_default_headers 2018-10-13 21:57:13 +08:00
Sheng 66ebe2ceb2 Use general method to validate ipaddress 2018-10-13 09:47:15 +08:00
Sheng 9aebb6e4e3 Updated write_error 2018-10-13 08:52:32 +08:00
Sheng daa2402167 Reset password to None if privatekey is delivered 2018-10-12 20:54:39 +08:00
Sheng cb22a30045 Updated requirements.txt and version 2018-10-11 07:29:38 +08:00
Sheng dd7f99970b Fix title by using default port 2018-10-10 23:56:19 +08:00
Sheng 0c9db2abaf Set default port 22 on server side 2018-10-10 22:30:37 +08:00
Sheng 66891cb71c Updated version 2018-10-10 11:04:30 +08:00
Sheng f6d2776a20 Let tornado parse xheaders 2018-10-10 10:51:40 +08:00
Sheng 88405eddac Added to_int to utils 2018-10-10 08:49:59 +08:00
Sheng de0fda1ae1 Call lookup_hostname only under reject policy 2018-10-08 23:28:04 +08:00
Sheng 33703f0ca3 Updated lookup_hostname 2018-10-08 22:37:03 +08:00
Sheng c873b50522 Renamed attribute filename to privatekey_filename 2018-10-08 20:50:02 +08:00
Sheng a576a41ea4 Lookup hostname before connection under reject policy 2018-10-08 20:25:21 +08:00
Sheng fdcf1718c1 Set default port to 22 2018-09-29 20:19:45 +08:00
Sheng 0f542ed24f Use private variable data instead of proto.data 2018-09-29 13:24:41 +08:00
Sheng 85efc9e447 Updated README 2018-09-15 09:46:40 +08:00
Sheng 1a11c378b2 Support Safari 11.x 2018-09-15 09:31:03 +08:00
Sheng 234653f324 Changed style 2018-09-14 18:21:53 +08:00
Sheng cd4f7e72ac Use form_id variable 2018-09-14 18:20:47 +08:00
Sheng 1a7c395c75 Updated requirements.txt 2018-09-13 18:44:13 +08:00
Sheng 0f11f2acba Updated version 2018-09-13 16:33:25 +08:00
Sheng 5d1d5e9250 Support browser edge 2018-09-13 16:29:44 +08:00
Sheng 2b57122925 Updated minor version 2018-09-12 21:03:22 +08:00
Sheng b3c33ff6bd Use form attribute novalidate for debug mode 2018-09-12 13:47:33 +08:00
Sheng b372fcbbb2 Pass None for empty password 2018-09-12 13:07:05 +08:00
Sheng 21d3f9bd7f Updated version 2018-09-09 15:41:28 +08:00
Sheng 704d2b68e6 Check private key size for the final value 2018-09-09 15:33:59 +08:00
Sheng 8eb636d73b Normalize data before validating it 2018-09-09 15:21:13 +08:00
Sheng bbb7d79b2a Updated README and version 2018-09-01 11:20:31 +08:00
Sheng 5f3641701e Increase buffer size for channel 2018-09-01 11:00:01 +08:00
Sheng a7a3f46609 Update README 2018-08-29 23:12:21 +08:00
Sheng 4d77a6a076 Updated main.js 2018-08-29 20:30:42 +08:00
Sheng 6401e82ef9 Check pk size before reading 2018-08-29 11:31:20 +08:00
Sheng 6cfd981e80 Tested server error 2018-08-29 09:19:35 +08:00
Sheng 49226fbf23 Swallow 500 errors 2018-08-28 21:15:57 +08:00
Sheng ad12876b0c Strip encoding 2018-08-28 20:25:07 +08:00
Sheng 688ca78bb2 Use command "locale charmap" to detect encoding 2018-08-28 07:55:41 +08:00
Sheng 80bdddc280 Added setting swallow_http_errors 2018-08-28 07:43:43 +08:00
Sheng 105c1f62ee Close handler with reason why worker closed 2018-08-26 20:13:11 +08:00
Sheng 9b38d111f4 Use class attribute formater 2018-08-26 19:31:45 +08:00
Sheng b69bdefcc9 Changed log message 2018-08-26 19:08:02 +08:00
Sheng 1a3880ecee Raise InvalidException for empty required value 2018-08-26 15:40:08 +08:00
Sheng 5519a17016 Return 400 http error for invalid post requests 2018-08-26 15:13:02 +08:00
Sheng df26d0e677 Catch ValueError instead of Exception for post method 2018-08-25 19:51:05 +08:00
Sheng 9fd8d1368c Added get_password method 2018-08-25 18:19:25 +08:00
Sheng 48acf09f21 Move method get_value to MixinHandler 2018-08-25 17:35:31 +08:00
Sheng 74cdb2d31f Change title when wssh connected 2018-08-24 12:44:32 +08:00
Sheng b14b8a9f79 Added state to wssh 2018-08-24 12:04:33 +08:00
Sheng 4710d8c0e6 Added connect_with_options function 2018-08-24 11:11:43 +08:00
Sheng ee7fd101c6 Use read_file_as_text to valiate the private key 2018-08-23 22:47:37 +08:00
Sheng 6cfcaddadf Defined a function read_file_as_text 2018-08-23 21:22:14 +08:00
Sheng 4d11a2ce2d Catch RangeError instead of TypeError 2018-08-23 20:41:06 +08:00
Sheng e329a6b55b Remove spaces 2018-08-23 19:24:00 +08:00
Sheng 3dd7b98c02 Defined a method onerror on reader 2018-08-23 18:15:10 +08:00
Sheng 4c3120e5ad Reuse decoder 2018-08-23 17:57:35 +08:00
Sheng 24a619ae6b Check wssh is connected before connecting 2018-08-22 18:55:09 +08:00
Sheng a5d3cbfee8 Updated minor version 2018-08-22 17:39:02 +08:00
Sheng 2e34702988 Changed validation error messages 2018-08-22 17:37:23 +08:00
Sheng d43a011533 Added connect function to wssh 2018-08-22 15:50:25 +08:00
Sheng 538d0d5a39 Updated minor version 2018-08-22 13:27:41 +08:00
Sheng 3c139e05f8 Added KEY_MAX_SIZE to validate the private key 2018-08-22 13:03:14 +08:00
Sheng 07dc33df1a Use callbak complete instead of success 2018-08-22 10:15:08 +08:00
Sheng eb792d4da6 Updated version 2018-08-21 22:00:11 +08:00
Sheng 90397715dc Optimized is_valid_hostname 2018-08-21 21:55:57 +08:00
Sheng 9a49c9e5a3 Use localStorage 2018-08-21 21:46:16 +08:00
Sheng f09ba9ec1a Added js code for validating hostname and port 2018-08-21 18:46:33 +08:00
Sheng 38cb22ac9c Added more functions to wssh 2018-08-21 17:59:17 +08:00
Sheng 4ae2a33654 Added resize_terminal function to wssh 2018-08-21 10:52:14 +08:00
Sheng 77778fc45d Updated version 2018-08-20 23:10:21 +08:00
Sheng 37299468a9 Added is_valid_hostname to utils 2018-08-20 21:20:55 +08:00
Sheng 0fb6caa9ff Modified set_encoding 2018-08-20 20:07:13 +08:00
Sheng bd803328fc Changed error message 2018-08-20 18:55:00 +08:00
Sheng e85ae1692e Added to_bytes function to utils 2018-08-20 18:36:04 +08:00
Sheng cb86682551 Bump version number to 0.30 2018-08-18 20:54:23 +08:00
Sheng cce5ead04d Remove unused module 2018-08-18 20:50:50 +08:00
Sheng 1fee3146c2 Clean code 2018-08-18 20:21:12 +08:00
Sheng 614d6e8a5b Changed error message 2018-08-18 19:41:36 +08:00
Sheng 20449d03ad Added set_encoding and reset_encoding 2018-08-18 19:00:06 +08:00
Sheng f4197f0e4c Use base_dir as the project root directory 2018-08-18 17:39:50 +08:00
Sheng d6de1340c4 Added max_body_size for limiting the size of post form 2018-08-18 16:33:21 +08:00
Sheng d38453fd0b Updated version 2018-08-10 13:45:01 +08:00
Sheng 75f74ade5b Added an option for enabling websocket ping functionality 2018-08-10 10:24:28 +08:00
Sheng 1e4ece58c8 Added functions for validating ip and port 2018-08-10 09:23:25 +08:00
Sheng 5f52977785 Updated minor version 2018-05-30 21:51:00 +08:00
Sheng 469d86ac77 Auto detect system default encoding 2018-05-30 21:29:44 +08:00
Sheng cb5424a166 Added dummy check_channel_window_change_request for testing 2018-05-30 17:35:51 +08:00
Sheng 96d9ae5b4d Use JSONDecodeError 2018-05-26 16:23:55 +08:00
Sheng a893507946 Made WsockHandler more robust 2018-05-26 15:51:53 +08:00
Sheng 2c36c38653 jslint compliant 2018-05-26 13:49:55 +08:00
Sheng cce9371649 Use parseFloat for parsing font size 2018-05-26 12:28:17 +08:00
Sheng 08f144c4d7 Updated minor version 2018-05-23 20:38:53 +08:00
Sheng c439f2b6ee Instantly update pseudo-terminal size by client terminal size 2018-05-23 20:25:28 +08:00
Sheng 191bb109e0 Fixed a bug that client closes websocket on handling non utf-8 encoded bytes 2018-05-22 19:28:04 +08:00
Sheng 28360c31e2 Updated verison 2018-05-06 20:54:23 +08:00
Sheng 72df3b9ee9 Added print_version 2018-05-06 18:32:31 +08:00
Sheng 934d6dfcb6 Updated version 2018-04-27 18:00:39 +08:00