SYMBOL INDEX (154 symbols across 12 files) FILE: benches/benchmark_portscan.rs function portscan_tcp (line 10) | fn portscan_tcp(scanner: &Scanner) { function portscan_udp (line 14) | fn portscan_udp(scanner: &Scanner) { function bench_address (line 18) | fn bench_address() { function bench_port_strategy (line 22) | fn bench_port_strategy() { function bench_address_parsing (line 30) | fn bench_address_parsing() { function criterion_benchmark (line 48) | fn criterion_benchmark(c: &mut Criterion) { FILE: build.rs function main (line 10) | pub fn main() { function generate_code (line 61) | fn generate_code(port_payload_map: BTreeMap, Vec>) { function ports_v (line 120) | fn ports_v(fp_map: &BTreeMap) -> BTreeMap> { function payloads_v (line 166) | fn payloads_v(fp_map: &BTreeMap) -> BTreeMap> { function parser (line 189) | fn parser(payload: &str) -> Vec { function port_payload_map (line 219) | fn port_payload_map( FILE: src/address.rs function parse_addresses (line 33) | pub fn parse_addresses(input: &Opts) -> Vec { function parse_address (line 94) | pub fn parse_address(address: &str, resolver: &Resolver) -> Vec { function resolve_ips_from_host (line 113) | fn resolve_ips_from_host(source: &str, backup_resolver: &Resolver) -> Ve... function parse_excluded_networks (line 140) | pub fn parse_excluded_networks( function parse_single_excluded_address (line 152) | fn parse_single_excluded_address(addr: &str, resolver: &Resolver) -> Vec... function get_resolver (line 177) | fn get_resolver(resolver: &Option) -> Resolver { function read_resolver_from_file (line 206) | fn read_resolver_from_file(path: &str) -> Result, std::io::E... function read_ips_from_file (line 217) | fn read_ips_from_file( function parse_correct_addresses (line 243) | fn parse_correct_addresses() { function parse_addresses_with_address_exclusions (line 264) | fn parse_addresses_with_address_exclusions() { function parse_addresses_with_cidr_exclusions (line 283) | fn parse_addresses_with_cidr_exclusions() { function parse_addresses_with_incorrect_address_exclusions (line 303) | fn parse_addresses_with_incorrect_address_exclusions() { function parse_correct_host_addresses (line 322) | fn parse_correct_host_addresses() { function parse_correct_and_incorrect_addresses (line 334) | fn parse_correct_and_incorrect_addresses() { function parse_incorrect_addresses (line 346) | fn parse_incorrect_addresses() { function parse_hosts_file_and_incorrect_hosts (line 358) | fn parse_hosts_file_and_incorrect_hosts() { function parse_empty_hosts_file (line 371) | fn parse_empty_hosts_file() { function parse_naughty_host_file (line 384) | fn parse_naughty_host_file() { function parse_duplicate_cidrs (line 397) | fn parse_duplicate_cidrs() { function parse_overspecific_cidr (line 409) | fn parse_overspecific_cidr() { function resolver_args_google_dns (line 422) | fn resolver_args_google_dns() { FILE: src/benchmark/mod.rs type Benchmark (line 23) | pub struct Benchmark { method init (line 28) | pub fn init() -> Self { method push (line 33) | pub fn push(&mut self, timer: NamedTimer) { method summary (line 41) | pub fn summary(&self) -> String { type NamedTimer (line 61) | pub struct NamedTimer { method start (line 68) | pub fn start(name: &'static str) -> Self { method end (line 75) | pub fn end(&mut self) { function benchmark (line 81) | fn benchmark() { FILE: src/input.rs constant LOWEST_PORT_NUMBER (line 7) | const LOWEST_PORT_NUMBER: u16 = 1; constant TOP_PORT_NUMBER (line 8) | const TOP_PORT_NUMBER: u16 = 65535; type ScanOrder (line 14) | pub enum ScanOrder { type ScriptsRequired (line 24) | pub enum ScriptsRequired { type PortRange (line 32) | pub struct PortRange { function parse_range (line 38) | fn parse_range(input: &str) -> Result { type Opts (line 74) | pub struct Opts { method read (line 168) | pub fn read() -> Self { method merge (line 183) | pub fn merge(&mut self, config: &Config) { method merge_required (line 190) | fn merge_required(&mut self, config: &Config) { method merge_optional (line 207) | fn merge_optional(&mut self, config: &Config) { method default (line 228) | fn default() -> Self { type Config (line 259) | pub struct Config { method read (line 295) | pub fn read(custom_config_path: Option) -> Self { method default (line 350) | fn default() -> Self { function default_config_path (line 325) | pub fn default_config_path() -> PathBuf { function old_default_config_path (line 334) | pub fn old_default_config_path() -> PathBuf { function verify_cli (line 374) | fn verify_cli() { function parse_trailing_command (line 391) | fn parse_trailing_command(input: Vec<&str>, command: Vec) { function opts_no_merge_when_config_is_ignored (line 399) | fn opts_no_merge_when_config_is_ignored() { function opts_merge_required_arguments (line 414) | fn opts_merge_required_arguments() { function opts_merge_optional_arguments (line 430) | fn opts_merge_optional_arguments() { FILE: src/main.rs constant DEFAULT_FILE_DESCRIPTORS_LIMIT (line 26) | const DEFAULT_FILE_DESCRIPTORS_LIMIT: usize = 8000; constant AVERAGE_BATCH_SIZE (line 28) | const AVERAGE_BATCH_SIZE: usize = 3000; function main (line 37) | fn main() { function print_opening (line 196) | fn print_opening(opts: &Opts) { function adjust_ulimit_size (line 236) | fn adjust_ulimit_size(opts: &Opts) -> usize { function infer_batch_size (line 262) | fn infer_batch_size(opts: &Opts, ulimit: usize) -> usize { function batch_size_lowered (line 306) | fn batch_size_lowered() { function batch_size_lowered_average_size (line 318) | fn batch_size_lowered_average_size() { function batch_size_equals_ulimit_lowered (line 329) | fn batch_size_equals_ulimit_lowered() { function batch_size_adjusted_2000 (line 342) | fn batch_size_adjusted_2000() { function test_high_ulimit_no_greppable_mode (line 356) | fn test_high_ulimit_no_greppable_mode() { function test_print_opening_no_panic (line 369) | fn test_print_opening_no_panic() { FILE: src/port_strategy/mod.rs type PortStrategy (line 13) | pub enum PortStrategy { method pick (line 20) | pub fn pick(range: &Option, ports: Option>, order:... method order (line 46) | pub fn order(&self) -> Vec { type RangeOrder (line 57) | trait RangeOrder { method generate (line 58) | fn generate(&self) -> Vec; method generate (line 70) | fn generate(&self) -> Vec { method generate (line 93) | fn generate(&self) -> Vec { type SerialRange (line 64) | pub struct SerialRange { type RandomRange (line 78) | pub struct RandomRange { function serial_strategy_with_range (line 104) | fn serial_strategy_with_range() { function random_strategy_with_range (line 112) | fn random_strategy_with_range() { function serial_strategy_with_ports (line 124) | fn serial_strategy_with_ports() { function random_strategy_with_ports (line 131) | fn random_strategy_with_ports() { FILE: src/port_strategy/range_iterator.rs type RangeIterator (line 5) | pub struct RangeIterator { method new (line 24) | pub fn new(start: u32, end: u32) -> Self { type Item (line 45) | type Item = u16; method next (line 49) | fn next(&mut self) -> Option { function pick_random_coprime (line 82) | fn pick_random_coprime(end: u32) -> u32 { function range_iterator_iterates_through_the_entire_range (line 104) | fn range_iterator_iterates_through_the_entire_range() { function generate_sorted_range (line 126) | fn generate_sorted_range(start: u32, end: u32) -> Vec { FILE: src/scanner/mod.rs type Scanner (line 30) | pub struct Scanner { method new (line 45) | pub fn new( method run (line 72) | pub async fn run(&self) -> Vec { method scan_socket (line 134) | async fn scan_socket( method scan_udp_socket (line 175) | async fn scan_udp_socket( method connect (line 215) | async fn connect(&self, socket: SocketAddr) -> io::Result { method udp_bind (line 238) | async fn udp_bind(&self, socket: SocketAddr) -> io::Result { method udp_scan (line 262) | async fn udp_scan( method fmt_ports (line 298) | fn fmt_ports(&self, socket: SocketAddr) { function scanner_runs (line 317) | fn scanner_runs() { function ipv6_scanner_runs (line 341) | fn ipv6_scanner_runs() { function quad_zero_scanner_runs (line 365) | fn quad_zero_scanner_runs() { function google_dns_runs (line 387) | fn google_dns_runs() { function infer_ulimit_lowering_no_panic (line 409) | fn infer_ulimit_lowering_no_panic() { function udp_scan_runs (line 435) | fn udp_scan_runs() { function udp_ipv6_runs (line 459) | fn udp_ipv6_runs() { function udp_quad_zero_scanner_runs (line 483) | fn udp_quad_zero_scanner_runs() { function udp_google_dns_runs (line 505) | fn udp_google_dns_runs() { FILE: src/scanner/socket_iterator.rs type SocketIterator (line 4) | pub struct SocketIterator<'s> { function new (line 23) | pub fn new(ips: &'s [IpAddr], ports: &'s [u16]) -> Self { type Item (line 34) | type Item = SocketAddr; method next (line 46) | fn next(&mut self) -> Option { function goes_through_every_ip_port_combination (line 59) | fn goes_through_every_ip_port_combination() { FILE: src/scripts/mod.rs function init_scripts (line 100) | pub fn init_scripts(scripts: &ScriptsRequired) -> Result> { function parse_scripts (line 152) | pub fn parse_scripts(scripts: Vec) -> Vec { type Script (line 165) | pub struct Script { method build (line 204) | pub fn build( method run (line 226) | pub fn run(self) -> Result { type ExecPartsScript (line 189) | struct ExecPartsScript { type ExecParts (line 197) | struct ExecParts { function execute_script (line 278) | fn execute_script(script: &str) -> Result { function find_scripts (line 323) | pub fn find_scripts(path: PathBuf) -> Result> { type ScriptFile (line 338) | pub struct ScriptFile { method new (line 348) | fn new(script: PathBuf) -> Option { type ScriptConfig (line 384) | pub struct ScriptConfig { method read_config (line 393) | pub fn read_config() -> Result { function into_script (line 411) | fn into_script(script_f: ScriptFile) -> Script { function find_and_parse_scripts (line 424) | fn find_and_parse_scripts() { function find_invalid_folder (line 432) | fn find_invalid_folder() { function open_script_file_invalid_headers (line 438) | fn open_script_file_invalid_headers() { function open_script_file_invalid_call_format (line 445) | fn open_script_file_invalid_call_format() { function open_script_file_missing_call_format (line 455) | fn open_script_file_missing_call_format() { function open_nonexisting_script_file (line 465) | fn open_nonexisting_script_file() { function parse_txt_script (line 470) | fn parse_txt_script() { function run_bash_script (line 493) | fn run_bash_script() { function run_python_script (line 502) | fn run_python_script() { function run_perl_script (line 515) | fn run_perl_script() { function test_custom_directory_config (line 524) | fn test_custom_directory_config() { function test_default_directory_fallback (line 550) | fn test_default_directory_fallback() { FILE: tests/timelimits.rs constant TIMEOUT_MARGIN (line 14) | const TIMEOUT_MARGIN: u32 = 3; function run_rustscan_with_timeout (line 17) | fn run_rustscan_with_timeout(args: &[&str], timeout: Duration) { function scan_localhost (line 54) | fn scan_localhost() { function scan_google_com (line 61) | fn scan_google_com() { function scan_example_com (line 78) | fn scan_example_com() { function scan_rustscan_cmnatic_co_uk (line 95) | fn scan_rustscan_cmnatic_co_uk() { function udp_scan_localhost (line 111) | fn udp_scan_localhost() { function udp_scan_google_com (line 117) | fn udp_scan_google_com() { function udp_scan_example_com (line 133) | fn udp_scan_example_com() { function udp_scan_rustscan_cmnatic_co_uk (line 149) | fn udp_scan_rustscan_cmnatic_co_uk() {