1extern crate netdb;
2
3use std::env;
4use netdb::hosts::get_host_by_name;
5
6fn main() {
7 let mut args = env::args();
8 let cmd = args.next().unwrap();
9 let name = match args.next() {
10 None => {
11 println!("Usage: {} <hostname>", cmd);
12 return;
13 }
14 Some(name) => name
15 };
16
17 match get_host_by_name(&name) {
18 Ok(Some(ent)) => {
19 println!("{}", ent.name());
20 if !ent.aliases().is_empty() {
21 println!(" Aliases:");
22 for name in ent.aliases() {
23 println!(" {}", name);
24 }
25 }
26 println!(" Addresses:");
27 for addr in ent.addrs() {
28 println!(" {}", addr);
29 }
30 }
31 Ok(None) => println!("Not found."),
32 Err(err) => println!("Error: {:?}", err),
33 }
34}