25 #include <unordered_map>
27 #include <seastar/util/std-compat.hh>
29 #include <seastar/core/future.hh>
30 #include <seastar/core/sstring.hh>
31 #include <seastar/core/shared_ptr.hh>
32 #include <seastar/net/inet_address.hh>
54 std::vector<sstring> names;
56 std::vector<inet_address> addr_list;
59 typedef std::optional<inet_address::family> opt_family;
62 unsigned short priority;
63 unsigned short weight;
81 std::optional<std::vector<inet_address>>
83 std::optional<std::chrono::milliseconds>
85 std::optional<uint16_t>
87 std::optional<std::vector<sstring>>
91 enum class srv_proto {
94 using srv_records = std::vector<srv_record>;
102 dns_resolver& operator=(dns_resolver&&) noexcept;
126 const sstring& service,
127 const sstring& domain);
146 future<sstring> resolve_addr(
const inet_address&);
148 future<std::vector<srv_record>> get_srv_records(dns_resolver::srv_proto proto,
149 const sstring& service,
150 const sstring& domain);
A representation of a possibly not-yet-computed value.
Definition: future.hh:1238
future< hostent > get_host_by_name(const sstring &, opt_family={})
future< srv_records > get_srv_records(srv_proto proto, const sstring &service, const sstring &domain)
future< hostent > get_host_by_addr(const inet_address &)
future< sstring > resolve_addr(const inet_address &)
future< inet_address > resolve_name(const sstring &, opt_family={})
Definition: inet_address.hh:49
holds the implementation parts of the metrics layer, do not use directly.
Seastar API namespace.
Definition: abort_on_ebadf.hh:26