From 45ff1f237992462cfaf66eaebdcdd948bab9b718 Mon Sep 17 00:00:00 2001 From: Michael Vines Date: Tue, 21 Apr 2020 16:58:30 -0700 Subject: [PATCH] dos: Tidy up clap argument handling, and adapt to newer solana-dos arguments (#9633) * Tidy up clap argument handling * Adapt to newer solana-dos arguments --- Cargo.lock | 1 + dos/Cargo.toml | 1 + dos/src/main.rs | 38 +++++++++++-------- .../stability-testcases/gossip-dos-test.sh | 2 +- 4 files changed, 25 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b17bbee823..43fb37b1c0 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4036,6 +4036,7 @@ dependencies = [ "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", "rayon 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", + "solana-clap-utils 1.2.0", "solana-core 1.2.0", "solana-logger 1.2.0", "solana-net-utils 1.2.0", diff --git a/dos/Cargo.toml b/dos/Cargo.toml index 62121e38ab..dea09ef90e 100644 --- a/dos/Cargo.toml +++ b/dos/Cargo.toml @@ -13,6 +13,7 @@ clap = "2.33.0" log = "0.4.8" rand = "0.6.5" rayon = "1.3.0" +solana-clap-utils = { path = "../clap-utils", version = "1.2.0" } solana-core = { path = "../core", version = "1.2.0" } solana-logger = { path = "../logger", version = "1.2.0" } solana-net-utils = { path = "../net-utils", version = "1.2.0" } diff --git a/dos/src/main.rs b/dos/src/main.rs index 93c43e3857..dec1c31a3e 100644 --- a/dos/src/main.rs +++ b/dos/src/main.rs @@ -1,4 +1,4 @@ -use clap::{value_t, value_t_or_exit, App, Arg}; +use clap::{crate_description, crate_name, value_t, value_t_or_exit, App, Arg}; use log::*; use rand::{thread_rng, Rng}; use solana_core::contact_info::ContactInfo; @@ -92,9 +92,9 @@ fn run_dos( fn main() { solana_logger::setup(); - let matches = App::new("crate") - .about("about") - .version("version") + let matches = App::new(crate_name!()) + .about(crate_description!()) + .version(solana_clap_utils::version!()) .arg( Arg::with_name("entrypoint") .long("entrypoint") @@ -106,26 +106,32 @@ fn main() { Arg::with_name("mode") .long("mode") .takes_value(true) - .value_name("DOS_MODE") - .help( - "Interface to dos.\n\ - Valid values: gossip, tvu, tvu_forwards, tpu,\n\ - tpu_forwards, repair, serve_repair", - ), + .value_name("MODE") + .possible_values(&[ + "gossip", + "tvu", + "tvu_forwards", + "tpu", + "tpu_forwards", + "repair", + "serve_repair", + ]) + .help("Interface to DoS"), ) .arg( Arg::with_name("data_size") - .long("data_size") + .long("data-size") .takes_value(true) - .value_name("SIZE_BYTES") - .help("Size of packet to dos with."), + .value_name("BYTES") + .help("Size of packet to DoS with"), ) .arg( Arg::with_name("data_type") - .long("data_type") + .long("data-type") .takes_value(true) - .value_name("DATA_TYPE") - .help("Type of data to send."), + .value_name("TYPE") + .possible_values(&["repair_highest", "repair_shred", "repair_orphan", "random"]) + .help("Type of data to send"), ) .get_matches(); diff --git a/system-test/stability-testcases/gossip-dos-test.sh b/system-test/stability-testcases/gossip-dos-test.sh index 1d6f392e75..e367aa1953 100755 --- a/system-test/stability-testcases/gossip-dos-test.sh +++ b/system-test/stability-testcases/gossip-dos-test.sh @@ -31,7 +31,7 @@ solana-gossip spy --gossip-port 8001 > "$logDir"/gossip.log 2>&1 & solanaGossipPid=$! echo "solana-gossip pid: $solanaGossipPid" sleep 5 -solana-dos --mode gossip --random_data --data_size 1232 & +solana-dos --mode gossip --data-type random --data-size 1232 & dosPid=$! echo "solana-dos pid: $dosPid"