diff --git a/src/main.rs b/src/main.rs index 659ad3f..19e738b 100644 --- a/src/main.rs +++ b/src/main.rs @@ -6,13 +6,39 @@ use crate::config::Config; mod whois; use crate::whois::WhoisData; + +use std::io; +use std::io::Write; + fn main() { - let mut test = Domain::new("ventraip.com.au".to_string()); + // let mut running = true; let config = Config::from_file("test.ini".to_string()); - test.apply_config(&config); + loop { + let mut domain = String::new(); + print!("Enter domain name: "); + io::stdout().flush().expect("Failed to flush buffer"); + match io::stdin().read_line(&mut domain) { + Ok(_n) => { + if domain.trim() == "q" { + break; + } + let mut dns = Domain::new(String::from(domain.trim())); + dns.apply_config(&config); + dns.lookup_all_records(); + let whois = WhoisData::new(String::from(domain.trim())); + println!("DNS: {}\n\n\nWhois: {}", dns, whois); + } + Err(err) => { + println!("{}", err); + } + } + } + // let mut test = Domain::new("ventraip.com.au".to_string()); + // let config = Config::from_file("test.ini".to_string()); + // test.apply_config(&config); - test.lookup_all_records(); - let whois = WhoisData::new(test.domain_name.clone()); + // test.lookup_all_records(); + // let whois = WhoisData::new(test.domain_name.clone()); - println!("Domain: {}\n{}", test.domain_name.clone(), whois); + // println!("Domain: {}\n{}", test.domain_name.clone(), whois); }