custom_dns/
custom-dns.rs

1/*
2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3 * SPDX-License-Identifier: Apache-2.0
4 */
5
6use aws_smithy_http_client::{
7    tls::{self, rustls_provider::CryptoMode},
8    Builder,
9};
10use aws_smithy_runtime_api::client::dns::{DnsFuture, ResolveDns};
11use std::net::{IpAddr, Ipv4Addr};
12
13#[derive(Debug, Clone)]
14struct StaticResolver;
15
16impl ResolveDns for StaticResolver {
17    fn resolve_dns<'a>(&'a self, _name: &'a str) -> DnsFuture<'a> {
18        DnsFuture::ready(Ok(vec![IpAddr::V4(Ipv4Addr::new(127, 0, 0, 1))]))
19    }
20}
21
22fn main() {
23    let _client = Builder::new()
24        .tls_provider(tls::Provider::Rustls(CryptoMode::Ring))
25        .build_with_resolver(StaticResolver);
26}