Class: Arachni::UI::CLI::RPC::Client::Remote::OptionParser
- Inherits:
-
Framework::OptionParser
- Object
- OptionParser
- Framework::OptionParser
- Arachni::UI::CLI::RPC::Client::Remote::OptionParser
- Defined in:
- ui/cli/rpc/client/remote/option_parser.rb
Overview
Direct Known Subclasses
Instance Attribute Summary
Attributes inherited from Framework::OptionParser
Instance Method Summary collapse
-
#banner ⇒ Object
-
#distribution ⇒ Object
-
#ssl ⇒ Object
-
#validate ⇒ Object
-
#validate_dispatcher ⇒ Object
Methods inherited from Framework::OptionParser
#after_parse, #audit, #authorized_by, #browser_cluster, #checks, #daemon_friendly, #daemon_friendly?, #get_timeout, #http, #initialize, #input, #output, #platforms, #plugins, #profiles, #report, #scope, #session, #snapshot, #timeout, #timeout_suspend, #timeout_suspend?, #valid_save_path?, #validate_browser, #validate_report_path, #validate_session, #validate_snapshot_save_path, #validate_timeout, #validate_url
Methods inherited from OptionParser
#after_parse, #initialize, #on, #options, #parse, #parser, #separator
Methods included from Utilities
#list_checks, #list_platforms, #list_plugins, #list_reporters, #load_profile, #print_banner, #print_issues, #save_profile
Methods included from Support::Mixins::Terminal
#clear_screen, #empty_screen, #flush, #move_to_home, #reprint, #reputs, #restr
Methods included from Arachni::Utilities
#available_port, available_port_mutex, #bytes_to_kilobytes, #bytes_to_megabytes, #caller_name, #caller_path, #cookie_decode, #cookie_encode, #cookies_from_file, #cookies_from_parser, #cookies_from_response, #exception_jail, #exclude_path?, #follow_protocol?, #form_decode, #form_encode, #forms_from_parser, #forms_from_response, #full_and_absolute_url?, #generate_token, #get_path, #hms_to_seconds, #html_decode, #html_encode, #include_path?, #links_from_parser, #links_from_response, #normalize_url, #page_from_response, #page_from_url, #parse_set_cookie, #path_in_domain?, #path_too_deep?, #port_available?, #rand_port, #random_seed, #redundant_path?, #regexp_array_match, #remove_constants, #request_parse_body, #seconds_to_hms, #skip_page?, #skip_path?, #skip_resource?, #skip_response?, #to_absolute, #uri_decode, #uri_encode, #uri_parse, #uri_parse_query, #uri_parser, #uri_rewrite
Methods included from Output
#caller_location, #debug?, #debug_level, #debug_level_1?, #debug_level_2?, #debug_level_3?, #debug_level_4?, #debug_off, #debug_on, #disable_only_positives, #error_buffer, #error_log_fd, #error_logfile, #has_error_log?, #included, #log_error, #mute, #muted?, #only_positives, #only_positives?, #print_bad, #print_debug, #print_debug_backtrace, #print_debug_exception, #print_debug_level_1, #print_debug_level_2, #print_debug_level_3, #print_debug_level_4, #print_error, #print_error_backtrace, #print_exception, #print_info, #print_line, #print_ok, #print_status, #print_verbose, #reroute_to_file, #reroute_to_file?, reset_output_options, #set_error_logfile, #unmute, #verbose?, #verbose_off, #verbose_on
Constructor Details
This class inherits a constructor from Arachni::UI::CLI::Framework::OptionParser
Instance Method Details
#banner ⇒ Object
89 90 91 |
# File 'ui/cli/rpc/client/remote/option_parser.rb', line 89 def "Usage: #{$0} [options] --dispatcher-url HOST:PORT URL" end |
#distribution ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'ui/cli/rpc/client/remote/option_parser.rb', line 21 def distribution separator 'Distribution' on( '--dispatcher-url HOST:PORT', 'Dispatcher server to use.' ) do |url| .dispatcher.url = url end on( '--spawns SPAWNS', Integer, 'How many slaves to spawn for a high-performance mult-Instance scan.', '(When no grid mode has been specified, all slaves will all be from the same Dispatcher machine.', 'When a grid-mode has been specified, this option will be treated as a possible maximum and', 'not a hard value.)' ) do |spawns| .spawns = spawns end on( "--grid-mode #{OptionGroups::Dispatcher::GRID_MODES.join(',')}", OptionGroups::Dispatcher::GRID_MODES, 'Sets the Grid mode of operation for this scan.', 'Valid modes are:', ' * balance -- Slaves will be provided by the least burdened Grid Dispatchers.', ' * aggregate -- In addition to balancing, slaves will all be from Dispatchers', ' with unique bandwidth Pipe-IDs to result in application-level line-aggregation.' ) do |mode| .dispatcher.grid_mode = mode end on( '--grid', "Shorthand for '--grid-mode=balance'." ) do .dispatcher.grid = true end end |
#ssl ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'ui/cli/rpc/client/remote/option_parser.rb', line 53 def ssl separator '' separator 'SSL' on( '--ssl-ca FILE', 'Location of the CA certificate (.pem).' ) do |file| .rpc.ssl_ca = file end on( '--ssl-private-key FILE', 'Location of the client SSL private key (.pem).' ) do |file| .rpc.client_ssl_private_key = file end on( '--ssl-certificate FILE', 'Location of the client SSL certificate (.pem).' ) do |file| .rpc.client_ssl_certificate = file end end |
#validate ⇒ Object
76 77 78 79 |
# File 'ui/cli/rpc/client/remote/option_parser.rb', line 76 def validate validate_dispatcher super end |
#validate_dispatcher ⇒ Object
81 82 83 84 85 86 87 |
# File 'ui/cli/rpc/client/remote/option_parser.rb', line 81 def validate_dispatcher # Check for missing Dispatcher if !.dispatcher.url print_error "Missing '--dispatcher-url' option." exit 1 end end |