X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=src%2Fmain.rs;h=4b0d196bf7848bda62c75560daa3f5336d5c7b14;hb=301a3967dda91ca6aee98a894f0b3d07d5c090e5;hp=496fd986e178e0b3e9dcd520028ece98692c80e4;hpb=99c5a6de3ef69a61dcff181bb4b11fc4141e3c81;p=gandi_dns_update.git diff --git a/src/main.rs b/src/main.rs index 496fd98..4b0d196 100644 --- a/src/main.rs +++ b/src/main.rs @@ -30,7 +30,7 @@ fn main() -> Result<()> { loop { let time_beginning_loop = time::Instant::now(); - if let Err(err) = check_and_update_dns(&config.api_key, &config.fqdn, &config.domains, config.ttl) { + if let Err(err) = check_and_update_dns(&config.api_key, &config.domains, config.ttl) { println!("!! {}", err); } @@ -43,16 +43,16 @@ fn main() -> Result<()> { } } -fn check_and_update_dns(api_key: &str, fqdn: &str, domains: &Vec, ttl: i32) -> Result<()> { +fn check_and_update_dns(api_key: &str, domains: &Vec<(String, String)>, ttl: i32) -> Result<()> { let real_ip = get_real_ip()?; - for domain in domains { - let current_ip = get_current_record_ip(api_key, domain, fqdn)?; + for (hostname, domain) in domains { + let current_ip = get_current_record_ip(api_key, hostname, domain)?; if real_ip != current_ip { println!("IP addresses don't match for domain {}: real = {}, dns = {}. Renewing DNS...", domain, real_ip, current_ip); - update_record_ip(api_key, domain, fqdn, real_ip, ttl)?; - println!("Renewing of {} successfully", domain); + update_record_ip(api_key, hostname, domain, real_ip, ttl)?; + println!("Renewing of {}.{} successfully", hostname, domain); } }