watch_hostnames/
watch_hostnames.rsuse certstreamrs::CertstreamClient;
use futures_util::{pin_mut, StreamExt};
#[tokio::main]
async fn main() {
let client = CertstreamClient::default();
let stream = client.watch_certs();
pin_mut!(stream);
loop {
let msg = match stream.next().await {
Some(msg) => msg.unwrap(),
None => continue,
};
let mut hostnames = String::new();
for hostname in msg.data.leaf_cert.all_domains {
hostnames.push_str(&hostname);
hostnames.push('|');
}
println!(
"Source: {} | Hostname(s): {}",
msg.data.source.name, hostnames
);
}
}