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
This commit is contained in:
Michael Vines 2020-04-21 16:58:30 -07:00 committed by GitHub
parent 0d24e758b2
commit 45ff1f2379
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 25 additions and 17 deletions

1
Cargo.lock generated
View File

@ -4036,6 +4036,7 @@ dependencies = [
"log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "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)", "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)", "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-core 1.2.0",
"solana-logger 1.2.0", "solana-logger 1.2.0",
"solana-net-utils 1.2.0", "solana-net-utils 1.2.0",

View File

@ -13,6 +13,7 @@ clap = "2.33.0"
log = "0.4.8" log = "0.4.8"
rand = "0.6.5" rand = "0.6.5"
rayon = "1.3.0" rayon = "1.3.0"
solana-clap-utils = { path = "../clap-utils", version = "1.2.0" }
solana-core = { path = "../core", version = "1.2.0" } solana-core = { path = "../core", version = "1.2.0" }
solana-logger = { path = "../logger", version = "1.2.0" } solana-logger = { path = "../logger", version = "1.2.0" }
solana-net-utils = { path = "../net-utils", version = "1.2.0" } solana-net-utils = { path = "../net-utils", version = "1.2.0" }

View File

@ -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 log::*;
use rand::{thread_rng, Rng}; use rand::{thread_rng, Rng};
use solana_core::contact_info::ContactInfo; use solana_core::contact_info::ContactInfo;
@ -92,9 +92,9 @@ fn run_dos(
fn main() { fn main() {
solana_logger::setup(); solana_logger::setup();
let matches = App::new("crate") let matches = App::new(crate_name!())
.about("about") .about(crate_description!())
.version("version") .version(solana_clap_utils::version!())
.arg( .arg(
Arg::with_name("entrypoint") Arg::with_name("entrypoint")
.long("entrypoint") .long("entrypoint")
@ -106,26 +106,32 @@ fn main() {
Arg::with_name("mode") Arg::with_name("mode")
.long("mode") .long("mode")
.takes_value(true) .takes_value(true)
.value_name("DOS_MODE") .value_name("MODE")
.help( .possible_values(&[
"Interface to dos.\n\ "gossip",
Valid values: gossip, tvu, tvu_forwards, tpu,\n\ "tvu",
tpu_forwards, repair, serve_repair", "tvu_forwards",
), "tpu",
"tpu_forwards",
"repair",
"serve_repair",
])
.help("Interface to DoS"),
) )
.arg( .arg(
Arg::with_name("data_size") Arg::with_name("data_size")
.long("data_size") .long("data-size")
.takes_value(true) .takes_value(true)
.value_name("SIZE_BYTES") .value_name("BYTES")
.help("Size of packet to dos with."), .help("Size of packet to DoS with"),
) )
.arg( .arg(
Arg::with_name("data_type") Arg::with_name("data_type")
.long("data_type") .long("data-type")
.takes_value(true) .takes_value(true)
.value_name("DATA_TYPE") .value_name("TYPE")
.help("Type of data to send."), .possible_values(&["repair_highest", "repair_shred", "repair_orphan", "random"])
.help("Type of data to send"),
) )
.get_matches(); .get_matches();

View File

@ -31,7 +31,7 @@ solana-gossip spy --gossip-port 8001 > "$logDir"/gossip.log 2>&1 &
solanaGossipPid=$! solanaGossipPid=$!
echo "solana-gossip pid: $solanaGossipPid" echo "solana-gossip pid: $solanaGossipPid"
sleep 5 sleep 5
solana-dos --mode gossip --random_data --data_size 1232 & solana-dos --mode gossip --data-type random --data-size 1232 &
dosPid=$! dosPid=$!
echo "solana-dos pid: $dosPid" echo "solana-dos pid: $dosPid"