SYMBOL INDEX (280 symbols across 17 files) FILE: tests/sshserver.py class Server (line 25) | class Server(paramiko.ServerInterface): method __init__ (line 40) | def __init__(self, encodings=[]): method get_cmd2enc (line 47) | def get_cmd2enc(self, encodings): method check_channel_request (line 53) | def check_channel_request(self, kind, chanid): method check_auth_password (line 58) | def check_auth_password(self, username, password): method check_auth_publickey (line 64) | def check_auth_publickey(self, username, key): method check_auth_interactive (line 73) | def check_auth_interactive(self, username, submethods): method check_auth_interactive_response (line 81) | def check_auth_interactive_response(self, responses): method get_allowed_auths (line 102) | def get_allowed_auths(self, username): method check_channel_exec_request (line 114) | def check_channel_exec_request(self, channel, command): method check_channel_shell_request (line 125) | def check_channel_shell_request(self, channel): method check_channel_pty_request (line 129) | def check_channel_pty_request(self, channel, term, width, height, method check_channel_window_change_request (line 133) | def check_channel_window_change_request(self, channel, width, height, function run_ssh_server (line 139) | def run_ssh_server(port=2200, running=True, encodings=[]): FILE: tests/test_app.py class TestAppBase (line 30) | class TestAppBase(AsyncHTTPTestCase): method get_httpserver_options (line 32) | def get_httpserver_options(self): method assert_response (line 35) | def assert_response(self, bstr, response): method assert_status_in (line 43) | def assert_status_in(self, status, data): method assert_status_equal (line 48) | def assert_status_equal(self, status, data): method assert_status_none (line 53) | def assert_status_none(self, data): method fetch_request (line 58) | def fetch_request(self, url, method='GET', body='', headers={}, sync=T... method sync_post (line 73) | def sync_post(self, url, body, headers={}): method async_post (line 76) | def async_post(self, url, body, headers={}): class TestAppBasic (line 80) | class TestAppBasic(TestAppBase): method get_app (line 87) | def get_app(self): method setUpClass (line 106) | def setUpClass(cls): method tearDownClass (line 115) | def tearDownClass(cls): method test_app_with_invalid_form_for_missing_argument (line 119) | def test_app_with_invalid_form_for_missing_argument(self): method test_app_with_invalid_form_for_invalid_value (line 139) | def test_app_with_invalid_form_for_invalid_value(self): method test_app_with_wrong_hostname_ip (line 156) | def test_app_with_wrong_hostname_ip(self): method test_app_with_wrong_hostname_domain (line 162) | def test_app_with_wrong_hostname_domain(self): method test_app_with_wrong_port (line 168) | def test_app_with_wrong_port(self): method test_app_with_wrong_credentials (line 174) | def test_app_with_wrong_credentials(self): method test_app_with_correct_credentials (line 178) | def test_app_with_correct_credentials(self): method test_app_with_correct_credentials_but_with_no_port (line 182) | def test_app_with_correct_credentials_but_with_no_port(self): method test_app_with_correct_credentials_timeout (line 199) | def test_app_with_correct_credentials_timeout(self): method test_app_with_correct_credentials_but_ip_not_matched (line 214) | def test_app_with_correct_credentials_but_ip_not_matched(self): method test_app_with_correct_credentials_user_robey (line 231) | def test_app_with_correct_credentials_user_robey(self): method test_app_with_correct_credentials_but_without_id_argument (line 245) | def test_app_with_correct_credentials_but_without_id_argument(self): method test_app_with_correct_credentials_but_empty_id (line 259) | def test_app_with_correct_credentials_but_empty_id(self): method test_app_with_correct_credentials_but_wrong_id (line 273) | def test_app_with_correct_credentials_but_wrong_id(self): method test_app_with_correct_credentials_user_bar (line 287) | def test_app_with_correct_credentials_user_bar(self): method test_app_auth_with_valid_pubkey_by_urlencoded_form (line 330) | def test_app_auth_with_valid_pubkey_by_urlencoded_form(self): method test_app_auth_with_valid_pubkey_by_multipart_form (line 346) | def test_app_auth_with_valid_pubkey_by_multipart_form(self): method test_app_auth_with_invalid_pubkey_for_user_robey (line 367) | def test_app_auth_with_invalid_pubkey_for_user_robey(self): method test_app_auth_with_pubkey_exceeds_key_max_size (line 386) | def test_app_auth_with_pubkey_exceeds_key_max_size(self): method test_app_auth_with_pubkey_cannot_be_decoded_by_multipart_form (line 404) | def test_app_auth_with_pubkey_cannot_be_decoded_by_multipart_form(self): method test_app_post_form_with_large_body_size_by_multipart_form (line 424) | def test_app_post_form_with_large_body_size_by_multipart_form(self): method test_app_post_form_with_large_body_size_by_urlencoded_form (line 435) | def test_app_post_form_with_large_body_size_by_urlencoded_form(self): method test_app_with_user_keyonly_for_bad_authentication_type (line 442) | def test_app_with_user_keyonly_for_bad_authentication_type(self): method test_app_with_user_pass2fa_with_correct_passwords (line 449) | def test_app_with_user_pass2fa_with_correct_passwords(self): method test_app_with_user_pass2fa_with_wrong_pkey_correct_passwords (line 458) | def test_app_with_user_pass2fa_with_wrong_pkey_correct_passwords(self): method test_app_with_user_pkey2fa_with_correct_passwords (line 468) | def test_app_with_user_pkey2fa_with_correct_passwords(self): method test_app_with_user_pkey2fa_with_wrong_password (line 478) | def test_app_with_user_pkey2fa_with_wrong_password(self): method test_app_with_user_pkey2fa_with_wrong_passcode (line 488) | def test_app_with_user_pkey2fa_with_wrong_passcode(self): method test_app_with_user_pkey2fa_with_empty_passcode (line 498) | def test_app_with_user_pkey2fa_with_empty_passcode(self): class OtherTestBase (line 508) | class OtherTestBase(TestAppBase): method get_app (line 528) | def get_app(self): method setUp (line 542) | def setUp(self): method tearDown (line 555) | def tearDown(self): class TestAppInDebugMode (line 561) | class TestAppInDebugMode(OtherTestBase): method assert_response (line 565) | def assert_response(self, bstr, response): method test_server_error_for_post_method (line 573) | def test_server_error_for_post_method(self): method test_html (line 578) | def test_html(self): class TestAppWithLargeBuffer (line 583) | class TestAppWithLargeBuffer(OtherTestBase): method test_app_for_sending_message_with_large_size (line 586) | def test_app_for_sending_message_with_large_size(self): class TestAppWithRejectPolicy (line 611) | class TestAppWithRejectPolicy(OtherTestBase): method test_app_with_hostname_not_in_hostkeys (line 617) | def test_app_with_hostname_not_in_hostkeys(self): class TestAppWithBadHostKey (line 624) | class TestAppWithBadHostKey(OtherTestBase): method setUp (line 629) | def setUp(self): method test_app_with_bad_host_key (line 634) | def test_app_with_bad_host_key(self): class TestAppWithTrustedStream (line 640) | class TestAppWithTrustedStream(OtherTestBase): method test_with_forbidden_get_request (line 643) | def test_with_forbidden_get_request(self): method test_with_forbidden_post_request (line 648) | def test_with_forbidden_post_request(self): method test_with_forbidden_put_request (line 653) | def test_with_forbidden_put_request(self): class TestAppNotFoundHandler (line 659) | class TestAppNotFoundHandler(OtherTestBase): method test_with_not_found_get_request (line 663) | def test_with_not_found_get_request(self): method test_with_not_found_post_request (line 671) | def test_with_not_found_post_request(self): method test_with_not_found_put_request (line 679) | def test_with_not_found_put_request(self): class TestAppWithHeadRequest (line 689) | class TestAppWithHeadRequest(OtherTestBase): method test_with_index_path (line 691) | def test_with_index_path(self): method test_with_ws_path (line 695) | def test_with_ws_path(self): method test_with_not_found_path (line 699) | def test_with_not_found_path(self): class TestAppWithPutRequest (line 704) | class TestAppWithPutRequest(OtherTestBase): method test_app_with_method_not_supported (line 709) | def test_app_with_method_not_supported(self): class TestAppWithTooManyConnections (line 715) | class TestAppWithTooManyConnections(OtherTestBase): method setUp (line 719) | def setUp(self): method test_app_with_too_many_connections (line 724) | def test_app_with_too_many_connections(self): class TestAppWithCrossOriginOperation (line 737) | class TestAppWithCrossOriginOperation(OtherTestBase): method test_app_with_wrong_event_origin (line 742) | def test_app_with_wrong_event_origin(self): method test_app_with_wrong_header_origin (line 748) | def test_app_with_wrong_header_origin(self): method test_app_with_correct_event_origin (line 754) | def test_app_with_correct_event_origin(self): method test_app_with_correct_header_origin (line 761) | def test_app_with_correct_header_origin(self): class TestAppWithBadEncoding (line 770) | class TestAppWithBadEncoding(OtherTestBase): method test_app_with_a_bad_encoding (line 775) | def test_app_with_a_bad_encoding(self): class TestAppWithUnknownEncoding (line 782) | class TestAppWithUnknownEncoding(OtherTestBase): method test_app_with_a_unknown_encoding (line 787) | def test_app_with_a_unknown_encoding(self): FILE: tests/test_handler.py class TestMixinHandler (line 20) | class TestMixinHandler(unittest.TestCase): method test_is_forbidden (line 22) | def test_is_forbidden(self): method test_get_redirect_url (line 71) | def test_get_redirect_url(self): method test_get_client_addr (line 88) | def test_get_client_addr(self): method test_get_real_client_addr (line 107) | def test_get_real_client_addr(self): class TestPrivateKey (line 147) | class TestPrivateKey(unittest.TestCase): method get_pk_obj (line 149) | def get_pk_obj(self, fname, password=None): method _test_with_encrypted_key (line 153) | def _test_with_encrypted_key(self, fname, password, klass): method test_class_with_invalid_key_length (line 167) | def test_class_with_invalid_key_length(self): method test_get_pkey_obj_with_invalid_key (line 174) | def test_get_pkey_obj_with_invalid_key(self): method test_get_pkey_obj_with_plain_rsa_key (line 183) | def test_get_pkey_obj_with_plain_rsa_key(self): method test_get_pkey_obj_with_plain_ed25519_key (line 187) | def test_get_pkey_obj_with_plain_ed25519_key(self): method test_get_pkey_obj_with_encrypted_rsa_key (line 191) | def test_get_pkey_obj_with_encrypted_rsa_key(self): method test_get_pkey_obj_with_encrypted_ed25519_key (line 196) | def test_get_pkey_obj_with_encrypted_ed25519_key(self): method test_get_pkey_obj_with_encrypted_new_rsa_key (line 201) | def test_get_pkey_obj_with_encrypted_new_rsa_key(self): method test_get_pkey_obj_with_plain_new_dsa_key (line 206) | def test_get_pkey_obj_with_plain_new_dsa_key(self): method test_parse_name (line 210) | def test_parse_name(self): class TestWsockHandler (line 244) | class TestWsockHandler(unittest.TestCase): method test_check_origin (line 246) | def test_check_origin(self): method test_failed_weak_ref (line 283) | def test_failed_weak_ref(self): method test_worker_closed (line 302) | def test_worker_closed(self): class TestIndexHandler (line 320) | class TestIndexHandler(unittest.TestCase): method test_null_in_encoding (line 321) | def test_null_in_encoding(self): FILE: tests/test_main.py class TestMain (line 8) | class TestMain(unittest.TestCase): method test_app_listen (line 10) | def test_app_listen(self): FILE: tests/test_policy.py class TestPolicy (line 14) | class TestPolicy(unittest.TestCase): method test_get_policy_dictionary (line 16) | def test_get_policy_dictionary(self): method test_load_host_keys (line 23) | def test_load_host_keys(self): method test_get_policy_class (line 36) | def test_get_policy_class(self): method test_check_policy_setting (line 47) | def test_check_policy_setting(self): method test_is_missing_host_key (line 65) | def test_is_missing_host_key(self): method test_missing_host_key (line 106) | def test_missing_host_key(self): FILE: tests/test_settings.py class TestSettings (line 21) | class TestSettings(unittest.TestCase): method test_print_version (line 23) | def test_print_version(self): method test_get_host_keys_settings (line 36) | def test_get_host_keys_settings(self): method test_get_policy_setting (line 57) | def test_get_policy_setting(self): method test_get_ssl_context (line 86) | def test_get_ssl_context(self): method test_get_trusted_downstream (line 126) | def test_get_trusted_downstream(self): method test_get_origin_setting (line 143) | def test_get_origin_setting(self): method test_get_font_setting (line 171) | def test_get_font_setting(self): method test_check_encoding_setting (line 183) | def test_check_encoding_setting(self): FILE: tests/test_utils.py class TestUitls (line 9) | class TestUitls(unittest.TestCase): method test_to_str (line 11) | def test_to_str(self): method test_to_bytes (line 17) | def test_to_bytes(self): method test_to_int (line 23) | def test_to_int(self): method test_is_valid_ip_address (line 29) | def test_is_valid_ip_address(self): method test_is_valid_port (line 43) | def test_is_valid_port(self): method test_is_valid_hostname (line 48) | def test_is_valid_hostname(self): method test_is_ip_hostname (line 59) | def test_is_ip_hostname(self): method test_is_same_primary_domain (line 65) | def test_is_same_primary_domain(self): method test_parse_origin_from_url (line 98) | def test_parse_origin_from_url(self): FILE: tests/utils.py function encode_multipart_formdata (line 7) | def encode_multipart_formdata(fields, files): function get_content_type (line 39) | def get_content_type(filename): function read_file (line 43) | def read_file(path, encoding='utf-8'): function make_tests_data_path (line 51) | def make_tests_data_path(filename): FILE: user.js/Build-SSH-Link.user.js function updateSSHlinkA (line 50) | function updateSSHlinkA() { FILE: webssh/handler.py class InvalidValueError (line 39) | class InvalidValueError(Exception): class SSHClient (line 43) | class SSHClient(paramiko.SSHClient): method handler (line 45) | def handler(self, title, instructions, prompt_list): method auth_interactive (line 57) | def auth_interactive(self, username, handler): method _auth (line 62) | def _auth(self, username, password, pkey, *args): class PrivateKey (line 103) | class PrivateKey(object): method __init__ (line 114) | def __init__(self, privatekey, password=None, filename=''): method check_length (line 122) | def check_length(self): method parse_name (line 126) | def parse_name(self, iostr, tag_to_name): method get_specific_pkey (line 141) | def get_specific_pkey(self, name, offset, password): method get_pkey_obj (line 159) | def get_pkey_obj(self): class MixinHandler (line 186) | class MixinHandler(object): method initialize (line 195) | def initialize(self, loop=None): method check_request (line 200) | def check_request(self): method check_origin (line 217) | def check_origin(self, origin): method is_forbidden (line 239) | def is_forbidden(self, context, hostname): method get_redirect_url (line 264) | def get_redirect_url(self, hostname, port, uri): method set_default_headers (line 268) | def set_default_headers(self): method get_value (line 272) | def get_value(self, name): method get_context_addr (line 278) | def get_context_addr(self): method get_client_addr (line 281) | def get_client_addr(self): method get_real_client_addr (line 287) | def get_real_client_addr(self): class NotFoundHandler (line 306) | class NotFoundHandler(MixinHandler, tornado.web.ErrorHandler): method initialize (line 308) | def initialize(self): method prepare (line 311) | def prepare(self): class IndexHandler (line 315) | class IndexHandler(MixinHandler, tornado.web.RequestHandler): method initialize (line 319) | def initialize(self, loop, policy, host_keys_settings): method write_error (line 328) | def write_error(self, status_code, **kwargs): method get_ssh_client (line 341) | def get_ssh_client(self): method get_privatekey (line 349) | def get_privatekey(self): method get_hostname (line 364) | def get_hostname(self): method get_port (line 370) | def get_port(self): method lookup_hostname (line 380) | def lookup_hostname(self, hostname, port): method get_args (line 390) | def get_args(self): method parse_encoding (line 413) | def parse_encoding(self, data): method get_default_encoding (line 422) | def get_default_encoding(self, ssh): method ssh_connect (line 449) | def ssh_connect(self, args): method check_origin (line 473) | def check_origin(self): method head (line 487) | def head(self): method get (line 490) | def get(self): method post (line 494) | def post(self): class WsockHandler (line 529) | class WsockHandler(MixinHandler, tornado.websocket.WebSocketHandler): method initialize (line 531) | def initialize(self, loop): method open (line 535) | def open(self): method on_message (line 559) | def on_message(self, message): method on_close (line 596) | def on_close(self): FILE: webssh/main.py function make_handlers (line 14) | def make_handlers(loop, options): function make_app (line 26) | def make_app(handlers, settings): function app_listen (line 31) | def app_listen(app, port, address, server_settings): function main (line 43) | def main(): FILE: webssh/policy.py function load_host_keys (line 7) | def load_host_keys(path): function get_policy_dictionary (line 13) | def get_policy_dictionary(): function get_policy_class (line 22) | def get_policy_class(policy): function check_policy_setting (line 38) | def check_policy_setting(policy_class, host_keys_settings): class AutoAddPolicy (line 52) | class AutoAddPolicy(paramiko.client.MissingHostKeyPolicy): method is_missing_host_key (line 58) | def is_missing_host_key(self, client, hostname, key): method missing_host_key (line 69) | def missing_host_key(self, client, hostname, key): FILE: webssh/settings.py function print_version (line 16) | def print_version(flag): class Font (line 63) | class Font(object): method __init__ (line 65) | def __init__(self, filename, dirs): method get_family (line 69) | def get_family(self, filename): method get_url (line 72) | def get_url(self, filename, dirs): function get_app_settings (line 76) | def get_app_settings(options): function get_server_settings (line 93) | def get_server_settings(options): function get_host_keys_settings (line 102) | def get_host_keys_settings(options): function get_policy_setting (line 123) | def get_policy_setting(options, host_keys_settings): function get_ssl_context (line 130) | def get_ssl_context(options): function get_trusted_downstream (line 147) | def get_trusted_downstream(tdstream): function get_origin_setting (line 157) | def get_origin_setting(options): function get_font_filename (line 182) | def get_font_filename(font, font_dir): function check_encoding_setting (line 196) | def check_encoding_setting(encoding): FILE: webssh/static/js/main.js function store_items (line 35) | function store_items(names, data) { function restore_items (line 48) | function restore_items(names) { function populate_form (line 61) | function populate_form(data) { function get_object_length (line 72) | function get_object_length(object) { function decode_uri_component (line 77) | function decode_uri_component(uri) { function decode_password (line 87) | function decode_password(encoded) { function parse_url_data (line 97) | function parse_url_data(string, form_keys, opts_keys, form_map, opts_map) { function parse_xterm_style (line 119) | function parse_xterm_style() { function get_cell_size (line 128) | function get_cell_size(term) { function toggle_fullscreen (line 134) | function toggle_fullscreen(term) { function current_geometry (line 140) | function current_geometry(term) { function resize_terminal (line 155) | function resize_terminal(term) { function set_backgound_color (line 161) | function set_backgound_color(term, color) { function set_font_color (line 167) | function set_font_color(term, color) { function custom_font_is_loaded (line 173) | function custom_font_is_loaded() { function update_font_family (line 187) | function update_font_family(term) { function reset_font_family (line 206) | function reset_font_family(term) { function format_geometry (line 220) | function format_geometry(cols, rows) { function read_as_text_with_decoder (line 225) | function read_as_text_with_decoder(file, callback, decoder) { function read_as_text_with_encoding (line 253) | function read_as_text_with_encoding(file, callback, encoding) { function read_file_as_text (line 274) | function read_file_as_text(file, callback, decoder) { function reset_wssh (line 283) | function reset_wssh() { function log_status (line 294) | function log_status(text, to_populate) { function ajax_complete_callback (line 313) | function ajax_complete_callback(resp) { function wrap_object (line 544) | function wrap_object(opts) { function clean_data (line 559) | function clean_data(data) { function validate_form_data (line 573) | function validate_form_data(data) { function disable_file_inputs (line 624) | function disable_file_inputs(inputs) { function enable_file_inputs (line 636) | function enable_file_inputs(inputs) { function connect_without_options (line 645) | function connect_without_options() { function connect_with_options (line 694) | function connect_with_options(data) { function connect (line 726) | function connect(hostname, port, username, password, privatekey, passphr... function cross_origin_connect (line 773) | function cross_origin_connect(event) { FILE: webssh/static/js/service-worker.js constant CACHE_NAME (line 1) | const CACHE_NAME = 'webssh-cache-v1'; FILE: webssh/utils.py function to_str (line 19) | def to_str(bstr, encoding='utf-8'): function to_bytes (line 25) | def to_bytes(ustr, encoding='utf-8'): function to_int (line 31) | def to_int(string): function to_ip_address (line 38) | def to_ip_address(ipstr): function is_valid_ip_address (line 45) | def is_valid_ip_address(ipstr): function is_valid_port (line 53) | def is_valid_port(port): function is_valid_encoding (line 57) | def is_valid_encoding(encoding): function is_ip_hostname (line 67) | def is_ip_hostname(hostname): function is_valid_hostname (line 77) | def is_valid_hostname(hostname): function is_same_primary_domain (line 93) | def is_same_primary_domain(domain1, domain2): function parse_origin_from_url (line 124) | def parse_origin_from_url(url): FILE: webssh/worker.py function clear_worker (line 18) | def clear_worker(worker, clients): function recycle_worker (line 30) | def recycle_worker(worker): class Worker (line 37) | class Worker(object): method __init__ (line 38) | def __init__(self, loop, ssh, chan, dst_addr): method __call__ (line 50) | def __call__(self, fd, events): method gen_id (line 59) | def gen_id(cls): method set_handler (line 62) | def set_handler(self, handler): method update_handler (line 66) | def update_handler(self, mode): method on_read (line 73) | def on_read(self): method on_write (line 93) | def on_write(self): method close (line 118) | def close(self, reason=None):